#scroll-progress{position:fixed;z-index:99;left:0;top:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left center;will-change:transform}
.nav{animation:nav-in .9s .15s both cubic-bezier(.2,.7,.2,1)}
.hero .eyebrow{animation:rise-in .9s .25s both cubic-bezier(.2,.7,.2,1)}
.hero h1{animation:hero-type 1.2s .35s both cubic-bezier(.16,1,.3,1)}
.hero-line{animation:rise-in 1s .65s both cubic-bezier(.2,.7,.2,1)}
.hero-image{animation:image-in 1.4s .25s both cubic-bezier(.16,1,.3,1)}
@keyframes nav-in{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}
@keyframes rise-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes hero-type{from{opacity:0;transform:translateY(12%) scaleY(.82);filter:blur(9px)}to{opacity:1;transform:none;filter:none}}
@keyframes image-in{from{opacity:0;transform:translateX(7%) scale(.96)}to{opacity:1;transform:none}}
.motion-reveal{opacity:0;transform:translateY(55px);filter:blur(5px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.16,1,.3,1),filter 1s ease}
.motion-reveal.visible{opacity:1;transform:none;filter:none}
.timeline .era,.projects a,.press a,.territories article,.principle-grid p,.future-principles p{transition-delay:var(--delay,0ms)}
.projects a{position:relative;overflow:hidden}
.projects a::after{content:"";position:absolute;inset:0;background:var(--cream);transform:translateX(-102%);transition:transform .65s cubic-bezier(.16,1,.3,1);z-index:-1}
.projects a:hover::after{transform:none}
.tomorrow{position:relative;overflow:hidden;min-height:115vh;background:#0a0a0a;color:#f6f4ef}
.tomorrow .section-no{position:relative;z-index:2}
.tomorrow-copy{position:relative;z-index:2;margin:14vh 0 0 17%;max-width:1000px}
.tomorrow-kicker{font-size:.72rem;letter-spacing:.18em;color:var(--gold)}
.tomorrow h2{font-size:clamp(3.7rem,7.5vw,8rem);font-weight:500;letter-spacing:-.065em;line-height:.9;margin:2rem 0 5rem}
.tomorrow h2 em{color:var(--gold);font-style:normal}
.tomorrow-body{display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;margin-left:25%}
.tomorrow-body p:first-child{font-size:clamp(1.25rem,2vw,2rem);line-height:1.25;margin:0}
.tomorrow-body p:last-child{color:#aaa;margin:0}
.future-principles{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:16vh;border-top:1px solid #333}
.future-principles p{padding:2.5rem 2.5rem 0 0;color:#999;border-right:1px solid #333}
.future-principles p+p{padding-left:2.5rem}.future-principles b{display:block;margin-top:.75rem;color:#f6f4ef;font-weight:400}
.tomorrow-orbit{position:absolute;right:-18vw;top:-10vw;width:70vw;aspect-ratio:1;opacity:.24;animation:orbit-turn 42s linear infinite}
.tomorrow-orbit i{position:absolute;inset:0;border:1px solid var(--gold);border-radius:50%}.tomorrow-orbit i:nth-child(2){inset:12%;transform:rotate(55deg) scaleY(.62)}.tomorrow-orbit i:nth-child(3){inset:25%;transform:rotate(-35deg) scaleX(.58)}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@media(max-width:800px){.tomorrow{min-height:auto}.tomorrow-copy{margin:10vh 0 0}.tomorrow-body{grid-template-columns:1fr;margin-left:0;gap:2rem}.future-principles{grid-template-columns:1fr}.future-principles p,.future-principles p+p{padding:2rem 0;border-right:0;border-bottom:1px solid #333}.tomorrow-orbit{width:130vw;right:-70vw}.motion-reveal{transform:translateY(36px)}}
@media(prefers-reduced-motion:reduce){#scroll-progress{display:none}.nav,.hero .eyebrow,.hero h1,.hero-line,.hero-image,.tomorrow-orbit{animation:none}.motion-reveal{opacity:1;transform:none;filter:none;transition:none}}
