:root {
      --ink: #252424;
      --paper: #f5f2eb;
      --white: #fffefa;
      --blue: #347fc2;
      --electric: #087ff5;
      --teal: #28b897;
      --red: #d04a3c;
      --yellow: #f5c513;
      --pink: #fb61a7;
      --violet: #7966e7;
      --sky: #61d6f2;
      --line: rgba(37, 36, 36, .18);
      --pad: clamp(1.2rem, 4vw, 4.75rem);
      --radius: clamp(1.1rem, 1.8vw, 1.8rem);
      --display: "Arial Narrow", "Helvetica Neue Condensed", "Roboto Condensed", Impact, sans-serif;
      --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; background: var(--ink); }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: var(--sans);
      font-size: 16px;
      line-height: 1.45;
      overflow-x: hidden;
      text-rendering: geometricPrecision;
    }

    a { color: inherit; }
    img { display: block; max-width: 100%; }
    button, a { -webkit-tap-highlight-color: transparent; }
    ::selection { color: var(--white); background: var(--blue); }
    :focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }

    .skip-link {
      position: fixed;
      z-index: 1000;
      left: 1rem;
      top: 1rem;
      transform: translateY(-220%);
      padding: .8rem 1rem;
      color: var(--white);
      background: var(--ink);
      border-radius: 999px;
    }
    .skip-link:focus { transform: translateY(0); }

    .hero {
      position: relative;
      min-height: 100svh;
      display: grid;
      grid-template-rows: auto 1fr auto;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 13% 18%, rgba(255,255,255,.84) 0 4%, transparent 22%),
        radial-gradient(circle at 81% 18%, rgba(245,197,19,.78) 0 5%, transparent 26%),
        radial-gradient(circle at 60% 68%, rgba(251,97,167,.74) 0 7%, transparent 35%),
        radial-gradient(circle at 20% 79%, rgba(40,184,151,.68) 0 7%, transparent 38%),
        radial-gradient(circle at 92% 72%, rgba(121,102,231,.58) 0 8%, transparent 36%),
        linear-gradient(126deg, #dff5ff 0%, #9ee6d4 28%, #fff0a8 52%, #ff9a8f 72%, #c78be2 100%);
      background-size: 115% 115%;
      animation: mesh-breathe 16s ease-in-out infinite alternate;
    }

    .hero::before,
    .contact::before,
    .tools::before {
      content: "";
      position: absolute;
      inset: -20%;
      z-index: -1;
      pointer-events: none;
      opacity: .17;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' 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='.55'/%3E%3C/svg%3E");
      transform: rotate(6deg);
      mix-blend-mode: soft-light;
    }

    .hero-shape {
      position: absolute;
      z-index: -2;
      border-radius: 50%;
      pointer-events: none;
    }
    .hero-shape-a {
      width: min(58rem, 58vw);
      aspect-ratio: 1;
      left: min(-24rem, -21vw);
      top: min(-21rem, -23vw);
      background: linear-gradient(145deg, var(--electric), #1495db 62%, #00a8aa);
      box-shadow:
        2.2rem 2.2rem 0 rgba(8,127,245,.26),
        4.4rem 4.4rem 0 rgba(40,184,151,.19);
    }
    .hero-shape-b {
      width: min(49rem, 49vw);
      aspect-ratio: 1;
      right: min(-21rem, -19vw);
      bottom: min(-26rem, -24vw);
      background: linear-gradient(145deg, #08bed9, var(--electric) 66%, #2c6cd4);
      box-shadow:
        -2.1rem -2.1rem 0 rgba(40,184,151,.25),
        -4.2rem -4.2rem 0 rgba(255,255,255,.17);
    }

    .contours {
      position: absolute;
      inset: -5%;
      z-index: -1;
      width: 110%;
      height: 110%;
      pointer-events: none;
      opacity: .17;
    }
    .contours ellipse,
    .contours path { fill: none; stroke: var(--blue); stroke-width: 1.1; vector-effect: non-scaling-stroke; }

    .hero-flow,
    .contact-flow,
    .statement-flow {
      position: absolute;
      z-index: -1;
      pointer-events: none;
      overflow: visible;
      filter: drop-shadow(0 16px 18px rgba(8,127,245,.12));
    }
    .hero-flow { width: 118%; height: 58%; left: -9%; bottom: 3%; }
    .contact-flow { width: 120%; height: 70%; left: -10%; bottom: -7%; opacity: .95; }
    .statement-flow { width: 100%; height: 80%; right: -33%; top: 8%; opacity: .5; }

    .spark-cluster {
      position: absolute;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(3, .8rem);
      gap: .65rem;
      color: var(--electric);
      font-weight: 900;
      line-height: 1;
      pointer-events: none;
    }
    .spark-a { right: 18%; top: 27%; transform: rotate(-7deg); }
    .spark-b { left: 19%; bottom: 17%; transform: rotate(9deg); }
    .spark-cluster span:nth-child(2n) { transform: translateY(.55rem); }

    .orb {
      position: absolute;
      z-index: 1;
      width: clamp(.7rem, 1.4vw, 1.4rem);
      aspect-ratio: 1;
      border-radius: 50%;
      background: linear-gradient(145deg, #ff922f, var(--red));
      box-shadow: .18rem .3rem .55rem rgba(37,36,36,.32);
      pointer-events: none;
    }
    .orb-a { left: 29%; top: 46%; }
    .orb-b { right: 17%; top: 45%; width: clamp(1rem, 2.2vw, 2rem); }
    .orb-c { left: 20%; bottom: 12%; width: clamp(.45rem, .8vw, .75rem); background: var(--yellow); }

    .nav {
      position: relative;
      z-index: 20;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 2rem;
      padding: 1.15rem var(--pad);
      border-bottom: 1px solid rgba(37,36,36,.24);
      background: rgba(255,255,255,.06);
      backdrop-filter: blur(10px);
      font-size: .72rem;
      font-weight: 850;
      letter-spacing: .09em;
      text-transform: uppercase;
    }
    .brand { display: inline-flex; align-items: center; text-decoration: none; }
    .brand img { width: clamp(11.5rem, 18vw, 17.5rem); height: auto; }

    .nav-links { display: flex; align-items: center; gap: clamp(.85rem, 2vw, 1.9rem); }
    .nav-links a { text-decoration: none; position: relative; }
    .nav-links a:not(.button)::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -.36rem;
      width: 100%;
      height: 1px;
      background: currentColor;
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .28s ease;
    }
    .nav-links a:hover::after,
    .nav-links a:focus-visible::after { transform: scaleX(1); transform-origin: left; }

    .menu-button {
      display: none;
      border: 1.5px solid currentColor;
      background: rgba(255,255,255,.2);
      color: inherit;
      border-radius: 999px;
      padding: .65rem .85rem;
      font: inherit;
      letter-spacing: inherit;
      text-transform: inherit;
      cursor: pointer;
    }

    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 3.35rem;
      padding: .8rem 1.2rem;
      border: 1.5px solid var(--ink);
      border-radius: 999px;
      background: rgba(255,255,255,.16);
      color: var(--ink);
      text-decoration: none;
      font-size: .75rem;
      font-weight: 900;
      letter-spacing: .065em;
      text-transform: uppercase;
      backdrop-filter: blur(12px);
      transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
    }
    .button:hover,
    .button:focus-visible { background: var(--white); transform: translateY(-2px); box-shadow: 0 .55rem 1.3rem rgba(37,36,36,.14); }
    .button-dark { color: var(--white); background: var(--ink); }
    .button-dark:hover,
    .button-dark:focus-visible { color: var(--ink); background: var(--white); }
    .button-light { color: var(--white); border-color: var(--white); background: rgba(255,255,255,.08); }
    .button-light:hover,
    .button-light:focus-visible { color: var(--ink); background: var(--white); }

    .hero-main {
      position: relative;
      z-index: 3;
      display: flex;
      align-items: end;
      padding: clamp(5rem, 10vh, 8.5rem) var(--pad) clamp(2.8rem, 7vh, 5.5rem);
    }
    .hero-copy-wrap { width: min(100%, 112rem); }
    .eyebrow {
      margin: 0 0 1.15rem;
      font-size: clamp(.66rem, .8vw, .79rem);
      font-weight: 900;
      letter-spacing: .115em;
      text-transform: uppercase;
    }
    h1, h2, h3, p { margin-top: 0; }
    .display {
      margin: 0;
      max-width: 10ch;
      font-family: var(--display);
      font-size: clamp(4.8rem, 13.2vw, 14.7rem);
      font-weight: 950;
      line-height: .76;
      letter-spacing: -.075em;
      text-transform: uppercase;
      text-wrap: balance;
    }
    .display span { display: block; white-space: nowrap; }
    .brand-star {
      color: transparent;
      background: conic-gradient(from 45deg, var(--blue), var(--teal), var(--yellow), var(--red), var(--blue));
      background-clip: text;
      -webkit-background-clip: text;
      filter: drop-shadow(0 .05em 0 rgba(37,36,36,.18));
    }

    .hero-bottom {
      margin-top: clamp(2.2rem, 4.5vw, 4rem);
      display: grid;
      grid-template-columns: minmax(18rem, 42rem) auto;
      gap: 2rem;
      align-items: end;
    }
    .hero-support {
      margin: 0;
      max-width: 42rem;
      font-size: clamp(1.08rem, 1.7vw, 1.5rem);
      line-height: 1.28;
      font-weight: 670;
      letter-spacing: -.027em;
    }
    .hero-actions { display: flex; gap: .7rem; justify-content: flex-end; flex-wrap: wrap; }
    .hero-mark {
      position: absolute;
      z-index: -1;
      width: clamp(10rem, 25vw, 27rem);
      right: var(--pad);
      top: 13%;
      opacity: .075;
      transform: rotate(7deg);
      mix-blend-mode: multiply;
      pointer-events: none;
    }

    .hero-meta {
      position: relative;
      z-index: 4;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      border-top: 1px solid rgba(37,36,36,.24);
      background: rgba(255,255,255,.13);
      backdrop-filter: blur(14px);
      font-size: .68rem;
      font-weight: 900;
      letter-spacing: .095em;
      text-transform: uppercase;
    }
    .hero-meta span { padding: 1rem var(--pad); border-right: 1px solid rgba(37,36,36,.22); }
    .hero-meta span:last-child { border-right: 0; }

    main { overflow: clip; }
    .section {
      position: relative;
      padding: clamp(5.5rem, 10vw, 10rem) var(--pad);
      border-bottom: 1px solid var(--line);
    }
    .section-inner { max-width: 108rem; margin: 0 auto; }
    .section-head {
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(18rem, .75fr);
      gap: clamp(2rem, 6vw, 7rem);
      align-items: end;
      margin-bottom: clamp(3rem, 6vw, 6rem);
    }
    .kicker {
      display: flex;
      gap: .8rem;
      align-items: center;
      margin-bottom: 1rem;
      font-size: .69rem;
      font-weight: 900;
      letter-spacing: .115em;
      text-transform: uppercase;
    }
    .kicker::before { content: ""; width: 2.6rem; height: 1px; background: currentColor; }
    .section-title {
      margin: 0;
      max-width: 11ch;
      font-family: var(--display);
      font-size: clamp(3.8rem, 8vw, 8.9rem);
      font-weight: 950;
      line-height: .82;
      letter-spacing: -.065em;
      text-transform: uppercase;
    }
    .section-intro {
      margin: 0;
      max-width: 38rem;
      font-size: clamp(1.05rem, 1.7vw, 1.48rem);
      line-height: 1.34;
      font-weight: 650;
      letter-spacing: -.027em;
    }

    .services { background: var(--white); padding-left: 0; padding-right: 0; }
    .services::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: .42rem;
      background: linear-gradient(90deg, var(--blue), var(--teal), var(--yellow), var(--red), var(--pink), var(--violet));
    }
    .services .section-head {
      padding-left: var(--pad);
      padding-right: var(--pad);
      max-width: calc(108rem + 2 * var(--pad));
      margin-left: auto;
      margin-right: auto;
    }
    .service-track {
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: minmax(19rem, 28vw);
      gap: .9rem;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-snap-type: inline mandatory;
      scrollbar-width: none;
      padding: .7rem var(--pad) 1.3rem;
      cursor: grab;
    }
    .service-track::-webkit-scrollbar { display: none; }
    .service-track:active { cursor: grabbing; }
    .service-card {
      --card-a: #ddecff;
      --card-b: #f8fbff;
      --card-c: var(--blue);
      position: relative;
      min-height: clamp(25rem, 42vw, 36rem);
      scroll-snap-align: start;
      overflow: hidden;
      border: 1.5px solid var(--ink);
      border-radius: var(--radius);
      padding: clamp(1.35rem, 2.5vw, 2.25rem);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      background:
        radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--card-c) 72%, white), transparent 26%),
        linear-gradient(145deg, var(--card-a), var(--card-b) 63%, color-mix(in srgb, var(--card-c) 35%, white));
      transition: transform .25s ease, box-shadow .25s ease;
    }
    .service-card::before {
      content: "";
      position: absolute;
      width: 13rem;
      aspect-ratio: 1;
      right: -6rem;
      top: -5.5rem;
      border: 1px solid rgba(37,36,36,.18);
      border-radius: 50%;
      box-shadow: -1.4rem 1.4rem 0 rgba(255,255,255,.22), -2.8rem 2.8rem 0 rgba(37,36,36,.06);
      pointer-events: none;
    }
    .service-card:nth-child(1) { --card-a: #edf6ff; --card-b: #cceaff; --card-c: var(--blue); }
    .service-card:nth-child(2) { --card-a: #fff7d3; --card-b: #ffe3a9; --card-c: var(--yellow); }
    .service-card:nth-child(3) { --card-a: #ffe4dc; --card-b: #ffafa3; --card-c: var(--red); }
    .service-card:nth-child(4) { --card-a: #ddfbf3; --card-b: #a8ead8; --card-c: var(--teal); }
    .service-card:nth-child(5) { --card-a: #efeaff; --card-b: #c5baff; --card-c: var(--violet); }
    .service-card:nth-child(6) { --card-a: #ffe1f0; --card-b: #ffb5db; --card-c: var(--pink); }
    .service-card:hover { transform: translateY(-8px) rotate(-.3deg); box-shadow: 10px 12px 0 var(--ink); }
    .card-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
    .card-index { font-size: .69rem; font-weight: 900; letter-spacing: .1em; }
    .card-dot { width: 1rem; aspect-ratio: 1; border-radius: 50%; background: var(--card-c); box-shadow: .12rem .18rem .3rem rgba(37,36,36,.25); }
    .service-card h3 {
      position: relative;
      margin: auto 0 1rem;
      max-width: 8ch;
      font-family: var(--display);
      font-size: clamp(3.1rem, 5vw, 5.6rem);
      line-height: .82;
      letter-spacing: -.06em;
      text-transform: uppercase;
    }
    .service-card p { max-width: 21rem; margin-bottom: 1.6rem; font-size: 1.08rem; font-weight: 680; letter-spacing: -.022em; }
    .tags { display: flex; flex-wrap: wrap; gap: .45rem; }
    .tags span { border: 1px solid var(--ink); border-radius: 999px; padding: .45rem .65rem; background: rgba(255,255,255,.2); font-size: .63rem; font-weight: 900; letter-spacing: .065em; text-transform: uppercase; }
    .scroll-note { padding: .8rem var(--pad) 0; font-size: .64rem; font-weight: 900; letter-spacing: .105em; text-transform: uppercase; opacity: .6; }

    .statement {
      min-height: 94svh;
      display: flex;
      align-items: center;
      overflow: hidden;
      isolation: isolate;
      color: var(--white);
      background:
        radial-gradient(circle at 90% 22%, rgba(8,127,245,.38), transparent 33%),
        radial-gradient(circle at 72% 83%, rgba(40,184,151,.25), transparent 35%),
        var(--ink);
    }
    .statement-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr minmax(18rem, .36fr); gap: clamp(2rem, 7vw, 8rem); align-items: end; }
    .statement h2 {
      margin: 0;
      max-width: 9ch;
      font-family: var(--display);
      font-size: clamp(4.6rem, 12.8vw, 13.8rem);
      line-height: .77;
      letter-spacing: -.075em;
      text-transform: uppercase;
    }
    .statement h2 span {
      color: transparent;
      background: linear-gradient(95deg, var(--sky), var(--teal) 30%, var(--yellow) 56%, #ff8b7b 78%, var(--pink));
      background-clip: text;
      -webkit-background-clip: text;
    }
    .statement p { margin: 0 0 .7rem; max-width: 29rem; font-size: clamp(1.18rem, 2vw, 1.78rem); line-height: 1.28; font-weight: 650; letter-spacing: -.032em; }

    .accountability { background: var(--paper); }
    .accountability::after {
      content: "";
      position: absolute;
      right: -16rem;
      top: 5rem;
      width: 32rem;
      aspect-ratio: 1;
      border-radius: 50%;
      border: 1px solid rgba(52,127,194,.18);
      box-shadow: -2rem 2rem 0 rgba(40,184,151,.08), -4rem 4rem 0 rgba(245,197,19,.08);
      pointer-events: none;
    }
    .account-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); gap: clamp(3rem, 8vw, 10rem); align-items: start; }
    .account-copy h2 {
      margin-bottom: 2rem;
      max-width: 10ch;
      font-family: var(--display);
      font-size: clamp(4rem, 8vw, 8.5rem);
      line-height: .82;
      letter-spacing: -.065em;
      text-transform: uppercase;
    }
    .account-copy p { max-width: 44rem; font-size: clamp(1.08rem, 1.65vw, 1.42rem); font-weight: 620; letter-spacing: -.026em; }
    .account-copy .sharp { font-weight: 850; }
    .stats { border-top: 1.5px solid var(--ink); }
    .stat { display: grid; grid-template-columns: .55fr 1fr; gap: 1rem; align-items: end; padding: 1.3rem 0 1.45rem; border-bottom: 1.5px solid var(--ink); }
    .stat strong { font-family: var(--display); font-size: clamp(4.5rem, 8vw, 8.5rem); line-height: .72; letter-spacing: -.07em; }
    .stat span { font-size: .69rem; font-weight: 900; letter-spacing: .095em; text-transform: uppercase; }

    .outcomes {
      isolation: isolate;
      overflow: hidden;
      background:
        radial-gradient(circle at 14% 15%, rgba(255,255,255,.68), transparent 28%),
        radial-gradient(circle at 86% 88%, rgba(8,127,245,.31), transparent 32%),
        linear-gradient(132deg, #f8e84e 0%, #cde94f 30%, #63d6ad 66%, #51b8df 100%);
    }
    .outcomes::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      opacity: .14;
      background-image:
        linear-gradient(rgba(37,36,36,.18) 1px, transparent 1px),
        linear-gradient(90deg, rgba(37,36,36,.18) 1px, transparent 1px);
      background-size: clamp(52px, 6vw, 92px) clamp(52px, 6vw, 92px);
      mask-image: linear-gradient(to bottom, transparent, black 24%, black 80%, transparent);
    }
    .outcome-grid { display: grid; grid-template-columns: repeat(2, 1fr); border: 1.5px solid var(--ink); border-radius: var(--radius); overflow: hidden; background: rgba(255,255,255,.09); backdrop-filter: blur(10px); }
    .outcome {
      min-height: 20rem;
      padding: clamp(1.4rem, 3vw, 3rem);
      border-right: 1.5px solid var(--ink);
      border-bottom: 1.5px solid var(--ink);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      transition: background .25s ease, color .25s ease;
    }
    .outcome:nth-child(2n) { border-right: 0; }
    .outcome:nth-last-child(-n+2) { border-bottom: 0; }
    .outcome:hover { color: var(--white); background: var(--ink); }
    .outcome-number { font-size: .69rem; font-weight: 900; letter-spacing: .1em; }
    .outcome h3 { max-width: 12ch; margin: 2rem 0 1rem; font-size: clamp(2.1rem, 4vw, 4.5rem); line-height: .93; letter-spacing: -.055em; }
    .outcome p { margin: 0; font-size: .74rem; font-weight: 900; letter-spacing: .085em; text-transform: uppercase; }

    .process { background: var(--white); }
    .process-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1.5px solid var(--ink); border-bottom: 1.5px solid var(--ink); }
    .step { position: relative; min-height: 21rem; padding: 1.5rem; border-right: 1.5px solid var(--ink); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; }
    .step:last-child { border-right: 0; }
    .step::after {
      content: "";
      position: absolute;
      right: -4.5rem;
      top: -4.5rem;
      width: 8rem;
      aspect-ratio: 1;
      border-radius: 50%;
      background: var(--step-color, var(--blue));
      opacity: .16;
      transition: transform .3s ease, opacity .3s ease;
    }
    .step:nth-child(1) { --step-color: var(--blue); }
    .step:nth-child(2) { --step-color: var(--yellow); }
    .step:nth-child(3) { --step-color: var(--red); }
    .step:nth-child(4) { --step-color: var(--teal); }
    .step:hover::after { transform: scale(1.45); opacity: .26; }
    .step strong { font-family: var(--display); font-size: clamp(4rem, 7vw, 7.5rem); line-height: .75; letter-spacing: -.07em; }
    .step h3 { margin: 4rem 0 .7rem; font-size: clamp(1.45rem, 2.2vw, 2.15rem); line-height: 1; letter-spacing: -.04em; }
    .step p { margin: 0; max-width: 15rem; font-weight: 620; }

    .tools {
      overflow: hidden;
      isolation: isolate;
      color: var(--ink);
      background:
        radial-gradient(circle at 84% 17%, rgba(97,214,242,.95), transparent 31%),
        radial-gradient(circle at 12% 90%, rgba(251,97,167,.85), transparent 38%),
        radial-gradient(circle at 55% 50%, rgba(245,197,19,.62), transparent 30%),
        linear-gradient(125deg, #b8adff, #8fd7ff 48%, #93eccf 100%);
    }
    .tools-wrap { position: relative; z-index: 2; max-width: 91rem; }
    .tools h2 {
      max-width: 12ch;
      margin-bottom: 2rem;
      font-family: var(--display);
      font-size: clamp(4.2rem, 9.7vw, 10.4rem);
      line-height: .79;
      letter-spacing: -.07em;
      text-transform: uppercase;
    }
    .tools p { max-width: 50rem; margin: 0; font-size: clamp(1.18rem, 2.15vw, 1.86rem); line-height: 1.3; font-weight: 650; letter-spacing: -.034em; }
    .tools-mark { position: absolute; right: clamp(-3rem, 1vw, 2rem); bottom: -6rem; width: clamp(13rem, 27vw, 31rem); opacity: .09; transform: rotate(-9deg); mix-blend-mode: multiply; }

    .fit { background: var(--paper); }
    .fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; }
    .fit-card { border: 1.5px solid var(--ink); border-radius: var(--radius); overflow: hidden; background: var(--white); }
    .fit-card:nth-child(2) { color: var(--white); background: var(--ink); }
    .fit-card h3 { margin: 0; padding: 1.2rem 1.4rem; border-bottom: 1.5px solid currentColor; font-size: .74rem; font-weight: 900; letter-spacing: .105em; text-transform: uppercase; }
    .fit-card ul { list-style: none; padding: 0; margin: 0; }
    .fit-card li { position: relative; padding: 1.2rem 1.4rem 1.2rem 3.5rem; border-bottom: 1px solid currentColor; font-size: clamp(1.04rem, 1.5vw, 1.34rem); font-weight: 650; letter-spacing: -.025em; }
    .fit-card li:last-child { border-bottom: 0; }
    .fit-card li::before { content: "+"; position: absolute; left: 1.4rem; font-weight: 900; color: var(--teal); }
    .fit-card:nth-child(2) li::before { content: "−"; color: var(--red); }

    .contact {
      min-height: 92svh;
      display: flex;
      align-items: center;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 82% 18%, rgba(245,197,19,.78), transparent 27%),
        radial-gradient(circle at 13% 83%, rgba(40,184,151,.78), transparent 32%),
        radial-gradient(circle at 62% 70%, rgba(251,97,167,.73), transparent 37%),
        linear-gradient(132deg, #dcefff 0%, #86d8eb 25%, #ace8c9 44%, #ffbd88 70%, #c389e1 100%);
      background-size: 120% 120%;
      animation: mesh-breathe 17s ease-in-out infinite alternate-reverse;
    }
    .contact-shape {
      position: absolute;
      z-index: -2;
      width: min(42rem, 45vw);
      aspect-ratio: 1;
      right: min(-17rem, -17vw);
      top: min(-15rem, -15vw);
      border-radius: 50%;
      background: linear-gradient(145deg, var(--electric), #14b8cc);
      box-shadow: -2rem 2rem 0 rgba(40,184,151,.24), -4rem 4rem 0 rgba(255,255,255,.17);
    }
    .contact-wrap { position: relative; z-index: 2; width: 100%; }
    .contact h2 {
      margin: 0;
      max-width: 10ch;
      font-family: var(--display);
      font-size: clamp(5rem, 14.2vw, 14.4rem);
      line-height: .76;
      letter-spacing: -.075em;
      text-transform: uppercase;
    }
    .contact-bottom { margin-top: clamp(2.5rem, 6vw, 6rem); display: grid; grid-template-columns: minmax(17rem, 45rem) auto; gap: 2rem; align-items: end; }
    .contact-copy { margin: 0; font-size: clamp(1.14rem, 2vw, 1.7rem); line-height: 1.3; font-weight: 680; letter-spacing: -.031em; }
    .contact-actions { display: flex; gap: .7rem; justify-content: flex-end; flex-wrap: wrap; }
    .helper { margin-top: 1rem; font-size: .67rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

    footer {
      color: var(--white);
      background: var(--ink);
      padding: 2rem var(--pad);
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      gap: 1.5rem;
      align-items: center;
      font-size: .67rem;
      font-weight: 850;
      letter-spacing: .085em;
      text-transform: uppercase;
    }
    footer a { text-decoration: none; }
    footer .centre { text-align: center; }
    footer .right { text-align: right; }
    .footer-brand { display: inline-flex; align-items: center; gap: .75rem; }
    .footer-brand img { width: 1.8rem; height: 1.8rem; }

    .chapter {
      position: fixed;
      z-index: 30;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      display: grid;
      gap: .3rem;
      padding: .7rem .55rem;
      border: 1px solid rgba(37,36,36,.22);
      border-radius: 999px;
      background: rgba(255,255,255,.74);
      backdrop-filter: blur(14px);
      font-size: .57rem;
      font-weight: 900;
      letter-spacing: .08em;
      text-align: center;
    }
    .chapter .current { font-size: .8rem; }
    .chapter .line { width: 2px; height: 2.3rem; margin: .1rem auto; background: rgba(37,36,36,.15); position: relative; overflow: hidden; border-radius: 999px; }
    .chapter .line::after { content: ""; position: absolute; inset: 0; background: linear-gradient(var(--blue), var(--teal), var(--yellow), var(--red)); transform: scaleY(var(--progress, 0)); transform-origin: top; }

    .reveal { opacity: 0; transform: translateY(24px); transition: opacity .72s ease, transform .72s ease; }
    .reveal.in { opacity: 1; transform: none; }

    @keyframes mesh-breathe {
      from { background-position: 0% 0%; }
      to { background-position: 100% 100%; }
    }

    @media (max-width: 960px) {
      .nav { align-items: center; }
      .menu-button { display: inline-flex; }
      .nav-links {
        position: absolute;
        top: calc(100% + .5rem);
        left: var(--pad);
        right: var(--pad);
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        border: 1.5px solid var(--ink);
        border-radius: 1rem;
        background: rgba(245,242,235,.95);
        padding: .5rem;
        box-shadow: 8px 8px 0 var(--ink);
        backdrop-filter: blur(16px);
      }
      .nav-links.open { display: flex; }
      .nav-links a { padding: 1rem; border-bottom: 1px solid var(--line); }
      .nav-links a:last-child { border-bottom: 0; }
      .nav-links .button { margin-top: .35rem; }
      .hero-bottom, .section-head, .statement-grid, .account-grid, .contact-bottom { grid-template-columns: 1fr; }
      .hero-actions, .contact-actions { justify-content: flex-start; }
      .hero-meta { grid-template-columns: 1fr; }
      .hero-meta span { border-right: 0; border-bottom: 1px solid rgba(37,36,36,.22); }
      .hero-meta span:last-child { border-bottom: 0; }
      .service-track { grid-auto-columns: minmax(17.5rem, 78vw); }
      .statement { min-height: auto; }
      .statement-grid { align-items: start; }
      .outcome-grid, .fit-grid { grid-template-columns: 1fr; }
      .outcome { border-right: 0; border-bottom: 1.5px solid var(--ink) !important; }
      .outcome:last-child { border-bottom: 0 !important; }
      .process-grid { grid-template-columns: 1fr 1fr; }
      .step:nth-child(2) { border-right: 0; }
      .step:nth-child(-n+2) { border-bottom: 1.5px solid var(--ink); }
      .chapter { display: none; }
      footer { grid-template-columns: 1fr; text-align: left; }
      footer .centre, footer .right { text-align: left; }
    }

    @media (max-width: 580px) {
      .brand img { width: 11.2rem; }
      .hero-main { padding-top: 5.5rem; }
      .display { font-size: clamp(3.8rem, 17.7vw, 6.5rem); line-height: .79; }
      .display span { white-space: normal; }
      .button { width: 100%; }
      .hero-actions, .contact-actions { display: grid; width: 100%; }
      .hero-shape-a { width: 90vw; left: -54vw; top: -30vw; }
      .hero-shape-b { width: 75vw; right: -43vw; bottom: -25vw; }
      .hero-flow { width: 165%; left: -30%; height: 45%; }
      .spark-a { right: 8%; top: 24%; }
      .spark-b { display: none; }
      .orb-a { left: 13%; top: 44%; }
      .orb-b { right: 9%; top: 52%; }
      .hero-mark { display: none; }
      .section { padding-top: 5rem; padding-bottom: 5rem; }
      .section-title { font-size: clamp(3.5rem, 17vw, 5.5rem); }
      .service-card { min-height: 27rem; }
      .statement h2 { font-size: clamp(4rem, 19.5vw, 6.8rem); }
      .account-copy h2, .tools h2 { font-size: clamp(3.8rem, 18.5vw, 6rem); }
      .process-grid { grid-template-columns: 1fr; }
      .step { border-right: 0; border-bottom: 1.5px solid var(--ink); min-height: 15rem; }
      .step:last-child { border-bottom: 0; }
      .contact h2 { font-size: clamp(4.3rem, 21vw, 7.4rem); }
      .contact-shape { width: 80vw; right: -45vw; top: -30vw; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
      .reveal { opacity: 1; transform: none; }
    }
/* WordPress integration corrections. */
.display > span { display: block; white-space: nowrap; }
.display .brand-star {
  display: inline-block;
  font-size: 1.85em;
  line-height: .27;
  vertical-align: -.34em;
  white-space: normal;
}

@media (max-width: 580px) {
  .hero { min-height: 100svh; grid-template-rows: auto 1fr auto; }
  .nav { padding-block: .45rem; }
  .brand img { width: 8.9rem; }
  .menu-button { padding: .5rem .7rem; }
  .hero-main { align-items: center; padding: .7rem var(--pad) .5rem; }
  .eyebrow { font-size: .56rem; margin-bottom: .65rem; }
  .display { font-size: clamp(3.35rem, 15.8vw, 4.35rem); line-height: .76; }
  .hero-bottom { gap: .55rem; margin-top: .65rem; }
  .hero-support { font-size: .82rem; line-height: 1.18; }
  .hero-actions { display: flex; flex-wrap: nowrap; gap: .45rem; width: 100%; }
  .hero-actions .button { flex: 1 1 0; font-size: .55rem; min-height: 2.7rem; padding: .55rem .5rem; width: auto; }
  .hero-meta { font-size: .72rem; letter-spacing: .06em; }
  .hero-meta span {
    align-items: center;
    display: flex;
    line-height: 1.1;
    min-height: 2.5rem !important;
    padding: .48rem var(--pad) !important;
  }
}