    :root {
      --ink: #060806;
      --paper: #f3f4ef;
      --paper-2: #e8ebe3;
      --line: rgba(7, 10, 8, .14);
      --line-dark: rgba(255, 255, 255, .14);
      --muted: #686d67;
      --muted-dark: rgba(255, 255, 255, .58);
      --signal: #b9ff38;
      --signal-2: #72ffd0;
      --danger: #ff5c35;
      --safe: #71f7b2;
      --max: 1480px;
      --pad: clamp(20px, 4vw, 68px);
      --nav-h: 80px;
      --ease-out: cubic-bezier(.16, 1, .3, 1);
      --ease-snap: cubic-bezier(.76, 0, .24, 1);
      --reveal: 50%;
      --progress: 0;
      --mx: 0;
      --my: 0;
    }

    *, *::before, *::after { box-sizing: border-box; }

    html {
      scroll-behavior: smooth;
      background: var(--ink);
    }

    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Helvetica, Arial, sans-serif;
      font-synthesis: none;
      text-rendering: optimizeLegibility;
      -webkit-font-smoothing: antialiased;
      overflow-x: clip;
    }

    body.is-locked { overflow: hidden; }

    .no-js .loader,
    .no-js .cursor,
    .no-js .cursor-dot,
    .no-js .site-progress {
      display: none;
    }

    .no-js [data-reveal] {
      opacity: 1;
      transform: none;
    }

    a { color: inherit; text-decoration: none; }
    button, input, textarea, select { font: inherit; }
    button { color: inherit; }
    img, svg, canvas { display: block; max-width: 100%; }

    ::selection { background: var(--signal); color: var(--ink); }

    .skip-link {
      position: fixed;
      top: 12px;
      left: 12px;
      z-index: 2000;
      padding: 12px 16px;
      color: var(--ink);
      background: var(--signal);
      transform: translateY(-150%);
      transition: transform .2s ease;
    }
    .skip-link:focus { transform: translateY(0); }

    .noise {
      position: fixed;
      inset: 0;
      z-index: 900;
      pointer-events: none;
      opacity: .055;
      mix-blend-mode: soft-light;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.95'/%3E%3C/svg%3E");
    }

    .cursor,
    .cursor-dot {
      position: fixed;
      left: 0;
      top: 0;
      z-index: 1500;
      pointer-events: none;
      border-radius: 50%;
      transform: translate3d(-50%, -50%, 0);
      will-change: transform, width, height, opacity;
    }
    .cursor {
      width: 38px;
      height: 38px;
      border: 1px solid rgba(255, 255, 255, .54);
      mix-blend-mode: difference;
      transition: width .35s var(--ease-out), height .35s var(--ease-out), border-color .35s ease, opacity .3s ease;
    }
    .cursor-dot {
      width: 5px;
      height: 5px;
      background: white;
      mix-blend-mode: difference;
    }
    .cursor.is-active { width: 78px; height: 78px; border-color: var(--signal); }

    .loader {
      position: fixed;
      inset: 0;
      z-index: 1800;
      display: grid;
      grid-template-rows: 1fr auto;
      padding: var(--pad);
      color: white;
      background: #040604;
      transition: opacity .8s var(--ease-out), visibility .8s;
    }
    .loader.is-done { opacity: 0; visibility: hidden; }
    .loader__mark {
      align-self: center;
      font-size: clamp(74px, 18vw, 260px);
      font-weight: 760;
      letter-spacing: -.09em;
      line-height: .78;
    }
    .loader__bottom {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 24px;
      align-items: end;
    }
    .loader__label {
      max-width: 360px;
      font-size: 12px;
      line-height: 1.4;
      letter-spacing: .13em;
      text-transform: uppercase;
      color: var(--muted-dark);
    }
    .loader__count {
      min-width: 1.8em;
      font-size: clamp(42px, 8vw, 110px);
      font-variant-numeric: tabular-nums;
      line-height: .8;
      letter-spacing: -.07em;
      text-align: right;
    }

    .site-progress {
      position: fixed;
      z-index: 1300;
      left: 0;
      top: 0;
      width: 100%;
      height: 2px;
      transform-origin: left;
      transform: scaleX(var(--progress));
      background: var(--signal);
      pointer-events: none;
    }

    .nav {
      position: fixed;
      z-index: 1000;
      top: 0;
      left: 0;
      width: 100%;
      height: var(--nav-h);
      padding: 0 var(--pad);
      display: flex;
      align-items: center;
      justify-content: space-between;
      color: white;
      transition: color .35s ease, background .35s ease, transform .5s var(--ease-out), border-color .35s ease;
      border-bottom: 1px solid transparent;
    }
    .nav.is-scrolled {
      background: rgba(5, 7, 6, .68);
      backdrop-filter: blur(20px) saturate(1.2);
      -webkit-backdrop-filter: blur(20px) saturate(1.2);
      border-color: rgba(255, 255, 255, .1);
    }
    .nav.is-hidden { transform: translateY(-110%); }

    .brand {
      display: inline-flex;
      gap: 14px;
      align-items: center;
      min-width: 210px;
    }
    .brand__word {
      font-size: 24px;
      font-weight: 760;
      line-height: 1;
      letter-spacing: -.07em;
    }
    .brand__descriptor {
      padding-left: 13px;
      border-left: 1px solid currentColor;
      font-size: 9px;
      line-height: 1.2;
      letter-spacing: .15em;
      text-transform: uppercase;
      opacity: .62;
    }

    .nav__links {
      display: flex;
      align-items: center;
      gap: clamp(18px, 2.2vw, 38px);
      font-size: 12px;
      letter-spacing: .02em;
    }
    .nav__link {
      position: relative;
      padding: 10px 0;
      opacity: .72;
      transition: opacity .25s ease;
    }
    .nav__link::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 5px;
      width: 100%;
      height: 1px;
      background: currentColor;
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .45s var(--ease-out);
    }
    .nav__link:hover { opacity: 1; }
    .nav__link:hover::after { transform: scaleX(1); transform-origin: left; }

    .button {
      --button-bg: var(--signal);
      --button-fg: var(--ink);
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      min-height: 50px;
      padding: 13px 19px;
      border: 0;
      border-radius: 999px;
      color: var(--button-fg);
      background: var(--button-bg);
      overflow: hidden;
      font-size: 12px;
      font-weight: 650;
      line-height: 1;
      cursor: pointer;
      isolation: isolate;
      transition: transform .4s var(--ease-out), box-shadow .4s ease;
    }
    .button::before {
      content: "";
      position: absolute;
      z-index: -1;
      width: 140%;
      aspect-ratio: 1;
      border-radius: 50%;
      background: white;
      transform: translateY(75%) scale(.1);
      transition: transform .55s var(--ease-snap);
    }
    .button:hover::before { transform: translateY(0) scale(1); }
    .button:hover { box-shadow: 0 20px 50px rgba(185, 255, 56, .22); }
    .button--ghost {
      --button-bg: rgba(255, 255, 255, .08);
      --button-fg: white;
      border: 1px solid rgba(255, 255, 255, .18);
      backdrop-filter: blur(10px);
    }
    .button--ghost::before { background: rgba(255, 255, 255, .14); }
    .button__icon {
      width: 24px;
      height: 24px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      border: 1px solid currentColor;
      font-size: 13px;
    }

    .nav__toggle {
      display: none;
      width: 46px;
      height: 46px;
      border: 1px solid rgba(255, 255, 255, .18);
      border-radius: 50%;
      background: rgba(255, 255, 255, .06);
    }
    .nav__toggle span,
    .nav__toggle::before,
    .nav__toggle::after {
      content: "";
      position: absolute;
      left: 50%;
      width: 16px;
      height: 1px;
      background: currentColor;
      transform: translateX(-50%);
      transition: transform .35s ease, top .35s ease, opacity .2s ease;
    }
    .nav__toggle { position: relative; }
    .nav__toggle::before { top: 17px; }
    .nav__toggle span { top: 22px; }
    .nav__toggle::after { top: 27px; }
    .nav__toggle[aria-expanded="true"]::before { top: 22px; transform: translateX(-50%) rotate(45deg); }
    .nav__toggle[aria-expanded="true"] span { opacity: 0; }
    .nav__toggle[aria-expanded="true"]::after { top: 22px; transform: translateX(-50%) rotate(-45deg); }

    .mobile-panel {
      position: fixed;
      z-index: 950;
      inset: 0;
      padding: calc(var(--nav-h) + 24px) var(--pad) 36px;
      display: grid;
      align-content: space-between;
      color: white;
      background: #050706;
      transform: translateY(-102%);
      transition: transform .7s var(--ease-snap);
    }
    .mobile-panel.is-open { transform: translateY(0); }
    .mobile-panel__links { display: grid; gap: 8px; }
    .mobile-panel__links a {
      padding: 14px 0;
      border-bottom: 1px solid rgba(255,255,255,.12);
      font-size: clamp(34px, 11vw, 64px);
      line-height: 1;
      letter-spacing: -.055em;
    }
    .mobile-panel__meta {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 24px;
      color: var(--muted-dark);
      font-size: 11px;
      letter-spacing: .11em;
      text-transform: uppercase;
    }

    main { position: relative; z-index: 2; }

    .section {
      position: relative;
      padding: clamp(110px, 14vw, 220px) var(--pad);
    }
    .section__inner {
      width: min(100%, var(--max));
      margin-inline: auto;
    }
    .eyebrow {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 34px;
      font-size: 10px;
      font-weight: 650;
      letter-spacing: .16em;
      text-transform: uppercase;
      color: var(--muted);
    }
    .eyebrow::before {
      content: "";
      width: 34px;
      height: 1px;
      background: currentColor;
    }
    .eyebrow--light { color: var(--muted-dark); }

    .display {
      margin: 0;
      max-width: 1200px;
      font-size: clamp(58px, 9.2vw, 154px);
      font-weight: 650;
      line-height: .88;
      letter-spacing: -.075em;
    }
    .display--medium { font-size: clamp(48px, 7.2vw, 118px); }
    .display--small { font-size: clamp(42px, 5.7vw, 90px); }
    .display em { font-style: normal; color: var(--signal); }

    .lead {
      margin: 0;
      max-width: 700px;
      font-size: clamp(18px, 2vw, 28px);
      line-height: 1.35;
      letter-spacing: -.028em;
    }

    .body-copy {
      margin: 0;
      max-width: 590px;
      color: var(--muted);
      font-size: clamp(15px, 1.35vw, 19px);
      line-height: 1.6;
    }
    .body-copy--light { color: var(--muted-dark); }

    [data-reveal] {
      opacity: 0;
      transform: translateY(50px);
      transition: opacity 1s var(--ease-out), transform 1.15s var(--ease-out);
      transition-delay: var(--delay, 0s);
    }
    [data-reveal].is-visible { opacity: 1; transform: translateY(0); }

    /* HERO */
    .hero {
      position: relative;
      height: 210vh;
      color: white;
      background: var(--ink);
      overflow: clip;
    }
    .hero__sticky {
      position: sticky;
      top: 0;
      height: 100svh;
      min-height: 690px;
      overflow: hidden;
    }
    #hero-webgl {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      opacity: .94;
    }
    .hero__shade {
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 70% 48%, transparent 0, rgba(4, 6, 4, .05) 30%, rgba(4, 6, 4, .74) 74%),
        linear-gradient(90deg, rgba(3, 5, 3, .94) 0%, rgba(3, 5, 3, .6) 43%, rgba(3, 5, 3, .12) 74%, rgba(3, 5, 3, .42) 100%);
      pointer-events: none;
    }
    .hero__grid {
      position: absolute;
      inset: 0;
      opacity: .23;
      background-image:
        linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
      background-size: 80px 80px;
      mask-image: linear-gradient(to bottom, transparent 0%, black 12%, black 82%, transparent 100%);
      transform: perspective(900px) rotateX(58deg) scale(1.7) translateY(27%);
      transform-origin: center bottom;
    }
    .hero__content {
      position: relative;
      z-index: 4;
      width: min(100%, var(--max));
      height: 100%;
      margin-inline: auto;
      padding: calc(var(--nav-h) + 50px) var(--pad) 42px;
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
      grid-template-rows: 1fr auto;
      gap: 40px;
      align-items: center;
    }
    .hero__copy {
      max-width: 980px;
      will-change: transform, opacity;
    }
    .hero__title {
      margin: 0 0 28px;
      max-width: 930px;
      font-size: clamp(64px, 9.3vw, 158px);
      font-weight: 650;
      line-height: .84;
      letter-spacing: -.08em;
    }
    .hero__title .line {
      display: block;
      overflow: hidden;
    }
    .hero__title .line > span {
      display: block;
      transform: translateY(112%);
      animation: title-in 1.2s var(--ease-out) forwards;
      animation-delay: calc(.45s + var(--i) * .12s);
    }
    .hero__title .accent {
      color: transparent;
      -webkit-text-stroke: 1px rgba(255,255,255,.78);
    }
    @keyframes title-in { to { transform: translateY(0); } }

    .hero__intro {
      display: grid;
      grid-template-columns: minmax(220px, 520px) auto;
      align-items: end;
      gap: 34px;
    }
    .hero__intro p {
      margin: 0;
      color: rgba(255,255,255,.64);
      font-size: clamp(16px, 1.45vw, 20px);
      line-height: 1.52;
      letter-spacing: -.018em;
    }
    .hero__actions { display: flex; flex-wrap: wrap; gap: 10px; }

    .hero__aside {
      justify-self: end;
      align-self: center;
      width: min(100%, 390px);
      perspective: 1000px;
      will-change: transform;
    }
    .diagnostic-card {
      position: relative;
      padding: 20px;
      border: 1px solid rgba(255,255,255,.16);
      border-radius: 22px;
      background: rgba(7, 11, 8, .36);
      backdrop-filter: blur(18px) saturate(1.2);
      -webkit-backdrop-filter: blur(18px) saturate(1.2);
      box-shadow: 0 50px 110px rgba(0,0,0,.35);
      transform: rotateY(calc(var(--mx) * 6deg)) rotateX(calc(var(--my) * -5deg));
      transform-style: preserve-3d;
    }
    .diagnostic-card__top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      padding-bottom: 14px;
      border-bottom: 1px solid rgba(255,255,255,.12);
      font-size: 9px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(255,255,255,.5);
    }
    .live-dot {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      color: var(--signal);
    }
    .live-dot::before {
      content: "";
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: currentColor;
      box-shadow: 0 0 0 0 rgba(185,255,56,.5);
      animation: pulse 2s infinite;
    }
    @keyframes pulse { 50% { box-shadow: 0 0 0 8px rgba(185,255,56,0); } }

    .score {
      padding: 26px 0 22px;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 16px;
    }
    .score__item span {
      display: block;
      margin-bottom: 8px;
      color: rgba(255,255,255,.42);
      font-size: 8px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
    .score__item strong {
      display: block;
      font-size: 58px;
      font-weight: 520;
      line-height: .8;
      letter-spacing: -.08em;
      font-variant-numeric: tabular-nums;
    }
    .score__item:last-child { text-align: right; }
    .score__item:last-child strong { color: var(--signal); }
    .score__arrow { color: rgba(255,255,255,.34); }

    .findings { display: grid; gap: 8px; }
    .finding {
      display: grid;
      grid-template-columns: auto 1fr auto;
      gap: 10px;
      align-items: center;
      min-height: 42px;
      padding: 0 12px;
      border-radius: 10px;
      background: rgba(255,255,255,.055);
      font-size: 11px;
    }
    .finding__index { color: rgba(255,255,255,.35); font-variant-numeric: tabular-nums; }
    .finding__state {
      font-size: 8px;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--signal);
    }
    .finding__state--warn { color: #ff8a63; }

    .hero__bottom {
      grid-column: 1 / -1;
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 24px;
      color: rgba(255,255,255,.42);
      font-size: 9px;
      letter-spacing: .14em;
      text-transform: uppercase;
    }
    .hero__scroll {
      display: flex;
      align-items: center;
      gap: 13px;
    }
    .hero__scroll-line {
      position: relative;
      width: 70px;
      height: 1px;
      background: rgba(255,255,255,.18);
      overflow: hidden;
    }
    .hero__scroll-line::after {
      content: "";
      position: absolute;
      inset: 0;
      background: white;
      transform: translateX(-100%);
      animation: scan-line 2.3s var(--ease-snap) infinite;
    }
    @keyframes scan-line { 55%, 100% { transform: translateX(100%); } }

    .orbit-label {
      position: absolute;
      z-index: 3;
      top: 29%;
      right: 8%;
      width: 210px;
      aspect-ratio: 1;
      border: 1px solid rgba(255,255,255,.15);
      border-radius: 50%;
      animation: rotate 18s linear infinite;
      pointer-events: none;
    }
    .orbit-label::before,
    .orbit-label::after {
      content: "";
      position: absolute;
      inset: 16%;
      border: 1px solid rgba(255,255,255,.08);
      border-radius: inherit;
    }
    .orbit-label::after { inset: 36%; border-color: rgba(185,255,56,.24); }
    .orbit-label span {
      position: absolute;
      left: 50%;
      top: -6px;
      padding: 4px 8px;
      color: var(--signal);
      background: var(--ink);
      font-size: 8px;
      letter-spacing: .14em;
      text-transform: uppercase;
      transform: translateX(-50%);
    }
    @keyframes rotate { to { transform: rotate(360deg); } }

    /* SITUATION */
    .situation {
      background: var(--paper);
      overflow: clip;
    }
    .situation__header {
      display: grid;
      grid-template-columns: 1.55fr .7fr;
      gap: clamp(40px, 8vw, 130px);
      align-items: end;
      margin-bottom: clamp(80px, 11vw, 170px);
    }
    .situation__header .body-copy { justify-self: end; }

    .symptom-stage {
      position: relative;
      display: grid;
      grid-template-columns: .8fr 1.2fr;
      gap: clamp(48px, 7vw, 110px);
      align-items: center;
      min-height: 780px;
    }
    .symptom-list {
      position: relative;
      z-index: 2;
      display: grid;
    }
    .symptom {
      position: relative;
      display: grid;
      grid-template-columns: 44px 1fr auto;
      gap: 18px;
      align-items: center;
      min-height: 76px;
      padding: 12px 0;
      border-bottom: 1px solid var(--line);
      cursor: default;
      transition: color .35s ease, padding .45s var(--ease-out);
    }
    .symptom:first-child { border-top: 1px solid var(--line); }
    .symptom:hover,
    .symptom.is-active { padding-left: 14px; color: #000; }
    .symptom__num {
      font-size: 10px;
      letter-spacing: .12em;
      color: var(--muted);
    }
    .symptom__name {
      font-size: clamp(22px, 2.1vw, 34px);
      letter-spacing: -.045em;
    }
    .symptom__state {
      padding: 6px 8px;
      border: 1px solid var(--line);
      border-radius: 999px;
      color: var(--muted);
      font-size: 8px;
      letter-spacing: .11em;
      text-transform: uppercase;
      transition: background .35s ease, color .35s ease, border-color .35s ease;
    }
    .symptom.is-active .symptom__state {
      color: white;
      background: var(--ink);
      border-color: var(--ink);
    }

    .system-visual {
      position: sticky;
      top: 110px;
      min-height: 650px;
      display: grid;
      place-items: center;
      perspective: 1000px;
    }
    .system-visual__halo {
      position: absolute;
      width: min(76%, 530px);
      aspect-ratio: 1;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(185,255,56,.28), rgba(114,255,208,.06) 48%, transparent 70%);
      filter: blur(16px);
      transform: scale(calc(.9 + var(--symptom-progress, 0) * .18));
    }
    .system-map {
      position: relative;
      width: min(100%, 650px);
      aspect-ratio: 1;
      transform-style: preserve-3d;
      transform: rotateX(calc(57deg + var(--my) * 2deg)) rotateZ(calc(-15deg + var(--mx) * 3deg));
    }
    .system-map__plane {
      position: absolute;
      inset: 7%;
      border: 1px solid rgba(7, 10, 8, .18);
      background:
        linear-gradient(rgba(7,10,8,.1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(7,10,8,.1) 1px, transparent 1px),
        rgba(255,255,255,.35);
      background-size: 34px 34px;
      box-shadow: 0 80px 100px rgba(11,16,11,.12);
      transform: translateZ(-40px);
    }
    .system-map__ring {
      position: absolute;
      inset: var(--inset);
      border: 1px solid rgba(7, 10, 8, .28);
      border-radius: 50%;
      transform: translateZ(var(--z));
    }
    .system-map__ring::after {
      content: "";
      position: absolute;
      width: 9px;
      height: 9px;
      left: 50%;
      top: -5px;
      border-radius: 50%;
      background: var(--signal);
      box-shadow: 0 0 0 8px rgba(185,255,56,.17);
      transform: translateX(-50%);
    }
    .system-map__core {
      position: absolute;
      inset: 32%;
      display: grid;
      place-items: center;
      border: 1px solid rgba(7, 10, 8, .22);
      border-radius: 28%;
      background: rgba(6, 8, 6, .94);
      color: white;
      box-shadow: 0 32px 70px rgba(0,0,0,.24), inset 0 0 0 1px rgba(255,255,255,.08);
      transform: translateZ(80px) rotateZ(15deg);
    }
    .system-map__core strong {
      font-size: clamp(50px, 7vw, 98px);
      font-weight: 530;
      letter-spacing: -.08em;
      color: var(--signal);
    }
    .system-map__tag {
      position: absolute;
      z-index: 3;
      padding: 9px 12px;
      border: 1px solid rgba(7,10,8,.16);
      border-radius: 999px;
      color: var(--ink);
      background: rgba(243,244,239,.84);
      box-shadow: 0 16px 44px rgba(0,0,0,.08);
      backdrop-filter: blur(12px);
      font-size: 9px;
      letter-spacing: .1em;
      text-transform: uppercase;
      transform: translateZ(var(--z));
    }
    .system-map__tag:nth-of-type(1) { left: 6%; top: 20%; }
    .system-map__tag:nth-of-type(2) { right: 1%; top: 33%; }
    .system-map__tag:nth-of-type(3) { left: 10%; bottom: 19%; }
    .system-map__tag:nth-of-type(4) { right: 9%; bottom: 11%; }

    /* INTERVENTIONS */
    .interventions {
      position: relative;
      height: 520vh;
      color: white;
      background: #050706;
    }
    .interventions__sticky {
      position: sticky;
      top: 0;
      height: 100svh;
      min-height: 720px;
      overflow: hidden;
    }
    .interventions__header {
      position: absolute;
      z-index: 5;
      top: clamp(98px, 12vh, 140px);
      left: var(--pad);
      width: calc(100% - var(--pad) * 2);
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 36px;
      pointer-events: none;
    }
    .interventions__header .display { max-width: 720px; }
    .interventions__counter {
      text-align: right;
      color: var(--muted-dark);
      font-size: 10px;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .interventions__counter strong {
      display: block;
      margin-bottom: 4px;
      color: white;
      font-size: 54px;
      font-weight: 480;
      line-height: 1;
      letter-spacing: -.06em;
      font-variant-numeric: tabular-nums;
    }
    .interventions__track-wrap {
      position: absolute;
      left: 0;
      bottom: 7vh;
      width: 100%;
      overflow: visible;
    }
    .interventions__track {
      display: flex;
      gap: 20px;
      width: max-content;
      padding: 0 var(--pad);
      will-change: transform;
    }
    .service-card {
      --card-shift: 0;
      position: relative;
      width: min(72vw, 720px);
      height: min(56vh, 570px);
      min-height: 470px;
      padding: clamp(24px, 3vw, 42px);
      display: grid;
      grid-template-rows: auto 1fr auto;
      border: 1px solid rgba(255,255,255,.13);
      border-radius: 28px;
      overflow: hidden;
      background: rgba(255,255,255,.045);
      transform: perspective(1200px) rotateY(var(--tilt-x, 0deg)) rotateX(var(--tilt-y, 0deg)) translateY(var(--card-shift));
      transition: border-color .35s ease, background .35s ease, transform .2s ease-out;
      isolation: isolate;
    }
    .service-card::before {
      content: "";
      position: absolute;
      z-index: -2;
      inset: 0;
      opacity: .88;
      background:
        radial-gradient(circle at var(--glow-x, 70%) var(--glow-y, 20%), rgba(185,255,56,.22), transparent 26%),
        linear-gradient(140deg, rgba(255,255,255,.04), transparent 45%);
    }
    .service-card::after {
      content: "";
      position: absolute;
      z-index: -1;
      inset: 0;
      background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
      background-size: 48px 48px;
      mask-image: linear-gradient(to bottom, transparent, black 40%, black);
      opacity: .6;
    }
    .service-card:hover { border-color: rgba(185,255,56,.45); background: rgba(255,255,255,.065); }
    .service-card__top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      color: var(--muted-dark);
      font-size: 9px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
    .service-card__number {
      width: 44px;
      height: 44px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.18);
      border-radius: 50%;
      color: white;
    }
    .service-card__content {
      align-self: end;
      max-width: 590px;
      padding-bottom: 28px;
    }
    .service-card h3 {
      margin: 0 0 18px;
      font-size: clamp(44px, 5vw, 78px);
      font-weight: 560;
      line-height: .95;
      letter-spacing: -.065em;
    }
    .service-card p {
      margin: 0;
      max-width: 500px;
      color: var(--muted-dark);
      font-size: clamp(15px, 1.45vw, 19px);
      line-height: 1.5;
    }
    .service-card__bottom {
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 20px;
      padding-top: 18px;
      border-top: 1px solid rgba(255,255,255,.12);
    }
    .service-card__outcome span {
      display: block;
      margin-bottom: 7px;
      color: rgba(255,255,255,.35);
      font-size: 8px;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .service-card__outcome strong {
      font-size: 12px;
      font-weight: 520;
    }
    .service-card__arrow {
      width: 52px;
      height: 52px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      color: var(--ink);
      background: var(--signal);
      font-size: 20px;
      transition: transform .5s var(--ease-out);
    }
    .service-card:hover .service-card__arrow { transform: rotate(45deg); }

    /* VERIFICATION */
    .verification { background: var(--paper); overflow: clip; }
    .verification__header {
      display: grid;
      grid-template-columns: 1.2fr .65fr;
      gap: 70px;
      align-items: end;
      margin-bottom: clamp(70px, 10vw, 150px);
    }
    .verification__header .body-copy { justify-self: end; }

    .compare-story { height: 320vh; position: relative; }
    .compare-story__sticky {
      position: sticky;
      top: 0;
      min-height: 100svh;
      display: grid;
      place-items: center;
      padding: 90px 0;
    }
    .browser {
      position: relative;
      width: min(100%, 1180px);
      aspect-ratio: 16 / 9.3;
      min-height: 620px;
      border: 1px solid rgba(7,10,8,.16);
      border-radius: 30px;
      overflow: hidden;
      background: white;
      box-shadow: 0 60px 140px rgba(9,13,9,.14);
    }
    .browser__chrome {
      position: absolute;
      z-index: 10;
      top: 0;
      left: 0;
      width: 100%;
      height: 54px;
      display: grid;
      grid-template-columns: 80px 1fr 80px;
      align-items: center;
      padding: 0 18px;
      border-bottom: 1px solid rgba(7,10,8,.12);
      background: rgba(247,248,244,.9);
      backdrop-filter: blur(12px);
    }
    .browser__dots { display: flex; gap: 7px; }
    .browser__dots i { width: 9px; height: 9px; border: 1px solid rgba(7,10,8,.35); border-radius: 50%; }
    .browser__url {
      justify-self: center;
      width: min(100%, 460px);
      padding: 8px 14px;
      border-radius: 999px;
      color: var(--muted);
      background: rgba(7,10,8,.055);
      font-size: 10px;
      text-align: center;
      letter-spacing: .03em;
    }
    .browser__viewport { position: absolute; inset: 54px 0 0; overflow: hidden; }
    .site-state { position: absolute; inset: 0; overflow: hidden; }
    .site-state--before { background: #dedfd9; }
    .site-state--after {
      clip-path: inset(0 calc(100% - var(--reveal)) 0 0);
      background: #080b09;
      color: white;
      transition: clip-path .08s linear;
    }
    .compare-handle {
      position: absolute;
      z-index: 12;
      top: 54px;
      bottom: 0;
      left: var(--reveal);
      width: 1px;
      background: var(--signal);
      transform: translateX(-50%);
      pointer-events: none;
    }
    .compare-handle::after {
      content: "↔";
      position: absolute;
      left: 50%;
      top: 50%;
      width: 54px;
      height: 54px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(7,10,8,.18);
      border-radius: 50%;
      color: var(--ink);
      background: var(--signal);
      box-shadow: 0 12px 35px rgba(0,0,0,.2);
      transform: translate(-50%, -50%);
      font-size: 18px;
    }
    .state-label {
      position: absolute;
      z-index: 8;
      top: 20px;
      padding: 8px 12px;
      border-radius: 999px;
      font-size: 8px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
    .state-label--before { left: 20px; border: 1px solid rgba(7,10,8,.16); background: rgba(255,255,255,.7); }
    .state-label--after { right: 20px; color: var(--ink); background: var(--signal); }

    .mock-before {
      height: 100%;
      padding: clamp(50px, 7vw, 95px) clamp(28px, 6vw, 80px);
      display: grid;
      grid-template-columns: 1.2fr .8fr;
      gap: 40px;
      align-items: center;
      filter: grayscale(1);
    }
    .mock-before__title {
      max-width: 610px;
      margin: 0 0 22px;
      font: 700 clamp(44px, 6vw, 90px)/.95 Georgia, serif;
      letter-spacing: -.045em;
      color: #30332f;
    }
    .mock-before__copy {
      max-width: 460px;
      color: #6d716a;
      font: 16px/1.6 Arial, sans-serif;
    }
    .mock-before__button {
      display: inline-block;
      margin-top: 28px;
      padding: 15px 24px;
      border-radius: 4px;
      color: white;
      background: #777b75;
      font: 700 12px Arial, sans-serif;
      text-transform: uppercase;
    }
    .mock-before__image {
      position: relative;
      aspect-ratio: .9;
      border-radius: 4px;
      background: linear-gradient(135deg, #a6aaa3, #d4d6d1);
      overflow: hidden;
    }
    .mock-before__image::before,
    .mock-before__image::after {
      content: "";
      position: absolute;
      border-radius: 50%;
      background: rgba(255,255,255,.44);
    }
    .mock-before__image::before { width: 70%; aspect-ratio: 1; left: -20%; bottom: -12%; }
    .mock-before__image::after { width: 50%; aspect-ratio: 1; right: -8%; top: 15%; }

    .mock-after {
      height: 100%;
      position: relative;
      overflow: hidden;
      background:
        radial-gradient(circle at 72% 40%, rgba(185,255,56,.18), transparent 25%),
        #080b09;
    }
    .mock-after__grid {
      position: absolute;
      inset: 0;
      opacity: .15;
      background-image: linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px);
      background-size: 56px 56px;
    }
    .mock-after__nav {
      position: relative;
      z-index: 2;
      height: 72px;
      padding: 0 clamp(28px, 5vw, 60px);
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid rgba(255,255,255,.12);
      font-size: 10px;
    }
    .mock-after__logo { font-size: 21px; font-weight: 760; letter-spacing: -.07em; }
    .mock-after__links { display: flex; gap: 24px; color: rgba(255,255,255,.54); }
    .mock-after__hero {
      position: relative;
      z-index: 2;
      height: calc(100% - 72px);
      padding: clamp(40px, 7vw, 90px) clamp(28px, 5vw, 60px);
      display: grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 40px;
      align-items: center;
    }
    .mock-after__title {
      max-width: 660px;
      margin: 0 0 24px;
      font-size: clamp(48px, 6.5vw, 100px);
      font-weight: 620;
      line-height: .88;
      letter-spacing: -.07em;
    }
    .mock-after__copy { max-width: 500px; color: rgba(255,255,255,.58); font-size: 15px; line-height: 1.55; }
    .mock-after__button {
      display: inline-flex;
      margin-top: 26px;
      padding: 14px 18px;
      border-radius: 999px;
      color: var(--ink);
      background: var(--signal);
      font-size: 10px;
      font-weight: 650;
    }
    .mock-after__visual {
      position: relative;
      aspect-ratio: 1;
      display: grid;
      place-items: center;
    }
    .mock-after__orb {
      width: 68%;
      aspect-ratio: 1;
      border: 1px solid rgba(255,255,255,.23);
      border-radius: 50%;
      box-shadow: 0 0 120px rgba(185,255,56,.13), inset 0 0 80px rgba(185,255,56,.09);
      animation: rotate 13s linear infinite reverse;
    }
    .mock-after__orb::before,
    .mock-after__orb::after {
      content: "";
      position: absolute;
      left: 50%; top: 50%;
      border: 1px solid rgba(255,255,255,.17);
      border-radius: 50%;
      transform: translate(-50%, -50%);
    }
    .mock-after__orb::before { width: 82%; height: 38%; transform: translate(-50%,-50%) rotate(55deg); }
    .mock-after__orb::after { width: 38%; height: 82%; transform: translate(-50%,-50%) rotate(55deg); }
    .mock-after__score {
      position: absolute;
      display: grid;
      place-items: center;
      width: 30%;
      aspect-ratio: 1;
      border-radius: 30%;
      color: var(--signal);
      background: rgba(3,6,4,.88);
      box-shadow: 0 30px 70px rgba(0,0,0,.35);
      font-size: clamp(34px, 5vw, 72px);
      letter-spacing: -.08em;
    }

    .compare-metrics {
      position: absolute;
      z-index: 20;
      right: 24px;
      bottom: 24px;
      display: grid;
      grid-template-columns: repeat(3, minmax(110px, 1fr));
      gap: 8px;
    }
    .metric {
      min-width: 130px;
      padding: 14px;
      border: 1px solid rgba(7,10,8,.12);
      border-radius: 14px;
      background: rgba(247,248,244,.84);
      backdrop-filter: blur(16px);
    }
    .metric span {
      display: block;
      margin-bottom: 8px;
      color: var(--muted);
      font-size: 8px;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .metric strong {
      font-size: 26px;
      font-weight: 560;
      letter-spacing: -.05em;
      font-variant-numeric: tabular-nums;
    }
    .metric strong b { color: #118b50; font-weight: inherit; }

    .compare-copy {
      position: absolute;
      left: 0;
      bottom: clamp(20px, 4vw, 54px);
      max-width: 390px;
      padding: 18px 20px;
      border-left: 2px solid var(--signal);
      color: var(--muted);
      background: rgba(243,244,239,.84);
      backdrop-filter: blur(15px);
      font-size: 13px;
      line-height: 1.5;
    }
    .compare-copy strong { display: block; margin-bottom: 4px; color: var(--ink); font-weight: 600; }

    /* METHOD */
    .method {
      min-height: 100svh;
      color: white;
      background: #060806;
      overflow: clip;
    }
    .method::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .35;
      background: radial-gradient(circle at 70% 20%, rgba(114,255,208,.18), transparent 30%);
    }
    .method__layout {
      position: relative;
      display: grid;
      grid-template-columns: .74fr 1.26fr;
      gap: clamp(50px, 9vw, 150px);
      align-items: start;
    }
    .method__intro { position: sticky; top: 130px; }
    .method__intro .body-copy { margin-top: 34px; }
    .method__steps { position: relative; display: grid; }
    .method__rail {
      position: absolute;
      left: 24px;
      top: 26px;
      bottom: 26px;
      width: 1px;
      background: rgba(255,255,255,.14);
    }
    .method__rail::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 1px;
      height: calc(var(--method-progress, 0) * 100%);
      background: var(--signal);
    }
    .method-step {
      position: relative;
      display: grid;
      grid-template-columns: 50px 1fr;
      gap: 26px;
      min-height: 220px;
      padding: 22px 0 70px;
      border-bottom: 1px solid rgba(255,255,255,.11);
    }
    .method-step__dot {
      position: relative;
      z-index: 2;
      width: 49px;
      height: 49px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.16);
      border-radius: 50%;
      color: rgba(255,255,255,.55);
      background: #060806;
      font-size: 10px;
      transition: color .35s ease, border-color .35s ease, background .35s ease;
    }
    .method-step.is-active .method-step__dot { color: var(--ink); border-color: var(--signal); background: var(--signal); }
    .method-step h3 {
      margin: 0 0 15px;
      font-size: clamp(34px, 4vw, 62px);
      font-weight: 540;
      line-height: 1;
      letter-spacing: -.055em;
    }
    .method-step p {
      margin: 0;
      max-width: 590px;
      color: var(--muted-dark);
      font-size: clamp(15px, 1.35vw, 18px);
      line-height: 1.58;
    }
    .method-step__meta {
      margin-top: 22px;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .method-step__meta span {
      padding: 7px 9px;
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 999px;
      color: rgba(255,255,255,.45);
      font-size: 8px;
      letter-spacing: .1em;
      text-transform: uppercase;
    }

    /* QUEBEC */
    .quebec { background: var(--paper); overflow: hidden; }
    .quebec__layout {
      display: grid;
      grid-template-columns: 1.05fr .95fr;
      gap: clamp(60px, 9vw, 160px);
      align-items: center;
    }
    .language-visual {
      position: relative;
      min-height: 700px;
      perspective: 1200px;
    }
    .language-card {
      position: absolute;
      width: min(78%, 520px);
      aspect-ratio: 4 / 5;
      padding: 34px;
      display: grid;
      align-content: space-between;
      border: 1px solid rgba(7,10,8,.16);
      border-radius: 30px;
      box-shadow: 0 50px 100px rgba(6,8,6,.13);
      transform-style: preserve-3d;
    }
    .language-card--fr {
      left: 3%; top: 10%;
      color: white;
      background: #090c09;
      transform: rotateY(17deg) rotateZ(-7deg) translateZ(20px);
    }
    .language-card--en {
      right: 1%; bottom: 4%;
      background: var(--signal);
      transform: rotateY(-15deg) rotateZ(8deg) translateZ(80px);
    }
    .language-card__top {
      display: flex;
      justify-content: space-between;
      font-size: 9px;
      letter-spacing: .13em;
      text-transform: uppercase;
      opacity: .58;
    }
    .language-card__letter {
      font-size: clamp(150px, 20vw, 290px);
      font-weight: 690;
      line-height: .7;
      letter-spacing: -.12em;
    }
    .language-card__bottom {
      font-size: 12px;
      line-height: 1.5;
      opacity: .66;
    }
    .language-bridge {
      position: absolute;
      z-index: 5;
      left: 50%;
      top: 50%;
      width: 110px;
      height: 110px;
      display: grid;
      place-items: center;
      border: 10px solid var(--paper);
      border-radius: 50%;
      color: var(--signal);
      background: var(--ink);
      box-shadow: 0 20px 60px rgba(0,0,0,.22);
      transform: translate(-50%, -50%);
      font-size: 10px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
    .quebec__copy .lead { margin: 38px 0 30px; }
    .feature-list { display: grid; margin-top: 46px; }
    .feature-row {
      display: grid;
      grid-template-columns: 35px 1fr;
      gap: 18px;
      padding: 20px 0;
      border-bottom: 1px solid var(--line);
    }
    .feature-row:first-child { border-top: 1px solid var(--line); }
    .feature-row__icon {
      width: 28px;
      height: 28px;
      display: grid;
      place-items: center;
      border: 1px solid var(--line);
      border-radius: 50%;
      font-size: 11px;
    }
    .feature-row strong { display: block; margin-bottom: 4px; font-size: 15px; }
    .feature-row p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }

    /* CTA */
    .cta {
      min-height: 115svh;
      display: grid;
      place-items: center;
      color: white;
      background: #050706;
      overflow: hidden;
    }
    .cta__rings {
      position: absolute;
      left: 50%;
      top: 50%;
      width: min(108vw, 1500px);
      aspect-ratio: 1;
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 50%;
      transform: translate(-50%, -50%) scale(calc(.85 + var(--cta-progress, 0) * .18));
    }
    .cta__rings::before,
    .cta__rings::after {
      content: "";
      position: absolute;
      border: 1px solid rgba(255,255,255,.1);
      border-radius: 50%;
    }
    .cta__rings::before { inset: 12%; }
    .cta__rings::after { inset: 28%; border-color: rgba(185,255,56,.22); }
    .cta__glow {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 42vw;
      aspect-ratio: 1;
      border-radius: 50%;
      background: rgba(185,255,56,.17);
      filter: blur(110px);
      transform: translate(-50%, -50%);
    }
    .cta__content {
      position: relative;
      z-index: 3;
      width: min(100%, 1180px);
      margin-inline: auto;
      padding: 140px var(--pad);
      text-align: center;
    }
    .cta__content .eyebrow { justify-content: center; }
    .cta__title {
      margin: 0 auto 38px;
      max-width: 1080px;
      font-size: clamp(64px, 10vw, 160px);
      font-weight: 650;
      line-height: .84;
      letter-spacing: -.08em;
    }
    .cta__title span { color: var(--signal); }
    .cta__copy {
      max-width: 600px;
      margin: 0 auto 38px;
      color: var(--muted-dark);
      font-size: clamp(16px, 1.5vw, 20px);
      line-height: 1.55;
    }
    .cta__action { display: inline-flex; }
    .cta__action .button { min-height: 68px; padding: 17px 28px; font-size: 14px; }
    .cta__meta {
      margin-top: 30px;
      color: rgba(255,255,255,.35);
      font-size: 9px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    .footer {
      position: relative;
      z-index: 3;
      padding: 38px var(--pad) max(38px, env(safe-area-inset-bottom));
      color: white;
      background: #050706;
      border-top: 1px solid rgba(255,255,255,.1);
    }
    .footer__inner {
      width: min(100%, var(--max));
      margin-inline: auto;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 40px;
      align-items: end;
    }
    .footer__brand { font-size: clamp(56px, 9vw, 120px); font-weight: 760; line-height: .8; letter-spacing: -.09em; }
    .footer__right { display: grid; gap: 18px; justify-items: end; }
    .footer__links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 18px; color: rgba(255,255,255,.54); font-size: 11px; }
    .footer__legal { color: rgba(255,255,255,.32); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }

    @media (max-width: 1100px) {
      .nav__links { display: none; }
      .nav__toggle { display: block; }
      .nav > .button { display: none; }
      .hero__content { grid-template-columns: 1fr; align-content: center; }
      .hero__aside { position: absolute; right: var(--pad); bottom: 90px; width: 320px; opacity: .84; }
      .hero__copy { padding-right: 220px; }
      .hero__intro { grid-template-columns: 1fr; }
      .situation__header, .verification__header, .quebec__layout { grid-template-columns: 1fr; }
      .situation__header .body-copy, .verification__header .body-copy { justify-self: start; }
      .symptom-stage { grid-template-columns: 1fr; }
      .system-visual { position: relative; top: auto; min-height: 620px; }
      .method__layout { grid-template-columns: 1fr; }
      .method__intro { position: relative; top: auto; }
      .quebec__copy { order: -1; }
      .language-visual { min-height: 650px; }
    }

    @media (max-width: 760px) {
      :root { --nav-h: 68px; }
      .cursor, .cursor-dot { display: none; }
      .brand__descriptor { display: none; }
      .brand { min-width: 0; }
      .nav { padding-inline: 18px; }
      .hero { height: 170vh; }
      .hero__sticky { min-height: 640px; }
      .hero__content { padding-inline: 20px; padding-top: calc(var(--nav-h) + 34px); align-content: start; }
      .hero__title { margin-top: 8vh; font-size: clamp(54px, 17vw, 88px); }
      .hero__copy { padding-right: 0; }
      .hero__intro p { max-width: 470px; }
      .hero__aside { display: none; }
      .hero__bottom { align-self: end; }
      .orbit-label { width: 130px; right: -25px; top: 50%; opacity: .65; }
      .hero__grid { background-size: 52px 52px; }
      .section { padding-inline: 20px; }
      .display, .display--medium { font-size: clamp(48px, 15vw, 80px); }
      .situation__header { margin-bottom: 70px; }
      .symptom { grid-template-columns: 32px 1fr; }
      .symptom__state { display: none; }
      .system-visual { min-height: 460px; }
      .system-map { width: 110%; }
      .system-map__tag { font-size: 7px; }

      .interventions { height: auto; padding: 120px 0; }
      .interventions__sticky { position: relative; height: auto; min-height: 0; overflow: visible; }
      .interventions__header { position: relative; inset: auto; padding: 0 20px; align-items: start; }
      .interventions__counter { display: none; }
      .interventions__track-wrap { position: relative; inset: auto; margin-top: 60px; }
      .interventions__track { width: auto; display: grid; padding: 0 20px; transform: none !important; }
      .service-card { width: 100%; height: auto; min-height: 500px; }

      .compare-story { height: auto; }
      .compare-story__sticky { position: relative; min-height: 0; padding: 0; }
      .browser { min-height: 640px; aspect-ratio: auto; border-radius: 20px; }
      .mock-before, .mock-after__hero { grid-template-columns: 1fr; }
      .mock-before__image, .mock-after__visual { display: none; }
      .mock-after__links { display: none; }
      .compare-metrics { right: 10px; bottom: 10px; left: 10px; grid-template-columns: repeat(3, 1fr); }
      .metric { min-width: 0; padding: 10px; }
      .metric strong { font-size: 18px; }
      .compare-copy { position: relative; margin-top: 30px; }
      .site-state--after { clip-path: inset(0 0 0 0); }
      .compare-handle { display: none; }
      .state-label--before { display: none; }

      .method-step { grid-template-columns: 46px 1fr; gap: 18px; }
      .language-visual { min-height: 520px; }
      .language-card { width: 75%; padding: 22px; border-radius: 22px; }
      .language-card__letter { font-size: 42vw; }
      .language-bridge { width: 82px; height: 82px; border-width: 7px; }
      .cta { min-height: 100svh; }
      .cta__content { padding-inline: 20px; }
      .footer__inner { grid-template-columns: 1fr; }
      .footer__right { justify-items: start; }
      .footer__links { justify-content: flex-start; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
      }
      [data-reveal] { opacity: 1; transform: none; }
      #hero-webgl { opacity: .45; }
    }

    /* GXN production additions */
    .nav__link--sos::before {
      content: "";
      display: inline-block;
      width: 6px;
      height: 6px;
      margin-right: 7px;
      border-radius: 50%;
      background: var(--danger);
      box-shadow: 0 0 0 4px rgba(255, 92, 53, .12);
      vertical-align: 1px;
    }

    .mobile-panel__cta {
      position: absolute;
      top: calc(var(--nav-h) + 18px);
      left: 22px;
      right: 22px;
      width: auto;
    }

    .mobile-panel__links {
      padding-top: 76px;
    }

    .hero-principle {
      padding: 27px 0 24px;
    }

    .hero__title--home {
      font-size: clamp(58px, 6.4vw, 105px);
    }

    .hero-principle span {
      display: block;
      margin-bottom: 10px;
      color: rgba(255,255,255,.42);
      font-size: 8px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    .hero-principle strong {
      display: block;
      max-width: 310px;
      color: white;
      font-size: clamp(25px, 2vw, 34px);
      font-weight: 520;
      line-height: 1.08;
      letter-spacing: -.045em;
    }

    .symptom {
      width: 100%;
      color: inherit;
      text-align: left;
      cursor: pointer;
    }

    .symptom:focus-visible {
      outline: 2px solid var(--ink);
      outline-offset: 4px;
    }

    .triage-breadcrumb {
      min-height: 34px;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin: -80px 0 46px;
    }

    .triage-chip,
    .triage-back {
      padding: 8px 11px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: transparent;
      color: var(--muted);
      font-size: 9px;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .triage-back {
      color: var(--ink);
      cursor: pointer;
    }

    .triage-visual {
      isolation: isolate;
    }

    .triage-card {
      position: absolute;
      z-index: 10;
      left: 50%;
      top: 50%;
      width: min(88%, 500px);
      padding: clamp(24px, 3vw, 38px);
      border: 1px solid rgba(7,10,8,.18);
      border-radius: 24px;
      background: rgba(243,244,239,.91);
      box-shadow: 0 40px 100px rgba(6,8,6,.18);
      backdrop-filter: blur(22px) saturate(1.15);
      transform: translate(-50%, -50%);
    }

    .triage-card__eyebrow {
      display: block;
      margin-bottom: 20px;
      color: var(--muted);
      font-size: 8px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    .triage-card h3 {
      margin: 0 0 16px;
      font-size: clamp(32px, 4vw, 54px);
      font-weight: 540;
      line-height: .98;
      letter-spacing: -.055em;
    }

    .triage-card p {
      margin: 0;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.55;
    }

    .triage-card__range {
      display: inline-flex;
      margin-top: 22px;
      padding: 8px 11px;
      border: 1px solid var(--line);
      border-radius: 999px;
      color: var(--ink);
      font-size: 9px;
      letter-spacing: .07em;
      text-transform: uppercase;
    }

    .triage-card__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 9px;
      margin-top: 24px;
    }

    .triage-card__actions .button {
      min-height: 44px;
    }

    .triage-card__actions .button--ghost {
      border-color: var(--line);
      color: var(--ink);
    }

    .text-link {
      display: inline-flex;
      gap: 12px;
      margin-top: 34px;
      padding-bottom: 7px;
      border-bottom: 1px solid rgba(255,255,255,.28);
      color: white;
      font-size: 12px;
    }

    .text-link--dark {
      border-color: var(--line);
      color: var(--ink);
    }

    .footer__positioning {
      max-width: 420px;
      margin: 28px 0 0;
      color: rgba(255,255,255,.48);
      font-size: 12px;
      line-height: 1.55;
    }

    .footer__links--legal {
      color: rgba(255,255,255,.36);
      font-size: 10px;
    }

    @media (max-width: 760px) {
      .hero__title--home {
        margin-top: 5vh;
        font-size: clamp(39px, 11vw, 50px);
      }

      .hero__copy,
      .hero__intro,
      .hero__intro p {
        width: 100%;
        min-width: 0;
      }

      .hero__content {
        width: 100vw;
        max-width: 100vw;
        grid-template-columns: minmax(0, 1fr);
      }

      .hero__copy {
        max-width: calc(100vw - 40px);
      }

      .hero__intro,
      .hero__intro p,
      .hero__actions {
        width: calc(100vw - 40px);
        max-width: calc(100vw - 40px);
        overflow-wrap: anywhere;
      }

      .hero__actions {
        display: grid;
        grid-template-columns: 1fr;
      }

      .hero__actions .button {
        width: 100%;
      }

      .triage-breadcrumb {
        margin: -38px 0 30px;
      }

      .triage-card {
        width: calc(100% - 10px);
      }

      .triage-card h3 {
        font-size: 34px;
      }

      .triage-card__actions {
        display: grid;
      }

      .triage-card__actions .button {
        width: 100%;
      }

      .footer__positioning {
        margin-top: 20px;
      }
    }
