/* cmsms stylesheet: css-grid modified: Dienstag, 20. Januar 2026 12:18:44 */
@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-bold-webfont.woff2') format('woff2'),
         url('../fonts/roboto-bold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-bolditalic-webfont.woff2') format('woff2'),
         url('../fonts/roboto-bolditalic-webfont.woff') format('woff');
    font-weight: bold;
    font-style: italic;
font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-italic-webfont.woff2') format('woff2'),
         url('../fonts/roboto-italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;
font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-regular-webfont.woff2') format('woff2'),
         url('../fonts/roboto-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
font-display: swap;
}
@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-Bold.woff2') format('woff2'),
        url('../fonts/Aleo-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-BoldItalic.woff2') format('woff2'),
        url('../fonts/Aleo-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-Italic.woff2') format('woff2'),
        url('../fonts/Aleo-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-Light.woff2') format('woff2'),
        url('../fonts/Aleo-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-Regular.woff2') format('woff2'),
        url('../fonts/Aleo-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aleo';
    src: url('../fonts/Aleo-LightItalic.woff2') format('woff2'),
        url('../fonts/Aleo-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}



* {
margin : 0;
padding : 0;
}
html, body {
font-family : Aleo, Arial, Helvetica, sans-serif;
font-size : 100%;
width : 100%;
max-width : 100%;
text-align: center;
color: #222717;
position: relative;
line-height: 140%;
}
.site-shell {
min-height: 100vh;
display: flex;
flex-direction: column;
}
iframe {
border: 0;
}
.mailwrap {
text-align : center;
width : 100% !important ;
position : absolute !important ;
z-index : 1000005;
top : 6em;
}
.box {
text-align : center;
width : 100% !important ;
animation-duration : 1.5s;
animation-name : opa;
position : absolute !important ;
z-index : 10000005;
top : 1em;
display: none;
}
@keyframes opa {
0% {top: -20em;}
100% {top: 1em;}
}
.box a {
padding : 0.5em 0 0.8em 0;
display : block;
width : 100%;
height : 1em;
background: #3b5490;
color: #fff;
margin-top: 1em;
}
.boxtitle {
font-size: 150%;
margin-bottom: 0.5em;
font-weight: bold;
text-transform: uppercase;
}
.boxtitle span {
color: #ee7f00;
}
.searchcont {
background : rgba(255,255,255,0.95);
font-size: 102%;
width : 25em;
margin : 0 auto;
position : relative;
padding : 1.5em;
border: 1px solid #b7e7ff;
box-shadow : 0 1px 1px rgb(0, 0, 0, 0.11), 0 2px 2px rgb(0, 0, 0, 0.11), 0 4px 4px rgb(0, 0, 0, 0.11), 0 6px 8px rgb(0, 0, 0, 0.11), 0 8px 16px rgb(0, 0, 0, 0.11);
}

p {margin-bottom: 1em;}
.entgelt-cont {
width: 100%;
color: #e6f7ff;
display : flex;
flex-wrap : wrap;
justify-content : center;
margin-bottom: 0.5em;
}
.entgelt {
width: 45%;
padding: 2%; 
border: 1px solid #e6f7ff;
background: #3b5490;
}

#wrapper {
width: 92%;
max-width: 1280px;
position: relative;
margin: 0 auto;
text-align:left;
padding-top: 6em;
}
.top-container {
top : 0;
left : 0;
background: #fff;
font-size: 120%;
color: #000;
width: 100%;
height: 8em;
position: fixed;
z-index: 9999;
box-shadow: 3px 4px 5px 0px rgba(0,0,0,0.12);
}
 /*
.top-container::after {
    content: " ";
    position: absolute;
    display: block;
    width: 100%;
    height: 12em !important;
    top: 0;
    left: 0;
    z-index: -5;
   background : #fff;
    transform-origin: top right;
    transform: skew(0deg, 1deg);
box-shadow: 3px 4px 5px 0px rgba(0,0,0,0.17);
}
 */
.schraeg-weiss {position: relative;
bottom: 0;
width: 100%;
height: 3em;
z-index: 100;
background: #fff;}
.schraeg-weiss::after {
    content: " ";
    position: absolute;
    display: block;
    width: 100%;
    height: 6em !important;
    top: 0;
    left: 0;
    z-index: -10;
   background : #fff;
    transform-origin: top right;
   transform: skew(0deg, 1deg);
box-shadow: -4px -4px 5px 0px rgba(0,0,0,0.15);
}


.top-container a {color: #000;}
.headsmall {
height : 12%;
}

.headcenter {
width : 90%;
max-width: 1440px;
position : relative;
margin: 0 auto;
text-align: left;
background: yellow;
}
.logo {
position: absolute;
width: 18em;
top: 3em;
left: 0;
}
h1, .tophead2 {
display : block;
font-size : 340%;
font-weight: normal;
line-height: 120%;
width: 85%;
padding: 0 0 0 0;
color: #fff;
border: none;
margin-bottom: 0.3em;
}
h3, .grid h2, .mitte h2 {
font-size : 160%;
margin : 1.4em 0 0.7em;
font-weight : bold !important;
line-height: 120%;
color: #3b5490;
text-transform: none;
}
.half h2 {
margin-bottom: 0.3em !important;
text-transform: none;
color: #000;
fomt-weight: normal;
font-size: 120%;
}
h1 span {
font-weight: normal;
font-size: 80%;
}
.headsmall h1 {
font-size: 100%;
}
.marquee {
  --gap: 0rem;
  display: flex;
  overflow: hidden;
  user-select: none;
  gap: var(--gap);
margin: 0;
padding: 0;
letter-spacing: 3px;
}

.marquee__content {
  flex-shrink: 0;
  display: flex;
  justify-content: space-around;
  min-width: 100%;
  gap: var(--gap);
animation: scroll 18s linear infinite;
text-transform: uppercase;
font-size: 260%;
list-style-type: none;
font-weight: bold;
margin: 0;
padding: 0;
}
.marquee__content span {
color: #08215a;
}
@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - var(--gap)));
  }
}

.marquee__content {
  animation: scroll 35s linear infinite;
}

