/* ============================================================================
   henry_overview_v2.css — SHARED sheet for the Tier-0 overview redesign
   (locked drop 2026-07-17: T0-01 v72 · T0-02 v04 · T0-03 v02 · T0-04 v01 · T0-06 v01)

   WHAT THIS IS: the 28 <style> blocks that are BYTE-IDENTICAL across all five
   locked mockups — i.e. the design system they share. Each page adds only its
   own ~11KB page-specific block in www/css/henry_<page>_v2.css.

   HOW TO USE (per page): $page_css = 'henry_overview_v2.css'; and append the
   page-specific sheet via $_META so it loads AFTER this one.

   ⚠️ SITE-CHROME STRIPPED (§5B gate 15): 22 rulesets targeting .topbar /
   .nav-* / .brand* were REMOVED. The mockups are standalone documents carrying
   their own nav; the live pages get their nav from header-v2.php, and these bare
   class names would repaint the real site chrome. Do NOT re-paste them from a
   mockup. Note the "CTA GLASS UNIFICATION" block IS retained — its comment
   mentions .nav-cta as an exemption but the rules themselves are body CTAs.

   ASSUMES: all five overview pages want one design system. If a page's design
   intentionally diverges, that belongs in ITS page sheet — never a fork here.

   Predecessor: henry_overview_cool.css (the Jun-30 cool-gray system) still
   serves any page not yet migrated. Pages move one at a time; when the last one
   flips, that sheet is retired.
   ============================================================================ */

:root {
      --blue: #00C2FF;
      --blue-dark: #008DBC;   /* unified 2026-08-14 (was #0099cc) — see henry_fc.css:19 for why */
      --gold: #C9A96E;
      --gold-light: #E8C99A;
      --obsidian: #14181D;
      --charcoal: #1E242C;
      --ink: #14181D;
      --body: #424B55;
      --muted: #7A8590;
      --line: #E2E7EC;
      --soft: #EDF1F4;
      --soft-blue: #EAF9FF;
      --cream: #F4F6F8;
      --white: #FFFFFF;
      --shadow: 0 18px 50px rgba(0,0,0,.10);
      --radius-lg: 28px;
      --radius-md: 18px;
      --radius-sm: 12px;
      --max: 1240px;
      --font: Manrope, Helvetica, Arial, sans-serif;
    }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
      margin: 0;
      font-family: var(--font);
      color: var(--ink);
      background: var(--white);
      line-height: 1.55;
    }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
.nav {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(218,231,238,.95);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid var(--line);
    }
.footer-logo {
      display: block;
      width: 190px;
      max-width: 190px;
      height: auto;
      margin-bottom: 10px;
    }
.summary-nav-links {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: center;
      gap: clamp(26px, 4vw, 56px);
      color: rgba(255,255,255,.78);
      font-size: 13px;
      font-weight: 700;
      width: 100%;
    }
.summary-nav-links a {
      color: rgba(255,255,255,.78);
      transition: color .2s ease;
      white-space: nowrap;
    }
.summary-nav-links a:hover { color: var(--blue); }
.summary-menu-toggle {
      display: none;
      width: 48px;
      height: 48px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,.14);
      background: var(--blue);
      color: var(--obsidian);
      align-items: center;
      justify-content: center;
      cursor: pointer;
      box-shadow: 0 14px 32px rgba(0,194,255,.25);
    }
.summary-menu-toggle span,
    .summary-menu-toggle span::before,
    .summary-menu-toggle span::after {
      content: "";
      display: block;
      width: 20px;
      height: 2px;
      border-radius: 99px;
      background: currentColor;
      position: relative;
    }
.summary-menu-toggle span::before { position: absolute; top: -7px; left: 0; }
.summary-menu-toggle span::after { position: absolute; top: 7px; left: 0; }
.summary-menu-panel {
      display: none;
      position: absolute;
      top: calc(100% + 10px);
      right: 24px;
      width: min(340px, calc(100vw - 48px));
      background: rgba(20,24,29,.97);
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 16px;
      box-shadow: 0 24px 70px rgba(0,0,0,.32);
      padding: 12px;
    }
.summary-menu-panel a {
      display: block;
      color: rgba(255,255,255,.82);
      font-size: 13px;
      font-weight: 800;
      padding: 12px 14px;
      border-radius: 10px;
    }
.summary-menu-panel a:hover { background: rgba(255,255,255,.08); color: var(--blue); }
.summary-menu-panel .panel-cta {
      margin-top: 8px;
      text-align: center;
      background: var(--blue);
      color: var(--obsidian);
      box-shadow: 0 12px 28px rgba(0,194,255,.20);
    }
.section {
      max-width: var(--max);
      margin: 0 auto;
      padding: 84px 24px;
    }
.section-tight { padding-top: 50px; }
.section-trust { padding: 56px 24px 24px; }
.section-after-trust { padding-top: 40px; }
.eyebrow {
      color: var(--gold);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .22em;
      text-transform: uppercase;
      margin-bottom: 18px;
    }
