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

    :root {
      --paper:       #F6F5F1;
      --ink:         #15161A;
      --graphite:    #55554F;
      --hairline:    #DDDCD4;
      --signal:      #08B89D;
      --signal-deep: #0A7C6A;
      --white:       #FFFFFF;
    }

    html { scroll-behavior: smooth; }

    body {
      background: var(--paper);
      color: var(--ink);
      font-family: 'Inter', sans-serif;
      font-size: 17px;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
    }

    .mono {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .wrap { max-width: 1240px; margin: 0 auto; padding-left: 48px; padding-right: 48px; }

    /* ── REVEAL (progressive enhancement) ── */
    .reveal { opacity: 1; transform: none; transition: opacity 0.7s ease, transform 0.7s ease; }
    .js-loaded .reveal { opacity: 0; transform: translateY(20px); }
    .js-loaded .reveal.visible { opacity: 1; transform: none; }
    .d1{transition-delay:0.08s} .d2{transition-delay:0.16s} .d3{transition-delay:0.24s}
    @media (prefers-reduced-motion: reduce) {
      .js-loaded .reveal { opacity: 1; transform: none; transition: none; }
    }

    /* ── NAV ── */
    nav {
      display: flex; align-items: center; justify-content: space-between;
      padding: 0 48px; height: 72px;
      border-bottom: 1px solid var(--hairline);
      background: var(--paper);
      position: sticky; top: 0; z-index: 100;
    }
    .nav-logo { text-decoration: none; display: flex; align-items: center; line-height: 1; }
    .logo-word { font-family: 'Inter', sans-serif; font-size: 17px; letter-spacing: -0.02em; color: var(--ink); }
    .logo-signal { font-weight: 700; }
    .logo-intent { font-weight: 400; }
    .logo-bar { display: inline-block; width: 2px; height: 19px; background: var(--signal); margin: 0 7px; vertical-align: middle; }
    .nav-links { display: flex; gap: 30px; list-style: none; }
    .nav-links a {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 12px; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase;
      color: var(--graphite); text-decoration: none; transition: color 0.15s;
    }
    .nav-links a:hover { color: var(--ink); }
    .nav-cta {
      font-family: 'Inter', sans-serif; font-size: 13px; font-weight: 500;
      background: var(--ink); color: var(--paper);
      padding: 11px 22px; text-decoration: none; transition: background 0.15s;
    }
    .nav-cta:hover { background: var(--signal-deep); }

    /* ── HERO ── */
    .hero { padding-top: 96px; }
    .hero-meta {
      display: flex; justify-content: space-between; align-items: baseline;
      color: var(--graphite); margin-bottom: 72px; gap: 24px; flex-wrap: wrap;
    }
    .hero-h1 {
      font-family: 'Newsreader', serif;
      font-optical-sizing: auto;
      font-size: clamp(50px, 7.2vw, 104px);
      font-weight: 400; line-height: 1.02; letter-spacing: -0.025em;
      max-width: 1050px;
    }
    .hero-h1 em { font-style: italic; font-weight: 300; }

    /* ── SIGNAL LINE (signature device) ── */
    .signal-line-wrap { margin-top: 72px; }
    .signal-line { width: 100%; height: 44px; display: block; }
    .signal-line path.trace { fill: none; stroke: var(--hairline); stroke-width: 1.5; }
    .signal-line path.pulse {
      fill: none; stroke: var(--signal); stroke-width: 1.5;
      stroke-dasharray: 130 3000; stroke-dashoffset: 130;
      animation: pulseTravel 6s linear infinite;
    }
    @keyframes pulseTravel { to { stroke-dashoffset: -3000; } }
    @media (prefers-reduced-motion: reduce) {
      .signal-line path.pulse { animation: none; stroke-dashoffset: -1400; }
    }
    .divider-line { margin: 0; }
    .divider-line .signal-line { height: 36px; }

    .hero-lower {
      display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start;
      padding-top: 56px; padding-bottom: 104px;
    }
    .hero-sub {
      font-family: 'Newsreader', serif;
      font-size: 23px; font-weight: 300; line-height: 1.5;
      color: var(--ink); max-width: 460px;
    }
    .hero-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; justify-self: end; }
    .btn-primary {
      font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 500;
      background: var(--ink); color: var(--paper);
      padding: 16px 32px; text-decoration: none; display: inline-block;
      transition: background 0.15s;
    }
    .btn-primary:hover { background: var(--signal-deep); }
    .link-plain {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 12px; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase;
      color: var(--graphite); text-decoration: none;
      border-bottom: 1px solid var(--hairline); padding-bottom: 3px;
      transition: color 0.15s, border-color 0.15s;
    }
    .link-plain:hover { color: var(--signal-deep); border-color: var(--signal-deep); }

    /* ── CREDENTIALS ── */
    .creds { border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); background: var(--white); }
    .creds-inner {
      display: flex; align-items: baseline; gap: 26px;
      padding-top: 22px; padding-bottom: 22px;
      color: var(--graphite); flex-wrap: wrap;
    }
    .creds-inner .label { opacity: 0.65; }
    .cred-name { font-family: 'Newsreader', serif; font-size: 16px; font-style: italic; color: var(--ink); }
    .cred-sep { color: var(--hairline); }

    /* ── SECTION SCAFFOLD ── */
    section { padding-top: 120px; padding-bottom: 120px; }
    .eyebrow {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 12px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase;
      color: var(--signal-deep);
      display: inline-block;
      border-top: 2px solid var(--ink);
      padding-top: 10px;
      margin-bottom: 40px;
    }
    .section-h {
      font-family: 'Newsreader', serif;
      font-size: clamp(36px, 4.6vw, 62px);
      font-weight: 400; line-height: 1.1; letter-spacing: -0.02em;
      color: var(--ink); margin-bottom: 28px;
    }
    .section-h em { font-style: italic; font-weight: 300; color: var(--signal-deep); }
    .section-intro { font-size: 17px; line-height: 1.8; color: var(--graphite); max-width: 600px; margin-bottom: 64px; }

    /* ── CONVICTION ── */
    .conviction {
      display: grid; grid-template-columns: 220px 1fr; gap: 56px; align-items: start;
      padding-top: 128px; padding-bottom: 120px;
    }
    .conviction .eyebrow { margin-bottom: 0; }
    .conviction-statement {
      font-family: 'Newsreader', serif;
      font-size: clamp(34px, 4.6vw, 62px);
      font-weight: 400; line-height: 1.12; letter-spacing: -0.02em;
    }
    .conviction-statement em { font-style: italic; font-weight: 300; color: var(--signal-deep); }
    .conviction-sub { font-size: 16px; line-height: 1.75; color: var(--graphite); max-width: 540px; margin-top: 36px; }

    /* ── WHO WE WORK WITH ── */
    .who-section { background: var(--white); border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
    .who-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
    .who-col { padding: 0 36px; border-left: 1px solid var(--hairline); }
    .who-col:first-child { padding-left: 0; border-left: none; }
    .who-col:last-child { padding-right: 0; }
    .who-tag { color: var(--signal-deep); margin-bottom: 20px; display: block; }
    .who-title {
      font-family: 'Newsreader', serif;
      font-size: 24px; font-weight: 400; line-height: 1.25; letter-spacing: -0.01em;
      color: var(--ink); margin-bottom: 16px;
    }
    .who-body { font-size: 16px; line-height: 1.75; color: var(--graphite); margin-bottom: 22px; }
    .who-points { list-style: none; }
    .who-points li {
      font-size: 15px; line-height: 1.65; color: var(--graphite);
      padding: 12px 0; border-top: 1px solid var(--hairline);
    }
    .who-quote { margin-top: 88px; max-width: 880px; }
    .who-quote p {
      font-family: 'Newsreader', serif;
      font-size: clamp(24px, 2.6vw, 34px);
      font-style: italic; font-weight: 300; line-height: 1.35;
      color: var(--ink); letter-spacing: -0.01em;
    }
    .who-quote cite {
      display: block; font-family: 'IBM Plex Mono', monospace;
      font-size: 12px; font-style: normal; font-weight: 500;
      letter-spacing: 0.08em; text-transform: uppercase;
      color: var(--signal-deep); margin-top: 20px;
    }

    /* ── PROBLEM ── */
    .why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 96px; align-items: start; }
    .why-lead {
      font-family: 'Newsreader', serif;
      font-size: clamp(22px, 2.3vw, 30px);
      font-weight: 400; line-height: 1.35; letter-spacing: -0.015em;
      color: var(--ink); margin-bottom: 28px;
    }
    .why-q {
      font-family: 'Newsreader', serif;
      font-size: clamp(30px, 3.2vw, 44px);
      font-style: italic; font-weight: 300;
      color: var(--signal-deep); margin: 8px 0 28px;
    }
    .why-body { font-size: 16px; line-height: 1.8; color: var(--graphite); margin-bottom: 20px; }
    .why-body strong { color: var(--ink); font-weight: 500; }
    .tension-block { background: var(--white); border: 1px solid var(--hairline); padding: 40px; margin-bottom: 20px; }
    .tension-q {
      font-family: 'Newsreader', serif;
      font-size: 23px; font-weight: 400; line-height: 1.35;
      color: var(--ink); margin-bottom: 16px; letter-spacing: -0.01em;
    }
    .tension-a { font-size: 16px; line-height: 1.75; color: var(--graphite); }
    .tension-pill {
      display: block; color: var(--signal-deep);
      font-size: 15px; font-weight: 500; font-style: italic;
      margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hairline);
    }
    .tension-block.ink { background: var(--ink); border-color: var(--ink); }
    .tension-block.ink .tension-q { color: var(--paper); }
    .tension-block.ink .tension-a { color: rgba(246,245,241,0.74); }

    /* ── WHAT WE DO ── */
    .pillar-list { border-top: 1px solid var(--ink); }
    .pillar-row {
      display: grid; grid-template-columns: 120px 1fr 1.2fr; gap: 48px;
      padding: 44px 0; border-bottom: 1px solid var(--hairline);
      align-items: start;
    }
    .pillar-num { color: var(--graphite); padding-top: 8px; }
    .pillar-title {
      font-family: 'Newsreader', serif;
      font-size: clamp(24px, 2.4vw, 32px);
      font-weight: 400; line-height: 1.2; letter-spacing: -0.015em;
      color: var(--ink);
    }
    .pillar-body { font-size: 17px; line-height: 1.75; color: var(--graphite); }
    .advisor-note {
      margin-top: 64px; max-width: 720px;
      font-family: 'Newsreader', serif;
      font-size: 21px; font-weight: 300; font-style: italic; line-height: 1.55;
      color: var(--ink);
      padding-left: 28px; border-left: 2px solid var(--signal);
    }
    .advisor-note strong { font-weight: 500; font-style: normal; }

    .offer-card {
      background: var(--ink); color: var(--paper); padding: 52px;
      display: grid; grid-template-columns: 0.8fr 1.4fr; gap: 72px;
      margin-bottom: 72px;
    }
    .offer-kicker { color: var(--signal); display: block; margin-bottom: 20px; }
    .offer-title {
      font-family: 'Newsreader', serif; font-size: clamp(38px, 4.5vw, 60px);
      font-weight: 400; line-height: 1.05; letter-spacing: -0.02em; margin-bottom: 18px;
    }
    .offer-meta { font-size: 15px; color: rgba(246,245,241,0.74); line-height: 1.7; }
    .offer-lead { font-family: 'Newsreader', serif; font-size: 25px; line-height: 1.4; font-weight: 300; margin-bottom: 28px; }
    .offer-copy { font-size: 16px; line-height: 1.75; color: rgba(246,245,241,0.78); margin-bottom: 24px; }
    .offer-list { list-style: none; margin-bottom: 32px; }
    .offer-list li { font-size: 15px; line-height: 1.65; padding: 11px 0; border-top: 1px solid rgba(246,245,241,0.2); }
    .offer-card .btn-primary { background: var(--signal); color: var(--ink); }
    .offer-card .btn-primary:hover { background: var(--paper); }
    .offer-next { margin: 0 0 24px; color: var(--signal-deep); }

    /* ── RESULTS ── */
    .results-section { background: var(--white); border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
    .proof-list { border-top: 1px solid var(--ink); }
    .proof-card { border-bottom: 1px solid var(--hairline); padding: 40px 0; cursor: pointer; }
    .proof-top { display: grid; grid-template-columns: 200px 1fr; gap: 48px; align-items: start; }
    .proof-pillar { color: var(--signal-deep); padding-top: 6px; }
    .proof-headline {
      font-family: 'Newsreader', serif;
      font-size: clamp(21px, 2.2vw, 28px);
      font-weight: 400; line-height: 1.3; letter-spacing: -0.01em;
      color: var(--ink); margin-bottom: 14px;
    }
    .proof-headline::before, .proof-result::before {
      display: block; font-family: 'IBM Plex Mono', monospace;
      font-size: 10px; font-weight: 500; letter-spacing: 0.08em;
      text-transform: uppercase; color: var(--signal-deep); margin-bottom: 8px;
    }
    .proof-headline::before { content: 'Noise'; }
    .proof-result::before { content: 'Shift'; }
    .proof-result {
      font-size: 16px; font-weight: 500; color: var(--ink);
      border-left: 2px solid var(--signal); padding-left: 16px;
      margin-bottom: 18px; line-height: 1.55; max-width: 640px;
    }
    .proof-toggle {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 12px; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase;
      color: var(--signal-deep);
      background: none; border: none; padding: 0; cursor: pointer;
      display: inline-flex; align-items: center; gap: 8px; min-height: 44px;
    }
    .proof-toggle-icon { font-size: 15px; line-height: 1; transition: transform 0.25s; display: inline-block; }
    .proof-card.open .proof-toggle-icon { transform: rotate(45deg); }
    .proof-expanded {
      max-height: 0; overflow: hidden; opacity: 0; margin-top: 0;
      transition: max-height 0.5s ease, opacity 0.4s ease, margin-top 0.3s ease;
    }
    .proof-card.open .proof-expanded { max-height: 2000px; opacity: 1; margin-top: 24px; }
    .proof-expanded-inner {
      border-top: 1px solid var(--hairline); padding-top: 24px;
      display: grid; grid-template-columns: 200px 1fr; gap: 48px;
    }
    .proof-case-intro { font-size: 16px; font-weight: 500; color: var(--ink); margin-bottom: 12px; line-height: 1.65; }
    .proof-case { font-size: 16px; line-height: 1.8; color: var(--graphite); margin-bottom: 16px; max-width: 720px; }
    .proof-case:last-child { margin-bottom: 0; }

    /* ── HOW WE WORK ── */
    .how-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 24px; }
    .how-step { padding: 0 36px; border-left: 1px solid var(--hairline); }
    .how-step:first-child { padding-left: 0; border-left: none; }
    .how-step:last-child { padding-right: 0; }
    .how-num { color: var(--graphite); display: block; border-top: 2px solid var(--ink); padding-top: 12px; margin-bottom: 24px; }
    .how-title {
      font-family: 'Newsreader', serif;
      font-size: 28px; font-weight: 400; letter-spacing: -0.01em;
      color: var(--ink); margin-bottom: 14px;
    }
    .how-body { font-size: 16px; line-height: 1.78; color: var(--graphite); }
    .how-cta { margin-top: 72px; }

    /* ── ABOUT ── */
    .about-section { background: var(--white); border-top: 1px solid var(--hairline); }
    .about-grid { display: grid; grid-template-columns: 3fr 2fr; gap: 88px; align-items: start; }
    .about-lead {
      font-family: 'Newsreader', serif;
      font-size: clamp(22px, 2.3vw, 30px);
      font-weight: 400; line-height: 1.4; letter-spacing: -0.015em;
      color: var(--ink); margin-bottom: 28px; max-width: 560px;
    }
    .about-body { font-size: 16px; line-height: 1.8; color: var(--graphite); margin-bottom: 20px; }
    .about-body strong { color: var(--ink); font-weight: 500; }
    .name-tag { margin-top: 36px; }
    .name-tag-name { font-family: 'Newsreader', serif; font-size: 22px; color: var(--ink); letter-spacing: -0.01em; margin-bottom: 4px; }
    .name-tag-role { font-family: 'IBM Plex Mono', monospace; font-size: 12px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: var(--signal-deep); }
    .sidebar-block { border-top: 1px solid var(--ink); padding-top: 18px; margin-bottom: 44px; }
    .sidebar-title { color: var(--signal-deep); margin-bottom: 16px; display: block; }
    .sidebar-body { font-size: 16px; line-height: 1.75; color: var(--graphite); }
    .sidebar-list { list-style: none; }
    .sidebar-list li {
      font-size: 15px; line-height: 1.65; color: var(--graphite);
      padding: 10px 0; border-top: 1px solid var(--hairline);
    }
    .sidebar-list li:first-child { border-top: none; padding-top: 0; }

    /* ── DIAGNOSTIC / LET'S TALK ── */
    .diag-section { border-top: 2px solid var(--ink); background: var(--paper); }
    .diag-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 88px; align-items: start; }
    .diag-body { font-size: 16px; line-height: 1.8; color: var(--graphite); margin-bottom: 32px; }
    .diag-qs { list-style: none; border-top: 1px solid var(--hairline); }
    .diag-qs li {
      display: grid; grid-template-columns: 44px 1fr; gap: 16px;
      padding: 18px 0; border-bottom: 1px solid var(--hairline);
      font-size: 15px; line-height: 1.65; color: var(--graphite);
    }
    .diag-qs .q-mark { font-family: 'IBM Plex Mono', monospace; font-size: 12px; font-weight: 500; color: var(--signal-deep); padding-top: 3px; }
    .diag-callout {
      font-family: 'Newsreader', serif;
      font-size: clamp(24px, 2.4vw, 32px);
      font-weight: 300; line-height: 1.35; letter-spacing: -0.01em;
      color: var(--ink); margin-bottom: 32px;
    }
    .diag-callout span { color: var(--signal-deep); font-style: italic; }
    .diag-result { font-size: 16px; line-height: 1.8; color: var(--graphite); margin-bottom: 28px; }
    .diag-bullets { list-style: none; margin-bottom: 40px; }
    .diag-bullets li {
      font-size: 14px; line-height: 1.65; color: var(--graphite);
      padding: 12px 0; border-top: 1px solid var(--hairline);
    }
    .diag-note { font-family: 'IBM Plex Mono', monospace; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--graphite); opacity: 0.7; margin-top: 16px; }

    /* ── CONTACT ── */
    .contact-section { display: grid; grid-template-columns: 1fr 1fr; gap: 88px; align-items: center; }
    .contact-lead {
      font-family: 'Newsreader', serif;
      font-size: clamp(36px, 4.2vw, 56px);
      font-weight: 400; line-height: 1.15; letter-spacing: -0.02em;
      color: var(--ink); margin-bottom: 18px;
    }
    .contact-lead em { font-style: italic; font-weight: 300; color: var(--signal-deep); }
    .contact-body { font-size: 16px; line-height: 1.75; color: var(--graphite); max-width: 440px; }
    .contact-label { color: var(--signal-deep); display: block; margin-bottom: 20px; border-top: 2px solid var(--ink); padding-top: 12px; }
    .contact-alt { font-size: 15px; color: var(--graphite); margin-top: 20px; }
    .contact-phone { font-size: 16px; color: var(--graphite); text-decoration: none; display: block; margin-top: 8px; transition: color 0.15s; }
    .contact-phone:hover { color: var(--signal-deep); }
    .contact-loc { font-family: 'IBM Plex Mono', monospace; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--graphite); margin-top: 20px; }

    /* ── FOOTER ── */
    footer { background: var(--ink); }
    .footer-inner {
      display: flex; justify-content: space-between; align-items: center;
      padding-top: 40px; padding-bottom: 40px; gap: 24px; flex-wrap: wrap;
    }
    .footer-logo { text-decoration: none; display: flex; align-items: center; line-height: 1; }
    .footer-logo .logo-word { color: var(--paper); }
    .footer-nav { display: flex; gap: 24px; list-style: none; flex-wrap: wrap; }
    .footer-nav a {
      font-family: 'IBM Plex Mono', monospace;
      font-size: 11px; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase;
      color: rgba(246,245,241,0.4); text-decoration: none; transition: color 0.15s;
    }
    .footer-nav a:hover { color: var(--paper); }
    .footer-copy { font-family: 'IBM Plex Mono', monospace; font-size: 11px; color: rgba(246,245,241,0.25); }

    /* ── RESPONSIVE ── */
    @media (max-width: 960px) {
      nav { padding: 0 20px; }
      .nav-links { display: none; }
      .wrap { padding-left: 20px; padding-right: 20px; }
      section { padding-top: 76px; padding-bottom: 76px; }
      .hero { padding-top: 60px; }
      .hero-h1 { font-size: clamp(42px, 9vw, 68px); }
      .hero-meta { margin-bottom: 44px; }
      .hero-lower { grid-template-columns: 1fr; gap: 36px; padding-bottom: 68px; }
      .hero-actions { justify-self: start; }
      .conviction { grid-template-columns: 1fr; gap: 28px; padding-top: 80px; padding-bottom: 80px; }
      .who-grid { grid-template-columns: 1fr; }
      .who-col { padding: 32px 0; border-left: none; border-top: 1px solid var(--hairline); }
      .who-col:first-child { padding-top: 0; border-top: none; }
      .why-grid { grid-template-columns: 1fr; gap: 44px; }
      .pillar-row { grid-template-columns: 1fr; gap: 12px; padding: 32px 0; }
      .offer-card { grid-template-columns: 1fr; gap: 36px; padding: 36px 28px; }
      .proof-top, .proof-expanded-inner { grid-template-columns: 1fr; gap: 12px; }
      .how-steps { grid-template-columns: 1fr; }
      .how-step { padding: 32px 0; border-left: none; border-top: 1px solid var(--hairline); }
      .how-step:first-child { padding-top: 0; border-top: none; }
      .about-grid { grid-template-columns: 1fr; gap: 52px; }
      .diag-grid { grid-template-columns: 1fr; gap: 52px; }
      .contact-section { grid-template-columns: 1fr; gap: 44px; }
      .footer-inner { flex-direction: column; text-align: center; justify-content: center; }
      .footer-nav { justify-content: center; }
    }
  