.smallaut {
font-size : 60%;
text-transform: none;
color: #fff;
text-align : center;
display : flex;
flex-wrap : wrap;
justify-content : center;
margin-top: -2em;
}
.noshadow {
float: right;
display: block;
width: 15% !important;
margin: 0 0 2% 2% !important;
}
.smallink {
font-size : 80%;
}
.skiplink{
position:absolute;
top:-9999px;
left:-9999px;
font-size:0;
line-height:0;
}
.termin {
background : #f39200;
padding : 2em;
width : 100%;
color : #fff;
}
.tdli {
padding-right : 1em;
}
.mleft {
float: left;
margin-left : 5%;
}

.newsbox {
position: relative;
padding: 2em 0 1em 0;
column-count: 3;
column-gap: 1.5em;
font-size: 87%;
}
video {
  width: 100%    !important;
  height: auto   !important;
}
.news {
margin-bottom: 1em;
display: inline-block;
}
.news span, .docpic span, .doc span, .headl2 span, footer span {
color: #ee7f00;
padding-bottom: 0.3em;
font-weight: bold;
}
.newsvar {
border: 3px solid #08215a;
border-radius:12px;
padding: 5%;
}
.oben {
position : fixed;
right : 0.8em;
bottom : 0;
z-index : 100;
width : 1.5em;
}
.oben img {
width : 100%;
height : auto;
}

.cont {
width :80%;
max-width: 1440px;
min-height : 18em;
margin : 0 auto;
padding : 12em 0 5em 0;
text-align: left;
}
.cont a {color: #ff0000;}

.thumb {
display : inline;
width : 100% !important ;
}
.thumblist {
text-align : left;
display : flex;
flex-wrap : wrap;
justify-content : center;
padding : 0;
max-width: 1440px;
}
.closeall {
position : absolute;
width : 100%;
height : 100%;
display : block;
z-index : 102 !important ;
}
.previous {
position : absolute;
left : 4em;
top : 2em;
width : 2.5em !important ;
z-index : 150 !important ;
}
.next {
display : block;
position : absolute;
left : 8em;
top : 2em;
width : 2.5em !important ;
z-index : 150 !important ;
}
.exit {
display : block;
position : absolute;
top : 0;
right : 5%;
width : 2em !important ;
z-index : 1500 !important ;
}
.cont h3 {
font-size : 125%;
margin : 1em 0 0.5em 0em;
}
.cont ul {
margin : 0 0 0 2em;
}
@keyframes fadeIn {
from {
opacity : 0;
transform : translate3d(0,3%,0);
}
to {
opacity : 1;
transform : translate3d(0,0,0);
}
}
.fadeIn {
animation-name : fadeIn;
animation-duration : 1s;
}
a {
text-decoration : none;
}
h2, .cont h1, .headl2 {
display : block;
margin :0.3em 0 0.5em 0;
font-size : 220%;
line-height : 120%;
color: #3b5490;
margin-bottom: 2em !important;
float: none;
text-transform: uppercase;
}
.headl2, .cont h1, .cont h2 {
text-transform: none; 
text-align: center;
display: block;
padding-top: 1em;
padding-bottom: 1em;
position: relative;
font-weight: bold;
}
.cont h1 {
text-align: left;
}
.headl2 {
padding-top: 3em;
background-image: url(../uploads/images/meno-back.png) !important; 
background-position : top center !important;
background-repeat : no-repeat !important;
background-size : 1em auto !important;
}
.headl2::before {
        content: '';
        display: block;
        position: absolute;
        top: 2em;
        width:10%;
        left: 45%;
       border-top: 1px solid red;
}
.headl2::after {
        content: '';
        display: block;
        position: absolute;
        bottom: -3px;
        width:33%;
        left: 33%;
       border-bottom: 1px solid red;
}
.cont h2, .cont h2 {
margin-bottom: 1em !important;
}
.hidden {
opacity : 0;
}
.visible {
opacity : 1;
}

.hero {
width: 100%;
height: 50vh;
position: relative;
margin-bottom: 12em;
background: #f0e4db;
}
.parallax {
position: absolute;
right: 0;
width : 60%;
max-width: 1600px;
height : 100%;
background-position : right center !important ;
background-repeat : no-repeat;
background-attachment : scroll !important;
background-size : cover !important;
color: #fff;
}
.headimg {
position: absolute;
top: 0;
right: 0;
width: 60%;
}
.contact {
position: absolute;
bottom: -6em;
right: 2%;
width: 50%;
padding: 2% 2% 0 2%;
background: rgb(179,230,255,0.95);
color: #00334d !important;
}
.zert {
position: absolute;
bottom: -6em;
width: 9em !important;
left: 2%;
background: #fff;
border-radius: 50%;
}

.half {
position: absolute;
top: 18%;
color: #000;
width: 40%;
background: rgba(255,255,255,0.95);
padding: 2%;
z-index: 1;
text-align: left;
}
.half h1 {
font-size: 190%;
padding: 0 0 0.5em 0 !important;
margin: 0 0 1em 0 !important;
position: relative;
color: #0b2452;
}
.half h1::after {
        content: '';
        display: block;
        position: absolute;
        bottom: -3px;
        width: 20%;
        left: 0;
       border-bottom: 1px solid red;
}
.half ul {
width: 90%;
}
.half ul li {
}

.parasmall {
padding: 0;
overflow: hidden;
height: 10em;
top: 0;
display : flex;
flex-wrap : wrap;
justify-content : center;

}
.parasmall a {
background: rgba(255,255,255,0.95);
color: #08215a;
position: absolute;
width: 40%;
margin-top: 10%;
border: 3px solid #08215a;
border-radius: 12px;
font-size: 80%;
backdrop-filter: blur(5px);
}
.gooconfirm {
padding: 2em;
height: auto;
display: block;
}
.googleload {
background: #ee7f00;
border-radius: 12px;
border: 2px solid #fff;
color: #fff;
padding: 0.5em 1em 0.5em 1em;
display: inline-block;
}
small a {
font-size: 80%;
color: #ee7f00;
}
@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}
.type-cont {
display: inline-block;
padding-top: 25%;
padding-bottom: 20%;
}
.type {
 overflow: hidden;
    padding: 1%;
    white-space: nowrap;
    font-size: 150%;
font-weight: bold;
letter-spacing: 0.08em;
    width: 0;
    animation: typing 3s steps(21, end) forwards;
}


