@charset "UTF-8";
/* CSS Document */
@import 'fonts.css';

/* reset */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td { border:0; font-size:100%; margin:0; padding:0; }
a { outline:none; }
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
del,ins { text-decoration:none; }
caption,th { text-align:left; }
h1,h2,h3,h4,h5,h6 { font-size:100%; font-weight:normal; }
q:before,q:after { content:''; }
abbr,acronym { border:0; font-variant:normal; }
sup,sub { vertical-align:baseline; }
legend { color:#000; }
input,button,textarea,select,optgroup,option { font-family:inherit; font-size:inherit; font-style:inherit; font-weight:inherit; }
input,button,textarea,select { font-size:100%; }
address {font-style:inherit;}

/* Clearfix */
.clearfix:before, .clearfix:after {content: " "; display: table;}
.clearfix:after {clear: both;}
/*.clearfix {*zoom: 1;} removed, is depricated and not linger neccessary*/

*, *:before, *:after {padding: 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;}
figure, figure:before, figure:after {padding: 0; margin: 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;}

html {-webkit-text-size-adjust: 100%;
--black: rgba(0,0,0,1);
--white: rgba(255,255,255,1);

--primary-1: 0,92,169;
--primary-2: 0,70,132;
--primary-3: 0,43,88;
--primary-4: 0,25,59;

--pr-solid-1: rgba(var(--primary-1),1);
--pr-solid-2: rgba(var(--primary-2),1);
--pr-solid-3: rgba(var(--primary-3),1);
--pr-solid-4: rgba(var(--primary-4),1);

--sec-solid-1: rgba(168,218,255,1);
--sec-solid-2: rgba(228,237,245,1);
--sec-solid-3: rgba(203,221,237,1);
--sec-solid-4: rgba(0,152,239,1);

--overlay: rgba(var(--primary-3),0.25);
--ol-dark: rgba(var(--primary-3),0.75);
--ol-light: rgba(228,237,245,0.75);

--grey-l: rgba(232,232,231,1);
--grey-m: rgba(102,102,101,1);

--warning: rgba(195,0,0,1);

--wrap: 32rem;
--main-pad: 1rem;
--gap: 1rem;
}

body {font-family: 'Geologica', sans-serif; margin:0; color: var(--black); font-size: 1.125em; line-height: 1.5; min-height: 100vh; font-weight: 200;}
body.open-panel {height: 100%; overflow: hidden;}

/***************************** FORMAT *****************************/
/*
h1, h2 {font-size: 1.75em;}
h3, h4, .hl-small h1, .hl-small h2, .text-xl {font-size: 1.375em;}
h5, h6, .hl-small h3, .hl-small h4, .text-l {font-size: 1.25em;}
*/
.text-xxl {font-size: 1.75em;}
h1, h2, .text-xl {font-size: 1.375em;}
h3, h4, .text-l {font-size: 1.25em;}
h5, h6 {font-size: 1.125em;}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {color: inherit; border: 0 !important; text-decoration: none;}

h1, h2, h3, h4, .slide-cap {text-wrap: balance; line-height: 1.25;}

h1, h2, h3, h4 {font-weight: 500;}

.text-s, .copy {font-size: 1em;}
.text-xs {font-size: 0.875em;}
.copy {line-height: 1.5;}

.text-extra + *, * + .text-extra, .video + *, * + .video, .text-img + *, * + .text-img, .map-wrap + *, * + .map-wrap {margin-top: 1.5em;}

p + h1, p + h2,
ul + h1, ul + h2,
ol + h1, ol + h2,
dl + h1, dl + h2, * + .margin-xl {margin-top: 1.25em;}

p + h3, p + h4, p + h5, p + h6,
ul + h3, ul + h4, ul + h5, ul + h6,
ol + h3, ol + h4, ol + h5, ol + h6,
dl + h3, dl + h4, dl + h5, dl + h6, * + .margin-m {margin-top: 0.75em;}

h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p,
h1 + ul, h2 + ul, h3 + ul, h4 + ul, h5 + ul, h6 + ul,
h1 + ol, h2 + ol, h3 + ol, h4 + ol, h5 + ol, h6 + ol,
h1 + dl, h2 + dl, h3 + dl, h4 + dl, h5 + dl, h6 + dl,
p + dl, ul + dl, ol + dl, * + .margin-s {margin-top: 0.375em;}

hr + p, hr + ul, hr + ol, hr + h1, hr + h2, hr+ h3, hr + h4, hr + h5, hr + h6,
p + hr, ul + hr, ol + hr, h1 + hr, h2 + hr, h3 + hr, h4 + hr, h5 + hr, h6 + hr,
dl + p, dl + ul, dl + ol, dl + hr, * + .margin-l {margin-top: 1em;}

* + .margin-xs {margin-top: 0.25em;}
* + .margin-xxl {margin-top: 2em;}

/*p, ul, ol {}*/
p + p, ul + p, ol + p {margin-top: 0.75em;}
p + ul, p + ol {margin-top: 0.25em;}
blockquote > *, .text-m {font-size: 1.125em;}

.light {font-weight: 200;}
.regular, th, em {font-weight: 400; font-weight: 350;}
b, strong, .medium {font-variant: normal; font-weight: 500;}
.bold {font-weight: 600;}
em {font-style: normal;}

ul {list-style-type: none;}
ul li {padding: 0 0 0.25em 0.5em; position: relative;}
ul li:before {content: '\00b7'; position: absolute; left: 0;}
ul li:last-of-type, ol li:last-of-type {padding-bottom: 0;}

ol {list-style: none; counter-reset: list-count;}
ol li {padding: 0 0 0.25em 1.5em; position: relative; counter-increment: list-count;}
ol li:before {content: counter(list-count) '.'; position: absolute; left: 0; vertical-align: bottom;}

dt {position: relative; font-weight: 500; position: relative; padding: 0 0 0 0.875em;}
dt:before {display: block; content: ''; position: absolute; top: 0.5em; left: 0;
width: 0; height: 0; border-style: solid; border-width: 0.25em 0 0.25em 0.5em; border-color: transparent transparent transparent currentColor;}
/*dd + dd {position: relative; padding: 0 0 0 1.125em;}
dd + dd:before {content: '\00b7'; position: absolute; left: 0.625em;}*/

dt + dd, dd + dd {margin-top: 0.25em;}
dd + dt {margin-top: 0.75em;}

footer li, .no-bull li {padding: 0;}
footer li:before, .no-bull li:before {content: ''; display: none;}

sub, sup, .sub, .sup, .copyright {font-size: 0.75em;}
sub, .sub {vertical-align: sub;}
sup, .sup {vertical-align: top;}

.uc {text-transform: uppercase;}

.white, .white:not(:hover) *, .white a.phone, .white a.phone:hover {color: var(--white);}

.sr-only {position: absolute; text-indent: -9999em; color: rgba(255,255,255,1); width: 1px; height: 1px; overflow: hidden;}

/***************************** LINKS/SPANS *****************************/
a, button, a span, button span {text-decoration: none; color: inherit;
transition: color .3s, background-color .3s, background-size .3s, border .3s, opacity .3s;}
a:hover, button:hover {color: var(--sec-solid-4);}
.color-bg a:hover, .color-bg button:hover {color: var(--sec-solid-1);}
.bg-prime-1 .btn-outline:hover {background: var(--pr-solid-4);}

a.phone, a.phone:hover {color: rgba(0,0,0,1); cursor: text;}
a.phone {white-space: nowrap;}

a:focus-visible, button:focus-visible {outline-style: auto;}

button {-webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; border: none; border-radius: none; text-align: left; line-height: inherit;}
button:hover {cursor: pointer;}

.skip-link {display: block; padding: 0.5rem 1rem; background: var(--white); position: absolute; top: 0; left: 50%; transform: translate(-50%,-100%); transition: all .3s;}
.skip-link:focus {transform: translate(-50%,0); z-index: 10;}

.btn {display: inline-block; padding: 0.375em 1em;}
.btn-outline {border: 0.125rem solid currentColor;}
.btn-icon {align-items: center;}

.t-prime-1 {color: var(--pr-solid-1); border-color: var(--pr-solid-1);}
.t-prime-2, em {color: var(--pr-solid-2); border-color: var(--pr-solid-2);}
.t-prime-3 {color: var(--pr-solid-3); border-color: var(--pr-solid-3);}
.t-prime-4 {color: var(--pr-solid-4); border-color: var(--pr-solid-4);}

.t-grey-m {color: var(--grey-m); border-color: var(--grey-m);}

/*
.btn-outline:hover {
border-color: var(--pr-solid-1);
  &.t-prime-1 {border-color: var(--pr-solid-3);}
}*/

.btn-solid:hover {
background-color: var(--pr-solid-4); color: var(--white);

  &.bg-prime-4 {background-color: var(--pr-solid-2);}
  /*&.white {color: var(--white);}*/
}

.color-bg.white .btn-solid {background: var(--white); color: var(--pr-solid-2);
  &:hover {background: var(--pr-solid-6);}
}
.color-bg:not(.white) .btn-solid {background: var(--pr-solid-2); color: var(--white);
  &:hover {background: var(--pr-solid-4);}
}

.ul {background: linear-gradient(0deg, currentColor, currentColor) no-repeat left bottom / 100% 0.0625em;}
.ul-rev {background: linear-gradient(0deg, currentColor, currentColor) no-repeat right bottom / 0 0.0625em;}

.ul:hover, .ul:focus-visible, a:hover .ul, button:hover .ul, .ul.download:hover {background-size: 0 0.0625em; background-position-x: right;}
.ul-rev:hover, .ul-rev:focus-visible, a:hover .ul-rev, button:hover .ul-rev {background-size: 100% 0.0625em; background-position-x: left;}
.ul.download, .ul-rev.download:hover, .ul-rev.download:focus-visible {background-size: calc(100% - 1.25em) 0.0625em; background-position-x: left 1.25em;}

.download {position: relative; padding-left: 1.25em;}
.download:before {width: 0.875em; height: 100%; left: 0; top: 0; display: block; position: absolute; content: url(../images/layout/icon-pdf.svg);}

.arrow-r, .arrow-l {position: relative;}
.arrow-r {padding-right: 1.25em;}
.arrow-l {padding-left: 1.25em;}
.arrow-r:before, .arrow-l:before {display: block; content: ''; width: 0; height: 0; position: absolute; top: 50%; border-style: solid; transition: border .3s, opacity .3s; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);}
.arrow-r:before {right: 0; border-width: 0.375em 0 0.375em 0.75em; border-color: transparent transparent transparent currentColor; }
.arrow-l:before {left: 0; border-width: 0.375em 0.75em 0.375em 0; border-color: transparent currentColor transparent transparent; }

