:root{
  --lime:#B0F028; --black:#080808; --charcoal:#202428; --steel:#8F9AA1; --mist:#F2F4F5;
  --panel:rgba(32,36,40,.62); --line:rgba(143,154,161,.24); --line-strong:rgba(143,154,161,.42);
  --font:"Avenir Next","Avenir","Helvetica Neue",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  --gutter:clamp(16px,4vw,48px);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--black);color:var(--mist);font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{margin:0;font-weight:600;line-height:1.08;letter-spacing:-.02em}
p{margin:0}
a{color:inherit}
img,svg{display:block;max-width:100%}
.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--gutter)}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px;border-radius:4px}
main:focus{outline:none}

.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--lime);color:var(--black);padding:10px 16px;border-radius:4px;font-weight:600;text-decoration:none}
.skip:focus{top:12px}

.preview-bar{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:8px 16px;font-size:13px;color:var(--steel);border-bottom:1px solid var(--line);background:var(--black)}
.preview-bar .preview-detail{color:var(--steel)}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);flex:none}

/* Header */
.header{position:sticky;top:0;z-index:50;background:rgba(8,8,8,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.wordmark{font-weight:700;letter-spacing:.18em;text-decoration:none;font-size:15px}
#navigation{display:flex;align-items:center;gap:28px}
#navigation a{text-decoration:none;font-size:15px;color:var(--steel);transition:color 180ms ease}
#navigation a:hover{color:var(--mist)}
#navigation .nav-cta{color:var(--black);background:var(--lime);padding:9px 16px;border-radius:4px;font-weight:600}
#navigation .nav-cta:hover{color:var(--black);background:#c3f553}
.menu-toggle{display:none;background:none;border:1px solid var(--line-strong);color:var(--mist);font:inherit;font-size:15px;padding:8px 14px;border-radius:4px;min-height:44px;cursor:pointer}

/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:4px;font:inherit;font-size:16px;font-weight:600;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease,transform 180ms ease,color 180ms ease}
.button:active{transform:translateY(1px)}
.primary{background:var(--lime);color:var(--black)}
.primary:hover{background:#c3f553}
.ghost{border-color:var(--line-strong);color:var(--mist);background:rgba(8,8,8,.4)}
.ghost:hover{border-color:var(--steel)}
.secondary{background:transparent;border-color:var(--line);color:var(--steel)}
.button:disabled{cursor:not-allowed;opacity:.7}
.text-button{background:none;border:0;color:var(--steel);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:8px 0;min-height:44px}
.micro{font-size:14px;color:var(--steel)}

/* Hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.corridor{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.corridor-lime{stroke-dasharray:900;stroke-dashoffset:900;animation:path-in 1400ms var(--ease) 300ms forwards}
@keyframes path-in{to{stroke-dashoffset:0}}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:40px;min-height:min(820px,calc(100svh - 100px));padding-top:56px;padding-bottom:72px}
.kicker{color:var(--steel);font-size:16px;margin-bottom:22px}
h1{font-size:clamp(2.6rem,5.6vw,5.4rem);letter-spacing:-.035em;line-height:1}
h1 span{display:block}
@media (min-width:861px){h1 span{white-space:nowrap}}
.lead{font-size:clamp(1.15rem,1.7vw,1.4rem);color:var(--mist);opacity:.86;max-width:30ch;margin-top:26px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero-copy .micro{margin-top:16px}

.hero-visual{position:relative;width:100%;max-width:560px;justify-self:end;aspect-ratio:1/1}
.globe{width:100%;height:100%;overflow:visible}
.orbit-lit{animation:orbit 16s linear infinite}
@keyframes orbit{to{stroke-dashoffset:-100}}

.widget{position:absolute;display:grid;gap:6px;min-width:168px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--panel);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(242,244,245,.08);animation:drift 7s ease-in-out infinite}
.widget strong{font-size:15px;font-weight:600}
.widget-label{font-size:12px;color:var(--steel)}
.w-inquiry{top:8%;left:-4%}
.w-task{top:46%;right:-6%;animation-delay:-2.3s;animation-duration:8s}
.w-review{bottom:4%;left:8%;animation-delay:-4.6s;animation-duration:9s}
@keyframes drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-5px,0)}}
.motion-toggle{position:absolute;right:var(--gutter);bottom:20px;background:rgba(8,8,8,.6)}
.is-paused .widget,.is-paused .orbit-lit{animation-play-state:paused}

.chip{justify-self:start;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;line-height:1;padding:6px 9px;border-radius:999px;border:1px solid var(--line-strong);color:var(--steel);transition:color 220ms ease,background-color 220ms ease,border-color 220ms ease}
.chip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.chip[data-state="active"],[data-state="active"]>.chip{color:var(--lime);border-color:rgba(176,240,40,.5)}
.chip[data-state="done"],[data-state="done"]>.chip{color:var(--black);background:var(--lime);border-color:var(--lime)}

/* Sections */
.section{padding:clamp(64px,8vw,112px) 0;border-bottom:1px solid var(--line)}
.section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px 64px;align-items:end;margin-bottom:56px}
.section-head.stacked{grid-template-columns:1fr;align-items:start;margin-bottom:0}
h2{font-size:clamp(2rem,4.2vw,3.5rem);max-width:18ch}
.section-head p,.section-copy{color:var(--steel);max-width:52ch}
.tag{display:inline-block;font-size:12px;font-weight:600;color:var(--steel);border:1px solid var(--line);border-radius:999px;padding:4px 10px;line-height:1.3}

/* Workflow */
.flow-panel{border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,rgba(242,244,245,.035),rgba(242,244,245,0) 40%),var(--panel);padding:24px clamp(16px,3vw,32px) 32px;box-shadow:inset 0 1px 0 rgba(242,244,245,.06)}
.flow-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}
.flow-caption{font-weight:600}
.flow-controls{display:flex;gap:8px}
.control{min-height:44px;min-width:44px;padding:0 16px;background:transparent;color:var(--mist);border:1px solid var(--line-strong);border-radius:4px;font:inherit;font-size:14px;cursor:pointer;transition:border-color 180ms ease,background-color 180ms ease}
.control:hover{border-color:var(--steel);background:rgba(242,244,245,.04)}
.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.stage{position:relative;display:grid;align-content:start;gap:10px;padding:18px 16px;border:1px solid var(--line);border-radius:8px;background:rgba(8,8,8,.45);transition:border-color 300ms ease,opacity 560ms var(--ease),transform 560ms var(--ease)}
.stage h3{font-size:17px;letter-spacing:-.01em}
.stage p{font-size:14px;color:var(--steel);line-height:1.5}
.stage .chip{margin-top:4px}
.stage-num{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line-strong);font-size:13px;color:var(--steel);transition:all 300ms ease}
.stage[data-state="active"]{border-color:rgba(176,240,40,.55)}
.stage[data-state="active"] .stage-num{border-color:var(--lime);color:var(--lime)}
.stage[data-state="done"] .stage-num{border-color:var(--lime);background:var(--lime);color:var(--black)}
/* connector paths between stages */
.stage:not(:last-child)::before,.stage:not(:last-child)::after{content:"";position:absolute;top:32px;left:100%;width:20px;height:1px;background:var(--line-strong)}
.stage:not(:last-child)::after{background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform 420ms var(--ease)}
.stage[data-state="done"]:not(:last-child)::after{transform:scaleX(1)}
.flow-panel.armed .stage:not(.in){opacity:0;transform:translate3d(-14px,0,0)}