parasmall h1 {
padding-top: 0 !important;}

.anker {
display : block;
position : relative;
top : -10em;
visibility : hidden;
}
.bigwrap {
text-align: left;
   margin:0 auto;
hyphens: auto;
padding : 2em 0 2em 0;
border-bottom: 1px solid lightgray;
}
.dark .more {
border: none;
color: #fff;
letter-spacing : 0.05em;
font-variant : small-caps;
}
.light, .dark {
background: rgb(250,246,243,0.95);
 position: relative;
width: 118% !important;
top: 2em;
left: -8%;
z-index: 10;
padding: 8%;
margin-bottom: 8em;
}
.dark {
background: rgba(182,233,255,0.93);
}
.mitte {
width : 100%;
overflow : hidden;
}
.mitte img {
width : 100%;
height : auto;
}
main {
margin-top: 8em;
width: 100%;
height: auto;
position: relative;
margin: 0 auto;
margin-top: 8em;
flex: 1 0 auto;
}
.center {
margin : 0 auto;
text-align : left;
width : 90%;
max-width: 1440px;
padding : 0 0 0 0;
margin-bottom : 3em;
position: relative;
}
.bigwrap::after,
.center:not(.hi)::after,
.thumblist::after,
.newsbox::after,
.description::after {
content: "";
display: block;
clear: both;
}
.grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
padding: 0;
}
.hi {
width: 100%;
height: 100%;
position: relative;
padding: 0;
}

.pic {
display : block;
position: relative;
float : left;
width : 26%;
margin : 2% 2% 0 0;
display : inline-block;
font-size: 97%;
padding: 2%;
}
.doc {
width: 10em;
text-align: center;
}
.doc img, .docpic img {
border-radius: 50% !important;
margin-bottom: 1em;
}
.docpic {
width : 28%;
margin-bottom: 0;
text-align: center;
}
.orga {
margin: 0 0 1em 0;
width: 33%;
padding: 0;
text-align : center;
}
.orga .pictext {
font-size : 110%;
margin: 0 auto;
margin : 0.7em 0 0.7em;
font-weight : bold;
line-height: 120%;
width: 80% !important;
position: relative;
}
.orga img {
width: 100%;
margin-bottom: 0;
display: block;
position: relative;
margin: 0 auto;
object-fit: cover;
height: 65%;
border-left: 3px solid #e66b00;
}
.orga-title  {
width: 93%;
background: #ee7f00;
color: #fff;
padding: 1.5em 0 1em 7%;
text-align:left;
}
.pictext {
text-align: left;
padding: 7% 7% 0 7%;
}
a.pic {
color: #fff !important;}
.lightbox2 .pic {
width : 22%;
float : none;
margin-bottom : 0;
margin-left : 3em;
}
.kunde {
width: 10%;
height: auto;
}
.kunde img {
filter: opacity(60%);
}
.sprech {
width: 11em !important;
background: #faf6f3;
padding: 2%;
border-radius: 12px;
border: 1px solid #f0e4db;
}
.sprech h3 {
color: #08215a;
margin-top: 0;
margin-bottom: 1.5em;
font-size: 130%;
}
.sprechvar {
border-color: #e66b00;
}
.placehold {
background: url(../uploads/images/placeholder.jpg) !important; background-position : center center !important;background-repeat : no-repeat !important;background-size : cover !important;
border: none;
min-height: 12em;
}
.vorteil {
width: 39% !important;
}
.pic h3 {
color: #3b5490;
padding-bottom: 1em;
position: relative;
}
.pic h3::after {
        content: '';
        display: block;
        position: absolute;
        bottom: -3px;
        width: 20%;
        left: 0;
       border-bottom: 1px solid red;
}
.sprechvar.vorteil {
border-color: #e66b00;
}
.sprechvar.vorteil h3 {
color: #e66b00;
}
.leist {
width: 13% !important;
padding: 2%;
font-size: 95% !important;
position: relative;
}
.checked {
position: absolute;
top: -7px;
left: 30px;
z-index: 2;
font-size: 180%;
color: #3b5490;
}
.neues {
width: 42% !important;
background: #e6f7ff;
border: 1px solid #b3e7ff;
}
a.neues {
color: #3b5490 !important;
}
.mo {
display: inline-block;
background: #ee8042;
padding: 0.2em;
margin-top: 0.5em;
width: 60%;
}

.lightbox2 {
position : fixed;
display : block;
overflow : hidden;
z-index : 1001;
width : 100%;
min-height : 100% !important ;
height : auto !important ;
height : 100% !important ;
overflow-y : scroll;
top : 0;
left : 0;
background : #f0f0f0;
opacity : 0;
pointer-events : none;
text-align : center !important ;
transition : all 0.3s;
scrollbar-width : none;
}
.lightbox2::-webkit-scrollbar {
display : none;
}
.lightbox2 img {
margin-top : 2em;
float : left;
}
.lightbox2:target {
opacity : 1;
pointer-events : auto;
}
.description {
width : 70%;
max-width : 1440px;
min-height : 30em;
margin-left : auto;
margin-right : auto;
margin-top : 6em;
margin-bottom : 6em;
text-align : left;
}
.description ul {
margin-bottom : 1em !important ;
}
.column {
column-count: 2;
}

.teampic {
float : right !important;
width : 18% !important;
margin : 0 0 1em 2em !important;
}
.teamtitle {
font-weight: bold;
}
.description h3 {
font-size : 130%;
}
.doclib {
border-radius: 10px;
}
.blue {
position: sticky;
top: 0;
background: #08215a;
padding-top: 1.5em !important;
z-index: 200;
}
.orange {
width: 100%;
background: rgb(245,160,0);
background: linear-gradient(180deg, rgba(245,160,0,1) 30%, rgba(238,127,0,1) 30%);
height: 1em;
text-align: center;
}
.navcenter {
width : 90%;
max-width: 1280px;
position : relative;
margin: 0 auto;
height: 2em;
}
.topnav {
position : absolute;
right : 0;
top : 5.5em;
z-index: 9999999;
font-size: 88%;
}
.topnav a::after {
content: '';
position: absolute;
width: 100%;
transform: scaleX(0);
height: 1px;
bottom: -0.5em;
left: 0;
background: red;
transform-origin: bottom right;
transition: transform 0.5s ease-out;
}
.topnav a:hover::after {
transform: scaleX(1);
transform-origin: bottom left;
}
.topnav a {
display : block;
margin-right : 1em;
font-weight : normal;
color: #08215a;
position: relative;
padding-bottom: 1px;
 float: left;
}
.topnav a.currentpage, .topnav a.activeparent {
}
.topnav a.currentpage::after, .topnav a.activeparent::after {
font-weight: bold;
transform: scaleX(1);
height: 1px;
bottom: -0.5em;
left: 0;
}
.accordion {
color : #fff;
cursor : pointer;
padding : 1% 2% 1% 2%;
width : 45%;
border : none;
outline : none;
transition : 0.4s;
margin-bottom : 0.1em;
font-size : 120%;
text-align: left;
background: #3b5490;
}
.accosmall {
width : 5em !important ;
padding : 0.25em !important ;
margin-top : 1em;
}
.accordion:after {
content : '\002B';
font-weight : bold;
float : right;
margin-left : 5px;
}
.active:after {
content : "\2212";
}
.panel a {
text-decoration: underline;
}
.responsive a, #responsive a {
text-decoration : none !important ;
}
.panel {
margin : 1em 0 1em 0;
width : 100%;
max-height : 0;
overflow : hidden;
transition : max-height 0.2s ease-out;
padding: 0;
}
.flex {
display : flex;
justify-content : left;
align-items : center;
width : 100%;
padding : 0;
}
.grid-element {
box-sizing: border-box;
hyphens: auto;
padding-right: 5%;
}
.re-text {
hyphens: auto;

}
.re-text img {
float : right;
}