.redundant {visibility: hidden;}
.redundant * {visibility: visible;}

/* teaser caption */
.teaser-cap .mob-bg {background-color: var(--ol-light); display: inline-block; padding: 0 0.25em;}
.teaser-cap.white .mob-bg {background-color: var(--ol-dark);}

/* bc / meta */
.bc {max-width: 100%; overflow: hidden; flex-wrap: nowrap;}
.bc + * {margin-top: 1.5rem;}
.bc-item {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.bc-item:after {display: inline; margin: 0 0.25em; position: relative;}
.bc-dot:after {content: '\00b7';}
.bc-slash:after {content: '\002f';}
.bc-bar:after {content: '\007c';}
.bc-item:last-of-type:after {content: ''; display: none;}
.bc-item a {outline-offset: -0.0625rem;}
.content .bc-item {display: inline-flex;}
.content .bc-item a, .content .bc-item span {display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -webkit-text-overflow: ellipsis;}
.content .bc-item a {max-width: 4rem;}
.content .bc-item span {max-width: 6rem;}

@supports (content: 'x' / 'y') {
ul li:before /*, dd + dd:before*/ {content: '\00b7' / '';}

.bc-dot:after {content: '\00b7' / '';}
.bc-slash:after {content: '\002f' / '';}
.bc-bar:after {content: '\007c' / '';}
}

/* image / icon links*/
a svg, button svg, a svg *, button svg * {transition: fill .3s;}

.bl, .teaser-text {display: block; position: relative;}
.bl:focus-visible {z-index: 1;}
.bl:focus-visible img {z-index: -1;}

.img-wrap .bl, .teaser-lists .bl {width: 100%; height: 100%;}


.darkend, .darkend-rev, .bg-black {background: var(--black);}
.darkend:focus-visible {background: transparent;}
.darkend img, .darkend-rev img {transition: opacity .3s;}
.darkend img, .darkend-rev:hover img, .soften img {opacity: 0.66;}
.darkend:hover img, .darkend:focus-visible img, .darkend-rev img {opacity: 1;}

.icon-link .icon {width: 5rem;}
.icon-link + .icon-link {margin-left: 1rem;}


.table-wrap {width: 100%; max-width: 100%; overflow: auto;}
table {width: 100%;}
th, td {padding: 0.25rem 0.5rem; border-right: 0.125rem solid rgba(241,241,241,1); min-width: clamp(5ch, 10ch, 30ch); max-width: 50% !important; vertical-align: top;}
thead th:last-of-type, td:last-of-type {border-right: none;}
tbody tr:nth-of-type(odd) {background: var(--grey-l);}
tbody tr:nth-of-type(even) {background: var(--sec-solid-2);}

.scroll {overflow-x: auto;}
table {/*display: block;*/ position: relative;}
th {z-index: 2; inset-block-start: 0; background: var(--sec-solid-1);}
th[scope="row"] {z-index: 1; inset-inline-start: 0; background: var(--sec-solid-1);}
th:not([scope="row"]):first-child {left: 0; z-index: 3;}
.sticky-col th {position: sticky;}
.open-panel th:not([scope="row"]):first-child {z-index: 0;}

tbody tr:nth-of-type(odd) th {background: var(--sec-solid-2);}

.checkmark {display: inline-block; width: 1.25em; height: 0.75em; border-left: 0.25rem solid var(--pr-solid-2); border-bottom: 0.25rem solid var(--pr-solid-2); transform: rotate(-45deg); margin-bottom: 0.125em;}

/***************************** LAYOUT *****************************/
/* BASIC */
.wrapper {height: auto; margin: 0 auto; max-width: 80rem; max-width: var(--wrap); position: relative;}
main {display: block; padding-top: 5.25rem;}
.content {padding: 1rem 0 2rem 0;}

.bg-white {background-color: var(--white);}
.bg-prime-1 {background-color: var(--pr-solid-1);}
.bg-prime-2 {background-color: var(--pr-solid-2);}
.bg-prime-3 {background-color: var(--pr-solid-3);}
.bg-prime-4 {background-color: var(--pr-solid-4);}

.bg-sec-2 {background-color: var(--sec-solid-2);}

.fill-white {fill: var(--white);}
.fill-pr-1 {fill: var(--pr-solid-1);}

/* HEADER */
#mh {position: absolute; width: 100%; background: rgba(255,255,255,1); z-index: 5; transition: top .3s;}
.mh-inner {padding: 1rem; padding: var(--main-pad); align-items: center;}

.logo-top, .logo-sub {display: block;}
.logo-sub {padding-top: 0.25em;}
.logo-top {height: 2rem; width: auto; transition: height .3s;}
.logo-top svg {width: auto; height: 100%;}
.logo a {display: block; width: 100%; height: 100%;}
.logo {max-width: 9.875rem;}

#mh.fixed {position: fixed; top: 0; background: rgba(255,255,255,0.8); backdrop-filter: blur(0.125rem);}
#mh.fixed .logo-top {height: 2rem;}
#mh.fixed .logo-sub {display: none;}
#mh.fixed .mh-inner {padding: 0.5rem 1rem; padding: calc(var(--main-pad) / 2) var(--main-pad);}
.open-panel #mh.fixed {backdrop-filter: none;}

/* NAVI */
nav ul {list-style-type: none;}
nav ul li:before {content: ''; display: none;}

.nav-wrap {width: auto !important; margin-left: auto; align-items: center; flex-wrap: nowrap;}

#mn, .side-panel {position: absolute; right: 0; top: 0; z-index: 5;}
.nav-panel, .menu, .panel-wrap, .panel-cont {width: 100%; height: 100%; -ms-transform: translateX(100%); -webkit-transform: translateX(100%); transform: translateX(100%);}
.nav-panel, .panel-wrap {position: fixed; right: 0; top: 0; z-index: 3; transition: transform .3s .3s;}
#mn.open .nav-panel, #mn.open .menu, .side-panel.open .panel-wrap, .side-panel.open .panel-cont {-ms-transform: translateX(0); -webkit-transform: translateX(0); transform: translateX(0);}
.menu, .panel-cont {position: absolute; right: 0; z-index: 3; padding: 4.5rem 1rem; background: var(--white); transition: transform .3s; overflow: auto; -webkit-overflow-scrolling: touch;}
.menu {display: none;}
.open-panel .menu, .no-js .menu {display: block;}
#mn.open .nav-panel, .side-panel.open .panel-wrap {transition: none;}
#mn.open .nav-panel .menu {box-shadow: 0 0 2rem rgba(0,0,0,0.5);}
#mn:after, .side-panel:after {display: block; content: ''; position: fixed; width: 0; height: 0; top: 0; left: 0; background: var(--overlay); opacity: 0; pointer-events: none; transition: opacity .3s;}
#mn.open:after, .side-panel.open:after {width: 100%; height: 100%; opacity: 1; backdrop-filter: blur(0.125rem);}

.tl {/*max-width: 30rem;*/ padding: 0; margin: 0 auto; border-top: 0.125rem solid var(--pr-solid-1);}
.tl:first-of-type {border-top: none;}
.tl-item {display: block; padding: 1rem 0; width: 100%; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 1.125em;}

/* sub nav */
.sub-menu {display: none; width: 100%; background: var(--sec-solid-3); padding: 0.75rem 0;}
.mega-sub .cols {flex-wrap: nowrap;}
.open-sub .sub-menu {display: block}
.sub-pull {position: relative;}

.sub-menu li, .sub-menu a {display: block;}
.sub-menu li {padding: 0;}
.sl-item {padding: 0.5rem 1rem; /*white-space: nowrap; overflow: hidden; text-overflow: ellipsis;*/}
.sl-main {font-size: 1.125em;}

.sub-pull:before {display: block; content: ''; width: 0; height: 0; position: absolute; right: 0; top: 50%; border-style: solid; border-width: 0 0.375em 0.75em 0.375em; border-color: transparent transparent var(--pr-solid-1) transparent; transition: all .3s; -webkit-transform: translate(-50%,-50%) rotate(180deg); -ms-transform: translate(-50%,-50%) rotate(180deg); transform: translate(-50%,-50%) rotate(180deg);}
.open > .sub-pull:before {-webkit-transform: translate(-50%,-50%) rotate(0deg); -ms-transform: translate(-50%,-50%) rotate(0deg); transform: translate(-50%,-50%) rotate(0deg);}
.sub-pull:hover:before {border-bottom-color: var(--pr-solid-1);}

.sub-tab-btn {padding: 0.5rem 2rem 0.5rem 1rem; display: block; width: 100%; color: var(--grey-m); border-right: 0.125rem solid transparent;}
.sub-tab-btn:before {opacity: 0.25; font-size: 0.875em; right: 0.75rem;}
.sub-tab-btn:hover:before, .sub-tab-btn.open:before {opacity: 1;}
.sub-tab-btn.open {color: var(--pr-solid-3); border-right-color: var(--sec-solid-3);}

.sub-tab-btn + .sub-tab-btn {border-top: 0.125rem solid var(--sec-solid-2);}
.sub-tab-btn:last-of-type {border-bottom: 0.125rem solid var(--sec-solid-2);}

.mega-sub .col:first-of-type {z-index: 1; max-width: 40%;}
.sub-tabs:before {content: ''; display: block; position: absolute; left: -0.125rem; top: 0; width: 0.125rem; height: 100%; background: var(--sec-solid-2);}

.no-js .sub-menu {padding-top: 0;}
.no-js .sub-menu ul {margin-top: 0;}
.no-js .with-sub:hover .sub-menu {display: block;}

/* nav pull */
.burger:before {top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);}
#pull {width: 2.5rem; height: 2.5rem; padding: 0.625rem 0 0.625rem 0.75rem; position: relative; z-index: 12; order: 3;}

