:root{
  --ink:#0b0b0a;
  --ink-2:#151714;
  --paper:#f2efe6;
  --paper-2:#e7e1d5;
  --acid:#c9ff43;
  --acid-soft:#e1ff95;
  --sand:#d9c7af;
  --text:#11120f;
  --muted:#777a72;
  --line:rgba(17,18,15,.16);
  --line-dark:rgba(255,255,255,.16);
  --max:1440px;
  --gutter:clamp(20px,3.2vw,52px);
  --nav-h:76px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
html,body{margin:0;padding:0;overflow-x:hidden}
body{font-family:"Manrope","Segoe UI",Arial,sans-serif;background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img,svg{display:block;max-width:100%}
.container{width:min(calc(100% - (var(--gutter) * 2)),var(--max));margin-inline:auto}
.display{font-size:clamp(3.3rem,7.4vw,8.1rem);line-height:.88;letter-spacing:-.072em;font-weight:760;margin:0;text-wrap:balance}
.h1{font-size:clamp(3rem,6vw,6.6rem);line-height:.92;letter-spacing:-.067em;font-weight:750;margin:0}
.h2{font-size:clamp(2.2rem,4.7vw,5.2rem);line-height:.94;letter-spacing:-.058em;font-weight:720;margin:0;text-wrap:balance}
.h3{font-size:clamp(1.5rem,2.5vw,2.7rem);line-height:1;letter-spacing:-.045em;font-weight:700;margin:0}
.serif{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.035em}
.lead{font-size:clamp(1.02rem,1.35vw,1.25rem);line-height:1.66;letter-spacing:-.018em}
.copy{font-size:1rem;line-height:1.75;letter-spacing:-.01em}
.micro{font-size:.72rem;line-height:1.25;text-transform:uppercase;letter-spacing:.16em;font-weight:750}
.muted{color:var(--muted)}
.acid-text{color:var(--acid)}
.rule{height:1px;background:var(--line)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border-radius:999px;border:1px solid currentColor;font-size:.9rem;font-weight:700;transition:transform .25s var(--ease),background .25s,color .25s}
.btn:hover{transform:translateY(-2px)}
.btn.acid{background:var(--acid);border-color:var(--acid);color:var(--ink)}
.btn.ink{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.btn.paper{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.btn.ghost{background:transparent}

/* NAV */
.nav{position:fixed;inset:0 0 auto 0;height:var(--nav-h);z-index:80;color:var(--paper);transition:color .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease);border-bottom:1px solid transparent}
.nav::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,10,.78),rgba(11,11,10,.24),transparent);opacity:1;pointer-events:none;transition:opacity .35s}
.nav.is-solid::before{background:rgba(11,11,10,.93);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line-dark)}
.nav.is-light{color:var(--ink)}
.nav.is-light::before{background:rgba(242,239,230,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:1}
.wordmark{display:flex;align-items:center;gap:8px;font-size:1.02rem;font-weight:800;letter-spacing:-.045em}
.wordmark i{width:9px;height:9px;border-radius:50%;background:var(--acid);flex:none}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:.88rem;font-weight:650;opacity:.84;transition:opacity .2s}
.nav-links a:hover,.nav-links a[aria-current="page"]{opacity:1}
.nav-cta{font-size:.86rem;font-weight:750;border:1px solid currentColor;border-radius:999px;padding:10px 14px;white-space:nowrap}
.menu-btn{display:none;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;padding:9px 13px}
.mobile-menu{position:fixed;inset:0;z-index:75;background:var(--acid);color:var(--ink);padding:calc(var(--nav-h) + 34px) var(--gutter) 28px;display:flex;flex-direction:column;justify-content:flex-end;gap:0;transform:translateY(-102%);transition:transform .55s cubic-bezier(.83,0,.17,1)}
body.menu-open .mobile-menu{transform:none}
.mobile-menu a{font-size:clamp(2.5rem,12vw,5rem);line-height:.95;letter-spacing:-.065em;font-weight:780;padding:12px 0;border-bottom:1px solid rgba(11,11,10,.2)}
.progress{position:fixed;left:0;top:0;z-index:100;width:0;height:3px;background:var(--acid);pointer-events:none}
.page-wipe{position:fixed;inset:0;z-index:120;background:var(--acid);transform:translateY(102%);pointer-events:none}
.page-wipe.active{animation:pagewipe .72s cubic-bezier(.83,0,.17,1)}
@keyframes pagewipe{0%{transform:translateY(102%)}45%{transform:translateY(0)}58%{transform:translateY(0)}100%{transform:translateY(-102%)}}