figure  {
position: relative;
float: right;
width: 100%;
}
.cover {
width: 18% !important;
margin : 3em 0 0.5em 8em;
}
figcaption {
position : absolute;
z-index: 10;
right: -4em;
top : 65%;
background: rgb(179,230,255,0.95);
padding : 1em;
color : #000;
width : 13em;
hyphens : auto;
font-size: 96%;
}
.li-text figcaption {
left: -2em !important;
}
.book {
padding-bottom: 2.5em;
border-top: 3px dotted silver;
margin-top: -3px;
overflow: hidden;
}

.grid-element img {
width : 105%;
height : auto;

}
.orga ul, .newsbox ul {
padding: 0;
margin: 0.5em 0 0.25em 0;
}
.orga li, .newsbox li  {
background: url(../uploads/images/liste.png) no-repeat 0 7px;
background-size: 10px 10px;
padding-left: 12px;
list-style-type: none;
}
a.more {
position: relative;
display : inline-block;
background: #3b5490;
color: #fff;
text-align : center;
font-weight : bold;
padding : 0.7em 1em 0.5em 1em;
font-size : 120%;
margin-top: 2em;
margin-bottom : 15px;
z-index: 103;
border: none;
}
.thumblist {
width : 100%;
min-height : 100%;
z-index : 10;
}
blockquote {
font-style: italic;
}
blockquote:before {
display : block;
position: absolute;
content : "\201C";
font-size : 6em;
color : #e66b00;
line-height : 0;
font-style : normal;
}
.shariff {
width : 20em;
}
.share {
width : 100% !important ;
text-align : center;
display : flex;
flex-wrap : wrap;
}

div.website, div.website * {
  display: none !important;
}
label {

display : block;
margin-bottom : 0.5em;
}
input, textarea, select {
margin-right: 3%;
margin-bottom : 3%;
background : rgba(255,255,255,0.9);
border: 1px solid #08215a;
padding-left : 0.7em;
height : 2.5em;
font-size : 100%;
box-sizing : content-box;
font-family : 'Roboto';
width : 45%;
color: #08215a;
}
textarea {
height : 6em;
clear : both !important ;
float : none;
padding: 0.7em;
width: 93%;
margin-bottom: 0.5em;
}
.cms_checkbox {
width : 1em;
clear : both;
float : left;
margin-right : 0.5em;
margin-top : -0.7em;
margin-bottom: 0 !important;
}
.cms_submit {
width : 30%;
height : 3.5em;
color : #fff;
background: #00519e;
}
.cms_select {
height : auto;
padding : 2%;
}
.cms_submit.fbsubmit, .search-button {
color : #fff;
background: #08215a;
font-size : 100%;
padding: 0;
}
.privacy {
font-size: 80%;
width: 90%;
line-height: 140%;
}
.captcha {
width : 45%;
clear : both;
float : none;
}
.captcha img {
clear : both;
box-shadow : none !important ;
width : 40% !important ;
height : auto !important ;
float : none;
margin : 0.5em 0 0.5em 0;
}

.confirm, .error_message {
position : absolute !important;
background : rgba(255,255,255,0.95);
padding :5%;
top : 1em;
left : 5%;
border-top : 4px solid #e66b00;
max-width: 80%;
z-index : 10000;
box-shadow : 0 1px 1px rgba(0,0,0,0.11), 0 2px 2px rgba(0,0,0,0.11), 0 4px 4px rgba(0,0,0,0.11), 0 6px 8px rgba(0,0,0,0.11), 0 8px 16px rgba(0,0,0,0.11);
}
.upload, .cms_browse {
clear: both;
border: none !important;
}
.upload label {
margin-top: 1em;
}
.sub, .center ul {
padding:  0.75em 0 0.75em 1em !important;
margin:  0;
list-style-type : none;
text-align: left;
}