.burger-wrap {position: relative; width: 100%; height: 100%;}

.burger, .burger:before, .burger:after {width: 100%; height: 0.25rem; display: block; background: rgba(0,0,0,1);
-webkit-transition: all 0.3s; -ms-transition: all 0.3s; transition: all 0.3s;}
.burger:before, .burger:after {position: absolute; content: '';}
.burger:after {bottom: 0; top: auto;}

.open .burger {background: none;}
.open .burger:before {top: 50%;
-webkit-transform: translateY(-50%) rotate(45deg); -ms-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg);}
.open .burger:after {top: 50%; bottom: auto;
-webkit-transform: translateY(-50%) rotate(-45deg); -ms-transform: translateY(-50%) rotate(-45deg); transform: translateY(-50%) rotate(-45deg);}

/* lang nav */
.lang-nav {margin-left: auto; padding-right: 0.5rem;}

/* IMAGES / SLIDER / MEDIA */
figure img, svg {width: 100%; display: block;}
.stretch-w img {width: 100%; height: auto;}
.stretch-h img {width: auto; height: 100%;}

.memberships img {max-height: 3rem; width: auto;}
.memberships .text-img + .text-img {margin-top: 0;}

.video {padding-bottom: 56.25%; position: relative;}
.video iframe, .video video, .external-overlay, .external-overlay .poster {display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0;}

