/* mulish-900 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 900;
    src: url('../Fonts/mulish-v13-latin-900.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/mulish-v13-latin-900.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* ibm-plex-sans-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 400;
    src: url('../Fonts/ibm-plex-sans-v19-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/ibm-plex-sans-v19-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* ibm-plex-sans-500 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 500;
    src: url('../Fonts/ibm-plex-sans-v19-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/ibm-plex-sans-v19-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* ibm-plex-sans-600 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 600;
    src: url('../Fonts/ibm-plex-sans-v19-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/ibm-plex-sans-v19-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* ibm-plex-sans-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 700;
    src: url('../Fonts/ibm-plex-sans-v19-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/ibm-plex-sans-v19-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* ibm-plex-sans-300 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 300;
    src: url('../Fonts/ibm-plex-sans-v19-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../Fonts/ibm-plex-sans-v19-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}


html, body {
    height: 100%;

    background-repeat:repeat-x;
    margin: 0; 
    padding: 0; 
    font-family: 'IBM Plex Sans', arial;
    font-size:22px;
    letter-spacing:calc((50 / 1000) * 1em);

    color:var(--color-2);
}
html{scroll-behavior:smooth}


table, tr, td, th {
    font-family: 'IBM Plex Sans', arial;
    font-size:22px;
}

.text-right,
.align-right {
    text-align:right;

}
.text-center,
.align-center {
    text-align:center;
}
.clear { clear:both; }


:root {
    --color-1:#C21A26;
    --color-2:#2B2C41;
    --color-2-75: rgba(43, 44, 65, 0.75);

    --color-3:#161615;
    --color-4:#E7EEF2;
    --color-5:#F0ECE4;
    --color-6:#707070;
    --color-7:#A7B0B6;

    --btn-border-color: #fff;

}

* { box-sizing:border-box;    -webkit-font-smoothing: antialiased;   -moz-osx-font-smoothing: grayscale; }

.team .c33,
img,
.btn,
.teaser .image:before,
.top, .top .main, .nav,
.teaser img, input, .nbar, .st0, .st1,
a, li {
    -webkit-transition: all 40ms ease;
  -moz-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
  }
img {
  border:0px;
}


.all {
  width:100%;
  min-width:100%;
  padding-left:40px;
  padding-right:40px;
}
.all.content {  scroll-margin-top: 0px; } /* sticky navi offset */

.main {
  max-width:1360px;
  margin: 0px auto;
  padding:0px;
  position:relative;
  text-align: left;
}
.main:after { content:''; display:table; clear:both; }


.cStage {display: flex;margin:0 -15px;flex-wrap: wrap;}
.cStage.right {flex-direction: row-reverse;}
.cStage > div{padding:0 15px;}

.cStage.f-10 {align-items: center}
.cStage.f-11 {align-items: flex-end}

.cStage.f-30 {margin:0 -80px}
.cStage.f-30 > div{padding:0 80px;}

.cStage.f-31 {margin:0 -40px}
.cStage.f-31 > div{padding:0 40px;}


.c33 { -ms-flex: 0 0 33.3333%;flex: 0 0 33.3333%; max-width: 33.3333%; }
.c66 { -ms-flex: 0 0 66.6666%;flex: 0 0 66.6666%; max-width: 66.6666%; }
.c16 { -ms-flex: 0 0 16.6666%;flex: 0 0 16.6666%; max-width: 16.6666%; }
.c30 { -ms-flex: 0 0 30%;flex: 0 0 30%; max-width: 30%; }
.c70 { -ms-flex: 0 0 70%;flex: 0 0 70%; max-width: 70%; }
.c40 { -ms-flex: 0 0 40%;flex: 0 0 40%; max-width: 40%; }
.c20 { -ms-flex: 0 0 20%;flex: 0 0 20%; max-width: 20%;}
.c50 { -ms-flex: 0 0 50%;flex: 0 0 50%; max-width: 50%;}
.c25 { -ms-flex: 0 0 25%;flex: 0 0 25%; max-width: 25%; }
.c75 { -ms-flex: 0 0 75%;flex: 0 0 75%; max-width: 75%; }
.c30 { -ms-flex: 0 0 30%;flex: 0 0 30%; max-width: 30%;}
.c35 { -ms-flex: 0 0 35%;flex: 0 0 35%; max-width: 35%; }
.c60 { -ms-flex: 0 0 60%;flex: 0 0 60%; max-width: 60%; }