h1, h2, h3 { margin: 0; line-height: 1.06; letter-spacing: -.04em; }
h1 { font-size: clamp(42px, 4.55vw, 66px); max-width: 570px; line-height: 1.04; letter-spacing: -.055em; }
h2 { font-size: clamp(32px, 4vw, 58px); max-width: 850px; }
h3 { font-size: 24px; letter-spacing: -.02em; }
p { margin: 0; color: var(--body); }
.lead { font-size: clamp(17px, 1.45vw, 20px); color: #4A4A4A; max-width: 600px; line-height: 1.55; }
.small { font-size: 14px; color: var(--muted); }
.center { text-align: center; }
.center h2, .center .lead { margin-left: auto; margin-right: auto; }
.section h2 + .lead { margin-top: 28px; }
.section h2 + p:not(.lead) { margin-top: 22px; }
.section-title-balanced span { display: block; }
.section-title-balanced { max-width: 760px; }
.best-for-lead { max-width: 560px; }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.hero-actions { margin-top: 24px; }
.btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 52px;
      padding: 15px 22px;
      border-radius: 12px;
      font-weight: 800;
      font-size: 14px;
      border: 1px solid transparent;
      transition: transform .2s ease, box-shadow .2s ease;
    }
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: var(--blue); color: var(--obsidian); box-shadow: 0 12px 30px rgba(0,194,255,.25); }
.btn-dark { background: var(--obsidian); color: var(--white); }
.btn-outline { background: var(--white); border-color: #D6D6D6; color: var(--ink); }
.btn-gold { background: var(--gold); color: var(--obsidian); }
.hero {
      background:
        radial-gradient(circle at 80% 10%, rgba(201,169,110,.20), transparent 34%),
        linear-gradient(135deg, #FFFFFF 0%, #F4F6F8 45%, #F4F6F8 100%);
      border-bottom: 1px solid var(--line);
    }
.hero-grid {
      max-width: var(--max);
      margin: 0 auto;
      padding: 78px 24px 88px;
      display: grid;
      grid-template-columns: 1.02fr .98fr;
      gap: 48px;
      align-items: start;
    }
.breadcrumbs { font-size: 13px; color: var(--muted); margin-bottom: 24px; }
.hero-copy .lead { margin-top: 22px; }
.hero-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 24px;
    }
.badge {
      background: rgba(255,255,255,.78);
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 9px 13px;
      color: #333;
      font-size: 13px;
      font-weight: 700;
      box-shadow: 0 8px 22px rgba(0,0,0,.04);
    }
.rating {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-top: 18px;
      font-size: 13px;
      font-weight: 800;
      color: #2E3640;
    }
.stars { color: var(--gold); letter-spacing: 2px; }
.hero-card {
      position: relative;
      border-radius: 36px;
      background: #14181D;
      color: var(--white);
      min-height: 430px;
      overflow: hidden;
      box-shadow: var(--shadow);
      padding: 0;
      margin-top: 78px;
    }
.hero-card picture,
    .hero-card .hero-real-image {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }
.hero-card .hero-real-image {
      object-fit: cover;
      object-position: center center;
      z-index: 0;
      transform: scale(1.01);
    }
.card-stack {
      position: absolute;
      width: 78%;
      height: 54%;
      left: 11%;
      top: 19%;
      transform: rotate(-9deg);
    }
.mock-card {
      position: absolute;
      inset: 0;
      border-radius: 24px;
      background: linear-gradient(135deg, #161B21, #262D36);
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 34px 70px rgba(0,0,0,.42);
      overflow: hidden;
    }
.mock-card:nth-child(1) { transform: translate(30px, 30px); opacity: .45; }
.mock-card:nth-child(2) { transform: translate(14px, 14px); opacity: .7; }
.mock-card:nth-child(3) { transform: translate(0, 0); }
.foil-logo {
      position: absolute;
      left: 34px;
      top: 34px;
      width: 66px;
      height: 66px;
      background: linear-gradient(120deg, #8E6B2F, #F8E2A3 38%, #B98C45 65%, #FFF1B8);
      clip-path: polygon(50% 0,100% 38%,50% 100%,0 38%);
      box-shadow: 0 0 30px rgba(232,201,154,.36);
    }
.foil-line {
      position: absolute;
      height: 5px;
      border-radius: 999px;
      background: linear-gradient(90deg, #8E6B2F, #F8E2A3, #B98C45);
      right: 36px;
      left: 36px;
      bottom: 46px;
    }
.foil-name {
      position: absolute;
      left: 36px;
      bottom: 74px;
      color: rgba(255,255,255,.88);
      font-size: 30px;
      font-weight: 800;
      letter-spacing: -.04em;
    }
.hero-card-caption {
      position: absolute;
      left: 32px;
      right: 32px;
      bottom: 30px;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 20px;
      align-items: end;
      z-index: 2;
    }
.hero-card-caption p { color: rgba(255,255,255,.70); }
.image-note {
      position: relative;
      z-index: 2;
      display: inline-block;
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      padding: 8px 12px;
      border-radius: 999px;
      color: rgba(255,255,255,.80);
      font-size: 12px;
    }
/* Hero photo-only treatment: real image stands on its own */
    .hero-card.hero-photo-only {
      padding: 0;
      background: transparent;
      border-radius: 36px;
      overflow: hidden;
      min-height: 430px;
    }
.hero-card.hero-photo-only::before {
      content: none !important;
      display: none !important;
      background: none !important;
    }
.hero-card.hero-photo-only .hero-real-image {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      z-index: 2;
      transform: none;
      opacity: 1;
    }
.hero-card.hero-photo-only .image-note,
    .hero-card.hero-photo-only .hero-card-caption {
      display: none !important;
    }
.sticky-summary {
      position: sticky;
      top: 74px;
      z-index: 19;
      background: var(--obsidian);
      color: var(--white);
      border-top: 1px solid rgba(255,255,255,.08);
      border-bottom: 1px solid rgba(255,255,255,.08);
      transition: background .2s ease, border-color .2s ease;
    }
.summary-inner {
      max-width: var(--max);
      margin: 0 auto;
      padding: 18px 24px;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 42px;
      align-items: center;
      position: relative;
    }
.sticky-summary.is-compact {
      background: transparent;
      border-color: transparent;
      pointer-events: none;
    }
.sticky-summary.is-compact .summary-inner {
      display: flex;
      justify-content: flex-end;
      padding-top: 12px;
      padding-bottom: 12px;
    }
.sticky-summary.is-compact .summary-nav-links,
    .sticky-summary.is-compact > .summary-inner > .btn {
      display: none;
    }
.sticky-summary.is-compact .summary-menu-toggle {
      display: inline-flex;
      pointer-events: auto;
    }
.sticky-summary.is-open .summary-menu-panel {
      display: block;
      pointer-events: auto;
    }
.summary-steps { display: flex; flex-wrap: wrap; gap: 10px; }
.summary-pill {
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      color: rgba(255,255,255,.78);
      border-radius: 12px;
      padding: 9px 13px;
      font-size: 13px;
      font-weight: 700;
    }
.answer-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 34px;
    }
/* P10 modifier — 2x2 grid for the 4-card answer-grid section.
       P09 (Ready to build) keeps the base 3-col layout. */
    .answer-grid--2col {
      grid-template-columns: repeat(2, 1fr);
    }
.answer-card {
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: var(--radius-md);
      padding: 26px;
    }
.answer-card strong {
      display: block;
      font-size: 15px;
      margin-bottom: 10px;
      color: var(--ink);
    }
.builder-shell {
      display: grid;
      grid-template-columns: .9fr 1.1fr;
      gap: 26px;
      align-items: start;
    }
.preview-panel {
      position: sticky;
      top: 94px;
      background: linear-gradient(145deg, var(--obsidian), #1E242C);
      border-radius: 30px;
      min-height: 540px;
      padding: 28px;
      color: var(--white);
      overflow: hidden;
      box-shadow: var(--shadow);
    }
.preview-panel::after {
      content: "";
      position: absolute;
      width: 440px;
      height: 440px;
      right: -170px;
      top: -150px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(201,169,110,.26), transparent 65%);
    }
.preview-title { position: relative; z-index: 2; }
.preview-title h3 { color: var(--white); }
.preview-title p { color: rgba(255,255,255,.62); margin-top: 8px; }
.preview-card {
      position: relative;
      z-index: 2;
      margin: 72px auto 30px;
      width: 86%;
      aspect-ratio: 1.75 / 1;
      border-radius: 24px;
      background: linear-gradient(135deg, #14181D, #222A33);
      transform: rotate(-7deg);
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 32px 66px rgba(0,0,0,.38);
    }
.preview-card .foil-logo { left: 30px; top: 28px; width: 54px; height: 54px; }
.preview-card .foil-name { font-size: 25px; left: 28px; bottom: 62px; }
.preview-card .foil-line { left: 28px; right: 28px; bottom: 38px; }
.preview-list {
      position: relative;
      z-index: 2;
      display: grid;
      gap: 10px;
    }
.preview-list div {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid rgba(255,255,255,.10);
      padding-bottom: 10px;
      color: rgba(255,255,255,.68);
      font-size: 14px;
    }
.preview-list strong { color: var(--white); }
.builder-panel {
      background: var(--white);
      border: 1px solid var(--line);
      border-radius: 30px;
      box-shadow: var(--shadow);
      overflow: hidden;
    }
.builder-head {
      background: var(--soft);
      padding: 26px 28px;
      border-bottom: 1px solid var(--line);
    }
.builder-head p { margin-top: 8px; }
.builder-section {
      padding: 28px;
      border-bottom: 1px solid var(--line);
    }
.builder-section:last-child { border-bottom: 0; }
.choice-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
      margin-top: 16px;
    }
.choice {
      min-height: 84px;
      border: 1px solid #DDD;
      border-radius: var(--radius-sm);
      padding: 14px;
      background: #fff;
      cursor: pointer;
    }
.choice.active { border-color: var(--blue); background: var(--soft-blue); box-shadow: 0 8px 20px rgba(0,194,255,.10); }
.choice .label { font-weight: 800; font-size: 14px; }
.choice .desc { color: var(--muted); font-size: 12px; margin-top: 4px; }
.swatch-grid { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.swatch {
      display: flex;
      align-items: center;
      gap: 8px;
      border: 1px solid #DDD;
      padding: 10px 12px;
      border-radius: 999px;
      background: #fff;
      font-size: 13px;
      font-weight: 700;
    }
.dot { width: 18px; height: 18px; border-radius: 50%; border: 1px solid rgba(0,0,0,.12); }
.gold { background: linear-gradient(135deg,#8E6B2F,#F8E2A3,#B98C45); }
.silver { background: linear-gradient(135deg,#C9CED6,#FFF,#8F98A3); }
.rose { background: linear-gradient(135deg,#AD6D5C,#FFD7CA,#B77A68); }
.copper { background: linear-gradient(135deg,#8D4C2B,#E8A16A,#9B542D); }
.blue { background: #123B72; }
.black { background: #14181D; }
.help-strip {
      background: linear-gradient(135deg, var(--soft-blue), #FFFFFF);
      border: 1px solid #CFEFFF;
      border-radius: var(--radius-md);
      padding: 22px;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 18px;
      align-items: center;
      margin-top: 18px;
    }
.feature-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-top: 34px;
    }
.feature-card {
      background: var(--white);
      border: 1px solid var(--line);
      border-radius: var(--radius-md);
      padding: 24px;
      box-shadow: 0 12px 34px rgba(0,0,0,.05);
    }
.feature-card .num { color: var(--gold); font-weight: 900; margin-bottom: 16px; }
.confidence-strip {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 18px;
      align-items: stretch;
    }
.confidence-card {
      background: rgba(255,255,255,.82);
      border: 1px solid #DDE2E8;
      border-radius: 20px;
      padding: 38px 34px 40px;
      box-shadow: none;
      min-height: 192px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      box-sizing: border-box;
      overflow: hidden;
    }
.confidence-card .num {
      color: var(--gold);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .12em;
      margin-bottom: 22px;
      text-transform: none;
    }
.confidence-card h3 {
      font-size: 22px;
      line-height: 1.12;
      letter-spacing: -.032em;
      margin-bottom: 16px;
    }
.confidence-card p {
      font-size: 14.5px;
      line-height: 1.65;
      color: #424B55;
      max-width: 94%;
    }
.industry-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-top: 34px;
    }
.industry-card {
      display: flex;
      flex-direction: column;
      min-height: 270px;
      background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFB 100%);
      border: 1px solid var(--line);
      border-radius: 22px;
      padding: 26px 26px 22px;
      box-shadow: 0 14px 34px rgba(0,0,0,.045);
      transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
    }
.industry-card:hover {
      border-color: var(--blue);
      box-shadow: 0 18px 46px rgba(0,194,255,.12);
      transform: translateY(-3px);
    }
.industry-kicker {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 18px;
    }
.industry-num {
      color: var(--gold);
      font-weight: 900;
      font-size: 13px;
      letter-spacing: .12em;
    }
.industry-tag {
      color: #7A8590;
      background: #EDF1F4;
      border: 1px solid #ECECEC;
      border-radius: 999px;
      padding: 6px 10px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .04em;
      text-transform: uppercase;
    }
.industry-card h3 {
      font-size: 23px;
      line-height: 1.04;
      letter-spacing: -.045em;
      margin-bottom: 12px;
      color: var(--ink);
    }
.industry-card p {
      font-size: 14px;
      line-height: 1.65;
      color: #5E5E5E;
    }
.industry-card .industry-link {
      margin-top: auto;
      padding-top: 18px;
      color: var(--blue-dark);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: .01em;
    }
.industry-card .industry-link span {
      display: inline-block;
      transition: transform .2s ease;
    }
.industry-card:hover .industry-link span { transform: translateX(4px); }
.dark-band {
      background:
        radial-gradient(circle at 8% 0%, rgba(0,194,255,.16), transparent 30%),
        radial-gradient(circle at 92% 20%, rgba(201,169,110,.20), transparent 26%),
        var(--obsidian);
      color: var(--white);
    }
.dark-band p { color: rgba(255,255,255,.68); }
.dark-band h2, .dark-band h3 { color: var(--white); }
.combo-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
      margin-top: 34px;
    }
.combo-card {
      display: block;
      background: rgba(255,255,255,.06);
      border: 2px solid rgba(255,255,255,.10);
      border-radius: var(--radius-lg);
      overflow: hidden;
      color: inherit;
      text-decoration: none;
      cursor: pointer;
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
.combo-card:hover,
    .combo-card:focus-visible {
      transform: translateY(-2px);
      border-color: #00C2FF;
      box-shadow: 0 18px 38px rgba(0,194,255,.12);
      outline: none;
    }
.combo-visual {
      height: 190px;
      background:
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
        radial-gradient(circle at 40% 35%, rgba(201,169,110,.35), transparent 24%);
      position: relative;
    }
.combo-visual::after {
      content: "Image slot";
      position: absolute;
      left: 20px;
      bottom: 18px;
      color: rgba(255,255,255,.42);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: .14em;
      font-weight: 800;
    }
.combo-body { padding: 24px; }
.combo-body p { margin-top: 10px; }
.compare-table {
      margin-top: 34px;
      border: 1px solid var(--line);
      border-radius: var(--radius-lg);
      overflow: hidden;
      box-shadow: var(--shadow);
    }
table { border-collapse: collapse; width: 100%; }
th, td { padding: 20px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
th { background: var(--obsidian); color: var(--white); font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
td { background: var(--white); color: var(--body); }
tr:last-child td { border-bottom: 0; }
td strong { color: var(--ink); }
.mistake-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 16px;
      margin-top: 34px;
    }
.mistake-card {
      border: 1px solid #F0D0D0;
      background: #FFF7F7;
      border-radius: var(--radius-md);
      padding: 24px;
    }
.mistake-card strong { color: #8E2424; display: block; margin-bottom: 8px; }
.fix-card {
      border-color: #D8EAD8;
      background: #F6FFF6;
    }
.fix-card strong { color: #2E6C36; }
.proof-layout {
      display: grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 26px;
      align-items: center;
    }
.proof-gallery {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
.proof-main {
      min-height: 380px;
      aspect-ratio: 4/3;
      border-radius: 28px;
      background:
        linear-gradient(135deg, rgba(0,0,0,.50), rgba(0,0,0,.15)),
        radial-gradient(circle at 65% 35%, rgba(232,201,154,.50), transparent 18%),
        linear-gradient(145deg, #161B21, #2E3640);
      position: relative;
      overflow: hidden;
      box-shadow: var(--shadow);
    }
.proof-main-type {
      position: absolute;
      top: 18px;
      right: 18px;
      background: rgba(255,255,255,.10);
      color: rgba(255,255,255,.85);
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
.proof-main-label {
      position: absolute;
      left: 28px;
      bottom: 26px;
      right: 28px;
      color: rgba(255,255,255,.70);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
.proof-thumbs {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 10px;
    }
.proof-thumb {
      aspect-ratio: 1;
      background:
        linear-gradient(135deg, rgba(0,0,0,.50), rgba(0,0,0,.15)),
        linear-gradient(145deg, #161B21, #272E37);
      border-radius: 14px;
      position: relative;
      cursor: pointer;
      border: 2px solid transparent;
      transition: border-color .2s ease, transform .2s ease;
      outline: none;
      padding: 0;
      font-family: inherit;
      overflow: hidden;
    }
.proof-thumb:hover { transform: translateY(-2px); border-color: rgba(0,194,255,.4); }
.proof-thumb:focus-visible { border-color: var(--blue); }
.proof-thumb.is-active { border-color: var(--blue); }
.proof-thumb-num {
      position: absolute;
      top: 8px;
      left: 10px;
      font-size: 11px;
      font-weight: 800;
      color: rgba(255,255,255,.6);
      letter-spacing: .05em;
    }
.proof-thumb-mark {
      position: absolute;
      inset: 0;
      display: grid;
      place-items: center;
      color: rgba(255,255,255,.55);
    }
.proof-thumb[data-type="video"] .proof-thumb-mark { color: rgba(255,255,255,.88); }
.proof-thumb-tag {
      position: absolute;
      bottom: 8px;
      right: 10px;
      font-size: 9px;
      font-weight: 800;
      letter-spacing: .12em;
      color: rgba(0,194,255,.95);
    }
.proof-list {
      display: grid;
      gap: 10px;
      margin-top: 28px;
    }
.proof-item {
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 16px;
      align-items: start;
      padding: 10px 12px;
      border-radius: 14px;
      cursor: pointer;
      background: transparent;
      transition: background .15s ease;
      outline: none;
    }
.proof-item:hover { background: rgba(0,194,255,.04); }
.proof-item:focus-visible { background: rgba(0,194,255,.06); }
.proof-item.is-active { background: rgba(0,194,255,.06); }
.proof-icon {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: var(--soft-blue);
      display: grid;
      place-items: center;
      font-weight: 900;
      color: var(--blue-dark);
      transition: background .15s ease, color .15s ease;
    }
.proof-item.is-active .proof-icon { background: var(--blue); color: #14181D; }
.footer-logo {
      display: block;
      width: 190px;
      height: auto;
      margin-bottom: 12px;
    }
.customer-proof-wrap {
      display: grid;
      grid-template-columns: .92fr 1.18fr;
      gap: 18px;
      margin-top: 40px;
      align-items: stretch;
    }
.video-proof-panel {
      background: linear-gradient(135deg,#0F1216 0%, #14181D 54%, #121519 100%);
      border: 1px solid #1E242C;
      border-radius: 28px;
      color: #fff;
      padding: 24px 24px 18px;
      box-shadow: var(--shadow);
      display: flex;
      flex-direction: column;
      gap: 12px;
      min-height: 100%;
      overflow: hidden;
      position: relative;
    }
.video-proof-panel::after {
      content: "";
      position: absolute;
      inset: auto -80px -60px auto;
      width: 220px;
      height: 220px;
      background: radial-gradient(circle, rgba(0,194,255,.12), transparent 64%);
      pointer-events: none;
    }
.video-proof-panel .num {
      color: var(--gold-light);
      font-size: 13px;
      font-weight: 700;
      position: relative;
      z-index: 1;
    }
.video-proof-panel h3 {
      color: #fff;
      font-size: clamp(23px, 1.65vw, 30px);
      letter-spacing: -.045em;
      line-height: 1.08;
      max-width: 430px;
      margin: 0 0 8px;
      position: relative;
      z-index: 1;
    }
.video-proof-showcase {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 118px;
      gap: 14px;
      margin-top: 0;
      align-items: stretch;
      flex: 1 1 auto;
      min-height: 320px;
      position: relative;
      z-index: 1;
    }
.video-main {
      position: relative;
      border-radius: 18px;
      overflow: hidden;
      min-height: 300px;
      background: #000;
      border: 1px solid rgba(255,255,255,.08);
    }
.video-main img {
      width: 100%;
      height: 100%;
      min-height: 300px;
      object-fit: cover;
      object-position: center;
      display: block;
    }
.video-main::before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.12) 100%);
      pointer-events: none;
      z-index: 1;
    }
.video-main::after {
      content: "";
      position: absolute;
      inset: auto 0 0 0;
      height: 18px;
      background: linear-gradient(90deg, rgba(0,0,0,.95) 0 20%, transparent 20% 28%, rgba(0,0,0,.95) 28% 100%);
      opacity: .95;
      z-index: 2;
    }
.video-main-play {
      position: absolute;
      inset: 50% auto auto 50%;
      transform: translate(-50%,-50%);
      width: 82px;
      height: 82px;
      border-radius: 50%;
      background: rgba(255,255,255,.28);
      backdrop-filter: blur(2px);
      display: grid;
      place-items: center;
      z-index: 3;
      border: 1px solid rgba(255,255,255,.24);
      box-shadow: 0 18px 48px rgba(0,0,0,.28);
    }
.video-main-play::before {
      content: "▶";
      color: var(--blue);
      font-size: 26px;
      font-weight: 900;
      margin-left: 4px;
      text-shadow: 0 4px 16px rgba(0,0,0,.34);
    }
.video-side-list {
      display: flex;
      flex-direction: column;
      gap: 12px;
      justify-content: center;
    }
.video-side-item {
      display: grid;
      grid-template-columns: 26px 1fr;
      gap: 10px;
      align-items: center;
    }
.video-side-item .idx {
      color: #fff;
      font-size: 19px;
      font-weight: 900;
      text-align: center;
      line-height: 1;
    }
.video-side-item.active .idx { color: var(--blue); }
.video-side-card {
      position: relative;
      min-height: 74px;
      border-radius: 16px;
      border: 1px solid rgba(255,255,255,.10);
      background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
    }
.video-side-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 50% 35%, rgba(201,169,110,.22), transparent 34%);
      opacity: .9;
    }
.video-side-card::after {
      content: "";
      position: absolute;
      inset: 0;
      background-image: url("data:image/webp;base64,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");
      background-size: cover;
      background-position: center;
      opacity: .16;
      filter: saturate(.65) brightness(.72);
    }
.video-play {
      position: relative;
      z-index: 1;
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: var(--blue);
      box-shadow: 0 8px 24px rgba(0,194,255,.22);
      display: grid;
      place-items: center;
    }
.video-play::before {
      content: "▶";
      color: var(--obsidian);
      font-size: 16px;
      font-weight: 900;
      margin-left: 2px;
    }
.review-proof-card {
      background: var(--cream);
      border: 1px solid rgba(201,169,110,.22);
      border-radius: var(--radius-lg);
      position: relative;
      overflow: hidden;
      padding: 34px;
      box-shadow: var(--shadow);
    }
.review-proof-card::before {
      content: "“";
      position: absolute;
      top: -54px;
      right: 30px;
      font-size: 180px;
      line-height: 1;
      color: rgba(201,169,110,.14);
      font-weight: 900;
    }
.review-quote {
      font-size: clamp(21px, 2vw, 28px);
      line-height: 1.42;
      color: #1E242C;
      max-width: 760px;
      position: relative;
      z-index: 2;
    }
.review-meta-row {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      align-items: center;
      margin-top: 26px;
      position: relative;
      z-index: 2;
    }
.rating-proof-strip {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
      margin-top: 28px;
      position: relative;
      z-index: 2;
    }
.rating-proof-item {
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(201,169,110,.18);
      border-radius: 14px;
      padding: 16px 18px;
    }
.rating-proof-item span {
      display: block;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .13em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 4px;
    }
.rating-proof-item strong {
      display: block;
      color: var(--ink);
      font-size: 18px;
      line-height: 1.15;
    }
.cta-band {
      max-width: var(--max);
      margin: 0 auto;
      padding: 64px 24px;
    }
.cta-box {
      background: linear-gradient(135deg, var(--obsidian), #222A33);
      color: var(--white);
      border-radius: 36px;
      padding: 54px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 48px;
      align-items: center;
      overflow: hidden;
      position: relative;
    }
.cta-box::before {
      content: "";
      position: absolute;
      width: 360px;
      height: 360px;
      right: -120px;
      top: -120px;
      background: radial-gradient(circle, rgba(201,169,110,.34), transparent 65%);
      border-radius: 50%;
    }
.cta-box > * { position: relative; z-index: 2; }
.cta-box p { color: rgba(255,255,255,.70); margin-top: 14px; }
.cta-box .btn-row { margin-top: 32px; }
.cta-photo {
      aspect-ratio: 4/3;
      border-radius: 16px;
      background:
        linear-gradient(135deg, rgba(255,255,255,.04), rgba(255,255,255,.01)),
        linear-gradient(145deg, #1E242C, #14181D);
      border: 1px solid rgba(255,255,255,.08);
      position: relative;
      overflow: hidden;
    }
.cta-photo-type {
      position: absolute;
      top: 14px;
      right: 14px;
      background: rgba(255,255,255,.08);
      color: rgba(255,255,255,.85);
      padding: 5px 11px;
      border-radius: 6px;
      font-size: 10px;
      font-weight: 800;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
.cta-photo-label {
      position: absolute;
      bottom: 16px;
      left: 20px;
      right: 20px;
      color: rgba(255,255,255,.55);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
/* P17 — FAQ Answer Hub (v0.14 re-skin) */
    .faq-hub {
      max-width: 980px;
      margin: 0 auto;
    }
.faq-hub .center {
      margin-bottom: 30px;
    }
.faq-search-wrap {
      max-width: 560px;
      margin: 26px auto 0;
      position: relative;
    }
.faq-search-wrap::before {
      content: "";
      position: absolute;
      left: 18px;
      top: 50%;
      width: 14px;
      height: 14px;
      border: 2px solid #B9B9B9;
      border-radius: 50%;
      transform: translateY(-50%);
      pointer-events: none;
    }
.faq-search-wrap::after {
      content: "";
      position: absolute;
      left: 30px;
      top: calc(50% + 8px);
      width: 7px;
      height: 2px;
      background: #B9B9B9;
      transform: rotate(45deg);
      transform-origin: left center;
      pointer-events: none;
    }
.faq-search {
      width: 100%;
      min-height: 48px;
      border: 1px solid #DFDFDF;
      border-radius: 12px;
      padding: 0 18px 0 46px;
      font: 600 13px var(--font);
      color: var(--ink);
      background: #fff;
      outline: none;
      transition: border-color .2s ease, box-shadow .2s ease;
    }
.faq-search::placeholder { color: rgba(0,0,0,.42); }
.faq-search:focus {
      border-color: rgba(0,194,255,.55);
      box-shadow: 0 0 0 4px rgba(0,194,255,.10);
    }
.faq-kicker-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      margin: 38px 0 16px;
    }
.faq-kicker {
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: var(--gold);
    }
.faq-helper {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.5;
      max-width: 430px;
      text-align: right;
    }
.faq-feature-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-bottom: 36px;
    }
.faq-feature-card {
      border: 1px solid #E7E7E7;
      border-radius: 16px;
      background: #fff;
      overflow: hidden;
      box-shadow: 0 12px 34px rgba(0,0,0,.035);
      transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
    }
.faq-feature-card:hover {
      border-color: rgba(0,194,255,.42);
      box-shadow: 0 18px 42px rgba(0,0,0,.055);
      transform: translateY(-1px);
    }
.faq-feature-card summary {
      cursor: pointer;
      list-style: none;
      padding: 18px 20px;
      font-size: 14px;
      font-weight: 850;
      color: var(--ink);
      display: flex;
      align-items: flex-start;
      gap: 10px;
      line-height: 1.35;
    }
.faq-feature-card summary::-webkit-details-marker { display: none; }
.faq-feature-card summary::before {
      content: "›";
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 16px;
      height: 16px;
      color: var(--ink);
      font-size: 16px;
      line-height: 1;
      transform: rotate(0deg);
      transition: transform .2s ease, color .2s ease;
      flex: 0 0 auto;
      margin-top: 1px;
    }
.faq-feature-card[open] summary::before {
      transform: rotate(90deg);
      color: var(--blue);
    }
.faq-feature-card.is-highlight summary {
      color: var(--blue-dark);
    }
.faq-feature-card.is-flex-hero summary {
      color: var(--blue-dark);
    }
.faq-feature-card p {
      padding: 0 20px 22px 46px;
      font-size: 14px;
      line-height: 1.65;
      color: #424B55;
    }
.faq-topic-panel {
      border: 1px solid #E2E7EC;
      background: linear-gradient(135deg, #FFFFFF 0%, #F4F6F8 100%);
      border-radius: 22px;
      padding: 28px;
      box-shadow: 0 18px 48px rgba(0,0,0,.045);
      margin-top: 8px;
    }
.faq-topic-head {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 20px;
      margin-bottom: 20px;
    }
.faq-topic-head h3 {
      font-size: 26px;
      letter-spacing: -.035em;
      line-height: 1.08;
    }
.faq-topic-head p {
      max-width: 470px;
      font-size: 14px;
      line-height: 1.55;
      color: var(--body);
      text-align: right;
    }
.faq-topic-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
    }
.faq-topic-card {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      min-height: 62px;
      border: 1px solid #D7DCE2;
      background: rgba(255,255,255,.72);
      border-radius: 14px;
      padding: 14px 14px 14px 16px;
      color: var(--ink);
      text-decoration: none;
      transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease;
      cursor: pointer;
    }
.faq-topic-card:hover {
      border-color: rgba(0,194,255,.55);
      box-shadow: 0 12px 26px rgba(0,194,255,.09);
      background: #fff;
      transform: translateY(-1px);
    }
.faq-topic-card strong {
      font-size: 12px;
      line-height: 1.25;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
.faq-topic-card span {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 24px;
      height: 24px;
      border-radius: 8px;
      background: rgba(0,194,255,.10);
      color: var(--blue-dark);
      font-weight: 900;
      flex: 0 0 auto;
    }
.faq-all-row {
      display: flex;
      justify-content: center;
      margin-top: 26px;
    }
.faq-all-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 0 22px;
      border: 1px solid #14181D;
      border-radius: 12px;
      font-size: 13px;
      font-weight: 850;
      background: #fff;
      color: var(--ink);
      cursor: pointer;
      transition: background .2s ease, color .2s ease, transform .2s ease;
    }
.faq-all-btn:hover {
      background: var(--obsidian);
      color: #fff;
      transform: translateY(-1px);
    }
/* All-Questions expanded region */
    .faq-all-wrap {
      margin-top: 32px;
      display: none;
    }
.faq-all-wrap.is-expanded { display: block; }
.faq-category-label {
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: var(--gold);
      margin: 28px 0 12px;
    }
.faq-category-label:first-of-type { margin-top: 8px; }
.faq-no-results {
      display: none;
      text-align: center;
      color: var(--muted);
      padding: 32px 16px;
      font-size: 14px;
    }
.faq-feature-card.is-search-hidden { display: none !important; }
.faq-category-label.is-search-hidden { display: none !important; }
.faq-grid.is-empty .faq-no-results,
    .faq-feature-grid.is-empty + .faq-no-results { display: block; }

    @media (max-width: 900px) {
.faq-feature-grid { grid-template-columns: 1fr; }
.faq-topic-grid { grid-template-columns: 1fr 1fr; }
.faq-kicker-row, .faq-topic-head { align-items: flex-start; flex-direction: column; }
.faq-helper, .faq-topic-head p { text-align: left; }
}

    @media (max-width: 560px) {
.faq-topic-grid { grid-template-columns: 1fr; }
.faq-topic-panel { padding: 22px; }
}
.seo-note {
      background: var(--cream);
      border: 1px dashed var(--gold);
      border-radius: var(--radius-lg);
      padding: 26px;
      margin-top: 34px;
    }
.seo-note strong { color: var(--ink); }
.footer {
      background: var(--obsidian);
      color: var(--white);
      padding: 48px 24px;
      margin-top: 60px;
    }
.footer-inner {
      max-width: var(--max);
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      gap: 24px;
      color: rgba(255,255,255,.60);
      font-size: 14px;
    }


    @media (max-width: 980px) {
.hero-grid, .builder-shell, .proof-layout, .cta-box, .customer-proof-wrap { grid-template-columns: 1fr; }
.video-proof-showcase { grid-template-columns: 1fr; }
.video-side-list { flex-direction: row; }
.video-side-item { grid-template-columns: 1fr; }
.video-side-item .idx { display: none; }
.preview-panel { position: relative; top: auto; }
.answer-grid, .feature-grid, .industry-grid, .combo-grid, .faq-grid { grid-template-columns: 1fr 1fr; }
.summary-nav-links { display: none; }
.summary-inner { grid-template-columns: 1fr; }
}

    @media (max-width: 680px) {
.answer-grid, .feature-grid, .industry-grid, .combo-grid, .mistake-grid, .faq-grid, .choice-grid { grid-template-columns: 1fr; }
.hero-card { min-height: 430px; margin-top: 24px; }
.summary-steps { display: none; }
.cta-box { padding: 34px; }
th, td { display: block; width: 100%; }
th { display: none; }
td { border-bottom: 0; padding: 14px 18px; }
tr { display: block; border-bottom: 1px solid var(--line); }
}


    @media (max-width: 980px) {
.sticky-summary { top: 70px; }
.summary-nav-links { display: none; }
.summary-menu-toggle { display: inline-flex; }
.summary-inner { display: flex; justify-content: flex-end; }
.sticky-summary > .summary-inner > .btn { display: none; }
}
/* ============= P18 — WORTH KNOWING (Curated Internal Links) · added v0.18 ============= */
    .worth-knowing {
      background: var(--cream);
      border-top: 1px solid var(--line);
      padding: 88px 24px;
    }
.worth-knowing .wk-inner { max-width: var(--max); margin: 0 auto; }
.worth-knowing .wk-head-wrap { text-align: center; margin-bottom: 46px; }
.worth-knowing .eyebrow { display: block; }
.worth-knowing .wk-head {
      font-size: 28px; line-height: 1.1; letter-spacing: -.02em;
      color: var(--ink); margin: 0; max-width: none;
    }
.worth-knowing .wk-sub {
      margin: 14px auto 0; font-size: 15px; color: var(--muted);
      max-width: 520px;
    }
.worth-knowing .wk-grid {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    }
.worth-knowing .wk-card {
      display: flex; flex-direction: column;
      background: var(--white); border: 1px solid var(--line);
      border-radius: var(--radius-md); padding: 30px 28px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
.worth-knowing .wk-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 16px 36px rgba(0,0,0,.08);
      border-color: #DCDCDC;
    }
.worth-knowing .wk-card-title {
      font-size: 18px; font-weight: 800; line-height: 1.28;
      letter-spacing: -.01em; color: var(--ink);
    }
.worth-knowing .wk-card-framing {
      margin-top: 12px; font-size: 15px; font-style: italic;
      line-height: 1.55; color: var(--body); flex: 1;
    }
.worth-knowing .wk-card-cue {
      margin-top: 22px; font-size: 13px; font-weight: 800;
      letter-spacing: .04em; text-transform: uppercase; color: var(--blue-dark);
    }
.worth-knowing .wk-card:hover .wk-card-cue { color: var(--blue); }

    @media (max-width: 900px) {
.worth-knowing { padding: 64px 22px; }
.worth-knowing .wk-grid { grid-template-columns: 1fr; gap: 18px; }
}
/* ===== FLOATING PAGE MENU (SilkCards signature) ===== */
    .page-menu { position: fixed; top: 84px; right: 24px; z-index: 70; opacity: 0; pointer-events: none; transition: opacity .24s ease, transform .24s ease; transform: translateY(-6px); }
.page-menu.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.page-menu-toggle { width: 48px; height: 48px; border-radius: 14px; border: 1px solid rgba(0,0,0,.08); background: var(--blue); color: var(--obsidian); display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 14px 32px rgba(0,194,255,.32); transition: transform .22s ease, box-shadow .22s ease; padding: 0; }
.page-menu-toggle:hover { transform: translateY(-2px); box-shadow: 0 18px 38px rgba(0,194,255,.4); }
.page-menu-toggle span, .page-menu-toggle span::before, .page-menu-toggle span::after { content: ""; display: block; width: 20px; height: 2px; border-radius: 99px; background: currentColor; position: relative; }
.page-menu-toggle span::before { position: absolute; top: -7px; left: 0; }
.page-menu-toggle span::after { position: absolute; top: 7px; left: 0; }
.page-menu-panel { display: none; position: absolute; top: calc(100% + 12px); right: 0; width: min(300px, calc(100vw - 48px)); background: rgba(20,24,29,.97); border: 1px solid rgba(255,255,255,.12); border-radius: 18px; box-shadow: 0 28px 70px rgba(0,0,0,.42); padding: 12px; max-height: calc(100vh - 140px); overflow-y: auto; }
.page-menu.is-open .page-menu-panel { display: block; }
.page-menu-panel a { display: block; color: rgba(255,255,255,.82); font-size: 13px; font-weight: 800; padding: 12px 14px; border-radius: 10px; letter-spacing: .01em; transition: background .18s ease, color .18s ease; }
.page-menu-panel a:hover { background: rgba(255,255,255,.08); color: var(--blue); }

    @media (max-width: 720px) {
.page-menu { top: auto; bottom: 22px; right: 18px; }
.page-menu-panel { top: auto; bottom: calc(100% + 12px); max-height: calc(100vh - 220px); }
}
/* ===== Background rhythm ===== */
    .band-cream { background: var(--cream); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.band-cream + .band-cream { border-top: none; }
/* ===== Cinematic hero (two-column: text left <half, photo right) ===== */
    .hero { position: relative; color: var(--white); overflow: hidden; background:
        radial-gradient(circle at 10% 0%, rgba(0,194,255,.16), transparent 36%),
        radial-gradient(circle at 92% 12%, rgba(201,169,110,.18), transparent 32%),
        var(--obsidian); }
.hero-inner { max-width: var(--max); margin: 0 auto; padding: 132px 24px; min-height: 82vh; display: grid; grid-template-columns: 48fr 52fr; gap: 60px; align-items: center; }
.hero-copy { max-width: 540px; }
.hero .eyebrow { color: var(--gold-light); display:block; margin-bottom: 24px; }
.hero h1 { color: var(--white); font-size: clamp(29px, 2.6vw, 38px); line-height: 1.2; letter-spacing: -.04em; max-width: 100%; }
.hero h1 .hl { display: block; }

    @media (max-width: 560px){
.hero h1 .hl { display: inline; }
}
.hero .hero-lede { margin-top: 30px; max-width: 470px; font-size: 15.5px; line-height: 1.78; color: rgba(255,255,255,.74); }
.hero .hero-promise { margin-top: 30px; max-width: 440px; font-size: 16px; font-weight: 700; color: var(--white); line-height: 1.62; }
.hero .btn-row { margin-top: 44px; }
.hero-trust { margin-top: 44px; display: flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 700; color: rgba(255,255,255,.82); letter-spacing: .01em; }
.hero-trust .stars { color: var(--gold-light); font-weight: 800; }
.hero-trust .dot { color: rgba(255,255,255,.32); }
.hero-media { aspect-ratio: 4/3; border-radius: 24px; position: relative; border: 1px solid rgba(255,255,255,.08); background:
        linear-gradient(135deg, rgba(0,194,255,.10), transparent 55%),
        linear-gradient(145deg, #1E242C, #14181D); }
.hero-media .slot-tag { position: absolute; bottom: 14px; left: 16px; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.42); }

    @media (max-width: 900px){
.hero-inner { grid-template-columns: 1fr; gap: 32px; padding: 76px 24px; min-height: auto; }
.hero-copy { max-width: none; }
.hero .hero-lede, .hero .hero-promise { max-width: none; }
}
/* ===== Hero CTA buttons (black / white-outline / white text; hover = cyan fill + black text + cyan halo) ===== */
    .btn-hero { background: var(--obsidian); border: 1px solid rgba(255,255,255,.65); color: var(--white); box-shadow: none; }
.btn-hero:hover { background: var(--blue); color: var(--obsidian); border-color: var(--blue); transform: translateY(-2px); box-shadow: 0 0 0 4px rgba(0,194,255,.30), 0 0 26px rgba(0,194,255,.65); }
/* ===== Section intro + numbered step spine ===== */
    .sec-head { text-align:center; max-width: 680px; margin: 0 auto 40px; }
.step-eyebrow { display:inline-flex; align-items:center; gap:12px; margin-bottom: 18px; }
.step-num { display:inline-flex; align-items:center; justify-content:center; width: 30px; height: 30px; border-radius: 99px; background: var(--obsidian); color: var(--white); font-size: 13px; font-weight: 900; }
.step-label { color: var(--gold); font-size: 12px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; }
.sec-head h2 { margin: 0 auto; }
.sec-head p { margin-top: 18px; font-size: clamp(16px,1.4vw,18px); color: var(--body); line-height:1.55; }
/* ===== Quick Path Finder (editorial · centered · serif statement · gold-dot list) ===== */
    .path-grid { display:grid; grid-template-columns: repeat(5,1fr); gap: 14px; }
.path-card { display:flex; flex-direction:column; align-items:center; text-align:center; background: rgba(255,255,255,.45); border:1px solid #D9DEE4; border-radius: 18px; padding: 32px 22px; transition: border-color .2s ease; }
.path-card:hover { border-color:#CED3D9; }
.path-card .path-mind { font-size: 17px; font-weight: 600; letter-spacing: -.015em; color: var(--ink); line-height: 1.34; min-height: 44px; }
.path-card .tick { width: 32px; height: 2px; background: var(--gold); border-radius: 2px; margin: 16px auto 18px; }
.path-routes { display:flex; flex-direction:column; align-items:center; }
.path-routes a { display:block; text-transform:uppercase; letter-spacing:.14em; font-size: 12px; font-weight: 700; color: var(--blue-dark); transition: color .18s ease, transform .18s ease; }
.path-routes a:hover { color: var(--blue); transform: translateX(5px); }
.path-routes a + a::before { content:"\00B7"; display:block; color: var(--gold); font-size: 15px; line-height: 1; margin: 9px 0; }

    @media (max-width: 1080px){
.path-grid { grid-template-columns: 1fr 1fr 1fr; }
.path-card .path-mind { min-height: 0; }
}

    @media (max-width: 640px){
.path-grid { grid-template-columns: 1fr; }
}

    @media (max-width: 900px){

}

    @media (max-width: 620px){

}
/* ===== Tabbed full-collection browser ===== */
    .browse-tabs { display:inline-flex; gap:6px; padding:6px; background:var(--white); border:1px solid var(--line); border-radius:99px; margin: 0 auto 32px; }
.browse-tabs-wrap { text-align:center; }
.tab-btn { appearance:none; border:none; cursor:pointer; font-family:inherit; font-size:13px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); background:transparent; padding:11px 22px; border-radius:99px; transition: background .18s ease, color .18s ease; }
.tab-btn[aria-selected="true"] { background:var(--obsidian); color:var(--white); }
.tab-panel[hidden] { display:none; }
.chip-grid { display:grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.chip { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:86px; background:#fff; border:1px solid var(--line); border-radius: 17px; padding: 22px 24px; text-decoration:none; color:inherit; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.chip:hover { border-color: var(--blue); box-shadow: 0 12px 26px rgba(0,194,255,.10); transform: translateY(-2px); }
.chip .chip-name { font-size: 20.15px; font-weight:800; letter-spacing:-.02em; display:block; }
.chip .chip-line { font-size: 15.6px; line-height:1.45; color: var(--muted); display:block; margin-top:4px; }
.chip .chip-arrow { color: var(--blue-dark); font-size:20.8px; font-weight:900; flex:0 0 auto; }

    @media (max-width: 980px){
.chip-grid { grid-template-columns: 1fr 1fr; }
}

    @media (max-width: 540px){
.chip-grid { grid-template-columns: 1fr; }
}
/* ===== Confidence bridge ===== */
    .bridge { max-width: var(--max); margin: 0 auto; padding: 40px 24px; }
.bridge-inner { display:flex; flex-wrap:wrap; gap: 14px 40px; align-items:center; justify-content:center; text-align:center; }
.bridge-inner .bridge-lead { font-size: 12px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; color: var(--gold); }
.bridge-point { font-size: 14.5px; color: var(--ink); }
.bridge-point b { font-weight:800; }
/* ===== Design Help route ===== */
    .route-band { max-width: var(--max); margin: 0 auto; padding: 56px 24px; }
.route-box { border:1px solid var(--line); border-radius: var(--radius-lg); padding: 40px 44px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap: 24px; background: var(--white); }
.route-box h2 { font-size: clamp(24px,2.4vw,32px); }
.route-box p { margin-top: 10px; max-width: 520px; }
/* ===== Industry inspiration (demoted) ===== */
    .ind-inline { display:flex; flex-wrap:wrap; gap: 10px; justify-content:center; }
.ind-inline a { font-size: 13.5px; font-weight:800; color: var(--ink); border:1px solid var(--line); border-radius: 99px; padding: 10px 16px; text-decoration:none; transition: border-color .18s ease, color .18s ease; background:var(--white); }
.ind-inline a:hover { border-color: var(--blue); color: var(--blue-dark); }
/* ===== Compact FAQ ===== */
    .hub-faq { max-width: 820px; margin: 0 auto; }
.hub-faq .faq-item { border-bottom: 1px solid var(--line); padding: 24px 0; }
.hub-faq .faq-item:first-child { border-top: 1px solid var(--line); }
.hub-faq .faq-item h3 { font-size: 18px; letter-spacing:-.02em; margin-bottom: 9px; }
.hub-faq .faq-item p { font-size: 15px; line-height: 1.6; color: var(--body); }
.hub-faq .faq-item a { color: var(--blue-dark); font-weight:700; }
/* Browse collection begins 40px higher after removal of the floating quick-nav bar */
    .browse-band { margin-top: -40px; }

    @media (max-width: 700px) {
.browse-band { margin-top: -24px; }
}

    @media (max-width: 600px){

}
/* ===== Customer voice (real reaction reels, 9:16) ===== */
    .cv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 880px; margin: 8px auto 0; }
.cv-card { margin: 0; }
.cv-video { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; display: block; border-radius: var(--radius-md); background: #14181D; border: 1px solid var(--line); }
.cv-cap { margin-top: 14px; font-size: 14px; font-style: italic; line-height: 1.5; color: var(--body); text-align: center; }

    @media (max-width: 760px){
.cv-grid { grid-template-columns: 1fr; max-width: 340px; }
}
/* Sample Kit headline: strict 2 lines */
    #samples .cta-box h2 { font-size: clamp(26px, 3vw, 38px); line-height: 1.16; }
#samples .cta-box h2 .ln { display: block; white-space: nowrap; }

    @media (max-width: 600px){
#samples .cta-box h2 .ln { white-space: normal; }
}
/* Cyan-outline CTA (Design Help) — cyan halo on hover */
    .btn-cyan-outline { background: var(--white); border: 1px solid var(--blue); color: var(--blue-dark); box-shadow: none; }
.btn-cyan-outline:hover { border-color: var(--blue); color: var(--blue-dark); transform: translateY(-2px); box-shadow: 0 0 0 4px rgba(0,194,255,.25), 0 0 26px rgba(0,194,255,.55); }
/* ===== Industry Inspiration (respectful card grid) ===== */
    .ind-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 8px; }
.ind-card { display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 34px 32px; text-decoration: none; color: inherit; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.ind-card:hover { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(0,194,255,.16), 0 18px 42px rgba(0,194,255,.16); transform: translateY(-3px); }
.ind-card .ind-tick { width: 30px; height: 2px; background: var(--gold); border-radius: 2px; margin-bottom: 20px; }
.ind-card h3 { font-size: 22px; letter-spacing: -.03em; line-height: 1.12; margin-bottom: 12px; color: var(--ink); }
.ind-card p { font-size: 15px; line-height: 1.6; color: var(--body); flex: 1; }
.ind-card .ind-link { margin-top: 22px; color: var(--blue-dark); font-size: 13px; font-weight: 900; letter-spacing: .02em; }
.ind-card .ind-link span { display: inline-block; transition: transform .18s ease; }
.ind-card:hover .ind-link { color: var(--blue); }
.ind-card:hover .ind-link span { transform: translateX(4px); }

    @media (max-width: 900px){
.ind-grid { grid-template-columns: 1fr 1fr; }
}

    @media (max-width: 600px){
.ind-grid { grid-template-columns: 1fr; }
}
/* Industry card icon (replaces gold tick) */
    .ind-card .ind-icon { width: 40px; height: 40px; margin-bottom: 20px; color: var(--gold); }
.ind-card .ind-icon svg { width: 100%; height: 100%; stroke: currentColor; stroke-width: 1.7; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.ind-card:hover .ind-icon { color: var(--blue); }
/* v33 — Customer Voice refinement */
    #customer-voice {
      padding-top: 40px;
    }
#customer-voice .sec-head .eyebrow {
      color: var(--gold);
      font-size: 14.4px;
      font-weight: 900;
      letter-spacing: .22em;
      text-transform: uppercase;
      margin-bottom: 18px;
    }
/* ============================================================
   CTA GLASS UNIFICATION v1 — Henry verdict 2026-07-11
   Shape: rounded rectangle 12px (capsule style DEAD for body CTAs)
   Rest:  adaptive frosted glass (white frost on dark, ink frost on light)
   Hover: locked cyan #00C2FF fill + halo (CTA Standard interactive color)
   Exempt: .nav-cta pill, .sticky-cta / .floating-tray gold tray (Rule 6b)
   ============================================================ */
.cg-cta{
  border-radius:12px !important;
  -webkit-backdrop-filter:blur(10px) saturate(1.15);
  backdrop-filter:blur(10px) saturate(1.15);
  box-shadow:none !important;
  text-decoration:none;
}
.cg-cta.cg-dark{
  background:rgba(255,255,255,.14) !important;
  border:1.5px solid rgba(255,255,255,.85) !important;
  color:#FFFFFF !important;
}
.cg-cta.cg-light{
  background:rgba(20,24,29,.07) !important;
  border:1.5px solid rgba(20,24,29,.70) !important;
  color:#14181D !important;
}
.cg-cta:hover,.cg-cta:focus-visible{
  background:#00C2FF !important;
  border-color:#00C2FF !important;
  color:#0A0A0A !important;
  transform:translateY(-2px);
  box-shadow:0 0 0 4px rgba(0,194,255,.30),0 0 26px rgba(0,194,255,.65) !important;
  outline:none;
}
/* SilkCards Business Cards Overview — light, full-width pilot redesign */
    :root{
      --page-max: 1500px;
      --section-gap: clamp(72px, 8vw, 132px);
      --display: Manrope, Helvetica, Arial, sans-serif;
    }
body{
      background:#f7f8fa;
      overflow-x:hidden;
    }
.nav{
      background:rgba(255,255,255,.78);
      border-bottom:1px solid rgba(20,24,29,.08);
      box-shadow:none;
    }
.page-menu{
      background:rgba(255,255,255,.92) !important;
      border-bottom:1px solid rgba(20,24,29,.06) !important;
      box-shadow:none !important;
    }
.hero{
      position:relative;
      isolation:isolate;
      min-height:clamp(690px, 86vh, 900px);
      display:grid;
      place-items:center;
      overflow:hidden;
      background:
        linear-gradient(125deg,#f9fbff 0%,#eefaff 42%,#fff6f9 100%);
      border-bottom:8px solid #fff;
    }
.hero::before,
    .hero::after{
      content:"";
      position:absolute;
      width:72vw;
      height:72vw;
      border-radius:50%;
      filter:blur(64px);
      opacity:.58;
      z-index:-2;
      will-change:transform;
    }
.hero::before{
      left:-22vw;
      top:-31vw;
      background:radial-gradient(circle at 42% 44%,rgba(152,225,255,.9),rgba(201,236,255,.35) 45%,rgba(255,255,255,0) 72%);
      animation:heroFlowA 20s ease-in-out infinite alternate;
    }
.hero::after{
      right:-24vw;
      bottom:-38vw;
      background:radial-gradient(circle at 50% 50%,rgba(255,213,225,.82),rgba(233,224,255,.32) 48%,rgba(255,255,255,0) 72%);
      animation:heroFlowB 24s ease-in-out infinite alternate;
    }
.hero > *{position:relative; z-index:2;}
.hero-inner,
    .hero-content{
      max-width:840px !important;
      margin-inline:auto !important;
      text-align:center !important;
      padding-inline:28px !important;
    }
.hero h1{
      max-width:980px;
      margin-inline:auto;
      font-size:clamp(48px,6.3vw,94px) !important;
      line-height:.98 !important;
      letter-spacing:-.055em !important;
      font-weight:760 !important;
      color:#111820 !important;
    }
.hero p{
      max-width:760px;
      margin-inline:auto;
      font-size:clamp(18px,1.8vw,25px) !important;
      line-height:1.45 !important;
      color:#4c5864 !important;
    }
.hero .eyebrow,
    .hero .hero-kicker{
      color:#5b6a76 !important;
      letter-spacing:.14em !important;
    }
.hero-actions,
    .hero-ctas{justify-content:center !important;}
@keyframes heroFlowA{
      0%{transform:translate3d(0,0,0) scale(1)}
      50%{transform:translate3d(13vw,9vw,0) scale(1.08)}
      100%{transform:translate3d(7vw,20vw,0) scale(.95)}
    }
@keyframes heroFlowB{
      0%{transform:translate3d(0,0,0) scale(1.08)}
      50%{transform:translate3d(-12vw,-9vw,0) scale(.96)}
      100%{transform:translate3d(-4vw,-18vw,0) scale(1.12)}
    }
.band-cream{
      background:#f7f8fa !important;
    }
.band-cream > .section,
    .section{
      max-width:var(--page-max);
      padding:var(--section-gap) 22px;
    }
.sec-head{
      max-width:930px;
      margin:0 auto clamp(46px,5vw,76px);
      text-align:center;
    }
.sec-head h2{
      font-size:clamp(38px,4.6vw,70px) !important;
      line-height:1.02 !important;
      letter-spacing:-.045em !important;
      font-weight:740 !important;
      color:#111820;
      margin-bottom:22px !important;
    }
.sec-head p{
      max-width:760px;
      margin-inline:auto;
      font-size:clamp(17px,1.4vw,21px) !important;
      line-height:1.55;
      color:#66727d;
    }
.step-eyebrow,
    .eyebrow{
      display:inline-flex;
      gap:10px;
      align-items:center;
      color:#63717d !important;
      letter-spacing:.12em;
    }
.step-num{
      background:#111820 !important;
      color:#fff !important;
      border-radius:999px !important;
      min-width:30px;
      height:30px;
      display:inline-grid;
      place-items:center;
      font-size:11px;
    }
/* Quick path: bright, editorial cards */
    #quick-path{
      max-width:var(--page-max);
    }
#quick-path .path-grid,
    #quick-path .feeling-grid,
    #quick-path .quick-grid{
      gap:14px !important;
    }
#quick-path a{
      background:#fff !important;
      border:1px solid rgba(20,24,29,.07) !important;
      box-shadow:none !important;
      border-radius:24px !important;
      transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    }
#quick-path a:hover{
      transform:translateY(-5px);
      border-color:rgba(0,194,255,.35) !important;
      box-shadow:0 24px 60px rgba(29,47,63,.10) !important;
    }
.slot-tag{
      position:absolute;
      left:50%;
      bottom:24px;
      transform:translateX(-50%);
      color:rgba(17,24,32,.42) !important;
      background:rgba(255,255,255,.58) !important;
      border:1px solid rgba(255,255,255,.72) !important;
      backdrop-filter:blur(10px);
      border-radius:999px !important;
      padding:8px 13px !important;
      font-size:11px !important;
      letter-spacing:.02em !important;
      z-index:5;
    }
/* Remaining page: lighter, flatter, more spacious */
    #browse,
    #by-industry,
    #customer-voice,
    #faq{
      max-width:var(--page-max);
    }
.tab-wrap,
    .browse-shell,
    .faq-item,
    .ind-card,
    .cv-card{
      border:1px solid rgba(20,24,29,.07) !important;
      box-shadow:none !important;
      background:#fff !important;
    }
.ind-grid{gap:12px !important;}
.ind-card{
      border-radius:22px !important;
      transition:transform .3s ease, box-shadow .3s ease;
    }
.ind-card:hover{
      transform:translateY(-4px);
      box-shadow:0 22px 50px rgba(29,47,63,.09) !important;
    }
.bridge{
      background:#111820 !important;
      border:0 !important;
    }
.bridge-inner{max-width:var(--page-max);}
.cta-band,
    .route-band{
      margin:10px;
      border-radius:0 !important;
      overflow:hidden;
    }
.cta-band{
      background:linear-gradient(135deg,#edf8ff,#fbf7ff 50%,#fff4f7) !important;
      color:#111820 !important;
    }
.cta-band *{color:inherit;}
.route-band{
      background:linear-gradient(135deg,#f4f8fb,#ffffff 50%,#edf7f4) !important;
      color:#111820 !important;
    }
.faq-item{border-radius:18px !important;}
.worth-knowing{background:#f0f3f6 !important;}
.footer{background:#111820 !important;}


    @media (max-width:900px){
.hero{min-height:700px;}
}


    @media (max-width:640px){
.hero{min-height:620px;}
.hero h1{font-size:clamp(42px,13vw,62px) !important;}
.section,.band-cream>.section{padding-inline:16px;}
.slot-tag{bottom:14px; white-space:nowrap;}
.cta-band,.route-band{margin:8px;}
}


    @media (prefers-reduced-motion:reduce){
.hero::before,.hero::after{animation:none;}
}
/* v2 hero refinement: centered, image-free, two-line headline */
    .hero {
      min-height: 610px;
      position: relative;
    }
.hero-inner {
      max-width: var(--max);
      min-height: 610px;
      margin: 0 auto;
      padding: 108px 24px 112px;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }
.hero-copy {
      width: min(100%, 840px);
      max-width: none;
      text-align: center;
      margin: 0 auto;
    }
.hero .eyebrow {
      text-align: center;
    }
.hero h1 {
      max-width: 840px;
      margin: 0 auto;
      font-size: clamp(42px, 5.25vw, 76px);
      line-height: 1.04;
      letter-spacing: -.055em;
      text-wrap: balance;
    }
.hero h1 .hl {
      display: block;
      white-space: nowrap;
    }
.hero .hero-lede {
      max-width: 720px;
      margin: 28px auto 0;
      text-align: center;
      font-size: clamp(17px, 1.5vw, 21px);
      line-height: 1.6;
    }
.hero .btn-row {
      justify-content: center;
      margin-top: 34px;
    }
.hero-trust {
      position: absolute;
      left: 24px;
      bottom: 28px;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 8px;
      text-align: left;
      font-size: 13px;
      line-height: 1.3;
    }

    @media (max-width: 900px) {
.hero,
      .hero-inner { min-height: 560px; }
.hero-inner { padding: 86px 24px 104px; }
.hero h1 .hl { white-space: normal; }
}

    @media (max-width: 560px) {
.hero,
      .hero-inner { min-height: 540px; }
.hero-inner { padding: 72px 20px 112px; }
.hero h1 { font-size: clamp(38px, 11.5vw, 54px); }
.hero-trust {
        left: 20px;
        right: 20px;
        bottom: 22px;
        flex-wrap: wrap;
      }
}


@media (max-width:1100px){

}

    @media (max-width:640px){

}


@media (max-width: 700px) {

}


@media (max-width:700px) {

}


@media (max-width: 640px) {

}


@media (max-width: 900px) {

}


@media (max-width: 620px) {

}


@media (max-width: 760px) {

}


@media (max-width: 1200px) {

}

  @media (max-width: 900px) {

}
.step-eyebrow { gap: 0 !important; }
.step-eyebrow .step-label { margin-left: 0 !important; }
.step-num { display: none !important; }
/* v31 — Find Your Direction refinements */
  .band-quick-path {
    background: #f1f4fa !important;
    background-image: none !important;
  }
.band-quick-path::before,
  .band-quick-path::after {
    content: none !important;
    display: none !important;
    background: none !important;
  }
/* Remove all capsule/button treatments from the links inside the five cards. */
  #quick-path .path-routes a {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    color: var(--blue-dark) !important;
    font-size: 14.4px !important;
  }
#quick-path .path-routes a:hover {
    background: transparent !important;
    box-shadow: none !important;
    color: var(--blue) !important;
  }
/* v34 — force Customer Voice eyebrow to champagne gold over the global !important eyebrow rule */
  #customer-voice .sec-head > .eyebrow {
    color: #C9A96E !important;
  }
/* v35 — enlarge remaining section eyebrows by 20% and standardize champagne gold */
  #browse .sec-head > .step-eyebrow,
  #quick-path .sec-head > .step-eyebrow,
  #by-industry .sec-head > .step-eyebrow,
  #faq .sec-head > .eyebrow,
  #worth-knowing .wk-head-wrap > .eyebrow {
    color: #C9A96E !important;
    font-size: 14.4px !important;
  }
#browse .sec-head > .step-eyebrow .step-label,
  #quick-path .sec-head > .step-eyebrow .step-label,
  #by-industry .sec-head > .step-eyebrow .step-label {
    color: #C9A96E !important;
    font-size: 14.4px !important;
  }
/* Stretch the complete sample-kit section and its dark box edge to edge. */
  #samples.cta-band {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 64px 0 !important;
    border-radius: 0 !important;
  }
#samples .cta-box {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    padding: 79px clamp(28px, 6vw, 110px) !important;
    justify-items: center !important;
    text-align: center !important;
  }
#samples .cta-box > div:first-child {
    width: 100%;
    max-width: 660px;
    margin: 0 auto;
    text-align: center !important;
  }
#samples .cta-box .btn-row {
    justify-content: center !important;
  }
#samples .cta-photo {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
  }
/* Champagne-gold eyebrow and 5% black headline. */
  #samples .cta-box .eyebrow {
    color: #C9A96E !important;
  }
#samples .cta-box h2 {
    color: #F2F2F2 !important;
  }
#samples .cta-box p {
    color: rgba(255,255,255,.74) !important;
  }


  @media (max-width: 900px) {
#samples .cta-box {
      padding: 59px 24px !important;
    }
}


@media (max-width: 1100px) {

}


  @media (max-width: 900px) {

}
/* Sample kit: remove the tinted outer bands above and below the dark section. */
  #samples.cta-band {
    padding: 0 !important;
    background: #14181D !important;
  }
/* Design help: full-width, centered presentation. */
  #design-help.route-band {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 56px 0 !important;
    background: linear-gradient(135deg, #F4F8FB 0%, #FFFFFF 50%, #EDF7F4 100%) !important;
  }
#design-help .route-box {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 48px clamp(28px, 6vw, 110px) !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 26px !important;
  }
#design-help .route-box > div:first-child {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    text-align: center;
  }
#design-help .route-box .eyebrow {
    color: #C9A96E !important;
  }
#design-help .route-box p {
    max-width: 650px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
#design-help .route-box .btn-row {
    justify-content: center !important;
    margin-top: 0 !important;
  }
/* ===== Quick Answers — the OVERVIEW SKIN on the shared FAQ component =====
   Rebuilt 2026-07-18 (owner-caught). The overview FAQ now renders through
   inc/page/faq.php like every other non-product page, so the markup here is the
   component's own `<details><summary>` + `.faq-a` — NOT the hand-rolled
   div/h3/p accordion this wave first shipped. What stays overview-specific is
   only the LOOK: a two-column grid of cards instead of a single-column list.

   Native <details> gives closed-until-clicked, keyboard access and a focusable
   control for free, which is why the mechanism is shared and only the skin is not.

   NOTE the mockup showed a 2-line clamped ANSWER TEASER under each question. That
   is a third behaviour, unlike anything else on the site, and the owner asked for
   the site standard instead — question only until opened. */
#faq .faq-grid {
    max-width: 1180px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    margin: 0 auto !important;
    /* Without this, a CLOSED card beside an OPEN one stretches to the open card's
       height and leaves a large dead gap under its question (owner screenshot). */
    align-items: start !important;
  }
#faq .faq-grid > details {
    position: relative;
    /* Uniform CLOSED height (owner-caught 2026-07-18): a one-line question made a
       65px card, a two-line question 89px, so a short card left ~24px of dead space
       beside its taller row-partner. Sizing every closed card to the two-line height
       removes the gap WITHOUT reordering questions by length — which would only hold
       at one viewport width, since wrap count changes as the column narrows.
       min-height, not height: an OPEN card still grows past it, and a question that
       wraps to three lines on a narrow column is not clipped. */
    min-height: 89px;
    padding: 20px 20px 4px !important;
    border: 1px solid var(--line) !important;
    border-radius: 18px !important;
    background: var(--white) !important;
    box-shadow: 0 10px 28px rgba(20,24,29,.045);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  }
#faq .faq-grid > details:hover,
  #faq .faq-grid > details:focus-within {
    border-color: rgba(0,194,255,.7) !important;
    box-shadow: 0 14px 34px rgba(0,194,255,.10);
    transform: translateY(-1px);
  }
#faq .faq-grid > details[open] {
    border-color: rgba(0,194,255,.75) !important;
    box-shadow: 0 16px 38px rgba(0,194,255,.11);
  }