.img-wrap {position: relative; width: 100%;}
.img-wrap img {position: absolute; top: 50%; left: 50%; -ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}

.img-h-xs .img-wrap {padding-bottom: 50%;}
.img-h-s .img-wrap {padding-bottom: 56.25%;}
.img-h-m .img-wrap {padding-bottom: 66.66%;}
.img-h-l .img-wrap {padding-bottom: 75%;}

.headmedia figure {padding-bottom: 75%;}

/* map */
.map-wrap {width: 100%; height: 0; padding-bottom: 90%; position: relative; overflow: hidden;}
.map {width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 0;}
.popup-cont {display: none;}

@supports (object-fit: cover){
.stretch-w img, .stretch-h img {width: 100%; height: 100%; object-fit: cover;}
.img-contain .stretch-w img, .img-contain .stretch-h img {object-fit: contain;}
}
@supports (aspect-ratio: 1/ 1) {
.img-wrap, .video, .map-wrap {padding-bottom: 0 !important;}
.img-wrap img, .video iframe, .video video, .map {position: relative; top: auto; left: auto;}
.img-wrap img {-ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0);}

.img-h-xs .img-wrap {aspect-ratio: 2 / 1;}
.img-h-s .img-wrap, .video {aspect-ratio: 16 / 9;}
.img-h-m .img-wrap {aspect-ratio: 3 / 2;}
.img-h-l .img-wrap, .headmedia figure {aspect-ratio: 4 / 3;}

.headmedia .video iframe, .headmedia .video video {object-fit: cover;}
.map-wrap {aspect-ratio: 1; height: auto;}

.lightbox .img-wrap {height: 100%;}
}

.headmedia {position: relative; max-height: 70vh; max-height: 70svh;}
.headmedia figure {min-width: 100%; max-width: 100%; height: 100%; max-height: 70vh; max-height: 70svh !important;} /* um auch bei alten iOS die max-height richtig einzuhalten */
.headmedia figcaption {width: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); text-align: center;}

.caption {position: absolute; top: 0; left: 0;}

.main-media {display: none;}
.side-inner .main-media {display: block; width: 100%;}

.play-icon {position: relative; width: 2rem; height: 2rem; display: block; background: var(--black); border-radius: 50%; border: 0.0625rem solid var(--white); opacity: .66; transition: opacity .3s, border .3s; margin: 0 !important;}
.play-icon:after {content: ''; display: block; position: absolute; top: 50%; left: 50%; transition: border .3s;}
.play:after {width: 30%; height: 50%; border-left: 0.125rem solid var(--white); border-right: 0.125rem solid var(--white); transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%);}
.pause:after {width: 0; height: 0; border-style: solid; border-width: 0.5rem 0 0.5rem 0.75rem; border-color: transparent transparent transparent var(--white); transform: translate(-33.33%,-50%); -webkit-transform: translate(-33.33%,-50%);}

.play-btn {padding: 1rem; position: absolute; bottom: 0; right: 0; z-index: 1;}
.play-btn:focus-visible {outline: none;}
.play-btn:focus-visible .play-icon {outline: auto;}
.play-btn:hover .play-icon, .play-btn:focus-visible .play-icon {opacity: 1 !important; border-color: var(--sec-solid-4);}

.slick-controls-wrap .play-btn {bottom: 100%; /*right: -1rem; transform: translate(-50%,-50%);*/ pointer-events: auto;}
.slick-controls-wrap .play-icon, .slick-controls-wrap .play-icon.pause {opacity: 0.33;}
.slick-controls-wrap:hover .play-btn .play-icon {opacity: 0.66;}
.slick-controls-wrap .play-btn:hover .play-icon {opacity: 1;}