.sub a {
color: #222717;
}
footer {
font-size: 90%;
width: 100%;
hyphens: auto;
position: static !important;
display: block;
margin-top: 2rem;
margin-top: auto;
z-index: 2;
}
footer ul {
margin-left: 0;
}
footer li {
list-style-type: none;
margin-bottom: 0.15em !important;
}
.center li {
margin-bottom: 0.3em;
padding-left: 0.5em;
list-style-type: none;
 list-style-image: url(../uploads/images/list-o.png);
}
.foo {
margin-bottom : 0 !important;
position: relative;
width: 90%;
max-width: 1440px;
margin: 0 auto;
}
footer a {
color : inherit;
}
footer ul {
margin-left: 1em;
}
.foot {
float : left;
margin-right : 8%;
margin-bottom : 4%;
text-align: left;
}
.foo-title {
text-transform : uppercase;
font-weight : bold;
font-size : 110%;
margin-bottom : 0.7em;
color: #00334d;
}
footer .foo-title {
color: #000;
}
.site-footer {
background: #14384a;
border-top: 1px solid #c03b2b;
color: #f8f2eb;
text-align: left;
}
.site-footer__inner {
padding: 2.35rem 0 1rem;
}
.site-footer__grid {
display: grid;
grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr));
gap: 1.4rem 2rem;
align-items: start;
}
.site-footer__section {
margin: 0;
}
.site-footer__section--brand {
border-left: 2px solid #c03b2b;
padding-left: 0.95rem;
}
.site-footer__kicker {
font-family: Roboto, Arial, Helvetica, sans-serif;
font-size: 0.76rem;
font-weight: bold;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #d8e2ea;
margin-bottom: 0.55rem;
}
.site-footer__lede {
font-size: 1.18rem;
line-height: 1.35;
max-width: 15em;
margin-bottom: 0;
}
.site-footer__heading {
font-family: Roboto, Arial, Helvetica, sans-serif;
font-size: 0.8rem;
font-weight: bold;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 0.7rem;
color: #d8e2ea;
}
.site-footer__contact {
font-style: normal;
}
.site-footer__contact p,
.site-footer__link-list li {
margin-bottom: 0.45rem !important;
}
.site-footer__link-list,
.site-footer__meta {
margin: 0;
padding: 0;
}
.site-footer__link-list {
list-style: none;
}
.site-footer__link-list a,
.site-footer__contact a,
.site-footer__meta a {
color: #f8f2eb;
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-color 0.2s ease, color 0.2s ease;
}
.site-footer__link-list a:hover,
.site-footer__link-list a:focus,
.site-footer__contact a:hover,
.site-footer__contact a:focus,
.site-footer__meta a:hover,
.site-footer__meta a:focus {
color: #ffffff;
border-bottom-color: #c03b2b;
}
.site-footer__bottom {
display: flex;
justify-content: space-between;
gap: 1rem;
flex-wrap: wrap;
align-items: center;
margin-top: 1.75rem;
padding-top: 0.75rem;
border-top: 1px solid rgba(248, 242, 235, 0.2);
color: #d8e2ea;
}
.site-footer__bottom p {
margin-bottom: 0;
}

.topnav .icon {
  display: none;
}
.rightpic {
float: right;
width: 40% !important;
margin: 3% 0 2% 4% !important;
}

@media screen and (max-width: 1320px) {
.jobcoaching {
width: 42% !important;
}
}

@media screen and (max-width: 62em) {
  .topnav a {display: none;}
  .topnav a.icon {
   position: fixed !important;
top: 4em;
    right: 0;
    display: block !important;
background: url(../uploads/images/hamburger.png) no-repeat;
background-size: 24px auto;
width: 24px;
height: 24px;
border-radius: 50%;
  }
}

@media screen and (max-width: 62em) {

  .topnav.responsive .icon {
    position: fixed !important;
    top: 4em;
color: #000;
width: 24px;
height: 24px;
text-align: center;
background: url(../uploads/images/close.png) no-repeat;
background-size: 24px auto;
  }
.half, .contact {
position: relative;
width: 90%;
top: 0;
left: 0;
right: 0;
}
.half {
padding-top: 15%;
}

  .topnav.responsive {
position: fixed;
background: rgba(0,0,0,0.86);
left: 0;
top: 0;
transition : 0.5s;
width: 100%;
height: 100%;
padding: 8em 2em;
}

  .topnav.responsive a, .topnav a.currentpage::after, .topnav a.activeparent::after  {
    float: none;
    display: block;
    text-align: left;
color: #fff;
border: none !important;
margin-bottom: 1em;
  }
.topnav a::after, .topnav a.currentpage::after, .topnav a.activeparent::after {
transform: none;
height: 0;
}
.topnav a:hover::after {
transform: none;
}
.noshadow {
margin-top: 3em !important;
}
.pic, .vorteil, .sprech, .jobcoaching {
width: 38% !important;
}
.newsbox {
column-count: 2;
}
.hero {
height: auto;
background: #fff;
}
.parallax {
background-attachment : scroll !important;
width: 100%;
position: relative;
height: 26em;
}
figure {
margin-left: 2em !important;
}
.mleft, .menuright {
position: static;
width: auto;
text-align: center;
}
.mleft {
left: 0;
}
.menuright {
width: 100% !important;
float: none;
}
#res-call {
position : relative;
z-index : 1000;
}
#mobsearch {
text-align : center;
display : flex;
flex-wrap : wrap;
justify-content : center;
}
.mobinpt {
width : 10em;
}

#logo {
bottom : 0.5em;
height : 80%;
}

.sm {
width : 36% !important ;
}
.half {
padding: 15% 5% 5% 5%;
}

.contact {
padding: 5%;}

footer {
padding-bottom : 2.5em !important ;
}
.foot {
float : none !important ;
}
.site-footer__grid {
grid-template-columns: 1fr 1fr;
}
.site-footer__section--brand {
grid-column: 1 / -1;
}
.site-footer__lede {
max-width: none;
}
.type {
font-size: 90%;
}

