@font-face {
    font-family: "Aventa";
    src: url('fonts/aventa/Aventa-ExtraBold.woff2') format('woff2'),
        url('fonts/aventa/Aventa-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Aventa";
    src: url('fonts/aventa/Aventa-ExtraLight.woff2') format('woff2'),
        url('fonts/aventa/Aventa-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

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



:root {
  --mainsize: 20px;
  --mainratio: 1.6;
  --lineheight: calc(var(--mainsize) * var(--mainratio));
  --gap: var(--lineheight);
  --br: 3px;
  --aventa: "Aventa", "San Francisco", Helvetica, "Liberation Sans", "Arial", sans-serif;

  --text--xxs: calc(var(--mainsize) * .375);
  --text--xs: calc(var(--mainsize) * .5);
  --text--sm: calc(var(--mainsize) * .75);
  --text--regsm: calc(var(--mainsize) * .825);
  --text--reg: calc(var(--mainsize) * 1);
  --text--md: calc(var(--mainsize) * 1.25);
  --text--lg: calc(var(--mainsize) * 1.5);
  --text--flex: calc(var(--mainsize) * .8);
}


html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust:100%;
  background: var(--white);
}

html, body {
  scroll-behavior: smooth;
  margin: 0;
  padding:0;
}

body {
  font-family: var(--aventa);
  font-weight: normal;
  font-style: normal;
  color: var(--black);
  background: var(--white);
  font-size: var(--mainsize);
  line-height: var(--lineheight);
  text-rendering: optimizeSpeed;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}


/* ####################################################### default ####################################################### */

.fl {font-family: "Aventa";font-style: normal;font-weight: 200;}
.fr {font-family: "Aventa";font-style: normal;font-weight: normal;}
.fb {font-family: "Aventa";font-style: normal;font-weight: bold;}


a, a:hover, a:focus, a:link a:visited, a:active, a.active, :focus, :hover, :visited, :link, :active, .active {
  outline: none!important;
  text-shadow: none!important;
  box-shadow: none!important;
  text-decoration: none;
  color: inherit;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--aventa);
  font-weight: bold;
  font-style: normal;
}




.text--xs {
  font-size: var(--text--xs)!important;
}

.text--sm, .btn-sm, .text--sm .fsx {
  font-size: var(--text--sm)!important;
}

.text--reg, .fs-6 {
  font-size: var(--text--reg)!important;
}

.text--regsm, .text--regsm .fsx {
  font-size: var(--text--regsm)!important;
}
.text--md {
  font-size: var(--text--md)!important;
}

.text--lg {
  font-size: var(--text--lg)!important;
  line-height: 1.5;
}

.text--flex {
  font-size: var(--text--flex)!important;
}

.text img, .row > * img {
  width: 100%;
  height: auto;
  display: block;
}

.shadow {
  -webkit-box-shadow: 0px 15px 10px -10px var(--black--50)!important;
  box-shadow: 0px 15px 10px -10px var(--black--50)!important;
}

 {
  -webkit-box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
}

.shadow2, * .shadow2, * :hover .shadow2 {
  -webkit-box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px!important;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px!important;
}

.no_shadow {
  -webkit-box-shadow: none!important;
  box-shadow: none!important;
}


.no--btn {
  background: unset;
  border: unset;
  border-radius: unset;
  padding: unset;
  margin: unset;
  color: inherit;
  font-family:inherit;
  font-weight: inherit;
  font-style: normal;
}

.btn {
  outline: none!important;
  box-shadow: none!important;
  border-radius: var(--br);
  font-weight: bold;
  text-transform: lowercase;
}



.btn-primary,
.btn-primary:link,
.btn-primary:active,
.btn-primary:visited,
.btn-primary:active:focus,
.btn-primary:active:hover,
.btn-primary:hover,
.btn-primary:focus {
  --bs-btn-color: var(--white);
  --bs-btn-bg: var(--color--1);
  --bs-btn-border-color: var(--color--1);
  --bs-btn-hover-color: var(--white);
  --bs-btn-hover-bg: var(--color--1);
  --bs-btn-hover-border-color: var(--white);
  --bs-btn-focus-shadow-rgb: 49, 132, 253,0;
  --bs-btn-active-color: var(--white);
  --bs-btn-active-bg: var(--color--1);
  --bs-btn-active-border-color: var(--color--1);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0);
  --bs-btn-disabled-color: var(--white);
  --bs-btn-disabled-bg: var(--color--1);
  --bs-btn-disabled-border-color: var(--color--1);
  background-color: var(--color--1);
  color: var(--white);
  border-color: var(--color--1);
}