#faq .faq-grid > details > summary {
    list-style: none;
    cursor: pointer;
    display: block;
    position: relative;
    padding: 0 40px 16px 0;
    margin: 0;
    font-family: inherit;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.02em;
    color: var(--ink);
  }
#faq .faq-grid > details > summary::-webkit-details-marker { display: none; }
#faq .faq-grid > details > summary::after {
    content: "+";
    position: absolute;
    top: -2px;
    right: 0;
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    color: var(--blue-dark);
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
  }
#faq .faq-grid > details[open] > summary::after { content: "\2212"; }
#faq .faq-grid > details > summary:hover { color: var(--blue-dark); }
#faq .faq-grid > details .faq-a { padding-bottom: 16px; }
#faq .faq-grid > details .faq-a > p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: var(--body) !important;
  }
#faq .faq-grid > details .faq-a > p + p { margin-top: 12px !important; }
#faq .faq-grid > details .faq-a a { color: var(--blue-dark); font-weight: 700; }
  @media (max-width: 760px) {
#faq .faq-grid { grid-template-columns: 1fr !important; }
}
/* v45 — right-side sticky product explorer */
  .product-jump {
    position: fixed;
    top: 156px;
    right: clamp(18px, 2.35vw, 44px);
    z-index: 72;
    width: 184px;
    padding: 0;
    color: #14181D;
    font-family: Manrope, Helvetica, Arial, sans-serif;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
  }