/* Review build additions, layered over the current site's visual system. */
body { background:var(--paper); }
.page { display:none; }
.page.active { display:block; }
.review-ribbon { background:var(--ink); color:var(--paper); padding:8px 48px; display:flex; gap:20px; justify-content:space-between; font:10px/1.5 'IBM Plex Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.review-ribbon b { color:var(--signal); font-weight:500; }
nav { top:0; }
.nav-links { gap:24px; }
.nav-links a.active { color:var(--signal-deep); }
.nav-links a.active:after { content:''; display:block; height:1px; background:var(--signal); }
.mobile-menu { display:none; }
.page-hero { padding-top:98px; padding-bottom:100px; border-bottom:1px solid var(--hairline); }
.page-hero .eyebrow { margin-bottom:36px; }
.page-title { font:400 clamp(52px,7vw,92px)/1.03 'Newsreader',Georgia,serif; letter-spacing:-.035em; max-width:1000px; }
.page-title em,.section-title em { font-weight:300; color:var(--signal-deep); }
.page-lede { max-width:810px; margin-top:42px; font-size:clamp(20px,2.4vw,27px); line-height:1.45; letter-spacing:-.018em; }
.page-hero .btn-primary { margin-top:35px; }
.section-title { font:400 clamp(42px,5.2vw,70px)/1.08 'Newsreader',Georgia,serif; letter-spacing:-.028em; max-width:900px; }
.section-copy { max-width:740px; font-size:18px; line-height:1.7; color:var(--graphite); }
.section-copy p+p { margin-top:20px; }
.narrow { max-width:880px; }
.quiet { color:var(--graphite); }
.light-panel { background:var(--white); border-top:1px solid var(--hairline); border-bottom:1px solid var(--hairline); }
.dark-panel { background:var(--ink); color:var(--paper); }
.dark-panel .eyebrow { color:var(--signal); }
.dark-panel .section-copy { color:#c9cac8; }
.home-lede { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:start; }
.home-lede .section-title { max-width:560px; }
.home-lede .section-copy { padding-top:9px; }
.triad { border-top:1px solid var(--hairline); margin-top:60px; }
.triad-row { display:grid; grid-template-columns:140px minmax(240px,1fr) 1.15fr; gap:26px; padding:35px 0; border-bottom:1px solid var(--hairline); align-items:start; }
.triad-num { color:var(--signal-deep); }
.triad-row h3 { font:400 clamp(28px,3.2vw,43px)/1.1 'Newsreader',Georgia,serif; letter-spacing:-.02em; }
.triad-row p { color:var(--graphite); font-size:16px; line-height:1.7; }
.text-link { display:inline-flex; align-items:center; gap:11px; color:var(--signal-deep); text-decoration:none; font:500 12px 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.07em; margin-top:20px; }
.text-link:after { content:'↗'; font-size:17px; }
.text-link:hover { color:var(--ink); }
.dark-panel .text-link { color:var(--signal); }
.feature-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:100px; align-items:center; }
.feature-grid .section-copy { margin-top:32px; }
.knowledge-graphic { min-height:420px; border:1px solid #34363a; display:flex; flex-direction:column; justify-content:center; padding:48px; position:relative; overflow:hidden; }
.knowledge-graphic:before { content:''; position:absolute; width:520px; height:520px; left:40%; top:18%; border:1px solid #34363a; border-radius:50%; box-shadow:0 0 0 55px #15161a, 0 0 0 56px #34363a, 0 0 0 112px #15161a, 0 0 0 113px #34363a; }
.knowledge-graphic div { position:relative; z-index:1; font:500 12px 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.08em; padding:15px 0; border-bottom:1px solid #424449; color:#969b99; }
.knowledge-graphic div:last-child { color:var(--signal); border-color:var(--signal); }
.knowledge-graphic span { float:right; }
.offer-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:54px; }
.offer-tile { border:1px solid var(--hairline); background:var(--white); padding:38px 40px 44px; min-height:390px; display:flex; flex-direction:column; align-items:start; }
.offer-tile h3 { font:400 41px/1.08 'Newsreader',Georgia,serif; margin:30px 0 18px; }
.offer-tile p { color:var(--graphite); font-size:16px; }
.offer-tile .text-link { margin-top:auto; padding-top:30px; }
.offer-meta2 { font:500 11px 'IBM Plex Mono',monospace; letter-spacing:.07em; text-transform:uppercase; color:var(--signal-deep); }
.report-panel { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.report-art { min-height:430px; padding:44px; border:1px solid #4a4d4f; display:flex; flex-direction:column; justify-content:space-between; background:linear-gradient(140deg,#111319 65%,#123932); }
.report-art .report-small { font:11px 'IBM Plex Mono',monospace; letter-spacing:.15em; text-transform:uppercase; color:var(--signal); }
.report-art strong { font:400 clamp(43px,5vw,70px)/1 'Newsreader',Georgia,serif; letter-spacing:-.03em; }
.bio-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:center; }
.portrait-frame { aspect-ratio:4/5; overflow:hidden; background:#dfdfd9; }
.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center 30%; display:block; }
.bio-grid .section-copy { color:var(--ink); }
.bio-grid .section-copy p:first-child { font:400 clamp(27px,3vw,39px)/1.21 'Newsreader',Georgia,serif; color:var(--ink); }
.bio-credit { border-top:1px solid var(--hairline); padding-top:18px; margin-top:40px; font:500 12px 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.cta-strip { display:flex; justify-content:space-between; align-items:end; gap:50px; border-top:2px solid var(--ink); }
.cta-strip .section-title { max-width:720px; }
.cta-strip .section-copy { margin-top:22px; }
.cta-actions { display:flex; flex-direction:column; align-items:start; gap:20px; flex-shrink:0; }
.preview-note { color:var(--graphite); font-size:12px; }
.content-row { display:grid; grid-template-columns:1fr 1fr; gap:90px; padding:60px 0; border-top:1px solid var(--hairline); }
.content-row h2 { font:400 clamp(35px,4vw,58px)/1.08 'Newsreader',Georgia,serif; }
.content-row p { color:var(--graphite); margin-bottom:18px; }
.content-row p.lead { font-size:22px; line-height:1.45; color:var(--ink); }
.service-index { color:var(--signal-deep); margin-bottom:20px; }
.step-list { list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:45px; }
.step-list li { border-top:1px solid var(--hairline); padding-top:23px; }
.step-list strong { display:block; font-size:22px; line-height:1.25; margin:12px 0; font-weight:500; }
.step-list p { color:var(--graphite); font-size:15px; }
.topic-grid { display:grid; grid-template-columns:repeat(2,1fr); column-gap:70px; row-gap:50px; margin-top:50px; }
.topic { border-top:1px solid var(--hairline); padding-top:23px; }
.topic h3 { font:400 32px/1.15 'Newsreader',Georgia,serif; margin:10px 0 13px; }
.topic p { color:var(--graphite); font-size:16px; }
.scan-facts { background:var(--ink); color:var(--paper); display:grid; grid-template-columns:1fr 1fr 1fr; gap:30px; padding:34px 48px; }
.scan-facts strong { font:400 36px 'Newsreader',Georgia,serif; display:block; }
.scan-facts span { color:#bdc1bd; font-size:13px; }
.check-list { list-style:none; border-top:1px solid var(--hairline); margin-top:35px; }
.check-list li { padding:17px 0 17px 28px; border-bottom:1px solid var(--hairline); position:relative; }
.check-list li:before { content:'+'; position:absolute; left:0; color:var(--signal-deep); }
.footer-preview { background:var(--ink); color:var(--paper); padding:42px 0; }
.footer-preview .wrap { display:flex; justify-content:space-between; gap:30px; align-items:center; }
.footer-preview a { color:var(--paper); text-decoration:none; }
.footer-preview .footer-small { font:11px 'IBM Plex Mono',monospace; color:#a0a4a2; }
@media (max-width:960px) {
  .review-ribbon { padding:8px 24px; }
  .nav-links { display:none; }
  .mobile-menu { display:block; font:500 12px 'IBM Plex Mono',monospace; color:var(--ink); background:none; border:1px solid var(--hairline); padding:8px 12px; text-transform:uppercase; }
  nav.mobile-open .nav-links { display:flex; position:absolute; top:72px; left:0; right:0; background:var(--paper); padding:20px 24px 28px; flex-direction:column; gap:18px; border-bottom:1px solid var(--hairline); box-shadow:0 25px 30px rgba(0,0,0,.07); }
  .home-lede,.feature-grid,.report-panel,.bio-grid,.content-row { grid-template-columns:1fr; gap:38px; }
  .triad-row { grid-template-columns:80px 1fr; }
  .triad-row p { grid-column:2; }
  .cta-strip { flex-direction:column; align-items:start; }
  .page-hero { padding-top:75px; }
}
@media (max-width:640px) {
  .review-ribbon { flex-direction:column; gap:0; }
  .nav-cta { display:none; }
  .offer-grid,.topic-grid,.scan-facts,.step-list { grid-template-columns:1fr; }
  .offer-tile { min-height:0; }
  .triad-row { grid-template-columns:1fr; gap:10px; }
  .triad-row p { grid-column:1; }
  .knowledge-graphic { min-height:300px; }
  .report-art { min-height:320px; }
  .footer-preview .wrap { flex-direction:column; align-items:start; }
  .scan-facts { padding:30px; }
}

.spaced { margin-top:28px; }
.home-lede > *, .feature-grid > *, .report-panel > *, .bio-grid > *, .content-row > * { min-width:0; }
.scan-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
.scan-facts > * { min-width:0; overflow-wrap:anywhere; }
.actions { display:flex; gap:28px; align-items:center; flex-wrap:wrap; margin-top:32px; }
.page-hero .btn-primary { display:inline-flex; }
.page-hero .actions .btn-primary { margin-top:0; }
.page-hero .actions .text-link { margin-top:0; }
.packages { grid-template-columns:repeat(3,minmax(0,1fr)); }
.package-price { color:var(--signal-deep); font:500 16px/1.4 'Inter',Arial,sans-serif; margin-bottom:20px; }
.packages .offer-tile { padding:30px; min-height:430px; }
.packages .offer-tile h3 { font-size:36px; }
.packages .offer-tile .btn-primary { margin-top:20px; display:inline-flex; min-height:48px; align-items:center; }
.review-price-note { font:12px/1.6 'Inter',Arial,sans-serif; margin-top:20px; color:var(--graphite); }
.home-intro { padding-bottom:60px; max-width:1240px; }
.home-intro p { font-size:clamp(20px,2.4vw,27px); line-height:1.45; max-width:790px; }
#main-home .page-hero { border:0; padding-bottom:60px; }
#main-home .page-title { max-width:1144px; font-size:clamp(42px,6vw,80px); }
.hero-detail { font-size:clamp(18px,1.5vw,21px); margin-top:22px; }
.conviction-panel { background:var(--ink); color:var(--paper); }
.conviction-panel .eyebrow { color:var(--signal); }
.conviction-panel .section-copy { color:#c9cac8; }
.conviction-panel .section-title { max-width:1080px; }
.reveal { opacity:1!important; transform:none!important; }
section[id] { scroll-margin-top:92px; }
a:focus-visible,button:focus-visible { outline:3px solid var(--signal-deep); outline-offset:5px; }
@media(max-width:960px) { .packages { grid-template-columns:1fr; } .packages .offer-tile { min-height:0; } }
@media(max-width:640px) { .page-title { font-size:43px; } .page-hero { padding-top:52px; padding-bottom:55px; } .actions { align-items:start; flex-direction:column; } .section-title { font-size:38px; } .scan-facts strong { font-size:29px; } .report-art { padding:26px; } .report-art strong { font-size:35px; } .report-small { overflow-wrap:anywhere; } }
@media(max-width:640px) { .scan-facts { grid-template-columns:1fr; } }
.creds-inner .label { opacity:1; }
@media(max-width:360px) { .report-art strong { font-size:28px; } #main-home .page-title,.page-title { font-size:36px; } .section-title { font-size:32px; } .section-title,.page-title { overflow-wrap:anywhere; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:#15161a;color:white;padding:12px}.skip-link:focus{top:12px}
