/* Shared site chrome (nav + footer) — used by every page via /assets/chrome.js.
   Edit here, all pages update. Page-specific styles stay in each page's <style>. */

/* Anchor scroll offset so the floating nav doesn't cover the top of the
   target section when jumping to a #fragment link. */
html{scroll-padding-top:10rem}
@media(max-width:768px){html{scroll-padding-top:6rem}}

/* NAV */
nav{position:fixed;top:1rem;left:1.5rem;right:1.5rem;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.125rem 2.25rem;backdrop-filter:blur(var(--nav-blur,0px));-webkit-backdrop-filter:blur(var(--nav-blur,0px));background-color:rgba(var(--nav-bg-rgb,82,31,14),calc(var(--nav-progress,0) * 0.65));--nav-text:var(--white);border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.18),inset 0 -1px 0 rgba(0,0,0,0.18),0 10px 28px rgba(0,0,0,0.18);transition:background-color .5s ease-in-out}
nav.over-light{--nav-bg-rgb:245,243,240;--nav-text:var(--red)}
.nav-logo{text-decoration:none;display:flex;align-items:center;position:relative}
.nav-logo>img{height:108px;width:auto;display:block;transition:opacity .5s ease-in-out}
.nav-logo .logo-overlay{position:absolute;top:0;left:0;pointer-events:none;opacity:0}
nav.over-light .nav-logo > img:not(.logo-overlay){opacity:0}
nav.over-light .nav-logo .logo-red{opacity:1}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--nav-text);text-decoration:none;font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;transition:color .5s ease-in-out}
.nav-links a:hover{color:var(--red)}
.nav-right{display:flex;gap:1rem;align-items:center}
.nav-cta{background:rgba(255,0,0,0.55);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);color:var(--white);padding:0.9rem 1.875rem 0.6rem;font-family:var(--unica);font-size:0.9375rem;line-height:1;letter-spacing:0.1em;border:1px solid rgba(255,255,255,0.18);cursor:pointer;text-decoration:none;transition:background-color .35s ease,box-shadow .35s ease;border-radius:999px;box-shadow:inset 0 1px 1px rgba(255,255,255,0.3),inset 0 -1px 0 rgba(0,0,0,0.2),0 6px 14px rgba(0,0,0,0.22)}
.nav-cta:hover{background:var(--red);box-shadow:inset 0 1px 1px rgba(255,255,255,0.4),inset 0 -1px 0 rgba(0,0,0,0.25),0 10px 22px rgba(0,0,0,0.28)}

/* BURGER + MOBILE MENU */
.nav-burger{display:none;background:transparent;border:0;width:28px;height:22px;padding:0;cursor:pointer;flex-direction:column;justify-content:space-between;align-items:stretch;position:relative;z-index:2}
.nav-burger span{display:block;height:2px;background:var(--nav-text);border-radius:2px;transition:transform .3s ease,opacity .2s ease,background-color .5s ease-in-out;transform-origin:center}
nav.nav-open .nav-burger span:nth-child(1){transform:translateY(10px) rotate(45deg)}
nav.nav-open .nav-burger span:nth-child(2){opacity:0}
nav.nav-open .nav-burger span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}
.nav-menu{display:none}

/* LANG TOGGLE */
.lang-toggle{display:flex;gap:0.5rem;font-size:0.7rem;letter-spacing:0.1em}
.lang-btn{background:none;border:none;cursor:pointer;color:var(--nav-text);font-family:var(--unica);font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;padding:0;transition:color .5s ease-in-out}
.lang-btn.active{color:var(--nav-text)}
.lang-btn:hover{color:var(--red)}
.lang-divider{color:var(--nav-text);transition:color .5s ease-in-out}

/* FOOTER */
footer{background:var(--dark);color:var(--white);padding:4rem 3rem}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem}
.footer-brand{margin-bottom:0.5rem}
.footer-tagline{font-family:var(--garamond);font-style:italic;font-size:1rem;opacity:0.5;margin-bottom:1.5rem;letter-spacing:normal}
.footer-social{display:flex;gap:1rem}
.footer-social a{color:rgba(255,255,255,0.5);text-decoration:none;font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;transition:color .2s}
.footer-social a:hover{color:var(--red)}
.footer-col h4{font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--red);margin-bottom:1.2rem}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:0.6rem}
.footer-col ul li a{color:rgba(255,255,255,0.5);text-decoration:none;font-size:0.8rem;transition:color .2s}
.footer-col ul li a:hover{color:var(--white)}
.footer-bottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.1);display:flex;justify-content:space-between;font-size:0.7rem;opacity:0.4}

@media(max-width:960px) and (min-width:769px){
  .footer-inner{grid-template-columns:1fr 1fr 1fr;gap:2rem}
}

@media(max-width:768px){
  nav{top:0.6rem;left:0.75rem;right:0.75rem;padding:0.65rem 1.1rem 0.45rem}
  .nav-logo>img,.nav-logo .logo-overlay{height:56px}
  .nav-links{display:none}
  nav>.nav-right{display:flex;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
  nav>.nav-right .nav-cta{display:none}
  .nav-burger{display:flex}
  .nav-menu{display:flex;flex-direction:column;position:absolute;top:calc(100% + 0.5rem);left:0;right:0;background:rgba(var(--nav-bg-rgb,82,31,14),0.92);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);border:1px solid rgba(255,255,255,0.14);border-radius:22px;padding:1.25rem 1.5rem;gap:1rem;box-shadow:0 14px 36px rgba(0,0,0,0.25);opacity:0;transform:translateY(-12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
  nav.over-light .nav-menu{border-color:rgba(0,0,0,0.08);box-shadow:0 14px 36px rgba(0,0,0,0.12)}
  nav.nav-open .nav-menu{opacity:1;transform:translateY(0);pointer-events:auto}
  .nav-menu ul{list-style:none;display:flex;flex-direction:column;gap:0.9rem;padding:0;margin:0}
  .nav-menu ul li a{color:var(--nav-text);text-decoration:none;font-size:0.85rem;letter-spacing:0.12em;text-transform:uppercase;font-family:var(--unica);transition:color .25s ease}
  .nav-menu ul li a:hover{color:var(--red)}
  .nav-menu-footer{display:flex;justify-content:flex-end;align-items:center;padding-top:0.9rem;margin-top:0.25rem;border-top:1px solid rgba(var(--nav-text-rgb,255,255,255),0.15)}
  .nav-menu .lang-toggle{display:none}
  .nav-menu .nav-cta{padding:0.7rem 1.2rem 0.5rem;font-size:0.8rem}
  footer{padding:3rem 1.5rem}
  .footer-inner{grid-template-columns:1fr;gap:2.5rem}
  .footer-bottom{flex-direction:column;gap:0.6rem}
}