@media (prefers-reduced-motion: reduce) {
.slick-controls-wrap .play-icon {opacity: 0.75;}
}



/* externer content */
.disabled-external iframe {display: none;}
.external-overlay, .cookie-hint {padding: 0.5rem; background: var(--pr-solid-3);}
.external-overlay .icon {width: 1.5rem; height: auto; position: absolute; right: 0.5rem; top: 0.5rem; fill: currentColor;}
.overlay-content {position: relative;}
.external-overlay {background-size: 100% 100%; animation: bgsize 3s alternate infinite ease-in-out;}
.external-overlay img {opacity: .5;}

/* CLS Fix - Slider */
.headslider, .slider {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; flex-flow: row nowrap; -ms-flex-wrap: nowrap; overflow: auto; width: 100%;}
.slide {-webkit-box-flex: initial; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: initial; position: relative; float: left; padding: 0; width: 100%; min-width: 100%;}
.slick-initialized .slide {min-width: initial;}

/* CONTENT */
.block, .cols, .col, .row, .single-head {position: relative; width: 100%;}
.pad, .pad-text {padding: 1rem; padding: var(--main-pad);}
.pad-s {padding: 0.5rem; padding: calc(var(--main-pad) / 2);}
.pad-m {padding: 0.75rem; padding: calc((var(--main-pad) / 4) * 3);}
.pad-xs {padding: 0.25rem; padding: calc(var(--main-pad) / 4);}
.pad-bottom {padding-bottom: 1rem; padding-bottom: var(--main-pad);}
.pad-h {padding: 0 1rem; padding: 0 var(--main-pad);}

.cols, .rows {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; flex-flow: row wrap; -ms-flex-wrap: wrap;}
.col, .row {-webkit-box-flex: initial; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: initial; position: relative; float: left;}
.mob-cols .col, .flags {width: auto;}
.rows {flex-direction: column; flex-wrap: nowrap;}

.col-inner {height: 100%;}
.item-end {align-content: flex-end;}
.flex-bottom {margin-top: auto;}

.color-bg .col-cap {padding: 0.75rem;}
.col-img + .col-cap {padding-top: 0.375em;}


.flag {display: block; width: 2rem;}
.with-icons {align-items: center; gap: 1rem;}
.with-icons .flags {flex-wrap: nowrap;}
.flag + .flag {margin-left: 0.75rem;}
.with-icons .flag {width: 1.25em;}

/* text-extra plugin */
.text-extra {gap: 1rem; gap: var(--gap);}

/* accordion */
/*.accordion.pad {padding: 0 1rem;} auskommentieren für farbige hintergründe */
.acc-head {position: relative; padding: 1rem 0;}
.acc-head button {width: 100%; justify-content: space-between; align-items: center;}
.acc-head span {padding-right: 1rem;}

.acc-head .cross {width: 1.375rem; height: 1.375rem; position: relative;}
.hidden-pull.open .cross:before {-ms-transform: translate(-50%,-50%) rotate(90deg); -webkit-transform: translate(-50%,-50%) rotate(90deg); transform: translate(-50%,-50%) rotate(90deg);}

.pull-arrow:after {display: block; content: ''; width: 0; height: 0; position: absolute; border-style: solid; border-width: 0.75em 0.375em 0 0.3755em; border-color: currentColor transparent transparent transparent; transition: all .3s; right: 0.25em; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);}
.pull-arrow:hover:after {border-top-color: var(--red);}
.open .pull-arrow:after {-ms-transform: translateY(-50%) rotate(180deg); -webkit-transform: translateY(-50%) rotate(180deg); transform: translateY(-50%) rotate(180deg);}

.acc-entry + .acc-entry {border-top: 0.125rem solid currentColor;}

.acc-cont {padding: 0 0 1.5rem 0; display: none;}

@media (scripting: none){
.no-js .acc-cont {display: block;}
}

/* tabs */
.tabs-nav {position: relative; width: 100%;}
.tabs-nav:before {content: ''; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 0.125rem; background: var(--sec-solid-1); z-index: -1;}
.tab-btn { width: 100%; padding: 0.5rem; border-bottom: 0.125rem solid var(--sec-solid-1);}
.tab-btn.open {border-bottom-color: var(--pr-solid-2); color: var(--pr-solid-2);}

.tab-entry {display: none;}
.tab-entry.open {display: block;}

/* teaser */
.teaser-lists .col-inner {min-height: 16.5rem; max-width: 100%; justify-content: space-between;} /*aspect-ratio: 16/9; - safari zickt rum, deswegen min-height */

/* events-list */
.event-entry {padding: 1.5rem 0; border-top: 0.125rem solid var(--sec-solid-1);}
.event-entry:first-of-type {padding-top: 0; border-top: none;}
.event-entry:last-of-type {padding-bottom: 0;}
.event-entry .col + .col {margin-top: 1em;}

/* single page */
.single-page {}
.text-col-s + .text-col-l, .text-col-l + .text-col-s {margin-top: 1.25rem;}

/* SIDE PANEL */
.close-btn {width: 2.5rem; height: 2.5rem; position: absolute; top: 1rem; right: 1rem;}
.side-inner {padding: 0 0 2rem 0;}

.panel-foot {margin-top: 1.5rem; width: 100%; text-align: center;}
.panel-foot .close-small {width: auto; margin: 0 auto;}

.panel-wrap .rows {height: 100%; justify-content: center;}

.panel-fade .panel-wrap {opacity: 0; transition: opacity .3s;}
.panel-fade .panel-cont {transition: none;}
.panel-fade.open .panel-wrap {opacity: 1; transition: opacity .3s;}

/* loader */
.loader-wrap {width: 100%; height: 100%; /*max-height: 101vh;*/ position: absolute; top: 0; left: 0; background: rgba(255,255,255,1); z-index: 100; }
.loader {width: 20%; height: 0; padding-bottom: 20%; position: absolute; top: 50vh; left: 50%; transform: translate(-50%,-50%);}

.loader-icon {width: 100%; height: 100%; position: absolute; top: 50%; left: 50%;}

.loader-icon {background: url(../images/layout/loading-icon.svg) center center/ 50% auto no-repeat; z-index: 1; -ms-animation: rotate 2s infinite linear; -webkit-animation: rotate 2s infinite linear; animation: rotate 2s infinite linear;}