.product-jump.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
.product-jump-title {
    margin: 0 0 12px;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 500;
    letter-spacing: -.015em;
    text-align: right;
    white-space: nowrap;
  }
.product-jump-items {
    display: grid;
    gap: 13px;
  }
.product-jump-item {
    appearance: none;
    width: 100%;
    min-height: 26px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #14181D;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 13px;
    font: inherit;
    cursor: pointer;
  }
.product-jump-label {
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    white-space: nowrap;
    transform: translateX(7px);
    font-size: 13px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: -.01em;
    transition: max-width .24s ease, opacity .18s ease, transform .24s ease;
  }
.product-jump-item.is-active .product-jump-label {
    max-width: 112px;
    opacity: 1;
    transform: translateX(0);
    font-weight: 800;
  }
.product-jump-dot {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    border-radius: 50%;
    border: 1.5px solid #14181D;
    background: rgba(255,255,255,.78);
    box-shadow: 0 0 0 3px rgba(255,255,255,.55);
    transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
  }
.product-jump-item:hover .product-jump-dot,
  .product-jump-item:focus-visible .product-jump-dot {
    transform: scale(1.08);
    border-color: #00AEEA;
  }
.product-jump-item.is-active .product-jump-dot {
    background: #00AEEA;
    border-color: #00AEEA;
    box-shadow: 0 0 0 3px rgba(255,255,255,.65), 0 6px 16px rgba(0,174,234,.22);
  }
