.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}.narrow{max-width:780px}.section{padding:var(--section) 0}.section-tinted{background:linear-gradient(180deg,#fff4f6,#faf7ff)}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,249,248,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(239,221,226,.8)}.header-inner{min-height:74px;display:flex;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.8rem}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(145deg,var(--brand),var(--accent));color:#fff;box-shadow:var(--shadow-brand)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.brand strong{font-size:1.05rem}.brand small{font-size:.67rem;color:var(--text-soft);margin-top:.3rem}.desktop-nav{display:flex;gap:1.5rem;margin-left:auto}.desktop-nav a{font-weight:750;color:var(--text-soft)}.desktop-nav a:hover{color:var(--brand)}.header-actions{display:flex;align-items:center;gap:.55rem}.language-menu{position:relative}.language-popover{position:absolute;right:0;top:calc(100% + .7rem);min-width:160px;padding:.55rem;background:var(--surface);border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow-md)}.language-popover a{display:block;padding:.65rem .75rem;border-radius:.7rem}.language-popover a:hover{background:var(--surface-soft);color:var(--brand)}.mobile-nav{padding:0 1rem 1rem;background:var(--surface)}.mobile-nav a{display:block;padding:.8rem;border-radius:.8rem}.menu-button{display:none}.site-footer{padding:4rem 0 1.5rem;background:#21151b;color:#f9eef1}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:2.5rem}.footer-grid h2{font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:#d9bdc6}.footer-grid a{display:block;margin:.55rem 0;color:#ead9de}.footer-grid p{color:#cbb5bd;max-width:360px}.footer-brand{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.1);padding-top:1.3rem;margin-top:2.5rem;color:#bfa9b1;font-size:.82rem}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:100;transform:translateY(-150%);background:#111;color:#fff;padding:.6rem 1rem;border-radius:.6rem}.skip-link:focus{transform:none}.reveal{opacity:0;transform:translateY(18px);transition:.65s var(--ease)}.reveal.is-visible{opacity:1;transform:none}@media(max-width:780px){.desktop-nav{display:none}.menu-button{display:grid}.brand small{display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}.header-inner{min-height:66px}}@media(max-width:520px){.footer-grid{grid-template-columns:1fr}.container{width:min(calc(100% - 1.2rem),var(--container))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
.language-popover{min-width:190px;max-height:min(360px,70vh);overflow:auto}.language-popover a{display:flex;align-items:center;gap:.65rem}.language-popover a span{width:1.35rem;text-align:center}

/* Navigation visibility: keep the mobile panel completely out of desktop layout. */
.mobile-nav[hidden]{display:none!important}
@media(min-width:781px){
  .menu-button{display:none!important}
  .mobile-nav{display:none!important}
}
@media(max-width:780px){
  .mobile-nav:not([hidden]){display:grid;gap:.35rem;padding:.65rem 1rem 1rem;border-top:1px solid var(--border);background:rgba(255,255,255,.96);box-shadow:0 16px 32px rgba(55,30,47,.08)}
  .mobile-nav a{display:block;padding:.78rem .9rem;border-radius:.8rem;font-weight:750;color:var(--text-soft)}
  .mobile-nav a:hover{background:var(--surface-soft);color:var(--brand)}
}
