/* Site shell shared by all pages except the legal pages: navigation, mobile menu, language switch, cookie banner, footer. */
.nav-hamburger{
  display:none;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
  padding:.5rem;
  background:none;
  border:none;
  z-index:200;
}
.nav-hamburger span{
  display:block;
  width:24px;
  height:1.5px;
  background:var(--gold-lt);
  transition:all .3s;
}
.nav-hamburger.open span:nth-child(1){
  transform:rotate(45deg) translate(4px,4px);
}
.nav-hamburger.open span:nth-child(2){
  opacity:0;
}
.nav-hamburger.open span:nth-child(3){
  transform:rotate(-45deg) translate(4px,-4px);
}
.nav-mobile-overlay{
  display:none;
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:rgba(15,26,61,.98);
  z-index:150;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.nav-mobile-overlay.open{
  display:flex;
}
.nav-mobile-overlay a{
  font-size:1.4rem;
  font-weight:300;
  color:rgba(248,240,216,.7);
  text-decoration:none;
  width:100%;
  text-align:center;
  border-bottom:1px solid rgba(200,150,12,.1);
}
.nav-mobile-overlay .nav-lang-btn{
  color:rgba(248,240,216,.9);
}
.nav-mobile-overlay .nav-lang-btn:not(.active){
  opacity:.65;
}
.nav-mobile-overlay .mobile-cta{
  margin-top:1.5rem;
  background:var(--gold-thk);
  color:var(--lapis-deep) !important;
  font-family:'Instrument Sans',sans-serif;
  font-size:.82rem !important;
  font-weight:500;
  border:none !important;
  width:auto !important;
  padding:1rem 2.4rem !important;
}
.nav-mobile-close{
  position:absolute;
  top:1.4rem;
  right:1.5rem;
  font-size:1.8rem;
  color:rgba(248,240,216,.5);
  cursor:pointer;
  background:none;
  border:none;
}
.cookie-banner{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  border-top:1px solid rgba(200,150,12,.3);
}
.cookie-banner-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
}
.cookie-text{
  font-size:.78rem;
  color:rgba(248,240,216,.6);
}
.cookie-text a{
  color:var(--gold-lt);
}
.cookie-actions{
  display:flex;
  gap:.8rem;
  flex-shrink:0;
}
.cookie-btn-accept{
  background:var(--gold-thk);
  color:var(--lapis-deep);
}
.cookie-btn-decline{
  background:transparent;
  color:rgba(248,240,216,.4);
}
@media (max-width:600px){
  .cookie-banner-inner{
    flex-direction:column;
    gap:1rem;
  }
  .cookie-actions{
    width:100%;
  }
  .cookie-btn-accept,.cookie-btn-decline{
    flex:1;
    text-align:center;
  }
}
.nav-lang{
  gap:.3rem;
}
.nav-lang-btn{
  border:none;
  padding:.1rem;
  transition:opacity .2s,transform .15s;
}
.nav-lang-btn.active{
  opacity:1;
}
@media (max-width:900px){
  .nav-lang{
    margin-left:.3rem;
  }
}
