:root{--night:#08090d;--night-2:#101018;--paper:#efeee9;--ink:#111116;--muted:#9a98a2;--line:rgba(255,255,255,.16);--violet:#7546ff;--teal:#42e5c0;--lime:#d7e85a;--display:'Space Grotesk',sans-serif;--body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--night);color:#f4f3f0;font:16px/1.5 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.grain{position:fixed;inset:-30%;z-index:30;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.87' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E")}.scroll-progress{position:fixed;z-index:70;inset:0 0 auto;height:2px;background:#ffffff1a}.scroll-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--teal),var(--violet),var(--lime))}.header{height:82px;position:absolute;z-index:50;top:0;left:0;right:0;padding:0 6.5vw;display:flex;align-items:center;border-bottom:1px solid #ffffff1b}.brand-logo{display:block;position:relative;overflow:hidden;background:transparent;flex:0 0 auto;width:112px;height:30px}.brand-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.15);mix-blend-mode:screen}.nav{display:flex;align-items:center;gap:32px;margin-left:auto;margin-right:38px}.nav a,.header-cta{font-size:12px;color:#e2e0e8;letter-spacing:.025em;transition:color .2s}.nav a:hover,.footer-links a:hover{color:var(--teal)}.header-cta{border-bottom:1px solid var(--teal);padding:8px 0;font-weight:600}.header-cta span{display:inline-block;margin-left:11px;color:var(--lime);transition:transform .3s}.header-cta:hover span{transform:rotate(90deg)}.menu-button{display:none}.eyebrow{margin:0;color:#aaa7b3;font-size:10px;line-height:1.4;letter-spacing:.19em;font-weight:600}.hero{height:100svh;min-height:720px;max-height:1050px;position:relative;overflow:hidden;padding:140px 10vw 54px;display:flex;align-items:center;isolation:isolate}.hero-image{position:absolute;z-index:-3;inset:0;background:url('./assets/moon-eclipse.png') center 44%/cover no-repeat;transform:scale(1.045);animation:hero-arrive 1.8s cubic-bezier(.18,.72,.2,1) both}.hero-wash{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#08090df7 0%,#08090de9 26%,#08090d84 54%,#08090d18 100%),linear-gradient(0deg,#08090de9 1%,transparent 37%,#08090d2b 100%)}@keyframes hero-arrive{from{transform:scale(1.17);filter:brightness(.28)}to{transform:scale(1.045);filter:brightness(1)}}.hero-orbit{position:absolute;z-index:-1;right:4.5%;top:50%;border:1px solid #ffffff22;border-radius:50%;pointer-events:none}.orbit-one{height:min(71vh,680px);aspect-ratio:.92;transform:translateY(-50%) rotate(-29deg)}.orbit-two{height:min(82vh,790px);aspect-ratio:.53;transform:translateY(-50%) rotate(40deg);border-color:#42e5c030}.hero-signal{position:absolute;right:17%;top:20%;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 28px 5px #d7e85a88;animation:signal-pulse 3s ease-in-out infinite}@keyframes signal-pulse{50%{box-shadow:0 0 48px 12px #d7e85a44;transform:scale(.75)}}.hero-copy{width:min(890px,80vw);position:relative;z-index:2}.hero-kicker{display:flex;align-items:center;gap:10px;margin-bottom:30px;opacity:0;animation:rise .7s .12s forwards}.hero-kicker span,.eyebrow-rule{width:23px;height:1px;background:var(--teal);display:inline-block}.hero h1{font:500 clamp(70px,9.8vw,148px)/.81 var(--display);letter-spacing:-.085em;text-transform:uppercase;margin:0}.hero-line{display:block;overflow:hidden;padding:0 .1em .105em 0}.hero-line>span{display:inline-block;transform:translateY(110%);animation:line-up 1s cubic-bezier(.16,1,.3,1) forwards}.hero-line:nth-child(1)>span{animation-delay:.22s}.hero-line:nth-child(2)>span{animation-delay:.38s}.hero-line:nth-child(3)>span{animation-delay:.54s}.shift-one{margin-left:.45em}.shift-two{margin-left:.1em}.outline-text{color:transparent;-webkit-text-stroke:1.25px var(--teal);text-stroke:1.25px var(--teal)}.lime-dot{color:var(--lime);-webkit-text-stroke:0}.hero-baseline{display:flex;align-items:center;gap:36px;margin:28px 0 0 6px;opacity:0;animation:rise .75s .9s forwards}.hero-baseline>p{color:#cecad4;font-size:14px;line-height:1.7;margin:0}.follow-link{display:inline-flex;align-items:center;gap:11px;color:#efedf4;font-size:11px}.scroll-circle{width:38px;height:38px;border:1px solid #ffffff6b;border-radius:50%;display:grid;place-items:center}.scroll-circle i{display:block;width:8px;height:8px;border-right:1px solid var(--lime);border-bottom:1px solid var(--lime);transform:rotate(45deg) translate(-2px,-2px);animation:scroll-nudge 1.3s ease-in-out infinite}@keyframes scroll-nudge{50%{transform:rotate(45deg) translate(2px,2px)}}.hero-logo{position:absolute;z-index:1;width:clamp(210px,25vw,380px);height:clamp(48px,5.7vw,86px);right:8vw;bottom:62px;overflow:hidden;opacity:0;animation:logo-in 1.1s 1.05s forwards}.hero-logo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.15);mix-blend-mode:screen}.hero-index{position:absolute;left:10vw;bottom:28px;right:10vw;z-index:2;display:flex;justify-content:space-between;color:#aaa7b1;font-size:9px;letter-spacing:.16em}.hero-scrollbar{position:absolute;right:6.5vw;bottom:24px;height:54px;width:1px;background:#fff3}.hero-scrollbar span{display:block;width:1px;height:18px;background:var(--lime);animation:scrollbar 1.5s ease-in-out infinite}@keyframes scrollbar{to{transform:translateY(36px);opacity:0}}@keyframes line-up{to{transform:translateY(0)}}@keyframes rise{to{opacity:1;transform:translateY(0)}}@keyframes logo-in{to{opacity:.94}}
.story-intro{min-height:100svh;position:relative;display:flex;align-items:center;padding:130px 13vw;overflow:hidden;background:radial-gradient(ellipse at 77% 56%,#4c2fd022,transparent 38%),var(--night)}.intro-copy{position:relative;z-index:2;max-width:700px}.intro-copy .eyebrow{display:flex;align-items:center;gap:10px}.intro-copy h2{font:500 clamp(65px,9.6vw,136px)/.88 var(--display);text-transform:uppercase;letter-spacing:-.085em;margin:32px 0}.intro-copy h2 em{font-style:normal;color:var(--teal)}.intro-copy>p:last-child{max-width:390px;margin:0 0 0 22%;font-size:15px;color:#aaa7b2;line-height:1.8}.intro-mark{position:absolute;width:min(54vw,690px);aspect-ratio:1;right:-5%;top:50%;transform:translateY(-50%);border:1px solid #7546ff3a;border-radius:50%;display:grid;place-items:center}.intro-mark:before,.intro-mark:after{content:'';position:absolute;inset:12%;border:1px solid #42e5c034;border-radius:50%;transform:rotate(61deg) scaleX(.62)}.intro-mark:after{inset:-9% 20%;transform:rotate(-31deg) scaleX(.75);border-color:#d7e85a2f}.intro-mark span{width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 28%,#7866bb,#37314d 48%,#111019 86%);box-shadow:0 0 90px #7546ff36,inset -18px -14px 28px #07070a}.intro-mark i{position:absolute;width:8px;height:8px;right:12%;top:17%;background:var(--lime);border-radius:50%;box-shadow:0 0 25px var(--lime)}.intro-mark b{position:absolute;left:20%;bottom:13%;font-size:20px;color:var(--teal);font-weight:400}.side-note{position:absolute;right:5vw;bottom:36px;writing-mode:vertical-rl;color:#83808d;font-size:8px;letter-spacing:.18em}.story-sequence{position:relative;display:grid;grid-template-columns:49% 51%;background:#101018}.story-visual{position:sticky;top:0;height:100svh;min-height:640px;overflow:hidden;isolation:isolate;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 49%,#28233c 0%,#171621 37%,#101018 75%);transition:background .8s}.visual-sky{position:absolute;inset:0;opacity:.5;background:radial-gradient(#f4f4ff8c .7px,transparent 1px);background-size:74px 74px;mask-image:radial-gradient(ellipse at 50% 50%,#000,transparent 78%)}.visual-ring{position:absolute;width:min(36vw,470px);height:min(27vw,360px);border:1px solid #42e5c05a;border-radius:50%;transform:rotate(-31deg);transition:transform 1.25s cubic-bezier(.2,.7,.16,1),border-color .7s,width .8s}.ring-b{width:min(30vw,400px);height:min(46vw,610px);transform:rotate(48deg);border-color:#7546ff72}.visual-core{position:absolute;width:min(19vw,250px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 28% 25%,#6b6290,#383444 36%,#17151f 72%);box-shadow:inset -24px -18px 44px #08080c,0 0 80px #7546ff27;transition:transform 1.2s cubic-bezier(.2,.7,.16,1),filter .9s,box-shadow .9s}.visual-core span{position:absolute;inset:0;border-radius:50%;background:linear-gradient(123deg,transparent 30%,#d8eaff14 48%,transparent 64%);transform:rotate(15deg)}.visual-path{position:absolute;inset:10% 6%;width:88%;height:80%;overflow:visible;opacity:.38;stroke-dasharray:1500;stroke-dashoffset:400;transition:stroke-dashoffset 1.1s ease,opacity .6s}.visual-label{position:absolute;left:10%;top:13%;display:flex;align-items:center;gap:12px;z-index:5}.visual-step{font:500 10px var(--display);color:var(--lime)}.visual-name{font-size:9px;letter-spacing:.17em;color:#dedbe5}.visual-caption{position:absolute;left:10%;bottom:13%;font:500 11px/1.5 var(--display);color:#aaa7b2;letter-spacing:.03em}.orbit-shot{position:absolute;z-index:3;margin:0;width:min(16vw,190px);padding:6px;background:#f2f0ea;box-shadow:0 22px 55px #0008;opacity:0;transform:translateY(40px) scale(.88) rotate(8deg);transition:opacity .7s,transform .9s cubic-bezier(.16,1,.3,1)}.orbit-shot img{width:100%;height:125px;display:block;object-fit:cover}.orbit-shot figcaption{font:600 7px var(--body);letter-spacing:.1em;color:#15151a;padding:7px 1px 2px}.shot-tamreed{left:14%;top:23%;transform:translate(-22px,25px) rotate(-11deg)}.shot-uci{right:10%;top:29%;transform:translate(30px,32px) rotate(9deg)}.shot-rich{left:16%;bottom:22%;transform:translate(-25px,25px) rotate(8deg)}.story-visual[data-stage=define] .visual-ring.ring-a{transform:rotate(25deg) scale(1.12);border-color:#7546ff8c}.story-visual[data-stage=define] .visual-ring.ring-b{transform:rotate(-28deg) scale(.92);border-color:#d7e85a6d}.story-visual[data-stage=define] .visual-core{transform:scale(.78);filter:hue-rotate(28deg);box-shadow:0 0 90px #7546ff6b}.story-visual[data-stage=shape] .visual-ring.ring-a{transform:rotate(41deg) scale(.95);border-color:#d7e85a88}.story-visual[data-stage=shape] .visual-ring.ring-b{transform:rotate(-53deg) scale(1.12);border-color:#42e5c074}.story-visual[data-stage=shape] .visual-core{transform:scale(1.09);filter:hue-rotate(-27deg) brightness(1.2)}.story-visual[data-stage=shape] .visual-path,.story-visual[data-stage=reach] .visual-path,.story-visual[data-stage=grow] .visual-path{stroke-dashoffset:0;opacity:.82}.story-visual[data-stage=shape] .shot-uci,.story-visual[data-stage=shape] .shot-rich,.story-visual[data-stage=reach] .shot-tamreed,.story-visual[data-stage=reach] .shot-uci,.story-visual[data-stage=reach] .shot-rich,.story-visual[data-stage=grow] .orbit-shot{opacity:1;transform:translate(0,0) scale(1) rotate(0)}.story-visual[data-stage=reach] .visual-ring.ring-a{transform:rotate(-58deg) scale(1.14);border-color:#42e5c088}.story-visual[data-stage=reach] .visual-ring.ring-b{transform:rotate(63deg) scale(.9);border-color:#7546ffaa}.story-visual[data-stage=reach] .visual-core{transform:scale(.9);filter:hue-rotate(45deg) brightness(1.08)}.story-visual[data-stage=grow] .visual-ring.ring-a{transform:rotate(72deg) scale(.86);border-color:#d7e85a9c}.story-visual[data-stage=grow] .visual-ring.ring-b{transform:rotate(-38deg) scale(1.2);border-color:#42e5c080}.story-visual[data-stage=grow] .visual-core{transform:scale(1.18);filter:brightness(1.35);box-shadow:0 0 100px #42e5c03a}.story-steps{min-width:0}.story-step{min-height:100svh;padding:12vh 9vw 12vh 7vw;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #ffffff0b;position:relative}.story-step:before{content:attr(data-number);position:absolute;right:8%;top:12%;font:500 clamp(70px,10vw,142px)/1 var(--display);color:#ffffff08;letter-spacing:-.1em}.step-kicker{margin:0 0 23px;color:var(--lime);font-size:9px;letter-spacing:.17em;font-weight:600}.story-step h2{font:500 clamp(49px,6.3vw,88px)/.94 var(--display);letter-spacing:-.075em;text-transform:uppercase;margin:0 0 24px;max-width:610px;transition:transform .65s,color .5s}.story-step h2 em{font-style:normal;color:var(--teal)}.story-step>p:not(.step-kicker){font-size:14px;line-height:1.8;color:#aaa7b2;max-width:410px;margin:0}.step-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}.step-tags span{border:1px solid #ffffff29;padding:7px 11px;border-radius:30px;font-size:9px;color:#d8d5de}.story-step.is-active h2{transform:translateX(0)}.story-step:not(.is-active) h2{transform:translateX(9px)}.story-step.is-active .step-kicker{color:var(--teal)}.story-end{position:relative;overflow:hidden;min-height:760px;padding:120px 14vw;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 80% 49%,#5a2fe92e,transparent 43%),#08090d}.story-end>.eyebrow{position:relative;z-index:2}.story-end h2{position:relative;z-index:2;font:500 clamp(75px,11vw,158px)/.82 var(--display);letter-spacing:-.09em;text-transform:uppercase;margin:32px 0}.story-end h2 em{font-style:normal;color:var(--lime)}.end-copy{position:relative;z-index:2;font-size:14px;color:#a8a5b0;line-height:1.8;max-width:320px;margin:0 0 25px 16%}.end-link{position:relative;z-index:2;display:flex;align-items:center;gap:19px;font-size:12px;width:max-content;border-bottom:1px solid var(--teal);padding:10px 0;margin-left:16%}.end-link span{color:var(--lime);font-size:16px}.end-orbit{position:absolute;right:-3%;top:50%;transform:translateY(-50%);width:min(56vw,740px);aspect-ratio:1;border:1px solid #7546ff4d;border-radius:50%;display:grid;place-items:center}.end-orbit:before,.end-orbit:after{content:'';position:absolute;inset:13%;border:1px solid #42e5c03a;border-radius:50%;transform:rotate(-55deg) scaleX(.67)}.end-orbit:after{inset:-8% 24%;transform:rotate(36deg) scaleX(.74);border-color:#d7e85a30}.end-orbit span{width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 24%,#8675bc,#302b42 60%,#12111a);box-shadow:inset -24px -20px 40px #08080c,0 0 95px #7546ff3b}.end-orbit i{position:absolute;right:18%;top:20%;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 25px var(--lime)}
.work-preview{background:var(--paper);color:var(--ink);padding:132px 10.5vw 94px}.preview-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.preview-head .eyebrow{color:#706d77;display:flex;align-items:center;gap:11px}.eyebrow-rule{background:var(--violet)}.preview-head h2{font:500 clamp(58px,8vw,112px)/.88 var(--display);letter-spacing:-.08em;text-transform:uppercase;margin:22px 0 0}.preview-head h2 em{font-style:normal;color:var(--violet)}.all-work-link{font-size:11px;border-bottom:1px solid var(--violet);padding:11px 0}.all-work-link span{font-size:16px;margin-left:12px;color:var(--violet)}.preview-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:49px 3.5%;align-items:start}.preview-card{display:block}.preview-wide{grid-column:1/-1;display:grid;grid-template-columns:1.42fr .58fr;column-gap:5%;align-items:end}.preview-image{height:350px;position:relative;overflow:hidden;background:#d7d4dc}.preview-wide .preview-image{height:490px;grid-row:span 2}.preview-image img{width:100%;height:100%;object-fit:cover;transition:transform .85s cubic-bezier(.2,.8,.18,1)}.preview-card:hover .preview-image img{transform:scale(1.05)}.preview-count{position:absolute;top:16px;left:17px;font:500 11px var(--display);color:white;background:#08090d;padding:8px 10px}.preview-meta{display:block;font-size:9px;letter-spacing:.15em;color:#726e7b;margin-top:17px}.preview-card h3{font:500 25px/1.1 var(--display);letter-spacing:-.04em;margin:8px 0 0}.preview-wide h3{font-size:35px;margin:7px 0 7px}.preview-offset{margin-top:107px}.preview-bottom{margin-top:77px;padding-top:17px;border-top:1px solid #14131c35;display:flex;justify-content:space-between;color:#77737e;font-size:9px;letter-spacing:.15em}.preview-bottom a{color:#19181f}.preview-bottom b{color:var(--violet);font-weight:500;margin-left:9px}.contact-story{min-height:650px;position:relative;overflow:hidden;padding:120px 12vw;display:flex;align-items:center;isolation:isolate}.contact-glow{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 79% 52%,#7546ff31,transparent 38%),#0a0a10}.contact-copy{position:relative;z-index:2}.contact-copy .eyebrow{display:flex;align-items:center;gap:10px}.contact-copy h2{font:500 clamp(64px,9vw,128px)/.87 var(--display);letter-spacing:-.08em;text-transform:uppercase;margin:31px 0}.contact-copy h2 em{font-style:normal;color:var(--teal)}.contact-copy>p:not(.eyebrow){font-size:14px;color:#b7b4bf}.contact-actions{display:flex;align-items:center;gap:24px;margin-top:30px}.contact-button{display:inline-flex;align-items:center;gap:22px;background:var(--lime);color:#101016;padding:16px 18px;font-weight:700;font-size:12px;transition:transform .25s,background .25s}.contact-button:hover{transform:translateY(-3px);background:#e8f579}.contact-button span{font-size:17px}.email-link{font-size:11px;color:#e2dfe7;border-bottom:1px solid #85818e;padding:7px 0}.contact-orbit{position:absolute;z-index:-1;right:9%;top:50%;transform:translateY(-50%);width:min(37vw,490px);aspect-ratio:1;border:1px solid #42e5c04d;border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--teal);font:600 11px/1.5 var(--display);letter-spacing:.17em}.contact-orbit:before,.contact-orbit:after{content:'';position:absolute;inset:12%;border:1px solid #7546ff58;border-radius:50%;transform:rotate(55deg) scaleX(.65)}.contact-orbit:after{inset:-10% 20%;transform:rotate(-32deg) scaleX(.73);border-color:#d7e85a39}.contact-orbit span{position:relative;z-index:2}.contact-orbit i{position:absolute;right:13%;top:17%;width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 23px var(--lime)}.footer{min-height:100px;padding:23px 6.5vw;display:grid;grid-template-columns:120px 1.2fr 1.7fr auto;align-items:center;gap:20px;border-top:1px solid var(--line)}.footer-logo{width:105px;height:27px}.footer>p{font-size:10px;color:#96939e;margin:0}.footer-links{display:flex;gap:22px;font-size:10px;color:#c5c2cc}.footer-links a{transition:color .2s}.footer small{font-size:9px;color:#77747f;white-space:nowrap}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.18,.8,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.story-step{opacity:.5;transition:opacity .7s}.story-step.is-active{opacity:1}.preview-card:nth-child(2){transition-delay:.1s}.preview-card:nth-child(3){transition-delay:.2s}
/* Dedicated portfolio page */
.work-page{background:var(--paper);color:var(--ink)}.work-page .header{position:fixed;background:#08090ddf;backdrop-filter:blur(15px)}.work-hero{min-height:76svh;background:var(--night);color:#f4f3f0;position:relative;padding:170px 10.5vw 75px;display:flex;align-items:end;overflow:hidden;isolation:isolate}.work-hero:before{content:'';position:absolute;z-index:-2;inset:0;background:url('./assets/moon-eclipse.png') 73% 43%/cover no-repeat;opacity:.48;transform:scale(1.08);animation:hero-arrive 1.5s ease both}.work-hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#08090df2 0%,#08090d9a 55%,#08090d25),linear-gradient(0deg,#08090d,transparent 44%)}.work-hero h1{font:500 clamp(74px,12vw,165px)/.82 var(--display);letter-spacing:-.09em;text-transform:uppercase;margin:27px 0 0}.work-hero h1 em{font-style:normal;color:var(--teal)}.work-hero-copy{max-width:770px}.work-hero-copy>p:last-child{font-size:14px;color:#c0bdc6;max-width:410px;line-height:1.8;margin:26px 0 0 18%}.work-intro{padding:78px 10.5vw 46px;display:flex;justify-content:space-between;align-items:end}.work-intro p{font-size:13px;line-height:1.75;color:#706d77;max-width:380px;margin:0 0 4px}.work-list{padding:0 10.5vw 125px}.work-case{padding:42px 0 72px;border-top:1px solid #14131c2b;display:grid;grid-template-columns:60px 1.25fr .75fr;gap:35px;align-items:center;scroll-margin-top:95px}.case-number{align-self:start;padding-top:13px;color:var(--violet);font:500 11px var(--display)}.case-image{position:relative;overflow:hidden;aspect-ratio:1.35;background:#d9d6de}.case-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.16,1)}.work-case:hover .case-image img{transform:scale(1.045)}.case-info{padding:8px 0 8px 9%}.case-info .eyebrow{color:#74717c;font-size:9px}.case-info h2{font:500 clamp(32px,4vw,54px)/.98 var(--display);letter-spacing:-.06em;margin:17px 0}.case-info>p{font-size:13px;color:#696671;line-height:1.8;margin:0;max-width:380px}.case-note{margin-top:21px;border-left:2px solid var(--violet);padding:7px 0 7px 13px;color:#3b3942;font-size:11px;line-height:1.6;max-width:360px}.case-services{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px}.case-services span{border:1px solid #18171f30;color:#686570;border-radius:30px;padding:6px 9px;font-size:9px}.work-footer-cta{background:var(--night);color:#f4f3f0;padding:96px 10.5vw;display:flex;justify-content:space-between;align-items:center;gap:25px}.work-footer-cta h2{font:500 clamp(42px,6.5vw,82px)/.92 var(--display);letter-spacing:-.07em;margin:14px 0}.work-footer-cta h2 em{font-style:normal;color:var(--lime)}.work-footer-cta .contact-button{flex:0 0 auto}
@media(max-width:980px){.hero{padding-left:7vw;padding-right:7vw}.hero-index{left:7vw;right:7vw}.hero-copy{width:86vw}.hero h1{font-size:clamp(70px,10.8vw,130px)}.hero-logo{right:7vw;bottom:67px;width:230px;height:55px}.story-intro{padding-left:9vw;padding-right:9vw}.story-step{padding-left:6vw;padding-right:6vw}.story-step h2{font-size:clamp(44px,6.7vw,70px)}.work-preview{padding-left:7vw;padding-right:7vw}.contact-story{padding-left:8vw;padding-right:8vw}.footer{grid-template-columns:110px 1fr 1.4fr}.footer small{grid-column:2/-1;justify-self:end}.work-hero,.work-intro,.work-list,.work-footer-cta{padding-left:7vw;padding-right:7vw}.work-case{grid-template-columns:40px 1.1fr .9fr;gap:22px}.case-info{padding-left:5%}}
@media(max-width:680px){html{scroll-padding-top:70px}.header{height:70px;padding:0 6vw}.brand-logo{width:91px;height:25px}.nav{display:none;position:absolute;left:0;right:0;top:69px;margin:0;padding:22px 7vw 25px;flex-direction:column;align-items:stretch;gap:19px;background:#0c0c12f2;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav.open{display:flex}.nav a{font-size:14px}.header-cta{font-size:10px;margin-left:auto;margin-right:14px}.menu-button{border:0;background:none;padding:10px 1px 10px 7px;display:flex;flex-direction:column;gap:5px}.menu-button span{width:20px;height:1px;background:#f4f3f0;transition:transform .25s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.hero{height:100svh;min-height:700px;max-height:940px;padding:115px 7vw 68px;align-items:center}.hero-image{background-position:61% center}.hero-wash{background:linear-gradient(90deg,#08090df0 0%,#08090ddd 38%,#08090d86 69%,#08090d49),linear-gradient(0deg,#08090de9,transparent 38%,#08090d62)}.hero-copy{width:100%}.hero-kicker{font-size:8px;letter-spacing:.14em;gap:7px;margin-bottom:27px}.hero-kicker span{width:18px}.hero h1{font-size:clamp(54px,12.8vw,83px);line-height:.89;letter-spacing:-.082em}.shift-one{margin-left:.17em}.shift-two{margin-left:.04em}.outline-text{-webkit-text-stroke-width:1px}.hero-baseline{margin:24px 0 0 3px;gap:18px}.hero-baseline>p{font-size:11px}.follow-link{font-size:9px;gap:8px}.scroll-circle{width:33px;height:33px}.hero-logo{width:145px;height:37px;right:7vw;bottom:60px}.hero-index{left:7vw;right:13vw;bottom:25px;font-size:7px;letter-spacing:.11em}.hero-scrollbar{right:6vw;bottom:19px;height:42px}.orbit-one{right:-34%;height:53vh}.orbit-two{right:-18%;height:64vh}.hero-signal{right:21%;top:23%;width:6px;height:6px}.story-intro{min-height:83svh;padding:100px 8vw;align-items:center}.intro-copy{max-width:100%}.intro-copy .eyebrow{font-size:8px;letter-spacing:.13em;gap:7px}.intro-copy h2{font-size:clamp(56px,13vw,83px);margin:26px 0}.intro-copy>p:last-child{font-size:12px;max-width:265px;margin-left:10%;line-height:1.7}.intro-mark{width:90vw;right:-39%;opacity:.76}.side-note{right:4vw;bottom:25px;font-size:7px}.story-sequence{display:block}.story-visual{position:sticky;top:70px;height:38svh;min-height:260px;z-index:4;margin-bottom:-9svh}.visual-ring{width:68vw;height:45vw}.ring-b{width:57vw;height:85vw}.visual-core{width:31vw}.visual-label{left:8%;top:15%;gap:8px}.visual-step{font-size:9px}.visual-name{font-size:7px}.visual-caption{left:auto;right:8%;bottom:14%;text-align:right;font-size:9px}.visual-path{inset:3% 11%;width:78%;height:91%}.orbit-shot{width:28vw;padding:4px}.orbit-shot img{height:73px}.orbit-shot figcaption{font-size:5px;padding-top:4px}.shot-tamreed{left:5%;top:20%}.shot-uci{right:4%;top:18%}.shot-rich{left:6%;bottom:12%}.story-step{min-height:76svh;padding:23svh 8vw 9vh;justify-content:center;border-left:0;border-top:1px solid #ffffff0b;opacity:.4}.story-step:first-child{border-top:0}.story-step:before{right:8%;top:19%;font-size:76px}.step-kicker{font-size:8px;margin-bottom:16px}.story-step h2{font-size:clamp(43px,10.5vw,68px);margin-bottom:17px}.story-step>p:not(.step-kicker){font-size:12px;line-height:1.7}.step-tags{gap:6px;margin-top:18px}.step-tags span{padding:6px 8px;font-size:8px}.story-end{min-height:660px;padding:90px 8vw}.story-end .eyebrow{font-size:8px}.story-end h2{font-size:clamp(64px,15vw,94px);margin:26px 0}.end-copy{font-size:12px;margin-left:8%;max-width:245px}.end-link{font-size:10px;margin-left:8%;gap:12px}.end-orbit{width:100vw;right:-54%;opacity:.68}.work-preview{padding:88px 7vw 66px}.preview-head{display:block;margin-bottom:34px}.preview-head .eyebrow{font-size:8px;gap:7px}.preview-head h2{font-size:clamp(55px,13vw,81px);margin-top:18px}.all-work-link{display:inline-block;margin-top:20px;font-size:10px}.preview-grid{display:flex;flex-direction:column;gap:32px}.preview-card,.preview-wide{display:block;width:100%}.preview-image,.preview-wide .preview-image{height:auto;aspect-ratio:1.21}.preview-meta{font-size:8px;margin-top:12px}.preview-card h3,.preview-wide h3{font-size:23px;margin-top:7px}.preview-offset{margin-top:0}.preview-bottom{margin-top:43px;font-size:7px;gap:12px}.contact-story{min-height:590px;padding:91px 7vw;align-items:center}.contact-copy .eyebrow{font-size:8px;letter-spacing:.14em;gap:7px}.contact-copy h2{font-size:clamp(56px,12vw,80px);margin:28px 0}.contact-copy>p:not(.eyebrow){font-size:12px;max-width:255px}.contact-actions{flex-direction:column;align-items:flex-start;gap:17px}.contact-button{font-size:11px;padding:14px 15px}.email-link{font-size:10px}.contact-orbit{width:64vw;right:-36%;top:21%;transform:none;opacity:.6}.contact-orbit span{font-size:8px}.footer{padding:22px 7vw;grid-template-columns:1fr auto;gap:12px}.footer-logo{width:80px;height:22px}.footer>p{grid-column:1/-1;grid-row:2;font-size:9px}.footer-links{grid-column:1/-1;grid-row:3;gap:15px;flex-wrap:wrap;font-size:8px}.footer small{grid-column:1/-1;grid-row:4;justify-self:start;font-size:8px}.work-hero{min-height:70svh;padding:140px 7vw 68px;align-items:end}.work-hero:before{background-position:65% center}.work-hero h1{font-size:clamp(67px,15vw,95px);margin-top:22px}.work-hero-copy>p:last-child{font-size:12px;margin:19px 0 0 8%;max-width:265px}.work-intro{padding:56px 7vw 33px;display:block}.work-intro .section-aside{font-size:12px;margin-top:15px}.work-list{padding:0 7vw 80px}.work-case{grid-template-columns:30px 1fr;gap:12px 13px;padding:30px 0 43px;align-items:start}.case-number{grid-column:1;grid-row:1;font-size:9px;padding-top:5px}.case-image{grid-column:2;grid-row:1;aspect-ratio:1.15}.case-info{grid-column:2;grid-row:2;padding:10px 0 0}.case-info .eyebrow{font-size:8px}.case-info h2{font-size:35px;margin:13px 0}.case-info>p{font-size:12px}.case-note{font-size:10px;margin-top:15px}.case-services span{font-size:8px}.work-footer-cta{padding:72px 7vw;display:block}.work-footer-cta h2{font-size:clamp(43px,10vw,65px);margin:14px 0 23px}.work-footer-cta .contact-button{margin-top:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero-line>span{transform:none!important}}
/* Scroll-linked deep-space journey */
.story-visual{background:#070910;--journey-hue:0deg}.travel-scene{position:absolute;z-index:-3;inset:-5%;opacity:0;background-position:center;background-size:cover;will-change:transform,opacity;transition:opacity 1.15s cubic-bezier(.2,.7,.2,1),transform 2.3s cubic-bezier(.16,1,.3,1),filter 1.4s}.scene-moon{background-image:linear-gradient(90deg,#0709109c,#0709101c 75%),url('./assets/moon-eclipse.png');background-position:58% center;transform:scale(1.14)}.scene-planets{background-image:linear-gradient(90deg,#070910ae,#07091012 82%),url('./assets/planet-rings.webp');background-position:61% center;transform:scale(1.19)}.scene-galaxy{background-image:linear-gradient(90deg,#07091096,#07091008 85%),url('./assets/galaxy.webp');background-position:68% center;transform:scale(1.24)}.travel-vignette{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#0b0b12d9,transparent 77%),linear-gradient(0deg,#0b0b12a8,transparent 30%,#0b0b126b);pointer-events:none}.story-visual[data-stage=discover] .scene-moon,.story-visual[data-stage=define] .scene-moon{opacity:.65;transform:scale(1.04)}.story-visual[data-stage=shape] .scene-planets{opacity:.62;transform:scale(1.035)}.story-visual[data-stage=reach] .scene-galaxy,.story-visual[data-stage=grow] .scene-galaxy{opacity:.68;transform:scale(1.04)}.story-visual[data-stage=define] .scene-moon{filter:hue-rotate(20deg) brightness(.84)}.story-visual[data-stage=shape] .scene-planets{filter:hue-rotate(17deg) brightness(.89)}.story-visual[data-stage=grow] .scene-galaxy{filter:saturate(.86) brightness(.79);transform:scale(1.13)}.visual-sky{z-index:-1;opacity:.42;background-image:radial-gradient(#ffffffa8 .65px,transparent 1px),radial-gradient(#42e5c078 .7px,transparent 1px);background-size:83px 83px,137px 137px;background-position:0 0,33px 51px;animation:star-drift 46s linear infinite}.visual-ring,.visual-core,.visual-path{z-index:0}.visual-core{z-index:1}.visual-label{left:8%;top:8%;z-index:6;padding:10px 13px;background:#090a10a6;backdrop-filter:blur(12px);border:1px solid #ffffff20}.visual-step{min-width:20px}.visual-name{transition:opacity .2s;white-space:nowrap}.visual-location{position:absolute;z-index:6;left:8%;bottom:14%;display:flex;align-items:center;gap:8px;font-size:8px;letter-spacing:.15em;color:#e9e5f2}.location-pip{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 15px var(--lime);animation:location-pulse 2.5s ease-in-out infinite}.travel-route{position:absolute;z-index:6;left:8%;right:8%;bottom:7%;height:20px;display:flex;align-items:center;justify-content:space-between;color:#ffffff91;font-size:7px;letter-spacing:.13em}.route-line{position:absolute;left:3%;right:3%;height:1px;background:#ffffff45}.route-line i{display:block;width:var(--route-progress,15%);height:1px;background:linear-gradient(90deg,var(--teal),var(--violet),var(--lime));transition:width 1s cubic-bezier(.16,1,.3,1)}.route-stop{position:relative;background:#11121ac9;padding:4px 6px;transition:color .5s,transform .5s}.story-visual[data-stage=discover] .route-line i{width:12%}.story-visual[data-stage=define] .route-line i{width:30%}.story-visual[data-stage=shape] .route-line i{width:52%}.story-visual[data-stage=reach] .route-line i{width:76%}.story-visual[data-stage=grow] .route-line i{width:100%}.story-visual[data-stage=discover] .stop-moon,.story-visual[data-stage=define] .stop-moon,.story-visual[data-stage=shape] .stop-orbit,.story-visual[data-stage=reach] .stop-nebula,.story-visual[data-stage=grow] .stop-nebula{color:var(--lime);transform:translateY(-3px)}.story-visual[data-stage=discover] .visual-core,.story-visual[data-stage=define] .visual-core{background:radial-gradient(circle at 30% 25%,#c5c4d0,#777787 42%,#252630 78%);box-shadow:inset -24px -18px 44px #08080c,0 0 85px #dddfff30}.story-visual[data-stage=shape] .visual-core,.story-visual[data-stage=reach] .visual-core,.story-visual[data-stage=grow] .visual-core{opacity:.2;transform:scale(.7)}.story-visual[data-stage=reach] .visual-path,.story-visual[data-stage=grow] .visual-path{opacity:.32}.story-step{scroll-margin-top:4vh}.story-step.is-active .step-kicker{transition:color .5s}.hero-image{will-change:transform}.work-page .header{position:fixed}.work-hero:before{will-change:transform,opacity}
@keyframes star-drift{to{background-position:83px 83px,-104px 188px}}@keyframes location-pulse{50%{box-shadow:0 0 24px 4px #d7e85a44;transform:scale(.8)}}
@media(max-width:680px){.story-visual{background:#080910}.travel-scene{inset:-4% -25%;background-position:65% center}.scene-moon{background-position:62% center}.scene-planets{background-position:61% center}.scene-galaxy{background-position:70% center}.story-visual[data-stage=discover] .scene-moon,.story-visual[data-stage=define] .scene-moon{opacity:.58}.story-visual[data-stage=shape] .scene-planets{opacity:.55}.story-visual[data-stage=reach] .scene-galaxy,.story-visual[data-stage=grow] .scene-galaxy{opacity:.58}.travel-vignette{background:linear-gradient(0deg,#0b0b12c7,transparent 55%,#0b0b12a0)}.visual-label{left:5%;top:8%;gap:7px;padding:7px 8px}.visual-name{font-size:6px;letter-spacing:.11em}.visual-location{left:6%;bottom:13%;font-size:6px;gap:6px}.location-pip{width:5px;height:5px}.travel-route{left:6%;right:6%;bottom:4%;font-size:5px;height:15px}.route-stop{padding:3px 4px}.visual-core{width:27vw}.story-visual[data-stage=shape] .visual-core,.story-visual[data-stage=reach] .visual-core,.story-visual[data-stage=grow] .visual-core{transform:scale(.56)}.orbit-shot{opacity:.92}}
/* Fullscreen cinematic service journey */
.hero-image{background-image:url('./assets/lunar-horizon.webp');background-position:center 55%}.hero-wash{background:linear-gradient(90deg,#08090df5 0%,#08090de4 27%,#08090d70 59%,#08090d0c 100%),linear-gradient(0deg,#08090de9 1%,transparent 37%,#08090d38 100%)}
.story-intro{min-height:100svh;background:#05060a}.story-intro .intro-mark{display:none}.intro-space{position:absolute;inset:0 0 0 24%;background:linear-gradient(90deg,#08090d,transparent 61%,#08090d47),linear-gradient(0deg,#08090d63,transparent 60%),url('./assets/lunar-horizon.webp') 61% center/cover no-repeat;opacity:.79;transform:scale(1.04);animation:space-arrive 2s cubic-bezier(.2,.7,.2,1) both}.story-intro .intro-copy{max-width:740px}.story-intro .intro-copy h2{font-size:clamp(75px,11vw,152px);max-width:760px}.story-intro .intro-copy h2 em{color:var(--lime)}.intro-journey-link{display:flex;align-items:center;gap:14px;width:max-content;margin:34px 0 0 22%;font-size:11px;border-bottom:1px solid var(--teal);padding:10px 0;color:#f0edf6}.intro-journey-link span{color:var(--lime);font-size:17px;animation:scroll-nudge 1.3s ease-in-out infinite}
.story-sequence{display:block;position:relative;background:#03050a;isolation:isolate}.story-sequence .story-visual{position:sticky;top:0;height:100svh;min-height:560px;width:100%;margin:0 0 -100svh;z-index:0;display:block;background:#03050a;overflow:hidden}.story-sequence .travel-scene{position:absolute;z-index:-3;inset:-4%;opacity:0;background-position:center;background-size:cover;will-change:transform,opacity;transition:opacity 1.35s cubic-bezier(.2,.7,.2,1),transform 2.4s cubic-bezier(.16,1,.3,1),filter 1.4s}.scene-moon{background-image:url('./assets/lunar-horizon.webp');background-position:center 66%;transform:scale(1.12)}.scene-saturn{background-image:url('./assets/saturn-pass.webp');background-position:68% center;transform:scale(1.16)}.scene-earth{background-image:url('./assets/earth-orbit.webp');background-position:65% center;transform:scale(1.14)}.scene-deep{background-image:url('./assets/deep-field.webp');background-position:68% center;transform:scale(1.18)}.scene-galaxy{background-image:url('./assets/galaxy.webp');background-position:69% center;transform:scale(1.2)}.story-visual[data-stage=branding] .scene-moon,.story-visual[data-stage=digital] .scene-saturn,.story-visual[data-stage=social] .scene-earth,.story-visual[data-stage=growth] .scene-deep,.story-visual[data-stage=production] .scene-galaxy{opacity:1;transform:scale(1.035)}.story-visual[data-stage=digital] .scene-saturn{background-position:61% center;filter:saturate(.8)}.story-visual[data-stage=social] .scene-earth{background-position:72% center}.story-visual[data-stage=growth] .scene-deep{filter:saturate(.75);background-position:65% center}.story-visual[data-stage=production] .scene-galaxy{filter:saturate(.78);background-position:74% center;transform:scale(1.11)}.story-visual .travel-vignette{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#03050ad9 0%,#03050a70 31%,transparent 68%),linear-gradient(0deg,#03050a91,transparent 27%,#03050a5c);pointer-events:none}.story-visual .visual-sky{position:absolute;z-index:-1;inset:0;opacity:.24;background-image:radial-gradient(#ffffffb7 .55px,transparent .9px),radial-gradient(#8fbaff9e .55px,transparent .9px);background-size:99px 99px,157px 157px;background-position:0 0,29px 52px;mask-image:linear-gradient(90deg,#000,transparent 80%);animation:star-drift 64s linear infinite}.story-visual .visual-ring,.story-visual .visual-core,.story-visual .visual-path,.story-visual .orbit-shot,.story-visual .visual-caption{display:none}.story-visual .visual-label{position:absolute;left:8vw;top:12vh;z-index:6;display:flex;align-items:center;gap:12px;padding:10px 13px;background:#080a11a8;border:1px solid #ffffff36;backdrop-filter:blur(12px)}.story-visual .visual-step{font-size:10px;color:var(--lime)}.story-visual .visual-name{font-size:9px;letter-spacing:.17em;color:#f0edf6}.story-visual .visual-location{position:absolute;left:8vw;bottom:14vh;z-index:6;display:flex;align-items:center;gap:9px;color:#f6f4f6;font-size:9px;letter-spacing:.16em}.travel-route{position:absolute;z-index:6;left:8vw;right:8vw;bottom:7vh;height:20px;display:flex;align-items:center;justify-content:space-between;color:#ffffffa4;font-size:8px;letter-spacing:.14em}.route-line{position:absolute;left:2%;right:2%;height:1px;background:#ffffff5e}.route-line i{display:block;height:1px;width:var(--route-progress,9%);background:linear-gradient(90deg,#c2c3d0,#8fbaff,#a999f7,#d7e85a);transition:width 1.2s cubic-bezier(.16,1,.3,1)}.route-stop{position:relative;background:#070910d9;padding:5px 7px;transition:color .5s,transform .5s}.story-visual[data-stage=branding] .route-line i{width:8%}.story-visual[data-stage=digital] .route-line i{width:27%}.story-visual[data-stage=social] .route-line i{width:51%}.story-visual[data-stage=growth] .route-line i{width:76%}.story-visual[data-stage=production] .route-line i{width:100%}.story-visual[data-stage=branding] .stop-moon,.story-visual[data-stage=digital] .stop-saturn,.story-visual[data-stage=social] .stop-earth,.story-visual[data-stage=growth] .stop-deep,.story-visual[data-stage=production] .stop-galaxy{color:var(--lime);transform:translateY(-4px)}.location-pip{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime);animation:location-pulse 2.5s ease-in-out infinite}.story-sequence .story-steps{position:relative;z-index:2;min-width:0;pointer-events:none}.story-sequence .story-step{min-height:100svh;padding:94px 9vw 13vh;display:flex;align-items:center;justify-content:flex-start;position:relative;border:0;opacity:1;scroll-margin-top:0}.story-sequence .story-step:nth-child(even){justify-content:flex-end}.service-card{max-width:590px;padding:35px 38px 36px;border-left:1px solid #42e5c0a8;background:linear-gradient(100deg,#080a11e8,#080a118f 78%,#080a110d);backdrop-filter:blur(5px);opacity:.15;transform:translate3d(0,42px,0);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.16,1,.3,1);pointer-events:auto}.story-step.is-active .service-card{opacity:1;transform:translate3d(0,0,0)}.service-card .step-kicker{font-size:9px;letter-spacing:.2em;color:var(--lime);margin:0 0 25px}.service-card h2{font:500 clamp(50px,6.8vw,96px)/.9 var(--display);text-transform:uppercase;letter-spacing:-.08em;max-width:570px;margin:0 0 25px;text-shadow:0 3px 32px #020308b8}.service-card h2 em{font-style:normal;color:var(--teal)}.service-card>p:not(.step-kicker){max-width:430px;color:#e0dde6;font-size:14px;line-height:1.8;margin:0;text-shadow:0 2px 22px #000}.service-card .step-tags{margin-top:26px;gap:8px}.service-card .step-tags span{background:#0a0c13a6;border-color:#ffffff3c;padding:8px 12px;color:#eeebf2;font-size:9px}.story-sequence .story-step:before{content:attr(data-number);right:8vw;top:17vh;font-size:clamp(125px,21vw,290px);line-height:.8;color:#ffffff0b;z-index:-1}
.story-end{background:radial-gradient(ellipse at 78% 48%,#3d68b124,transparent 45%),#05060a}.story-end .end-orbit{opacity:.44}.story-end h2 em{color:var(--teal)}.story-end .end-link{border-color:var(--lime)}
@keyframes space-arrive{from{opacity:0;transform:scale(1.14)}to{opacity:.79;transform:scale(1.04)}}
@media(max-width:980px){.story-sequence .story-step{padding-left:7vw;padding-right:7vw}.service-card{max-width:540px}.story-visual .visual-label{left:7vw}.story-visual .visual-location{left:7vw}.travel-route{left:7vw;right:7vw}}
@media(max-width:680px){.hero-image{background-position:65% center}.hero-wash{background:linear-gradient(90deg,#08090df2 0%,#08090dd5 39%,#08090d7b 71%,#08090d45),linear-gradient(0deg,#08090dec,transparent 38%,#08090d52)}.story-intro{min-height:88svh;padding:105px 8vw 85px}.intro-space{inset:0 -38% 0 7%;background-position:67% center;opacity:.59}.story-intro .intro-copy h2{font-size:clamp(61px,15vw,91px);margin:26px 0}.story-intro .intro-copy>p:last-child{font-size:12px;max-width:270px;margin-left:8%}.intro-journey-link{margin-left:8%;font-size:10px}.story-intro .side-note{font-size:6px}.story-sequence .story-visual{height:100svh;min-height:520px}.story-sequence .travel-scene{inset:-2% -40%;background-size:auto 100%}.scene-moon{background-position:72% 70%}.scene-saturn{background-position:73% center}.scene-earth{background-position:76% center}.scene-deep{background-position:74% center}.scene-galaxy{background-position:75% center}.story-visual .travel-vignette{background:linear-gradient(90deg,#03050aa3,transparent 95%),linear-gradient(0deg,#03050ad9 0%,transparent 38%,#03050a3e)}.story-visual .visual-sky{opacity:.22}.story-visual .visual-label{left:7vw;top:11vh;padding:8px 10px;gap:8px}.story-visual .visual-step{font-size:8px}.story-visual .visual-name{font-size:7px;letter-spacing:.13em}.story-visual .visual-location{left:7vw;bottom:13vh;font-size:7px}.travel-route{left:6vw;right:6vw;bottom:7vh;height:18px;font-size:5px;letter-spacing:.1em}.route-stop{padding:4px 4px}.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:100svh;padding:94px 7vw 14vh;justify-content:flex-start;align-items:flex-end}.service-card{width:100%;max-width:100%;padding:23px 19px 25px;background:linear-gradient(100deg,#080a11e8,#080a1199 88%,#080a1150);backdrop-filter:blur(8px)}.service-card .step-kicker{font-size:7px;margin-bottom:16px}.service-card h2{font-size:clamp(43px,11.4vw,67px);margin-bottom:16px}.service-card>p:not(.step-kicker){font-size:11px;line-height:1.7}.service-card .step-tags{gap:5px;margin-top:18px}.service-card .step-tags span{font-size:7px;padding:6px 8px}.story-sequence .story-step:before{top:20vh;right:6vw;font-size:38vw}.story-end{min-height:610px}.story-end .end-orbit{right:-58%;opacity:.3}}
@media(prefers-reduced-motion:reduce){.intro-space,.story-visual .visual-sky,.location-pip{animation:none!important}.story-sequence .travel-scene,.service-card{transition:none!important}}
/* True 3D scroll flight */
main{position:relative;z-index:2}.footer{position:relative;z-index:2}.space-world{position:fixed;inset:0;z-index:1;overflow:hidden;pointer-events:none;background:#03050a;opacity:1}.space-world canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.space-fallback{position:absolute;inset:0;background:url('./assets/lunar-horizon.webp') 69% center/cover no-repeat;opacity:1;transition:opacity 1s}.space-world.webgl-ready .space-fallback{opacity:0}.space-world.webgl-failed canvas{display:none}.space-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#03050ac7 0%,#03050a55 35%,transparent 75%),linear-gradient(0deg,#03050a92,transparent 28%,#03050a42);pointer-events:none}.space-hud{position:absolute;left:7vw;top:102px;display:flex;align-items:center;gap:12px;color:#f5f2fa;background:#06080db8;border:1px solid #ffffff26;padding:10px 13px;backdrop-filter:blur(12px);opacity:0;transform:translateY(-7px);transition:opacity .5s,transform .7s;letter-spacing:.15em;font-size:9px}.space-world[data-active=true] .space-hud{opacity:1;transform:translateY(0)}.hud-coordinate{color:#a9a7b4;font-size:8px}.hud-divider{height:14px;width:1px;background:#ffffff50}.space-hud .visual-step{color:var(--lime)}.space-hud .visual-name{color:#f5f2fa;white-space:nowrap}.space-credit{position:absolute;left:0;top:calc(100% + 8px);font-size:8px;letter-spacing:.12em;color:#d4d0db;white-space:nowrap;text-shadow:0 2px 12px #000}.space-location{position:absolute;left:7vw;bottom:13vh;display:flex;gap:9px;align-items:center;color:#f6f3fa;text-shadow:0 2px 18px #000;font-size:9px;letter-spacing:.15em;opacity:0;transition:opacity .5s}.space-world[data-active=true] .space-location,.space-world[data-active=true] .space-route{opacity:1}.location-pip{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime);animation:location-pulse 2.5s ease-in-out infinite}.space-route{position:absolute;left:7vw;right:7vw;bottom:5vh;height:19px;display:flex;justify-content:space-between;align-items:center;color:#ffffffb5;font-size:8px;letter-spacing:.14em;opacity:0;transition:opacity .5s}.space-route-line{position:absolute;left:2%;right:2%;height:1px;background:#ffffff60}.space-route-line i{display:block;width:0;height:1px;background:linear-gradient(90deg,#c2c3d0,#8fbaff,#a999f7,#d7e85a);transition:width .3s linear}.route-stop{position:relative;background:#06080ddd;padding:4px 6px;transition:color .4s,transform .4s}
.hero{isolation:isolate;background:transparent}.hero-image,.hero-orbit,.hero-signal{display:none}.hero-wash{z-index:-2;background:linear-gradient(90deg,#08090dee 0%,#08090dac 32%,#08090d33 68%,transparent 100%),linear-gradient(0deg,#08090dc0 0%,transparent 33%,#08090d42)}.hero-copy,.hero-logo,.hero-index,.hero-scrollbar{z-index:3}.story-intro{background:transparent}.intro-space,.story-intro .intro-mark{display:none}.story-intro .intro-copy h2 em{color:var(--teal)}.story-sequence{display:block;background:transparent;isolation:isolate}.story-sequence .story-visual{display:none}.story-sequence .story-steps{position:relative;min-width:0;z-index:2}.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:100svh;padding:96px 9vw 12vh;display:flex;align-items:center;justify-content:flex-start;position:relative;border:0;opacity:1;scroll-margin-top:0}.service-card{max-width:610px;padding:35px 38px 38px;border-left:1px solid #42e5c0a8;background:linear-gradient(100deg,#080a11d9,#080a1170 78%,#080a1100);backdrop-filter:blur(5px);opacity:.14;transform:translate3d(0,38px,0);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.16,1,.3,1)}.story-step.is-active .service-card{opacity:1;transform:translate3d(0,0,0)}.service-card .step-kicker{font-size:9px;letter-spacing:.2em;color:var(--lime);margin:0 0 25px}.service-card h2{font:500 clamp(50px,6.8vw,96px)/.9 var(--display);text-transform:uppercase;letter-spacing:-.08em;max-width:570px;margin:0 0 25px;text-shadow:0 3px 32px #020308b8}.service-card h2 em{font-style:normal;color:var(--teal)}.service-card>p:not(.step-kicker){max-width:430px;color:#efedf4;font-size:14px;line-height:1.8;margin:0;text-shadow:0 2px 22px #000}.service-card .step-tags{margin-top:26px;gap:8px}.service-card .step-tags span{background:#0a0c13a6;border-color:#ffffff3c;padding:8px 12px;color:#eeebf2;font-size:9px}.story-sequence .story-step:before{content:attr(data-number);right:8vw;top:17vh;font-size:clamp(125px,21vw,290px);line-height:.8;color:#ffffff0b;z-index:-1}.story-end{background:linear-gradient(90deg,#05060acb,#05060a7a),radial-gradient(ellipse at 80% 48%,#3d68b124,transparent 45%),transparent}.contact-story{isolation:isolate}.contact-glow{opacity:.91}
@media(max-width:980px){.service-card{max-width:540px}.story-sequence .story-step,.story-sequence .story-step:nth-child(even){padding-left:7vw;padding-right:7vw}}
@media(max-width:680px){.space-world canvas{image-rendering:auto}.space-fallback{background-position:68% center}.space-vignette{background:linear-gradient(90deg,#03050a5c,transparent 95%),linear-gradient(0deg,#03050ae8 0%,transparent 45%,#03050a35)}.space-hud{left:5vw;top:83px;gap:8px;padding:8px 9px;font-size:7px}.hud-coordinate{font-size:6px;letter-spacing:.1em}.space-hud .visual-step{font-size:8px}.space-hud .visual-name{font-size:6px;letter-spacing:.08em}.space-credit{font-size:6px}.space-location{left:6vw;bottom:12vh;font-size:7px}.space-route{left:5vw;right:5vw;bottom:5vh;font-size:6px;letter-spacing:.08em}.route-stop{padding:4px 4px}.story-intro{background:transparent;min-height:88svh}.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:100svh;padding:96px 6vw 14vh;justify-content:flex-start;align-items:flex-end}.service-card{width:100%;max-width:100%;padding:23px 19px 25px;background:linear-gradient(100deg,#080a11e8,#080a1199 88%,#080a1150);backdrop-filter:blur(8px)}.service-card .step-kicker{font-size:7px;margin-bottom:16px}.service-card h2{font-size:clamp(43px,11.4vw,67px);margin-bottom:16px}.service-card>p:not(.step-kicker){font-size:12px;line-height:1.7}.service-card .step-tags{gap:5px;margin-top:18px}.service-card .step-tags span{font-size:7px;padding:6px 8px}.story-sequence .story-step:before{top:20vh;right:6vw;font-size:38vw}.story-end{background:linear-gradient(90deg,#05060ad0,#05060a99),transparent}.contact-glow{background:radial-gradient(ellipse at 79% 52%,#7546ff31,transparent 45%),#0a0a10}}
@media(prefers-reduced-motion:reduce){.location-pip{animation:none!important}.service-card{transition:none!important}}
.service-card{opacity:1;transform:none}.js-enabled .story-sequence .service-card{opacity:.14;transform:translate3d(0,38px,0)}.js-enabled .story-sequence .story-step.is-active .service-card{opacity:1;transform:translate3d(0,0,0)}.space-world[data-stage=branding],.space-world:not([data-stage]){background:#03050a}
.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:172svh}
.space-detail{position:absolute;z-index:4;right:7vw;top:24vh;width:min(370px,30vw);padding:17px 19px 18px;border:1px solid #ffffff2a;border-left:1px solid #42e5c0;background:linear-gradient(120deg,#080a11c9,#090b12a1);backdrop-filter:blur(12px);color:#f4f3f0;opacity:0;transform:translate3d(0,12px,0);transition:opacity .65s,transform .9s cubic-bezier(.16,1,.3,1)}.space-world[data-active=true] .space-detail{opacity:1;transform:translate3d(0,0,0)}.detail-kicker{display:flex;justify-content:space-between;gap:12px;margin:0 0 14px;color:#a6a4b0;font:500 8px/1.4 var(--display);letter-spacing:.18em}.detail-kicker span:first-child{color:var(--lime)}.planet-title{font:500 clamp(20px,2.2vw,29px)/1 var(--display);letter-spacing:-.04em;margin:0 0 9px}.planet-copy{font-size:11px;line-height:1.7;color:#d0ced7;margin:0}.planet-metadata{display:flex;gap:20px;border-top:1px solid #ffffff24;margin-top:14px;padding-top:11px;color:#f4f3f0;font:500 9px var(--display)}.planet-metadata span{display:flex;flex-direction:column;gap:4px}.planet-metadata i{font:400 6px var(--body);font-style:normal;letter-spacing:.14em;color:#a4a1ad}.space-route{gap:0}.space-route .route-stop.is-current{color:var(--lime);transform:translateY(-3px)}.space-route-line i{transition:width .16s linear}
@media(max-width:680px){.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:168svh}.space-detail{top:21vh;right:5vw;width:min(48vw,240px);padding:12px 12px 13px}.detail-kicker{font-size:6px;letter-spacing:.12em;margin-bottom:10px}.planet-title{font-size:18px;margin-bottom:7px}.planet-copy{font-size:9px;line-height:1.55}.planet-metadata{gap:12px;margin-top:10px;padding-top:8px;font-size:7px}.planet-metadata i{font-size:5px}.space-route{left:4vw;right:4vw}.route-stop{font-size:5px;letter-spacing:.035em;padding:3px 2px}}
.story-intro{min-height:70svh;padding:95px 13vw 62px}.story-intro .intro-copy h2{font-size:clamp(58px,7.4vw,102px);margin:23px 0 17px}.story-intro .intro-copy>p:last-of-type{max-width:290px;margin-left:15%;font-size:13px;line-height:1.6}.story-intro .intro-journey-link{margin-top:18px;font-size:9px}.hero-baseline p{font-size:13px;line-height:1.5;letter-spacing:.03em;color:#dedce4}
.space-detail{right:6vw;top:23vh;width:min(440px,35vw);padding:23px 25px 24px;border-color:#ffffff3c;border-left:2px solid var(--teal);background:linear-gradient(120deg,#05070dec,#070912e8);box-shadow:0 20px 65px #0008}.detail-kicker{font-size:9px;letter-spacing:.16em;margin-bottom:19px}.planet-title{font-size:clamp(30px,3.4vw,44px);margin-bottom:12px}.planet-copy{font-size:14px;line-height:1.7;color:#f0eef5}.planet-metadata{gap:25px;margin-top:18px;padding-top:14px;font-size:12px}.planet-metadata i{font-size:8px}.space-route .route-stop.is-current{color:#f3fa9a;text-shadow:0 0 15px #d7e85a80;transform:translateY(-4px)}
@media(max-width:680px){.story-intro{min-height:65svh;padding:96px 7vw 52px}.story-intro .intro-copy h2{font-size:clamp(48px,12vw,70px);margin:18px 0 13px}.story-intro .intro-copy>p:last-of-type{margin-left:9%;font-size:12px}.story-intro .intro-journey-link{margin-left:9%;margin-top:13px}.space-detail{top:18vh;right:6vw;width:min(86vw,440px);padding:14px 16px 15px}.detail-kicker{font-size:7px;letter-spacing:.14em;margin-bottom:11px}.planet-title{font-size:26px;margin-bottom:8px}.planet-copy{font-size:12px;line-height:1.55}.planet-metadata{gap:18px;margin-top:10px;padding-top:9px;font-size:9px}.planet-metadata i{font-size:6px}.space-route .route-stop{font-size:5px;letter-spacing:.025em;padding:3px 2px}}
.space-fallback{background:#02040a;opacity:.72}.space-world.webgl-failed .space-fallback,.space-world.reduced-motion .space-fallback{opacity:.9}.space-world.webgl-failed .space-fallback:after,.space-world.reduced-motion .space-fallback:after{content:'';position:absolute;z-index:1;right:14%;top:50%;width:min(54vmin,610px);aspect-ratio:1;border-radius:50%;transform:translateY(-50%);background-position:center;background-size:cover;box-shadow:inset -70px -32px 105px #010205,0 0 105px #9ebfff30}.space-world[data-planet=moon].webgl-failed .space-fallback:after,.space-world[data-planet=moon].reduced-motion .space-fallback:after{background-image:url('./assets/moon-color-detailed-4k.jpg')}.space-world[data-planet=mercury].webgl-failed .space-fallback:after,.space-world[data-planet=mercury].reduced-motion .space-fallback:after{background-image:url('./assets/mercury-nasa.webp')}.space-world[data-planet=venus].webgl-failed .space-fallback:after,.space-world[data-planet=venus].reduced-motion .space-fallback:after{background-image:url('./assets/venus-color.jpg')}.space-world[data-planet=earth].webgl-failed .space-fallback:after,.space-world[data-planet=earth].reduced-motion .space-fallback:after{background-image:url('./assets/earth-color.jpg')}.space-world[data-planet=mars].webgl-failed .space-fallback:after,.space-world[data-planet=mars].reduced-motion .space-fallback:after{background-image:url('./assets/mars-color.jpg')}.space-world[data-planet=jupiter].webgl-failed .space-fallback:after,.space-world[data-planet=jupiter].reduced-motion .space-fallback:after{background-image:url('./assets/jupiter-color.jpg')}.space-world[data-planet=saturn].webgl-failed .space-fallback:after,.space-world[data-planet=saturn].reduced-motion .space-fallback:after{background-image:url('./assets/saturn-color.jpg')}.space-world[data-planet=uranus].webgl-failed .space-fallback:after,.space-world[data-planet=uranus].reduced-motion .space-fallback:after{background-image:url('./assets/uranus-color.jpg')}.space-world[data-planet=neptune].webgl-failed .space-fallback:after,.space-world[data-planet=neptune].reduced-motion .space-fallback:after{background-image:url('./assets/neptune-color.jpg')}.space-world[data-planet=saturn].webgl-failed .space-fallback:before,.space-world[data-planet=saturn].reduced-motion .space-fallback:before{content:'';position:absolute;z-index:1;right:7%;top:50%;width:min(68vmin,750px);height:min(20vmin,190px);border:14px solid #c7b99670;border-radius:50%;transform:translateY(-50%) rotate(-17deg)}

/* Let the actual worlds hold focus; keep their facts legible over deep space. */
.story-intro{background:linear-gradient(90deg,#08090df2 0%,#08090dc4 38%,#08090d22 100%),radial-gradient(ellipse at 77% 56%,#4c2fd022,transparent 38%),var(--night)}
.space-detail{width:min(470px,38vw);padding:25px 27px 26px;border-color:#ffffff45;background:linear-gradient(125deg,#05070df2,#070912eb);box-shadow:0 24px 80px #0009}
.planet-title{font-size:clamp(32px,3.8vw,48px)}
.planet-copy{font-size:15px;line-height:1.65}
.planet-metadata{gap:30px;font-size:13px}
.planet-metadata i{font-size:9px}
.space-route .route-stop{font-size:8px}
@media(max-width:680px){
  .story-intro{background:linear-gradient(90deg,#08090df0 0%,#08090db8 55%,#08090d5c 100%),var(--night)}
  .space-detail{width:min(88vw,470px);top:auto;right:6vw;bottom:15vh;padding:14px 16px 15px}
  .planet-title{font-size:28px}
  .planet-copy{font-size:13px;line-height:1.5}
  .planet-metadata{gap:20px;margin-top:11px;padding-top:10px;font-size:10px}
  .planet-metadata i{font-size:7px}
  .space-route .route-stop{font-size:7px;letter-spacing:0;padding-inline:2px}
  .space-location{bottom:11vh;font-size:8px}
}

/* Deep space keeps attention on each complete planet silhouette. */
.space-fallback{background-color:#02040a;background-image:radial-gradient(1px 1px at 42px 58px,#f0f4ffdb 98%,transparent),radial-gradient(1px 1px at 19px 26px,#8fbaffb8 98%,transparent),radial-gradient(ellipse at 64% 44%,#101a33 0%,#060b18 35%,transparent 67%);background-size:173px 181px,239px 263px,100% 100%;background-position:0 0,71px 83px,center}
.brand-logo img,.hero-logo img{object-fit:contain;transform:none;mix-blend-mode:screen}
.space-detail{right:6vw;width:min(470px,38vw)}
.space-world.webgl-failed .space-fallback:after,.space-world.reduced-motion .space-fallback:after{left:14%;right:auto}
.space-world[data-planet=saturn].webgl-failed .space-fallback:before,.space-world[data-planet=saturn].reduced-motion .space-fallback:before{left:7%;right:auto}
.space-route .route-stop{font-size:8px;letter-spacing:.035em}
.space-world[data-planet=sun].webgl-failed .space-fallback:after,.space-world[data-planet=sun].reduced-motion .space-fallback:after{background-image:radial-gradient(circle at 34% 31%,#fff9c8 0,#ffc354 17%,#f47524 48%,#791f10 74%,#090b13 77%);box-shadow:0 0 55px #ff923e88,inset -40px -24px 70px #250706}
.story-sequence .story-step{min-height:195svh}
@media(max-width:680px){
  .space-detail{right:6vw;width:min(88vw,470px)}
  .space-route .route-stop{font-size:7px;letter-spacing:0}
  .story-sequence .story-step{min-height:190svh}
  .space-world.webgl-failed .space-fallback:after,.space-world.reduced-motion .space-fallback:after{left:50%;right:auto;top:38%;transform:translate(-50%,-50%)}
  .space-world[data-planet=saturn].webgl-failed .space-fallback:before,.space-world[data-planet=saturn].reduced-motion .space-fallback:before{left:50%;right:auto;top:38%;transform:translate(-50%,-50%) rotate(-17deg)}
}

/* Moon cycle home experience */
.space-world{background:#03060c}
.space-world canvas{z-index:0}
.space-world .space-vignette{z-index:2;background:linear-gradient(90deg,#03050aeb 0%,#03050ab8 25%,#03050a22 61%,transparent 100%),linear-gradient(0deg,#03050a8f,transparent 28%,#03050a48);}
.space-fallback{background:#03060c;opacity:.9;background-image:radial-gradient(1px 1px at 42px 58px,#f0f4ffdb 98%,transparent),radial-gradient(1px 1px at 19px 26px,#8fbaffb8 98%,transparent),radial-gradient(ellipse at 68% 46%,#101a33 0%,#060b18 39%,transparent 70%);background-size:173px 181px,239px 263px,100% 100%;background-position:0 0,71px 83px,center;transition:opacity 1s}
.space-world.webgl-ready .space-fallback{opacity:0}
.space-world.webgl-failed .space-fallback,.space-world.reduced-motion .space-fallback{opacity:1}
.space-world.webgl-failed .space-fallback:after,.space-world.reduced-motion .space-fallback:after{content:'';position:absolute;z-index:1;left:auto;right:10%;top:50%;width:min(51vmin,630px);aspect-ratio:1;border-radius:50%;transform:translateY(-50%);background:url('./assets/moon-color-detailed-4k.jpg') center/auto 100% no-repeat,radial-gradient(circle at 35% 28%,#b9b9b7,#666b73 65%,#181b23 100%);box-shadow:inset -48px -18px 65px #02040be0,0 0 95px #b8c9ed25;}
.space-world.webgl-failed .space-fallback:before,.space-world.reduced-motion .space-fallback:before{content:'';position:absolute;z-index:2;left:auto;right:10%;top:50%;width:min(51vmin,630px);aspect-ratio:1;border-radius:50%;transform:translateY(-50%);background:linear-gradient(90deg,#01030cea 0 80%,transparent 99%);mix-blend-mode:multiply;opacity:.98;transition:background .9s ease;}
.space-world[data-phase=crescent].webgl-failed .space-fallback:before,.space-world[data-phase=crescent].reduced-motion .space-fallback:before{background:linear-gradient(90deg,#01030ce7 0 71%,transparent 94%)}
.space-world[data-phase=quarter].webgl-failed .space-fallback:before,.space-world[data-phase=quarter].reduced-motion .space-fallback:before{background:linear-gradient(90deg,#01030cde 0 49%,transparent 51%)}
.space-world[data-phase=gibbous].webgl-failed .space-fallback:before,.space-world[data-phase=gibbous].reduced-motion .space-fallback:before{background:linear-gradient(90deg,#01030cbb 0 31%,transparent 63%)}
.space-world[data-phase=full].webgl-failed .space-fallback:before,.space-world[data-phase=full].reduced-motion .space-fallback:before{opacity:.025}
.space-world[data-phase=gibbous-wane].webgl-failed .space-fallback:before,.space-world[data-phase=gibbous-wane].reduced-motion .space-fallback:before{background:linear-gradient(270deg,#01030cbb 0 31%,transparent 63%)}
.space-world[data-phase=quarter-wane].webgl-failed .space-fallback:before,.space-world[data-phase=quarter-wane].reduced-motion .space-fallback:before{background:linear-gradient(270deg,#01030cde 0 49%,transparent 51%)}
.space-world[data-phase=balsamic].webgl-failed .space-fallback:before,.space-world[data-phase=balsamic].reduced-motion .space-fallback:before{background:linear-gradient(270deg,#01030ce7 0 71%,transparent 94%)}
.space-hud{z-index:4;left:7vw;top:112px;padding:12px 15px;gap:12px;background:#080b12ad;border-color:#ffffff2e;letter-spacing:.15em;font-size:9px}
.hud-coordinate{font-size:8px;color:#bbb9c4}
.hud-divider{height:13px;width:1px;background:#ffffff57}
.space-hud .visual-step{color:var(--lime);font:500 9px var(--display)}
.space-hud .visual-name{font:500 9px var(--display);letter-spacing:.15em;color:#fff}
.space-location{z-index:4;left:7vw;bottom:12vh;color:#ebeaf0;font-size:8px;letter-spacing:.18em}
.location-pip{background:var(--teal);box-shadow:0 0 16px var(--teal)}
.space-route{z-index:4;left:7vw;right:7vw;bottom:5vh;height:24px;font-size:7px;letter-spacing:.12em;}
.space-route-line{left:1.1%;right:1.1%;background:#ffffff4c;}
.space-route-line i{background:linear-gradient(90deg,#c7d3f0,#ffffff,var(--teal),var(--lime));transition:width .24s linear;}
.route-stop{background:#080b12d9;padding:5px 7px;border:1px solid #ffffff14;border-radius:99px;color:#d4d2dc;transition:color .4s,transform .4s,border-color .4s;}
.space-route .route-stop.is-current{color:#f7fae6;text-shadow:0 0 14px #d7e85a75;border-color:#d7e85a6e;transform:translateY(-4px);}
.hero{min-height:690px;max-height:980px;background:transparent;}
.hero-wash{background:linear-gradient(90deg,#05070cf5 0%,#05070cda 27%,#05070c8f 48%,#05070c14 78%),linear-gradient(0deg,#05070cd6 0%,transparent 37%,#05070c4a 100%);}
.hero h1{font-size:clamp(66px,9.3vw,136px);}
.hero-line:nth-child(2)>span{animation-delay:.39s}
.outline-text{-webkit-text-stroke-color:#e7e6ef;}
.hero-baseline{gap:27px;}
.hero-baseline>p{font-size:13px;color:#e5e3eb;}
.hero-logo{opacity:.92;}
.story-intro{min-height:91svh;padding:130px 12vw;background:linear-gradient(90deg,#05070cf3 0%,#05070cb9 39%,#05070c21 100%),transparent;}
.story-intro .intro-copy{max-width:610px;}
.story-intro .intro-copy h2{font-size:clamp(63px,8.9vw,124px);margin:29px 0 20px;}
.story-intro .intro-copy h2 em{color:var(--teal);}
.story-intro .intro-copy>p:last-of-type{max-width:390px;margin:0 0 0 13%;font-size:14px;color:#c2bfcb;line-height:1.75;}
.intro-journey-link{display:inline-flex;gap:18px;align-items:center;margin:27px 0 0 13%;font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #42e5c0a0;padding:10px 0;color:#f1eff5;}
.intro-journey-link span{color:var(--lime);font-size:15px;}
.cycle-emblem{position:absolute;right:9vw;top:50%;width:min(34vw,430px);aspect-ratio:1;transform:translateY(-50%);display:grid;place-items:center;color:#c9c8d4;text-align:center;font:500 8px/1.6 var(--display);letter-spacing:.19em;}
.cycle-emblem-orbit{position:absolute;inset:6%;border:1px solid #dfe4f433;border-radius:50%;transform:rotate(-27deg) scaleY(.67);}
.cycle-emblem-orbit:before,.cycle-emblem-orbit:after{content:'';position:absolute;inset:-14% 9%;border:1px solid #42e5c03a;border-radius:50%;transform:rotate(64deg) scaleY(.72);}
.cycle-emblem-orbit:after{inset:13% -8%;border-color:#d7e85a3a;transform:rotate(-49deg) scaleY(.68);}
.cycle-emblem-moon{position:absolute;width:33%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 33% 28%,#e6e6e8 0%,#a5a9b2 40%,#4a5060 72%,#171a22 100%);box-shadow:inset -19px -10px 25px #080a10,0 0 55px #c3d6fa24;}
.cycle-emblem-moon:after{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(90deg,#11141da8 0 55%,transparent 89%);}
.cycle-emblem>span{position:relative;z-index:2;text-shadow:0 2px 14px #000;}
.cycle-emblem>i{position:absolute;right:15%;top:18%;width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 20px var(--lime);}
.side-note{right:4.5vw;color:#aaa7b4;font-size:7px;}
.story-sequence{display:block;background:transparent;isolation:isolate;}
.story-sequence .story-steps{position:relative;z-index:2;min-width:0;}
.story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:145svh;padding:100px 9vw 13vh;display:flex;align-items:center;justify-content:flex-start;position:relative;border:0;opacity:1;scroll-margin-top:0;}
.story-sequence .story-step:before{content:attr(data-number);right:8vw;top:14vh;font-size:clamp(140px,23vw,330px);line-height:.8;color:#ffffff0a;z-index:-1;}
.service-card{position:relative;max-width:620px;padding:34px 38px 37px;border-left:1px solid #42e5c0b0;background:linear-gradient(100deg,#05070ceb,#05070cbf 76%,#05070c25);backdrop-filter:blur(4px);opacity:.12;transform:translate3d(0,40px,0);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.16,1,.3,1);}
.story-step.is-active .service-card{opacity:1;transform:translate3d(0,0,0);}
.service-card .step-kicker{font-size:9px;letter-spacing:.18em;color:var(--lime);margin:0 0 22px;}
.service-card h2{font:500 clamp(48px,6.3vw,88px)/.94 var(--display);text-transform:uppercase;letter-spacing:-.075em;max-width:600px;margin:0 0 22px;text-shadow:0 3px 32px #020308b8;}
.service-card h2 em{font-style:normal;color:var(--teal);}
.service-card>p:not(.step-kicker){max-width:430px;color:#e2e0e8;font-size:14px;line-height:1.8;margin:0;text-shadow:0 2px 22px #000;}
.service-card .step-tags{display:flex;flex-wrap:wrap;margin:25px 0 0;gap:8px;}
.service-card .step-tags span{background:#080b12b5;border:1px solid #ffffff31;padding:8px 12px;border-radius:20px;color:#edeaf3;font-size:9px;}
.story-end{min-height:760px;background:linear-gradient(90deg,#05070cc8,#05070c7e),transparent;}
.story-end h2 em{color:var(--teal);}
.end-orbit{border-color:#c6d5f22a;}
.end-orbit span{background:radial-gradient(circle at 34% 28%,#e3e3e7,#949ba9 43%,#292f3a 77%);box-shadow:inset -25px -21px 35px #080a10,0 0 90px #a5bce333;}
.contact-glow{background:radial-gradient(ellipse at 79% 52%,#51648c20,transparent 45%),#070910;}
.contact-orbit{border-color:#dce2f034;color:#d9e7ff;}
.contact-orbit:before{border-color:#42e5c039;}
.contact-orbit:after{border-color:#d7e85a2b;}
.footer{background:#05070c;}
@media(max-width:980px){
  .cycle-emblem{right:4vw;width:35vw;opacity:.85;}
  .story-sequence .story-step,.story-sequence .story-step:nth-child(even){padding-left:7vw;padding-right:7vw;}
  .space-hud,.space-location{left:5vw;}
  .space-route{left:5vw;right:5vw;}
}
@media(max-width:680px){
  .space-world .space-vignette{background:linear-gradient(90deg,#03050a64,transparent 95%),linear-gradient(0deg,#03050af0 0%,#03050a24 41%,#03050a50);}
  .space-hud{left:5vw;top:89px;padding:8px 10px;gap:8px;}
  .space-hud .visual-name,.space-hud .visual-step,.hud-coordinate{font-size:7px;}
  .space-location{left:6vw;bottom:12vh;font-size:6px;}
  .space-route{left:3vw;right:3vw;bottom:5vh;height:20px;letter-spacing:.01em;}
  .route-stop{font-size:5px;padding:4px 4px;}
  .hero{min-height:660px;padding:115px 7vw 52px;align-items:center;}
  .hero-wash{background:linear-gradient(90deg,#05070cf0 0%,#05070ca8 65%,#05070c4a 100%),linear-gradient(0deg,#05070cdb 0%,transparent 46%,#05070c38);}
  .hero-copy{width:100%;}
  .hero h1{font-size:clamp(48px,12.2vw,76px);line-height:.9;letter-spacing:-.08em;}
  .hero-kicker{font-size:8px;margin-bottom:24px;}
  .hero-baseline{align-items:flex-start;flex-direction:column;gap:17px;margin-top:24px;}
  .hero-logo{right:7vw;bottom:62px;width:152px;height:36px;}
  .hero-index{left:7vw;right:7vw;bottom:24px;font-size:6px;}
  .story-intro{min-height:82svh;padding:105px 8vw 70px;background:linear-gradient(90deg,#05070cf0 0%,#05070ca9 63%,#05070c47 100%),transparent;}
  .story-intro .intro-copy h2{font-size:clamp(51px,13vw,78px);margin:23px 0 16px;}
  .story-intro .intro-copy>p:last-of-type{max-width:265px;margin-left:7%;font-size:12px;line-height:1.7;}
  .intro-journey-link{margin:20px 0 0 7%;font-size:8px;}
  .cycle-emblem{width:45vw;right:-9vw;top:21%;opacity:.32;}
  .side-note{font-size:6px;right:3vw;bottom:24px;}
  .story-sequence .story-step,.story-sequence .story-step:nth-child(even){min-height:133svh;padding:92px 6vw 15vh;justify-content:flex-end;align-items:flex-end;}
  .story-sequence .story-step:before{right:6vw;top:15vh;font-size:37vw;}
  .service-card{width:100%;max-width:100%;padding:21px 18px 24px;background:linear-gradient(100deg,#05070cf0,#05070cd9 85%,#05070c88);backdrop-filter:blur(8px);}
  .service-card .step-kicker{font-size:7px;letter-spacing:.12em;margin-bottom:15px;}
  .service-card h2{font-size:clamp(39px,10.4vw,62px);margin-bottom:15px;line-height:.96;}
  .service-card>p:not(.step-kicker){font-size:11px;line-height:1.7;}
  .service-card .step-tags{gap:5px;margin-top:16px;}
  .service-card .step-tags span{font-size:7px;padding:6px 8px;}
  .story-end{min-height:590px;}
  .story-end .end-orbit{right:-58%;opacity:.25;}
  .contact-story{min-height:610px;padding:95px 7vw;}
  .contact-copy h2{font-size:clamp(52px,12vw,76px);}
  .contact-copy>p:not(.eyebrow){max-width:265px;font-size:12px;line-height:1.7;}
  .contact-actions{align-items:flex-start;flex-direction:column;gap:18px;}
  .contact-orbit{right:-28%;top:77%;width:55vw;opacity:.42;}
  .footer{grid-template-columns:1fr auto;gap:16px;padding:24px 7vw;}
  .footer>p{grid-column:1/-1;grid-row:2;}
  .footer-links{grid-column:1/-1;grid-row:3;flex-wrap:wrap;gap:14px;}
  .footer small{grid-column:1/-1;grid-row:4;}
}
@media(prefers-reduced-motion:reduce){
  .space-world canvas{display:none;}
  .space-world.webgl-ready .space-fallback{opacity:1;}
  .service-card{transition:none!important;}
}
.hero-video{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block;opacity:.86;}
.hero-wash{z-index:-2;background:linear-gradient(90deg,#05070cf2 0%,#05070cbf 28%,#05070c70 51%,#05070c16 82%),linear-gradient(0deg,#05070cd6 0%,transparent 38%,#05070c58 100%);}
@media(max-width:680px){.hero-video{object-position:74% center;opacity:.73}.hero-wash{background:linear-gradient(90deg,#05070cf5 0%,#05070cbf 64%,#05070c60 100%),linear-gradient(0deg,#05070ce5 0%,transparent 43%,#05070c58 100%)}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}.hero-image{display:block!important;inset:0;background:url('./assets/moon-hero-poster.webp') 72% center/cover no-repeat;transform:none;animation:none}.hero-wash{z-index:-2}}

/* Expanded four-page navigation */
@media(max-width:850px){.header{height:70px;padding:0 5vw}.nav{display:none;position:absolute;left:0;right:0;top:69px;margin:0;padding:22px 7vw 25px;flex-direction:column;align-items:stretch;gap:18px;background:#0c0c12f2;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav.open{display:flex}.nav a{font-size:14px}.header-cta{font-size:10px;margin-left:auto;margin-right:14px}.menu-button{border:0;background:none;padding:10px 1px 10px 7px;display:flex;flex-direction:column;gap:5px}.menu-button span{width:20px;height:1px;background:#f4f3f0;transition:transform .25s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}}
@media(min-width:851px){.header .nav a{white-space:nowrap}}

/* Language switch shared by both editions. */
.language-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border:1px solid #ffffff38;border-radius:999px;color:#eeebf2;font:500 10px/1.2 var(--display);letter-spacing:.06em;white-space:nowrap;transition:color .2s,border-color .2s,background .2s}
.language-toggle:hover,.language-toggle:focus-visible{color:var(--teal);border-color:var(--teal);background:#42e5c00d;outline:none}

/* Sharper Moon fallback: blend the high contrast crater relief over the LRO color map. */
.space-world.webgl-failed .space-fallback:after,
.space-world.reduced-motion .space-fallback:after{
  width:min(56vmin,690px);
  background:
    url('./assets/moon-relief.jpg') center/auto 100% no-repeat,
    url('./assets/moon-color-detailed-4k.jpg') center/auto 100% no-repeat,
    radial-gradient(circle at 35% 28%,#b9b9b7,#666b73 65%,#181b23 100%);
    background-blend-mode:overlay,normal,normal;
    filter:contrast(1.42) brightness(1.27) saturate(.92);
    box-shadow:inset -30px -12px 42px #02040bd0,0 0 110px #b8c9ed35;
}
.space-world.webgl-failed .space-fallback:before,
.space-world.reduced-motion .space-fallback:before{width:min(56vmin,690px)}
/* Preserve a natural new-moon shadow while keeping lunar relief visible through earthshine. */
.space-world[data-phase=new].webgl-failed .space-fallback:before,
.space-world[data-phase=new].reduced-motion .space-fallback:before{
  background:linear-gradient(90deg,#01030caa 0%,#01030c82 43%,#01030c38 73%,transparent 96%);
  opacity:.9;
}
@media(max-width:680px){
  .space-world.webgl-failed .space-fallback:after,
  .space-world.reduced-motion .space-fallback:after,
  .space-world.webgl-failed .space-fallback:before,
  .space-world.reduced-motion .space-fallback:before{width:min(82vmin,480px)}
}