h1 span {
font-size: 80%;
line-height: 40% !important;
}
.menu li {
margin-right: 0.5em;
}
a.more {
font-size: 110%;
}
}
@media screen and (max-width: 800px) {
.site-footer__inner {
padding-top: 1.85rem;
}
.site-footer__grid {
grid-template-columns: 1fr;
gap: 1.2rem;
}
.site-footer__section--brand {
grid-column: auto;
}
.site-footer__bottom {
display: block;
}
.site-footer__meta {
margin-top: 0.6rem;
}
.parallax h1, .title span {
hyphens: auto;
}
.flex {
display : block;
}
.accordion {
width: 70%;
}
 figure, .cover {
float : none !important ;
width : 100% !important ;
margin : 0 0 1.5em 0 !important;
position: static;
}
figcaption {
position: relative;
border: none;
background: none;
font-weight: normal;
width: 90%;
line-height: 140%;
right: 0;
}
.searchcont {
width : 70%;
}
.teampic {
width : 22% !important;
}
label, .own, .required, input, cms_select, .captcha {
width : 100%;
}
.chk label {
width : 80%;
}
.grid-element {
margin : 1em 0 1em 0;
}
.grid {
display: block;
}
.grid-element {
width : 100% !important;
margin : 0 0 0.5em 0;
}
.thumblist {
overflow : visible !important ;
}
.pic {
width : 95% !important ;
margin : 0 0 5% 0 !important;
padding: 5%;
}
.sm {
width : 86% !important ;
}
.back img {
width : 70%;
text-align : left;
}
.mleft, .menuright {
float: none;
}
.orange {
height: 0.75em;
}
.menu li {
height: 40px;
width: auto;
}
.menu li img {
height: 100%;
width: auto;
}
.doc {
width: 50% !important;
font-size: 80%;
}
.docpic {
width: 80% !important;
}

.required, input, cms_select, .captcha {
width : 97%;
}
.cms_submit {
width: 80%;
}
.parasmall a {
font-size: 80%;
width: 80%;
}
.kunde {
width: 20%;
}
.noshadow {
width: 30% !important;
}
.headl2 {
margin-top: 1em;
}
.dark, .light {
position: static;
top: 0;
left: 0;
width: 100% !important;
}
}
@media screen and (max-width: 450px) {

#wrapper {
padding-top: 2.7em;
}
a.more {
font-size: 100%;
}
.headl2, .marquee__content {
font-size: 7vw !important;
margin-bottom: 1em;
}
h3 {
font-size: 120%;
}
.kunde {
width: 25%;
}
.accordion {
width: 100%;
}
.newsbox {
column-count: 1;
}
.navcenter {
width: 100%;
}
.logo {
width: 14em;
}
.zert {
width: 6em !important;
bottom: -5em !important;
}
.menu {
width: 100%;
text-align : center;
display : flex;
flex-wrap : wrap;
justify-content : center;
top: -0.75em;
right: 0;
}

.menu li img {
height: 100%;
width: auto;
}
#logo {
font-size : 100%;
}
.cont h1 {
font-size : 140% !important ;
}

.sub {
line-height: 110%;
font-size: 95%;
margin-top: 0.5em;
}

.pic {
margin-right : 0 !important ;
float: none !important;
margin : 0 0 5% 0 !important;
}
.orga img {width: 100%;}
.teampic {width: 100% !important;}
blockquote {
margin: 0 6% 8% 6%;
}
blockquote::before {
font-size: 350%;
}
.sprech {
width: 80% !important;
border-width: 4px;
padding: 8%;
}
.news, .orga {
font-size: 105% !important;
}
}
@media screen and (max-width: 370px) {
.menu {
top: -0.5em;
}
}

.form-panel {
width: 92%;
max-width: 1120px;
margin: 4.5rem auto 6rem auto;
text-align: left;
clear: both;
scroll-margin-top: 10rem;
}

.contact-cards-section {
width: 100%;
clear: both;
margin: 0;
}

.contact-cards {
display: flex;
flex-wrap: wrap;
gap: 1.5rem;
justify-content: center;
align-items: stretch;
margin: 0 auto 2rem auto;
}

.contact-card {
flex: 1 1 15rem;
max-width: 20rem;
min-width: 14rem;
padding: 1.4rem 1.25rem;
background: #fff;
border: 1px solid rgba(8,33,90,0.1);
box-shadow: 0 18px 36px rgba(8,33,90,0.08);
text-align: left;
}

.contact-card h3 {
margin: 0 0 0.7rem 0;
font-size: 1.2rem;
line-height: 1.35;
color: #08215a;
}

.contact-card__body,
.contact-card__body p,
.contact-card__body a {
overflow-wrap: anywhere;
word-break: break-word;
hyphens: auto;
}

.contact-card__body p:last-child {
margin-bottom: 0;
}

.contact-card__meta {
margin-bottom: 0.75rem;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-size: 0.84rem;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
color: #5f6f8d;
}

.template-unser-haus .gallery.thumblist {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 1.4rem;
padding: 0;
margin: 1.5rem 0 0 0;
overflow: visible;
}

.template-unser-haus .gallery .img {
margin: 0;
}

.template-unser-haus .gallery .img a {
position: relative;
display: block;
overflow: hidden;
border-radius: 18px;
background: #f7f2ed;
box-shadow: 0 18px 36px rgba(8, 33, 90, 0.08);
font-size: 0;
line-height: 0;
text-decoration: none;
}

.template-unser-haus .gallery .img a::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(8, 33, 90, 0.02) 0%, rgba(8, 33, 90, 0.42) 100%);
opacity: 0;
transition: opacity 0.25s ease;
z-index: 1;
}

.template-unser-haus .gallery .img a::after {
content: "Bild oeffnen";
position: absolute;
left: 1rem;
bottom: 1rem;
z-index: 2;
padding: 0.7rem 1rem;
border-radius: 999px;
background: rgba(255,255,255,0.94);
color: #08215a;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-size: 0.78rem;
font-weight: 700;
letter-spacing: 0.05em;
text-transform: uppercase;
line-height: 1;
box-shadow: 0 12px 24px rgba(8, 33, 90, 0.14);
transform: translateY(0.5rem);
opacity: 0;
transition: opacity 0.25s ease, transform 0.25s ease;
}

.template-unser-haus .gallery .img a:hover::before,
.template-unser-haus .gallery .img a:focus::before {
opacity: 1;
}

.template-unser-haus .gallery .img a:hover::after,
.template-unser-haus .gallery .img a:focus::after {
opacity: 1;
transform: translateY(0);
}

.template-unser-haus .gallery .img img {
display: block;
width: 100%;
aspect-ratio: 4 / 3;
object-fit: cover;
transition: transform 0.35s ease;
}

