:root {
  --fontHeadline: "Source Sans Pro", sans-serif;
  --fontBase: "Source Sans Pro", sans-serif;
  --colorBase: #000;
  --colorAccent: #fff;
  --colorMapMainPin: #000;
  --colorMapPin: #000;
  --colorGrey: #f4f4f4;
  --bpTablet: 880;
}
body.corpora {
  background: var(--colorAccent);
  font-family: var(--fontBase);
}
.corpora h1,
.corpora .h1 {
  font-family: var(--fontHeadline);
  font-size: 45px;
  line-height: 1.3em;
}
.corpora h2,
.corpora .h2 {
  font-family: var(--fontHeadline);
  font-size: 45px;
  line-height: 1.3em;
  text-align: left;
}
.corpora h3,
.corpora h4,
.corpora h5,
.corpora h6,
.corpora .h3,
.corpora .h4,
.corpora .h5,
.corpora .h6 {
  font-family: var(--fontHeadline);
  font-size: 25px;
}
.corpora p,
.corpora li,
.corpora p a {
  font-family: var(--fontBase);
  font-size: 18px;
  letter-spacing: 0.08em;
  max-width: 1000px;
  border-bottom: 0;
}
.corpora a.underline {
  border-bottom: 1px solid #000;
}
.corpora p strong,
.corpora p b,
.corpora strong,
.corpora b {
  font-style: normal;
}
.corpora .fsize-large {
  font-size: 80px;
  line-height: 1.1em;
}
.corpora .fsize-marginal,
.corpora .fsize-marginal a {
  font-size: 16px;
}
.corpora .fstyle-title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.corpora .button {
  font-family: var(--fontHeadline);
  font-weight: 700;
  font-size: 18px;
  text-transform: uppercase;
  background: transparent;
  color: var(--colorBase);
  border: 1px solid var(--colorBase);
  border-radius: 60px;
  letter-spacing: 0.1em;
  padding: 0.8em 2em;
}
.corpora .button:active {
  opacity: 1;
}
.corpora ::selection {
  background: var(--colorBase);
  color: #fff !important;
}
.corpora ::-moz-selection {
  background: var(--colorBase);
  color: #fff !important;
}
.corpora article {
  -webkit-animation-name: fadeinpage;
  animation-name: fadeinpage;
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
@-webkit-keyframes fadeinpage {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeinpage {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.corpora article {
  margin-top: 150px;
}
.corpora .sec-wrap {
  max-width: 100%;
}
.corpora .sec-wrap .sec-wrap__inner {
  max-width: 100%;
  padding: 0;
}
.corpora .main-image--full__wrap {
  position: relative;
}
.corpora .nav-wrap {
  background: #fff;
}
.corpora .nav-wrap a {
  font-size: 18px;
  letter-spacing: 0.1em;
  position: relative;
}
.corpora .nav-wrap a:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  overflow: visible;
  width: 0;
  height: 2px;
  background: var(--colorBase);
  border-radius: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.corpora .nav-wrap a:hover:after,
.corpora .nav-wrap a.actual-parent:after,
.corpora .nav-wrap a.actual-site:after {
  left: 25%;
  width: 50%;
}
.corpora .nav-wrap img.logo {
  max-height: 70px;
  margin: 5px 0;
}
.corpora .nav-wrap ul.brand {
  margin: 0;
}
.corpora .nav-wrap ul.brand li a:after {
  display: none;
}
.corpora .nav-wrap li {
  text-transform: uppercase;
}
.corpora .nav-wrap .nav-wrap__inner {
  max-width: 1355px;
  height: 100px;
}
.corpora .nav-wrap .nav-wrap__inner,
.corpora .nav-wrap ul.brand,
.corpora .nav-wrap ul.nav-list {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.corpora .nav-wrap ul.nav-list li {
  margin-left: 40px;
}
.corpora .scrolled-nav .nav-wrap img.logo {
  margin: 3px 0;
}
.corpora .scrolled-nav .nav-wrap .nav-wrap__inner {
  height: 80px;
}
.corpora .footer-wrap {
  background: #fff;
  overflow: hidden;
  padding-top: 50px;
  border-top: 1px solid #000;
}
.corpora .footer-wrap p,
.corpora .footer-wrap a,
.corpora .footer-wrap a:hover {
  color: #000;
  border-bottom: 0;
  margin-bottom: 2rem;
}
.corpora .footer-wrap p.title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.corpora .footer-wrap .sec-wrap {
  margin: 20px auto;
}
.corpora .footer-wrap .sec-wrap__inner {
  max-width: 1355px;
}
.corpora .footer-wrap .logo-wrap {
  height: 4rem;
  width: 100%;
  position: relative;
}
.corpora .footer-wrap .logo-wrap img {
  height: 100%;
  width: 100%;
  position: absolute;
  object-fit: contain;
  object-position: center left;
}
.corpora .footer__main [class*="icon-social_"] {
  color: #fff;
  background: #000;
}
.corpora .warning-banner,
.corpora #cookie-banner {
  border-radius: 0;
}
.corpora #cookie-banner {
  background: var(--colorBase);
  -webkit-box-shadow: 6.8125px 14px 29px -3px rgba(0, 0, 0, 0.39);
  box-shadow: 6.8125px 14px 29px -3px rgba(0, 0, 0, 0.39);
}
.corpora #cookie-banner a.close-banner-btn {
  font-weight: normal;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.1em;
  border-radius: 0;
}
@media only screen and (max-width: 880px) {
  .corpora article {
    margin-top: 0;
  }
  .corpora .nav-wrap {
    border-top: 0;
  }
  .corpora .nav-wrap ul.nav-list {
    opacity: 0;
    margin-top: calc(50vh - 200px) !important;
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 1s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    -o-transition: opacity 1s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 1s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 1s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1),
      -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    -o-transition: transform 1.2s cubic-bezier(0.77, 0, 0.18, 1), opacity 0.3s ease-out;
    -webkit-transition: opacity 0.3s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 0.3s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: transform 1.2s cubic-bezier(0.77, 0, 0.18, 1), opacity 0.3s ease-out;
    transition: transform 1.2s cubic-bezier(0.77, 0, 0.18, 1), opacity 0.3s ease-out,
      -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
  }
  .corpora .nav-wrap ul.nav-list li {
    margin: 0 0 12px 0;
    text-align: center;
    -webkit-transition: -webkit-transform 1.4s ease-out;
    transition: -webkit-transform 1.4s ease-out;
    -o-transition: transform 1.4s ease-out;
    transition: transform 1.4s ease-out;
    transition: transform 1.4s ease-out, -webkit-transform 1.4s ease-out;
  }
  .corpora .nav-wrap ul.brand {
    padding: 0;
  }
  .corpora .nav-wrap ul.brand li a img.logo {
    max-height: 60px;
    margin: 0;
  }
  .corpora .nav-wrap li a {
    font-size: 30px;
    letter-spacing: 0.2em;
  }
  .corpora.home .nav-wrap ul.brand {
    padding: 0;
  }
  .corpora .nav-wrap.open ul.nav-list {
    -webkit-transition: opacity 3s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 3s ease-out, -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    -o-transition: opacity 3s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 3s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    transition: opacity 3s ease-out, transform 1.2s cubic-bezier(0.77, 0, 0.18, 1),
      -webkit-transform 1.2s cubic-bezier(0.77, 0, 0.18, 1);
    opacity: 1;
  }
  .corpora .scrolled-nav .nav-wrap ul.nav-list {
    margin: 60px 0;
  }
  .corpora .scrolled-nav .nav-wrap ul.brand li a img.logo {
    margin: 0;
  }
  .corpora .footer-wrap {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 580px) {
  .corpora h1,
  .corpora .h1,
  .corpora h2,
  .corpora .h2 {
    font-size: 8vw;
  }
  .corpora h3,
  .corpora h4,
  .corpora h5,
  .corpora h6,
  .corpora .h3,
  .corpora .h4,
  .corpora .h5,
  .corpora .h6 {
    font-size: 25px;
  }
  .corpora p,
  .corpora li,
  .corpora p a,
  .corpora .button {
    font-size: 16px;
  }
  .corpora .fsize-marginal,
  .corpora .fsize-marginal a {
    font-size: 14px;
  }
  .corpora .sec-wrap__inner {
    padding-left: 0;
    padding-right: 0;
  }
  .corpora .main-image--full__wrap:after {
    height: 4rem;
    bottom: -2rem;
  }
  .corpora .footer-wrap {
    padding-top: 60px;
  }
  .corpora .footer-wrap p,
  .corpora .footer-wrap a,
  .corpora .footer-wrap span.button {
    font-size: 14px;
  }
  .corpora .footer-wrap .sec-wrap__inner.grid .grid-wrap .box {
    padding: 0 35px;
  }
  .corpora #cookie-banner {
    padding: 0.7em;
  }
  .corpora .warning-banner p,
  .corpora .warning-banner b,
  .corpora .warning-banner a,
  .corpora #cookie-banner p,
  .corpora #cookie-banner b,
  .corpora #cookie-banner a {
    font-size: 12px;
    line-height: 1.3em;
  }
}
@media only screen and (max-width: 430px) {
  .corpora .main-image--full__wrap:after {
    height: 35px;
    bottom: -15px;
  }
  .corpora .nav-wrap .mobile--trigger span {
    left: 40px;
  }
  .corpora .nav-wrap li a {
    font-size: 24px;
  }
  .corpora #cookie-banner {
    max-width: 100%;
    bottom: 60px;
    left: 0;
  }
}