img,video {max-width: 100%; height:auto;}

a + p,
.main * > *:first-child {margin-top:0px;}
.main * > *:last-child {margin-bottom:0px;}


a {color:inherit; text-decoration: none}




a + p,
.main div > *:first-child {margin-top:0px;}


.top {position: absolute; font-size:20px; z-index: 10; top:0; right:0; left:0; border-bottom:2px solid var(--color-1)}
.top .main {max-width:95%; padding:35px 0 0 0;}
.top .main > a {display: inline-block; padding-bottom:15px; vertical-align: middle;}
.top .main > .nav {display: inline-block; vertical-align: middle; padding-left:30px; width:calc(100% - 175px); }
.top .main > .nav > ul {display: flex;    align-items: flex-end; margin:0; padding:0; list-style-type: none; justify-content: space-between;}
.top .main > .nav > ul > li > a {color:#fff; font-weight:600;  display: block; border-radius:15px; padding:10px 20px; margin-bottom:32px;  letter-spacing: calc((100 / 1000) * 1em);}


.top .main > .nav > ul > li > a svg {vertical-align: middle}
.top .main > .nav > ul > li.act > a,
.top .main > .nav > ul > li:hover > a {background-color:rgba(255,255,255,.1);}
.top .main > .nav > ul > li.add > a {font-size:18px; text-transform: uppercase}
.top .main > .nav > ul > li#p15 > a {border:2px solid #fff; border-radius:15px; padding:10px 20px; margin-bottom:30px }
.top .main > .nav > ul > li.spc {width:2px; height:50px; margin-bottom:-2px; background:var(--color-1); }

.top .main > .nav > ul > li > ul {position: absolute; background:var(--color-1); margin:0; padding:0; list-style-type: none; transition: all 500ms ease; max-height:0px; overflow: hidden;  }
.top .main > .nav > ul > li:hover > ul {max-height:300px;}
.top .main > .nav > ul > li > ul > li > a {display: block; padding:10px 20px;letter-spacing: calc((100 / 1000) * 1em); display: block; color:#fff; font-weight:600;}
.top .main > .nav > ul > li > ul > li:first-child {padding-top:15px; border-top:2px solid #fff;}
.top .main > .nav > ul > li > ul > li:last-child {padding-bottom:15px !important;}

.top .main > .nav > ul > li > ul > li.act > a,
.top .main > .nav > ul > li > ul > li:hover > a  {background:rgba(255,255,255,.3); }

.top .main > .nav > ul > li#p15 > a {font-size:15px;}
@media(max-width:1950px) {
    .top {font-size:17px;}
    .top .main > .nav > ul > li > a {padding:10px 12px; }

    .top .main > .nav > ul > li.add > a {font-size:15px;}
}

@media(max-width: 1650px) {
    .top .main > .nav > ul > li#p16 > a {font-size:0px;     margin-bottom: 30px; height:40px; border: 2px solid #fff;border-radius: 15px;padding: 10px 30px;color:transparent; background-image:url(../Images/icon-telefon.svg); background-position:center center; background-repeat:  no-repeat;}

    .top .main > .nav > ul > li#p15 > a {font-size:0px; height:40px; color:transparent; background-image:url(../Images/icon-angebot.svg);padding: 10px 30px; background-position:center center; background-repeat:  no-repeat;}
}

.mnav {display: none;}

@media(max-width: 1400px) {
    .top .main > .nav > ul > li.spc {display: none}

    .top .main {
        max-width: 100%;
    }
}

@media(max-width: 1250px) {
    .nav li {display: none;}

    .nav li.add,
    .nav li.mnav {display: block;}

    .top .main > .nav > ul {justify-content: flex-end;}

    .top .main > .nav > ul li + li {margin-left:15px;}
}

#menu_checkbox {display: none;}
#menu_checkbox + label { transform:scale(.55); margin-bottom:10px; display: block;width: 60px;height: 60px;cursor: pointer;  z-index: 1}
#menu_checkbox + label span {position: relative;display: block; top: 0;height: 4px;background-color: #fff;margin-bottom: 10px;transition: 0.3s ease transform, 0.3s ease top, 0.3s ease width, 0.3s ease right;border-radius: 2px;}
#menu_checkbox + label span:first-child {transform-origin: 0;}
#menu_checkbox + label span:last-child {margin-bottom: 0;transform-origin: 60px;}
#menu_checkbox + label span:nth-child(2) {right: 0px;width: 60px;}
.mm-ocd-opened #menu_checkbox + label span:first-child {top: -6px;left:10px;transform: rotateZ(45deg);}
.mm-ocd-opened #menu_checkbox + label span:last-child {top: 8px;right:8px;transform: rotateZ(45deg);}
.mm-ocd-opened #menu_checkbox + label span:nth-child(2) {width: 60px;top: 2px;right: 0px;transform: rotateZ(-45deg);}


.cookie-consent-container *,
.cookie-consent-container {font-size:16px !important;}


.all.header { position: relative; padding-left:0; padding-right:0; background: radial-gradient(circle, var(--color-1) 0%, var(--color-2) 100%);}
.header img {position: absolute; height:100%; right:6%; width:auto }
.header .overlay {color:#fff; padding-top:90px; }
.header .overlay .main {padding:250px 0;}
.header.full .overlay .main {padding:100px 0;}
.header.full img {width:100%; height:100%; right:unset; object-fit: cover; }

@media(max-width:900px) {
    .header img {right:0; width:100%; object-fit: cover}

}

.header ul {padding:0; list-style-type: none; font-size:110%;}
.header ul li.icon-expertise {background:url(../Icons/icon_expertise.svg) 3px 3px no-repeat; padding:3px 0 3px 40px;}
.header ul li.icon-safe {background:url(../Icons/icon-safe.svg) 3px 3px no-repeat; padding:3px 0 3px 40px;}
.header ul li.icon-nextday {background:url(../Icons/icon-nextday.svg) left 3px no-repeat; padding:3px 0 3px 40px;}
.header ul li.icon-sepcial {background:url(../Icons/icon-special.svg) 4px 3px no-repeat; padding:3px 0 3px 40px;}
.header ul li {margin-bottom:20px}

.header h1 {font-size:105px; line-height:120px; margin:0 0 40px 0; font-family: 'Mulish';font-weight:900; letter-spacing:calc((100 / 1000) * 1em)  }
.header h1 span {font-size:100%; display: block;letter-spacing:calc((25 / 1000) * 1em);     font-family: 'IBM Plex Sans', arial;font-weight:300; font-style: italic}

@media(min-width:1400px) {
    .header h1 br {display: none}
    .header h1 span {position: absolute; bottom:120px; left:50%; transform:translate(20%,0)}
}
.header.full h1 br {display: unset}
.header.full h1 span {position: relative; bottom: unset; left: unset; transform:unset;}

.content h1,
h2 {font-size:65px;font-family: 'Mulish'; margin-bottom:30px; line-height:70px; font-weight:900; letter-spacing:calc((100 / 1000) * 1em)}

h3 {font-size:35px;font-family: 'Mulish'; margin-bottom:30px; line-height:40px; font-weight:900; letter-spacing:calc((100 / 1000) * 1em)}
h4 {font-size:25px;margin-bottom:30px; line-height:35px; font-weight:700; letter-spacing:calc((50 / 1000) * 1em)}



span.small {font-size:75%;color:var(--color-6)}
span.big {font-size:125%; line-height: 1.6em;}
span.mxp svg {display: inline-block; vertical-align: middle; height:50px; width:auto;}



.btn {padding:15px 30px; margin-right:20px; font-family: inherit; cursor: pointer; display: inline-block; border:2px solid var(--btn-border-color); text-transform: uppercase; font-size:15px; border-radius: 20px; letter-spacing:calc((125 / 1000) * 1em) }
.btn:hover {background-color:rgba(255,255,255,.1);}

.frame-layout-20 .btn {border-color:#fff;}

a.btn2 {font-size:20px; }
a.btn2:after {content:''; display: inline-block; margin-left:8px; vertical-align: middle; width:26px; height:26px; background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26"><g data-name="Gruppe 489" transform="translate(-.765 -.765)" fill="none" stroke="%23fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><circle data-name="Ellipse 14" cx="12" cy="12" r="12" transform="translate(1.765 1.765)"/><path data-name="Pfad 396" d="M9.07 13.765h9.39"/><path data-name="Pfad 397" d="m13.765 18.46 4.695-4.695-4.695-4.695"/></g></svg>'); }

.content .main {padding:80px 0}
.content.f-22 .main {padding:30px 0}

.content.l-0 + .content.l-0:not(.image) .main {padding-top:0}

.content a:hover {opacity: .8;}

.content.f20 .main {padding:30px 0}

.l-0 {--btn-border-color:var(--color-1); }
.l-10 {background:var(--color-4)}
.l-11 {background: linear-gradient(90deg, #fff 33.33333%, var(--color-1) 33.33333%); }
.l-11.cStage {padding:50px 0}
.l-11 .main {padding:0}
.l-11 .c66 {color:#fff; --btn-border-color: #fff;}

.l-12 {background:var(--color-2); color:#fff}
.l-13 {background:linear-gradient(180deg, #fff 80px, var(--color-2) 80px);  color:#fff}
.l-14 {background:var(--color-4);}
.l-15 {background:var(--color-4) url(../Images/mxp-signet-rot.svg) center 20px no-repeat;}
.l-16 {background:#fff url(../Images/mxp-signet-grau.svg) center 20px no-repeat;}
.l-17 {background:#fff url(../Images/bg_rauten.svg) center center;}
.l-17 .main {padding:200px 0;}
.l-18 {background:#fff url(../Images/bg_fahne.svg) center center;}
.content.l-18 .main {padding:250px 0; min-height:710px;}
.l-19 {background:var(--color-1); color:#fff}


.f-20 {border-bottom:2px solid var(--color-1);}

.frame-layout-20 {background:var(--color-1); color:#fff; height:100%; padding:30px 30px 100px 30px; position: relative;}
.frame-layout-21 {background:var(--color-2-75); color:#fff; height:100%; padding:30px 30px 100px 30px;position: relative; --btn-border-color: var(--color-1);}

.frame-layout-20 .btn,
.frame-layout-21 .btn {position: absolute; bottom:30px; }

.frame.logos {display: flex;    align-items: center; justify-content: space-between;}
.frame.logos img {display: block; margin:0 15px;filter:grayscale(100%); opacity: .5;}
.frame.logos img:hover {filter:grayscale(0%);opacity:    1;}

.content.f-21 .main {max-width:1600px;}

.frame + .frame {margin-top:40px;}
.f-20 .frame + .frame {margin-top:20px;}


.content ul {padding:0; list-style-type:none;}
.content ul li + li {margin-top:8px;}

figcaption {color:var(--color-1); padding-top:10px;}

.counter {border-left:2px solid var(--color-1); padding-left:20px;}
.counter p {font-weight:600; margin:0;}
.counter strong {font-size:65px; line-height:70px;}

.content.all { overflow: hidden;}

.content.image {color:#fff;}

.content p,
.content li {line-height:1.4em;}

.content a:not([class]){color:var(--color-1); font-style: italic}
.content.l-19 a:not([class]){color:#fff; font-style: italic}

.frame-50 {position: relative}
.frame-50 .arrow {position: absolute; right:0; top:0}
.frame-50 + .frame-50 {border-top:2px solid var(--color-4); padding-top:40px;}
.frame-50 + .frame-50 .arrow {top:40px;}
.frame-50 header {padding-right:50px;}
.frame-50 .text {max-height:0px; overflow: hidden; transition: all 500ms ease;}
.frame-50 header,
.frame-50 .arrow {cursor: pointer;}
.frame-50.show .text {max-height:2000px; padding-top:20px;}
.frame-50.show header {color:var(--color-1);}
.frame-50.show .arrow svg {transform:rotate(180deg);}

.teaser {padding:80px 0 0 0}
.teaser .image {background:var(--color-4); position: relative; width:100%; height:300px; display: flex;align-items: center;justify-content: center;}
.teaser .image:before {content:''; position: absolute; width:2px; height:150px; background:var(--color-1); left:50%; top:-50px;}
.teaser .cStage {    align-items: flex-end;}
.teaser .c70 {padding-bottom:50px;}
.teaser .pretext {position: absolute; color:var(--color-4); z-index: -1; text-transform: uppercase;    width:6000px;text-align: center;left: 50%;transform: translate(-50%, 0);font-weight: 300; font-size:75px; font-weight:300; font-style: italic}
.teaser .image img {height:75px; width:auto;}
.teaser:hover .image img {height:100px; }
.teaser:hover .image:before {top:-62.5px}

.teaser a {color:inherit !important;}
.teaser h3 {margin-top:15px;}

.slider .slidernav .slick-track {width:100% !important; transform:none !important;}
.slider .slidernav .slick-list {padding:0 !important;}
.slider .slidernav .slick-slide {width:100% !important;}

.slider.f-40 .slidernav .slick-slide {width:100% !important; transition: all 400ms ease; margin-bottom:10px; padding:15px 10px;width:100%; text-align: center; font-family: inherit; cursor: pointer; display: inline-block; color:#fff;border:2px solid var(--color-2); background:var(--color-2); text-transform: uppercase; font-size:15px; border-radius: 20px; letter-spacing:calc((125 / 1000) * 1em) }
.slider.f-40 .slidernav .slick-slide.slick-current {border-color:var(--color-1); color:#fff; background:var(--color-1);}

.slider.f-42,
.slider.f-41 {position: relative; padding-bottom:80px;}
.slider.f-41 .nav {background:var(--color-4); position: absolute; right:0; padding:30px; width:550px; color:var(--color-2);}
.slider.f-42 .stage .frame {padding:100px 150px 0 150px;}
.slider.f-41 .stage  {max-width:calc(100% - 600px) !important;}
.slider.f-41 .stage .frame li {background:url(../Icons/icon-check.svg) 0px 3px no-repeat; padding:3px 0 3px 40px;}
.slider.f-41 .nav .slick-current {color:var(--color-1)}
.slider.f-41 .slidernav .slick-slide {margin:5px 0}
.slider.f-41 .nav svg {vertical-align: middle;}
.slider.f-41 .nav .slick-current svg g {stroke:var(--color-1);}

.slider.f-42 .slick-dots,
.slider.f-41 .slick-dots {bottom:-80px; margin-left:150px; width:calc(100% + 300px); }
.slider.f-42 .slick-dots {width:calc(100% - 300px);}
.slider.f-42 .slick-dots li,
.slider.f-41 .slick-dots li {width:unset; margin:unset;  height:unset}
.slider.f-42 .slick-dots:before,
.slider.f-41 .slick-dots:before {content:''; width:100%; height:1px; bottom:5px; display: block; position: absolute; background:var(--color-4);}
.slider.f-42 .slick-dots li button,
.slider.f-41 .slick-dots li button {height:5px; padding:0; border:0; width:150px; background:transparent; margin:0 20px; }
.slider.f-42 .slick-dots li.slick-active button,
.slider.f-41 .slick-dots li.slick-active button {background:#fff;}

@media(max-width: 900px) {
    .slider.f-42 .slick-dots li, .slider.f-41 .slick-dots li {display: none}
}
.slider.f-42 .slick-prev,
.slider.f-41 .slick-prev { width:98px; height:60px; top:unset; background:url(../Icons/prev.svg) center center no-repeat; bottom:-140px; left:0 }
.slider.f-42 .slick-next,
.slider.f-41 .slick-next { width:98px; height:60px; top:unset; background:url(../Icons/next.svg) center center no-repeat; bottom:-140px; right:-600px }
.slider.f-42 .slick-next {right:0}

.footer {font-size:15px;}
.footer ul {font-size:20px;}


.frame-type-form_formframework {-webkit-box-shadow: 0px 0px 15px 3px rgba(0,0,0,0.15);box-shadow: 0px 0px 15px 3px rgba(0,0,0,0.15);background:var(--color-4); color:var(--color-2); margin-top:-80px; padding:40px;}



.ce-gallery[data-ce-columns="3"] .ce-column {
    width:calc(33.3333% - 15px)
}
.ce-gallery[data-ce-columns="2"] .ce-column {
    width:calc(50% - 15px)
}



@media (max-width: 1250px) {
    html,body {font-size:18px;}

    .header h1 {
        font-size: 70px;
        line-height: 80px;
    }

    .counter strong,
    .content h1,
    h2 {font-size:40px; line-height:45px;}


    h3 {font-size:25px; line-height:30px; }
    h4 {font-size:22px; line-height:30px; }

    span.big {
        font-size: 115%;
        line-height: 1.6em;
    }

    span.mxp svg {
        height: 35px;
    }

    .ce-textpic.ce-intext .ce-gallery {max-width:50%;}
}

@media (max-width: 1200px) {
    .c25 { -ms-flex: 0 0 50%;flex: 0 0 50%; max-width: 50%; margin-bottom:30px; }

    .content.l-18 .main {
        padding: 175px 0;
        min-height: 500px;
    }

    .slider.f-41 .nav { width:350px; }
    .slider.f-41 .stage  {max-width:calc(100% - 400px) !important;}
}


/* Only Phones */
@media (max-width: 900px) {

    .c33,
    .c66,
    .c16,
    .c30,
    .c70,
    .c40,
    .c20,
    .c50,
    .c25,
    .c75,
    .c30,
    .c35,
    .c60 { -ms-flex: 0 0 100%;flex: 0 0 100%; max-width: 100%; }

    .c25 { margin-bottom:0px; }

    .cStage > div + div {margin-top:30px;}

    .c25 { -ms-flex: 0 0 50%;flex: 0 0 50%; max-width: 50%; margin-bottom:30px; margin-top:0 !important; }

    .header .overlay .main {
        padding: 175px 0;
    }

    .slider.f-41 .nav { width:100%; position: relative; margin-bottom:30px }
    .slider.f-41 .stage  {max-width:100% !important;}

    .slider.f-42 .slick-dots, .slider.f-41 .slick-dots {
        margin-left: 100px;
        width: calc(100% - 200px);
    }
    .slider.f-42 .slick-next, .slider.f-41 .slick-next {right:0px}
    .slider.f-42 .slick-next, .slider.f-41 .slick-next,
    .slider.f-42 .slick-prev, .slider.f-41 .slick-prev {
        width: 70px;
        background-size:100% auto;
    }


    html,body {font-size:16px;}

    .header h1 {
        font-size: 40px;
        line-height: 45px;
    }

    .counter strong,
    .content h1,
    h2 {font-size:30px; line-height:35px; hyphens:auto; -webkit-hyphens: auto}


    h3 {font-size:22px; line-height:25px; }
    h4 {font-size:18px; line-height:25px; }

    span.big {
        font-size: 110%;
        line-height: 1.6em;
    }

    span.mxp svg {
        height: 30px;
    }

    .all {padding-left:20px; padding-right:20px;}

    .content .main {
        padding: 50px 0;
    }

    .slider.f-41 .nav,
    .frame-type-form_formframework {padding:30px;}
}

@media (max-width: 650px) {

    .content .ce-left .ce-gallery,
    .content .ce-right .ce-gallery {
        float: none;
    }
    .content .ce-intext.ce-right .ce-gallery {
        margin-left: 0px;
    }
    .content .ce-intext.ce-left .ce-gallery {
        margin-right: 0px;
    }
    .ce-textpic.ce-intext .ce-gallery {max-width:100%;}

}

@media(max-width: 500px) {
    .c25 { -ms-flex: 0 0 100%;flex: 0 0 100%; max-width: 100%; margin-bottom:30px; margin-top:0 !important; }

}

@media(max-width:450px) {
    .top .main > .nav > ul li + li {
        margin-left: 7.5px;
    }

    .top .main > .nav > ul > li#p15 > a,
    .top .main > .nav > ul > li#p16 > a {padding:15px 20px}

    .top .main > a {
        width: 120px;
    }
    .top .main > .nav {width:calc(100% - 120px)}

}


/* Formulare */



input[type="checkbox"] { margin-right:15px; }
.control-label { display:none; }

.form-element .form-label {display: none}

form input[type="text"],
.form-element select,
.form-element input[type="text"],
.form-element input[type="email"],
.form-element textarea,
.csc-form-element-textline input {
  font-family:inherit;
  font-size:inherit;
  color: var(--color-2);
  background:transparent;
  width:100%;
    border:0;
  border-bottom:2px solid var(--color-7);
  padding:8px 0px;

  margin-bottom:20px !important;
}

.form-element textarea {border:2px solid var(--color-7); margin:20px 0 !important; padding:8px 10px; height:200px}
.form-element textarea[required="required"],
.form-element select[required="required"],
.form-element input[type="email"][required="required"],
.form-element input[type="text"][required="required"] { border-color: var(--color-1);}

.form-element + .clearfix {margin-top:-5px; margin-bottom:10px;}

form .row {display: flex; flex-wrap: wrap; margin:0 -10px;}
form .row .col-1 { --cols: calc( 100% / 12 * 1); }
form .row .col-2 { --cols: calc( 100% / 12 * 2); }
form .row .col-3 { --cols: calc( 100% / 12 * 3); }
form .row .col-4 { --cols: calc( 100% / 12 * 4); }
form .row .col-5 { --cols: calc( 100% / 12 * 5); }
form .row .col-6 { --cols: calc( 100% / 12 * 6); }
form .row .col-7 { --cols: calc( 100% / 12 * 7); }
form .row .col-8 { --cols: calc( 100% / 12 * 8); }
form .row .col-9 { --cols: calc( 100% / 12 * 9); }
form .row .col-10 { --cols: calc( 100% / 12 * 10); }
form .row .col-11 { --cols: calc( 100% / 12 * 11); }
form .row .col-12 { --cols: calc( 100% / 12 * 12); }
form .row > div {-ms-flex: 0 0 var(--cols);flex: 0 0 var(--cols); max-width: var(--cols); padding:0 10px;}

@media (max-width: 1000px) {
    form .row > div {-ms-flex: 0 0 100%;flex: 0 0 100%; max-width: 100%; padding:0 10px;}
}



nav.form-navigation {display: block; padding-top:20px;}

.form-check {margin-bottom:10px !important;}

form .btn { --btn-border-color: var(--color-1); background:transparent; color:var(--color-2);}
form .btn:hover {background:var(--color-1);color:#fff;}



.form-element.radio {display: flex; padding-top:8px;}
.form-element.radio > div + div {margin-left:20px;}

/* The container */
.form-check-label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.form-check-label input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.form-check-label span {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: transparent;
  border:2px solid  var(--color-1);
    border-radius: 5px;
}
.form-check-label span.required { position:relative;width:auto; height:auto; border:0px; }

/* On mouse-over, add a grey background color */
.form-check-label:hover input ~ span {
  background-color:  var(--color-1);
}

/* When the checkbox is checked, add a blue background */
.form-check-label input:checked ~ span {
  background-color:  var(--color-1);
}

/* Create the checkmark/indicator (hidden when not checked) */
span:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.form-check-label input:checked ~ span:after {
  display: block;
}

/* Style the checkmark/indicator */
.form-check-label span:after {
  left: 6px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