/* Services */
.services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line-strong)}
.service{display:grid;align-content:start;gap:14px;padding:28px 28px 8px 0;margin-right:28px;border-right:1px solid var(--line)}
.service:last-child{border-right:0;margin-right:0}
.service h3{font-size:22px;max-width:14ch}
.service p{color:var(--steel);font-size:16px}
.service .tag{justify-self:start;margin-top:4px}

/* Dashboard */
.dash-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center}
.dashboard{margin:0;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,rgba(242,244,245,.05),rgba(242,244,245,0) 30%),var(--panel);box-shadow:inset 0 1px 0 rgba(242,244,245,.08),0 30px 60px -30px rgba(0,0,0,.8);overflow:hidden}
.dash-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);font-weight:600}
.dash-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.dash-col{padding:18px 16px 24px;border-right:1px solid var(--line);min-height:220px}
.dash-col:last-child{border-right:0}
.dash-col h3{font-size:14px;color:var(--steel);font-weight:600;margin-bottom:14px;letter-spacing:0}
.dash-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dash-col li{font-size:14px;line-height:1.4;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:rgba(8,8,8,.5)}
.dash-col:last-child li{border-color:rgba(176,240,40,.45)}

/* Process */
.process{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;counter-reset:none}
.process li{display:grid;align-content:start;gap:12px;padding-top:20px;border-top:1px solid var(--line-strong)}
.step-num{font-size:14px;color:var(--lime);font-weight:600}
.process h3{font-size:20px}
.process p{color:var(--steel);font-size:15px}

/* Work */
.work{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 56px;align-items:baseline}
.work p{color:var(--steel);max-width:56ch}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 56px}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-size:18px;font-weight:600;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:10px;height:10px;border-right:1.5px solid var(--steel);border-bottom:1.5px solid var(--steel);transform:translateY(-70%) rotate(45deg);transition:transform 200ms ease}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{color:var(--steel);padding:0 40px 22px 0;max-width:60ch}

