    @font-face {
      font-family: "IBM Plex Sans";
      font-style: normal;
      font-weight: 400 600;
      font-display: swap;
      src: url("/assets/fonts/ibm-plex-sans-latin.woff2") format("woff2");
    }

    @font-face {
      font-family: "Newsreader";
      font-style: normal;
      font-weight: 400 600;
      font-display: swap;
      src: url("/assets/fonts/newsreader-latin.woff2") format("woff2");
    }

    :root {
      --charcoal: #11110f;
      --charcoal-2: #181815;
      --bone: #f2efe8;
      --paper: #e8e2d8;
      --paper-deep: #ddd5c8;
      --ink: #171714;
      --muted: #666158;
      --muted-dark: #b5afa5;
      --line: rgba(23, 23, 20, .18);
      --line-dark: rgba(242, 239, 232, .18);
      --accent: #e94b35;
      --accent-dark: #c93c29;
      --accent-text: #b63827;
      --accent-soft: #f7d3ca;
      --white: #fbfaf6;
      --max: 1488px;
      --nav-h: 74px;

      --s1: 8px;
      --s2: 16px;
      --s3: 24px;
      --s4: 32px;
      --s5: 48px;
      --s6: 64px;
      --s7: 96px;
      --s8: 128px;
      --s9: 160px;

      --display: "Newsreader", serif;
      --body: "IBM Plex Sans", sans-serif;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; background: var(--charcoal); }
    body {
      margin: 0;
      background: var(--bone);
      color: var(--ink);
      font-family: var(--body);
      font-size: 16px;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
      overflow-x: hidden;
    }
    body::before {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 999;
      pointer-events: none;
      opacity: .045;
      mix-blend-mode: multiply;
      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='.92' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
    }

    a { color: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    img { max-width: 100%; display: block; }
    p, h1, h2, h3 { margin-top: 0; }
    ::selection { background: var(--accent); color: #fff; }

    .shell { width: min(calc(100% - 48px), var(--max)); margin-inline: auto; }
    .measure { max-width: 740px; }
    .skip {
      position: fixed;
      left: 16px;
      top: -80px;
      z-index: 2000;
      padding: 12px 16px;
      background: var(--charcoal);
      color: var(--bone);
      text-decoration: none;
      font-weight: 600;
    }
    .skip:focus { top: 16px; }

    :focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }

    .topbar {
      position: sticky;
      top: 0;
      z-index: 100;
      background: color-mix(in srgb, var(--bone) 92%, transparent);
      backdrop-filter: blur(14px);
      border-bottom: 1px solid rgba(17,17,15,.09);
    }
    .nav {
      position: relative;
      min-height: var(--nav-h);
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: var(--s4);
    }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: 21px;
      text-decoration: none;
      white-space: nowrap;
    }
    .brand-mark {
      display: grid;
      place-items: center;
      width: 46px;
      height: 46px;
      background: var(--charcoal);
      color: var(--bone);
      font-family: var(--display);
      font-size: 18px;
      font-weight: 600;
      letter-spacing: -.02em;
    }
    .brand-name {
      font-size: 16px;
      font-weight: 600;
      letter-spacing: .04em;
    }
    .nav-links {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      align-items: center;
      gap: 50px;
    }
    .nav-links a {
      position: relative;
      text-decoration: none;
      font-size: 16px;
      font-weight: 500;
      color: #4a463f;
    }
    .nav-links a::after {
      content: "";
      position: absolute;
      left: 0;
      right: 100%;
      bottom: -7px;
      height: 1px;
      background: var(--accent);
      transition: right .18s ease;
    }
    .nav-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 127px;
      min-height: 46px;
      padding: 0 22px;
      border: 0;
      background: var(--accent);
      color: #fff;
      font-family: var(--body);
      text-decoration: none;
      font-size: 16px;
      font-weight: 400;
      letter-spacing: .01em;
      cursor: pointer;
    }
    .menu-button { display: none; }
    .mobile-menu { display: none; }


    .nav-actions {
      grid-column: 3;
      justify-self: end;
      display: flex;
      align-items: center;
      gap: 31px;
    }
    .lang-switch {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      color: #8a847b;
      font-size: 14px;
      font-weight: 600;
      letter-spacing: .08em;
    }
    .lang-option {
      min-width: 34px;
      min-height: 38px;
      padding: 0;
      border: 0;
      border-bottom: 1px solid transparent;
      background: transparent;
      color: #666158;
      font: inherit;
      cursor: pointer;
    }
    .lang-option.active {
      border-bottom-color: var(--accent);
      color: var(--ink);
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      margin: 0;
      color: var(--muted);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .eyebrow::before {
      content: "";
      width: 28px;
      height: 1px;
      background: currentColor;
    }
    .on-dark .eyebrow { color: #aaa49a; }

    .display {
      font-family: var(--display);
      font-weight: 500;
      letter-spacing: -.042em;
      line-height: .98;
    }
    .section-title {
      margin: 0;
      font-family: var(--display);
      font-size: clamp(46px, 6vw, 82px);
      font-weight: 500;
      line-height: .98;
      letter-spacing: -.045em;
    }
    .section-title-spaced { margin-top: 24px; }
    .section-lead {
      margin: var(--s3) 0 0;
      color: var(--muted);
      font-size: 17px;
      line-height: 1.7;
    }
    .on-dark .section-lead { color: var(--muted-dark); }

    .btn-primary {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      min-height: 54px;
      padding: 0 20px;
      border: 0;
      background: var(--accent);
      color: #fff;
      font-family: var(--body);
      text-decoration: none;
      font-size: 13px;
      font-weight: 600;
      cursor: pointer;
      transition: background .16s ease, transform .16s ease;
    }
    .btn-primary .arrow { font-size: 19px; line-height: 1; }

    .hero {
      position: relative;
      min-height: 606px;
      padding: 18px 0;
      overflow: clip;
      background: var(--bone);
      isolation: isolate;
    }
    .hero::after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: min(31vw, 540px);
      z-index: -1;
      pointer-events: none;
      background: radial-gradient(ellipse 50% 65% at 35% 48%, rgba(255,116,76,.14), rgba(255,116,76,.07) 38%, transparent 68%);
    }
    .hero .shell { width: min(calc(100% - 48px), 1600px); }
    .hero-grid {
      display: grid;
      grid-template-columns: minmax(520px, .72fr) minmax(740px, 1.05fr);
      gap: 20px;
      align-items: center;
    }
    .hero-copy { min-width: 0; transform: translateY(26px); }
    .hero h1 {
      margin: 0;
      max-width: 720px;
      font-family: var(--display);
      font-size: clamp(64px, 4.5vw, 80px);
      font-weight: 500;
      line-height: .95;
      letter-spacing: -.058em;
      transform: translateY(14px);
    }
    .hero h1 em {
      display: block;
      color: #f02c24;
      font-size: .81em;
      font-style: normal;
      line-height: 1.04;
      letter-spacing: -.045em;
      white-space: nowrap;
    }
    .hero-lead {
      max-width: 620px;
      margin: 28px 0 0;
      color: #4f4a43;
      font-size: clamp(18px, 1.25vw, 22px);
      line-height: 1.5;
    }
    .hero-cta { margin-top: 32px; }
    .hero .btn-primary {
      min-width: 356px;
      min-height: 63px;
      padding-inline: 28px;
      background: #f02c24;
      font-size: 18px;
      font-weight: 400;
    }

    .ai-flow {
      position: relative;
      container-type: inline-size;
      justify-self: end;
      width: min(100%, 920px);
      aspect-ratio: 920 / 570;
      transform: translateY(-17px);
      isolation: isolate;
    }
    .ai-flow::before {
      content: "";
      position: absolute;
      inset: 4% -1% 3% 28%;
      z-index: -2;
      background: radial-gradient(circle at 69% 48%, rgba(255,101,60,.15), transparent 45%);
      pointer-events: none;
    }
    .flow-lines {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      overflow: visible;
      pointer-events: none;
    }
    .flow-line {
      fill: none;
      stroke: rgba(54,54,50,.52);
      stroke-width: 1;
      vector-effect: non-scaling-stroke;
      stroke-linecap: round;
      stroke-dasharray: 1;
      stroke-dashoffset: 1;
      animation: draw-flow .8s cubic-bezier(.2,.7,.2,1) forwards;
    }
    .flow-line:nth-child(2) { animation-delay: .04s; }
    .flow-line:nth-child(3) { animation-delay: .08s; }
    .flow-line:nth-child(4) { animation-delay: .12s; }
    .flow-line:nth-child(5) { animation-delay: .16s; }
    .flow-line:nth-child(6) { animation-delay: .20s; }
    .flow-line:nth-child(7) { animation-delay: .24s; }
    .flow-line:nth-child(8) { animation-delay: .28s; }
    .flow-line-output {
      stroke: #f02c24;
      stroke-width: 1.6;
      animation-delay: .42s;
    }
    .flow-line:not(.flow-line-output),
    .flow-nodes { transform: translateX(-7px); }
    .flow-line-output + .flow-nodes { fill: #73716b; }
    .flow-lines marker path { fill: #f02c24; opacity: 0; animation: show-flow-arrow .25s ease-out 1.15s forwards; }
    .flow-nodes circle {
      fill: #797873;
      stroke: var(--bone);
      stroke-width: 1.2;
      transform-box: fill-box;
      transform-origin: center;
      transform: scale(0);
      animation: pop-flow-node .18s cubic-bezier(.25,.9,.35,1.35) forwards;
    }
    .flow-nodes circle:nth-child(1) { animation-delay: .55s; }
    .flow-nodes circle:nth-child(2) { animation-delay: .58s; }
    .flow-nodes circle:nth-child(3) { animation-delay: .61s; }
    .flow-nodes circle:nth-child(4) { animation-delay: .64s; }
    .flow-nodes circle:nth-child(5) { animation-delay: .67s; }
    .flow-nodes circle:nth-child(6) { animation-delay: .70s; }
    .flow-nodes circle:nth-child(7) { animation-delay: .73s; }
    .flow-nodes circle:nth-child(8) { animation-delay: .76s; }

    .flow-sources { position: static; }
    .source-card {
      position: absolute;
      width: 18.05cqw;
      min-height: 8.35cqw;
      display: flex;
      gap: 1.15cqw;
      align-items: center;
      padding: 1.2cqw 1.35cqw;
      border: 1px solid rgba(255,255,255,.72);
      border-radius: 1.25cqw;
      background: rgba(251,250,246,.9);
      box-shadow: 0 1.1cqw 3cqw rgba(49,43,35,.09);
      backdrop-filter: blur(7px);
      transform: translateX(-6px) translateZ(0);
    }
    .source-icon {
      flex: 0 0 4.55cqw;
      width: 4.55cqw;
      height: 4.55cqw;
      display: grid;
      place-items: center;
      border-radius: 1cqw;
      background: var(--icon-bg);
      color: var(--icon);
    }
    .source-icon svg {
      width: 2.75cqw;
      height: 2.75cqw;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .source-copy { min-width: 0; flex: 1; }
    .source-card strong {
      display: block;
      overflow: hidden;
      color: #27251f;
      font-size: clamp(9px, 1.22cqw, 12px);
      font-weight: 600;
      line-height: 1.15;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .source-card small {
      position: relative;
      display: block;
      width: 7.8cqw;
      height: 1.85cqw;
      margin-top: .7cqw;
    }
    .source-card small::before,
    .source-card small::after {
      content: "";
      position: absolute;
      left: 0;
      height: .55cqw;
      border-radius: 999px;
      background: rgba(23,23,20,.12);
    }
    .source-card small::before { top: 0; width: 100%; }
    .source-card small::after { bottom: 0; width: 67%; }
    .source-card:nth-child(1) { top: 4.8cqw; left: 1.3cqw; --icon: #1671ff; --icon-bg: #e7efff; }
    .source-card:nth-child(2) { top: 10.3cqw; left: 22.3cqw; --icon: #ff2f2a; --icon-bg: #ffe9e5; }
    .source-card:nth-child(3) { top: 15.8cqw; left: 3.8cqw; --icon: #12a96e; --icon-bg: #e3f7ee; }
    .source-card:nth-child(4) { top: 26.4cqw; left: 8.1cqw; --icon: #376cff; --icon-bg: #e9edff; }
    .source-card:nth-child(5) { top: 35.6cqw; left: 1.6cqw; --icon: #f28a00; --icon-bg: #fff0dc; }
    .source-card:nth-child(6) { top: 45.1cqw; left: 4.9cqw; --icon: #6645e8; --icon-bg: #eee9ff; }
    .source-card:nth-child(7) { top: 54cqw; left: 1.1cqw; --icon: #3b4045; --icon-bg: #e9e9e7; }
    .source-card:nth-child(8) { top: 53.1cqw; left: 23.2cqw; --icon: #08a974; --icon-bg: #e3f7ef; }

    .flow-hub-wrap {
      position: absolute;
      top: 28.4cqw;
      left: 43cqw;
    }
    .flow-hub {
      width: 11cqw;
      height: 11cqw;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.72);
      border-radius: 3cqw;
      background: rgba(251,250,246,.95);
      box-shadow: 0 1.8cqw 4.5cqw rgba(240,44,36,.16);
      color: #f02c24;
    }
    .flow-hub svg {
      width: 5.2cqw;
      height: 5.2cqw;
      fill: currentColor;
      stroke: none;
    }

    .flow-outcome {
      position: absolute;
      top: 12.4cqw;
      left: 62.9cqw;
      width: 37cqw;
      min-height: 24.35cqw;
      display: grid;
      grid-template-columns: 10.5cqw 1fr;
      gap: 2.4cqw;
      align-items: center;
      padding: 3cqw 2.8cqw;
      border: 1px solid rgba(255,255,255,.68);
      border-radius: 2.7cqw;
      background: rgba(251,250,246,.88);
      box-shadow: 0 2.5cqw 6cqw rgba(53,42,32,.09);
      backdrop-filter: blur(8px);
    }
    .outcome-icon {
      display: grid;
      place-items: center;
      color: #f02c24;
    }
    .outcome-icon svg { width: 8.4cqw; height: 8.4cqw; fill: currentColor; }
    .outcome-copy { min-width: 0; }
    .outcome-kicker {
      display: block;
      margin-bottom: 1.25cqw;
      color: #55524d;
      font-size: clamp(8px, 1.05cqw, 10px);
      font-weight: 600;
      letter-spacing: .21em;
      text-transform: uppercase;
    }
    .flow-outcome strong {
      display: block;
      margin-bottom: 1.8cqw;
      font-family: var(--display);
      font-size: clamp(30px, 4.35cqw, 44px);
      font-weight: 500;
      line-height: .96;
      letter-spacing: -.04em;
      white-space: nowrap;
    }
    .outcome-description {
      display: block;
      color: #666159;
      font-size: clamp(12px, 1.75cqw, 17px);
      line-height: 1.55;
    }

    .flow-benefits {
      position: absolute;
      top: 39cqw;
      left: 66.2cqw;
      width: 33.5cqw;
      display: grid;
      gap: 1.05cqw;
    }
    .flow-benefit {
      display: grid;
      grid-template-columns: 6.4cqw 1fr;
      gap: 2cqw;
      align-items: center;
    }
    .flow-benefit > span {
      width: 6.4cqw;
      height: 6.4cqw;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.76);
      border-radius: 50%;
      background: rgba(251,250,246,.76);
      color: #f02c24;
      box-shadow: 0 .8cqw 2.5cqw rgba(56,45,37,.05);
    }
    .flow-benefit svg {
      width: 3.1cqw;
      height: 3.1cqw;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .flow-benefit strong {
      color: #20303a;
      font-size: clamp(13px, 1.85cqw, 18px);
      font-weight: 400;
      line-height: 1.25;
    }
    .proof-strip { background: var(--charcoal); color: var(--bone); }
    .proof-grid {
      display: grid;
      grid-template-columns: 345fr 400fr 387fr 356fr;
    }
    .proof-item {
      min-height: 154px;
      padding: 28px 28px 26px 0;
      border-right: 1px solid var(--line-dark);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .proof-item + .proof-item { padding-left: 28px; }
    .proof-item:last-child { border-right: 0; }
    @media (min-width: 1041px) {
      .proof-value { transform: translateY(-4px); }
      .proof-label { transform: translateY(-28px); }
      .proof-item:nth-child(2) { padding-left: 92px; }
      .proof-item:nth-child(3) { padding-left: 55px; }
      .proof-item:nth-child(4) { padding-left: 62px; }
    }
    .proof-value {
      font-family: var(--display);
      font-size: clamp(33px, 3.2vw, 48px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.035em;
    }
    .proof-label {
      margin-top: 18px;
      color: #aba59b;
      font-size: 11px;
      line-height: 1.45;
      text-transform: uppercase;
      letter-spacing: .08em;
    }

    .section { padding: var(--s8) 0; }
    .section-paper { background: var(--paper); }
    .section-dark { background: var(--charcoal); color: var(--bone); }
    .section-white { background: var(--white); }

    .intro-grid {
      display: grid;
      grid-template-columns: .44fr 1.56fr;
      gap: var(--s6);
      align-items: start;
      margin-bottom: var(--s6);
    }
    .intro-grid .eyebrow { margin-top: 9px; }
    .intro-grid-flush { margin-bottom: 0; }

    .problem-list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
    }
    .problem {
      min-height: 350px;
      padding: 30px 34px 34px 0;
      display: flex;
      flex-direction: column;
    }
    .problem + .problem {
      padding-left: 34px;
      border-left: 1px solid var(--line);
    }
    .problem-index {
      color: var(--accent-text);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .11em;
      text-transform: uppercase;
    }
    .problem h3 {
      margin: auto 0 18px;
      max-width: 340px;
      font-family: var(--display);
      font-size: 31px;
      font-weight: 500;
      line-height: 1.08;
      letter-spacing: -.03em;
    }
    .problem p {
      margin: 0;
      max-width: 355px;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.65;
    }

    .service-list { border-top: 1px solid var(--line-dark); }
    .service-row {
      display: grid;
      grid-template-columns: 90px .75fr 1.25fr;
      gap: var(--s4);
      padding: 42px 0;
      border-bottom: 1px solid var(--line-dark);
      align-items: start;
    }
    .service-num {
      color: var(--accent);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .11em;
    }
    .service-row h3 {
      margin: -4px 0 0;
      font-family: var(--display);
      font-size: clamp(34px, 3.4vw, 49px);
      font-weight: 500;
      line-height: 1.02;
      letter-spacing: -.035em;
    }
    .service-copy > p {
      margin: 0;
      max-width: 570px;
      color: var(--muted-dark);
      font-size: 15px;
      line-height: 1.7;
    }
    .service-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 14px;
      margin-top: 18px;
    }
    .service-tags span {
      color: #d5d0c8;
      font-size: 11px;
      letter-spacing: .03em;
    }
    .service-tags span::before { content: "↳ "; color: var(--accent); }

    .process-layout {
      display: grid;
      grid-template-columns: .72fr 1.28fr;
      gap: clamp(48px, 8vw, 112px);
      align-items: start;
    }
    .process-intro { position: sticky; top: 106px; }
    .process-intro .section-lead { max-width: 470px; }
    .steps { border-top: 1px solid var(--line); }
    .step {
      display: grid;
      grid-template-columns: 56px 1fr 120px;
      gap: 24px;
      padding: 30px 0;
      border-bottom: 1px solid var(--line);
    }
    .step-num {
      color: var(--accent-text);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .08em;
    }
    .step h3 {
      margin: -5px 0 9px;
      font-family: var(--display);
      font-size: 28px;
      font-weight: 500;
      line-height: 1.08;
      letter-spacing: -.025em;
    }
    .step p {
      margin: 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.65;
    }
    .step-tag {
      justify-self: end;
      color: #666158;
      font-size: 10px;
      letter-spacing: .08em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .evidence-head {
      display: grid;
      grid-template-columns: 1fr .7fr;
      gap: var(--s6);
      align-items: end;
      margin-bottom: var(--s5);
    }
    .evidence-note {
      justify-self: end;
      max-width: 430px;
      color: var(--muted-dark);
      font-size: 13px;
      line-height: 1.65;
    }
    .cases { border-top: 1px solid var(--line-dark); }
    .case {
      display: grid;
      grid-template-columns: 170px 1fr 1fr;
      gap: var(--s5);
      padding: 44px 0;
      border-bottom: 1px solid var(--line-dark);
      align-items: start;
    }
    .case-type {
      color: #8f897f;
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .1em;
      text-transform: uppercase;
    }
    .case h3 {
      margin: -6px 0 10px;
      font-family: var(--display);
      font-size: clamp(34px, 4vw, 52px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.035em;
    }
    .case p {
      margin: 0;
      color: var(--muted-dark);
      font-size: 14px;
      line-height: 1.68;
    }
    .case-result {
      padding-left: var(--s4);
      border-left: 1px solid var(--line-dark);
    }
    .case-result strong {
      display: block;
      margin-bottom: 10px;
      color: var(--bone);
      font-family: var(--display);
      font-size: clamp(30px, 3.2vw, 46px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.035em;
    }
    .case-result span {
      color: #9e988e;
      font-size: 12px;
      line-height: 1.5;
    }

    .about-grid {
      display: grid;
      grid-template-columns: .85fr 1.15fr;
      gap: clamp(56px, 9vw, 132px);
      align-items: start;
    }
    .about-statement {
      position: sticky;
      top: 106px;
    }
    .about-name {
      margin: 28px 0 0;
      font-family: var(--display);
      font-size: clamp(56px, 7vw, 96px);
      font-weight: 500;
      line-height: .92;
      letter-spacing: -.05em;
    }
    .about-portrait {
      display: block;
      width: min(100%, 320px);
      height: auto;
      margin: 36px 0 0;
      border-radius: 4px;
    }
    .about-role {
      margin: 20px 0 0;
      color: var(--accent-text);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .about-copy {
      padding-top: 4px;
    }
    .about-copy > p:first-child {
      margin: 0;
      max-width: 680px;
      font-family: var(--display);
      font-size: clamp(29px, 3.2vw, 43px);
      font-weight: 400;
      line-height: 1.14;
      letter-spacing: -.025em;
    }
    .about-copy > p:not(:first-child) {
      margin: 26px 0 0;
      max-width: 690px;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.78;
    }
    .career {
      margin-top: 42px;
      border-top: 1px solid var(--line);
    }
    .career-row {
      display: grid;
      grid-template-columns: 150px 1fr;
      gap: 28px;
      padding: 22px 0;
      border-bottom: 1px solid var(--line);
    }
    .career-row span {
      color: #625d55;
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .09em;
      text-transform: uppercase;
    }
    .career-row strong {
      font-size: 14px;
      font-weight: 500;
      line-height: 1.5;
    }

    .fit-wrap {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--s6);
      padding-top: var(--s5);
      border-top: 1px solid var(--line-dark);
    }
    .fit-col h3 {
      margin: 0 0 18px;
      font-family: var(--display);
      font-size: 34px;
      font-weight: 500;
      letter-spacing: -.03em;
    }
    .fit-col ul { list-style: none; padding: 0; margin: 0; }
    .fit-col li {
      position: relative;
      padding: 15px 0 15px 24px;
      border-top: 1px solid rgba(242,239,232,.12);
      color: #c6c0b6;
      font-size: 13px;
      line-height: 1.55;
    }
    .fit-col li::before {
      position: absolute;
      left: 0;
      top: 15px;
      color: var(--accent);
    }
    .fit-good li::before { content: "+"; }
    .fit-bad li::before { content: "–"; color: #777168; }

    .faq-wrap {
      display: grid;
      grid-template-columns: .55fr 1.45fr;
      gap: var(--s6);
      align-items: start;
    }
    .faq-list { border-top: 1px solid var(--line); }
    details { border-bottom: 1px solid var(--line); }
    summary {
      position: relative;
      list-style: none;
      cursor: pointer;
      padding: 22px 52px 22px 0;
      font-family: var(--display);
      font-size: 24px;
      line-height: 1.2;
      letter-spacing: -.02em;
    }
    summary::-webkit-details-marker { display: none; }
    summary::after {
      content: "+";
      position: absolute;
      right: 0;
      top: 18px;
      color: var(--accent);
      font-family: var(--body);
      font-size: 22px;
      font-weight: 400;
    }
    details[open] summary::after { content: "–"; }
    details p {
      max-width: 720px;
      margin: -4px 0 24px;
      padding-right: 52px;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.7;
    }

    .final-cta {
      position: relative;
      overflow: hidden;
      background: var(--accent);
      color: #fff;
      padding: var(--s8) 0;
    }
    .final-cta::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .12;
      background-image:
        linear-gradient(rgba(255,255,255,.22) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.22) 1px, transparent 1px);
      background-size: 64px 64px;
    }
    .final-grid {
      position: relative;
      display: grid;
      grid-template-columns: 1.3fr .7fr;
      gap: var(--s6);
      align-items: end;
    }
    .final-cta .eyebrow { color: rgba(255,255,255,.74); }
    .final-cta h2 {
      margin: 24px 0 0;
      max-width: 940px;
      font-family: var(--display);
      font-size: clamp(56px, 7vw, 102px);
      font-weight: 500;
      line-height: .92;
      letter-spacing: -.05em;
    }
    .final-side p {
      margin: 0 0 24px;
      color: rgba(255,255,255,.86);
      font-size: 15px;
      line-height: 1.68;
    }
    .final-button {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      width: 100%;
      min-height: 58px;
      padding: 0 20px;
      border: 0;
      background: var(--charcoal);
      color: var(--bone);
      font-family: var(--body);
      text-decoration: none;
      font-size: 13px;
      font-weight: 600;
      cursor: pointer;
    }

    .footer {
      background: var(--charcoal);
      color: var(--bone);
      padding: 50px 0 30px;
    }
    .footer-top {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--s6);
      align-items: end;
      padding-bottom: 40px;
      border-bottom: 1px solid var(--line-dark);
    }
    .footer-name {
      margin: 0;
      font-family: var(--display);
      font-size: 32px;
      font-weight: 500;
      letter-spacing: -.025em;
    }
    .footer-contact {
      justify-self: end;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      gap: 16px 28px;
    }
    .footer-contact a {
      color: #c5bfb5;
      text-decoration: none;
      font-size: 12px;
    }
    .footer-bottom {
      display: flex;
      justify-content: space-between;
      gap: 20px;
      padding-top: 22px;
      color: #8a847b;
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: .08em;
    }

    @media (hover:hover) and (pointer:fine) {
      .nav-links a:hover::after { right: 0; }
      .nav-cta:hover, .btn-primary:hover { background: var(--accent-dark); }
      .btn-primary:hover { transform: translateY(-2px); }
      .final-button:hover { background: #24241f; }
      .footer-contact a:hover { color: var(--accent); }
    }

    @media (max-width: 1120px) {
      .hero-grid { grid-template-columns: 1fr; gap: 24px; }
      .hero-copy { max-width: 840px; transform: none; }
      .hero h1 { max-width: 900px; transform: none; }
      .hero-lead { max-width: 720px; }
      .hero-break { display: none; }
      .ai-flow { justify-self: center; max-width: 920px; transform: none; }
    }

    @media (max-width: 1040px) {
      .about-grid,
      .process-layout,
      .faq-wrap { grid-template-columns: 1fr; }
      .process-intro, .about-statement { position: static; }
      .proof-grid { grid-template-columns: 1fr 1fr; }
      .proof-item:nth-child(2) { border-right: 0; }
      .proof-item:nth-child(-n+2) { border-bottom: 1px solid var(--line-dark); }
      .proof-item:nth-child(3) { padding-left: 0; }
      .service-row { grid-template-columns: 64px .8fr 1.2fr; }
      .case { grid-template-columns: 130px 1fr; }
      .case-result { grid-column: 2; padding-left: 0; border-left: 0; padding-top: 18px; border-top: 1px solid rgba(242,239,232,.12); }
      .final-grid { grid-template-columns: 1fr; gap: var(--s5); }
      .final-side { max-width: 560px; }
    }

    @media (max-width: 820px) {
      :root { --nav-h: 66px; }
      .shell { width: min(calc(100% - 30px), var(--max)); }
      .nav { grid-template-columns: auto 1fr auto; gap: 14px; }
      .brand { gap: 10px; }
      .brand-mark { width: 34px; height: 34px; font-size: 14px; }
      .brand-name { font-size: 11px; letter-spacing: .09em; }
      .nav-actions { gap: 8px; }
      .nav-links { display: none; }
      .nav-cta { min-height: 40px; padding-inline: 13px; }
      .lang-switch { gap: 2px; }
      .lang-option { min-width: 24px; min-height: 40px; }
      .menu-button {
        display: inline-flex;
        justify-self: end;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 40px;
        border: 0;
        background: transparent;
        color: var(--ink);
        font-family: var(--body);
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .08em;
      }
      .mobile-menu {
        border-top: 1px solid rgba(17,17,15,.08);
        background: var(--bone);
      }
      .mobile-menu.open { display: block; }
      .mobile-menu .shell { display: grid; padding: 12px 0 18px; }
      .mobile-menu a {
        padding: 12px 0;
        border-bottom: 1px solid rgba(17,17,15,.08);
        text-decoration: none;
        font-family: var(--display);
        font-size: 23px;
      }
      .intro-grid { grid-template-columns: 1fr; gap: 18px; }
      .problem-list { grid-template-columns: 1fr; }
      .problem { min-height: auto; padding: 28px 0 32px; }
      .problem + .problem { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
      .problem h3 { margin: 44px 0 14px; }
      .service-row { grid-template-columns: 44px 1fr; gap: 18px; }
      .service-copy { grid-column: 2; }
      .step { grid-template-columns: 42px 1fr; }
      .step-tag { grid-column: 2; justify-self: start; }
      .evidence-head { grid-template-columns: 1fr; }
      .evidence-note { justify-self: start; }
      .case { grid-template-columns: 1fr; gap: 18px; }
      .case-result { grid-column: auto; }
      .career-row { grid-template-columns: 110px 1fr; }
      .fit-wrap { grid-template-columns: 1fr; }
      .final-cta { padding: var(--s7) 0; }
      .footer-top { grid-template-columns: 1fr; gap: 24px; }
      .footer-contact { justify-self: start; justify-content: flex-start; }
    }

    @media (max-width: 720px) {
      .hero { min-height: 0; padding-top: 48px; }
      .hero .shell { width: min(calc(100% - 30px), var(--max)); }
      .hero h1 { font-size: clamp(54px, 15vw, 76px); }
      .hero h1 em { font-size: 1em; white-space: normal; }
      .hero-lead { margin-top: 24px; font-size: 16px; line-height: 1.65; }
      .hero .btn-primary { width: 100%; min-width: 0; }
      .ai-flow {
        container-type: normal;
        display: grid;
        gap: 18px;
        aspect-ratio: auto;
        margin-top: 8px;
      }
      .ai-flow::before {
        inset: 18% -10% 8%;
        background: radial-gradient(circle at 50% 68%, rgba(233,75,53,.09), transparent 48%);
      }
      .flow-lines { display: none; }
      .flow-sources {
        min-height: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
      }
      .source-card,
      .source-card:nth-child(n) {
        position: relative;
        inset: auto;
        width: auto;
        min-height: 62px;
        min-width: 0;
        gap: 10px;
        padding: 9px 10px;
        border-radius: 12px;
        box-shadow: none;
        transform: none;
      }
      .source-icon { flex-basis: 38px; width: 38px; height: 38px; border-radius: 9px; }
      .source-icon svg { width: 23px; height: 23px; }
      .source-card strong { font-size: 11px; }
      .source-card small { width: 62px; height: 13px; margin-top: 6px; }
      .source-card small::before,
      .source-card small::after { height: 3px; }
      .flow-hub-wrap {
        position: relative;
        inset: auto;
        min-height: 78px;
        display: grid;
        place-items: center;
      }
      .flow-hub-wrap::before,
      .flow-hub-wrap::after {
        content: "";
        position: absolute;
        left: 50%;
        width: 1px;
        height: 18px;
        background: rgba(23,23,20,.24);
      }
      .flow-hub-wrap::before { top: 0; }
      .flow-hub-wrap::after { bottom: 0; background: var(--accent); }
      .flow-hub { width: 62px; height: 62px; border-radius: 18px; }
      .flow-hub svg { width: 31px; height: 31px; }
      .flow-outcome {
        position: relative;
        inset: auto;
        width: auto;
        min-height: 0;
        grid-template-columns: 72px 1fr;
        gap: 20px;
        padding: 26px 24px;
        border-radius: 18px;
        box-shadow: 0 14px 34px rgba(23,23,20,.07);
      }
      .outcome-icon svg { width: 64px; height: 64px; }
      .outcome-kicker { margin-bottom: 9px; font-size: 9px; }
      .flow-outcome strong { margin-bottom: 12px; font-size: 39px; }
      .outcome-description { font-size: 14px; }
      .flow-benefits {
        position: relative;
        inset: auto;
        width: auto;
        display: grid;
        gap: 10px;
      }
      .flow-benefit { grid-template-columns: 52px 1fr; gap: 16px; }
      .flow-benefit > span { width: 52px; height: 52px; }
      .flow-benefit svg { width: 26px; height: 26px; }
      .flow-benefit strong { font-size: 15px; }
    }

    @media (max-width: 520px) {
      .nav-cta { display: none; }
      .nav-actions { gap: 5px; }
      .lang-switch { font-size: 9px; }
      .hero h1 { font-size: clamp(50px, 14vw, 64px); }
      .hero-lead { font-size: 17px; }
      .btn-primary { width: 100%; }
      .proof-grid { grid-template-columns: 1fr; }
      .proof-item,
      .proof-item + .proof-item,
      .proof-item:nth-child(3) {
        min-height: auto;
        padding: 24px 0;
        border-right: 0;
        border-bottom: 1px solid var(--line-dark);
      }
      .proof-item:last-child { border-bottom: 0; }
      .section { padding: var(--s7) 0; }
      .section-title { font-size: clamp(44px, 14vw, 64px); }
      .service-row { grid-template-columns: 1fr; }
      .service-copy { grid-column: auto; }
      .step { grid-template-columns: 34px 1fr; gap: 14px; }
      .career-row { grid-template-columns: 1fr; gap: 5px; }
      .final-cta h2 { font-size: clamp(52px, 15vw, 72px); }
      .footer-bottom { flex-direction: column; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { transition-duration: 0.001ms !important; animation-duration: 0.001ms !important; animation-delay: 0.001ms !important; }
    }

    .mobile-nav { display: none; position: relative; }
    .mobile-nav summary {
      list-style: none; cursor: pointer; min-width: 44px; min-height: 40px;
      display: inline-flex; align-items: center; justify-content: center;
      font-family: var(--body); font-size: 11px; font-weight: 600;
      text-transform: uppercase; letter-spacing: .08em; color: var(--ink);
    }
    .mobile-nav summary::-webkit-details-marker { display: none; }
    .mobile-nav-panel {
      position: absolute; right: 0; top: calc(100% + 13px); width: min(330px, calc(100vw - 30px));
      background: var(--bone); border-top: 1px solid rgba(17,17,15,.10);
      border-bottom: 1px solid rgba(17,17,15,.10); padding: 8px 18px 14px;
      box-shadow: 0 18px 36px rgba(17,17,15,.10);
    }
    .mobile-nav-panel a,
    .mobile-nav-panel button {
      display: block; padding: 12px 0; border-bottom: 1px solid rgba(17,17,15,.08);
      width: 100%; background: transparent; color: var(--ink); text-align: left; cursor: pointer;
      text-decoration: none; font-family: var(--display); font-size: 23px; line-height: 1.15;
    }
    .mobile-nav-panel > :last-child { border-bottom: 0; }
    .lang-option { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
    @media (max-width: 820px) {
      .menu-button, .mobile-menu { display: none !important; }
      .mobile-nav { display: block; flex: 0 0 60px; }
      .mobile-nav summary { width: 60px; justify-content: space-between; }
    }

    body.modal-open { overflow: hidden; }

    .contact-dialog {
      width: min(940px, calc(100vw - 32px));
      max-width: none;
      max-height: calc(100dvh - 32px);
      margin: auto;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--ink);
      overflow: hidden;
      box-shadow: 0 32px 100px rgba(17,17,15,.28);
    }
    .contact-dialog[open] { animation: contact-dialog-in .48s cubic-bezier(.22,1,.36,1) both; }
    .contact-dialog.is-closing { animation: contact-dialog-out .22s ease both; }
    .contact-dialog::backdrop {
      background: rgba(17,17,15,.58);
      backdrop-filter: blur(10px);
      animation: contact-backdrop-in .35s ease both;
    }
    .contact-dialog.is-closing::backdrop { animation: contact-backdrop-out .22s ease both; }
    .contact-dialog-panel {
      position: relative;
      display: grid;
      grid-template-columns: .82fr 1.18fr;
      min-height: 590px;
      background: var(--white);
      overflow: hidden;
    }
    .contact-dialog-close {
      position: absolute;
      top: 20px;
      right: 20px;
      z-index: 2;
      display: grid;
      place-items: center;
      width: 42px;
      height: 42px;
      padding: 0 0 3px;
      border: 1px solid rgba(17,17,15,.12);
      border-radius: 50%;
      background: rgba(251,250,246,.88);
      color: var(--ink);
      font: 300 27px/1 var(--body);
      cursor: pointer;
      backdrop-filter: blur(8px);
      transition: transform .18s ease, background .18s ease;
    }
    .contact-dialog-intro {
      position: relative;
      display: flex;
      flex-direction: column;
      min-width: 0;
      padding: 56px 46px 42px;
      background: var(--charcoal);
      color: var(--bone);
      overflow: hidden;
    }
    .contact-dialog-intro::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .16;
      background:
        radial-gradient(circle at 10% 0%, rgba(233,75,53,.85), transparent 37%),
        linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px);
      background-size: auto, 46px 46px, 46px 46px;
      pointer-events: none;
    }
    .contact-dialog-intro > * { position: relative; }
    .contact-dialog-kicker {
      margin: 0 0 32px;
      color: var(--accent);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .contact-dialog-intro h2 {
      margin: 0;
      font-family: var(--display);
      font-size: clamp(42px, 4.2vw, 58px);
      font-weight: 500;
      line-height: .98;
      letter-spacing: -.045em;
    }
    .contact-dialog-intro > p:not(.contact-dialog-kicker) {
      margin: 28px 0 0;
      color: #c5bfb5;
      font-size: 14px;
      line-height: 1.7;
    }
    .contact-dialog-note {
      margin-top: auto;
      padding-top: 44px;
      color: #918b81;
      font-size: 11px;
      letter-spacing: .035em;
    }
    .contact-dialog-body {
      display: grid;
      align-items: center;
      min-width: 0;
      padding: 74px 54px 46px;
      background: var(--white);
    }
    .contact-dialog [hidden] { display: none; }
    .contact-form { display: grid; gap: 22px; }
    .contact-field-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
    }
    .contact-field { display: grid; gap: 8px; min-width: 0; }
    .contact-field > span {
      color: #514c44;
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .055em;
      text-transform: uppercase;
    }
    .contact-field input,
    .contact-field textarea {
      width: 100%;
      border: 1px solid rgba(17,17,15,.15);
      background: #f4f0e9;
      color: var(--ink);
      font: 400 16px/1.5 var(--body);
      transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
    }
    .contact-field input { min-height: 52px; padding: 0 15px; }
    .contact-field textarea {
      min-height: 160px;
      padding: 14px 15px;
      resize: vertical;
    }
    .contact-field textarea::placeholder { color: #716b62; opacity: 1; }
    .contact-field input:focus,
    .contact-field textarea:focus {
      outline: 0;
      border-color: var(--accent);
      background: #fff;
      box-shadow: 0 0 0 4px rgba(233,75,53,.12);
    }
    .contact-honeypot {
      position: absolute;
      left: -10000px;
      width: 1px;
      height: 1px;
      overflow: hidden;
    }
    .contact-form-footer {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 20px;
    }
    .contact-form-footer p {
      margin: 0;
      color: #716b62;
      font-size: 10px;
      line-height: 1.55;
    }
    .contact-submit,
    .contact-success-close {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 18px;
      min-height: 52px;
      padding: 0 20px;
      border: 0;
      border-radius: 0;
      background: var(--accent);
      color: #fff;
      font: 600 12px/1 var(--body);
      cursor: pointer;
      transition: background .18s ease, transform .18s ease, opacity .18s ease;
    }
    .contact-submit:disabled { opacity: .62; cursor: wait; }
    .contact-submit-arrow { font-size: 18px; transition: transform .18s ease; }
    .contact-status {
      min-height: 18px;
      margin: -8px 0 0;
      color: #625d55;
      font-size: 12px;
    }
    .contact-status.is-error { color: #9f2d20; }
    .contact-success {
      max-width: 420px;
      animation: contact-success-in .4s cubic-bezier(.22,1,.36,1) both;
    }
    .contact-success-mark {
      display: grid;
      place-items: center;
      width: 52px;
      height: 52px;
      margin-bottom: 32px;
      border-radius: 50%;
      background: var(--accent-soft);
      color: var(--accent-text);
      font-size: 22px;
    }
    .contact-success h3 {
      margin: 0 0 34px;
      font-family: var(--display);
      font-size: clamp(38px, 4vw, 52px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.04em;
    }

    @media (hover:hover) and (pointer:fine) {
      .contact-dialog-close:hover { transform: rotate(5deg); background: #fff; }
      .contact-submit:hover,
      .contact-success-close:hover { background: var(--accent-dark); transform: translateY(-1px); }
      .contact-submit:hover .contact-submit-arrow { transform: translateX(3px); }
    }

    @media (max-width: 760px) {
      .contact-dialog {
        width: min(620px, calc(100vw - 20px));
        max-height: calc(100dvh - 20px);
        overflow-y: auto;
      }
      .contact-dialog-panel { grid-template-columns: 1fr; min-height: 0; }
      .contact-dialog-intro { min-height: 310px; padding: 42px 30px 32px; }
      .contact-dialog-intro h2 { max-width: 440px; font-size: clamp(40px, 10vw, 54px); }
      .contact-dialog-intro > p:not(.contact-dialog-kicker) { max-width: 500px; margin-top: 20px; }
      .contact-dialog-note { padding-top: 28px; }
      .contact-dialog-body { padding: 34px 30px 30px; }
    }

    @media (max-width: 520px) {
      .contact-dialog { width: calc(100vw - 12px); max-height: calc(100dvh - 12px); }
      .contact-dialog-close { top: 14px; right: 14px; }
      .contact-dialog-intro { min-height: 290px; padding: 38px 22px 28px; }
      .contact-dialog-intro h2 { padding-right: 28px; }
      .contact-dialog-body { padding: 28px 22px 24px; }
      .contact-field-row { grid-template-columns: 1fr; }
      .contact-field textarea { min-height: 140px; }
      .contact-form-footer { grid-template-columns: 1fr; }
      .contact-submit { width: 100%; justify-content: space-between; }
    }

    @keyframes contact-dialog-in {
      from { opacity: 0; transform: translateY(28px) scale(.965); }
      to { opacity: 1; transform: translateY(0) scale(1); }
    }
    @keyframes contact-dialog-out {
      from { opacity: 1; transform: translateY(0) scale(1); }
      to { opacity: 0; transform: translateY(16px) scale(.98); }
    }
    @keyframes contact-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
    @keyframes contact-backdrop-out { from { opacity: 1; } to { opacity: 0; } }
    @keyframes contact-success-in {
      from { opacity: 0; transform: translateY(12px); }
      to { opacity: 1; transform: translateY(0); }
    }
    @keyframes draw-flow { to { stroke-dashoffset: 0; } }
    @keyframes show-flow-arrow { to { opacity: 1; } }
    @keyframes pop-flow-node {
      0% { transform: scale(0); }
      55% { transform: scale(.55); }
      80% { transform: scale(1.2); }
      100% { transform: scale(1); }
    }
