/* AI With Sosa v76: immersive visual system. Staged locally, not deployed.
   Self-contained for the home page. System font stack only, no external requests. */
:root{
 color-scheme:dark;
 --bg:#03060c;--bg-2:#060c18;--navy:#0a1527;--navy-2:#0e1d38;
 --blue:#3b82ff;--blue-hi:#78b0ff;--blue-deep:#1b46cf;--ice:#d3e5ff;
 --silver:#e3e9f2;--ink:#f3f6fb;--copy:#b9c5d6;--quiet:#93a1b6;
 --line:rgba(150,185,235,.15);--line-hi:rgba(150,195,255,.34);
 --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
 --serif:var(--font);
 --ease:cubic-bezier(.16,1,.3,1);--ease-io:cubic-bezier(.65,0,.35,1);
 --t1:.25s;--t2:.7s;--t3:1.1s;
 --pad:clamp(20px,5vw,72px);--sec:clamp(80px,8vw,120px);
 --fs-h2:clamp(2rem,4.3vw,3.8rem);--fs-lead:clamp(1.05rem,1.35vw,1.25rem);
 --chrome:linear-gradient(180deg,#ffffff 0%,#dbe4f1 34%,#93a6c0 58%,#eef3fa 100%);
 --grain:url(/assets/studio-grain.svg);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-padding-top:84px;-webkit-text-size-adjust:100%;background:var(--bg)}
html{scroll-behavior:auto}
body.v76{margin:0;background:var(--bg);color:var(--copy);font:400 1.0625rem/1.68 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img{max-width:100%;height:auto}
a{color:inherit;text-underline-offset:4px}
html{scrollbar-color:#35527a var(--bg-2)}
input,textarea{caret-color:#9ccaff}
h1,h2,h3,h4{color:var(--ink);margin:0;font-weight:600}
p{margin:0}
.wrap{width:min(1240px,100% - 2*var(--pad));margin-inline:auto}
.section{position:relative;padding-block:var(--sec);isolation:isolate}
.legacy-anchor{position:absolute;top:0}
:focus-visible{outline:2px solid #9ccaff;outline-offset:3px;border-radius:6px}
.skip-link{position:fixed;left:16px;top:-80px;z-index:200;background:#fff;color:#04101f;padding:12px 18px;border-radius:10px;font-weight:600;text-decoration:none;transition:top .2s}
.skip-link:focus{top:14px}
.eyebrow,.micro{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--quiet);font-weight:500;line-height:1.6}
::selection{background:#2d63d8;color:#fff}

/* ---------- type ---------- */
.section h2{font-size:var(--fs-h2);line-height:1.02;letter-spacing:-.04em;font-weight:600;background:linear-gradient(180deg,#fff 10%,#c9d6e8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.section h2 em{font-family:var(--font);font-style:normal;font-weight:500;letter-spacing:-.035em;color:#b7cce9}
.split-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(28px,6vw,96px);align-items:end}
.split-intro>p,.section-intro>p{font-size:var(--fs-lead);line-height:1.62;color:var(--copy);max-width:44ch}
.section-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(28px,6vw,96px);align-items:end}

/* ---------- buttons and links ---------- */
.button{--bx:0px;--by:0px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 30px;border-radius:999px;border:1px solid #7fb0ff66;background:linear-gradient(180deg,#2d64de 0%,#1843be 100%);color:#fff;font:600 .98rem/1 var(--font);letter-spacing:-.005em;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;transform:translate3d(var(--bx),var(--by),0);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .3s;box-shadow:0 1px 0 #ffffff55 inset,0 12px 34px -10px #2f6bffcc,0 0 0 0 #5b97ff00}
.button::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,#ffffff55 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease)}
.button:hover{border-color:#bcd8ff;box-shadow:0 1px 0 #ffffff77 inset,0 18px 46px -10px #3b82ffee,0 0 0 6px #3b82ff1f}
.button:hover::before{transform:translateX(120%)}
.button:active{transform:translate3d(var(--bx),calc(var(--by) + 1px),0) scale(.985)}
.text-link{position:relative;display:inline-flex;align-items:center;gap:8px;color:var(--silver);font-weight:500;font-size:.98rem;text-decoration:none;padding:6px 2px}
.text-link::after{content:"";position:absolute;left:2px;right:2px;bottom:1px;height:1px;background:currentColor;opacity:.45;transform-origin:left;transition:transform .5s var(--ease),opacity .3s}
.text-link:hover::after{opacity:1;transform:scaleX(1.0)}
.text-link:hover{color:#fff}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}

/* ---------- navigation ---------- */
.nav{position:fixed;inset:0 0 auto;z-index:100;transition:background .5s var(--ease),border-color .5s,backdrop-filter .5s;border-bottom:1px solid transparent}
body.scrolled .nav{background:rgba(4,8,15,.82);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);border-bottom-color:var(--line)}
.nav-row{display:flex;align-items:center;gap:28px;height:76px;transition:height .4s var(--ease)}
.brand{display:flex;align-items:center;flex:none}
.brand img{height:68px;width:auto;display:block;transition:height .4s var(--ease)}
.nav .brand{height:56px}
.nav .brand img{height:84px}
.desktop-nav{display:flex;gap:clamp(18px,2.6vw,38px);margin-inline:auto}
.desktop-nav a{position:relative;font-size:.8125rem;letter-spacing:.08em;font-weight:500;text-decoration:none;color:#c4d0e1;padding:10px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--blue-hi);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.desktop-nav a:hover,.desktop-nav a.is-here{color:#fff}
.desktop-nav a:hover::after,.desktop-nav a.is-here::after{transform:scaleX(1);transform-origin:left}
.nav-call{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid #bdd3f333;background:linear-gradient(180deg,#ffffff14,#ffffff05);color:var(--silver);font-size:.88rem;font-weight:500;text-decoration:none;letter-spacing:.01em;transition:border-color .3s,background .3s,color .3s}
.nav-call:hover{border-color:#bcd8ff99;background:#ffffff1f;color:#fff}
.menu-toggle{display:none;align-items:center;gap:8px;margin-left:auto;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--line-hi);background:#ffffff0d;color:var(--silver);font:500 .9rem var(--font);cursor:pointer}
.mobile-menu{display:flex;flex-direction:column;padding:8px var(--pad) 22px;background:rgba(4,8,15,.97);border-bottom:1px solid var(--line)}
.mobile-menu[hidden]{display:none}
.mobile-menu a{padding:15px 0;border-bottom:1px solid var(--line);font-size:.8rem;letter-spacing:.16em;font-weight:500;color:#dbe5f3;text-decoration:none}

/* ---------- scroll progress ---------- */
.scroll-progress{position:fixed;left:0;top:0;height:2px;width:100%;z-index:150;transform-origin:left;transform:scaleX(var(--sp,0));background:linear-gradient(90deg,#3b82ff,#9cc6ff 70%,#fff);box-shadow:0 0 12px #3b82ffaa;pointer-events:none}
@supports (animation-timeline:scroll()){.scroll-progress{animation:sp-grow linear both;animation-timeline:scroll(root)}@keyframes sp-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}}

/* ---------- hero ---------- */
/* Keep the whole hero readable, including the diagram below the fold. */
.signal-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(116px,13vh,152px) 0 0;isolation:isolate;overflow:hidden;background:radial-gradient(110% 80% at 80% 28%,#0f2750 0%,#081327 42%,#03060c 100%)}
.hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
#hero-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;mask-image:linear-gradient(90deg,#0003,#0009 48%,#000 72%)}
.hero-glow{position:absolute;border-radius:50%;opacity:.55}
.hg-a{width:52vw;height:52vw;right:-12vw;top:-18vw;background:radial-gradient(circle,#2f6bff66,transparent 66%);animation:hg-float 22s ease-in-out infinite alternate}
.hg-b{width:40vw;height:40vw;left:-14vw;bottom:-22vw;background:radial-gradient(circle,#1c4fd855,transparent 66%);animation:hg-float 28s ease-in-out -9s infinite alternate-reverse}
@keyframes hg-float{to{transform:translate3d(-4vw,3vw,0) scale(1.12)}}
.hero-vignette{position:absolute;inset:0;background:radial-gradient(120% 90% at 60% 45%,transparent 38%,#02040a 100%),linear-gradient(90deg,#03060ccc 0%,transparent 48%),linear-gradient(0deg,#03060c 0%,transparent 22%)}
.hero-grain{position:absolute;inset:0;width:100%;height:100%;background-image:var(--grain);opacity:.075;mix-blend-mode:overlay}
.hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);gap:clamp(24px,4vw,72px);align-items:center;padding-bottom:clamp(16px,3vh,36px)}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.hero-copy .eyebrow{color:#9bb7de;margin-bottom:clamp(14px,2.6vh,28px);display:flex;align-items:center;gap:14px}
.hero-copy .eyebrow::before{content:"";width:36px;height:1px;background:linear-gradient(90deg,transparent,var(--blue-hi))}
.signal-hero h1{font-size:clamp(2.7rem,min(5.45vw,9.2vh),5.5rem);line-height:.98;letter-spacing:-.04em;font-weight:300;margin:0 0 clamp(16px,2.6vh,28px)}
.hero-line{display:inline-block;color:#eef3fb;font-weight:300}
.hero-emphasis{display:inline-block;font-weight:600;letter-spacing:-.04em;padding-bottom:.06em;background:linear-gradient(100deg,#8fbaff 0%,#ffffff 28%,#c5d3e8 50%,#ffffff 66%,#7aa9ff 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;background-position:50% 0}
@keyframes chrome-pan{from{background-position:100% 0}to{background-position:0 0}}
.hero-sub{font-size:var(--fs-lead);line-height:1.62;color:#c6d2e3;max-width:48ch;margin-bottom:clamp(24px,3vh,32px)}
.hero-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:clamp(16px,2.6vh,28px) 0 0;padding:0}
.hero-chips li{display:inline-flex;align-items:center;gap:9px;color:#becfe5;font-size:.82rem;padding:3px 0;line-height:1.5}
.hero-chips li+li{margin-left:12px}
.hero-chips li::before{content:"";width:10px;height:6px;border-left:1.5px solid #8ab9ff;border-bottom:1.5px solid #8ab9ff;transform:translateY(-2px) rotate(-45deg)}
.hero-note{margin-top:22px;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.92rem;color:#a9b8cc;line-height:1.7}
.hero-note a{color:#e1ebf9;text-decoration:underline;text-decoration-color:#78b0ff88;text-underline-offset:4px}
.hero-note-sep{margin-inline:6px;color:#6f84a3}
.hero-location{margin-top:10px;font-size:.88rem;color:#8da0ba;line-height:1.6}
.hx{opacity:1;transform:none;filter:none}


/* hero stage card (existing copy, glass treatment) */
.workforce-scene{position:relative;padding:28px 30px 24px;border-radius:28px;border:1px solid var(--line-hi);background:linear-gradient(160deg,rgba(20,38,70,.74),rgba(6,12,24,.86) 70%);box-shadow:0 1px 0 #ffffff1f inset,0 50px 120px -50px #2f6bffaa,0 0 0 1px #00000040;overflow:hidden}
.workforce-scene::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 50% at 50% 0,#5f9bff2e,transparent 70%);pointer-events:none}
.workforce-scene::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(105deg,transparent,#ffffff14,transparent);transform:skewX(-14deg);animation:card-sweep 9s ease-in-out 2.5s infinite;pointer-events:none}
@keyframes card-sweep{0%,60%{left:-60%}100%{left:130%}}
.scene-caption{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:.72rem;letter-spacing:.04em;color:#a3b6d0}
.scene-caption span:last-child{white-space:nowrap}
.scene-caption span:last-child{color:#7fb0ff;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem}
.workforce-scene h2{position:relative;background:none;-webkit-text-fill-color:currentColor;color:var(--ink);font-size:clamp(1.4rem,2.1vw,1.85rem);letter-spacing:-.035em;line-height:1.2;font-weight:500;margin:12px 0 18px;padding:0}
.team-network{position:relative}
.operator-hub{text-align:center}
.operator-mark{position:relative;width:100px;height:100px;margin:0 auto 10px;display:grid;place-items:center;color:#cfe4ff;background:radial-gradient(circle,#5f9bff38,transparent 68%)}
.operator-mark svg{width:60px;height:60px;filter:drop-shadow(0 0 12px #78b0ff99)}
.team-operator-orbit{position:absolute;inset:0;border:1px solid #9cc6ff33;border-top-color:#e3f0ff;border-bottom-color:#5a8cd270;border-radius:50%;animation:orbit 18s linear infinite}
.orbit-inner{inset:9px;animation-direction:reverse;animation-duration:12s}
@keyframes orbit{to{transform:rotate(360deg)}}
.operator-hub h3{font-size:1rem;font-weight:500;margin-bottom:2px}
.operator-hub p{font-size:.85rem;color:#a9bbd2;line-height:1.5}
.team-branches{height:46px;margin-top:6px}
.team-branches svg{width:100%;height:100%;overflow:visible;fill:none;vector-effect:non-scaling-stroke}
.branch-base{stroke:#8fb7ee40;stroke-width:1;vector-effect:non-scaling-stroke}
.branch-signal{stroke:#bfe0ff;stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:10 90;stroke-dashoffset:10;filter:drop-shadow(0 0 5px #78b0ff);animation:dispatch 5.6s linear infinite}
.signal-scheduling{animation-delay:.5s}.signal-followup{animation-delay:1s}
@keyframes dispatch{0%{stroke-dashoffset:10;opacity:0}8%{opacity:1}55%{stroke-dashoffset:-90;opacity:1}62%,100%{stroke-dashoffset:-90;opacity:0}}
.specialist-team{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.specialist{text-align:center;min-width:0}
.specialist-mark{width:50px;height:50px;margin:0 auto 9px;display:grid;place-items:center;border-radius:15px;border:1px solid #9cc6ff40;background:linear-gradient(180deg,#1b3157,#0f1d38);color:#c0dcff;box-shadow:0 1px 0 #ffffff1a inset,0 10px 24px -12px #3b82ff99;animation:spec-pulse 5.6s ease-in-out infinite}
.specialist-scheduling .specialist-mark{animation-delay:.5s}.specialist-followup .specialist-mark{animation-delay:1s}
@keyframes spec-pulse{0%,35%,100%{box-shadow:0 1px 0 #ffffff1a inset,0 10px 24px -12px #3b82ff99}55%{box-shadow:0 1px 0 #ffffff33 inset,0 0 0 4px #3b82ff26,0 10px 34px -6px #5b97ffee;border-color:#bcd8ffaa}}
.specialist-mark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.specialist h3{font-size:.88rem;font-weight:500;margin-bottom:1px}
.specialist p{font-size:.78rem;color:#a2b5cd;line-height:1.45}
.team-return{position:relative;height:30px;width:66.6%;margin:12px auto 0;border:1px solid #8fb7ee33;border-top:0;border-radius:0 0 14px 14px}
.team-return::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#8fb7ee33}
.team-return span{position:absolute;left:50%;top:100%;width:1px;height:12px;background:#aecaf066}
.team-decision{display:flex;align-items:center;gap:12px;margin:12px auto 0;padding:11px 14px;border-radius:14px;border:1px solid #9cc6ff2e;background:#0c1a3277}
.decision-mark{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #9cc6ff66;color:#d9eaff;font-size:.8rem}
.team-decision p{display:flex;flex-direction:column;line-height:1.4}
.team-decision strong{font-size:.86rem;font-weight:500;color:#e8f1fc}
.team-decision p span{font-size:.78rem;color:#a9bbd2}
.team-outcome{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:.78rem;color:#b2c3d8;text-align:center}
.outcome-light{flex:none;width:6px;height:6px;border-radius:50%;background:#78b0ff;box-shadow:0 0 10px #78b0ff;animation:blink 3.2s ease-in-out infinite}
@keyframes blink{50%{opacity:.35}}
.scene-management{position:relative;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.scene-management strong{font-size:.82rem;font-weight:500;color:#dbe6f5}
.scene-management p{font-size:.76rem;color:#9fb2ca;margin-top:2px;line-height:1.5}
.studio-hero-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px 20px;border-top:1px solid var(--line);margin-top:32px}
.studio-hero-bottom p{font-size:.86rem;line-height:1.6;color:#c3d2e5}
.studio-hero-bottom p span{display:inline;margin-left:10px;color:#91a8c6}
.studio-scroll{display:inline-flex;align-items:center;gap:12px;font-size:.86rem;font-weight:500;color:#cfdced;text-decoration:underline;text-decoration-color:#597ba9;white-space:nowrap}
.studio-scroll span{display:inline-block;animation:nudge 2.4s var(--ease-io) infinite}
@keyframes nudge{50%{transform:translateY(5px)}}

/* ---------- cursor glow cards ---------- */
.glow-card{--mx:50%;--my:0%;position:relative;border-radius:22px;border:1px solid var(--line);background:linear-gradient(165deg,rgba(18,34,62,.62),rgba(7,13,26,.7));box-shadow:0 1px 0 #ffffff12 inset;overflow:hidden;isolation:isolate;transition:border-color .5s,transform .7s var(--ease),box-shadow .6s}
.glow-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(420px circle at var(--mx) var(--my),#4f8dff3d,transparent 62%);transition:opacity .5s}
.glow-card::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;background:radial-gradient(260px circle at var(--mx) var(--my),#9cc6ffcc,transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);opacity:0;transition:opacity .5s}
.glow-card:hover{border-color:var(--line-hi)}
.glow-card:hover::before,.glow-card:hover::after{opacity:1}

/* ---------- outcomes ---------- */
.outcomes-v75{background:linear-gradient(180deg,#03060c 0%,#050b17 60%,#060e1d 100%)}
.outcomes-v75::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 50% at 12% 20%,#1f4fd22b,transparent 70%)}
.outcome-list{counter-reset:o;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(48px,6vw,84px)}
.outcome-list article{counter-increment:o;padding:30px 26px 32px;min-height:260px;display:flex;flex-direction:column}
.outcome-list article::before{z-index:0}
.outcome-list article>h3::before{content:"0" counter(o);display:block;font-size:2.6rem;letter-spacing:-.04em;line-height:1;font-weight:200;margin-bottom:clamp(26px,4vw,54px);background:linear-gradient(180deg,#bcd7ff,#3d7bff);-webkit-background-clip:text;background-clip:text;color:transparent}
.outcome-list h3{font-size:1.42rem;line-height:1.2;letter-spacing:-.03em;font-weight:500;margin-bottom:12px}
.outcome-list p{font-size:.98rem;line-height:1.65;color:var(--copy)}
.outcomes-note{margin-top:34px;max-width:64ch;padding-left:18px;border-left:2px solid #78b0ff88;font-size:.98rem;color:#d4deec}

/* ---------- capabilities ---------- */
.workforce-capabilities{background:linear-gradient(180deg,#060e1d,#050a14)}
.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(48px,6vw,84px)}
.capability-grid article{padding:30px 26px 34px;min-height:290px}
.system-emblem{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;border:1px solid var(--line-hi);background:linear-gradient(180deg,#1b3157,#0e1c36);color:#cde3ff;margin-bottom:clamp(30px,4vw,56px);box-shadow:0 12px 30px -14px #3b82ffaa,0 1px 0 #ffffff1c inset}
.system-emblem svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.capability-grid h3{font-size:1.3rem;line-height:1.22;letter-spacing:-.025em;font-weight:500;margin-bottom:10px}
.capability-grid p{font-size:.97rem;color:var(--copy);line-height:1.65}
.package-note{margin-top:34px;max-width:70ch;font-size:.95rem;color:#a9b8cc}
.package-note a,.work-note a{color:#e1ebf9}

/* ---------- stage: scroll-driven demonstration ---------- */
.stage{padding:0;background:#030710}
.stage-track{position:relative}
.stage-sticky{position:relative;overflow:hidden;padding-block:clamp(72px,9vw,120px);background:radial-gradient(90% 70% at 50% 100%,#0c2250 0%,#050c1c 55%,#030710 100%)}
#stage-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.stage-veil{position:absolute;inset:0;background:linear-gradient(90deg,#030710c8 0%,#03071080 36%,transparent 58%),linear-gradient(180deg,#030710 0%,transparent 14%,transparent 90%,#030710aa 100%);pointer-events:none}
.stage-grid{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:clamp(28px,5vw,80px);align-items:center}
.stage-left{display:flex;flex-direction:column;min-width:0}
.stage-intro{display:block}
.stage-intro h2{font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.1;margin-bottom:18px}
.stage-intro>p{font-size:1rem;line-height:1.62;max-width:40ch;color:var(--copy)}
.workflow-heading{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0 12px}
.example-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid #78b0ff55;background:#78b0ff14;color:#c6ddff;font-size:.8125rem;letter-spacing:.02em}
.example-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:#9cc6ff}
.illustrative-label{font-size:.9rem;line-height:1.6;color:#bdc9da;max-width:44ch}
.illustrative-label strong{color:#fff;font-weight:600}
.workflow-tabs{display:flex;flex-direction:column;gap:8px;margin:20px 0 0;align-items:flex-start}
.workflow-tabs button{position:relative;display:inline-flex;align-items:center;gap:12px;min-height:46px;padding:0 20px 0 16px;border-radius:999px;border:1px solid var(--line);background:#0a152a99;color:#c3d0e2;font:500 .92rem var(--font);cursor:pointer;transition:background .3s,border-color .3s,color .3s,transform .4s var(--ease)}
.workflow-tabs button::before{content:"";width:8px;height:8px;border-radius:50%;background:#3c5379;transition:background .3s,box-shadow .3s}
.workflow-tabs button:hover{border-color:var(--line-hi);color:#fff;transform:translateX(3px)}
.workflow-tabs button[aria-selected=true]{background:linear-gradient(180deg,#244b9a,#173674);border-color:#9cc6ff88;color:#fff}
.workflow-tabs button[aria-selected=true]::before{background:#9cc6ff;box-shadow:0 0 12px #9cc6ff}
.stage-hint{display:flex;align-items:center;gap:12px;margin-top:26px;font-size:.82rem;color:#8ea1bd;letter-spacing:.02em}
.stage-hint-dot{position:relative;flex:none;width:18px;height:28px;border:1px solid #8ea1bd88;border-radius:10px}
.stage-hint-dot::after{content:"";position:absolute;left:50%;top:6px;width:2px;height:6px;margin-left:-1px;border-radius:2px;background:#9cc6ff;animation:wheel 1.8s var(--ease-io) infinite}
@keyframes wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(9px)}}
.workflow-demo{padding:clamp(22px,2.6vw,36px);border-radius:28px;background:linear-gradient(160deg,rgba(17,33,62,.62),rgba(6,12,24,.74));-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);min-height:min(470px,62vh);border-color:var(--line-hi);box-shadow:0 1px 0 #ffffff1c inset,0 60px 140px -60px #2f6bffaa}
.workflow-demo:hover{transform:none}
.workflow-context{font-size:.95rem;line-height:1.6;color:#c4d0e1;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.workflow-context strong{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--quiet);font-weight:500;margin-bottom:4px}
.workflow-steps{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:24px}
.workflow-steps::before{content:"";position:absolute;left:10%;right:10%;top:19px;height:2px;border-radius:2px;background:#27375a}
.workflow-steps::after{content:"";position:absolute;left:10%;top:19px;height:2px;border-radius:2px;width:calc(80% * var(--stp,0));background:linear-gradient(90deg,#3b82ff,#a8d0ff);box-shadow:0 0 14px #5b97ff;transition:width .8s var(--ease)}
.workflow-steps button{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;color:#8ea1bd;font:500 .8rem var(--font);cursor:pointer;transition:color .3s}
.workflow-steps button span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #3d527c;background:#0b172d;color:#a2b4cf;font-size:.74rem;letter-spacing:.04em;transition:all .5s var(--ease)}
.workflow-steps button[aria-pressed=true]{color:#fff}
.workflow-steps button[aria-pressed=true] span{background:linear-gradient(180deg,#3268e1,#204dbf);border-color:#cfe3ff;color:#fff;box-shadow:0 0 0 6px #3b82ff2b,0 0 26px #5b97ffcc;transform:scale(1.1)}
.workflow-steps button.done span{border-color:#6d97da;color:#dce9ff;background:#14284a}
.workflow-steps button:hover{color:#fff}
.workflow-detail{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(18px,2.4vw,34px);align-items:start}
.workflow-detail .eyebrow{color:#7fb0ff;font-size:.7rem}
.workflow-detail h3{font-size:clamp(1.5rem,2.2vw,2.15rem);line-height:1.12;letter-spacing:-.04em;font-weight:500;margin:12px 0 12px}
.workflow-detail>div:first-child>p:last-child{font-size:.95rem;line-height:1.62;color:var(--copy)}
.workflow-record{padding:18px 20px;border-radius:18px;border:1px solid var(--line-hi);background:rgba(4,9,19,.78);box-shadow:0 1px 0 #ffffff10 inset}
.workflow-record .micro{color:#7fb0ff;font-size:.68rem}
.workflow-record blockquote{margin:10px 0;padding:0;font-size:.95rem;line-height:1.6;color:#eef3fb;white-space:pre-line}
.workflow-record>p{font-size:.8rem;color:#98aac3;line-height:1.5}
.workflow-edit{margin-top:14px}
.workflow-edit label{display:block;font-size:.82rem;color:#d4deec;margin-bottom:6px}
.workflow-edit textarea{width:100%;min-width:0;font:inherit;font-size:.92rem;color:#fff;background:#050b17;border:1px solid var(--line-hi);border-radius:12px;padding:12px;resize:vertical}
.workflow-edit [role=alert]{color:#ffb4a8;font-size:.82rem;margin-top:6px}
.example-edit-actions{display:flex;gap:18px;margin-top:8px}
.example-edit-actions button,.workflow-controls .text-link{background:none;border:0;font:inherit;cursor:pointer}
.workflow-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.workflow-controls>span{font-size:.82rem;color:#8ea1bd;margin-left:auto}
.workflow-controls .button{min-height:48px;padding:14px 20px;font-size:.92rem;line-height:1.4;text-align:center;max-width:100%}
.workflow-controls .button:disabled{opacity:.45;cursor:not-allowed}
.stage-ticks{position:absolute;right:max(14px,calc(var(--pad)/2));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0;z-index:2}
.stage-ticks li{width:4px;height:22px;border-radius:3px;background:#243553;transition:background .5s,box-shadow .5s,height .5s var(--ease)}
.stage-ticks li.on{background:#9cc6ff;box-shadow:0 0 12px #78b0ff}
.stage-ticks li.cur{height:38px;background:#fff}
.stage-after{padding-block:32px 0}
.simulation-note{font-size:.88rem;color:#93a3ba;max-width:80ch;padding-block:26px 0}
.sample-link{margin-top:10px;font-size:.92rem}
.stage-after+*{}
.stage-after{padding-bottom:clamp(60px,8vw,110px)}
.stage-ticks,.stage-hint{display:none}

/* ---------- how we work ---------- */
.implementation-story{background:linear-gradient(180deg,#050a14,#04070e)}
.implementation-story::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 40% at 85% 10%,#1f4fd224,transparent 70%)}
.implementation-steps{position:relative;display:grid;grid-template-columns:1fr;gap:18px;max-width:980px;margin:clamp(40px,5vw,64px) auto 0;padding:0 0 0 38px}
.implementation-steps::before{content:"";position:absolute;left:5px;top:28px;bottom:28px;width:2px;border-radius:2px;background:#1b2a47}
.implementation-steps::after{content:"";position:absolute;left:5px;top:28px;width:2px;height:clamp(0px,calc(100% * var(--how,0) - 28px),calc(100% - 56px));border-radius:2px;background:linear-gradient(180deg,#2457d9,#a8d0ff);box-shadow:0 0 16px #5b97ff;transition:height .4s var(--ease)}
.implementation-steps article{position:relative;display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,1fr);column-gap:28px;row-gap:8px;padding:26px 30px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(120deg,#11234180,#07101b80);transition:border-color .4s,background .4s}
.implementation-steps article::before{content:"";position:absolute;left:-38px;top:24px;width:12px;height:12px;border-radius:50%;background:#0a1630;border:2px solid #34507f;transition:background .4s,box-shadow .4s}
.implementation-steps article.is-active{border-color:#8bbcff80;background:linear-gradient(120deg,#17365c99,#0a172b80)}
.implementation-steps article.is-active::before{background:#a8d0ff;border-color:#fff;box-shadow:0 0 0 6px #3b82ff33,0 0 22px #78b0ff}
.process-number{font-size:.8125rem;letter-spacing:.12em;color:var(--blue-hi);font-weight:500;text-transform:uppercase;grid-row:1/3}
.process-number span{display:block;color:#e3ecf9;margin-top:8px}
.implementation-steps h3{font-size:1.25rem;line-height:1.3;letter-spacing:-.025em;font-weight:500}
.implementation-steps p:last-child{font-size:1rem;line-height:1.65;color:var(--copy)}

/* ---------- oversight ---------- */
.oversight-v75{background:linear-gradient(180deg,#04070e,#060d1b);overflow:hidden}
.oversight-v75 .wrap{position:relative}
.oversight-v75::after{content:"";position:absolute;z-index:-1;right:-14vw;top:8%;width:46vw;height:46vw;border-radius:50%;border:1px solid #6fa5ff22;box-shadow:0 0 0 7vw #3b82ff06,0 0 0 14vw #3b82ff04,inset 0 0 120px #3b82ff12;animation:ring 40s linear infinite}
@keyframes ring{to{transform:rotate(360deg)}}
.oversight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:clamp(48px,6vw,84px)}
.oversight-grid article{padding:30px 30px 34px;display:grid;grid-template-columns:auto 1fr;column-gap:22px;align-items:start}
.oversight-grid article::before{z-index:0}
.oversight-grid h3{font-size:1.32rem;letter-spacing:-.03em;font-weight:500;margin-bottom:8px;grid-column:2}
.oversight-grid p{grid-column:2;font-size:.97rem;color:var(--copy);line-height:1.65}
.oversight-grid article>h3::before{content:"";position:absolute;left:30px;top:32px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-hi);background:radial-gradient(circle,#78b0ff 0 3px,transparent 4px),#0d1b36}
.oversight-grid article{padding-left:92px;display:block}

/* ---------- packages ---------- */
.pricing-section{background:linear-gradient(180deg,#060d1b 0%,#050b17 100%);overflow:hidden}
.pricing-section::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 45% at 50% 38%,#1f4fd233,transparent 72%)}
.package-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(28px,6vw,96px);align-items:end}
.package-intro>p{font-size:var(--fs-lead);line-height:1.62;max-width:42ch}
.sosa-packages{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(48px,6vw,84px);align-items:stretch}
.sosa-package{display:flex;flex-direction:column;padding:clamp(24px,2.3vw,34px);border-radius:24px;min-height:0;background:linear-gradient(160deg,#102039,#080f1c 70%);border-color:#6787b43d;box-shadow:0 22px 55px -32px #000c}
.sosa-package .package-heading{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.sosa-package h3{font-size:1.9rem;letter-spacing:-.04em;font-weight:500}
.package-family{display:block;margin-bottom:10px;font-size:.75rem;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:#a9bcd5}
.flagship-label{position:absolute;top:-5px;right:0;padding:6px 12px;border-radius:999px;border:1px solid #9cc6ff88;color:#d7e8ff;background:#3b82ff24;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
.package-description{margin-top:12px;font-size:.98rem;color:var(--copy);line-height:1.58;min-height:4.74em}
.package-price{margin-top:26px;flex-wrap:wrap;font-size:clamp(3rem,4.1vw,3.5rem);line-height:1;letter-spacing:-.04em;font-weight:500;color:var(--ink);display:flex;align-items:baseline;gap:8px;background:linear-gradient(180deg,#fff 20%,#aebfd8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;position:relative}
.package-price span{font-size:1rem;letter-spacing:0;font-weight:400;-webkit-text-fill-color:#a9b8cc;color:#a9b8cc}
.package-setup{margin-top:14px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:#050b1799;font-size:1.15rem;font-weight:500;color:#eaf1fb;letter-spacing:-.01em}
.package-setup span{display:block;margin-top:2px;font-size:.8rem;font-weight:400;color:#9cb0ca;letter-spacing:0}
.package-scope{margin:26px 0 30px;flex:1}
.package-scope h4{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#7fb0ff;font-weight:500;margin:20px 0 10px}
.package-scope h4:first-child{margin-top:0}
.package-scope ul{list-style:none;margin:0;padding:0}
.package-scope li{position:relative;padding:8px 0 8px 26px;font-size:.96rem;line-height:1.45;color:#d1dbe9;border-top:1px solid #ffffff0d}
.package-scope li::before{content:"";position:absolute;left:3px;top:15px;width:11px;height:6px;border-left:2px solid #78b0ff;border-bottom:2px solid #78b0ff;transform:rotate(-45deg) scale(.9)}
.sosa-package .button{width:100%}
.sosa-package:not(.flagship) .button{background:#15253e;box-shadow:0 6px 18px -12px #000;color:#e5efff;border-color:#688bb857}
.sosa-package:not(.flagship) .button:hover{background:#203b63;border-color:#91b9ee}
.sosa-package.flagship{border-color:#82b3ff9c;background:radial-gradient(140% 75% at 50% 0,#254c89,#102342 58%,#0a1427);box-shadow:0 1px 0 #d9e9ff33 inset,0 32px 88px -40px #2f6bffa6;transform:none}
.sosa-package.flagship:hover{transform:none}
.sosa-package.flagship .package-setup{background:#09182b99;border-color:#799ac743}
.sosa-package.flagship .package-heading::after{display:none}
.package-definitions{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:clamp(56px,7vw,96px) 0 0;border-top:1px solid var(--line)}
.package-definitions>div{padding:26px 24px 0 0}
.package-definitions dt{font-size:1.02rem;font-weight:500;color:#eef3fb;letter-spacing:-.015em;margin-bottom:8px}
.package-definitions dd{margin:0;font-size:.92rem;line-height:1.62;color:#a9b8cc}

/* Package and booking guidance: explain the decision beside the action. */
.package-next-step{display:grid;grid-template-columns:1fr 1fr;gap:24px 48px;margin-top:32px;padding:26px 0;border-block:1px solid var(--line);font-size:.92rem;line-height:1.6;color:#a9bcd5}
.package-next-step strong{display:block;color:#e4edfa;font-size:1.05rem;font-weight:500;margin-bottom:5px}
.package-next-step a{display:inline-block;color:#d7e7fe;margin-top:5px}
.call-agenda{margin:28px 0 0;max-width:46ch;border-top:1px solid var(--line-hi)}
.call-agenda>div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}
.call-agenda dt{font-size:.92rem;font-weight:500;color:#dceaff}
.call-agenda dd{margin:0;font-size:.92rem;line-height:1.55;color:#a9bcd5}
#inquiry-intro>p.booking-reassurance{font-size:.88rem;color:#a9bcd5;line-height:1.6}
#inquiry-intro>p.contact-phone{margin-top:16px;font-size:.9rem}
.contact-phone a{color:#dceaff}
@media(max-width:900px){.package-next-step{grid-template-columns:1fr;gap:14px}}
@media(max-width:360px){.call-agenda>div{grid-template-columns:1fr;gap:4px}}

/* ---------- proof: work ---------- */
.work-section{background:linear-gradient(180deg,#050b17,#04080f)}
.device{--rx:0deg;--ry:0deg;display:block;position:relative;text-decoration:none;color:inherit;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .6s var(--ease);transform-style:preserve-3d}
.frame-bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:linear-gradient(180deg,#1b2a47,#111d35);border:1px solid var(--line-hi);border-bottom:0;border-radius:14px 14px 0 0}
.frame-bar{position:relative;z-index:2}
.case-preview img,.project-image img{position:relative;z-index:1}
.frame-bar i{width:8px;height:8px;border-radius:50%;background:#4a5f86}
.frame-bar i:nth-child(1){background:#6b7fa3}
.frame-bar b{margin-left:10px;flex:1;max-width:60%;height:18px;line-height:18px;padding:0 10px;border-radius:9px;background:#060d1b;color:#8ea4c4;font-size:.68rem;font-weight:400;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.case-study{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(28px,5vw,80px);align-items:center;margin-top:clamp(48px,6vw,84px)}
.case-preview{border-radius:14px}
.case-preview img,.project-image img{transform:scale(1.07)}
.case-preview img,.project-image img{display:block;width:100%;height:auto;border:1px solid var(--line-hi);border-top:0;border-radius:0 0 14px 14px;transition:transform 1.2s var(--ease),filter .6s;filter:saturate(1.05)}
.case-preview::after,.device::after{content:"";position:absolute;inset:30px 0 0;border-radius:0 0 14px 14px;background:linear-gradient(115deg,transparent 40%,#ffffff1c 50%,transparent 60%);background-size:260% 100%;background-position:130% 0;transition:background-position 1.1s var(--ease);pointer-events:none}
.device:hover::after{background-position:-30% 0}
.device:hover img{transform:scale(1.11)}
.case-preview>span{position:absolute;right:18px;bottom:18px;padding:9px 16px;border-radius:999px;background:#03060ccc;border:1px solid var(--line-hi);font-size:.7rem;letter-spacing:.16em;color:#fff}
.case-title .tag{display:inline-block;margin-bottom:14px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#7fb0ff}
.case-title .micro{margin-bottom:12px}
.case-title h3{font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.02;letter-spacing:-.04em;font-weight:500;margin-bottom:26px}
.case-title .text-link{margin-right:22px}
.case-details{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;border-top:1px solid var(--line)}
.case-details>div{padding:22px 24px 0 0}
.case-details dt{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#7fb0ff;margin-bottom:6px}
.case-details dd{margin:0;font-size:.98rem;color:#d1dbe9;line-height:1.55}
.portfolio-label{margin:clamp(64px,8vw,110px) 0 28px}
.portfolio-label h3{font-size:clamp(1.5rem,2.6vw,2.2rem);letter-spacing:-.04em;font-weight:500}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(24px,3vw,44px)}
.project-grid>a{padding:0}
.project-grid>a>span{display:inline-block;margin:18px 0 6px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#7fb0ff}
.project-grid h3{font-size:1.5rem;letter-spacing:-.035em;font-weight:500}
.project-grid p{margin-top:6px;font-size:.92rem;color:#a9b8cc}
.project-image{overflow:hidden;border-radius:14px}
.case-preview{overflow:hidden}
.project-image{border-top-left-radius:14px;border-top-right-radius:14px}
.project-grid>a:hover p{color:#fff}
.work-note{margin-top:42px;max-width:70ch;font-size:.95rem;color:#a9b8cc;padding-left:18px;border-left:2px solid #78b0ff88}
.cinematic-showcase{padding-top:clamp(32px,5vw,64px);border-top:1px solid var(--line);scroll-margin-top:110px}
.cinematic-description{max-width:40ch;margin:0 0 24px;color:#a9b8cc;font-size:1rem;line-height:1.65}

/* ---------- reviews carousel ---------- */
.reviews-section{background:linear-gradient(180deg,#04080f,#060d1b);overflow:hidden}
.reviews-section::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 60% at 80% 0,#1f4fd22b,transparent 70%)}
.review-score{display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap;justify-self:end;padding:16px 22px;border-radius:20px;border:1px solid var(--line-hi);background:linear-gradient(165deg,#12254a99,#07101f99);text-decoration:none;color:var(--copy);transition:border-color .3s,transform .5s var(--ease)}
.review-score:hover{border-color:#9cc6ffaa;transform:translateY(-3px)}
.review-score strong{font-size:1.9rem;color:#fff;letter-spacing:-.04em;font-weight:500;line-height:1}
.review-stars{color:#f3d487;letter-spacing:.1em;font-size:.95rem}
.review-meta{font-size:.9rem}
.review-verify{width:100%;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#7fb0ff;margin-top:-4px}
.review-carousel{position:relative;margin-top:clamp(40px,5vw,72px);margin-right:calc((100vw - min(1240px,100vw - 2*var(--pad)))/-2)}
.review-grid{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px var(--pad) 8px 0;scrollbar-width:none;overscroll-behavior-x:contain;border-radius:20px}
.review-grid::-webkit-scrollbar{display:none}
.review-grid:focus-visible{outline-offset:6px}
.review-card{flex:0 0 min(680px,84%);scroll-snap-align:start;margin:0;padding:clamp(26px,3vw,44px);border-radius:26px;border:1px solid var(--line-hi);background:linear-gradient(165deg,rgba(22,42,80,.7),rgba(7,13,26,.85));display:flex;flex-direction:column;position:relative;overflow:hidden}
.review-card::before{content:"\201C";position:absolute;right:26px;top:-6px;font:italic 9rem/1 var(--serif);color:#78b0ff1c;pointer-events:none}
.review-card blockquote{margin:18px 0 28px;padding:0;font-size:clamp(1.1rem,1.55vw,1.4rem);line-height:1.52;letter-spacing:-.015em;color:#eef3fb;font-weight:400;flex:1}
.review-card figcaption{font-size:1rem;font-weight:500;color:#fff;display:flex;flex-direction:column;gap:2px;padding-top:20px;border-top:1px solid var(--line)}
.review-card figcaption span{font-size:.86rem;font-weight:400;color:#9cb0ca}
.carousel-ctl{display:flex;align-items:center;gap:12px;margin-top:22px}
.carousel-ctl button{display:grid;place-items:center;min-width:48px;height:48px;padding:0 16px;border-radius:999px;border:1px solid var(--line-hi);background:#0c1a3299;color:#e3ecf9;font:500 .85rem var(--font);cursor:pointer;transition:background .3s,border-color .3s}
.carousel-ctl button:hover{background:#1a3366;border-color:#9cc6ff88}
.carousel-ctl button:disabled{opacity:.35;cursor:default}
.carousel-count{margin-left:auto;margin-right:var(--pad);font-size:.82rem;letter-spacing:.14em;color:#8ea1bd}
.review-note{margin-top:20px;font-size:.84rem;color:#8ea1bd}

/* ---------- founder ---------- */
.founder-grid{background:linear-gradient(180deg,#060d1b,#04080f)}
.founder-grid>.wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,7vw,120px);align-items:center}
.founder-image{position:relative;width:100%;max-width:440px;margin-inline:auto}
.founder-image::before{content:"";position:absolute;inset:-14px;border-radius:34px;background:conic-gradient(from 160deg,#3b82ff55,transparent 30%,#9cc6ff33 60%,transparent 80%,#3b82ff55);filter:blur(22px);opacity:.7;z-index:-1}
.founder-image img{display:block;width:100%;height:auto;border-radius:26px;border:1px solid var(--line-hi)}
.founder-caption{position:absolute;left:14px;right:14px;bottom:14px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px;padding:14px 16px;border-radius:18px;background:rgba(3,7,14,.82);border:1px solid var(--line)}
.founder-caption{flex-wrap:wrap}
.founder-badge{max-width:100%}
.founder-identity{font-size:.92rem;font-weight:500;color:#fff;line-height:1.35}
.founder-identity span{display:block;font-weight:400;font-size:.78rem;color:#9cb0ca}
.founder-badge{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line-hi);font-size:.76rem;color:#dce8f8;text-decoration:none;white-space:nowrap}
.founder-badge:hover{background:#ffffff14}
.founder-lead{font-size:var(--fs-lead);line-height:1.6;color:#dbe5f3;margin:26px 0 16px}
.founder-copy p{max-width:58ch}
.founder-copy p+p{margin-top:14px}
.founder-credentials{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.founder-credentials span{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:#0a152a88;font-size:.82rem;color:#c3d0e2}

/* ---------- faq ---------- */
.faq-section{background:#04080f}
.faq-section>.wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(32px,6vw,100px);align-items:start}
.faq-section>.wrap>div:first-child{position:sticky;top:110px}
.faq-section h2{margin-bottom:24px}
.faq-list details{border-top:1px solid var(--line);padding:0}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:1.12rem;font-weight:500;color:#eef3fb;letter-spacing:-.015em;line-height:1.4;transition:color .3s}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"";flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-hi);background:linear-gradient(#cfe3ff,#cfe3ff) center/12px 1.5px no-repeat,linear-gradient(#cfe3ff,#cfe3ff) center/1.5px 12px no-repeat;transition:transform .5s var(--ease),background-color .3s}
.faq-list details[open] summary::after{transform:rotate(135deg);background-color:#1a3366}
.faq-list summary:hover{color:#fff}
.faq-list details p{padding:0 54px 24px 0;font-size:1rem;line-height:1.7;color:var(--copy);max-width:64ch;animation:faq-in .6s var(--ease)}
.faq-list details p a{color:#e1ebf9}
@keyframes faq-in{from{opacity:0;transform:translateY(-8px)}}

/* ---------- contact ---------- */
.audit-section{position:relative;padding-block:var(--sec);overflow:hidden;background:radial-gradient(90% 70% at 50% 110%,#143a86 0%,#071228 45%,#04080f 100%);isolation:isolate;border-top:1px solid var(--line)}
.audit-section::before{content:"";position:absolute;inset:-50%;width:200%;height:200%;z-index:-1;background-image:var(--grain);opacity:.06;mix-blend-mode:overlay}
.cta-signal{display:none}
.audit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(32px,6vw,100px);align-items:center}
#inquiry-intro h2{font-size:clamp(2.4rem,5.4vw,5rem);line-height:1.02;padding-bottom:.1em;margin-bottom:22px;background:linear-gradient(180deg,#fff,#c9d6e8);-webkit-background-clip:text;background-clip:text;color:transparent}
#inquiry-intro h2 em{font-family:var(--font);font-style:normal;font-weight:500;color:#b7cce9}
#inquiry-intro>p{max-width:46ch;font-size:var(--fs-lead);line-height:1.62}
#inquiry-intro .contact-actions{margin:30px 0 22px}
#inquiry-intro>p:last-of-type{font-size:.98rem;color:#a9b8cc;margin-top:8px}
.social-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:18px}
.social-links a{font-size:.88rem;color:#c3d0e2;text-underline-offset:4px}
.audit-card{padding:clamp(24px,3vw,40px);border-radius:28px;border:1px solid var(--line-hi);background:linear-gradient(160deg,rgba(17,33,62,.78),rgba(5,10,21,.9));box-shadow:0 1px 0 #ffffff1c inset,0 60px 140px -60px #2f6bffaa}
.audit-card>h3{font-size:1.7rem;letter-spacing:-.04em;font-weight:500;margin-bottom:20px}
#revenue-inquiry{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#revenue-inquiry label{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:.84rem;color:#c3d0e2;font-weight:500}
#revenue-inquiry label[hidden],#revenue-inquiry [hidden]{display:none}
#revenue-inquiry .inquiry-wide,#revenue-inquiry .inquiry-consent,#revenue-inquiry button,#revenue-inquiry .inquiry-privacy-note,#revenue-inquiry #inquiry-status{grid-column:1/-1}
#revenue-inquiry input:not([type=checkbox]),#revenue-inquiry textarea{width:100%;min-width:0;font:400 1rem var(--font);color:#fff;background:#050b17cc;border:1px solid #2c4271;border-radius:14px;padding:14px 16px;min-height:50px;transition:border-color .3s,box-shadow .3s,background .3s}
#revenue-inquiry textarea{min-height:128px;resize:vertical}
#revenue-inquiry input::placeholder,#revenue-inquiry textarea::placeholder{color:#7d90ad}
#revenue-inquiry input:not([type=checkbox]):focus,#revenue-inquiry textarea:focus{outline:none;border-color:#78b0ff;box-shadow:0 0 0 4px #3b82ff30;background:#07101f}
#revenue-inquiry .inquiry-consent{flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;font-size:.84rem;line-height:1.55;color:#b4c2d6}
#revenue-inquiry .inquiry-consent input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:#3b82ff}
.inquiry-honey{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.inquiry-privacy-note{font-size:.8rem;color:#8ea1bd}
.inquiry-privacy-note a,.audit-card>p a{color:#d7e5f9}
#revenue-inquiry button[type=submit]{width:100%;font-family:var(--font)}
#inquiry-status{font-size:.9rem;color:#cfe3ff;min-height:1.4em}
.audit-card>p{margin-top:16px;font-size:.9rem}
.audit-direct{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:14px;font-size:.9rem}
.audit-direct a{color:#c3d0e2;text-decoration:none}
.audit-direct a:hover{color:#fff}

/* ---------- footer ---------- */
.footer{padding:clamp(56px,7vw,96px) 0 84px;background:#02040a;border-top:1px solid var(--line)}
.footer-main{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(24px,6vw,96px);align-items:center;padding-bottom:40px;border-bottom:1px solid var(--line)}
.footer-main p{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.08;letter-spacing:-.04em;font-weight:500;color:#fff}
.footer-main>div{display:flex;flex-direction:column;gap:6px;font-size:.95rem;text-align:right}
.footer-main a,.footer-bottom a{text-decoration:none;color:#c3d0e2}
.footer-main a:hover,.footer-bottom a:hover,.footer-service-link a:hover{color:#fff}
.footer .brand img{height:56px}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:22px 0;font-size:.86rem;color:#8ea1bd}
.footer-service-link{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 28px;padding-bottom:22px;font-size:.86rem;color:#8ea1bd}
.footer-service-link>div{display:flex;flex-wrap:wrap;gap:8px 24px}
.footer-service-link a{color:#c3d0e2;text-decoration:none}
.footer-social{padding-bottom:18px}
.footer-legal{display:flex;gap:22px;font-size:.82rem;padding-bottom:12px}
.footer-legal a,.accessibility-note a{color:#a9b8cc}
.accessibility-note{font-size:.82rem;color:#8ea1bd}

/* ---------- persistent controls ---------- */
.motion-dock{position:fixed;left:16px;bottom:16px;z-index:120}
@media (min-width:901px){.motion-dock{left:50%;transform:translateX(-50%);bottom:14px}}
.motion-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px 0 14px;border-radius:999px;border:1px solid var(--line-hi);background:rgba(4,8,15,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#dbe6f6;font:500 .8rem var(--font);letter-spacing:.04em;cursor:pointer;transition:border-color .3s,background .3s}
.motion-btn[hidden]{display:none}
.motion-btn:hover{border-color:#9cc6ffaa;background:rgba(14,28,56,.92)}
.motion-ico{position:relative;width:10px;height:12px;border-left:3px solid currentColor;border-right:3px solid currentColor;box-sizing:border-box}
.motion-btn[aria-pressed="true"] .motion-ico{width:0;height:0;border:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor}
.mobile-audit{display:none}

/* Pause controls are scoped to their owning section. */
#home.motion-paused *,#home.motion-paused *::before,#home.motion-paused *::after,
#featured-experience.motion-paused *,#featured-experience.motion-paused *::before,#featured-experience.motion-paused *::after{animation-play-state:paused!important}
#featured-experience.motion-paused *{transition:none!important}

/* ---------- reduced motion: static, complete ---------- */
@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 #entrance{display:none!important}
 .price-wipe .package-price{clip-path:none;filter:none}
 .hx{opacity:1;filter:none;transform:none}
 .hero-emphasis{background-position:50% 0}
 .motion-dock{display:none}
}

/* ---------- responsive ---------- */
@media (max-width:1100px){
 .desktop-nav{display:none}
 .menu-toggle{display:inline-flex;margin-left:0}
 .nav-call{margin-left:auto}
 .nav-row{gap:14px}

 .hero-layout{grid-template-columns:1fr}
 .workforce-scene{max-width:560px}
 .outcome-list,.capability-grid{grid-template-columns:repeat(2,1fr)}
 .sosa-packages{grid-template-columns:1fr;max-width:560px;margin-inline:auto}
 .package-description{min-height:0}
 .sosa-package{min-height:0}
 .sosa-package.flagship{transform:none}
 .sosa-package.flagship:hover{transform:none}
 
 .package-definitions{grid-template-columns:repeat(2,1fr)}
 .case-study{grid-template-columns:1fr}
 .oversight-grid{grid-template-columns:1fr}
}
@media (max-width:900px){
 .desktop-nav{display:none}
 .menu-toggle{display:inline-flex}
 .nav-row{height:64px}
 .nav .brand img,body.scrolled .nav .brand img{height:68px}
 .split-intro,.section-intro,.package-intro{grid-template-columns:1fr;align-items:start}
 .stage-grid{grid-template-columns:1fr}
 .stage-veil{background:linear-gradient(180deg,#030710 0%,#030710aa 20%,#03071070 100%)}
 .workflow-tabs{flex-direction:row;flex-wrap:wrap}
 .workflow-detail{grid-template-columns:1fr}
 .founder-grid>.wrap,.faq-section>.wrap,.audit-grid{grid-template-columns:1fr}
 .faq-section>.wrap>div:first-child{position:static}
 .footer-main{grid-template-columns:1fr;text-align:left}
 .footer-main>div{text-align:left}
 .review-score{justify-self:start}
}
@media (max-width:640px){
 #hero-canvas{opacity:.6}
 body.v76{font-size:1rem}
 :root{--sec:84px;--pad:20px}
 .signal-hero{padding-top:92px;min-height:auto}
 .signal-hero h1{font-size:clamp(2rem,11.9vw,3.35rem);line-height:1.04}
 .hero-chips{gap:8px 16px}
 .hero-chips li{font-size:.78rem;padding:2px 0}
 .hero-chips li+li{margin-left:0}
 .studio-hero-bottom{flex-direction:column;align-items:flex-start;gap:12px}
 .studio-hero-bottom p span{display:block;margin-left:0}
 .workforce-scene{padding:22px 18px 18px;border-radius:24px}
 .outcome-list,.capability-grid,.project-grid{grid-template-columns:1fr}
 .outcome-list article,.capability-grid article{min-height:0}
 .outcome-list article>h3::before{margin-bottom:26px}
 .workflow-steps{gap:2px}
 .workflow-steps button{font-size:.68rem}
 .workflow-steps button span{width:34px;height:34px}
 .workflow-steps::before,.workflow-steps::after{top:16px}
 .workflow-controls>span{margin-left:0;width:100%}
 .workflow-demo{padding:20px 16px;border-radius:24px}
 .package-definitions,.case-details{grid-template-columns:1fr}
 .package-definitions>div,.case-details>div{padding:20px 0 0}
 .review-card{flex-basis:88%}
 #revenue-inquiry{grid-template-columns:1fr}
 .founder-caption{flex-direction:column;align-items:flex-start}
 .faq-list summary{font-size:1.02rem}
 .faq-list details p{padding-right:0}
 .implementation-steps{padding-left:26px;gap:16px}
 .implementation-steps article{grid-template-columns:1fr;padding:24px 20px;gap:10px}
 .implementation-steps article::before{left:-26px}
 .process-number{grid-row:auto}
 .process-number span{display:inline;margin:0 0 0 8px}
 .nav-row{gap:8px}
 .nav-call{padding:0 10px;font-size:.8125rem;gap:6px}
 .menu-toggle{padding:0 13px;font-size:.8125rem}
 .hero-copy .eyebrow{font-size:.6875rem;letter-spacing:.12em;gap:10px}
 .hero-copy .eyebrow::before{width:20px;flex-shrink:0}
 .scene-caption{flex-wrap:wrap;font-size:.8125rem}
 .scene-caption span:last-child{font-size:.6875rem}
 .motion-btn .motion-txt{font-size:.74rem}
 .motion-btn{padding:0 14px 0 12px}
 html.js body.show-cta .mobile-audit{display:inline-flex;position:fixed;right:12px;bottom:12px;z-index:119;min-height:44px;padding:0 20px;font-size:.88rem}
 .footer-bottom,.footer-service-link{flex-direction:column}
}
@media (max-width:360px){
 .nav .brand img,body.scrolled .nav .brand img{height:56px}
 .menu-toggle{width:44px;padding:0;font-size:0;gap:0}
 .menu-toggle span{font-size:1rem}
 .nav-call{font-size:.75rem;padding:0 8px}
 .motion-btn{width:44px;padding:0;justify-content:center}
 .motion-btn .motion-txt{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .sosa-package{padding:24px 20px}
 .flagship-label{font-size:.6875rem;padding:6px 8px}
 .package-price{font-size:2.9rem}
 .sosa-package .button{padding-inline:14px;font-size:.9rem}
}
@media print{[data-reveal]{opacity:1!important;transform:none!important}.nav,.motion-dock,#entrance{display:none!important}}

/* v76.13: visible example motion and stable hero composition. */
.studio-hero-bottom{flex-wrap:wrap}
.workflow-heading .motion-btn{font-size:.75rem;letter-spacing:0}
@media (prefers-reduced-motion:no-preference){
 .js #featured-experience .workflow-steps button[aria-pressed="true"] span{animation:example-node 2.4s ease-in-out infinite}
 .js #featured-experience .workflow-record{position:relative;overflow:hidden}
 .js #featured-experience .workflow-record::after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,#a8d0ff,transparent);transform:translateY(-100%);animation:example-signal 3.2s linear infinite;pointer-events:none}
 .js #featured-experience .workflow-detail.is-changing{animation:example-reveal .32s ease-out}
}
@keyframes example-node{0%,100%{box-shadow:0 0 0 0 #78b0ff00}50%{box-shadow:0 0 0 7px #78b0ff20,0 0 20px #78b0ff55}}
@keyframes example-signal{to{transform:translateY(100%)}}
@keyframes example-reveal{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Reserve control space during script startup and reduced-motion changes. */
.js .motion-btn[hidden]{display:inline-flex!important;visibility:hidden;pointer-events:none}

/* Prospecting example keeps the existing five-step controls and local motion. */
.prospecting-caption{margin-top:22px;color:#c6ddff;font-size:.95rem;font-weight:600}
.prospecting-summary{padding-left:22px;line-height:1.8}
