@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Bold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-SemiBold.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Medium.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

a {
    color: #333333;
}

.btn { color: #fff; text-transform: uppercase; border-radius: 0; font-weight: 500; letter-spacing: .05em; }
.btn, a, .btn:hover { transition: color .25s ease; }
.btn:hover, .btn.focus { transition: all .3s linear; }
.btn.focus, .btn:focus { box-shadow: none; }
button:focus { outline: none; }
::-moz-selection {
    background: #515762;
    color: #FFF;
    text-shadow: none;
}
::selection {
    background: #515762;
    color: #FFF;
    text-shadow: none;
}
::-moz-selection {
    background: #515762;
    color: #FFF;
    text-shadow: none;
}
::-webkit-selection {
    background: #515762;
    color: #FFF;
    text-shadow: none;
}
html {
    width: 100%;
    height: 100%;
}
body {
    width: 100%;
    height: 100%;
    background: #f8f5ef;
    font-family: "Montserrat", Arial, Helvetica Neue, Helvetica, sans-serif;
    line-height: 1em;
    font-size: 1em;
    font-weight: 400;
    color: #333333;
    -webkit-font-smoothing: subpixel-antialiased;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale;
}
.btn-link {
    color: #4C4640;
    word-break: normal;
    word-break: break-all;
    word-break: keep-all;
    text-decoration: underline;
}
.btn-link:hover {
    color: #ee7f00;
    text-decoration: underline;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', Arial, Helvetica Neue, Helvetica, sans-serif;
    font-weight: 600;
    line-height: 1.3em;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    color: #8A847F;
    margin-bottom: 10px;
    font-size: 1.25em;
}
*, :before, :after {
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
html, body {
    position: relative;
    height: 100%;
}
p {
    word-wrap: break-word; line-height: 1.5em;
    font-size: 1em; font-weight: 400;
}
b {
    font-weight: 600;
}
ul {
    padding-left: 15px;
}
/* h2 { color: #86043B; } */
h1 { color: #86043B; font-size: 2em; text-transform: uppercase; margin-bottom: 1em; }
h2 { color: #8A847F; font-size: 1.5em; font-weight: 400; line-height: 1.5em; margin-bottom: 2em; }
h3 { color: #8A847F; }

.p5 h1, .p5 h3 { color: #ee7f00; text-transform: uppercase }
.p5 h3 { font-size: 1em; }
.p2 h2 { color: #ee7f00; font-weight: 600; font-size: 2.5em; line-height: 1.2em; }
.p2 h3 { font-weight: 500; font-size: 1.1em; color: #4C4640; line-height: 1.5em; }

a:hover {
    text-decoration: none;
    color: #333333;
    transition: all .3s linear;
}
.form-control {
    border-radius: 0;
}

section {
    padding: 2em 0;
}
.p2 section:first-child { padding: 0 }
.overline { margin: 2em -15px 0; padding-top: 3em; border-top: solid 1px #918d86; }
#start { padding-top: 80px; }

.bg-dark {
    background-color: rgba(145,141,136,1)!important; border-top: solid 5px #86043B;
}
.navbar-nav { width: 100%;  }
.nav-item.orange { background: #ee7f00; }
.nav-item { align-items: center; display: flex; line-height: 1.1em; font-weight: 600; padding-top: .5em; padding-bottom: .5em; text-align: center; }
.nav-link { color: #fff !important; font-size: .9em; position: relative; padding-right: 1rem !important; padding-left: 1rem !important; }
.nav-link.active:before,
.nav-link:hover:before 
	{ content: ''; display: block; position: absolute; left: 50%; margin-left: -15px; width: 30px; height: 30px; border-radius: 50%; background: #86043B; z-index: -1; top: 50%; margin-top: -15px; }
.orange .nav-link.aktiv { color: #4C4640 !important; }

ul.liste, .liste ul { list-style: none; }
ul.liste li { line-height: 1.5em; margin-bottom: 0; }
ul.liste li:before,
.liste ul li:before { content: '•'; font-size: .8em; position: absolute; margin-left: -15px; }
p + ul { margin-top: -1em; }
.icon-list {
  padding-left: 0;
  list-style: none;
}
.icon-list li {
  display: flex;
  align-items: flex-start;
}
.icon-list li::before {
  display: block;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  margin-right: .5rem;
  content: "";
  background: #86043B;
}

.punkt { display: block; height: 180px; margin: 20px 0; }
.punkt-hl { animation:pumpcircle 3s ease-out 1;  position: absolute; border-radius: 50%; background: #86043B; z-index: -1; left: 50%; width: 180px; height: 180px; margin-left: -90px; transform:scale(1);
}
@keyframes pumpcircle {
  1% {transform:scale(.2);}
  100% {transform:scale(1);}
}

.punkt-text { font-size: 2em; font-weight: 600; color: #8A847F; position: relative; text-transform: uppercase; padding-top: 80px; }
.punkt-text span { font-size: .45em; color: #fff; text-transform: none; display: block; margin-top: 1em; }
.big-text { color: #C2BDB9; font-size: 3em; line-height: 1.2em; font-weight: 400; text-transform: none; margin-bottom: 0; margin-top: 1em; }

.down-icon { text-align: center; text-transform: uppercase; text-decoration: none; font-weight: 600; position: relative; line-height: 1.2em; cursor: pointer; }
.down-icon span { height: 45px; display: table-cell; vertical-align: bottom; }
.down-icon:hover span { color: #ee7f00; }
.down-icon:after { 
	content: ''; display: block; width: 50px; height: 50px; margin: 0 auto;
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='Ebene_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 59.6 60.3' style='enable-background:new 0 0 59.6 60.3;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%238B1038;%7D .st1%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M29.6,58.3C45.3,58.3,58,45.6,58,29.9C58,14.3,45.3,1.6,29.6,1.6C14,1.6,1.3,14.3,1.3,29.9 C1.3,45.6,14,58.3,29.6,58.3'/%3E%3C/g%3E%3Cpolygon class='st1' points='17.9,23.1 40.9,23.1 28.9,42.1 '/%3E%3C/svg%3E%0A");
}


.form-group-sel { margin-bottom: 0; }
.btn-info {
	color: #fff !important;
	background-color: #ee7f00;
	border-color: #ee7f00;
	min-width: 25%;
}
.btn-info:hover {
	color: #fff !important;
	background-color: #86043B;
	border-color: #86043B;
}
.btn-success {
	color: #fff !important;
	min-width: 25%;
	background-color: #86043B;
	border-color: #86043B;
}
.btn-success:hover {
	color: #fff !important;
	background-color: #ee7f00;
	border-color: #ee7f00;
}
.btn.block { display: block; }

.bg-gray { background: #e0dedb; padding: 2em; }
.bg-gray h4 { color: #ee7f00; font-size: 1.1em;  }
.description p b { margin-top: 2em; display: block }
.event, .bg-gray p { font-size: .95em; color: #4C4640; }
.event { margin-bottom: 0; display: block }
.event .col-1,
.event .col-2 {
	display: block; float: left; margin-bottom: .5em; line-height: 1.5em;
}
.event .col-1 { width: 25%; font-weight: 600; }
.event .col-2 { width: 75%; }

footer {
    background: #918d88;
    padding: 45px 0 30px;
}

footer .kontakt {
    font-size: 2em;
	color: rgb(249,178,0);
	margin-bottom: 0;
	font-weight: 600;
	text-transform: uppercase;
}
footer .kontakt.small {
	font-size: 1.5em;
	margin-bottom: 1em;
	text-transform: none;
}
footer p {
    color: #fff;
    font-weight: 400;
}
footer p a {
    color: #fff;
}
footer a:hover {
	color: #ee7f00;
}
footer .address p { font-size: .9em; line-height: 1.7em !important; }
footer .address p + img { margin-top: -1em; }

.form-group p, [type="checkbox"]:not(:checked) + label, [type="checkbox"]:checked + label { font-size: .9em !important; }
[type="checkbox"]:not(:checked) + label, [type="checkbox"]:checked + label { margin-bottom: .5em; }
.form-control { margin-bottom: .75em; border: none; line-height: 2em; }
form .form-control::-webkit-input-placeholder { 
  font-size: .9em;
  color: #ccc;
}
form .form-control::-moz-placeholder {
  color: #ccc;
}
form .form-control:-ms-input-placeholder {
  color: #ccc;
}
form .form-control:placeholder {
  color: #ccc;
}
input { font-family: 'Montserrat'; font-weight: 300 !important; }
.meta { background: #86043B; }
.meta a { color: #fff; text-decoration: none; font-size: .8em; padding: 0 20px; }
.meta ul { padding-top: 1em; }
.meta li { display: inline-block;; }
.meta ul li:before { content: '|'; color: #fff; font-size: .8em; }
.meta ul li:first-child:before { content: ''; display: none }

.h2small h2 { max-width: 90%; }

.mobileOn { display: none; } 


@media (max-width: 1300px) {

}
@media only screen and (max-width: 2000px) and (max-height: 800px) {

}
@media only screen and (max-width: 1150px) and (max-height: 705px) {

}
@media only screen and (max-width: 1150px) and (max-height: 650px) {

}
@media only screen and (max-width: 1150px) and (max-height: 600px) {

}
@media (max-width: 1050px) {
	.big-text { font-size: 2.5em; }
}
@media (max-width: 992px) {
/* 	.mobile-off { display: none; } */
	.mobileOn { display: block; } 
	.mobileOff { display: none; } 

	.navbar.p-0 { padding: 15px 0 !important; }
	.navbar-collapse { margin-top: 1em; }
	.nav-link {font-size: 1.1em; text-align: left; line-height: 1.2em; }
	.overline { margin: 2em 0 0; }
}
@media (max-width: 768px) {
    .navbar { padding: 10px 30px; }
    .navbar-nav .nav-item .nav-link {
        padding-left: 0;
        padding-right: 0;
    }
	.punkt-hl { }
	.big-text { font-size: 2em; }
	.down-icon span { height: 85px; }
	h1 { font-size: 1.7em; }
	h2 { font-size: 1.35em; }
	.punkt-text span { font-size: .75em; }
}

@media (max-width: 600px) {
	.punkt-hl { font-size: 1.5em; }
	.punkt-hl span { font-size: .5em; }
	.big-text { font-size: 1.5em; }
	.punkt-text { font-size: 1.3em; }
	.p2 h2 { font-size: 1.8em; }
	.bild { margin-top: 3em; }
	.siegel img { max-width: 180px; }
	/* footer .kontakt.small { margin-bottom: 1em; } */
	
/* 	.overline { margin: 0em 15px 0; padding-top: 2em;} */
	section { padding: 1em 0; }
}
@media (max-width: 330px) {
	.punkt-text {
		font-size: 1.2em;
	}
	.big-text {
		font-size: 1.25em;
	}
	.col-6 {
		width: 100%;
	}
	h1 {
		font-size: 1.25em;
	}
	h2 {
		font-size: 1.15em;
		line-height: 1.2em;
	}
}

/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: 0;
  opacity: 0.01;
}
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  padding-left: 2.3em;
  font-size: 1.05em;
  line-height: 1.7;
  cursor: pointer;
}

/* checkbox aspect */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #aaa;
  background: #fff;
  border-radius: 0.2em;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 0 rgba(203, 34, 237, 0.2);
  -webkit-transition: all 0.275s;
  transition: all 0.275s;
}

/* checked mark aspect */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
	content: "";
	position: absolute;
	top: 4px;
	left: 4px;
	line-height: 0;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	background: #ee7f00;
	width: 16px;
	height: 16px;
}

/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0) rotate(45deg);
  transform: scale(0) rotate(45deg);
}

[type="checkbox"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1) rotate(0);
  transform: scale(1) rotate(0);
}

/* Disabled checkbox */
[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #e9e9e9;
}

[type="checkbox"]:disabled:checked + label:after {
  color: #777;
}

[type="checkbox"]:disabled + label {
  color: #aaa;
}

/* Accessibility */
[type="checkbox"]:checked:focus + label:before,
[type="checkbox"]:not(:checked):focus + label:before {
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1),
	0 0 0 6px rgba(203, 34, 237, 0.2);
}


.mt0 { margin-top: 0px; } .mt1 { margin-top: 10px; } .mt2 { margin-top: 20px; } .mt3 { margin-top: 30px; } .mt4 { margin-top: 40px; } .mt5 { margin-top: 50px; } .mt6 { margin-top: 60px; } .mt7 { margin-top: 70px; } .mt8 { margin-top: 80px; } .mt9 { margin-top: 90px; } .mt10 { margin-top: 100px; }  .mb0 { margin-bottom: 0px !important; }  .mb1 { margin-bottom: 10px; }  .mb2 { margin-bottom: 20px; }  .mb3 { margin-bottom: 30px; }  .mb4 { margin-bottom: 40px; }  .mb5 { margin-bottom: 50px; }  .mb6 { margin-bottom: 60px; }  .mb7 { margin-bottom: 70px; }  .mb8 { margin-bottom: 80px; }  .mb9 { margin-bottom: 90px; }  .mb10 { margin-bottom: 100px; }  .pad0 { padding: 0px; }  .pad1 { padding: 10px; }  .pad2 { padding: 20px; }  .pad3 { padding: 30px; }  .pad4 { padding: 40px; }  .pad5 { padding: 50px; }  .pad6 { padding: 60px; }  .pad7 { padding: 70px; }  .pad8 { padding: 80px; }  .pad9 { padding: 90px; }  .pad10 { padding: 100px; }  .pt0 { padding-top: 0px; }  .pt1 { padding-top: 10px; }  .pt2 { padding-top: 20px; }  .pt3 { padding-top: 30px; }  .pt4 { padding-top: 40px; }  .pt5 { padding-top: 50px; }  .pt6 { padding-top: 60px; }  .pt7 { padding-top: 70px; }  .pt8 { padding-top: 80px; }  .pt9 { padding-top: 90px; }  .pt10 { padding-top: 100px; }  .pb0 { padding-bottom: 0px; }  .pb1 { padding-bottom: 10px; }  .pb2 { padding-bottom: 20px; }  .pb3 { padding-bottom: 30px; }  .pb4 { padding-bottom: 40px; }  .pb5 { padding-bottom: 50px; }  .pb6 { padding-bottom: 60px; }  .pb7 { padding-bottom: 70px; }  .pb8 { padding-bottom: 80px; }  .pb9 { padding-bottom: 90px; }  .pb10 { padding-bottom: 100px; }