.product-jump-item:focus-visible {
    outline: 2px solid rgba(0,174,234,.55);
    outline-offset: 5px;
    border-radius: 4px;
  }
#signature-9-start,
  #browse,
  #quick-path,
  #by-industry {
    scroll-margin-top: 98px;
  }

  @media (max-width: 1180px) {
.product-jump {
      right: 14px;
      width: 160px;
    }
}

  @media (max-width: 820px) {
.product-jump {
      top: auto;
      right: 14px;
      bottom: 20px;
      width: 154px;
      padding: 11px 12px 12px;
      border: 1px solid rgba(20,24,29,.10);
      border-radius: 16px;
      background: rgba(255,255,255,.92);
      backdrop-filter: blur(16px);
      box-shadow: 0 16px 44px rgba(20,24,29,.13);
    }
.product-jump-title { font-size: 11px; margin-bottom: 8px; }
.product-jump-items { gap: 8px; }
.product-jump-label { font-size: 11px; }
.product-jump-dot { width: 12px; height: 12px; flex-basis: 12px; }
}
/* v46's body{padding-bottom:92px} (sticky-CTA clearance) REMOVED 2026-07-20
   (owner-directed): it painted a light body-background band BELOW the dark
   footer on every overview page. The footer is the last thing on the page;
   the floating hero-sticky-cta simply overlays the footer edge at page end,
   same as the product pages' sticky tray. */
.best-for-section{
    --blue:#00C2FF;
    --blue-dark:#008DBC;   /* unified 2026-08-14 (was #008DBA) */
    --gold:#C9A96E;
    --gold-light:#E8C99A;
    --ink:#11151A;
    --body:#4F5967;
    --muted:#7D8794;
    --line:#E2E7EC;        /* unified 2026-08-14 (was #DDE4EC) */
    --panel:#F1F4FA;
    --white:#FFFFFF;
    --black:#080A0D;
    --radius-xl:30px;
    --radius-lg:20px;
    --shadow:0 26px 80px rgba(17,25,40,.12);
    --font:Manrope,Helvetica,Arial,sans-serif;
  }
.best-for-section button, .best-for-section a{font:inherit}
.best-for-section{
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(circle at 92% 12%, rgba(0,194,255,.10), transparent 24%),
      radial-gradient(circle at 8% 88%, rgba(201,169,110,.12), transparent 25%),
      var(--panel);
    padding:96px 28px 104px;
  }
.best-for-section::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(17,21,26,.055) .8px, transparent .8px);
    background-size:22px 22px;
    opacity:.24;
    pointer-events:none;
  }
.best-for-section .best-for-wrap{
    position:relative;
    z-index:1;
    max-width:1440px;
    margin:0 auto;
  }
.best-for-section .section-head{
    max-width:900px;
    margin-bottom:44px;
  }
.best-for-section .eyebrow{
    color:var(--gold);
    font-size:12px;
    line-height:1;
    font-weight:900;
    letter-spacing:.24em;
    text-transform:uppercase;
    margin-bottom:16px;
  }
.best-for-section h2{
    margin:0;
    max-width:920px;
    font-size:clamp(36px,4vw,62px);
    line-height:1.02;
    letter-spacing:-.052em;
  }
.best-for-section .intro{
    max-width:790px;
    margin:22px 0 0;
    color:var(--body);
    font-size:clamp(17px,1.45vw,21px);
    line-height:1.6;
  }
.best-for-section .experience{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(520px,.98fr);
    gap:24px;
    align-items:stretch;
  }
.best-for-section .feature-stage{
    position:relative;
    min-height:650px;
    overflow:hidden;
    border-radius:var(--radius-xl);
    color:#fff;
    background:
      radial-gradient(circle at 78% 18%, rgba(201,169,110,.30), transparent 24%),
      radial-gradient(circle at 18% 82%, rgba(0,194,255,.20), transparent 27%),
      linear-gradient(145deg,#07090c 0%,#171b20 54%,#080a0d 100%);
    box-shadow:var(--shadow);
    border:1px solid rgba(255,255,255,.08);
  }
.best-for-section .feature-stage::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.08) 46%,transparent 58%);
    background-size:220% 100%;
    animation:stageShine 7s ease-in-out infinite;
  }
@keyframes stageShine{
    0%,22%{background-position:180% 0}
    75%,100%{background-position:-120% 0}
  }
.best-for-section .stage-topline{
    position:absolute;
    top:28px;
    left:30px;
    right:30px;
    z-index:5;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
  }
.best-for-section .stage-label{
    display:flex;
    align-items:center;
    gap:10px;
    color:rgba(255,255,255,.64);
    font-size:11px;
    font-weight:900;
    letter-spacing:.17em;
    text-transform:uppercase;
  }
.best-for-section .stage-label::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 18px rgba(0,194,255,.65);
  }
.best-for-section .stage-count{
    color:var(--gold-light);
    font-size:12px;
    font-weight:900;
    letter-spacing:.14em;
  }
.best-for-section .visual-world{
    position:absolute;
    inset:0;
    transition:opacity .25s ease, transform .35s ease;
  }
.best-for-section .visual-world.is-changing{opacity:.15;transform:scale(.985)}
.best-for-section .desk-plane{
    position:absolute;
    left:8%;
    right:8%;
    top:19%;
    bottom:28%;
    border-radius:28px;
    background:
      linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.015)),
      linear-gradient(135deg,#171b20,#0a0c0f);
    border:1px solid rgba(255,255,255,.08);
    transform:perspective(900px) rotateX(8deg) rotateZ(-2deg);
    box-shadow:0 42px 90px rgba(0,0,0,.34);
  }
.best-for-section .ambient-ring{
    position:absolute;
    width:360px;
    height:360px;
    right:-95px;
    top:95px;
    border-radius:50%;
    border:1px solid rgba(201,169,110,.22);
    box-shadow:inset 0 0 90px rgba(201,169,110,.05);
  }
.best-for-section .ambient-line{
    position:absolute;
    left:9%;
    top:28%;
    width:29%;
    height:1px;
    background:linear-gradient(90deg,var(--blue),transparent);
    opacity:.72;
  }
.best-for-section .card-stack{
    position:absolute;
    width:58%;
    aspect-ratio:1.75/1;
    left:22%;
    top:26%;
    transform:rotate(-8deg);
    filter:drop-shadow(0 38px 42px rgba(0,0,0,.45));
  }
.best-for-section .silk-card{
    position:absolute;
    inset:0;
    border-radius:22px;
    background:linear-gradient(145deg,#fafafa,#dfe5ea 58%,#f9fafb);
    border:1px solid rgba(255,255,255,.8);
    overflow:hidden;
  }
.best-for-section .silk-card.back-1{transform:translate(20px,22px);opacity:.32}
.best-for-section .silk-card.back-2{transform:translate(10px,11px);opacity:.58}
.best-for-section .silk-card.front{z-index:3}
.best-for-section .silk-card.front::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(116deg,transparent 26%,rgba(255,255,255,.92) 45%,transparent 62%);
    opacity:.55;
  }
.best-for-section .card-mark{
    position:absolute;
    left:9%;
    top:18%;
    width:54px;
    height:54px;
    border:2px solid var(--accent,var(--gold-light));
    border-radius:50%;
    box-shadow:0 0 20px color-mix(in srgb, var(--accent,var(--gold-light)) 35%, transparent);
  }
.best-for-section .card-mark::before, .best-for-section .card-mark::after{
    content:"";
    position:absolute;
    background:var(--accent,var(--gold-light));
    opacity:.9;
  }
.best-for-section .card-mark::before{width:26px;height:2px;left:12px;top:24px}
.best-for-section .card-mark::after{height:26px;width:2px;left:24px;top:12px}
.best-for-section .card-copy{
    position:absolute;
    left:9%;
    right:9%;
    bottom:17%;
  }
.best-for-section .card-name{
    color:#101318;
    font-size:clamp(17px,1.65vw,27px);
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
  }
.best-for-section .card-role{
    color:#5d6874;
    margin-top:8px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
  }
.best-for-section .card-foil-line{
    position:absolute;
    left:9%;
    right:9%;
    bottom:9%;
    height:3px;
    border-radius:99px;
    background:linear-gradient(90deg,transparent,var(--accent,var(--gold-light)),#fff,var(--accent,var(--gold-light)),transparent);
  }
/* PHOTO MODE (T0-01 pilot, 2026-07-23) — real audience photography replaces the
   illustrated card-stack. Only present when inc/page/overview/by-industry.php's
   'has-photo' gate fires; the plain desk-plane/card-stack rules above are
   untouched and still govern every page that doesn't opt in. The photo sits
   inset within the SAME desk-plane box (framed like a photograph on the desk),
   inheriting desk-plane's perspective tilt + every breakpoint's box via the
   parent's own responsive left/right/top/bottom rules — no separate per-photo
   breakpoints needed. */
.best-for-section .visual-world.has-photo .desk-plane{overflow:hidden}
.best-for-section .audience-photo{
    position:absolute;
    inset:12px;
    width:calc(100% - 24px);
    height:calc(100% - 24px);
    object-fit:cover;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 18px 40px rgba(0,0,0,.38);
  }
.best-for-section .stage-copy{
    position:absolute;
    z-index:6;
    left:34px;
    right:34px;
    bottom:34px;
    padding:28px 30px 27px;
    border-radius:22px;
    background:rgba(6,8,11,.72);
    backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.11);
    box-shadow:0 20px 50px rgba(0,0,0,.20);
  }