/* REVEAL SYSTEM */
[data-reveal]{opacity:0;transform:translateY(34px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
[data-reveal].is-in{opacity:1;transform:none}
.line-mask{display:block;overflow:hidden;padding-bottom:.055em;margin-bottom:-.055em}
.line-mask>span{display:block;animation:heroLine .92s var(--ease) both}
.line-mask:nth-child(2)>span{animation-delay:.08s}
.line-mask:nth-child(3)>span{animation-delay:.16s}
.line-mask:nth-child(4)>span{animation-delay:.24s}
@keyframes heroLine{from{transform:translateY(108%)}to{transform:none}}
.media-reveal{clip-path:inset(8% 0 8% 0 round 18px);transform:scale(1.025);transition:clip-path 1s var(--ease),transform 1.2s var(--ease)}
.media-reveal.is-in{clip-path:inset(0 0 0 0 round 0);transform:scale(1)}

/* HERO */
.hero{min-height:100svh;background:var(--ink);color:var(--paper);padding:calc(var(--nav-h) + clamp(64px,9vh,110px)) 0 clamp(34px,5vh,60px);display:flex;align-items:flex-end;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 83% 25%,rgba(201,255,67,.14),transparent 19%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:auto,64px 64px,64px 64px;mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.3));opacity:.55}
.hero-signal{position:absolute;right:clamp(-90px,-4vw,-20px);top:22%;width:clamp(160px,20vw,340px);aspect-ratio:1;border-radius:50%;background:var(--acid);box-shadow:0 0 0 clamp(18px,3vw,44px) rgba(201,255,67,.045);will-change:transform}
.hero-signal::after{content:"";position:absolute;width:28%;aspect-ratio:1;border-radius:50%;background:var(--paper);right:12%;top:12%}
.hero-inner{position:relative;z-index:2;width:100%}
.hero-kicker{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line-dark);padding-top:14px;margin-bottom:clamp(30px,5vh,58px);color:#bebeb8}
.hero-title{max-width:1180px;position:relative}
.hero-title .serif{color:var(--acid)}
.hero-bottom{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:end;margin-top:clamp(34px,6vh,64px)}
.hero-bottom .lead{max-width:720px;margin:0;color:#d4d4cf}
.hero-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.hero-index{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line-dark);margin-top:clamp(34px,5vh,52px);padding-top:14px;color:#aaa9a4}
.hero-index span{white-space:nowrap}

/* INTRO */
.intro{background:var(--paper);padding:clamp(100px,12vw,170px) 0}
.split{display:grid;grid-template-columns:.32fr .68fr;gap:clamp(28px,5vw,70px)}
.intro .h2{max-width:1120px}
.intro .lead{max-width:780px;margin:30px 0 0}

/* CASE STORYTELLING */
.work{background:var(--paper);padding:0 0 clamp(110px,10vw,160px)}
.work-head{padding:0 0 54px;display:grid;grid-template-columns:.55fr .45fr;gap:40px;align-items:end}
.work-head .lead{margin:0;max-width:600px;justify-self:end}
.case{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(26px,5vw,72px);align-items:start;padding:0 0 clamp(120px,13vw,190px)}
.case:last-child{padding-bottom:0}
.case-media-wrap{position:sticky;top:calc(var(--nav-h) + 26px);height:calc(100svh - var(--nav-h) - 52px);min-height:560px;overflow:hidden;border-radius:3px;background:#ddd;align-self:start}
.case-media{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;will-change:transform;filter:saturate(.94) contrast(1.02)}
.case-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.38))}
.case-badge{position:absolute;left:22px;top:22px;background:var(--paper);color:var(--ink);padding:9px 12px;border-radius:999px;z-index:2}
.case-live{position:absolute;right:22px;bottom:22px;background:var(--acid);color:var(--ink);padding:12px 15px;border-radius:999px;font-size:.82rem;font-weight:800;z-index:2}
.case-copy{padding-top:clamp(12px,4vh,60px);min-height:calc(100svh - var(--nav-h) - 52px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.case-copy .micro{color:var(--muted)}
.case-copy .h2{margin:18px 0 28px}
.case-copy .lead{max-width:590px;margin:0 0 28px}
.case-facts{width:100%;border-top:1px solid var(--line);margin:24px 0 32px}
.case-fact{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}
.case-fact strong{font-size:.84rem;text-transform:uppercase;letter-spacing:.1em}
.case-fact span{font-size:.94rem;color:#55574f;line-height:1.55}
.case-commerce{background:var(--acid);padding:clamp(90px,10vw,150px) 0;margin-bottom:0}
.case-commerce .case{padding:0}
.case-commerce .case-media-wrap{background:var(--ink);color:var(--paper)}
.commerce-art{position:absolute;inset:0;padding:clamp(24px,4vw,58px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.commerce-word{font-size:clamp(4rem,10vw,10rem);line-height:.78;letter-spacing:-.09em;font-weight:800;text-transform:uppercase}
.commerce-object{position:absolute;width:26%;height:62%;left:51%;top:22%;background:linear-gradient(180deg,#f1efe7,#9e9e94);border-radius:48% 48% 22% 22% / 22% 22% 12% 12%;box-shadow:0 40px 100px rgba(0,0,0,.32);transform:rotate(7deg)}
.commerce-object::after{content:"NOVA";position:absolute;left:50%;bottom:18%;transform:translateX(-50%) rotate(-90deg);font-size:.78rem;letter-spacing:.32em;color:#111}
.commerce-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;position:relative;z-index:2}
.commerce-bottom .price{font-size:clamp(2.3rem,5vw,5rem);font-weight:800;letter-spacing:-.07em}
.case-commerce .case-copy .micro,.case-commerce .case-fact span{color:#33362d}
.case-commerce .case-facts,.case-commerce .case-fact{border-color:rgba(11,11,10,.2)}
.case-local{background:var(--ink);color:var(--paper);padding:clamp(100px,11vw,160px) 0;margin-bottom:0}
.case-local .case{padding:0}
.case-local .case-copy .micro,.case-local .case-fact span{color:#b5b5af}
.case-local .case-facts,.case-local .case-fact{border-color:var(--line-dark)}
.local-art{position:absolute;inset:0;background:var(--paper);color:var(--ink);padding:clamp(24px,4vw,54px);display:grid;grid-template-rows:auto 1fr auto;gap:30px}
.local-top{display:flex;justify-content:space-between;gap:18px}
.local-title{font-size:clamp(4rem,9vw,9rem);line-height:.8;letter-spacing:-.085em;font-weight:800;align-self:center}
.local-stages{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.local-stage{min-height:130px;padding:14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}
.local-stage.acid{background:var(--acid)}
.local-stage strong{font-size:1.05rem}

/* CAPABILITIES */
.capabilities{padding:clamp(110px,12vw,170px) 0;background:var(--paper)}
.cap-head{display:grid;grid-template-columns:.32fr .68fr;gap:40px;margin-bottom:46px}
.cap-list{border-top:1px solid var(--line)}
.cap-row{display:grid;grid-template-columns:100px minmax(260px,.72fr) 1fr 60px;gap:24px;align-items:start;padding:26px 0;border-bottom:1px solid var(--line);transition:padding .3s var(--ease),background .3s}
.cap-row:hover{padding-left:12px;padding-right:12px;background:rgba(255,255,255,.28)}
.cap-row h3{font-size:clamp(1.5rem,2.5vw,2.5rem);line-height:1;letter-spacing:-.048em;margin:0}
.cap-row p{margin:0;max-width:660px;line-height:1.68;color:#4f514a}
.cap-row .arr{font-size:1.45rem;justify-self:end;color:var(--ink)}

/* STANDARD */
.standard{background:var(--sand);padding:clamp(100px,11vw,160px) 0}
.standard .h2{max-width:1100px}
.standard .lead{max-width:760px;margin:30px 0 0}
.value-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:56px;border-top:1px solid rgba(11,11,10,.2);border-left:1px solid rgba(11,11,10,.2)}
.value{min-height:330px;padding:28px;border-right:1px solid rgba(11,11,10,.2);border-bottom:1px solid rgba(11,11,10,.2);display:flex;flex-direction:column;justify-content:space-between}
.value:nth-child(2){background:var(--acid)}
.value h3{font-size:clamp(2rem,3.2vw,3.2rem);line-height:.96;letter-spacing:-.055em;margin:0;max-width:530px}
.value p{margin:22px 0 0;max-width:570px;line-height:1.7}

/* PROCESS */
.process{background:var(--ink);color:var(--paper);padding:clamp(110px,12vw,170px) 0}
.process-grid{display:grid;grid-template-columns:.32fr .68fr;gap:40px}
.steps{border-top:1px solid var(--line-dark)}
.step{display:grid;grid-template-columns:100px minmax(220px,.7fr) 1fr;gap:24px;padding:25px 0;border-bottom:1px solid var(--line-dark)}
.step .micro{color:var(--acid)}
.step h3{margin:0;font-size:clamp(1.45rem,2.2vw,2.2rem);letter-spacing:-.045em}
.step p{margin:0;color:#b9b9b3;line-height:1.68}

/* CTA/FOOTER */
.cta{background:var(--acid);color:var(--ink);padding:clamp(100px,11vw,160px) 0}
.cta-grid{display:grid;grid-template-columns:.32fr .68fr;gap:40px}
.cta .lead{max-width:700px;margin:30px 0 0}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.footer{background:var(--ink);color:var(--paper);padding:56px 0 26px}
.footer-top{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:30px;padding-bottom:38px;border-bottom:1px solid var(--line-dark)}
.footer h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:#999994;margin:0 0 14px}
.footer a{display:block;padding:6px 0;color:#d5d5d0}
.footer-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:20px;color:#8f8f8a;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}

/* PAGE HERO */
.page-hero{min-height:72svh;background:var(--ink);color:var(--paper);padding:calc(var(--nav-h) + 100px) 0 70px;display:flex;align-items:flex-end;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-6vw;bottom:-15vw;width:36vw;aspect-ratio:1;border-radius:50%;background:var(--acid)}
.page-hero .container{position:relative;z-index:2}
.page-hero .lead{max-width:760px;margin:28px 0 0;color:#cfcfc9}
.page-main{padding:clamp(90px,10vw,140px) 0;background:var(--paper)}

/* SERVICES PAGE */
.service-block{display:grid;grid-template-columns:110px .75fr 1.25fr;gap:30px;padding:34px 0;border-top:1px solid var(--line)}
.service-block:last-child{border-bottom:1px solid var(--line)}
.service-block h2{font-size:clamp(2rem,3.3vw,3.6rem);line-height:.95;letter-spacing:-.055em;margin:0}
.service-block p{margin:0;color:#4f514a;line-height:1.75}
.deliverables{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.deliverables span{border:1px solid var(--line);border-radius:999px;padding:9px 11px;font-size:.82rem}

/* WORK PAGE */
.work-list{display:grid;gap:90px}
.work-card{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}
.work-card:nth-child(even){grid-template-columns:.95fr 1.05fr}.work-card:nth-child(even) .work-card-media{order:2}
.work-card-media{aspect-ratio:4/3;overflow:hidden;background:#ddd;position:relative}
.work-card-media img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.work-card:hover img{transform:scale(1.035)}
.work-card-copy h2{font-size:clamp(2.5rem,4.7vw,5.2rem);line-height:.9;letter-spacing:-.065em;margin:14px 0 22px}
.work-card-copy p{max-width:650px;line-height:1.75;color:#4e5049}
.work-tags{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.work-tags span{border:1px solid var(--line);padding:8px 10px;border-radius:999px;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}
.concept-visual{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:var(--acid)}
.concept-visual.dark{background:var(--ink);color:var(--paper)}
.concept-visual .big{font-size:clamp(4rem,8vw,8rem);line-height:.8;letter-spacing:-.08em;font-weight:800}

/* STUDIO */
.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.studio-card{border:1px solid var(--line);padding:30px;min-height:360px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.2)}
.studio-card:nth-child(2){background:var(--acid)}
.studio-card h3{font-size:clamp(2rem,3.1vw,3.2rem);line-height:.96;letter-spacing:-.055em;margin:0}
.studio-card p{max-width:560px;line-height:1.75;margin:24px 0 0}
.studio-values{margin-top:80px;border-top:1px solid var(--line)}
.studio-value{display:grid;grid-template-columns:100px .7fr 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.studio-value h3{margin:0;font-size:1.5rem;letter-spacing:-.04em}.studio-value p{margin:0;color:#55574f;line-height:1.7}

/* FORM */
.form-shell{display:grid;grid-template-columns:.78fr 1.22fr;gap:46px;align-items:start}
.intake-aside{position:sticky;top:calc(var(--nav-h) + 30px)}
.intake-aside .h2{font-size:clamp(2.4rem,4vw,4.6rem)}
.intake-aside .lead{margin:25px 0 0;color:#4f514a}
.intake-list{margin-top:32px;border-top:1px solid var(--line)}
.intake-list div{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}
.form-card{border:1px solid var(--line);background:#f8f5ed;padding:clamp(22px,3vw,36px)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:8px}.field.full{grid-column:1/-1}
label{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;font-weight:750}
input,select,textarea{width:100%;border:0;border-bottom:1px solid rgba(11,11,10,.28);background:transparent;color:var(--ink);border-radius:0;padding:13px 2px;outline:none}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{border-bottom-color:var(--ink)}
.form-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-top:28px}.small{font-size:.84rem;color:#696b64;line-height:1.65;max-width:500px}

/* SECTORS */
.sector-index{background:var(--paper);padding:clamp(90px,10vw,140px) 0}
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sector-card{border:1px solid var(--line);min-height:270px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.18);transition:transform .3s var(--ease),background .3s}
.sector-card:hover{transform:translateY(-4px);background:#fff}.sector-card:nth-child(4n+2){background:var(--acid)}.sector-card h3{font-size:1.7rem;line-height:1;letter-spacing:-.048em;margin:16px 0 12px}.sector-card p{margin:0;color:#56584f;line-height:1.62}.sector-card .arr{font-size:1.5rem}
.sector-hero{min-height:70svh;background:var(--ink);color:var(--paper);padding:calc(var(--nav-h) + 100px) 0 70px;display:flex;align-items:flex-end}.sector-hero .lead{max-width:790px;color:#cecec8;margin:26px 0 0}.sector-hero .display{max-width:1220px}
.sector-promise{background:var(--acid);padding:clamp(80px,9vw,130px) 0}.sector-promise .h2{max-width:1100px;margin-top:18px}
.sector-details{background:var(--paper);padding:clamp(90px,10vw,140px) 0}.sector-details-grid{display:grid;grid-template-columns:.3fr .7fr;gap:40px}.sector-points{border-top:1px solid var(--line)}.sector-point{display:grid;grid-template-columns:80px .72fr 1.28fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.sector-point h3{margin:0;font-size:1.45rem;letter-spacing:-.04em}.sector-point p{margin:0;color:#55574f;line-height:1.68}

/* PRIVACY */
.privacy{padding:calc(var(--nav-h) + 90px) 0 100px;background:var(--paper)}.privacy article{max-width:880px}.privacy h1{font-size:clamp(3rem,7vw,7rem);line-height:.9;letter-spacing:-.065em;margin:0 0 44px}.privacy h2{font-size:1.6rem;margin:34px 0 10px}.privacy p,.privacy li{line-height:1.76}.privacy ul{padding-left:20px}

/* ACCESSIBILITY */
:focus-visible{outline:3px solid var(--acid);outline-offset:4px}.sr-only{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:1100px){
  .case{grid-template-columns:1fr;gap:28px}.case-media-wrap{position:relative;top:auto;height:auto;min-height:0;aspect-ratio:16/10}.case-copy{min-height:0;padding-top:0}.work-head{grid-template-columns:1fr}.work-head .lead{justify-self:start}.cap-head,.split,.process-grid,.cta-grid{grid-template-columns:1fr}.cap-row{grid-template-columns:82px .8fr 1.2fr 50px}.value-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1.3fr 1fr 1fr}.footer-top>div:last-child{display:none}.work-card,.work-card:nth-child(even){grid-template-columns:1fr}.work-card:nth-child(even) .work-card-media{order:0}.form-shell{grid-template-columns:1fr}.intake-aside{position:relative;top:auto}.sector-grid{grid-template-columns:repeat(2,1fr)}.sector-details-grid{grid-template-columns:1fr}.studio-grid{grid-template-columns:1fr}}
@media(max-width:760px){
  :root{--nav-h:68px;--gutter:20px}.nav-links,.nav-cta{display:none}.menu-btn{display:block}.display{font-size:clamp(3.15rem,15vw,5.1rem)}.h1{font-size:clamp(2.7rem,13vw,4.6rem)}.h2{font-size:clamp(2.2rem,11vw,3.7rem)}.hero{min-height:auto;padding-top:calc(var(--nav-h) + 70px)}.hero-signal{width:160px;right:-80px;top:26%}.hero-kicker{flex-direction:column;align-items:flex-start;margin-bottom:32px}.hero-bottom{grid-template-columns:1fr;gap:24px;margin-top:34px}.hero-actions{justify-content:flex-start}.hero-index{overflow:hidden;gap:14px}.intro,.capabilities{padding:86px 0}.split,.cap-head{gap:24px}.case{padding-bottom:96px}.case-media-wrap{aspect-ratio:4/5}.case-copy .h2{margin:15px 0 22px}.case-fact{grid-template-columns:90px 1fr}.case-commerce,.case-local{padding:84px 0;margin-bottom:0}.commerce-art,.local-art{padding:22px}.commerce-object{width:36%;height:55%;left:52%;top:25%}.local-stages{grid-template-columns:1fr 1fr}.local-stage{min-height:100px}.cap-row{grid-template-columns:56px 1fr 36px;gap:14px}.cap-row p{grid-column:2/4}.cap-row .arr{grid-column:3;grid-row:1}.standard,.process,.cta{padding:84px 0}.process-grid,.cta-grid{gap:26px}.step{grid-template-columns:58px 1fr;gap:14px}.step p{grid-column:2}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.page-hero,.sector-hero{min-height:62svh;padding-top:calc(var(--nav-h) + 80px)}.page-main,.sector-index,.sector-details{padding:78px 0}.service-block{grid-template-columns:1fr;gap:12px;padding:28px 0}.work-list{gap:70px}.work-card-media{aspect-ratio:4/5}.studio-value{grid-template-columns:60px 1fr;gap:14px}.studio-value p{grid-column:2}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.sector-grid{grid-template-columns:1fr}.sector-point{grid-template-columns:1fr;gap:8px}.footer-bottom{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.line-mask>span{transform:none!important}[data-reveal]{opacity:1!important;transform:none!important}.media-reveal{clip-path:none!important;transform:none!important}}

section[id]{scroll-margin-top:var(--nav-h)}

/* =========================================================
   V8 — AWARD-CRAFT LAYER
   Native view transitions, scroll timelines, realtime signal,
   spotlight interactions and performance-safe motion.
   ========================================================= */
@view-transition { navigation: auto; }
.wordmark { view-transition-name: nova-wordmark; }
main { view-transition-name: nova-main; }
::view-transition-old(nova-main){animation:v8-out .34s cubic-bezier(.76,0,.24,1) both}
::view-transition-new(nova-main){animation:v8-in .54s cubic-bezier(.22,1,.36,1) both}
::view-transition-old(nova-wordmark),::view-transition-new(nova-wordmark){animation-duration:.42s}
@keyframes v8-out{to{opacity:0;transform:translateY(-18px) scale(.992);filter:blur(7px)}}
@keyframes v8-in{from{opacity:0;transform:translateY(22px) scale(.994);filter:blur(9px)}to{opacity:1;transform:none;filter:none}}

.hero{isolation:isolate}
.hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.18;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='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.signal-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.92;mix-blend-mode:screen}
.hero-signal{z-index:1;transition:opacity .7s var(--ease),filter .7s var(--ease)}
.hero.webgl-ready .hero-signal{opacity:.16;filter:blur(16px)}
.hero-inner{z-index:3}
.hero-coordinate{position:absolute;right:var(--gutter);bottom:26px;z-index:4;display:flex;gap:18px;color:#8e9089;writing-mode:vertical-rl;transform:rotate(180deg);pointer-events:none}
.hero-coordinate span:last-child{color:var(--acid)}
.kinetic-word{display:inline-block;transform-origin:left center;will-change:transform,letter-spacing}

/* More directional, less generic static frames */
.case-media-wrap{--spot-x:50%;--spot-y:50%;--spot-a:0;box-shadow:0 28px 80px rgba(17,18,15,.09);transition:box-shadow .45s var(--ease),transform .45s var(--ease)}
.case-media-wrap::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle 28rem at var(--spot-x) var(--spot-y),rgba(255,255,255,.24),rgba(255,255,255,.04) 25%,transparent 60%);opacity:var(--spot-a);transition:opacity .3s ease;mix-blend-mode:soft-light}
.case-media-wrap:hover{box-shadow:0 36px 100px rgba(17,18,15,.15)}
.case-local .case-media-wrap::after,.case-commerce .case-media-wrap::after{background:radial-gradient(circle 30rem at var(--spot-x) var(--spot-y),rgba(201,255,67,.22),transparent 62%);mix-blend-mode:screen}
.case-badge,.case-live{z-index:3}

/* subtle editorial metadata rail */
.case-copy::before{content:"";display:block;width:42px;height:3px;background:currentColor;margin-bottom:clamp(24px,4vh,46px);opacity:.16}
.case-commerce .case-copy::before{background:var(--ink);opacity:.28}
.case-local .case-copy::before{background:var(--acid);opacity:1}

/* Capability rows behave like a continuous instrument, not cards */
.cap-row{position:relative;overflow:hidden;isolation:isolate}
.cap-row::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--acid);transform:scaleY(0);transform-origin:bottom;transition:transform .48s var(--ease)}
.cap-row:hover::before{transform:scaleY(1)}
.cap-row:hover .micro,.cap-row:hover p{color:rgba(11,11,10,.7)}
.cap-row:hover .arr{transform:translate(5px,-5px)}
.cap-row .arr{transition:transform .38s var(--ease)}

/* Pointer-following project cursor — desktop only */
.project-cursor{position:fixed;left:0;top:0;z-index:110;width:82px;height:82px;border-radius:50%;background:var(--acid);color:var(--ink);display:grid;place-items:center;text-align:center;font-size:.66rem;line-height:1.05;letter-spacing:.12em;text-transform:uppercase;font-weight:800;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.65);transition:opacity .2s,transform .22s var(--ease);box-shadow:0 12px 40px rgba(0,0,0,.18)}
.project-cursor.is-on{opacity:1;transform:translate(-50%,-50%) scale(1)}

/* richer button behavior without gimmick */
.btn{position:relative;overflow:hidden;will-change:transform}
.btn::after{content:"";position:absolute;inset:-1px;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.38) 48%,transparent 72%);transform:translateX(-140%);transition:transform .62s var(--ease);pointer-events:none}
.btn:hover::after{transform:translateX(140%)}
.btn.ink::after{background:linear-gradient(110deg,transparent 20%,rgba(201,255,67,.28) 48%,transparent 72%)}

/* 2026 browser-native scroll choreography; safe fallback remains existing IO */
@supports (animation-timeline: view()) {
  .intro .h2,.standard .h2,.cap-head .h2{animation:v8-type-in linear both;animation-timeline:view();animation-range:entry 0% cover 42%}
  .case-media{animation:v8-media-breathe linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  .case-copy{animation:v8-copy-drift linear both;animation-timeline:view();animation-range:entry 0% cover 45%}
  .cap-row{animation:v8-row-in linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
  @keyframes v8-type-in{from{opacity:.25;transform:translateY(46px);letter-spacing:-.075em}to{opacity:1;transform:none;letter-spacing:-.058em}}
  @keyframes v8-media-breathe{0%{scale:1.08}45%{scale:1.015}100%{scale:1.06}}
  @keyframes v8-copy-drift{from{transform:translateY(46px);opacity:.35}to{transform:none;opacity:1}}
  @keyframes v8-row-in{from{opacity:.3;transform:translateY(22px)}to{opacity:1;transform:none}}
  .kinetic-word{animation:v8-kinetic-word linear both;animation-timeline:scroll(root block);animation-range:0 36vh}
  @keyframes v8-kinetic-word{from{transform:skewX(0deg) translateX(0);letter-spacing:-.035em}to{transform:skewX(-5deg) translateX(.035em);letter-spacing:-.075em}}
}

/* smoother page entry after native cross-document transition */
@supports (view-transition-name: nova-main){.page-wipe{display:none}}

@media (pointer:fine){.case-media-wrap{cursor:none}}
@media (max-width:760px){
  .signal-canvas{opacity:.65}
  .hero-coordinate{display:none}
  .project-cursor{display:none!important}
  .case-media-wrap::after{display:none}
}
@media(prefers-reduced-motion:reduce){
  .signal-canvas{display:none!important}
  .hero-signal{opacity:1!important;filter:none!important}
  .project-cursor{display:none!important}
  ::view-transition-old(*),::view-transition-new(*){animation:none!important}
}

/* =========================================================
   V9 — SIGNATURE MOMENTS / SONIC LAYER
   Same V8 world, deliberately exaggerated in a few places.
   ========================================================= */

/* branded sonic console ------------------------------------------------ */
.sound-console{position:fixed;left:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,26px);z-index:96;display:flex;align-items:center;gap:11px;min-height:45px;padding:8px 13px 8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(11,11,10,.82);color:var(--paper);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 15px 45px rgba(0,0,0,.18);cursor:pointer;transition:background .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);user-select:none}
.sound-console:hover{transform:translateY(-2px);border-color:rgba(201,255,67,.48)}
.sound-console[aria-pressed="true"]{background:rgba(11,11,10,.94);border-color:rgba(201,255,67,.5)}
.sound-orb{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(201,255,67,.1);border:1px solid rgba(201,255,67,.28);position:relative;overflow:hidden}
.sound-orb::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 0 rgba(201,255,67,.5);transition:box-shadow .35s}
.sound-console[aria-pressed="true"] .sound-orb::before{box-shadow:0 0 0 8px rgba(201,255,67,.08),0 0 18px rgba(201,255,67,.55)}
.sound-meta{display:grid;gap:2px;text-align:left}.sound-meta strong{font-size:.67rem;line-height:1;text-transform:uppercase;letter-spacing:.14em}.sound-meta span{font-size:.58rem;line-height:1;color:#969990;text-transform:uppercase;letter-spacing:.13em}
.sound-bars{display:flex;align-items:center;gap:2px;height:20px;margin-left:2px}.sound-bars i{display:block;width:2px;height:5px;border-radius:999px;background:var(--acid);transform-origin:center;opacity:.45}.sound-console[aria-pressed="true"] .sound-bars i{animation:sonicBars .85s ease-in-out infinite alternate;opacity:1}.sound-bars i:nth-child(2){animation-delay:-.38s!important}.sound-bars i:nth-child(3){animation-delay:-.61s!important}.sound-bars i:nth-child(4){animation-delay:-.17s!important}.sound-bars i:nth-child(5){animation-delay:-.48s!important}
@keyframes sonicBars{0%{height:4px}35%{height:15px}70%{height:8px}100%{height:19px}}

/* hero responds subtly when the custom soundtrack is active */
body.sound-on .hero-signal{filter:saturate(1.08) brightness(1.06)}
body.sound-on .wordmark i{box-shadow:0 0 0 7px rgba(201,255,67,.07),0 0 18px rgba(201,255,67,.35)}

/* full-screen signature choreography ---------------------------------- */
.nova-moment{height:360svh;position:relative;background:var(--ink);color:var(--paper);isolation:isolate}
.nova-moment-sticky{position:sticky;top:0;height:100svh;overflow:hidden;background:var(--ink);display:grid;align-items:center;isolation:isolate}
.nova-moment-sticky::after{content:"";position:absolute;inset:0;z-index:8;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:clamp(44px,5vw,78px) clamp(44px,5vw,78px);mask-image:linear-gradient(180deg,transparent,rgba(0,0,0,.7) 18%,rgba(0,0,0,.7) 82%,transparent);mix-blend-mode:soft-light;opacity:.5}
.moment-iris,.moment-eclipse{position:absolute;left:50%;top:50%;width:140vmax;height:140vmax;border-radius:50%;transform:translate(-50%,-50%) scale(.008);transition:transform 1s cubic-bezier(.76,0,.24,1);pointer-events:none}
.moment-iris{z-index:1;background:var(--acid);box-shadow:0 0 140px rgba(201,255,67,.24)}
.moment-eclipse{z-index:2;background:var(--ink);transition-delay:.04s}
.nova-moment[data-phase="1"] .moment-iris,.nova-moment[data-phase="2"] .moment-iris,.nova-moment[data-phase="3"] .moment-iris{transform:translate(-50%,-50%) scale(1)}
.nova-moment[data-phase="3"] .moment-eclipse{transform:translate(-50%,-50%) scale(1)}
.moment-orbit{position:absolute;left:50%;top:50%;z-index:4;border:1px solid rgba(255,255,255,.13);border-radius:50%;pointer-events:none;transition:border-color .6s,opacity .6s;animation:momentOrbit 18s linear infinite}
.orbit-a{width:64vmin;height:64vmin;transform:translate(-50%,-50%) rotate(18deg)}
.orbit-b{width:88vmin;height:38vmin;transform:translate(-50%,-50%) rotate(-22deg);animation-duration:26s;animation-direction:reverse}
.nova-moment[data-phase="1"] .moment-orbit,.nova-moment[data-phase="2"] .moment-orbit{border-color:rgba(11,11,10,.18)}
@keyframes momentOrbit{to{rotate:1turn}}
.moment-layout{position:relative;z-index:10;min-height:100svh;display:grid;grid-template-rows:auto 1fr auto;padding-top:calc(var(--nav-h) + 26px);padding-bottom:34px}
.moment-kicker{display:flex;justify-content:space-between;gap:20px;transition:color .5s}
.nova-moment[data-phase="1"] .moment-kicker,.nova-moment[data-phase="2"] .moment-kicker{color:rgba(11,11,10,.64)}
.moment-stage{position:relative;display:grid;place-items:center;min-height:0;perspective:1100px}
.moment-word{position:absolute;inset:auto;font-size:clamp(5rem,15.4vw,14.6rem);line-height:.76;letter-spacing:-.085em;font-weight:800;white-space:nowrap;opacity:0;transform:translateY(42%) rotateX(-32deg) scale(.88);filter:blur(16px);transition:opacity .72s var(--ease),transform .85s cubic-bezier(.16,1,.3,1),filter .72s var(--ease),color .45s;will-change:transform,opacity,filter}
.moment-word.serif{font-weight:400;letter-spacing:-.065em}
.moment-word.is-active{opacity:1;transform:translateY(0) rotateX(0) scale(1);filter:blur(0)}
.nova-moment[data-phase="1"] .moment-word,.nova-moment[data-phase="2"] .moment-word{color:var(--ink)}
.moment-copy{width:min(680px,70vw);justify-self:end;position:relative;min-height:74px;transition:color .5s}
.moment-copy p{position:absolute;right:0;bottom:0;margin:0;font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.58;letter-spacing:-.025em;opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease),transform .65s var(--ease);text-align:right}
.moment-copy p.is-active{opacity:1;transform:none}
.nova-moment[data-phase="1"] .moment-copy,.nova-moment[data-phase="2"] .moment-copy{color:var(--ink)}
.moment-meter{position:absolute;left:var(--gutter);bottom:34px;width:min(290px,24vw);height:2px;background:rgba(255,255,255,.15);overflow:hidden}
.moment-meter i{display:block;width:100%;height:100%;background:var(--acid);transform-origin:left;transform:scaleX(var(--moment-p,0))}
.nova-moment[data-phase="1"] .moment-meter,.nova-moment[data-phase="2"] .moment-meter{background:rgba(11,11,10,.18)}.nova-moment[data-phase="1"] .moment-meter i,.nova-moment[data-phase="2"] .moment-meter i{background:var(--ink)}
.moment-caption{position:absolute;z-index:11;right:var(--gutter);bottom:28px;display:flex;gap:20px;color:#888b84}.nova-moment[data-phase="1"] .moment-caption,.nova-moment[data-phase="2"] .moment-caption{color:rgba(11,11,10,.55)}

/* micro 'impossible' flash when the brand mark is touched -------------- */
.brand-pulse{position:fixed;z-index:79;pointer-events:none;width:12px;height:12px;border-radius:50%;background:var(--acid);transform:translate(-50%,-50%) scale(0);opacity:0;mix-blend-mode:difference}
.brand-pulse.fire{animation:brandPulse .9s cubic-bezier(.22,1,.36,1)}
@keyframes brandPulse{0%{opacity:.9;transform:translate(-50%,-50%) scale(0)}45%{opacity:.45;transform:translate(-50%,-50%) scale(40)}100%{opacity:0;transform:translate(-50%,-50%) scale(75)}}

/* stronger page-wipe after V9 interaction, fallback only */
.page-wipe::after{content:"NOVA / 11";position:absolute;right:var(--gutter);bottom:30px;color:var(--ink);font-size:.7rem;font-weight:800;letter-spacing:.16em}

@media(max-width:760px){
  .sound-console{left:12px;bottom:12px;min-height:42px;padding:7px 10px 7px 8px}.sound-meta span{display:none}.sound-bars{display:none}
  .nova-moment{height:300svh}.moment-layout{padding-top:calc(var(--nav-h) + 20px);padding-bottom:24px}.moment-word{font-size:clamp(4.3rem,22vw,7.4rem);white-space:normal;text-align:center;line-height:.8}.moment-copy{width:100%;min-height:110px}.moment-copy p{text-align:left;font-size:1rem}.moment-meter{left:var(--gutter);bottom:22px;width:30vw}.moment-caption{display:none}.orbit-a{width:78vmin;height:78vmin}.orbit-b{width:104vmin;height:48vmin}
}
@media(prefers-reduced-motion:reduce){
  .nova-moment{height:auto}.nova-moment-sticky{position:relative;min-height:90svh}.moment-iris,.moment-eclipse,.moment-orbit{display:none}.moment-word{display:none!important}.moment-word:first-child{display:block!important;opacity:1!important;position:relative!important;transform:none!important;filter:none!important}.moment-copy p{display:none!important}.moment-copy p:first-child{display:block!important;opacity:1!important;position:relative!important;transform:none!important}.sound-bars i{animation:none!important}
}

/* =========================================================
   V9.1 — HORIZONTAL SIGNATURE DIRECTOR
   Vertical input, horizontal cinematic storytelling.
   ========================================================= */
html,body{overflow-x:clip}
main{overflow:visible}

.nova-moment{height:430svh;position:relative;background:var(--ink);color:var(--paper);isolation:isolate;overflow:visible}
.nova-moment-sticky{position:sticky;top:0;height:100svh;overflow:clip;background:var(--ink);display:block;isolation:isolate;contain:paint}
.nova-moment-sticky::after{content:"";position:absolute;inset:0;z-index:20;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);background-size:clamp(54px,6vw,92px) clamp(54px,6vw,92px);mix-blend-mode:soft-light;opacity:.36;mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent)}
.moment-ambient{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.moment-ambient i{position:absolute;border:1px solid rgba(201,255,67,.16);border-radius:50%;will-change:transform}
.moment-ambient i:nth-child(1){width:72vmin;height:72vmin;left:-18vmin;top:14vmin;animation:momentFloatA 16s linear infinite}
.moment-ambient i:nth-child(2){width:48vmin;height:92vmin;right:-10vmin;top:-10vmin;transform:rotate(28deg);animation:momentFloatB 22s linear infinite reverse}
.moment-ambient i:nth-child(3){width:18vmin;height:18vmin;right:20vw;bottom:12vh;background:radial-gradient(circle,var(--acid) 0 3%,transparent 4%);border-color:rgba(255,255,255,.08);animation:momentFloatA 10s ease-in-out infinite alternate}
@keyframes momentFloatA{50%{transform:translate3d(5vw,-3vh,0) rotate(18deg)}100%{transform:translate3d(0,0,0) rotate(1turn)}}
@keyframes momentFloatB{50%{transform:translate3d(-4vw,6vh,0) rotate(190deg)}100%{transform:translate3d(0,0,0) rotate(388deg)}}

.moment-track{position:relative;z-index:5;height:100%;display:flex;flex-wrap:nowrap;width:max-content;transform:translate3d(0,0,0);will-change:transform;backface-visibility:hidden}
.moment-panel{position:relative;flex:0 0 100vw;width:100vw;height:100svh;overflow:hidden;display:flex;align-items:stretch}
.moment-panel::before{content:"";position:absolute;inset:auto auto -32vmin -18vmin;width:72vmin;height:72vmin;border-radius:50%;border:1px solid currentColor;opacity:.09;transform:rotate(-12deg)}
.moment-panel::after{content:"";position:absolute;right:-14vmin;top:-26vmin;width:68vmin;height:68vmin;border-radius:50%;border:1px solid currentColor;opacity:.08}
.moment-panel-dark{background:#0b0b0a;color:var(--paper)}
.moment-panel-acid{background:var(--acid);color:var(--ink)}
.moment-panel-paper{background:var(--paper);color:var(--ink)}
.moment-panel-final{background:var(--ink);color:var(--paper)}
.moment-panel-final::before{background:var(--acid);border:0;opacity:.88;width:38vmin;height:38vmin;left:auto;right:-7vmin;bottom:-12vmin;box-shadow:0 0 130px rgba(201,255,67,.12)}

.moment-panel-inner{height:100%;padding-top:calc(var(--nav-h) + 30px);padding-bottom:28px;display:grid;grid-template-rows:auto 1fr auto;position:relative;z-index:2}
.moment-panel-top,.moment-panel-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;opacity:.58}
.moment-panel-main{align-self:center;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:clamp(36px,7vw,120px);align-items:end}
.moment-panel-word{font-size:clamp(5rem,15vw,14.4rem);line-height:.76;letter-spacing:-.09em;font-weight:800;white-space:nowrap;transform:translate3d(var(--panel-word-x,0),0,0) rotate(var(--panel-word-r,0deg));will-change:transform;transition:filter .3s}
.moment-panel-word.serif{font-weight:400;letter-spacing:-.065em}
.moment-panel-main p{margin:0 0 .2em;font-size:clamp(1.02rem,1.5vw,1.32rem);line-height:1.55;letter-spacing:-.026em;max-width:610px;justify-self:end}
.moment-panel-acid .moment-panel-top,.moment-panel-acid .moment-panel-bottom,.moment-panel-paper .moment-panel-top,.moment-panel-paper .moment-panel-bottom{opacity:.48}

.moment-fixed-ui{position:absolute;inset:0;z-index:30;pointer-events:none}
.moment-meter{position:absolute;left:var(--gutter);bottom:26px;width:min(310px,24vw);height:2px;background:rgba(255,255,255,.18);overflow:hidden;mix-blend-mode:difference}
.moment-meter i{display:block;width:100%;height:100%;background:#fff;transform-origin:left;transform:scaleX(var(--moment-p,0));will-change:transform}
.moment-caption{position:absolute;right:var(--gutter);bottom:22px;display:flex;align-items:center;gap:24px;color:#fff;mix-blend-mode:difference}

/* subtle speed lines during the lateral passage */
.nova-moment.is-moving .moment-panel-word{filter:blur(var(--moment-blur,0px))}

@media(max-width:900px){
  .moment-panel-inner{padding-top:calc(var(--nav-h) + 22px);padding-bottom:22px}
  .moment-panel-main{grid-template-columns:1fr;gap:28px;align-content:center}
  .moment-panel-word{font-size:clamp(4.5rem,18vw,9rem);white-space:normal;line-height:.8}
  .moment-panel-main p{justify-self:start;max-width:650px}
  .moment-caption span:last-child{display:none}
  .moment-meter{width:36vw}
}
@media(max-width:620px){
  .nova-moment{height:390svh}
  .moment-panel-inner{padding-top:calc(var(--nav-h) + 18px);padding-bottom:78px}
  .moment-panel-main{align-self:center;gap:22px}
  .moment-panel-word{font-size:clamp(4.1rem,22vw,7.3rem)}
  .moment-panel-main p{font-size:1rem;line-height:1.58;max-width:90%}
  .moment-panel-bottom{display:none}
  .moment-meter{left:var(--gutter);bottom:64px;width:42vw}
  .moment-caption{right:var(--gutter);bottom:60px}
  .moment-ambient i:nth-child(1){width:94vmin;height:94vmin}.moment-ambient i:nth-child(2){width:72vmin;height:116vmin}
}
@media(prefers-reduced-motion:reduce){
  .nova-moment{height:auto!important}
  .nova-moment-sticky{position:relative;height:auto;overflow:visible}
  .moment-track{display:block!important;width:100%!important;transform:none!important}
  .moment-panel{width:100%;height:auto;min-height:78svh}
  .moment-panel-inner{min-height:78svh}
  .moment-fixed-ui,.moment-ambient{display:none!important}
}

/* ============================== V10 / APEX ============================== */

/* SKIP LINK */
.skip-link{position:fixed;left:14px;top:-60px;z-index:300;background:var(--acid);color:var(--ink);padding:12px 18px;border-radius:999px;font-size:.85rem;font-weight:800;transition:top .25s var(--ease)}
.skip-link:focus{top:14px}

/* PRELOADER — one orchestrated entrance, once per session (home) */
.preloader{position:fixed;inset:0;z-index:220;background:var(--ink);color:var(--paper);display:none;flex-direction:column;justify-content:space-between;padding:clamp(22px,4vw,48px) var(--gutter)}
html.is-loading .preloader{display:flex}
html.is-loading{overflow:hidden}
.preloader.is-done{transform:translateY(-102%);transition:transform .72s cubic-bezier(.83,0,.17,1)}
.preloader-top{display:flex;justify-content:space-between;align-items:center;color:#8e9089}
.preloader-mark{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:-.045em;color:var(--paper)}
.preloader-mark i{width:9px;height:9px;border-radius:50%;background:var(--acid)}
.preloader-count{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:clamp(4.6rem,15vw,12rem);line-height:.85;letter-spacing:-.05em;color:var(--acid);align-self:flex-end;font-variant-numeric:tabular-nums}
.preloader-bar{display:block;height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden;margin-top:clamp(16px,3vh,28px)}
.preloader-bar i{display:block;height:100%;width:0;background:var(--acid)}
html.is-loading .line-mask>span{animation-play-state:paused}
html:not(.is-loading) .line-mask>span{animation-play-state:running}

/* ORIGIN — the studio's root story */
.origin{background:var(--ink);color:var(--paper);padding:clamp(100px,12vw,180px) 0;position:relative;overflow:hidden}
.origin::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 88%,rgba(201,255,67,.09),transparent 34%);pointer-events:none}
.origin .h2{max-width:1180px}
.origin .lead{max-width:820px;margin:30px 0 0;color:#c9c9c3}
.origin-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-dark);border-block:1px solid var(--line-dark);margin-top:clamp(44px,6vw,72px)}
.origin-fact{background:var(--ink);padding:26px 26px 30px 0;display:flex;flex-direction:column;gap:12px}
.origin-fact+.origin-fact{padding-left:26px}
.origin-fact .micro{color:#8e9089}
.origin-fact p{margin:0;color:#d4d4cf;font-size:.98rem;line-height:1.6;letter-spacing:-.012em;max-width:34ch}
.origin-actions{margin-top:clamp(30px,4vw,46px)}
.origin .btn.ghost{color:var(--paper)}
.origin .btn.ghost:hover{background:rgba(255,255,255,.06)}

/* PROOF — honest facts + infrastructure, no borrowed logos */
.proof{margin-top:clamp(56px,7vw,92px);border-top:1px solid var(--line);padding-top:clamp(30px,4vw,44px);display:grid;gap:26px}
.proof-row{display:grid;grid-template-columns:.32fr .68fr;gap:clamp(28px,5vw,70px);align-items:start}
.proof-row .micro{color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-size:.86rem;font-weight:650;letter-spacing:-.012em;color:var(--text);background:transparent;transition:border-color .25s,background .25s}
.chip:hover{border-color:var(--ink)}
.chip.solid{background:var(--ink);border-color:var(--ink);color:var(--paper)}

/* MARQUEE — one slow signal band */
.marquee{background:var(--ink);color:var(--paper);overflow:hidden;padding:clamp(26px,3.4vw,44px) 0;border-block:1px solid var(--line-dark)}
.marquee-track{display:flex;width:max-content;gap:0;animation:marquee 34s linear infinite;will-change:transform}
.marquee-seq{display:flex;align-items:center;white-space:nowrap;font-size:clamp(1.9rem,4.6vw,4rem);line-height:1;letter-spacing:-.055em;font-weight:760;padding-right:.6em}
.marquee-seq em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.035em}
.marquee-seq i{font-style:normal;color:var(--acid);padding:0 .5em;font-weight:400}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media (prefers-reduced-motion: reduce){.marquee-track{animation:none}}

/* IMAGE FALLBACK — never show a broken case */
.img-fallback{background:linear-gradient(150deg,#1a1b17,#2c2e26 55%,#191a15)!important;display:flex;align-items:flex-end}
.img-fallback::after{content:attr(data-fallback);font-size:clamp(2rem,4.6vw,4.4rem);line-height:.92;letter-spacing:-.06em;font-weight:760;color:var(--paper);padding:26px;opacity:.9}

/* COMMITMENTS */
.commitments{background:var(--paper);padding:0 0 clamp(90px,10vw,140px)}
.commitments-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.commitment{background:var(--paper);padding:clamp(22px,3vw,34px);display:flex;flex-direction:column;gap:14px}
.commitment .micro{color:var(--muted)}
.commitment h3{margin:0;font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.2;letter-spacing:-.035em;font-weight:720}
.commitment p{margin:0;color:var(--muted);font-size:.96rem;line-height:1.6;letter-spacing:-.012em}

/* FAQ */
.faq{background:var(--paper);padding:0 0 clamp(100px,11vw,160px)}
.faq-head{display:grid;grid-template-columns:.32fr .68fr;gap:clamp(28px,5vw,70px);margin-bottom:clamp(30px,4vw,48px)}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:clamp(20px,2.6vw,30px) 0;font-size:clamp(1.15rem,1.9vw,1.65rem);letter-spacing:-.035em;font-weight:700}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:"Instrument Serif",Georgia,serif;font-size:1.6em;font-weight:400;line-height:1;transition:transform .35s var(--ease);flex:none}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:#3c3e37}
.faq-body{padding:0 0 clamp(22px,2.8vw,32px);max-width:760px}
.faq-body p{margin:0;color:#4a4c45;font-size:1rem;line-height:1.7;letter-spacing:-.012em}

/* FOOTER CLOCK */
.footer-bottom [data-local-time]{color:var(--acid);font-variant-numeric:tabular-nums}

/* RESPONSIVE / V10 */
@media (max-width: 960px){
  .origin-facts{grid-template-columns:1fr}
  .origin-fact,.origin-fact+.origin-fact{padding:22px 0}
  .proof-row,.faq-head{grid-template-columns:1fr;gap:16px}
  .commitments-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  .preloader{display:none!important}
}

/* =========================================================
   V11 — DOMAIN LAUNCH / CONTENT + SEARCH + QUANT
   ========================================================= */

/* production overlap hardening from V9.2 */
@media(min-width:761px){
  .hero-actions{padding-right:72px}
  .hero-coordinate{right:8px;bottom:92px}
}

/* signature panel rings: independent motion, never overwritten by track transform */
.moment-panel::before{
  transform:translate3d(0,0,0) rotate(-12deg);
  transform-origin:center;
  animation:v11PanelRingA 26s linear infinite;
  will-change:transform,opacity;
}
.moment-panel::after{
  transform:translate3d(0,0,0) rotate(8deg);
  transform-origin:center;
  animation:v11PanelRingB 34s linear infinite reverse;
  will-change:transform,opacity;
}
@keyframes v11PanelRingA{
  0%{transform:translate3d(0,0,0) rotate(-12deg);opacity:.075}
  50%{transform:translate3d(1.2vw,-1.4vh,0) rotate(168deg);opacity:.125}
  100%{transform:translate3d(0,0,0) rotate(348deg);opacity:.075}
}
@keyframes v11PanelRingB{
  0%{transform:translate3d(0,0,0) rotate(8deg);opacity:.065}
  50%{transform:translate3d(-1.1vw,1.5vh,0) rotate(-172deg);opacity:.11}
  100%{transform:translate3d(0,0,0) rotate(-352deg);opacity:.065}
}
.moment-caption{right:calc(var(--gutter) + 20px);bottom:30px}

/* Quant proof embedded in Origin */
.quant-proof{margin-top:clamp(42px,6vw,78px);padding-top:24px;border-top:1px solid var(--line-dark);position:relative;z-index:2}
.quant-proof>.micro{color:#8e9089;margin-bottom:18px}
.quant-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line-dark)}
.quant-proof-grid>div{padding:24px 22px 26px 0;min-height:132px}
.quant-proof-grid>div+div{border-left:1px solid var(--line-dark);padding-left:22px}
.quant-proof-grid strong{display:block;font-size:1rem;letter-spacing:-.025em;margin-bottom:10px;color:var(--paper)}
.quant-proof-grid span{display:block;color:#a9aaa3;font-size:.88rem;line-height:1.55}
.origin-actions{display:flex;gap:12px;flex-wrap:wrap}

/* Insights home */
.insights-home{background:var(--paper);color:var(--ink);padding:clamp(100px,11vw,170px) 0;border-top:1px solid var(--line-light)}
.insights-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.52fr);gap:clamp(36px,7vw,110px);align-items:end;margin-bottom:clamp(48px,7vw,86px)}
.insights-head .lead{margin:0}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line-light)}
.insight-card{display:flex;min-height:310px;flex-direction:column;padding:28px 28px 28px 0;transition:background .28s,color .28s,padding .28s}
.insight-card+.insight-card{border-left:1px solid var(--line-light);padding-left:28px}
.insight-card:hover{background:var(--acid);padding-inline:28px}
.insight-card .micro{opacity:.58;margin-bottom:auto}
.insight-card h3{font-size:clamp(1.45rem,2.4vw,2.05rem);line-height:1.04;letter-spacing:-.052em;margin:34px 0 16px;max-width:16ch}
.insight-card p{font-size:.95rem;line-height:1.62;max-width:36ch;margin:0 0 26px;color:#585a55}
.insight-card:hover p{color:#1d1e1a}
.insight-card>span:last-child{font-size:.83rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.text-link{display:inline-block;margin-top:28px;font-weight:750;border-bottom:1px solid currentColor;padding-bottom:4px}

/* Quant / search service page visual systems */
.quant-hero,.search-hero{min-height:88svh;padding-top:calc(var(--nav-h) + 90px);padding-bottom:70px;background:var(--ink);color:var(--paper);position:relative;overflow:hidden;display:flex;align-items:flex-end}
.quant-hero::before,.search-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:68px 68px;mask-image:linear-gradient(180deg,transparent 0,black 18%,black 86%,transparent)}
.quant-hero::after{content:"";position:absolute;right:-12vmin;top:18%;width:52vmin;height:52vmin;border:1px solid rgba(201,255,67,.27);border-radius:50%;box-shadow:0 0 120px rgba(201,255,67,.08);animation:v11PanelRingA 24s linear infinite}
.search-hero::after{content:"?";position:absolute;right:2vw;top:10%;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:min(54vw,50rem);line-height:.72;color:rgba(201,255,67,.09);transform:rotate(-8deg)}
.quant-hero .container,.search-hero .container{position:relative;z-index:2}
.quant-hero .h1,.search-hero .h1{max-width:1180px;margin-top:18px}
.quant-hero .lead,.search-hero .lead{max-width:780px;margin-top:28px;color:#c8c9c2}
.capability-band{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.capability-band span{padding:9px 13px;border:1px solid rgba(255,255,255,.17);border-radius:999px;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}
.content-section{padding:clamp(90px,10vw,150px) 0;background:var(--paper);color:var(--ink);border-top:1px solid var(--line-light)}
.content-section.dark{background:var(--ink);color:var(--paper);border-color:var(--line-dark)}
.content-grid{display:grid;grid-template-columns:.32fr .68fr;gap:clamp(28px,7vw,110px);align-items:start}
.content-body{max-width:900px}
.content-body>.h2{margin-bottom:26px}
.content-body>.lead{max-width:760px;margin-bottom:38px}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);border-block:1px solid currentColor;border-color:rgba(11,11,10,.15)}
.dark .feature-grid{border-color:rgba(255,255,255,.14)}
.feature{padding:26px 28px 30px 0;border-bottom:1px solid rgba(11,11,10,.12)}
.feature:nth-child(even){padding-left:28px;border-left:1px solid rgba(11,11,10,.12)}
.dark .feature{border-color:rgba(255,255,255,.12)}
.feature h3{font-size:1.22rem;letter-spacing:-.035em;margin:0 0 10px}
.feature p{margin:0;line-height:1.62;color:#63655f;font-size:.94rem}
.dark .feature p{color:#b0b1aa}
.answer-box{padding:26px 28px;border-left:3px solid var(--acid);background:rgba(201,255,67,.09);margin:32px 0;font-size:1.08rem;line-height:1.7}
.search-stack{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border-block:1px solid var(--line-light);margin-top:42px}
.search-stack article{background:var(--paper);padding:28px;min-height:250px}
.search-stack .micro{color:#787a74}.search-stack h3{font-size:1.4rem;letter-spacing:-.04em;margin:40px 0 12px}.search-stack p{margin:0;color:#666862;line-height:1.62;font-size:.92rem}
.trademark-note{font-size:.75rem;color:#777a74;line-height:1.6;margin-top:24px}

/* FAQ / answer-engine friendly human content */
.faq-list{border-top:1px solid var(--line-light);margin-top:36px}
.faq-list details{border-bottom:1px solid var(--line-light);padding:0}
.faq-list summary{cursor:pointer;list-style:none;font-size:clamp(1.15rem,2vw,1.55rem);font-weight:700;letter-spacing:-.035em;padding:24px 42px 24px 0;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:6px;top:20px;font-size:1.5rem;font-weight:400}
.faq-list details[open] summary::after{content:"−"}
.faq-list details p{max-width:820px;margin:0;padding:0 0 26px;color:#5e605b;line-height:1.72}
.dark .faq-list{border-color:var(--line-dark)}.dark .faq-list details{border-color:var(--line-dark)}.dark .faq-list details p{color:#b2b3ac}

/* Insights / authority hub */
.insights-page{background:var(--paper);color:var(--ink);padding:clamp(100px,11vw,170px) 0}
.insights-page-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-light)}
.insights-page-grid .insight-card{border-bottom:1px solid var(--line-light);min-height:330px}
.insights-page-grid .insight-card:nth-child(even){border-left:1px solid var(--line-light);padding-left:28px}
.article-hero{padding:calc(var(--nav-h) + 90px) 0 80px;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line-light)}
.article-hero .h1{max-width:1150px;margin:22px 0 24px}
.article-meta{display:flex;gap:18px;flex-wrap:wrap;color:#686a64}
.article-layout{display:grid;grid-template-columns:minmax(210px,.27fr) minmax(0,.73fr);gap:clamp(32px,7vw,110px);padding:clamp(80px,9vw,130px) 0}
.article-toc{position:sticky;top:calc(var(--nav-h) + 30px);align-self:start;border-top:1px solid var(--line-light);padding-top:18px}
.article-toc a{display:block;padding:8px 0;color:#686a64;font-size:.88rem}.article-toc a:hover{color:var(--ink)}
.article-body{max-width:850px}
.article-body h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.055em;margin:2.1em 0 .6em}
.article-body h3{font-size:1.4rem;letter-spacing:-.035em;margin:1.7em 0 .55em}
.article-body p,.article-body li{font-size:1.06rem;line-height:1.78;color:#3f413c}
.article-body ul,.article-body ol{padding-left:1.2em}
.article-body table{width:100%;border-collapse:collapse;margin:30px 0;font-size:.94rem}
.article-body th,.article-body td{text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid var(--line-light)}
.article-body th{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em}
.article-source{padding:18px 0;border-top:1px solid var(--line-light);font-size:.84rem;color:#686a64}
.article-source a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:900px){
  .quant-proof-grid{grid-template-columns:1fr 1fr}.quant-proof-grid>div:nth-child(3){border-left:0}.insights-head,.content-grid,.article-layout{grid-template-columns:1fr}.insight-grid{grid-template-columns:1fr}.insight-card+.insight-card{border-left:0;border-top:1px solid var(--line-light);padding-left:0}.insight-card:hover{padding-inline:20px}.search-stack{grid-template-columns:1fr 1fr}.article-toc{position:relative;top:auto}.insights-page-grid{grid-template-columns:1fr}.insights-page-grid .insight-card:nth-child(even){border-left:0;padding-left:0}.feature-grid{grid-template-columns:1fr}.feature:nth-child(even){padding-left:0;border-left:0}
}
@media(max-width:620px){
  .quant-proof-grid,.search-stack{grid-template-columns:1fr}.quant-proof-grid>div,.quant-proof-grid>div+div{padding:20px 0;border-left:0;border-top:1px solid var(--line-dark)}.quant-proof-grid>div:first-child{border-top:0}.quant-hero,.search-hero{min-height:76svh}.article-body p,.article-body li{font-size:1rem}.article-hero{padding-top:calc(var(--nav-h) + 70px)}
}
@media(prefers-reduced-motion:reduce){.moment-panel::before,.moment-panel::after,.quant-hero::after{animation:none!important}}

/* V11.1 — credibility / ecosystems / Ritivo proof */
.ecosystems{background:var(--ink);color:var(--paper);padding:clamp(100px,11vw,160px) 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.ecosystems-head{display:grid;grid-template-columns:.32fr .68fr;gap:clamp(28px,5vw,72px);align-items:start}
.ecosystems .lead{color:#b9bab3;max-width:800px;margin-top:26px}
.logo-wall{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12);border-left:1px solid rgba(255,255,255,.12);margin-top:clamp(48px,7vw,86px)}
.logo-tile{min-height:180px;padding:26px;display:grid;grid-template-rows:54px auto auto;align-content:center;gap:9px;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.018);transition:background .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.logo-tile:hover{background:var(--acid);color:var(--ink);transform:translateY(-2px)}
.logo-tile img{width:38px;height:38px;object-fit:contain;filter:invert(1);opacity:.94;transition:filter .35s ease,transform .35s var(--ease)}
.logo-tile:hover img{filter:none;transform:scale(1.06)}
.logo-tile span{font-size:1.18rem;font-weight:750;letter-spacing:-.03em}
.logo-tile small{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#888b84}.logo-tile:hover small{color:#31352c}
.logo-tile-word b{font-size:2rem;line-height:1;letter-spacing:-.06em;color:var(--acid)}.logo-tile-word:hover b{color:var(--ink)}
.ecosystem-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);margin-top:42px;border:1px solid rgba(255,255,255,.12)}
.ecosystem-proof>div{background:var(--ink);padding:30px;min-height:230px;display:flex;flex-direction:column;align-items:flex-start}
.ecosystem-proof strong{display:block;font-size:clamp(1.7rem,2.5vw,2.6rem);letter-spacing:-.055em;margin:14px 0 12px}
.ecosystem-proof p{color:#aaa9a4;line-height:1.7;margin:0 0 20px}.ecosystem-proof a{margin-top:auto;color:var(--acid);font-weight:700}
.ecosystem-disclaimer{color:#777a73;margin:20px 0 0;max-width:1080px;line-height:1.7}
.ritivo-media{background:#151515!important;color:var(--paper)}
.ritivo-art{height:100%;min-height:560px;position:relative;overflow:hidden;padding:30px;background:radial-gradient(circle at 72% 28%,rgba(201,255,67,.23),transparent 24%),linear-gradient(145deg,#0b0b0a 0%,#141510 50%,#090909 100%);color:var(--paper);isolation:isolate}
.ritivo-art::before{content:"";position:absolute;inset:-16% -10%;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 92%);z-index:-1}
.ritivo-top,.ritivo-bottom{display:flex;justify-content:space-between;gap:20px;position:relative;z-index:3}.ritivo-bottom{position:absolute;left:30px;right:30px;bottom:26px;align-items:center}.ritivo-bottom .case-live{position:static}
.ritivo-word{position:absolute;left:5%;top:11%;font-size:clamp(5.2rem,12vw,12rem);font-weight:800;letter-spacing:-.085em;line-height:.8;z-index:1}.ritivo-word span{color:var(--acid)}
.ritivo-orbit{position:absolute;right:-8%;top:5%;width:56%;aspect-ratio:1;border:1px solid rgba(201,255,67,.22);border-radius:50%;animation:ritivoOrbit 18s linear infinite}.ritivo-orbit i{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.ritivo-orbit i:nth-child(1){inset:12%}.ritivo-orbit i:nth-child(2){inset:26%;animation:ritivoOrbit 12s linear infinite reverse}.ritivo-orbit i:nth-child(3){width:16px;height:16px;background:var(--acid);border:0;top:12%;left:45%;box-shadow:0 0 40px rgba(201,255,67,.65)}
.ritivo-ui{position:absolute;left:7%;right:7%;bottom:12%;display:flex;justify-content:space-between;align-items:end;z-index:2}.ritivo-phone{width:min(46%,410px);min-height:290px;border:1px solid rgba(255,255,255,.16);border-radius:34px;padding:28px;background:rgba(8,8,8,.72);backdrop-filter:blur(14px);display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 35px 90px rgba(0,0,0,.3)}.ritivo-phone strong{font-size:clamp(2rem,4vw,4.1rem);letter-spacing:-.065em;line-height:.9;margin:16px 0}.ritivo-phone small{color:#aeb0a9;line-height:1.6}.ritivo-signal{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:var(--acid);color:var(--ink);font-size:4.8rem;font-weight:800;letter-spacing:-.08em;box-shadow:0 0 0 18px rgba(201,255,67,.08),0 0 100px rgba(201,255,67,.2);animation:ritivoPulse 4.8s ease-in-out infinite}
.work-ritivo-art{min-height:100%;height:100%;padding:24px}.work-ritivo-art .ritivo-word{font-size:clamp(4.2rem,8vw,8rem)}.work-ritivo-art .ritivo-phone{min-height:220px}.work-ritivo-art .ritivo-signal{width:100px;height:100px;font-size:3.2rem}.work-ritivo-art .ritivo-bottom{display:none}
@keyframes ritivoOrbit{to{transform:rotate(360deg)}}
@keyframes ritivoPulse{50%{transform:scale(1.05);box-shadow:0 0 0 28px rgba(201,255,67,.05),0 0 130px rgba(201,255,67,.28)}}
@media(max-width:960px){.ecosystems-head{grid-template-columns:1fr}.logo-wall{grid-template-columns:repeat(2,1fr)}.ecosystem-proof{grid-template-columns:1fr}.ritivo-word{font-size:clamp(5rem,18vw,9rem)}.ritivo-ui{bottom:15%}}
@media(max-width:620px){.logo-wall{grid-template-columns:1fr 1fr}.logo-tile{min-height:148px;padding:20px}.ritivo-art{min-height:620px;padding:22px}.ritivo-top{flex-direction:column}.ritivo-ui{left:22px;right:22px;bottom:12%;align-items:flex-end}.ritivo-phone{width:70%;min-height:250px;padding:20px}.ritivo-signal{width:84px;height:84px;font-size:2.6rem}.ritivo-bottom{left:22px;right:22px}.ritivo-bottom>span{display:none}.ritivo-word{top:20%}.ecosystem-proof>div{min-height:0}}
@media(prefers-reduced-motion:reduce){.ritivo-orbit,.ritivo-orbit i,.ritivo-signal{animation:none!important}}

/* V11.2 — PRESTIGE / PRODUCT THEATRE / SELF-HOSTED ECOSYSTEMS */
.ritivo-stage{
  --rt-x:0px;--rt-y:0px;--rt-rx:0deg;--rt-ry:0deg;
  position:relative;height:100%;min-height:560px;overflow:hidden;isolation:isolate;
  background:#160C28;color:#F8F3EB;perspective:1200px;
}
.ritivo-stage-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(248,243,235,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(248,243,235,.055) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 92%)}
.ritivo-stage-light{position:absolute;z-index:-1;width:58%;aspect-ratio:1;right:-12%;top:-14%;border-radius:46% 54% 62% 38%/42% 38% 62% 58%;background:radial-gradient(circle at 42% 42%,rgba(210,255,71,.72) 0 4%,rgba(109,91,255,.5) 23%,rgba(255,74,53,.22) 42%,transparent 68%);filter:blur(34px);opacity:.78;animation:ritivoMorph 14s ease-in-out infinite alternate;transform:translate3d(var(--rt-x),var(--rt-y),0)}
.ritivo-campaign{position:absolute;right:-8%;top:0;width:62%;height:100%;object-fit:cover;object-position:66% center;z-index:0;filter:saturate(.92) contrast(1.03);transform:scale(1.035) translate3d(calc(var(--rt-x)*-.22),calc(var(--rt-y)*-.18),0);transition:transform .8s var(--ease),filter .8s ease}
.ritivo-stage:hover .ritivo-campaign{transform:scale(1.065) translate3d(calc(var(--rt-x)*-.22),calc(var(--rt-y)*-.18),0);filter:saturate(1.04) contrast(1.05)}
.ritivo-image-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#160C28 0%,rgba(22,12,40,.97) 30%,rgba(22,12,40,.74) 48%,rgba(22,12,40,.2) 70%,rgba(22,12,40,.08) 100%),linear-gradient(180deg,rgba(22,12,40,.18),transparent 46%,rgba(22,12,40,.65));pointer-events:none}
.ritivo-sweep{position:absolute;inset:-20% -55%;z-index:2;pointer-events:none;background:linear-gradient(112deg,transparent 42%,rgba(248,243,235,.04) 46%,rgba(210,255,71,.18) 49%,rgba(255,74,53,.12) 51%,rgba(109,91,255,.1) 53%,transparent 58%);transform:translateX(-38%) rotate(2deg);animation:ritivoSweep 7.8s cubic-bezier(.65,0,.35,1) infinite}
.ritivo-stage-head{position:absolute;left:28px;right:28px;top:26px;z-index:7;display:flex;justify-content:space-between;gap:20px;color:rgba(248,243,235,.82)}
.ritivo-stage-wordmark{position:absolute;left:5%;top:12%;z-index:5;width:min(46%,390px);height:auto;transform:translate3d(calc(var(--rt-x)*.3),calc(var(--rt-y)*.24),0);filter:drop-shadow(0 18px 42px rgba(0,0,0,.22))}
.ritivo-stack{position:absolute;z-index:6;right:6%;top:22%;width:min(38%,330px);height:310px;transform-style:preserve-3d;transform:rotateX(var(--rt-rx)) rotateY(var(--rt-ry));transition:transform .18s ease-out}
.ritivo-stack-card{position:absolute;left:0;right:0;min-height:142px;padding:18px 20px;border:1px solid rgba(248,243,235,.22);border-radius:22px;background:linear-gradient(145deg,rgba(248,243,235,.16),rgba(248,243,235,.055));backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 26px 70px rgba(5,2,12,.32);display:flex;flex-direction:column;justify-content:flex-end;transform-origin:50% 90%;overflow:hidden}
.ritivo-stack-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.13),transparent 62%);transform:translateX(-130%);animation:ritivoCardSheen 6.5s ease-in-out infinite}
.ritivo-stack-card span{position:absolute;top:16px;right:18px;font-size:.7rem;letter-spacing:.16em;color:rgba(248,243,235,.5)}
.ritivo-stack-card strong{font-size:1.42rem;letter-spacing:-.045em}.ritivo-stack-card small{margin-top:5px;color:rgba(248,243,235,.68)}
.ritivo-stack-card.card-app{top:0;transform:translate3d(0,0,70px) rotate(-3deg);background:linear-gradient(145deg,rgba(109,91,255,.34),rgba(248,243,235,.07))}
.ritivo-stack-card.card-pro{top:74px;transform:translate3d(-24px,0,34px) rotate(2deg);background:linear-gradient(145deg,rgba(255,74,53,.27),rgba(248,243,235,.06))}
.ritivo-stack-card.card-pay{top:148px;transform:translate3d(12px,0,8px) rotate(-1deg);background:linear-gradient(145deg,rgba(210,255,71,.2),rgba(248,243,235,.05))}
.ritivo-deploy-console{position:absolute;left:5%;bottom:12%;z-index:8;width:min(52%,510px);padding:18px;border:1px solid rgba(248,243,235,.16);border-radius:20px;background:rgba(12,7,22,.74);backdrop-filter:blur(20px);box-shadow:0 34px 90px rgba(0,0,0,.3);transform:translate3d(calc(var(--rt-x)*.14),calc(var(--rt-y)*.12),0)}
.ritivo-console-top{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(248,243,235,.11);color:rgba(248,243,235,.72)}
.ritivo-console-top img{width:34px;height:34px;border-radius:9px}
.ritivo-console-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;padding-top:14px}.ritivo-console-grid>div{display:grid;gap:5px}.ritivo-console-grid span{font-size:.63rem;letter-spacing:.14em;color:rgba(248,243,235,.4)}.ritivo-console-grid strong{font-size:.78rem;line-height:1.45;letter-spacing:.04em}.ritivo-console-grid i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#D2FF47;box-shadow:0 0 18px rgba(210,255,71,.7);margin-right:6px;animation:ritivoLive 1.8s ease-in-out infinite}
.ritivo-stage-foot{position:absolute;left:28px;right:28px;bottom:24px;z-index:9;display:flex;justify-content:space-between;align-items:center;gap:20px}.ritivo-stage-foot .case-live{position:static;background:#D2FF47;color:#160C28;border-color:#D2FF47}.ritivo-stage-foot .micro{color:rgba(248,243,235,.6)}
.work-ritivo-stage{min-height:100%;height:100%}.work-ritivo-stage .ritivo-campaign{width:72%;right:-20%;object-position:56% center}.work-ritivo-stage .ritivo-stage-wordmark{width:min(52%,300px)}.work-ritivo-stage .ritivo-stack{right:5%;top:24%;width:min(46%,270px);height:270px}.work-ritivo-stage .ritivo-stack-card{min-height:112px;padding:14px 16px}.work-ritivo-stage .ritivo-stack-card.card-pro{top:58px}.work-ritivo-stage .ritivo-stack-card.card-pay{top:116px}.work-ritivo-stage .ritivo-deploy-console{display:none}
@keyframes ritivoSweep{0%,18%{transform:translateX(-38%) rotate(2deg);opacity:0}30%{opacity:1}64%{opacity:.9}80%,100%{transform:translateX(48%) rotate(2deg);opacity:0}}
@keyframes ritivoMorph{0%{transform:translate3d(var(--rt-x),var(--rt-y),0) rotate(0deg) scale(.94);border-radius:46% 54% 62% 38%/42% 38% 62% 58%}50%{transform:translate3d(var(--rt-x),var(--rt-y),0) rotate(18deg) scale(1.08);border-radius:58% 42% 38% 62%/50% 62% 38% 50%}100%{transform:translate3d(var(--rt-x),var(--rt-y),0) rotate(-8deg) scale(.98);border-radius:37% 63% 54% 46%/60% 44% 56% 40%}}
@keyframes ritivoCardSheen{0%,55%{transform:translateX(-130%)}75%,100%{transform:translateX(145%)}}
@keyframes ritivoLive{50%{opacity:.35;transform:scale(.75)}}

/* ecosystem index — local brand assets, original colors */
.ecosystem-index{margin-top:clamp(48px,7vw,86px);border-top:1px solid rgba(255,255,255,.14)}
.ecosystem-group{display:grid;grid-template-columns:minmax(190px,.27fr) minmax(0,.73fr);gap:clamp(22px,4vw,54px);padding:28px 0;border-bottom:1px solid rgba(255,255,255,.14);align-items:start}
.ecosystem-group-copy{position:sticky;top:calc(var(--nav-h) + 24px);padding-top:8px}.ecosystem-group-copy p{margin:10px 0 0;max-width:230px;color:#7f827b;font-size:.88rem;line-height:1.55}
.ecosystem-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ecosystem-logo{min-height:118px;padding:15px;border-radius:2px;background:#f4f1e8;color:#11120f;border:1px solid rgba(255,255,255,.02);display:flex;flex-direction:column;justify-content:space-between;gap:10px;transition:transform .35s var(--ease),background .35s ease,box-shadow .35s ease;overflow:hidden;position:relative}
.ecosystem-logo::after{content:"";position:absolute;inset:0;border:1px solid rgba(17,18,15,.08);pointer-events:none}
.ecosystem-logo:hover{transform:translateY(-4px);background:#fff;box-shadow:0 20px 50px rgba(0,0,0,.18)}
.ecosystem-logo img{width:100%;height:62px;object-fit:contain;object-position:left center;filter:none!important;opacity:1!important;mix-blend-mode:multiply;transition:transform .35s var(--ease)}
.ecosystem-logo:hover img{transform:scale(1.035)}
.ecosystem-logo span{font-size:.76rem;font-weight:700;letter-spacing:.03em;color:#474a43;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ecosystems .ecosystem-proof{margin-top:56px}

@media(max-width:1100px){.ecosystem-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.ritivo-stack{right:3%;width:min(40%,300px)}.ritivo-deploy-console{width:min(56%,470px)}}
@media(max-width:900px){.ritivo-stage{min-height:680px}.ritivo-campaign{width:76%;right:-24%}.ritivo-stage-wordmark{width:min(58%,360px);top:13%}.ritivo-stack{top:32%;right:5%;width:42%;}.ritivo-deploy-console{left:22px;width:62%;bottom:11%}.ecosystem-group{grid-template-columns:1fr}.ecosystem-group-copy{position:relative;top:auto}.ecosystem-group-copy p{max-width:620px}.ecosystem-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.ritivo-stage{min-height:700px}.ritivo-stage-head{left:20px;right:20px;top:20px}.ritivo-stage-head span:last-child{display:none}.ritivo-campaign{width:100%;height:46%;right:0;top:auto;bottom:0;object-position:67% center}.ritivo-image-shade{background:linear-gradient(180deg,#160C28 0%,rgba(22,12,40,.96) 40%,rgba(22,12,40,.55) 70%,rgba(22,12,40,.12) 100%)}.ritivo-stage-wordmark{left:20px;top:12%;width:72%}.ritivo-stack{top:28%;right:18px;width:56%;height:240px}.ritivo-stack-card{min-height:102px;padding:13px 14px;border-radius:16px}.ritivo-stack-card.card-pro{top:52px}.ritivo-stack-card.card-pay{top:104px}.ritivo-deploy-console{left:20px;right:20px;width:auto;bottom:9%;padding:14px}.ritivo-console-grid{grid-template-columns:1fr 1fr;gap:10px}.ritivo-console-grid>div:nth-child(n+3){display:none}.ritivo-stage-foot{left:20px;right:20px;bottom:18px}.ritivo-stage-foot .micro{display:none}.work-ritivo-stage{min-height:620px}.work-ritivo-stage .ritivo-campaign{height:50%;width:100%;right:0}.work-ritivo-stage .ritivo-stack{top:31%;width:58%}.ecosystem-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ecosystem-logo{min-height:104px;padding:12px}.ecosystem-logo img{height:54px}.ecosystems .ecosystem-proof{margin-top:34px}}
@media(prefers-reduced-motion:reduce){.ritivo-stage-light,.ritivo-sweep,.ritivo-stack-card::before,.ritivo-console-grid i{animation:none!important}.ritivo-stack{transform:none!important}}