.template-unser-haus .gallery .img a:hover img,
.template-unser-haus .gallery .img a:focus img {
transform: scale(1.04);
}

.template-unser-haus .galleryclear {
display: none;
}

.template-home .pic.sprech.leist {
float: none;
display: flex;
flex: 1 1 14rem;
flex-direction: column;
align-self: stretch;
width: auto !important;
max-width: 16.5rem;
min-width: 13.5rem;
margin: 0.7rem;
padding: 2.45rem 1.5rem 1.55rem 1.5rem;
box-sizing: border-box;
border-radius: 14px;
border-color: #e6ddd5;
background: #faf7f4;
overflow: hidden;
line-height: 1.45;
}

.template-home .pic.sprech.leist .checked {
top: 0.8rem;
left: 1.45rem;
font-size: 1.8rem;
line-height: 1;
color: #345596;
}

.template-home .pic.sprech.leist h3 {
margin-bottom: 1.15rem;
font-size: 1.08rem;
line-height: 1.2;
}

.template-home .pic.sprech.leist h3::after {
width: 2rem;
}

.template-unser-haus .pic.sprech.neues {
float: none;
display: flex;
flex: 0 1 calc(50% - 1.4rem);
flex-direction: column;
align-self: stretch;
width: auto !important;
max-width: calc(50% - 1.4rem);
min-width: 17rem;
margin: 0.7rem;
padding: 2.45rem 1.6rem 1.7rem 1.6rem;
box-sizing: border-box;
border-radius: 14px;
background: #eaf7ff;
border-color: #cfe8f7;
overflow: hidden;
line-height: 1.5;
}

.template-unser-haus .pic.sprech.neues .checked {
top: 0.8rem;
left: 1.45rem;
font-size: 1.8rem;
line-height: 1;
color: #345596;
}

.template-unser-haus .pic.sprech.neues h3 {
margin-bottom: 1.15rem;
font-size: 1.08rem;
line-height: 1.2;
}

.template-unser-haus .pic.sprech.neues h3::after {
width: 2rem;
}

@media screen and (max-width: 900px) {
.template-unser-haus .pic.sprech.neues {
flex-basis: 100%;
max-width: 100%;
}
}

body.has-gallery-lightbox {
overflow: hidden;
}

.gallery-lightbox[hidden] {
display: none;
}

.gallery-lightbox {
position: fixed;
inset: 0;
z-index: 100000;
display: flex;
align-items: center;
justify-content: center;
padding: 2rem;
}

.gallery-lightbox__backdrop {
position: absolute;
inset: 0;
background: rgba(6, 18, 44, 0.82);
backdrop-filter: blur(10px);
}

.gallery-lightbox__dialog {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: auto minmax(0, 1fr) auto;
align-items: center;
gap: 1rem;
width: min(1100px, 100%);
max-height: 100%;
}

.gallery-lightbox__figure {
margin: 0;
border-radius: 24px;
overflow: hidden;
background: #f6f1eb;
box-shadow: 0 30px 60px rgba(0, 0, 0, 0.28);
}

.gallery-lightbox__image {
display: block;
max-width: 100%;
max-height: min(76vh, 900px);
width: 100%;
height: auto;
object-fit: contain;
background: #f6f1eb;
}

.gallery-lightbox__caption {
padding: 1rem 1.25rem 1.2rem 1.25rem;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-size: 0.92rem;
line-height: 1.5;
letter-spacing: 0.02em;
color: #08215a;
background: rgba(255,255,255,0.96);
white-space: normal;
overflow-wrap: anywhere;
word-break: break-word;
}

.gallery-lightbox__close,
.gallery-lightbox__nav {
border: none;
border-radius: 999px;
background: rgba(255,255,255,0.94);
color: #08215a;
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.16);
cursor: pointer;
transition: transform 0.2s ease, background 0.2s ease;
}

.gallery-lightbox__close:hover,
.gallery-lightbox__close:focus,
.gallery-lightbox__nav:hover,
.gallery-lightbox__nav:focus {
transform: translateY(-1px);
background: #fff;
}

.gallery-lightbox__close {
position: absolute;
top: -0.9rem;
right: -0.9rem;
z-index: 2;
width: 3rem;
height: 3rem;
font-size: 1.8rem;
line-height: 1;
}

.gallery-lightbox__nav {
width: 3.25rem;
height: 3.25rem;
font-size: 1.4rem;
}

.form-panel__inner {
display: grid;
grid-template-columns: minmax(16rem, 24rem) minmax(0, 1fr);
gap: 2rem;
align-items: start;
}

.form-panel__intro {
padding: 2.5rem 2rem;
background: linear-gradient(180deg, rgba(230,247,255,0.95) 0%, rgba(214,238,252,0.9) 100%);
border: 1px solid rgba(8,33,90,0.12);
box-shadow: 0 20px 50px rgba(8,33,90,0.08);
}

.form-panel__intro h2 {
width: 100%;
margin-bottom: 0.9rem;
font-size: 235%;
color: #08215a;
overflow-wrap: anywhere;
word-break: break-word;
hyphens: auto;
}

.form-panel__intro p:last-child {
margin-bottom: 0;
}

.form-panel__form {
min-width: 0;
}

.form-panel .cms_form {
background: #fff;
border: 1px solid rgba(8,33,90,0.1);
padding: 2rem;
box-shadow: 0 24px 60px rgba(8,33,90,0.11);
}

.form-panel .confirm,
.form-panel .error_message {
position: relative !important;
top: auto;
left: auto;
max-width: none;
margin-bottom: 1.25rem;
padding: 1rem 1.25rem;
box-shadow: none;
}

.form-panel .confirm {
border-top: 0;
border-left: 4px solid #1f6f43;
background: #edf8f1;
}

.form-panel .error_message {
border-top: 0;
border-left: 4px solid #c03b2b;
background: #fdf0ed;
}

.form-panel .error_message ul {
padding-left: 1.25rem;
margin: 0;
}

.form-panel .kontakt {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1rem 1.25rem;
}

.form-panel .kontakt > div {
width: auto;
float: none;
margin: 0;
}