.best-for-section .stage-kicker{
    color:var(--gold-light);
    font-size:11px;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:10px;
  }
.best-for-section .stage-title{
    margin:0;
    color:#fff;
    font-size:clamp(28px,2.5vw,42px);
    line-height:1.03;
    letter-spacing:-.048em;
  }
.best-for-section .stage-promise{
    margin:12px 0 0;
    max-width:650px;
    color:rgba(255,255,255,.70);
    font-size:15px;
    line-height:1.58;
  }
.best-for-section .stage-link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-top:18px;
    color:var(--blue);
    text-decoration:none;
    font-size:13px;
    font-weight:900;
  }
.best-for-section .stage-link span{transition:transform .2s ease}
.best-for-section .stage-link:hover span{transform:translateX(4px)}
.best-for-section .audience-panel{
    border-radius:var(--radius-xl);
    padding:18px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.86);
    box-shadow:0 22px 60px rgba(30,45,65,.08);
    backdrop-filter:blur(16px);
  }
.best-for-section .audience-grid{
    height:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(4,minmax(0,1fr));
    gap:12px;
  }
.best-for-section .audience-item{
    position:relative;
    min-height:136px;
    padding:19px 20px 18px;
    text-align:left;
    border-radius:16px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.90);
    color:var(--ink);
    cursor:pointer;
    overflow:hidden;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease,color .22s ease;
  }
.best-for-section .audience-item::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    height:3px;
    width:100%;
    background:var(--blue);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .25s ease;
  }
.best-for-section .audience-item:hover{
    transform:translateY(-3px);
    border-color:rgba(0,194,255,.48);
    box-shadow:0 16px 34px rgba(0,194,255,.10);
  }
.best-for-section .audience-item.active{
    color:#fff;
    background:linear-gradient(145deg,#0b0e12,#171c22);
    border-color:#131820;
    box-shadow:0 20px 44px rgba(12,18,28,.24);
  }
.best-for-section .audience-item.active::after{transform:scaleX(1)}
.best-for-section .item-meta{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:15px;
  }
.best-for-section .item-number{
    color:var(--gold);
    font-size:11px;
    font-weight:900;
    letter-spacing:.12em;
  }
.best-for-section .item-tag{
    color:var(--muted);
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
  }
.best-for-section .audience-item.active .item-number{color:var(--blue)}
.best-for-section .audience-item.active .item-tag{color:rgba(255,255,255,.48)}
.best-for-section .item-title{
    margin:0;
    font-size:17px;
    line-height:1.14;
    letter-spacing:-.035em;
    font-weight:900;
  }
.best-for-section .item-outcome{
    margin:8px 0 0;
    color:#707b88;
    font-size:12px;
    line-height:1.45;
    font-weight:700;
  }
.best-for-section .audience-item.active .item-outcome{color:rgba(255,255,255,.62)}
.best-for-section .item-arrow{
    position:absolute;
    top:18px;
    right:18px;
    color:#a6afb9;
    font-weight:900;
    transition:transform .2s ease,color .2s ease;
  }
.best-for-section .audience-item:hover .item-arrow{transform:translateX(3px);color:var(--blue-dark)}
.best-for-section .audience-item.active .item-arrow{color:var(--blue)}

@media(max-width:1100px){
.best-for-section .experience{grid-template-columns:1fr}
.best-for-section .feature-stage{min-height:620px}
.best-for-section .audience-grid{grid-template-rows:none}
.best-for-section .audience-item{min-height:130px}
}

@media(max-width:700px){
.best-for-section{padding:74px 18px 82px}
.best-for-section .section-head{margin-bottom:30px}
.best-for-section .feature-stage{min-height:610px;border-radius:24px}
.best-for-section .stage-topline{left:22px;right:22px;top:22px}
.best-for-section .desk-plane{left:3%;right:3%;top:21%;bottom:35%}
.best-for-section .card-stack{width:78%;left:11%;top:28%}
.best-for-section .audience-photo{inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);border-radius:16px}
.best-for-section .stage-copy{left:16px;right:16px;bottom:16px;padding:22px 20px}
.best-for-section .audience-panel{padding:10px;border-radius:24px}
.best-for-section .audience-grid{grid-template-columns:1fr;gap:10px}
.best-for-section .audience-item{min-height:118px}
}
/* Overview By Industry: 9 items — auto rows, 9th spans full width */
.best-for-section .audience-grid{grid-template-rows:none;grid-auto-rows:minmax(116px,1fr)}
.best-for-section .audience-item{min-height:116px}
.best-for-section .audience-item:nth-child(9){grid-column:1 / -1}

@media(max-width:1100px){
.best-for-section .audience-item:nth-child(9){grid-column:auto}
}
/* Henry v70: kill the Overview #by-industry{max-width:1500px}
cap so the section is full-bleed
   (background spans full screen width, matching the Silk Who-It's-For band). ID+class specificity beats the group ID rule. */
.best-for-section#by-industry{max-width:none;margin-left:0;margin-right:0;width:100%}
/* Henry v69: By-Industry eyebrow -> champagne gold (beats global .eyebrow !important); center header to page */
.best-for-section .eyebrow{color:#C9A96E !important;justify-content:center}
.best-for-section .section-head{max-width:960px;margin-left:auto;margin-right:auto;text-align:center}
.best-for-section .section-head h2{max-width:none;margin-left:auto;margin-right:auto}
.best-for-section .intro{max-width:820px;margin-left:auto;margin-right:auto}
/* Henry v72: Browse Everything head — center the Material/Finish selector in the header row
   (text block left, selector horizontally centered, ≥60px gap), vertically centered; stacks on mobile. */
#browse .browse-head{display:grid !important;grid-template-columns:1fr auto 1fr !important;align-items:center !important;column-gap:60px !important;row-gap:22px !important}
#browse .browse-head .sec-head{grid-column:1 !important;justify-self:start;min-width:0}
#browse .browse-head .sec-head h2{margin-left:0 !important;margin-right:0 !important}
#browse .browse-head .sec-head p{margin-left:0 !important;margin-right:0 !important}
#browse .browse-head .browse-tabs-wrap{grid-column:2 !important;justify-self:center;flex:0 0 auto}

@media (max-width:860px){
#browse .browse-head{display:flex !important;flex-direction:column !important;align-items:flex-start !important;row-gap:24px !important}
}
/* Shop-By Bar label — left-justified to the Card Stock dropdown */
.shop-by-bar .shop-by-label{ text-align:left; margin:0 0 12px; font-family:inherit; font-size:13px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--ink); }
/* Shop-By Bar — sticky just below the main nav on scroll (--sbTop = nav height, set by JS) */
.shop-by-bar{ position:sticky !important; top:var(--sbTop,80px); z-index:19; background:var(--white) !important; transition:box-shadow .25s ease; }
.shop-by-bar.is-stuck{ box-shadow:0 8px 20px rgba(20,24,29,.09); border-bottom:1px solid var(--line); }

/* below tablet the bar stacks (2→1 col) and would eat the viewport if pinned — keep it static there */
@media (max-width:820px){
.shop-by-bar{ position:static !important; }
.shop-by-bar.is-stuck{ box-shadow:none; border-bottom:none; }
}
/* room to show the full 9-item Industry list (and 10-item Card Stock) without scrolling */
.shop-by-bar .filter-menu{ max-height:440px !important; }
/* ============================================================
   Browse Everything (#browse) — v60
   Full-width white · title-left / segmented-tabs-right · image tiles
   Label TOP-LEFT · Customize badge BOTTOM-LEFT (from #families)
   ============================================================ */
.browse-band{ background:var(--white) !important; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:0 !important; }
#browse{ max-width:none !important; margin:0 !important; padding:clamp(58px,6vw,98px) clamp(16px,2.5vw,48px) !important; }
/* header row */
#browse .browse-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px 32px; margin:0 0 clamp(26px,3vw,44px); flex-wrap:wrap; }
#browse .sec-head{ text-align:left !important; max-width:none !important; margin:0 !important; }
#browse .step-eyebrow{ margin-bottom:14px !important; gap:0 !important; }
#browse .step-label{ color:var(--gold-ink) !important; }
#browse .sec-head h2{ text-align:left !important; max-width:none !important; margin:0 !important; font-size:clamp(21px,2.8vw,36px) !important; line-height:1.06 !important; letter-spacing:-.02em !important; font-weight:800 !important; color:var(--ink) !important; }
#browse .sec-head p{ text-align:left !important; margin-top:14px !important; max-width:54ch !important; font-size:clamp(15px,1.2vw,17px) !important; color:var(--body) !important; line-height:1.5 !important; }
/* segmented tabs */
#browse .browse-tabs-wrap{ text-align:right; flex:0 0 auto; padding-bottom:4px; }
#browse .browse-tabs{ display:inline-flex; gap:4px; padding:5px; background:var(--soft) !important; border:1px solid var(--line) !important; border-radius:12px !important; margin:0 !important; }
#browse .tab-btn{ appearance:none; border:none; cursor:pointer; font-family:inherit; font-size:12.5px !important; font-weight:800 !important; letter-spacing:.11em !important; text-transform:uppercase; color:var(--muted) !important; background:transparent !important; padding:10px 20px !important; border-radius:9px !important; transition:background .18s ease,color .18s ease,box-shadow .18s ease; }
#browse .tab-btn:hover{ color:var(--ink) !important; }
#browse .tab-btn[aria-selected="true"]{ background:var(--white) !important; color:var(--ink) !important; box-shadow:0 1px 3px rgba(20,24,29,.12), inset 0 0 0 1.5px rgba(0,194,255,.92) !important; }
/* tile grid */
#browse .tab-panel[hidden]{ display:none; }
#browse .chip-grid{ display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important; gap:clamp(10px,1vw,16px) !important; }
#browse .chip{ position:relative; display:block !important; aspect-ratio:4/3; width:auto !important; min-height:0 !important; overflow:hidden; border:0 !important; border-radius:14px !important; padding:0 !important; background:#12161b !important; text-decoration:none; color:#fff; box-shadow:none !important; isolation:isolate; transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease; }
#browse .chip:hover{ transform:translateY(-3px) !important; box-shadow:0 14px 30px rgba(20,24,29,.16), 0 0 0 2px var(--blue) !important; }
/* media — LOCKED reference photo, cover-fit (dark fallback behind) */
#browse .chip .chip-media{ position:absolute; inset:0; z-index:0; display:block; background-color:#12161b; background-size:cover; background-position:center; transition:filter .45s ease, transform .5s ease; }
#browse .chip .chip-media .chip-product-image{ position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center; padding:clamp(12px,10%,30px); box-sizing:border-box; display:block; }
/* rest = deep veil (matches #families ~.42) → CLEARS on hover so the photo visibly lights up */
#browse .chip .chip-media::after{ content:""; position:absolute; inset:0; background:rgba(8,11,15,.42); opacity:1; transition:opacity .45s ease; }
#browse .chip:hover .chip-media::after{ opacity:0; }
#browse .chip:hover .chip-media{ filter:brightness(1.12) saturate(1.05); }
/* extra absolute lift on hover */

/* TOP scrim (label lives up top) — eases back on hover so the top brightens too, kept enough for legibility */
#browse .chip::before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; transition:opacity .45s ease; background:linear-gradient(to bottom, rgba(8,11,15,.90) 0%, rgba(8,11,15,.55) 24%, rgba(8,11,15,.12) 52%, rgba(8,11,15,0) 76%); }
#browse .chip:hover::before{ opacity:.72; }
/* label — TOP-LEFT */
#browse .chip .chip-body{ position:absolute; left:0; right:0; top:0; z-index:2; padding:13px 40px 14px 15px; display:block !important; pointer-events:none; }
#browse .chip .chip-name{ display:block !important; font-size:clamp(15px,1.15vw,18px) !important; font-weight:800 !important; letter-spacing:-.01em !important; color:#fff !important; text-shadow:0 1px 12px rgba(0,0,0,.55); }
#browse .chip .chip-line{ display:block !important; margin-top:3px !important; font-size:clamp(11.5px,.82vw,13px) !important; line-height:1.34 !important; color:rgba(255,255,255,.86) !important; text-shadow:0 1px 10px rgba(0,0,0,.45); }
/* tile-link arrow — TOP-RIGHT (points to the product page) */
#browse .chip .chip-arrow{ position:absolute; right:13px; top:12px; z-index:2; color:#fff !important; font-size:18px !important; font-weight:900 !important; line-height:1; flex:none !important; pointer-events:none; transition:transform .25s ease, color .25s ease; }
#browse .chip:hover .chip-arrow{ color:var(--blue) !important; transform:translateX(4px); }
/* full-cover product-page link (below badge) */
#browse .chip .chip-cover-link{ position:absolute; inset:0; z-index:5; display:block; font-size:0; color:transparent; text-decoration:none; }
/* Customize badge — BOTTOM-LEFT (ported from #families, scaled for the smaller tile) */
#browse .chip .customize-badge{ position:absolute; left:12px; bottom:12px; z-index:6; display:inline-flex; align-items:center; height:44px; width:44px; padding:0; background:#fff; color:var(--ink); border-radius:999px; box-shadow:0 5px 16px rgba(0,0,0,.28); overflow:hidden; white-space:nowrap; text-decoration:none; pointer-events:auto; transition:width .4s cubic-bezier(.2,.8,.2,1), color .25s ease, box-shadow .25s ease; }
#browse .chip .customize-badge .cb-icon{ flex:0 0 44px; width:44px; height:44px; display:grid; place-items:center; }
#browse .chip .customize-badge .cb-icon svg{ width:29px; height:29px; }
#browse .chip .customize-badge .cb-text{ font-size:12.5px; font-weight:700; letter-spacing:.01em; color:var(--blue); opacity:0; padding-right:18px; transition:opacity .22s ease .06s; }
#browse .chip .customize-badge:hover{ width:214px; color:var(--blue); box-shadow:0 8px 22px rgba(0,0,0,.30); }
#browse .chip .customize-badge:hover .cb-text{ opacity:1; }


/* responsive */
@media (max-width:1100px){
#browse .chip-grid{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
}