/* Inquiry (behavior preserved from original preview) */
.inquiry-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.inquiry-grid h2{margin-bottom:20px}
.connection{display:flex;gap:12px;align-items:flex-start;margin:32px 0 20px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.connection .status-dot{margin-top:9px;background:var(--steel)}
.connection p{color:var(--steel);font-size:15px}
.inquiry-form{display:grid;gap:8px;padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:inset 0 1px 0 rgba(242,244,245,.06)}
.form-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.form-heading h3{font-size:20px}
.inquiry-form label{font-size:15px;margin-top:12px}
.inquiry-form input:not([type=checkbox]),.inquiry-form select{width:100%;min-height:48px;padding:0 14px;font:inherit;font-size:16px;color:var(--mist);background:rgba(8,8,8,.7);border:1px solid var(--line-strong);border-radius:6px;transition:border-color 180ms ease}
.inquiry-form input:hover,.inquiry-form select:hover{border-color:var(--steel)}
.inquiry-form input::placeholder{color:#6d767c}
.check-label{display:flex;gap:10px;align-items:flex-start;margin:16px 0 8px}
.check-label input{width:20px;height:20px;margin:3px 0 0;accent-color:var(--lime);flex:none}
.inquiry-form .primary{margin-top:8px}
#form-result{min-height:1.6em;color:var(--mist);font-size:15px}
#form-result:focus{outline:none}
#form-result:not(:empty){padding:12px 14px;border-left:2px solid var(--lime);background:rgba(8,8,8,.5)}

/* Footer */
.footer{padding:56px 0 64px}
.footer-inner{display:grid;grid-template-columns:auto 1fr 1fr auto;gap:24px 48px;align-items:start}
.footer p{color:var(--steel);font-size:15px}
.footer span{color:var(--steel)}
.footer a:not(.wordmark){color:var(--steel);font-size:15px}

/* Tablet */
@media (max-width:1100px){
  .flow{grid-template-columns:1fr;gap:16px}
  .stage{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;column-gap:16px;row-gap:4px}
  .stage-num{grid-row:span 2}
  .stage h3{grid-column:2}
  .stage p{grid-column:2}
  .stage .chip{grid-column:3;grid-row:1 / span 2;margin:0;align-self:center}
  .stage:not(:last-child)::before,.stage:not(:last-child)::after{top:100%;left:30px;width:1px;height:16px}
  .stage:not(:last-child)::after{transform:scaleY(0);transform-origin:top}
  .stage[data-state="done"]:not(:last-child)::after{transform:scaleY(1)}
  .flow-panel.armed .stage:not(.in){transform:translate3d(0,10px,0)}
  .services{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service{padding:28px 24px 28px 0;margin-right:24px}
  .service:nth-child(2n){border-right:0;margin-right:0}
  .service:nth-child(n+3){border-top:1px solid var(--line)}
  .dash-grid,.work,.faq-grid{grid-template-columns:1fr}
  .process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-inner{grid-template-columns:1fr 1fr}
}

/* Phone and small tablet */
@media (max-width:860px){
  .menu-toggle{display:inline-flex;align-items:center}
  #navigation{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 20px;background:var(--black);border-bottom:1px solid var(--line)}
  #navigation.open{display:flex}
  #navigation a{padding:14px 0;border-bottom:1px solid var(--line);font-size:17px;color:var(--mist)}
  #navigation .nav-cta{margin-top:16px;text-align:center;border-bottom:0}
  .hero-grid{grid-template-columns:1fr;gap:24px;min-height:0;padding-top:40px;padding-bottom:56px}
  .hero-visual{justify-self:center;max-width:380px}
  .w-review{display:none}
  .widget{min-width:0;padding:10px 12px;animation:none}
  .w-inquiry{top:2%;left:0}
  .w-task{top:auto;bottom:8%;right:0}
  .section-head{grid-template-columns:1fr;margin-bottom:40px}
  .inquiry-grid{grid-template-columns:1fr;gap:40px}
  .dash-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dash-col{min-height:0}
  .dash-col:nth-child(2n){border-right:0}
  .dash-col:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:560px){
  body{font-size:16px}
  .preview-bar{font-size:12px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .button{width:100%}
  .services{grid-template-columns:1fr}
  .service,.service:nth-child(2n){border-right:0;margin-right:0;padding-right:0}
  .service:nth-child(n+2){border-top:1px solid var(--line)}
  .process{grid-template-columns:1fr}
  .stage{grid-template-columns:28px minmax(0,1fr)}
  .stage .chip{grid-column:2;grid-row:auto;justify-self:start;margin-top:6px}
  .stage-num{grid-row:span 3}
  .footer-inner{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .corridor-lime{stroke-dashoffset:0}
  .flow-panel.armed .stage:not(.in){opacity:1;transform:none}
}

/* ---- Polish pass 2026-10-16 ---- */
/* Anchor jumps land below the sticky header */
section[id]{scroll-margin-top:72px}

/* Brushed-chrome wordmark and hairlines */
.wordmark{background:linear-gradient(100deg,#F2F4F5 0%,#B9C1C6 38%,#F2F4F5 52%,#8F9AA1 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.wordmark:focus-visible{color:transparent}
.section{border-bottom:0;position:relative}
.section::after,.hero::after{content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(143,154,161,.45) 30%,rgba(242,244,245,.55) 50%,rgba(143,154,161,.45) 70%,transparent)}
.hero{border-bottom:0}
.flow-panel,.dashboard,.inquiry-form{position:relative}
.flow-panel::before,.dashboard::before,.inquiry-form::before{content:"";position:absolute;left:12px;right:12px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(242,244,245,.5),transparent);pointer-events:none}

/* Nav: underline grows from the left */
#navigation a:not(.nav-cta){position:relative}
#navigation a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease)}
#navigation a:not(.nav-cta):hover::after,#navigation a:not(.nav-cta):focus-visible::after{transform:scaleX(1)}

/* Buttons: brushed highlight, lift on hover */
.primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}
.ghost{background:linear-gradient(180deg,rgba(242,244,245,.06),rgba(242,244,245,0)),rgba(8,8,8,.4)}
.button:not(:disabled):hover{transform:translateY(-1px)}
.button:not(:disabled):active{transform:translateY(1px)}
.ghost:hover{border-color:var(--mist)}

/* Hero connector paths between widgets */
.links{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none}
.link-base{stroke:var(--steel);stroke-opacity:.32;stroke-width:1;vector-effect:non-scaling-stroke}
.link-node{fill:var(--lime)}
/* stroke in viewBox units (100 = visual width) so the dash pattern follows pathLength */
.link-pulse{stroke:var(--lime);stroke-width:.3;stroke-linecap:round;stroke-dasharray:14 86;stroke-dashoffset:100;animation:link-travel 4.8s var(--ease) infinite}
.link-pulse.link-2{animation-delay:-2.4s}
@keyframes link-travel{0%{stroke-dashoffset:100;opacity:0}12%{opacity:1}80%{opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.is-paused .link-pulse{animation-play-state:paused}
.widget{transition:border-color 220ms ease}
.widget::before{content:"";position:absolute;left:10px;right:10px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(242,244,245,.45),transparent)}

/* Workflow: active stage gets a soft lime pulse ring */
.stage[data-state="active"] .stage-num{box-shadow:0 0 0 0 rgba(176,240,40,.45);animation:ring 1.1s ease-out infinite}
@keyframes ring{to{box-shadow:0 0 0 8px rgba(176,240,40,0)}}

/* Hover states on content blocks */
.service{transition:background-color 240ms ease}
.service h3{transition:color 240ms ease}
.service:hover h3{color:var(--lime)}
.services{position:relative}
.service{position:relative}
.service::before{content:"";position:absolute;left:0;right:28px;top:-1px;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform 320ms var(--ease)}
.service:hover::before{transform:scaleX(1)}
.process li{transition:border-color 240ms ease}
.process li:hover{border-top-color:var(--lime)}
.dash-col li{transition:border-color 200ms ease,transform 200ms var(--ease)}
.dash-col li:hover{border-color:var(--steel);transform:translateX(2px)}
.faq summary{transition:color 180ms ease}
.faq summary:hover{color:var(--lime)}
.faq summary:hover::after{border-color:var(--lime)}
.inquiry-form input:focus,.inquiry-form select:focus{border-color:var(--lime);outline-offset:1px}
.inquiry-form [aria-invalid="true"]{border-color:#F2A65A}

/* Section transitions: content rises in once, only when JS is running */
.js .reveal{opacity:0;transform:translate3d(0,18px,0);transition:opacity 600ms var(--ease),transform 600ms var(--ease)}
.js .reveal.is-in{opacity:1;transform:none}
.js .stagger.reveal{opacity:1;transform:none}
.js .stagger.reveal>*{opacity:0;transform:translate3d(0,14px,0);transition:opacity 560ms var(--ease),transform 560ms var(--ease)}
.js .stagger.reveal.is-in>*{opacity:1;transform:none}
.js .stagger.reveal.is-in>:nth-child(2){transition-delay:100ms}
.js .stagger.reveal.is-in>:nth-child(3){transition-delay:200ms}
.js .stagger.reveal.is-in>:nth-child(4){transition-delay:300ms}
.js .stagger.reveal.is-in>:nth-child(5){transition-delay:400ms}

/* Phones: no blur compositing; connectors hidden (widgets reposition, so desktop endpoints would not meet) */
@media (max-width:860px){
  .widget{backdrop-filter:none;-webkit-backdrop-filter:none;background:#15181a}
  .links{display:none}
  .js .reveal,.js .stagger.reveal>*{transform:translate3d(0,10px,0)}
  .section::after,.hero::after{left:16px;right:16px}
}

@media (prefers-reduced-motion:reduce){
  .js .reveal,.js .stagger.reveal>*{opacity:1!important;transform:none!important}
  .link-pulse{display:none}
  .button:not(:disabled):hover{transform:none}
}

/* Reference-grounded visual revision: architectural space + clipped chrome Earth.
   The reference supplies artwork only; headings, cards and controls stay HTML. */
:root{--panel:rgba(21,25,27,.76);--line:rgba(185,197,202,.24)}
.wrap{max-width:1440px;padding-left:clamp(24px,5.5vw,80px);padding-right:clamp(24px,5.5vw,80px)}
.preview-bar{font-size:11px;letter-spacing:.025em;padding:5px 16px}
.header{background:rgba(8,10,11,.92)}
.header-inner{min-height:76px}
.wordmark{font-size:23px;letter-spacing:.32em;font-weight:400}
#navigation .nav-cta,.button{border-radius:999px}
#navigation .nav-cta{padding:11px 23px}
.hero{background:#0a0d0e}
.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:16px;min-height:590px;padding-top:70px;padding-bottom:80px}
.hero-copy{position:relative;z-index:2}
.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.2em;margin-bottom:25px;color:#b4bec3}
h1{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:clamp(44px,5.55vw,80px);font-weight:600;line-height:.99;letter-spacing:-.055em}
h1 span:last-child{color:#b8c0c6;background:linear-gradient(#f1f3f4,#8a949d);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.lead{font-size:19px;line-height:1.55;max-width:42ch;margin-top:22px;color:#d5dce0;opacity:1}
.hero-actions{gap:18px;margin-top:28px}
.hero-actions .button{font-size:14px;padding:0 23px}
.hero-copy .micro{font-size:12px;color:#aab5bb;margin-top:16px;max-width:45ch}
.hero-visual{max-width:580px;aspect-ratio:1/1;filter:drop-shadow(0 24px 32px rgba(0,0,0,.55))}
.globe>ellipse:not(.orbit):not(.orbit-lit){opacity:.12}
.orbit{stroke:#b0f028;stroke-opacity:.45}
.orbit-lit{stroke-width:1.1;filter:drop-shadow(0 0 3px #b0f028)}
.widget{min-width:155px;padding:13px 16px;gap:7px;border-color:rgba(192,209,208,.4);background:linear-gradient(135deg,rgba(111,127,130,.22),rgba(11,15,17,.88));box-shadow:inset 0 0 0 3px rgba(180,195,195,.035),0 10px 30px #0007;border-radius:10px}
.widget strong{font-size:13px;font-weight:500}
.widget-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#aebbc0}
.widget .chip{font-size:10px;padding:5px 8px}
.w-inquiry{top:5%;left:-2%;transform:rotate(2deg)}
.w-task{top:39%;right:-3%}
.w-review{bottom:2%;left:8%}
.link-node{filter:drop-shadow(0 0 1px #b0f028)}
.motion-toggle{font-size:11px;min-height:34px;padding:0 12px;bottom:14px;border-radius:999px;color:#b5c1c5}
.section{padding:70px 0;background:radial-gradient(ellipse at 80% 0,rgba(90,113,118,.075),transparent 60%)}
.section-head{margin-bottom:30px;gap:24px 60px}
h2{font-size:clamp(30px,3vw,44px);font-weight:500;letter-spacing:-.04em}
.section-head p{font-size:15px}
.workflow-section .section-head h2::before{content:"";display:block;width:30px;height:2px;background:var(--lime);margin-bottom:18px}
.flow-panel{background:linear-gradient(135deg,#14191b99,#080b0ccc);border-radius:14px;padding:20px 22px 24px}
.flow-bar{margin-bottom:20px}
.stage{background:linear-gradient(135deg,#232b2e55,#07090a99);padding:18px 12px;border-radius:10px}
.stage h3{font-size:15px}.stage p{font-size:12px}.stage-num{background:#0a0d0e}
.services{gap:16px;border-top:0}
.service{min-height:260px;padding:90px 24px 26px;margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:linear-gradient(145deg,transparent 35%,#28333777 35.3%,#080a0b 49%,#8d9a9f55 49.3%,#111719 51%,#090b0c 76%),linear-gradient(100deg,#080a0b,#1d272b)}
.service::after{content:"";position:absolute;right:-15%;top:33%;width:80%;height:1px;background:linear-gradient(90deg,transparent,#b0f028);transform:rotate(-24deg);box-shadow:0 0 14px #b0f02866;pointer-events:none}
.service:nth-child(2){background:repeating-linear-gradient(110deg,transparent 0 14px,#88999e22 15px,#0c1113 17px 22px),linear-gradient(140deg,#111719,#020303)}
.service:nth-child(3){background:linear-gradient(160deg,#050708 25%,#39474c 25.5%,#0d1214 28%,#080a0b 65%,#526268 65.5%,#11181b 68%)}
.service:nth-child(4){background:repeating-linear-gradient(160deg,#07090b 0 32px,#253236 34px,#10181b 37px)}
.service h3,.service p,.service .tag{position:relative;z-index:1}
.service h3{font-weight:500;font-size:22px}.service p{font-size:14px;color:#b8c4ca}.service .tag{background:#090c0eaa}
@media(max-width:1100px){.service,.service:nth-child(2n){padding:75px 24px 26px;margin:0;border:1px solid var(--line)}.hero-grid{min-height:540px}.hero-actions{gap:10px}.hero-actions .button{padding:0 18px;font-size:13px}.widget{min-width:135px}}
@media(max-width:860px){
 .header-inner{min-height:64px}.wordmark{font-size:20px}.hero-grid{grid-template-columns:1fr;gap:6px;padding-top:40px;padding-bottom:36px;min-height:0}.hero-copy{max-width:640px}.hero-visual{max-width:440px;width:100%;margin:0 auto;justify-self:center}.corridor{width:180%;left:-50%;opacity:.7}.kicker{margin-bottom:18px}h1{font-size:clamp(44px,8.8vw,68px)}.lead{font-size:17px;max-width:38ch}.hero-actions{margin-top:24px}.widget{background:linear-gradient(135deg,#303c3e,#0d1214);min-width:125px}.w-inquiry{top:7%;left:0}.w-task{bottom:11%;top:auto;right:0}.w-review{display:none}.section{padding:48px 0}.motion-toggle{bottom:8px}.services{gap:14px}
}
@media(max-width:560px){.wrap{padding-left:24px;padding-right:24px}.preview-bar{font-size:10px}.hero-actions{flex-direction:row;gap:10px}.hero-actions .button{width:auto;min-height:46px;font-size:12px;padding:0 15px}.hero-actions .ghost{flex:1}.hero-copy .micro{font-size:11px}.hero-visual{max-width:340px}.lead{font-size:16px}.widget{padding:9px 11px;min-width:118px}.widget strong{font-size:12px}.widget-label{font-size:9px}.services .service{min-height:230px}.section-head{gap:20px}.flow-panel{padding:18px 14px}.w-inquiry{left:0}.w-task{right:0}.hero-grid{padding-bottom:30px}}
/* Final proportion and touch-target corrections after screenshot inspection. */
@media(min-width:861px){.hero-grid{padding-top:32px;padding-bottom:46px;min-height:590px}.hero-visual{max-width:480px}}
.motion-toggle{min-height:44px}

/* Local guided FAQ: scoped component, preserving the existing page design. */
.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:60;min-height:52px;border:1px solid #c4fa60;border-radius:999px;background:var(--lime);color:#080808;padding:10px 20px;font:600 14px var(--font);box-shadow:0 8px 30px #0009;cursor:pointer}
.chat-launcher span{display:block;font-size:10px;font-weight:500;letter-spacing:.04em}
.chat-launcher[hidden]{display:none}
.chat-panel{position:fixed;inset:auto 24px 24px auto;margin:0;width:420px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;border:1px solid #657176;border-radius:18px;background:#111719;color:#f2f4f5;box-shadow:0 20px 90px #000b;font-size:14px}
.chat-panel[open]{display:flex;flex-direction:column;gap:14px}
.chat-panel::backdrop{background:#0008}
.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-heading h2{font-size:24px;letter-spacing:-.03em;margin-bottom:8px}
.chat-heading .tag{color:#c5cfd3;font-size:10px}.chat-disclosure{font-size:12px;line-height:1.5;color:#b8c5ca}
.chat-log{height:230px;min-height:100px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #465055;border-bottom:1px solid #465055;padding:12px 0;scrollbar-color:#67787c #111719;flex-shrink:1}
.chat-message{padding:11px 12px;margin-bottom:10px;line-height:1.5;background:#20292d;border-radius:10px;overflow-wrap:anywhere}.chat-message:last-child{margin-bottom:0}.chat-message strong{display:block;font-size:11px;letter-spacing:.04em;color:#bdced4;margin-bottom:5px}.chat-user{margin-left:28px;background:#2a351c}.chat-user strong{color:#b0f028}
.chat-topics{display:flex;flex-wrap:wrap;gap:8px}.chat-topics button{font:inherit;font-size:12px;min-height:44px;padding:0 12px;border:1px solid #66767c;border-radius:999px;background:#172024;color:#e4ebed;cursor:pointer}
.chat-form label{display:block;font-size:13px;margin-bottom:8px}.chat-form label span{font-size:10px;color:#b8c5ca}.chat-compose{display:flex;gap:8px}.chat-compose input{min-width:0;flex:1;border:1px solid #718086;border-radius:8px;background:#080d0f;color:#f2f4f5;padding:10px;font:inherit;font-size:16px;min-height:48px}.chat-compose .button{padding:0 18px;font-size:14px}.chat-compose input::placeholder{color:#b0bec3;font-size:12px}.chat-compose input[aria-invalid=true]{border-color:#f2a65a}
#chat-error{font-size:12px;color:#ffc17c;line-height:1.5}#chat-error:not(:empty){margin-top:8px}.chat-actions{display:flex;justify-content:space-between;gap:8px}.chat-actions .control{font-size:12px}.chat-actions .text-button{font-size:12px;color:#c1cdd2}
@media(max-width:560px){.chat-launcher{right:16px;bottom:16px}.chat-panel{inset:auto 12px 12px;width:calc(100vw - 24px);max-width:none;max-height:calc(100dvh - 24px);padding:16px;gap:12px}.chat-log{height:210px}.chat-actions .control{padding:0 12px}.chat-heading h2{font-size:22px}}
@media(max-height:620px){.chat-panel{gap:8px;padding:12px}.chat-log{height:100px;min-height:60px}.chat-disclosure{font-size:11px}.chat-heading .tag{display:none}}
/* Keep the floating chat launcher from covering the existing phone motion control. */
@media(max-width:560px){.hero .motion-toggle{left:24px;right:auto}}
/* Status text/background switch together to avoid low-contrast transition frames. */
.chip,.stage-num{transition:border-color 220ms ease,box-shadow 220ms ease}

.preview-disabled-fields{border:0;padding:0;margin:0;min-width:0}

/* Isolated future direction: layered CSS/SVG depth, no WebGL or new assets. */
:root{--steel:#b2bec4;--line:rgba(175,193,201,.22);--panel:rgba(24,31,35,.72)}
body{background:#080a0c;letter-spacing:-.012em}
.preview-bar{color:#b7c3c8;background:#0a0d0f;padding:7px 16px;letter-spacing:.05em}
.preview-bar .preview-detail{color:#b7c3c8}
.header{background:rgba(8,12,15,.86);border-bottom-color:#a7b8c125;backdrop-filter:blur(18px)}
.header-inner{min-height:80px}.wordmark{font-size:21px;letter-spacing:.38em}
#navigation{gap:30px}#navigation a{color:#c1cbd0;font-size:13px}
#navigation .nav-cta{background:linear-gradient(135deg,#c4ff4c,#B0F028);box-shadow:0 0 24px #b0f0280c}
.hero{isolation:isolate;background:#080c0f}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 73% 38%,#a0bbc71c,transparent 40%),linear-gradient(90deg,#070a0de6 0%,#070a0d66 39%,transparent 65%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;top:auto;height:120px;pointer-events:none;background:linear-gradient(transparent,#080a0c);border:0;z-index:1}
.corridor{opacity:.9;filter:contrast(1.2);transform:scale(1.12);transform-origin:68% 45%}
.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:5px;min-height:700px;padding-top:72px;padding-bottom:96px}
.hero-copy{z-index:4;align-self:center}
.kicker{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.21em;color:#c5d0d5;margin-bottom:30px}
.kicker-rule{width:28px;height:2px;background:var(--lime);box-shadow:0 0 16px #b0f02866;flex:none}
h1{font-size:clamp(48px,6.1vw,88px);font-weight:500;line-height:.99;letter-spacing:-.065em;text-shadow:0 4px 25px #0005}
h1 span:last-child{background:linear-gradient(177deg,#fafcfd 4%,#d2dbe0 30%,#6e7d86 64%,#dce4e9 93%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.lead{color:#ced8dd;font-size:18px;max-width:34ch;line-height:1.65;margin-top:28px}
.hero-actions{gap:12px;margin-top:32px}.hero-actions .button{min-height:50px;font-size:13px;padding:0 24px;gap:20px}
.primary{background:linear-gradient(135deg,#c3fc4d,#B0F028);box-shadow:inset 0 1px 0 #e5ffa0,0 6px 28px #b0f02814}
.ghost{background:linear-gradient(145deg,#53626b22,#080d1188);border-color:#a6bac35c;backdrop-filter:blur(8px)}
.hero-copy .micro{color:#afbec6;font-size:11px;letter-spacing:.02em;max-width:45ch}
.hero-visual{width:108%;max-width:650px;justify-self:center;perspective:900px;z-index:2;filter:none}
.globe{position:relative;z-index:2;filter:drop-shadow(0 26px 22px #000a);transform:rotate(-5deg) scale(1.08)}
.chrome-earth{filter:contrast(1.16) brightness(1.12)}
.orbital-halo{position:absolute;inset:4%;border-radius:50%;background:radial-gradient(circle,transparent 44%,#a6bac305 56%,#b0f02813 59%,transparent 61%);box-shadow:0 0 70px #b0f02808;transform:rotate(-22deg) scaleY(.79);border:1px solid #9db8c315;z-index:0}
.orbital-halo::before,.orbital-halo::after{content:"";position:absolute;inset:-8%;border:1px solid #a6bac323;border-radius:50%;transform:rotate(53deg) scaleX(.88)}
.orbital-halo::after{inset:-17%;border:1px dashed #a6bac31f;transform:rotate(-18deg) scaleX(.97)}
.globe-platform{position:absolute;bottom:-3%;left:15%;width:75%;height:16%;border-radius:50%;background:radial-gradient(ellipse,#8aabb31f 5%,#b0f02813 25%,transparent 67%);border-top:1px solid #adced53d;box-shadow:0 -20px 60px #8aabb307;transform:rotate(-5deg);z-index:0}
.visual-register{position:absolute;top:-2%;left:17%;right:4%;display:flex;justify-content:space-between;color:#aabcc5;font-size:8px;letter-spacing:.19em;border-top:1px solid #9db2bd36;padding-top:10px}
.widget{z-index:5;min-width:174px;gap:8px;padding:18px 20px;border-radius:13px;border:1px solid #c6dbe264;background:linear-gradient(125deg,#778c9545,#25343b9c 35%,#080e13e0);box-shadow:inset 0 1px 0 #e4f4fa26,inset 0 0 0 4px #c9e0e505,0 18px 38px #0009;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.widget::after{content:"";display:block;width:70%;height:2px;margin-top:5px;background:linear-gradient(90deg,#a0b1ba77,transparent);box-shadow:0 5px 0 #a0b1ba25}
.widget strong{font-size:14px;letter-spacing:-.01em;color:#f0f6f9}.widget-label{font-size:8px;letter-spacing:.16em;color:#c2d0d7}
.widget .chip{font-size:9px;min-height:20px}.w-inquiry{top:7%;left:-4%}.w-task{top:42%;right:-5%}.w-review{bottom:0%;left:7%}
.links{z-index:3;opacity:.8}.orbit{stroke-opacity:.75}.orbit-secondary{stroke-dasharray:2 6;stroke-width:.65}
.motion-toggle{z-index:5;left:auto;right:var(--gutter);bottom:22px;min-height:44px;color:#d3dce1;border-color:#8fadb45c;background:#090e12c9}
.section{padding:90px 0;background:radial-gradient(ellipse at 75% 0,#8cb7cb09,transparent 62%)}
.section-head{margin-bottom:38px}.section-head h2,h2{font-weight:400;letter-spacing:-.045em}
.flow-panel,.dashboard{border-color:#98b1bf44;background:linear-gradient(135deg,#2c3e4838,#090e12c9);box-shadow:inset 0 1px 0 #cadde720,0 25px 70px #0004}
.stage{border-color:#9bb2bf3d;background:linear-gradient(145deg,#3a4c5638,#0a1015c9);min-height:160px}.stage p{color:#b3c1c9;line-height:1.65}
.services{gap:18px}.service{border-color:#a0b8c547;min-height:310px;padding-top:125px;box-shadow:inset 0 1px 0 #c1dae01a,0 14px 32px #0004;transition:transform 320ms var(--ease),border-color 320ms ease}
.service:hover{transform:translateY(-5px);border-color:#b0f02877}.service p{color:#c2cdd3}.service .tag{color:#c7d3d9;border-color:#99b3c34f}
.dash-col li{background:linear-gradient(135deg,#29394255,#080d12);border-color:#94afbe3a}.process li{border-top-color:#7e9daa66}.process p,.faq details p,.work p,.section-copy{color:#b7c5cd}
.footer{background:#06090b}.footer-note{color:#b2c1ca}.tag{color:#bfccd3}
@media(max-width:1100px) and (min-width:861px){h1{font-size:6vw}.hero-grid{min-height:620px}.widget{min-width:145px;padding:14px}.widget strong{font-size:12px}.hero-actions .button{padding:0 17px;font-size:12px}.visual-register{font-size:7px}}
@media(max-width:860px){
 .header-inner{min-height:66px}.hero-grid{grid-template-columns:1fr;min-height:0;padding-top:44px;padding-bottom:78px;gap:30px}.hero-copy{max-width:650px}.hero-visual{width:90%;max-width:490px;justify-self:center;margin:10px auto 0}.corridor{width:210%;left:-70%;opacity:.75;transform:scale(1.15)}.hero::before{background:linear-gradient(180deg,#080c0fe6,transparent 70%)}
 h1{font-size:clamp(48px,8.7vw,72px)}.kicker{margin-bottom:23px;font-size:9px}.lead{font-size:17px;max-width:36ch;margin-top:23px}.hero-actions{margin-top:26px}.hero-actions .button{font-size:12px;padding:0 20px;min-height:48px}.widget{min-width:135px;padding:13px 14px;backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(135deg,#344750f2,#101b22f5)}.widget strong{font-size:11px}.widget-label{font-size:7px}.widget .chip{font-size:8px}.w-inquiry{left:-7%;top:4%}.w-task{right:-8%;top:49%}.w-review{display:none}.visual-register{top:-8%;left:8%;right:0;font-size:7px}.section{padding:64px 0}.service{min-height:280px;padding-top:100px}.motion-toggle{left:24px;right:auto;bottom:14px}.globe{transform:rotate(-5deg) scale(1.05)}
}
@media(max-width:420px){.hero-visual{width:88%;margin-top:20px}.hero-grid{gap:27px}.hero-actions{gap:10px}.hero-actions .button{padding:0 15px;font-size:11px}.hero-actions .primary span{display:none}h1{font-size:clamp(43px,11.8vw,50px)}.widget{min-width:121px;padding:11px}.widget strong{font-size:10px}.w-inquiry{left:-10%;top:3%}.w-task{right:-10%;top:51%}.visual-register{font-size:6px}.lead{font-size:16px}.wordmark{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service:hover{transform:none}.globe{transform:rotate(-5deg) scale(1.05)}.corridor-lime{animation:none;stroke-dashoffset:0}}
/* Keep motion controls clear of the fixed FAQ launcher on desktop as well. */
@media(min-width:861px){.hero .motion-toggle{left:clamp(24px,5.5vw,80px);right:auto}}