.form-panel .form-field--full,
.form-panel .privacy,
.form-panel .submit,
.form-panel .website {
grid-column: 1 / -1;
}

.form-panel label {
display: block;
margin: 0 0 0.45rem 0;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-size: 0.92rem;
font-weight: 700;
letter-spacing: 0.01em;
color: #08215a;
}

.form-panel input[type="text"],
.form-panel input[type="email"],
.form-panel select,
.form-panel input[type="file"],
.form-panel textarea {
width: 100%;
min-height: 3.35rem;
margin: 0;
padding: 0.85rem 1rem;
border: 1px solid #c7d3e3 !important;
background: #fbfdff;
box-sizing: border-box;
color: #08215a;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.form-panel input[type="file"] {
padding: 0.75rem 0.9rem;
background: #f8fbff;
}

.form-panel select {
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
padding-right: 3.25rem;
background-image: linear-gradient(45deg, transparent 50%, #08215a 50%), linear-gradient(135deg, #08215a 50%, transparent 50%);
background-position: calc(100% - 1.3rem) calc(50% - 0.15rem), calc(100% - 0.95rem) calc(50% - 0.15rem);
background-size: 0.45rem 0.45rem, 0.45rem 0.45rem;
background-repeat: no-repeat;
cursor: pointer;
}

.form-panel textarea {
min-height: 12rem;
line-height: 1.55;
resize: vertical;
}

.form-panel input[type="text"]:focus,
.form-panel input[type="email"]:focus,
.form-panel select:focus,
.form-panel input[type="file"]:focus,
.form-panel textarea:focus {
outline: none;
border-color: #08215a !important;
background: #fff;
box-shadow: 0 0 0 4px rgba(8,33,90,0.11);
}

.form-panel .is-hidden {
display: none;
}

.form-panel .form-required-note,
.form-panel .form-help {
font-size: 0.94rem;
line-height: 1.55;
color: #4b556f;
margin: 0;
}

.form-panel .form-help--headline {
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-weight: 700;
color: #08215a;
margin-bottom: 0.35rem;
}

.form-panel .privacy {
padding: 1.15rem 1.25rem;
background: #f4f8fd;
border: 1px solid rgba(8,33,90,0.08);
width: auto;
font-size: 0.86rem;
line-height: 1.6;
}

.form-panel .privacy,
.form-panel .privacy a,
.template-kontakt .bigwrap .grid-element.dark,
.template-kontakt .bigwrap .grid-element.dark a,
.template-kontakt .contact-card__body,
.template-kontakt .contact-card__body a {
overflow-wrap: anywhere;
word-break: break-word;
hyphens: auto;
}

.template-kontakt .bigwrap .grid-element.dark,
.template-kontakt .bigwrap .grid-element.dark a {
overflow-wrap: anywhere;
word-break: break-word;
hyphens: auto;
}

.template-kontakt .bigwrap > .center > .headl2 {
width: 100%;
margin-left: auto;
margin-right: auto;
text-align: center !important;
}

.template-kontakt .bigwrap > .center > .headl2::before,
.template-kontakt .contact-cards-section .headl2::before {
left: 50%;
transform: translateX(-50%);
}

.template-kontakt .bigwrap > .center > .headl2::after,
.template-kontakt .contact-cards-section .headl2::after {
left: 50%;
transform: translateX(-50%);
}

.form-panel .submit {
margin-top: 0.5rem;
text-align: left;
}

.form-panel .cms_submit,
.form-panel .cms_submit.fbsubmit {
width: auto;
min-width: 16rem;
height: auto;
padding: 0.95rem 1.4rem;
border: 0;
font-family: 'Roboto', Arial, Helvetica, sans-serif;
font-size: 0.98rem;
font-weight: 700;
letter-spacing: 0.01em;
box-shadow: 0 16px 35px rgba(8,33,90,0.18);
cursor: pointer;
transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
box-sizing: border-box;
max-width: 100%;
}

.form-panel .cms_submit:hover,
.form-panel .cms_submit:focus {
transform: translateY(-1px);
box-shadow: 0 20px 42px rgba(8,33,90,0.22);
}

.form-panel .website {
position: absolute;
left: -9999px;
top: auto;
width: 1px;
height: 1px;
overflow: hidden;
}

@media screen and (max-width: 900px) {
.form-panel__inner {
grid-template-columns: 1fr;
}
}

@media screen and (max-width: 700px) {
.contact-card {
min-width: 100%;
max-width: none;
}

.contact-cards-section {
margin: 0;
}

.template-kontakt .headl2,
.template-kontakt .cont h1,
.template-kontakt .cont h2 {
width: 100%;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 0.5rem;
padding-right: 0.5rem;
box-sizing: border-box;
text-align: center;
}

.template-kontakt .headl2::before {
left: 50%;
transform: translateX(-50%);
}

.template-kontakt .headl2::after {
left: 50%;
transform: translateX(-50%);
}

.template-kontakt .bigwrap .grid-element.dark,
.template-kontakt .bigwrap .grid-element.dark a {
word-break: break-all;
}

.form-panel .kontakt {
grid-template-columns: 1fr;
}

.form-panel {
margin-top: 3rem;
width: calc(100% - 1.5rem);
}

.form-panel .cms_form {
padding: 1.25rem;
}

.form-panel__intro {
padding: 1.75rem 1.25rem;
}

.form-panel .cms_submit,
.form-panel .cms_submit.fbsubmit {
width: 100%;
min-width: 0;
display: block;
}

.gallery-lightbox {
padding: 1rem;
}

.gallery-lightbox__dialog {
grid-template-columns: 1fr;
gap: 0.75rem;
}

.gallery-lightbox__nav {
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 2;
}

.gallery-lightbox__nav:hover,
.gallery-lightbox__nav:focus {
transform: translateY(calc(-50% - 1px));
}

.gallery-lightbox__nav--prev {
left: 0.5rem;
}

.gallery-lightbox__nav--next {
right: 0.5rem;
}

.gallery-lightbox__close {
top: 0.75rem;
right: 0.75rem;
}

.gallery-lightbox__figure {
border-radius: 18px;
}

.gallery-lightbox__caption {
padding-right: 4rem;
font-size: 0.88rem;
}
}
