/* Cinematic logo opener: the original Sadir artwork, assembled in three beats. */
.hero.logo-hero{isolation:isolate;display:grid;place-items:center;min-height:100svh;height:auto;border-radius:0;margin:0;padding:130px 24px 100px;background:#061c15;color:#f4efdf;overflow:hidden}
.logo-hero::after{display:none}
.logo-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 45%,#224734a6,transparent 62%),linear-gradient(130deg,#071a14,#0e2b20 54%,#061710);pointer-events:none}
.hero.logo-hero .hero-copy{z-index:2;width:100%;max-width:850px;display:flex;align-items:center;justify-content:center;text-align:center;gap:0;transform:none;opacity:1}
.logo-lockup{direction:ltr;display:flex;align-items:center;justify-content:center;gap:6%;width:min(100%,740px);margin:0 auto 48px;perspective:1000px}
.logo-wordmark{display:block;width:58%;height:auto;overflow:visible;flex:none}
.logo-emblem{display:block;width:38%;height:auto;overflow:visible;flex:none;filter:drop-shadow(0 24px 36px #0004)}
.logo-wordmark,.logo-top,.logo-middle,.logo-bottom{transform-box:fill-box;transform-origin:center}
.logo-hero .hero-copy p{font-size:clamp(20px,2.4vw,30px);max-width:none;line-height:1.9;margin:0;color:#f2efe4}
.logo-hero .round-link{padding:9px 0;border:0!important;border-radius:0!important;background:none!important;color:#f4efdf!important;margin-top:24px;font-size:18px;display:inline-block;box-shadow:none}
.intro-controls{position:absolute;bottom:28px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;color:#f3f0e899;z-index:3}
.intro-replay{border:0;border-bottom:1px solid #f3f0e84d;background:transparent;color:inherit;padding:8px 0;font-size:13px;transition:color .2s}
.intro-replay:hover{color:#f3f0e8}
.logo-hero .intro-caption{margin:0;font-size:13px}
.logo-curtain{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.logo-curtain::before,.logo-curtain::after{content:'';position:absolute;top:0;width:50.5%;height:100%;background:linear-gradient(#00100b33,#00100b44),url('curtain.png') center/cover}
.logo-curtain::before{left:0;transform:translateX(-101%)}
.logo-curtain::after{right:0;transform:translateX(101%)}
.logo-intro-running .logo-curtain::before{animation:curtain-left 1.75s cubic-bezier(.65,0,.2,1) both}
.logo-intro-running .logo-curtain::after{animation:curtain-right 1.75s cubic-bezier(.65,0,.2,1) both}
.logo-intro-running .logo-top{animation:emblem-top 1.7s .45s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .logo-bottom{animation:emblem-bottom 1.7s .6s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .logo-middle{animation:emblem-turn 1.9s .55s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .logo-wordmark{animation:wordmark-reveal 1.5s 1.15s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .hero-copy p{animation:intro-copy 1s 2.05s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .hero-copy .round-link{animation:intro-copy 1s 2.25s cubic-bezier(.22,1,.36,1) both}
.logo-intro-running .intro-controls{animation:intro-copy .9s 2.4s cubic-bezier(.22,1,.36,1) both}
@keyframes curtain-left{0%,12%{transform:translateX(0)}100%{transform:translateX(-101%)}}
@keyframes curtain-right{0%,12%{transform:translateX(0)}100%{transform:translateX(101%)}}
@keyframes emblem-top{from{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}
@keyframes emblem-bottom{from{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}
@keyframes emblem-turn{from{opacity:0;transform:rotateY(100deg) scale(.65)}to{opacity:1;transform:rotateY(0) scale(1)}}
@keyframes wordmark-reveal{from{opacity:0;clip-path:inset(0 0 0 100%);transform:translateX(35px)}to{opacity:1;clip-path:inset(0 0 0 0);transform:translateX(0)}}
@keyframes intro-copy{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:650px){.hero.logo-hero{padding:135px 30px 110px;min-height:100svh}.logo-lockup{width:100%;margin-bottom:40px;gap:5%}.logo-hero .hero-copy p{font-size:20px;line-height:2}.logo-hero .round-link{font-size:17px;margin-top:22px}.intro-controls{font-size:11px;bottom:24px;left:8%;right:8%}.logo-hero .intro-caption,.intro-replay{font-size:11px}}
@media(prefers-reduced-motion:reduce){.logo-intro-running *,.logo-intro-running .logo-curtain::before,.logo-intro-running .logo-curtain::after{animation:none!important}.intro-replay{display:none}}
/* Keep each original-artwork slice inside its own viewport. */
.logo-wordmark,.logo-emblem{overflow:hidden}
.hero.logo-hero{align-items:center;align-content:center}
.hero.logo-hero .hero-copy{flex-direction:column;align-items:center;align-self:center}
.logo-lockup{width:min(80vw,560px);gap:4%;margin-bottom:42px}
.logo-wordmark{width:57%}.logo-emblem{width:39%}
.logo-hero .hero-copy .round-link{align-self:center}
@media(max-width:650px){.logo-lockup{width:min(100%,390px);margin-bottom:36px}}