/* zoom icon */
.z-i-wrap {position: absolute; left: 1rem; bottom: 1rem; pointer-events: none; opacity: 0.8; transition: opacity .3s; flex-wrap: nowrap; width: auto; align-items: center;}
.zoom-icon {width: 1.75em; height: 1.75em; padding: 0.25em;}
.z-i-arrow {transition: transform .3s; transform: translate(-0.25rem,0.25rem);}
a:hover + .z-i-wrap .z-i-arrow, a:focus-visible + .z-i-wrap .z-i-arrow {transform: translate(0,0);}
a:hover + .z-i-wrap, a:focus-visible + .z-i-wrap {opacity: 1;}
.z-i-wrap span {padding-right: 0.375em;}

/* small close */
.close-small {align-items: center;}
.close-small .close {width: 1em; height: 1em; position: relative; transition: background .3s; margin-right: 0.5em;}
.close-small .cross {-ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg);}

.cross:before, .cross:after {display: block; content: ''; width: 0.125rem; height: 100%; position: absolute; top: 50%; left: 50%; background: currentColor; transition: all .3s;}
.cross:before {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.cross:after {-ms-transform: translate(-50%,-50%) rotate(90deg); -webkit-transform: translate(-50%,-50%) rotate(90deg); transform: translate(-50%,-50%) rotate(90deg);}


/* pagination / entry nav */
.pagination {width: 100%;}

.pagination ul {flex-wrap: nowrap; -ms-flex-wrap: nowrap; padding: 1rem 0;}
.pagination ul li {-webkit-box-flex: initial; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: initial; position: relative; float: left; padding: 0;}
.pagination ul li + li {margin-left: 0.25em;}

.pagination a, .pagination span {min-width: 2.25rem; text-align: center; display: block; height: 100%; padding: 0.375rem 0.75rem; background: var(--sec-solid-2); line-height: 1.25;}
.pagination span {opacity: 0.5;}
.pagination a.active {background: var(--pr-solid-3);}
.pagination a:hover {background: var(--pr-solid-2); color: var(--white);}

.pagination .pag-arr * {line-height: 1.125;}

.art-nav-wrap {padding: 1rem 0; padding: var(--main-pad) 0;}
.art-nav .col {padding: 0.5rem;}
.art-nav .col + .col {margin-top: 0;}

.next-art {text-align: right;}

.prev-art, .nav-back {border-top: 0.125rem solid var(--sec-solid-2);}

.art-nav a {display: inline-block; position: relative; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; vertical-align: bottom;}
.nav-arr {position: relative;}

.prev-art .nav-arr {padding-right: 0.5em;}
.next-art .nav-arr {padding-left: 0.5em;}

/* FOOTER */
.footer {background: var(--grey-l); margin-top: auto;}

.footer-nav li {width: 100%;}
.footer-nav li + li {margin-top: 0.25rem;}

.social {padding-top: 1rem;}
.social a {display: block; width: 2rem;}
.social li + li {margin-left: 1rem;}

.footer a:hover svg {fill: var(--pr-solid-1);}

.address {padding: 1rem 0; margin-top: 1rem; border-top: 0.125rem solid var(--black);}

/* back top*/
.arrow-top:before, .arrow-top:after {content: ''; position: absolute; display: block; top: 0.5em; left: 50%; transition: top .3s, height .3s;}

.arrow-top:before {width: 0.75em; height: 0.75em; transform: translateX(-50%) rotate(-45deg); border-right: 0.125em solid var(--white); border-top: 0.125em solid var(--white);}
.arrow-top:after {width: 0.125em; height: 1em; background: rgba(255,255,255,1); transform: translateX(-50%);}

#back-top {width: 2.5em; height: 2.5em; position: fixed; right: 0.75rem; bottom: 1rem; display: none; z-index: 2;}
#back-top button {width: 100%; height: 100%; display: block; padding: 0.25rem; background: var(--pr-solid-2); border-radius: 0.25rem; opacity: 0.5; border: 0.125rem solid var(--pr-solid-4);}
#back-top button:hover, #back-top button:active, #back-top button:focus-visible {opacity: 1;}
#back-top .arrow-top {width: 100%; height: 100%; position: relative;}

button:hover .arrow-top:before, button:hover .arrow-top:after {top: 0.375em;}
button:hover .arrow-top:after {height: 1.125em;}

/* responsiveness
--------------------------------------------- */

@media screen and (min-width:24em) {
/* HEADER */
.logo-top {height: 2.25rem;}
.logo {max-width: 11.25rem;}

/* NAVI */
/* lang nav */
.lang-nav {padding-right: 1rem;}
}

/* small only */
@media screen and (max-width:48em) {
.mega-sub .cols, .slider .caption, .table-wrap {font-size: 0.875em;}

.lightbox .rows {flex-direction: row;}
.lightbox .row/*, .lightbox .col-m*/ {width: 50%; max-width: 50%;}

.event-entry .col-m-s {width: 60%;}

.pad-h:has(.news-box) {padding: 0;}

.memberships .text-img {width: 100%;}

@supports (aspect-ratio: 1/ 1) {
.slider .img-wrap {aspect-ratio: 4 / 3;}
}

}

/* medium */
@media screen and (min-width:48em) {
body {--wrap: 46rem; --gap: 2rem;}

.text-xl {font-size: 1.5em;}

.content .bc-item a, .content .bc-item span {max-width: 100%;}

/***************************** LAYOUT *****************************/
/* BASIC */
main {padding-top: 5.5rem;}

/* HEADER */
/*.mh-inner {padding: 1rem 0;}
#mh.fixed .mh-inner {padding: 0.5rem 0;}*/
.logo-top {height: 2.5rem;}
.logo {max-width: 12.375rem;}

/* NAVI */
.menu {width: 75%;}

/* IMAGES / SLIDER / MEDIA */
.headmedia {padding: 0 var(--main-pad);}

.headmedia figure {padding-bottom: 66.66%;}
@supports (aspect-ratio: 1/ 1) {
.headmedia figure {aspect-ratio: 3 / 2;}
.map-wrap {aspect-ratio: 4 / 3;}
}

/* externer content */
.external-overlay {padding: 1.5rem; padding: calc(var(--main-pad) * 2)}
.external-overlay .icon {width: 2.5rem; right: auto; top: auto; position: relative;}

/* CONTENT */
.pad-text {padding: 1rem 2rem; padding: var(--main-pad) calc(var(--main-pad) * 2);}

.col-s, .col-l-s {width: 33.33%; max-width: 33.33%;}
.col-m, .col-m-s {width: 50%; max-width: 50%;}
.col-l, .col-l-m, .col-s-l {width: 66.66%; max-width: 66.66%;}

.col-m .col-cap {padding: 0.5em var(--main-pad) var(--main-pad) var(--main-pad);}

.col-img + .col-cap {padding-top: 0.5em;}

/* text-extra plugin */
.text-cols {columns: 20rem 2;}
.text-cols-small {columns: 14rem 3;}
.cols-small .col {width: calc(33.33% - (2rem * 2/3)); width: calc(33.33% - (var(--gap) * 2/3));}
.cols-large .col {width: calc(50% - 1rem); width: calc(50% - (var(--gap) / 2));}

.text-cols li, .text-cols-small li, .avoid p, .avoid p {-webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid;}
.col-header {-webkit-column-span: all; column-span: all; margin-bottom: 0.25em;}
.col-header + * {margin-top: 0;}

/* teaser */

/* tabs */
.tabs-nav:before {content: ''; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 0.125rem; background: var(--sec-solid-1); z-index: -1;}
.tabs-nav .col, .tab-btn {width: auto;}
.tab-btn {padding: 0.5rem 1rem; border-top: 0.125rem solid var(--white);}
.tab-btn.open {border-top-color: var(--pr-solid-2); border-bottom-color: var(--white); color: var(--pr-solid-2);}

/* events-list */

/* map */
.map-wrap {padding-bottom: 75%;}
.maplibregl-ctrl-attrib {font-size: 0.75em;}

/* side panel */
.panel-cont, .menu {padding: 4.5rem 2rem;}

/* pagination / entry nav */
.art-nav {flex-wrap: nowrap; border-top: 0.125rem solid var(--sec-solid-1); border-bottom: 0.125rem solid var(--sec-solid-1);}
.art-nav a, .art-nav span {display: block;}

.next-art {order: 3;}

.art-nav .col {width: 33.33%; max-width: 33.33%;}
.art-nav .nav-back {width: auto;}
.art-nav .col + .col {margin-top: 0;}

.prev-art, .nav-back {border-top: none; background: none;}

/* FOOTER */
.spaced {justify-content: space-between;}
.footer-nav, .social {width: auto;}
.footer-nav {flex-grow: 2;}

.social {padding-top: 0;}


}

/* large */
@media screen and (min-width:64em) {
body {--wrap: 62rem;}

.headmedia .text-xl {font-size: 1.75em;}
.tabs-nav {font-size: 1.125em;}

/* teaser caption */
.teaser-cap .mob-bg {background-color: transparent !important; display: initial; padding: 0;}


/***************************** LAYOUT *****************************/
/* BASIC */
/* HEADER */
/* NAVI */
.menu {width: 66.66%;}


/* IMAGES / SLIDER / MEDIA */
.headmedia figure {padding-bottom: 56.25%;}
@supports (aspect-ratio: 1/ 1) {
.headmedia figure, .map-wrap {aspect-ratio: 16 / 9;}
}

/* CONTENT */
.col-m-s {width: 33.33%; max-width: 33.33%;}

/* events-list */
.event-entry .col + .col {margin-top: 0;}
.event-entry .col-m-s, .mc-right .text-col-s {padding-right: 1rem; padding-right: var(--main-pad);}
.event-entry .col-xl {width: 66.66%; max-width: 66.66%; padding-left: 2rem; padding-left: calc(var(--main-pad) * 2);}

/* single page */
.text-col-s + .text-col-l, .text-col-l + .text-col-s {margin-top: 0;}
.text-col-s {width: 30%; max-width: 30%;}
.text-col-l, .text-col-l-m {width: 70%; max-width: 70%;}

.mc-left .text-col-s {padding-left: 1rem; padding-left: var(--main-pad);}

.text-col-xl {width: 80%;}

@supports (position: sticky) {
.sticky {position: sticky; top: 0;}
.side-col .sticky {top: 5.5rem;}
.open-panel .sticky:has(.side-panel.open) {z-index: 5;}
}
.yellow {background: yellow;}

/* map */
.map-wrap {padding-bottom: 56.25%;}

/* side panel */
.panel-cont {width: 80%; padding: 4.5rem 4rem;}
.panel-cont.wide {width: 100%;}
.panel-cont.wide .side-inner {width: 100%; max-width: var(--wrap); margin: 0 auto;}
.close-btn {right: 5rem;}


/* FOOTER */
.mf-top {align-items: flex-end;}

.footer-nav li {width: auto;}
.footer-nav li + li {margin: 0 0 0 1em;}

.address .col {width: auto;}
.address ul {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; flex-flow: row nowrap; -ms-flex-wrap: nowrap;}
.address li {-webkit-box-flex: initial; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: initial; position: relative; float: left;}

.address li:after {display: inline; content: '\00b7'; margin: 0 0.25em;}
.address li:last-of-type:after {display: none;}

@supports (content: 'x' / 'y') {
.address li:after {content: '\00b7' / '';}
}

}

@media screen and (min-width:74em) {
body {--wrap: 72rem;}

.headmedia .text-xl {font-size: 2em;}
.teaser-list {font-size: 1.125em;}

th, td {width: clamp(5ch, 10ch, 30ch);}
th:first-of-type {width: clamp(10ch, 15ch, 30ch);}

/***************************** LAYOUT *****************************/
/* BASIC */
main {padding-top: 5.875rem;}

/* HEADER */
.logo-top {height: 2.75rem;}
.logo {max-width: 13.625rem;}

/* NAVI */
.nav-panel, .menu {position: static; width: auto; right: auto; top: auto; z-index: auto; height: auto; -ms-transform: initial; -webkit-transform: initial; transform: initial;}
#mn {position: static; width: auto; right: auto; top: auto; padding: 0 1rem 0 3rem; margin-left: auto; /*flex-grow: 2;*/}
.menu {width: auto; max-width: 100%; background: none; padding: 1rem 0 0 0; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; flex-flow: row nowrap; -ms-flex-wrap: nowrap; justify-content: flex-end; align-items: center; overflow: initial;}

#mh.fixed .menu, #mh.fixed .lang-nav {padding-top: 0.75rem;}

.tl {border-top: none; padding: 0 0.5rem; margin: initial; -webkit-box-flex: initial; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: initial; position: relative; float: left;}
.tl-item {padding: 0 0.25rem; overflow: initial; font-size: 1em;}
.tl:first-of-type {padding-left: 0;}
.tl:last-of-type {padding-right: 0;}

.with-sub:has(.mega-sub) {position: static;}

#mn.open .menu {box-shadow: none;}
.nav-panel:after {display: none;}

/* sub nav */
.sub-menu {position: absolute; width: auto; min-width: 100%; margin-top: 0.625rem; background: var(--white); box-shadow: 0 0.75rem 0.75rem 0 rgba(0,0,0,0.2);}
.simple-sub {left: 50%; transform: translateX(-50%); padding: 1rem 1.25rem;}
.mega-sub {left: 0;}
.sub-col {padding: 1rem 1.25rem;}
.no-js .sub-menu {margin-top: 0;}

.sl-item {padding: 0.5rem 0; /*white-space: nowrap; */ margin: 0 auto;}
.simple-sub .sl-item {min-width: clamp(7ch, 17ch, 40ch);}

.open-sub .sub-menu {display: none;}

.sub-pull {padding-right: 0.75rem;}
.sub-pull:before {border-width: 0 0.25em 0.5em 0.25em; border-bottom-color: currentColor; transform: translate(50%,-40%) rotate(180deg); opacity: .25}
.sub-pull:hover:before {opacity: 1;}
.with-sub.open .sub-pull:before {border-bottom-color: var(--pr-solid-1); transform: translate(50%,-50%) rotate(0deg);}

.sub-tab-btn {padding: 0.5rem 3rem 0.5rem 0;}
.sub-tab-btn:before {right: 1rem;}
.sub-tab-btn.open {border-right-color: var(--white);}

.mega-sub .col + .col {padding-left: 1rem;}

/* nav pull */
#pull {display: none;}

.lang-nav {justify-content: flex-end; order: initial; margin-left: initial; padding: 1rem 0 0 2rem;}

/* IMAGES / SLIDER / MEDIA */
.headmedia figure {padding-bottom: 50%;}
@supports (aspect-ratio: 1/ 1) {
.headmedia figure {aspect-ratio: 2 / 1;}
}

/* CONTENT */
.block {padding: 1rem 0; padding: var(--main-pad) 0;}
.block-text + .block-media {padding-top: 0;}

.text-col-l-m {width: 66.66%; max-width: 66.66%;}

/* teaser */
.teaser-lists .col-inner {min-height: 20rem; min-height: calc(var(--wrap) / 4);}

/* events-list */
.event-entry {padding: 2rem 0; padding: calc(var(--main-pad) * 2) 0;}


/* single page */
.mc-right .text-col-s {padding-right: 2rem; padding-right: calc(var(--main-pad) * 2);}
.mc-left .text-col-s {padding-left: 2rem; padding-left: calc(var(--main-pad) * 2);}

/* side panel */
.panel-cont {width: 75%;}
}

@media screen and (min-width:86em) {
body {--wrap: 82rem;}
}

@media screen and (min-width:100em) {
body {--wrap: 94rem; font-size: 1.125em;}

.headmedia .text-xl {font-size: 2.5em;}
.teaser-lists h2 {font-size: 2em;}


/* BASIC */
main {padding-top: 6.125rem;}

/* HEADER */
.logo-top {height: 3rem;}
.logo {max-width: 14.875rem;}

/* NAVI */
.menu, .lang-nav {padding-top: 1.5rem;}

.tl {padding: 0 0.75rem;}

/* IMAGES / SLIDER / MEDIA */
.zoom-icon {left:  calc(var(--main-pad) * 2); bottom:  calc(var(--main-pad) * 1.5);}

/* CONTENT */
.text-col-l-m {width: 60%; max-width: 60%;}

.pad-text {padding: var(--main-pad) calc(var(--main-pad) * 3);}
.teaser-lists .pad, .slider .pad, .info-block .pad {padding: calc(var(--main-pad) * 1.5) calc(var(--main-pad) * 2);}
.img-teaser .pad {padding: var(--main-pad) calc(var(--main-pad) * 2);}
.col-m .col-cap {padding: 0.75em calc(var(--main-pad) * 2) var(--main-pad) calc(var(--main-pad) * 2);}

/* teaser */
/*.teaser-lists .col-inner {min-height: 24rem;}*/

/* side panel */
.panel-cont {width: 66.66%;}

}

@media screen and (min-width:120em) {
body {--wrap: 110rem; --main-pad: 1.5rem; --gap: 3rem; font-size: 1.25em;}

/***************************** LAYOUT *****************************/
/* BASIC */
/*main {padding-top: 5.25rem;}*/

/* NAVI */
.menu, .lang-nav {padding-top: 2rem;}

.tl {padding: 0 1rem;}

/* IMAGES / SLIDER / MEDIA */
.headmedia figure {padding-bottom: 45%;}
@supports (aspect-ratio: 1/ 1) {
.headmedia figure {aspect-ratio: 20 / 9;}
}

}

@media screen and (min-width:140em) {
body {--wrap: 130rem; font-size: 1.375em;}

}
/* end responsiveness
--------------------------------------------- */

* + .no-marg {margin-top: 0;}
.no-pad-bottom {padding-bottom: 0;}
.no-pad-top, .table-content + .table-legend {padding-top: 0;}

.no-bg {background: none;}

@-webkit-keyframes pulse {
0%, 100% {transform: scale(1);}
50% {transform: scale(1.1);}
}
@-moz-keyframes pulse {
0%, 100% {transform: scale(1);}
50% {transform: scale(1.1);}
}
@keyframes pulse {
0%, 100% {transform: scale(1);}
50% {transform: scale(1.1);}
}

@-webkit-keyframes rotate {
0% {transform: translate(-50%,-50%) rotate(0deg);}
100% {transform: translate(-50%,-50%) rotate(360deg);}
}
@-moz-keyframes rotate {
0% {transform: translate(-50%,-50%) rotate(0deg);}
100% {transform: translate(-50%,-50%) rotate(360deg);}
}
@keyframes rotate {
0% {transform: translate(-50%,-50%) rotate(0deg);}
100% {transform: translate(-50%,-50%) rotate(360deg);}
}