.btn-secondary,
.btn-secondary:link,
.btn-secondary:active,
.btn-secondary:visited,
.btn-secondary:active:focus,
.btn-secondary:active:hover,
.btn-secondary:hover,
.btn-secondary:focus {
  --bs-btn-color: var(--black);
  --bs-btn-bg: var(--white);
  --bs-btn-border-color: var(--black);
  --bs-btn-hover-color: var(--black);
  --bs-btn-hover-bg: var(--white);
  --bs-btn-hover-border-color: var(--black);
  --bs-btn-focus-shadow-rgb: 49, 132, 253,0;
  --bs-btn-active-color: var(--black);
  --bs-btn-active-bg: var(--white);
  --bs-btn-active-border-color: var(--black);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0);
  --bs-btn-disabled-color: var(--black);
  --bs-btn-disabled-bg: var(--white);
  --bs-btn-disabled-border-color: var(--black);
  background-color: var(--white);
  color: var(--black);
  border-color: var(--black);
}

.btn-light-white,
.btn-light-white:link,
.btn-light-white:active,
.btn-light-white:visited,
.btn-light-white:active:focus,
.btn-light-white:active:hover,
.btn-light-white:hover,
.btn-light-white:focus {
  --bs-btn-color: var(--white);
  --bs-btn-bg: var(--white--0);
  --bs-btn-border-color: var(--white);
  --bs-btn-hover-color: var(--white);
  --bs-btn-hover-bg: var(--white--0);
  --bs-btn-hover-border-color: var(--white);
  --bs-btn-focus-shadow-rgb: 49, 132, 253,0;
  --bs-btn-active-color: var(--white);
  --bs-btn-active-bg: var(--white-0);
  --bs-btn-active-border-color: var(--white);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0);
  --bs-btn-disabled-color: var(--white);
  --bs-btn-disabled-bg: var(--white-0);
  --bs-btn-disabled-border-color: var(--white);
  background-color: var(--white-0);
  color: var(--white);
  border-color: var(--white);
}



.lh05 {line-height: .5!important}
.lh075 {line-height: .75!important}
.lh1 {line-height: 1!important}
.lh11 {line-height: 1.1!important}
.lh12 {line-height: 1.2!important}
.lh13 {line-height: 1.3!important}
.lh14 {line-height: 1.4!important}
.lh15 {line-height: 1.5!important}
.lh16 {line-height: 1.6!important}
.uc {text-transform: uppercase!important;}
.lc {text-transform: lowercase!important;}
.nouc {text-transform: none!important;}
.em {font-style: italic!important;}
.godzilla {font-size: calc(var(--mainsize) * 2); text-transform: lowercase; line-height: 1.2;}
a.noul {text-decoration: none!important;}
a.noem {font-style: normal!important;}