@media (max-width:820px){
#browse .browse-head{ align-items:flex-start; }
#browse .browse-tabs-wrap{ text-align:left; }
#browse .chip-grid{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}

@media (max-width:560px){
#browse .chip-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
#browse .chip{ aspect-ratio:5/4; }
}
/* ===== Photo slots — dev annotations off, empty slots say what they await =====
   Carried forward from henry_overview_cool.css (2026-07-18). The mockups'
   .slot-tag markers name each photo slot for the build; once a real photo lands
   they render ON TOP of it. Buyers never see them. An EMPTY slot instead states
   in plain English what it is waiting for (the T0-04 hang-tags pattern) — never
   a decorative placeholder, so a gap stays visible to everyone reviewing. */
.slot-tag { display: none !important; }
.await-note { position: absolute; inset: 0; z-index: 2; margin: 0; display: flex; align-items: center; justify-content: center; text-align: center; padding: 20px; font-size: 12.5px; line-height: 1.55; font-weight: 500; color: #5B6470; background: #EDF1F4; border: 1px dashed #C4CCD4; border-radius: inherit; }
.await-note strong { font-weight: 700; color: #14181D; }

/* await-note readability (2026-07-18, owner-caught): on a DARK band the section's
   own `#samples .cta-box p {color:#fff}` carries ID-level specificity and beat
   `.await-note`, painting white text on the note's light background — invisible.
   A class-only selector cannot win against an ID, and a `.await-note.await-note`
   doubling still loses, so the colors are pinned here.
   ASSUMES: .await-note is always a light-on-light overlay regardless of the band
   it sits in — if a dark-variant note is ever wanted, give it its own class. */
.await-note, .await-note span { color: #5B6470 !important; }
.await-note strong { color: #14181D !important; }

/* Line-split headings — UNIVERSAL (2026-07-18, owner-caught twice).
   `<span class="ln">` marks an author-intended line break inside a heading. The
   mockups style it PER SECTION (#samples, #families, …), so any section using
   .ln without a matching rule renders its spans inline and the words collide
   with no space: Alicia reported "judgedby" in one section (tracker 2026-07-08);
   after the v2 rebuild the same collision reappeared in #quick-path
   ("start?Pick"). A per-section rule cannot close that class — every new section
   is a fresh chance to forget. .ln is used ONLY inside headings (audited across
   all 5 pages), so scoping to headings is both safe and the actual meaning.
   ASSUMES: .ln never marks an inline fragment. If a future design wants one,
   give it a different class rather than narrowing this. */
h1 .ln, h2 .ln, h3 .ln { display: block; white-space: nowrap; }
@media (max-width: 600px){ h1 .ln, h2 .ln, h3 .ln { white-space: normal; } }

/* ============================================================================
   HERO CTA — shared block for the inc/page/overview/hero-cta.php component.

   ⚠️ THE BUILD CTA IS BLUE AT REST. This REVERSES the 2026-07-18 rule recorded
   here ("NO blue at rest… the same behavior as the product-page .btn-hero-ink"),
   owner-directed 2026-07-27 with screenshots: "review ctas. they should match
   the coloring of mockups and other pages."

   Measured before changing anything, because reversing a written owner rule
   needs evidence rather than a reading:
     · mockup T0-01 v72-LOCKED  → `.families-build-cta{background:var(--blue)
       !important; color:var(--obsidian) !important}` — blue at rest, and it
       shouts, so Henry meant it.
     · product page sticky tray → primary renders rgb(0,194,255) at rest,
       secondary rgba(255,255,255,.09). A blue primary, at rest.
     · overview pages (before)  → BOTH buttons rgba(255,255,255,.14) with the
       same border and text colour, i.e. two indistinguishable glass buttons
       and no primary at all.
   So the 2026-07-18 rule's own justification — parity with the product page —
   was not what the product page does, and the mockup disagreed with it too.

   The pair is now a real primary/secondary: BUILD blue-filled, SAMPLE glass.
   Both still go blue on hover, so the hover behaviour that rule wanted is kept.
   ========================================================================== */
.hero-cta-row { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:26px; }
.cta-glass, .families-build-cta, .families-sample-cta { display:inline-flex; align-items:center; justify-content:center; padding:14px 30px; border-radius:12px; border:1.5px solid rgba(20,24,29,.9); background:rgba(255,255,255,.14); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); color:var(--ink); font-family:inherit; font-weight:700; font-size:14px; letter-spacing:.01em; text-decoration:none; cursor:pointer; transition:background .25s ease, box-shadow .25s ease, border-color .25s ease, color .25s ease, transform .2s ease; }
.cta-glass:hover, .families-build-cta:hover, .families-sample-cta:hover,
.cta-glass:focus-visible, .families-build-cta:focus-visible, .families-sample-cta:focus-visible { background:var(--blue); border-color:var(--blue); color:var(--obsidian); box-shadow:0 0 0 4px rgba(0,194,255,.22), 0 8px 26px rgba(0,194,255,.40); transform:translateY(-2px); }
/* the PRIMARY of the pair — Henry's own rule, restored (see the block header). No !important
   needed here: this sits after the base rule and matches on the same single class, so ordering
   wins. The :hover rule above still applies to it, keeping the lift and the focus ring. */
.families-build-cta { background:var(--blue); border-color:rgba(20,24,29,.92); color:var(--obsidian); }
.hero-sticky-cta { position:fixed; left:50%; bottom:22px; transform:translateX(-50%) translateY(24px); z-index:60; display:flex; gap:12px; padding:12px; background:rgba(255,255,255,.72); -webkit-backdrop-filter:blur(16px) saturate(1.2); backdrop-filter:blur(16px) saturate(1.2); border:1px solid rgba(20,24,29,.10); border-radius:18px; box-shadow:0 18px 50px rgba(20,24,29,.18); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .3s ease, transform .35s cubic-bezier(.2,.8,.2,1); }
.hero-sticky-cta.show { opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); }
@media (max-width:480px) { .hero-sticky-cta { left:12px; right:12px; transform:translateY(24px); } .hero-sticky-cta.show { transform:translateY(0); } }

/* SAMPLES band — a real photo fills the visual slot. Element-selector on the
   img so each page's own class prefix (cta-photo-img / opo-photo / …) all
   behave the same; was a BC-only rule, which left T0-03's photo unsized. */
.cta-photo.has-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }

/* SAMPLES band — keep the await-note readable on its own light card. The
   dark-band text rule `#samples .cta-box p{color:rgba(255,255,255,.74)!important}`
   was bleaching the note white-on-white (owner-caught 2026-07-18). */
#samples .cta-box p.await-note { color:#5B6470 !important; }
#samples .cta-box .await-note strong { color:#14181D; }

/* ── FAMILIES card photo render — SINGLE-HOMED (owner-directed 2026-07-24) ──
   The families component (inc/page/overview/families.php) 'photo' mode emits a real
   <img class="family-photo"> — real photography, full-bleed cover. A transparent PNG
   product render (rare) uses class .family-product-image → contained on the gradient.
   These two rules OWN the render for every overview page so nothing diverges; per-page
   scoped .family-media img/.family-photo rules were removed 2026-07-24. Do NOT re-add an
   object-fit/padding override in a scoped sheet — set the mode in the page's data array
   ('photo' for dedicated photography, 'bg' for admin/S3 catalog thumbnails). */
#families .family-card .family-media .family-photo{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover !important; object-position:center; padding:0 !important; box-sizing:border-box; display:block; transition:filter .45s ease, transform .55s ease; }
#families .family-card .family-media .family-product-image{ position:absolute; inset:0; width:100%; height:100%; object-fit:contain !important; object-position:center; padding:clamp(20px,7%,60px); box-sizing:border-box; display:block; }

/* ─────────────────────────────────────────────────────────────────────────────
   FULL-WIDTH HERO BAND (.fw-hero) — single-homed here 2026-08-13.

   WHY THIS MOVED. This block was copy-pasted, byte-for-byte, into all FIVE
   per-page scoped sheets (bc / hangtags / other / plastic / stickers) and was
   absent from this shared one. It is the container for the SHARED hero-cta
   component, so five copies of its geometry is the same drift trap this sheet
   already closed for .family-photo (see the note above): a sixth overview page
   either duplicates the block again or — as all-products.php did on its first
   build — renders a hero with no max-width, running the headline edge to edge.

   ⚠️ THE FIVE EXISTING PAGES ARE DELIBERATELY NOT CHANGED BY THIS, AND CANNOT BE.
   Their scoped sheet loads AFTER this one (measured in-page: henry_overview_v2.css
   is stylesheet index 2, the scoped sheet index 3), so at equal specificity their
   own copy still wins. Verified after the change: all five still compute
   .fw-hero-inner at 1100px wide. This addition only reaches a page that has NO
   scoped sheet — which is exactly the case it exists to serve.

   The values are the siblings' values verbatim; nothing here is new design.
   When the five scoped copies are eventually deleted, this becomes the only one. */
.fw-hero{ padding:clamp(46px,6.5vw,100px) clamp(16px,4vw,44px) clamp(24px,3vw,42px); text-align:center; background:var(--white); }
.fw-hero-inner{ max-width:1100px; margin:0 auto; }
.fw-hero-title{ font-size:clamp(22px,3.1vw,46px); line-height:1.12; letter-spacing:-.03em; font-weight:800; color:var(--ink); margin:0 auto; max-width:none; }
.fw-hero-sub{ font-size:clamp(15px,1.5vw,20px); line-height:1.55; color:var(--muted); margin:20px auto 0; max-width:62ch; }

/* ─────────────────────────────────────────────────────────────────────────────
   SIGNATURE FAMILIES GRID (#families) — single-homed here 2026-08-13.

   WHY THIS MOVED, and it is the same story as .fw-hero above. This entire block
   was copy-pasted into all FIVE per-page scoped sheets and was absent from this
   shared one — verified byte-identical across bc / hangtags / other / plastic /
   stickers before moving it. #families is rendered by the SHARED component
   inc/page/overview/families.php, so its layout living in five per-page copies is
   the drift trap this sheet already closed for .family-photo and .fw-hero.

   ⭐ THE COST OF NOT HAVING IT HERE, measured: all-products.php (the sixth overview,
   built 2026-08-13) has no scoped sheet, so .family-grid fell back to display:block
   and its nine cards stacked full-width — a 12,239px-tall section instead of 1,008px.
   Nothing errored; the page simply rendered wrong.

   ⚠️ THE FIVE EXISTING PAGES ARE NOT CHANGED BY THIS AND CANNOT BE. Their scoped
   sheet loads AFTER this one (measured in-page: this file is stylesheet index 2,
   the scoped sheet index 3), so at equal specificity their own copy still wins.
   Re-verified on all five after the change.

   Values are the siblings' verbatim; nothing here is new design. The per-page
   T0-03 audience-grid tweak was deliberately NOT brought along — it is genuinely
   page-specific and belongs in that page's scoped sheet. */
/* ===== Signature Families — FULL-WIDTH 3x3 grid ===== */
#families{ max-width:none !important; margin:0 !important; padding-inline:clamp(16px,2.5vw,48px) !important; padding-top:clamp(20px,3vw,46px) !important; }
#families .families-intro{ max-width:none; margin:0; padding:0 0 clamp(16px,1.8vw,26px); text-align:left; }
#families .families-intro h2{ font-size:clamp(21px,2.8vw,36px) !important; line-height:1.06 !important; letter-spacing:-.02em; font-weight:800 !important; color:var(--ink); margin:0 !important; text-align:left !important; max-width:none !important; }
#families .family-grid{ width:100%; max-width:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(10px,1vw,16px); margin:0; }

/* SHORT ROWS CENTRE INSTEAD OF LEAVING A HOLE (added 2026-09-01, legacy-pages).
   The grid above is a fixed 3 columns, which is right for the six bespoke overviews --
   measured the same day, they render 9/9/6/6/6/6 cards, so they never produce a short row
   and these two rules can never apply to them. The GENERIC category overview
   (www/overview.php, the fallback behind every category with no bespoke page) is the first
   consumer that can: three of its four live categories sell exactly ONE product, so a
   single 486px tile sat alone against two empty thirds and read as a broken layout.
   :has() is the whole mechanism -- CSS cannot otherwise count children -- and where it is
   unsupported the grid simply keeps its current 3-column behaviour, which is the state
   these rules improve on rather than depend on. */
/* ⛔ GATED TO THE 3-COLUMN BREAKPOINT ON PURPOSE, and it is not cosmetic caution.
   :has() takes the specificity of its argument, so `#families .family-grid:has(>
   .family-card:first-child:last-child)` outranks the plain `#families .family-grid` inside
   the max-width:900px and max-width:560px blocks below -- an ungated version WINS INSIDE
   those media queries and pins a fixed 620px track on a 375px phone, taking the document
   sideways. That is the identical defect this lane fixed in .app-dash eleven days earlier
   (GOTCHAS #366), so it is a known trap, not a hypothetical. Below 901px the existing
   responsive rules already do the right thing without help: 2 columns, then 1 full-width
   column, which is what a short grid should look like on a narrow screen anyway.
   min(...,100%) is belt-and-braces so the track can never exceed its container. */
@media (min-width:901px){
  #families .family-grid:has(> .family-card:first-child:last-child){ grid-template-columns:minmax(0,min(620px,100%)); justify-content:center; }
  #families .family-grid:has(> .family-card:nth-child(2):last-child){ grid-template-columns:repeat(2,minmax(0,min(486px,100%))); justify-content:center; }
}
#families .family-card{ position:relative; aspect-ratio:1/1; min-height:0; overflow:hidden; display:block; padding:0; border:0; border-radius:12px; background:#12161b; box-shadow:none; isolation:isolate; transition:none; }
#families .family-card:hover{ transform:none; box-shadow:none; border-color:transparent; }
#families .family-card .family-media{ position:absolute; inset:0; width:100%; height:100%; min-height:0; margin:0; overflow:hidden; background:transparent; display:block; }
/* .family-photo / .family-product-image render is single-homed in henry_overview_v2.css (2026-07-24). */
#families .family-card .family-media::after{ content:""; position:absolute; inset:0; z-index:2; background:rgba(11,15,20,.42); opacity:1; transition:opacity .55s ease; }
#families .family-card:hover .family-media::after{ opacity:0; }
#families .family-card .family-media::before{ content:""; position:absolute; left:0; right:0; top:0; height:52%; z-index:3; background:linear-gradient(to bottom,rgba(8,11,15,.82) 0%,rgba(8,11,15,.34) 55%,rgba(8,11,15,0) 100%); pointer-events:none; }
#families .family-card .family-body{ position:absolute; top:40px; left:0; right:0; z-index:4; max-width:none; margin:0; padding:0 clamp(16px,2vw,26px); text-align:center; background:transparent; pointer-events:none; }
#families .family-card h3{ margin:0 0 8px; font-size:clamp(18px,1.5vw,24px); line-height:1.14; letter-spacing:-.02em; font-weight:750; color:#fff; text-shadow:0 1px 18px rgba(0,0,0,.5); }
#families .family-card .fam-emo{ max-width:34ch; margin:0 auto; font-size:clamp(12.5px,.95vw,14.5px); line-height:1.42; color:rgba(255,255,255,.85); text-shadow:0 1px 14px rgba(0,0,0,.45); }
#families .family-card .fam-spec{ display:none; }
#families .family-card .family-media .photo-slot-hint{ position:absolute !important; left:50% !important; top:50% !important; right:auto !important; bottom:auto !important; width:auto !important; height:auto !important; transform:translate(-50%,-50%) !important; z-index:4 !important; display:inline-block !important; color:rgba(255,255,255,.55) !important; background:rgba(255,255,255,.05) !important; border:1px dashed rgba(255,255,255,.3) !important; border-radius:100px !important; padding:7px 14px !important; font-size:10.5px !important; letter-spacing:.18em !important; text-transform:uppercase !important; font-weight:700 !important; backdrop-filter:none !important; white-space:nowrap !important; }

/* ===== Customize-this-Style badge (lower-left; circle → expands to capsule on hover) ===== */
#families .family-card .customize-badge{ position:absolute; left:16px; bottom:16px; z-index:6; display:inline-flex; align-items:center; height:55px; width:55px; padding:0; background:#fff; color:var(--ink); border-radius:999px; box-shadow:0 6px 20px rgba(0,0,0,.30); overflow:hidden; white-space:nowrap; text-decoration:none; pointer-events:auto; transition:width .4s cubic-bezier(.2,.8,.2,1), color .25s ease, box-shadow .25s ease; }
#families .family-card .customize-badge .cb-icon{ flex:0 0 55px; width:55px; height:55px; display:grid; place-items:center; }
#families .family-card .customize-badge .cb-icon svg{ width:37.5px; height:37.5px; }
#families .family-card .customize-badge .cb-text{ font-size:14px; font-weight:700; letter-spacing:.01em; color:var(--blue); opacity:0; padding-right:22px; transition:opacity .22s ease .06s; }
#families .family-card .customize-badge:hover{ width:252px; color:var(--blue); box-shadow:0 10px 26px rgba(0,0,0,.32); }
#families .family-card .customize-badge:hover .cb-text{ opacity:1; }
#families .family-card .card-cover-link{ position:absolute; inset:0; z-index:5; display:block; font-size:0; color:transparent; }

#families .family-card:nth-child(1) .family-media{ background:linear-gradient(150deg,#2b313a,#12161b 70%); }
#families .family-card:nth-child(2) .family-media{ background:linear-gradient(150deg,#332c25,#17130f 72%); }
#families .family-card:nth-child(3) .family-media{ background:linear-gradient(150deg,#2c2e31,#141517 72%); }
#families .family-card:nth-child(4) .family-media{ background:linear-gradient(150deg,#12202a,#0c1116 72%); }
#families .family-card:nth-child(5) .family-media{ background:linear-gradient(150deg,#20222a,#101115 72%); }
#families .family-card:nth-child(6) .family-media{ background:linear-gradient(150deg,#232a31,#12161b 72%); }
#families .family-card:nth-child(7) .family-media{ background:linear-gradient(150deg,#2a2330,#141018 72%); }
#families .family-card:nth-child(8) .family-media{ background:linear-gradient(150deg,#2a2926,#151412 72%); }
#families .family-card:nth-child(9) .family-media{ background:linear-gradient(150deg,#2b3036,#14171b 72%); }
@media (max-width:900px){ #families .family-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){ #families .family-grid{ grid-template-columns:1fr; } #families .family-card{ aspect-ratio:4/3; } }

/* 'coming soon' card treatment — generic, used by any overview. */
.family-card.is-soon{opacity:.78}
.family-card .soon-badge{display:inline-block;margin-left:8px;padding:3px 9px;border-radius:999px;background:rgba(201,169,110,.18);color:#9A7B41;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}

/* ==========================================================================
   BLACK-AND-WHITE PHOTO TREATMENT — overview pages (owner-directed 2026-08-14:
   "Overview pages need the black and white treatment, just like the product pages.")

   The product-page rule this mirrors lives in henry_fc.css (§ grayscale block):
   photos sit GREY at rest and come to COLOUR on hover.

   ⚑ WHICH SURFACES, and why it is these two and not every photo on the page.
   henry_fc.css applies it to the hero THUMB RAIL and the COMBO TILES — grids of many
   small photos — and deliberately leaves .fwh-stage, the single large hero image, in
   colour. The same line is drawn here: the two TILE GRIDS (#families, #browse) go
   grey-until-hover; single feature photography (#samples .cta-photo, the by-industry
   .audience-photo) stays in colour, because there is no hover-to-reveal interaction on
   a single large photo and greying it would just make the page look drained.
   If Henry wants those two greyed as well it is two more selectors here.

   ⚑ TRANSPARENT PRODUCT RENDERS ARE EXCLUDED (.family-product-image, .chip-product-image).
   Those are cut-out product renders, not photography — the same reason the product pages
   grey the photo and not the UI around it.

   ⚑ filter does NOT accumulate across rules — the winning declaration replaces the whole
   chain (see the identical warning in henry_fc.css). #browse already sets a hover filter
   of its own (brightness/saturate), which therefore REPLACES the grayscale and is what
   restores colour there; do not "fix" that by adding grayscale(0) to it.

   ⚑ Guarded by @media (hover:hover) exactly as henry_fc.css is: without it, a touch device
   — which can never hover — would be stuck showing every photo in grey permanently.

   Both grids already run a rest veil that clears on hover (.family-media::after and
   .chip-media::after) and both already carry `transition:filter` on the media element,
   so this stacks with the existing motion rather than fighting it.
   ========================================================================== */
@media (hover:hover){
  #families .family-card .family-media .family-photo{ filter:grayscale(1); }
  #families .family-card:hover .family-media .family-photo{ filter:grayscale(0); }

  #browse .chip .chip-media{ filter:grayscale(1); }
  /* colour restored by the pre-existing #browse .chip:hover .chip-media brightness/saturate rule */
}

/* ============================================================================
 * 3D PROOFER SHOWCASE — MOVED HERE 2026-08-19 from henry_bc-overview_v2.css, because a
 * SECOND overview page (plastic-cards) now hosts the same section. Single-homed: every
 * overview page loads this sheet, so a third consumer needs no CSS at all.
 * Markup: inc/page/overview/proofer-showcase.php. Mount/state JS + shared microcopy:
 * inc/page/proofer-embed.php. Handoff: HANDOFF-3dproofer-embed.md.
 *
 * TILE SHAPE CHANGED 2026-08-19 (owner-directed, item 2 of the handdn comparison): the
 * preset tiles were wide chips with a 56x56 thumbnail; they are now SQUARE PICTURE TILES
 * — photo on top, text beneath. The reason is not taste: a live rotatable 3D card in a
 * 56px box is technically working and practically pointless, so option C (spin on demand)
 * only pays off once the picture is big enough that someone would actually drag it.
 * ⚠️ The SDK renders at 8:5 inside whatever box it is given, so a square mount letterboxes
 * slightly. That is a deliberate trade for the owner's square tile, not an oversight.
 *
 * No font-weight:800/900 anywhere below; every bare-element selector added here (strong)
 * asserts its own font-weight.
 * ========================================================================== */
/* 900px, up from 680 (owner-directed 2026-08-25: "enlarge the renderer") — the tiles
   shrank to one row at the same time, so the section trades tile size for card size. */
.proofer-stage{ max-width:900px; margin:0 auto; }
.proofer-stage-box{
  position:relative; /* MOBILE SEAM: a future tap-to-activate overlay is one absolutely-
                         positioned child of this box — no rewrite needed to add it. */
  width:100%; aspect-ratio:8/5; border-radius:20px; overflow:hidden;
  /* FLOATING STAGE — owner-directed 2026-08-24 round 4 ("do we need the box or can we
     just have the image float in the background?"), superseding his 2026-08-20 "always
     gray" call: the SDK is mounted background:'transparent' (inc/page/proofer-embed.php),
     so with no background here the 3D card floats on the page itself, handdn-style. The
     box element stays for aspect-ratio/layout and the mobile-overlay seam — it just
     paints nothing. ⚠️ The section ground must stay LIGHT: frosted/clear plastic read as
     grey mud on a dark ground (vendor-verified) — if a dark band ever hosts this
     section, restore a light background here. The FALLBACK PHOTO keeps its own rounded
     look below because a photograph has edges; the 3D card does not. */
  background:transparent; box-shadow:none;
}
.proofer-stage-box .proofer-photo{ border-radius:20px; }
.proofer-stage-box .proofer-photo{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  transition:opacity .18s ease; opacity:1;
}
.proofer-stage-box .proofer-mount{
  position:absolute; inset:0; opacity:0; transition:opacity .18s ease;
}
/* [data-proofer-state] is set by window.ProoferEmbed.mount() (inc/page/proofer-embed.php)
 * — "loading" (default, on page load) / "ready" (SDK fired ready) / "failed" (loader never
 * loaded, viewer errored, or a 9s safety timeout elapsed with no ready/error). On failure
 * there is deliberately no error string (handoff copy spec): both captions below simply
 * stay hidden and the photo — already on screen the whole time — never changes. */
.proofer-stage[data-proofer-state="ready"] .proofer-photo{ opacity:0; }
.proofer-stage[data-proofer-state="ready"] .proofer-mount{ opacity:1; }
.proofer-stage.is-changing .proofer-photo{ opacity:.35; }

.proofer-stage .sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* ACTIVE BUILD NAME — ABOVE the card (owner-directed 2026-08-19, item 3 of the handdn
   comparison: handdn puts the style name over the render; ours used to sit underneath).
   It is the same element and the same strings — only its place in the DOM moved. */
.proofer-active-label{
  margin:0 0 10px; text-align:center; font-size:17px; color:var(--ink);
}
.proofer-active-label strong{ font-weight:700; }
.proofer-active-label span{ color:var(--muted); }

.proofer-stage-caption{ text-align:center; margin-top:10px; min-height:22px; }
/* (The .proofer-hint "Drag to turn it." caption was removed by the owner 2026-08-25 —
   nothing renders in the ready state's caption slot any more; the sr-only companion
   carries the rotation instruction for assistive tech.) */
.proofer-loading{ margin:0; font-size:14px; color:var(--muted); display:none; }
.proofer-stage[data-proofer-state="loading"] .proofer-loading{ display:block; }

.proofer-presets{ margin-top:20px; }
.proofer-presets-caption{
  text-align:center; font-size:13.5px; font-weight:600; color:var(--muted);
  text-transform:uppercase; letter-spacing:.05em; margin:0 0 16px;
}
/* ONE ROW on desktop (owner-directed 2026-08-25: "make the cards smaller, so they fit
   on 1 line"): nowrap + flex:1 keeps every tile on a single line at any desktop width —
   they share the row evenly and cap at 118px, so 10 tiles (the biggest group) fit a
   1236px section with room to spare. Phones keep the wrapping 2-up grid (below). */
.proofer-preset-row{ display:flex; gap:12px; flex-wrap:nowrap; justify-content:center; }
/* SQUARE PICTURE TILE. The button is a vertical card: full-bleed square photo on top,
   two lines of text beneath. Padding is 8px and the media is the button's full inner
   width — the live mount below is positioned off those same two facts, so if either
   changes, change the mount with it. */
.proofer-preset{
  display:flex; flex-direction:column; gap:8px; width:100%;
  padding:8px 8px 12px; background:var(--white); border:1px solid var(--line);
  border-radius:16px; cursor:pointer; text-align:center; font-family:inherit;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.proofer-preset:hover{ border-color:var(--blue); box-shadow:0 10px 24px rgba(0,194,255,.10); transform:translateY(-2px); }
.proofer-preset.is-active{ border-color:var(--blue-dark); box-shadow:0 0 0 2px var(--blue-dark); }
.proofer-preset-media{
  display:block; width:100%; aspect-ratio:1; border-radius:11px;
  background-size:cover; background-position:center;
}
.proofer-preset-body{ display:flex; flex-direction:column; min-width:0; padding:0 4px; }
/* clamp, not a fixed size: the one-row tiles shrink with the viewport (87px cells at
   1024) and a fixed 14px clipped the longest single word ("Uncoated", measured 66px
   against a 61px box). 1.1vw ≈ 11.3px at 1024 / 14px from ~1273px up. */
.proofer-preset-name{ font-size:clamp(11.5px,1.1vw,14px); font-weight:700; color:var(--ink); line-height:1.25; }
.proofer-preset-sub{ font-size:12.5px; color:var(--muted); margin-top:2px; }

/* SPIN ON DEMAND — owner decision 2026-08-19 (/proofer-spin-decision/, option C).
   The CELL is the flex child (it owns the sizing the button used to) and is the
   positioning context for the live mount. The mount is a SIBLING of the button, never a
   child: an <iframe> inside a <button> is interactive content nested in a control.
   The mount covers exactly the media square — its inset is the button's 8px padding and
   its shape is the media's aspect-ratio:1. */
.proofer-preset-cell{ position:relative; display:flex; flex:1 1 0; min-width:0; max-width:118px; }
.proofer-preset-cell > .proofer-preset{ width:100%; min-width:0; }
.proofer-preset-cell > .proofer-mount{
  position:absolute; top:9px; left:9px; right:9px; aspect-ratio:1;
  border-radius:11px; overflow:hidden; z-index:1;
  /* Same grey as the big stage, deliberately: a tile going live under the cursor must not
     visibly change colour. Both read --soft, so they cannot drift. */
  background:var(--soft);
  opacity:0; pointer-events:none; transition:opacity .18s ease;
}
.proofer-preset-cell > .proofer-mount iframe{ width:100%; height:100%; border:0; display:block; }
/* Only a tile that actually reached 'ready' reveals its viewer. 'idle', 'loading' and
   'failed' all keep the static photo showing — an evicted tile returns to exactly the
   state it had before it was ever live, which is why eviction is invisible rather than
   broken. Same reasoning as the big stage above. */
.proofer-preset-cell[data-proofer-state="ready"] > .proofer-mount{ opacity:1; pointer-events:auto; }
.proofer-preset-cell[data-proofer-state="ready"] .proofer-preset-media{ opacity:0; }
.proofer-preset-media{ transition:opacity .18s ease; }

@media(max-width:640px){
  /* Two per row on a phone rather than one squeezed line: the picture stays big enough
     to read. flex:0 0 auto puts the width back in charge (the desktop one-row rule's
     flex-basis 0 would otherwise override it). */
  .proofer-preset-row{ gap:10px; flex-wrap:wrap; }
  .proofer-preset-cell{ flex:0 0 auto; width:calc(50% - 5px); max-width:200px; }
  .proofer-active-label{ font-size:15px; }
}

/* ============================================================
   PROOFER SHOWCASE — full-collection expansion (2026-08-24)
   The old #browse header + pill toggle, kept per the owner and re-homed inside
   #proofer-showcase where the toggle filters the preset row. Visuals mirror the
   #browse-scoped pill rules above; re-declared here because those key on
   [aria-selected] under #browse and these buttons are aria-pressed filters.
   Every rule asserts its own font-weight (no new 800/900 — de-bold standard).
   ============================================================ */
#proofer-showcase .proofer-browse-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px 32px; flex-wrap:wrap; margin:0 0 clamp(16px,1.8vw,26px); }
#proofer-showcase .proofer-browse-head .sec-head{ text-align:left; margin:0; max-width:none; }
#proofer-showcase .proofer-browse-head .sec-head h2{ margin-left:0; margin-right:0; }
#proofer-showcase .proofer-browse-head .sec-head p{ margin-left:0; margin-right:0; }
#proofer-showcase .browse-tabs-wrap{ text-align:right; flex:0 0 auto; padding-bottom:4px; }
#proofer-showcase .browse-tabs{ display:inline-flex; gap:4px; padding:5px; background:var(--soft); border:1px solid var(--line); border-radius:12px; margin:0; }
#proofer-showcase .tab-btn{ appearance:none; border:none; cursor:pointer; font-family:inherit; font-size:12.5px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; color:var(--muted); background:transparent; padding:10px 20px; border-radius:9px; transition:background .18s ease,color .18s ease,box-shadow .18s ease; }
#proofer-showcase .tab-btn:hover{ color:var(--ink); }
#proofer-showcase .tab-btn[aria-pressed="true"]{ background:var(--white); color:var(--ink); box-shadow:0 1px 3px rgba(20,24,29,.12), inset 0 0 0 1.5px rgba(0,194,255,.92); }

/* PHOTO-ONLY stage state — a preset with no 3D yet (config null). Placed after the
   [data-proofer-state="ready"] rules so equal specificity resolves by source order:
   the photo wins while .is-photo-only is on, and the live viewer underneath returns
   untouched when it comes off. */
.proofer-stage.is-photo-only .proofer-photo{ opacity:1; }
.proofer-stage.is-photo-only .proofer-mount{ opacity:0; pointer-events:none; }
.proofer-stage.is-photo-only .proofer-loading{ display:none; }

/* The "not shown in 3D" note — a muted informational pill, never a warning. */
.proofer-nopreview{ margin:0; display:inline-block; font-size:13px; font-weight:600; color:var(--muted); background:var(--soft); border:1px solid var(--line); border-radius:99px; padding:7px 16px; }
.proofer-nopreview[hidden]{ display:none; }

/* ⚠️ [hidden] vs an authored display: the cell's own display:flex OUTRANKS the UA
   sheet's [hidden]{display:none}, so group-filtered tiles kept rendering — both tabs
   showed all 19 tiles while every attribute-level check passed (owner-caught
   2026-08-24: "by finish and by material do not show different products"). An authored
   display always needs its own [hidden] rule. */
.proofer-preset-cell[hidden]{ display:none; }

/* Round 3 (2026-08-24): toggle centered above the tile row it filters; customize CTA
   under the stage follows the active preset (handdn's "Custom this style" position). */
#proofer-showcase .proofer-presets .browse-tabs-wrap{ text-align:center; padding-bottom:0; margin:0 0 14px; }

/* PREVIEW-ONLY (?prooferTabs=below, owner question 2026-08-26): pills UNDER the tile
   row — tiles land tight beneath the stage, toggle beneath them. Flex re-order of the
   same three children; delete with the PHP param when the decision lands. */
#proofer-showcase.tabs-below .proofer-presets{ display:flex; flex-direction:column; }
#proofer-showcase.tabs-below .proofer-presets .browse-tabs-wrap{ order:2; margin:16px 0 0; }
.proofer-customize{ text-align:center; margin:10px 0 0; }
.proofer-customize a{ display:inline-block; font-size:15.5px; font-weight:700; color:var(--blue); text-decoration:underline; text-underline-offset:4px; }
.proofer-customize a:hover{ color:var(--ink); }
.proofer-customize[hidden]{ display:none; }

/* ============================================================
   LAYOUT OPTION B — "card left, browse rail right" (/proofer-layout/'s vB),
   owner-directed 2026-08-24 at close: live pages stay on Option A; B runs on the
   duplicate test page www/proofer-layout-b.php (which flips the .is-layout-b class
   via $proofer_layout_override — see proofer-showcase.php). CSS-only: the same DOM
   (head → stage → presets) re-flows onto a grid, so picking B later is one flag.
   Desktop only — below 981px both layouts are the identical stacked one, same
   breakpoint the /proofer-layout/ comparison page collapses at.
   Tile padding stays 8px so the live-mount inset (top/left/right 9px above) still
   lands exactly on the media square — do NOT shrink the padding here without moving
   the mount with it.
   ============================================================ */
@media(min-width:981px){
  .proofer-showcase.is-layout-b{ display:grid; grid-template-columns:1fr 400px; gap:0 34px; align-items:start; }
  .proofer-showcase.is-layout-b .proofer-browse-head{ grid-column:1 / -1; }
  /* margin:0, not just max-width:none — a grid item with auto side margins sizes to
     fit-content instead of stretching (measured: the stage collapsed to its 251px
     label width). Killing the auto margins restores the stretch. */
  .proofer-showcase.is-layout-b .proofer-stage{ max-width:none; margin:0; }
  .proofer-showcase.is-layout-b .proofer-presets{ margin-top:0; }
  /* Rail: pills left-aligned above left-justified tiles (the comparison page's rail).
     The base row is nowrap/flex-share since the 2026-08-25 one-row change — the 400px
     rail needs its wrap back and a fixed tile basis, or 10 tiles squeeze to ~29px. */
  .proofer-showcase.is-layout-b .proofer-presets .browse-tabs-wrap{ text-align:left; margin:0 0 14px; }
  .proofer-showcase.is-layout-b .proofer-preset-row{ justify-content:flex-start; gap:12px; flex-wrap:wrap; }
  /* 3 tiles per rail row: 3×122 + 2×12 = 390 ≤ 400. */
  .proofer-showcase.is-layout-b .proofer-preset-cell{ flex:0 0 122px; max-width:122px; }
  .proofer-showcase.is-layout-b .proofer-preset-name{ font-size:12.5px; }
}