.ls1 {letter-spacing: calc(var(--mainsize) * .0675);}
.ls2 {letter-spacing: calc(var(--mainsize) * .135);}
/* ########## transitions ################################################################################################################################# */
.transition--all {
  -webkit-transition: all 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--color {
  -webkit-transition: color .35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: color .35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--height {
  -webkit-transition: height .5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: height .5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--opacity {
  -webkit-transition: opacity 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: opacity 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--color, .text a {
  -webkit-transition: color 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: color 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--color--short, .text a {
  -webkit-transition: color .35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: color .35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--border {
  -webkit-transition: border 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: border 1.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--top {
  -webkit-transition: top .5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: top .5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--padding {
  -webkit-transition: padding .5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: padding .5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--background {
  -webkit-transition: background 1s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background 1s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.transition--transform {
  -webkit-transition: transform 1s cubic-bezier(0.25, 0.1, 0.25, 1)!important;
  transition: transform 1s cubic-bezier(0.25, 0.1, 0.25, 1)!important;
}


/* ####################################################### mainmenu ####################################################### */

ul.menubar li.nav-item.menubaritem a.nav-link,
ul.menubar li.nav-item.menubaritem a.nav-link:visited,
ul.menubar li.nav-item.menubaritem a.nav-link:link {
  color: var(--black);
}

ul.menubar li.nav-item.menubaritem a.nav-link:hover,
ul.menubar li.nav-item.menubaritem a.nav-link:focus,
ul.menubar li.nav-item.menubaritem a.nav-link:active,
ul.menubar li.nav-item.menubaritem a.nav-link:active:hover,
ul.menubar li.nav-item.menubaritem a.nav-link:active:focus,
ul.menubar li.nav-item.menubaritem.active a.nav-link.active {
  color: var(--color--1);
}

.brot {
  background: var(--black);
  -webkit-transition: all .5s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all .5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.brot.brot--hide {visibility: hidden; opacity: 0;}
.brot.brot--show {visibility: visible; opacity: 1;}


.brot nav ul li, .brot nav ul li a {
  color: var(--white);
}

.brot nav.breadcrumb {
  padding-left: 0!important;
}


.mainmenu--wrapper.nav--show {top:0;}
.mainmenu--wrapper.nav--hide {top:-44px;} /* topbar hide on scroll JS force */

.topbar {
  border-bottom: 1px solid var(--black--05);
  color: var(--black--75);
  height: 44px;
  background: var(--white--75);
  backdrop-filter: saturate(180%) blur(20px);
}


nav.topbar--nav li a {
  padding: calc(var(--gap) * .0666) calc(var(--gap) * .1);
}

nav.topbar--nav li:last-child a {
  padding-right: 0;
}

nav.topbar--nav li:not(:last-child)::after {
  content: '/';
  font-size: var(--text--xs);
  font-weight: 200;
  padding: 0 calc(var(--gap) * .025);
  color: var(--black--50);
}


nav.topbar--nav ul.languages::before {
  content: '|';
  color: var(--black--75);
  padding: 0 calc(var(--gap) * .25);
}

nav.topbar--nav ul.languages li:not(:last-child)::after {
  content: '/';
  font-size: var(--text--xs);
  font-weight: 200;
  color: var(--black--50);
  padding: 0!important;
}

nav.topbar--nav ul.languages li a {
  padding: calc(var(--gap) * .0666) calc(var(--gap) * .0125);
}
.mainmenu {
  color: var(--black);
  background: var(--white--75);
  backdrop-filter: saturate(180%) blur(20px);
  border-bottom: 1px solid var(--black--05);
}

img.mainmenu--logo {
  height: 15px;
  width: auto;
  display: block;
}

.navbar-nav {
  display: flex;
  align-items: center;
  flex-direction: unset;
  padding: 0;
  margin: 0;
  list-style: none;
}

.navbar-nav li.nav-item a.nav-link {
  padding: calc(var(--gap) * .0675) calc(var(--gap) * .175);
}

.navbar-nav li.nav-item:last-child a.nav-link {padding-right: 0;}




.navbar-nav li i {font-size: calc(var(--mainsize) * .75);}
.navbar-nav li i.menu--icon {font-size: calc(var(--mainsize) * 1.125);}

.offcanvas.hiding, .offcanvas.show, .offcanvas.showing {
  visibility: visible;
}



.oalb--main-nav--offcanvas .no--btn, .offcanvas--search .no--btn {
  font-size: calc(var(--mainsize) * 1.25);
}

.oalb--main-nav--offcanvas.offcanvas.offcanvas-end {
  width: 100vw;
  border-left: 0;
  -webkit-transition: transform .666s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform .666s cubic-bezier(0.25, 0.1, 0.25, 1);
  -webkit-box-shadow: -10px 1px 10px 0px var(--black--50)!important;
  box-shadow: -10px 1px 10px 0px var(--black--50)!important;
  background: var(--white);
  color: var(--black);
}

.offcanvas-backdrop {
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: opacity 1s cubic-bezier(0.25, 0.1, 0.25, 1);
  background: var(--black--80);
}


.offcanvas-backdrop.fade {
  opacity: 0;
}

.offcanvas-backdrop.show {
  opacity: 1;
}

.oalb--main-nav--offcanvas .offcanvas-body {
  flex-grow: 1;
  padding: var(--gap);
  overflow-y: auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.offcanvas--nav  {
  color: var(--black);
}


ul.offcanvas--nav, ul.offcanvas--nav li ul {
  list-style: none;
}

ul.offcanvas--nav li.nav-item.nav--item--first--level:last-child {
  margin-bottom: 0;
}

ul.offcanvas--nav a.has--sub--nav::after {
  content: '\F229';
  font-family: "bootstrap-icons";
  font-size: 50%;
  opacity: .5;
}

ul.offcanvas--nav a.has--sub--nav::before {
  content: '\F229';
  font-family: "bootstrap-icons";
  font-size: 50%;
  opacity: 0;
}

ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {
  font-size: calc(var(--mainsize) * 1.25);
}

ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {
  font-size: calc(var(--mainsize) * 1);
}

ul.offcanvas--nav ul.sub--nav li:last-child a {
  padding-bottom: calc(var(--gap) * .5);
}


nav.mainmenu--footer li:not(:last-child)::after {
  content: ' /';
  font-size: var(--text--xs);
  font-weight: 200;
  padding: 0 calc(var(--gap) * .025);
  color: var(--black--50);
}

nav.mainmenu--footer ul.languages::before {
  content: '|';
  font-weight: 200;
  color: var(--black--75);
  padding: 0 calc(var(--gap) * .25);
}

.offcanvas.offcanvas-top.offcanvas--search {
  height: auto!important;
	bottom: initial;
  border-bottom: 0;
  background: var(--black);
  color: var(--white);
}


/* ####################################################### figure picture image ####################################################### */

figure.image {
  margin-bottom: 0;
  position: relative;
  background: var(--black);
  overflow: hidden;
}

figure.image picture {
  position: relative;
  display: block;
  --w: 4;
  --h: 5;
  margin: 0;
  padding: 0;
  padding-bottom: calc(100% / var(--w) * var(--h));
  background-size: 100px auto!important;
  background-repeat: no-repeat!important;
  background-position: center!important;
  background: url("../images/loading.gif");
  overflow: hidden;
}

figure.image picture img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  -webkit-transition: all 3s cubic-bezier(0.25, 0.1, 0.25, 1), opacity 3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 3s cubic-bezier(0.25, 0.1, 0.25, 1), opacity 3s cubic-bezier(0.25, 0.1, 0.25, 1);
  opacity: 0;
  filter: grayscale(1) blur(20px);
  overflow: hidden;
}

figure.image picture[data-contain] img {object-fit: contain;}

figure.image picture img.img--loaded, figure.image picture img.fade.img--loaded, img.img--loaded {opacity: 1!important; filter: grayscale(0) blur(0);}

figure.image small {
  position: absolute;
  bottom: calc(var(--gap) * .5);
  right: calc(var(--gap) * .5);
  margin: 0;
  padding: 0;
  display: flex;
  align-items:flex-start;
  justify-content: flex-end;
  writing-mode: sideways-lr;
  text-transform: uppercase;
  font-family: var(--aventa);
  font-style: normal;
  font-weight: bold;
  font-size: var(--text--xxs);
  line-height: 1;
  letter-spacing: calc(var(--mainsize) * .0675);
  color: var(--white--50);
  z-index: 100;
}

figure.image small.flex {
  bottom: calc(var(--gap) * .5);
  right: calc(var(--gap) * .5);
}

/* ####################################################### block video ####################################################### */
.text.blox figure.video {
  margin-bottom: 0;
  position: relative;
  background: var(--black);
}

.text.blox figure.video span {
  position: relative;
  display: block;
  --w: 4;
  --h: 5;
  margin: 0;
  padding: 0;
  padding-bottom: calc(100% / var(--w) * var(--h));
  background-size: 100px auto!important;
  background-repeat: no-repeat!important;
  background-position: center!important;
  background: url("../images/loading.gif");
}

.text.blox figure.video span video, .text.blox figure.video span iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}



/* ####################################################### corousel ####################################################### */

/* .cover--wrapper {
  margin-top: 145px; topbar spacing ? – yes
}*/

.carousel-inner {

}
.carousel-indicators {
  margin-bottom: calc(var(--gap) * 1);
}

.carousel-indicators {
  margin-bottom: calc(var(--gap) * 1);
  height: var(--gap);
  display: flex;
  align-items: center;
}

.carousel-indicators [data-bs-target] {
  width: 35px;
  height: 4px;
  margin-right: 3px;
  margin-left: 3px;
  background-color: var(--white);
}

.cover--overlay {
  position: absolute;
  top:0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  background: -webkit-linear-gradient(90deg, var(--black--90) 10%, var(--black--0) 66%);
  background: -moz-linear-gradient(90deg, var(--black--90) 10%, var(--black--0) 66%);
  background: linear-gradient(90deg, var(--black--90) 10%, var(--black--0) 66%);
  z-index: 999;
}

.carousel-caption {
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  top:0;
  right:0;
  left: 0;
  bottom:0;
  padding: 0;
  padding-bottom: calc(var(--gap) * 3);
  color: var(--white);
  z-index: 1031;
}

.carousel-caption.baguette {
  animation-name: carousel--baguette;
  animation-duration: 1s;
  filter: blur(20px);
  opacity: 0;
  animation-iteration-count: 1;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  animation-delay: 1s;
}

@keyframes carousel--baguette {
  0% {filter:blur(20px); opacity: 0;}
  100% {filter:blur(0px); opacity: 1;}
}





figure.image picture.slider--picture.baguette {
  background: transparent;
}

figure.image picture img.slider--img.baguette {
  animation-name: baguette;
  animation-duration: 2.25s;
  filter: grayscale(100%) blur(45px);
  opacity: 0;
  animation-iteration-count: 1;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

@keyframes baguette {
  0% {filter: grayscale(100%) blur(45px); opacity: 0;}
  50% {filter: grayscale(100%) blur(30px); opacity: .5;}
  100% {filter: grayscale(0%) blur(0px); opacity: 1;}
}


.carousel-control-next, .carousel-control-prev {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: 0 0;
  filter: var(--bs-carousel-control-icon-filter);
  border: 0;
  opacity: .5;
  transition: opacity .15s ease;
}

.carousel-control-next-icon, .carousel-control-prev-icon {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

.carousel-control-next-icon {background-image: url("../images/chevron-compact-right.svg");}
.carousel-control-prev-icon {background-image: url("../images/chevron-compact-left.svg");}





/* ####################################################### page heading flat ####################################################### */

section.flat--heading, section.flat--heading.has--image {
  margin-top: 145px; /* spacing nav */
  background: var(--white);
}



section.flat--heading.has--image h1 {
  padding: calc(var(--gap) * 2) 0;
}

@media (min-width: 576px) {
section.flat--heading.has--image {
  margin-top: 0!important;
  top: 145px; /* spacing nav */
  overflow-y: hidden;
  height: 30vh;
  display: flex;
  align-items: center;
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  z-index: -1;
}
section.flat--heading.has--image.has--brot {
  top: calc(145px + 42px); /* spacing nav */

}

section.flat--heading.has--image h1 {
  padding: 0;
}

.page--cover {
  position: relative; /* negate flat--heading pos fixed */
  margin-top: calc(145px + 30vh); /* spacing flat--heading */
  background: var(--white);
  padding-bottom: calc(var(--gap) * 2);
}

main.default {
    position: relative; /* negate flat--heading pos fixed */
    background: var(--white);
}
}

section.flat--heading.has--brot, section.flat--heading.has--image.has--brot {
  margin-top: calc(145px + 42px); /* spacing nav */
}

/*
main.default .intro {
  margin-top: calc(var(--gap) * 2);
}
*/

.intro .text p, .intro, .intro p , .intro p.text {
  margin-bottom: var(--gap);
}

section.flat--heading.no--image h1 {
  padding: calc(var(--gap) * 2) 0;
}

section.flat--heading h1 span.head {
  color: var(--black);
}

section.flat--heading h1 span.heading {
  color: var(--black--50);
}

.brut {
  background: var(--white);
}
.brut--inner {
  background: var(--black--10);
}
nav.breadcrumb {
  padding-left: calc(var(--gap) * .125)!important;
}

nav.breadcrumb ul {
  list-style: none;
  color: var(--black--75);
}


nav.breadcrumb ul li:not(:last-child)::after {
  content: '\F231';
  font-family: "bootstrap-icons";
  font-size: 75%;
  padding: 0 calc(var(--gap) * .025);
  opacity: .25;
}

/* ####################################################### footer ####################################################### */

footer.page--footer {
  position: relative; /* negate flat--heading pos fixed */
  background: var(--white); /* full color cause red body */
  color: var(--black);
}

footer.page--footer .footer--partner--sponsors.has--image img.footer--logo {
  filter: brightness(0) saturate(100%) invert(31%) sepia(85%) saturate(5411%) hue-rotate(358deg) brightness(94%) contrast(91%);
}

.footer--partner--sponsors img.partner--logo,
body.partner section.partners img.partner--logo {
  filter: grayscale(1);
}


footer.page--footer .footer--inner {
  background: var(--black--025);
}

.footerLinkHeading {
  margin: 0;
  padding: 0;
  line-height: 1;
}

.footerLinkHeading::after {
  content: '\F229';
  font-family: "bootstrap-icons";
  font-size: 66%;
  padding-left: calc(var(--gap) * .25);
  opacity: .5;
}

.footer--main--links .col--footer--links:not(:last-of-type) {
  margin-bottom: calc(var(--gap) * .5);
  padding-bottom: calc(var(--gap) * .5);
  border-bottom: 1px solid var(--black--25);
}


footer.page--footer .footer--main--links ul li {
  list-style: none;
}

footer.page--footer .footer--social--media {
  background: var(--black);
  color: var(--white);
}

footer.page--footer .footer--social--media ul li {
  list-style: none;
}

footer.page--footer .footer--social--media ul li {
  padding: 0 calc(var(--gap) * .25);
}

footer.page--footer .footer--social--media ul li a {
  font-size: calc(var(--mainsize) * 2);
}

footer.page--footer .footer--partner--sponsors {
  background: var(--white);
}

footer.page--footer .footer--lame {
  color: var(--black--75);
  background: var(--black--025);
}

footer.page--footer .footer--lame .inner {
  background: var(--black--025);
}

footer.page--footer .footer--lame a, footer.page--footer .footer--lame button.no--btn {
  text-decoration: underline;
  font-weight: normal;
  font-style: normal;
  font-family: var(--aventa);
}

.footer--lame--legals li:not(:last-child)::after {
  content: ' /';
  font-weight: 200;
  padding: 0 calc(var(--gap) * .125);
  font-size: 75%;
  color: var(--black--25);
}

/* ####################################################### default page ####################################################### */

.text figure {
  margin: calc(var(--gap) * 2) 0;
}

.text figure figcaption {
  color: var(--black--50);
  line-height: 1;
  font-size: var(--text--sm);
  text-align: right;
  margin: calc(var(--gap) * .5) 0!important;
}




main.default {
  background: var(--white);
}


.article___WTF___WTF.baguette {
  animation-name: super--heretic--baguette;
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
  animation-delay: .5s;
  opacity: 0;
  filter: blur(20px);
}

@keyframes super--heretic--baguette {
  0% {filter: blur(20px); opacity: 0;
  }
  100% {filter: blur(0); opacity: 1;
  }
}

main.default .heading {
  margin-bottom: calc(var(--gap) * 2);
}


main.default .text.maginal {
  margin-top: calc(var(--gap) * 2.5);
  color: var(--black--50);
}

main.default .text.maginal span {
  padding-top: calc(var(--gap) * .5);
  border-top: 1px solid var(--black--25);
}


main.default .text h1,
main.default .text h2,
main.default .text h3,
main.default .text h4,
main.default .text h5,
main.default .text h6 {
  font-size: calc(var(--mainsize) * 1.5);
  text-transform: lowercase;
}

main.default .text h1 span,
main.default .text h2 span,
main.default .text h3 span,
main.default .text h4 span,
main.default .text h5 span,
main.default .text h6 span {
}

.text--flex .fsx {font-size: var(--text--flex)!important;}
.text .fsx {font-size: var(--text--reg)!important;}
.fsx {font-size: var(--mainsize)!important;}

main.default .text a {
  text-decoration: underline;
  font-family: var(--aventa);
  font-weight: normal;
  font-style: italic;
  text-transform: lowercase;
}


main.default .text p {
  margin-bottom: var(--gap);
}

main.default .text p:last-of-type {
  margin-bottom: 0;
}

main.default .text p:has(+ul), main.default .text p:has(+ol) {
  margin-bottom: 0;
}

main.default .text ul,
main.default .text ol,
main.default .text p + ul,
main.default .text p:last-of-type + ul,
main.default .text p + ol,
main.default .text p:last-of-type + ol  {
  margin-bottom: calc(var(--gap) * 2);
}

main.default .text p em {
  font-style: italic;
}

.text p + h1, .text p + h2, .text p + h3, .text p + h4, .text p + h5, .text p + h6 {
  margin-bottom: calc(var(--gap) * .5);
  padding-top: var(--gap);
}

section.page--image {
  background: var(--black--10);
  color: var(--black--75);
}

section.page--image:not(:last-of-type) {
  margin-bottom: calc(var(--gap) * .5);
}

section.page--image:last-of-type {
  margin-bottom: calc(var(--gap) * 2);
}

.back--btn {
  padding: calc(var(--mainsize) * .5);
  font-style: italic;
  font-size: var(--text--lg);
}

.back--btn::before {
  content: '\F22D';
  font-family: "bootstrap-icons";
  font-size: 66%;
}

.back--btn.next::before {
  content: unset;
  font-family: unset;
  font-size: unset;
}

.back--btn.next::after {
  content: ' \F231';
  font-family: "bootstrap-icons";
  font-size: 66%;
}

/* ####################################################### lightbox ####################################################### */


.lightboxOverlay {
  opacity: 1;
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-transition: all 1s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: all 1s cubic-bezier(0.25, 0.1, 0.25, 1);
  background: var(--black--85);
}


.lightbox .lb-image {
  border-radius: 0;
  border: 0;
  -webkit-box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px!important;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px!important;
}

.lb-outerContainer {
  border-radius: 0;
  background-color: var(--black);
}

.lb-container {
  padding: 0;
}

.lb-loader {
  position: absolute;
  top: 0%;
  left: 0;
  bottom: 0;
  right: 0;
  height: 100%;
  width: 100%;
  text-align: center;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lb-cancel {
  display: block;
  width: 33vw;
  height: 33vh;
  margin: 0 auto;
  background: url("../images/loading.gif")!important;
  background-repeat: no-repeat!important;
  background-size: 100px auto!important;
  background-position: center center!important;
}

/*
.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  width: 100%;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}

.lightbox .lb-image {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;

}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}



*/


/* ####################################################### responsive ####################################################### */



/* Small devices (575px and up) */
@media (min-width: 576px) {
  :root {--text--flex: calc(var(--mainsize) * .95);}

  figure.image picture {--w: 1;--h: 1;}
  section.heading figure.image.heading--image picture.heading--picture, section.heading .page--heading .page--heading--wrapper {--w: 16;--h: 6;}

  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.35);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.05);}

  img.mainmenu--logo {height: 17.5px;}
  img.mainmenu--logo.tiny {height: 15px;}

 .godzilla {font-size: calc(var(--mainsize) * 2.25);}

 .oalb--main-nav--offcanvas .no--btn, .offcanvas--search .no--btn {font-size: calc(var(--mainsize) * 1.5);}

 .footer--main--links .col--footer--links:not(:last-of-type) {
   margin-bottom: unset;
   padding-bottom: unset;
   border-bottom: unset;
 }

}

/* Medium devices (768px and up)  */
@media (min-width: 768px) {
  :root {--text--flex: calc(var(--mainsize) * 1);}

  section.flat--heading.has--image {height: 35vh;}
  .page--cover {margin-top: calc(154px + 35vh);}


  figure.image picture {--w: 5;--h: 4;}
  section.heading figure.image.heading--image picture.heading--picture, section.heading .page--heading .page--heading--wrapper {--w: 16;--h: 5;}

.godzilla {font-size: calc(var(--mainsize) * 2.5);}

  .oalb--main-nav--offcanvas.offcanvas.offcanvas-end {width: 50vw;}
  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.45);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.1);}

  img.mainmenu--logo {height: 20px;}
  img.mainmenu--logo.tiny {height: 27.5px;}

  /*.cover--wrapper,*/ section.heading {margin-top: 154px;} /* spacing nav */

  .navbar-nav li i {font-size: calc(var(--mainsize) * 1);}
  .navbar-nav li i.menu--icon {font-size: calc(var(--mainsize) * 1.625);}
  .navbar-nav li.nav-item a.nav-link {padding: calc(var(--gap) * .125) calc(var(--gap) * .35);}

  .topbar--nav li:not(:last-child)::after {padding: 0 calc(var(--gap) * .1);}

  .carousel-indicators [data-bs-target] {width: 40px; height: 5px;margin-right: 4px;margin-left: 4px;}

  section.page--image {background: var(--black--0);}

  .oalb--main-nav--offcanvas .no--btn, .offcanvas--search .no--btn {font-size: calc(var(--mainsize) * 1.75);}


}



/* Large devices (992px and up) */
@media (min-width: 992px) {
  :root {--text--flex: calc(var(--mainsize) * 1.15);}

  figure.image picture {--w: 3;--h: 2;}
  section.heading figure.image picture.heading--picture, section.heading .page--heading .page--heading--wrapper {--w: 4;--h: 1;}
  .godzilla {font-size: calc(var(--mainsize) * 2.75);}

  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.55);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.15);}

  img.mainmenu--logo {height: 23px;}
  img.mainmenu--logo.tiny {height: 20px;}

  .oalb--main-nav--offcanvas .no--btn, .offcanvas--search .no--btn {font-size: calc(var(--mainsize) * 2);}

}

/* X-Large devices (1200px and up) */
@media (min-width: 1200px) {
  :root {--text--flex: calc(var(--mainsize) * 1.2);}

  section.flat--heading.has--image {height: 40vh;}
  .page--cover {margin-top: calc(154px + 40vh);}

  figure.image picture {--w: 5;--h: 3;}
  section.heading figure.image.heading--image picture.heading--picture, section.heading .page--heading .page--heading--wrapper {--w: 16;--h: 3;}

 .godzilla {font-size: calc(var(--mainsize) * 3);}

  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.65);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.2);}

  .carousel-indicators [data-bs-target] {width: 45px; height: 6px;margin-right: 5px;margin-left: 5px;}

  img.mainmenu--logo {height: 26px;}
}

/* XX-Large devices (1400px and up) */
@media (min-width: 1400px) {

  .row-cols-xxl-7 > * {
      flex: 0 0 auto;
      width:14.2855555%
  }

  section.flat--heading.has--image {height: 45vh;}
  .page--cover {margin-top: calc(154px + 45vh);}


  figure.image picture {--w: 9;--h: 4;}

  section.heading figure.image.heading--image picture.heading--picture, section.heading .page--heading .page--heading--wrapper {--w: 7;--h: 1;}

  .godzilla {font-size: calc(var(--mainsize) * 3.5);}
  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.75);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.25);}

  img.mainmenu--logo {height: 30px;}
  img.mainmenu--logo.tiny {height: 25px;}

}

@media (min-width: 1500px) {
 .godzilla {font-size: calc(var(--mainsize) * 4);}

  figure.image picture {--w: 8;--h: 5;}
  ul.offcanvas--nav li.nav-item.nav--item--first--level a.nav--link--first--level {font-size: calc(var(--mainsize) * 1.85);}
  ul.offcanvas--nav li.nav-item.nav--item--second--level a.nav--link--second--level {font-size: calc(var(--mainsize) * 1.3);}

}
