

/* ── Undo Tailwind preflight within imported page ── */
.imported-page :where(*, *::before, *::after) {
    box-sizing: border-box;
}
.imported-page :where(h1, h2, h3, h4, h5, h6) {
    font-size: revert;
    font-weight: revert;
}
.imported-page :where(p) {
    margin: revert;
}
.imported-page :where(a) {
    color: revert;
    text-decoration: revert;
}
.imported-page :where(ul, ol) {
    list-style: revert;
    margin: revert;
    padding: revert;
}
.imported-page :where(img) {
    display: revert;
    max-width: 100%;
}
.imported-page :where(blockquote, figure, figcaption, hr, pre) {
    margin: revert;
}
.imported-page :where(table) {
    border-collapse: revert;
    border-spacing: revert;
}
/* Source: site.css */
/* =====================================================================
   GROWTH KEYS — SHARED SUB-PAGE STYLESHEET
   Tokens, type, header/nav, dividers, buttons and footer are lifted
   verbatim from /concepts/concept-g-final.html (the approved homepage)
   so every sub-page reads as the same site. New here: mini-hero,
   sticky-aside content grid, proof/CTA cards, dark stat band, tile grid,
   FAQ accordion, final CTA band.

   TOKEN INDEX (see :root below for values/comments)
   - Color / brand core:      --lime --charcoal --forest --cream --sage
                               --muted --border --black --white
   - Color / dark surfaces:   --surface-dark --surface-darker
   - Color / text on light:   --text-body
   - Color / text on dark:    --text-lead-dark --text-caption-dark
                               --text-meta-dark --text-quote-dark
                               --text-sep-dark --text-tag-dark
   - Color / text on forest:  --text-soft-forest --text-faint-forest
   - Color / accent fill:     --chip-green
   - Color / rgb triplets:    --white-rgb --black-rgb --charcoal-rgb
                               --surface-darker-rgb --lime-rgb
   - Color / derived borders: --border-light --border-light-2
                               --fill-light-04 --border-dark
   - Type / families:         --font-heading --font-body
   - Type / variable axes:    --fvs-body --fvs-heading --fvs-body-med
                               --fvs-quote --fvs-stat --fvs-soft
   - Type / weight fallback:  --fw-heading --fw-normal
   - Structure / radii:       --radius-sm --radius-chip --radius-media
                               --radius-tile --radius-card --radius-pill
                               --radius-hairline
   - Structure / spacing:     --section-pad-y --section-pad-y-mobile
   - Structure / motion:      --ease-standard
   - Structure / keyhole:     --khole-mask

   USAGE RULES
   - --lime never sits under long-form body copy — labels, numerals,
     underlines and single accent words only; body copy stays
     --charcoal / --text-body.
   - Text ON lime is always dark (--charcoal), never white/cream.
   - Trademark glyphs use <sup class="tm"> (styled by .tm) — never a bare
     ™ character inline.
   - Dark cards/surfaces (--surface-dark / --surface-darker) pair only
     with --cream, --white, or the --text-*-dark family — never
     --text-body (that's the light-background color).
   - --chip-green is the keyhole-chip square fill; the keyhole glyph on
     top of it is always --lime.
   - mark.hl (lime sweep) is capped at 2-3 per page per the
     animation-restraint rule.
   ===================================================================== */

.imported-page {
  /* ---------- COLOR: BRAND CORE (existing — verbatim, names unchanged) ---------- */
  --lime:#cfff2e;
  --charcoal:#272a36;
  --forest:#3f524e;
  --cream:#f2f3eb;
  --sage:#e3e5d7;
  --muted:#6b7280;
  --border:#cbd5e1;
  --black:#000000;
  --white:#ffffff;

  /* ---------- COLOR: DARK SURFACES ---------- */
  --surface-dark:#15171e;      /* cards, overlay menu, mini-hero base, pull-quote--mini */
  --surface-darker:#0b0c10;    /* darkest layer — mhero gradient top, stat-band bg */

  /* ---------- COLOR: TEXT ON LIGHT BACKGROUNDS ---------- */
  --text-body:#3d4150;         /* paragraph copy on cream/sage — main-col, plain-list, tile, keycode, faq */

  /* ---------- COLOR: TEXT ON DARK BACKGROUNDS (named by role) ---------- */
  --text-lead-dark:#d7d9de;    /* lead/lede copy on near-black — mhero-lead, stat-band lede/note, case-meta-chip */
  --text-caption-dark:#b6b9c2; /* captions/labels/links on dark — menu-foot, proof-label, sb-label, footer */
  --text-meta-dark:#9aa0af;    /* smallest meta text on dark — breadcrumbs, mini pull-quote citation */
  --text-quote-dark:#e4e6ea;   /* quote body inside a dark card — pull-quote--mini blockquote */
  --text-sep-dark:#4b5563;     /* breadcrumb separator glyph */
  --text-tag-dark:#8b8fa0;     /* footer eyebrow tag */

  /* ---------- COLOR: TEXT ON FOREST (final CTA band) ---------- */
  --text-soft-forest:#dfe3d9;  /* lede copy on forest background */
  --text-faint-forest:#c7cfc4; /* italic fine-print line on forest background */

  /* ---------- COLOR: ACCENT FILL ---------- */
  --chip-green:#293726;        /* keyhole-chip square fill (plain-list, tile grid); lime keyhole sits on top */

  /* ---------- COLOR: RGB TRIPLETS (for alpha compositing via rgba(var(..),a)) ---------- */
  --white-rgb:255,255,255;
  --black-rgb:0,0,0;
  --charcoal-rgb:39,42,54;        /* == --charcoal, expressed as components for alpha use */
  --surface-darker-rgb:11,12,16;  /* == --surface-darker, expressed as components for alpha use */
  --lime-rgb:207,255,46;          /* == --lime, expressed as components for alpha use */

  /* ---------- COLOR: DERIVED BORDERS & WASHES ---------- */
  --border-light:rgba(var(--white-rgb),.08);    /* hairline on dark — nav.scrolled, menu-foot, footer-map, footer-bar */
  --border-light-2:rgba(var(--white-rgb),.18);  /* chip border on dark — case-meta-chip */
  --fill-light-04:rgba(var(--white-rgb),.04);   /* subtle white wash — case-meta-chip background */
  --border-dark:rgba(var(--charcoal-rgb),.14);  /* hairline on light — faq-item dividers */

  /* ---------- TYPOGRAPHY: FAMILIES ---------- */
  --font-heading:"podium-soft-variable",sans-serif;
  --font-body:"podium-sharp-variable",sans-serif;

  /* ---------- TYPOGRAPHY: VARIABLE-FONT AXES (font-variation-settings), named by role ---------- */
  --fvs-body:"wdth" 100,"wght" 500;      /* base body copy */
  --fvs-heading:"wdth" 100,"wght" 600;   /* headings, eyebrows, buttons, links, chip/strong emphasis */
  --fvs-body-med:"wdth" 100,"wght" 640;  /* cta-card h3, and (Aug 2026) the default
     weight for ALL medium subheadings (generic h3/h4) — podium-soft-variable
     (--fvs-heading) was confirmed via direct browser testing to NOT respond to
     font-variation-settings/font-weight at all (measured identical glyph widths
     at wght 100 through 900), so anything that needs to read lighter than the
     big uppercase h1/h2 display treatment must use the body font instead. */
  --fvs-quote:"wdth" 100,"wght" 480;     /* pull-quote blockquote body */
  --fvs-stat:"wdth" 100,"wght" 700;      /* stat numerals — proof-num, sb-num */
  --fvs-soft:"wght" 400;                 /* .soft utility — no width axis */

  /* ---------- TYPOGRAPHY: FONT-WEIGHT FALLBACK COMPANIONS ---------- */
  --fw-heading:900;  /* paired with --fvs-heading on true heading elements (h1-h4, nav-word, menu-links, qmark) */
  --fw-normal:400;   /* paired with --fvs-* on non-bold roles (soft, tile/cta/faq headings, quote body) */

  /* ---------- STRUCTURE: RADII (actual set in use, audited) ---------- */
  --radius-sm:5px;        /* .btn */
  --radius-chip:6px;      /* keyhole-chip squares, map-link badge */
  --radius-media:12px;    /* footer-map */
  --radius-tile:14px;     /* tile grid cards */
  --radius-card:16px;     /* proof-card, cta-card, pull-quote--mini */
  --radius-pill:999px;    /* case-meta-chip */
  --radius-hairline:1px;  /* nav-burger bars, faq-ind plus/minus marks */

  /* ---------- STRUCTURE: SECTION SPACING ---------- */
  --section-pad-y:8.5rem;         /* default <section> vertical padding, desktop */
  --section-pad-y-mobile:4.75rem; /* <=767px override */

  /* ---------- STRUCTURE: MOTION ---------- */
  --ease-standard:cubic-bezier(.4,0,.2,1); /* .btn hover easing */

  /* ---------- STRUCTURE: KEYHOLE DIVIDER MASK ----------
     Brand keyhole silhouette (matches assets/img/icon.svg), inlined as a
     data-URI mask so it renders in any currentColor/var(--lime) context
     without an extra <img>. Single closed path, viewBox 0 0 177.57 442.31 —
     do not hand-edit the "d" attribute; regenerate from the source SVG if
     the mark changes. Reused verbatim by .khole and .plain-list li::after
     (each sets it on both the mask and -webkit-mask properties). */
  --khole-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>");
}
.imported-page * {margin:0;padding:0;box-sizing:border-box;}
.imported-page {scroll-behavior:smooth;}
.imported-page {
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-body);
  background:var(--cream);
  color:var(--charcoal);
  line-height:1.6;
}
.imported-page h1,
.imported-page h2,
.imported-page h3,
.imported-page h4 {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  line-height:1.15;
}
.imported-page h1 {text-transform:uppercase;letter-spacing:.06em;line-height:.95;}
.imported-page h2 {text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);font-variation-settings:var(--fvs-heading);line-height:1.04;margin-bottom:1.3rem;}
.imported-page h3 {font-size:clamp(1.15rem,2vw,1.4rem);}
/* (Aug 2026) Medium subheadings — section-kickers, FAQ questions, card
   headlines — switch to the body font at a lighter weight for legibility.
   This does NOT apply to the handful of h3/h4 elements that are actually
   big uppercase display headlines wearing an h3/h4 tag for SEO-hierarchy
   reasons (e.g. .stat-band-head, .founder-headline, .tiles-head h3,
   .keycode-box h3, and several page-scoped classes) — those each carry an
   explicit override below/inline that re-asserts the heavy heading font,
   specifically so they don't inherit this rule. */
.imported-page h3,
.imported-page h4 {font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);}
.imported-page.tm,
.imported-page .tm {font-size:.42em;vertical-align:super;letter-spacing:0;line-height:0;font-variation-settings:var(--fvs-heading);}
.imported-page a {color:inherit;}
/* In-body SEO internal links: invisible until hover, so a linked keyword
   inside a paragraph reads as plain copy, not a styled link. Underline
   appears on hover/focus as the only affordance (WCAG requires links be
   distinguishable by more than color alone — hover/focus state satisfies
   that without visually interrupting the sentence at rest). Scoped to a
   dedicated class so it never touches nav/footer/CTA/.klink card links. */
.imported-page a.inline-link {text-decoration:none;color:inherit;}
.imported-page a.inline-link:hover,
.imported-page a.inline-link:focus-visible {text-decoration:underline;}
.imported-page img {max-width:100%;display:block;}
.imported-page.wrap,
.imported-page .wrap {max-width:1200px;margin:0 auto;padding:0 1.5rem;}
.imported-page section {padding:var(--section-pad-y) 0;}
.imported-page.eyebrow,
.imported-page .eyebrow {
  text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--muted);
  font-variation-settings:var(--fvs-heading);margin-bottom:1.1rem;
}
.imported-page.btn,
.imported-page .btn {
  display:inline-block;background:var(--lime);color:var(--charcoal);
  border:none;border-radius:var(--radius-sm);padding:.75rem 1.5rem;
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-heading);
  font-size:1rem;text-decoration:none;cursor:pointer;
  transition:all .5s var(--ease-standard);
}
.imported-page.btn:hover,
.imported-page .btn:hover {background:var(--forest);color:var(--white);transform:scale(1.05);}
.imported-page.btn-ghost,
.imported-page .btn-ghost {background:transparent;color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--charcoal);}
.imported-page.btn-ghost:hover,
.imported-page .btn-ghost:hover {background:var(--forest);color:var(--white);box-shadow:inset 0 0 0 2px var(--forest);transform:scale(1.05);}
.imported-page.btn-ghost-light,
.imported-page .btn-ghost-light {background:transparent;color:var(--cream);box-shadow:inset 0 0 0 2px var(--cream);}
.imported-page.btn-ghost-light:hover,
.imported-page .btn-ghost-light:hover {background:var(--lime);color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--lime);}
.imported-page.soft,
.imported-page .soft {font-family:var(--font-heading);font-variation-settings:var(--fvs-soft);font-weight:var(--fw-normal);}

/* highlight sweep — used sparingly (2-3 per page, per animation-restraint rule) */
.imported-page mark.hl {background-color:transparent;
  color:inherit;padding:.05em .12em;
  background-image:linear-gradient(var(--lime),var(--lime));
  background-repeat:no-repeat;background-position:0 55%;background-size:100% 92%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}

/* ---------- KEYHOLE (real brand icon.svg mask) ---------- */
.imported-page.khole,
.imported-page .khole {
  position:absolute;inset:0;display:block;background:currentColor;
  -webkit-mask:var(--khole-mask) center/contain no-repeat;
  mask:var(--khole-mask) center/contain no-repeat;
}

/* ---------- SHARP "PYRAMIDS" SECTION DIVIDERS (exact geometry) ---------- */
.imported-page.pyr,
.imported-page .pyr {display:block;line-height:0;font-size:0;position:relative;z-index:5;overflow:hidden;}
.imported-page.pyr svg,
.imported-page .pyr svg {display:block;width:100%;height:140px;position:relative;z-index:2;}
.imported-page.pyr .pyr-acc,
.imported-page .pyr .pyr-acc {position:absolute;top:0;left:0;width:100%;height:140px;z-index:1;transform:translateY(12px);}
.imported-page.pyr:has(.pyr-acc),
.imported-page .pyr:has(.pyr-acc) {padding-bottom:12px;}
@media(max-width:767px){
.imported-page.pyr svg,
.imported-page .pyr svg {height:64px;}.imported-page.pyr .pyr-acc,
.imported-page .pyr .pyr-acc {height:64px;transform:translateY(7px);}.imported-page.pyr:has(.pyr-acc),
.imported-page .pyr:has(.pyr-acc) {padding-bottom:7px;}
}

/* ---------- FILM GRAIN (dark sections) ---------- */
.imported-page.grain,
.imported-page .grain {
  position:absolute;inset:0;pointer-events:none;z-index:6;
  opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- HEADER — slim fixed bar + full-screen menu ---------- */
.imported-page.nav,
.imported-page .nav {
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:transparent;border-bottom:1px solid transparent;
  transition:background .35s ease,border-color .35s ease;
}
.imported-page.nav.scrolled,
.imported-page .nav.scrolled {
  background:rgba(var(--black-rgb),.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border-light);
}
.imported-page.nav-inner,
.imported-page .nav-inner {
  max-width:1200px;margin:0 auto;padding:.7rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
.imported-page.nav-word,
.imported-page .nav-word {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  text-transform:uppercase;letter-spacing:.08em;font-size:1.3rem;line-height:1;
  color:var(--lime);text-decoration:none;white-space:nowrap;
}
.imported-page.nav-word .nw,
.imported-page .nav-word .nw,
.imported-page.nav-word .tm,
.imported-page .nav-word .tm {color:var(--white);}
.imported-page.nav-right,
.imported-page .nav-right {display:flex;align-items:center;gap:.9rem;}
.imported-page.nav .btn,
.imported-page .nav .btn {padding:.5rem 1rem;font-size:.88rem;color:var(--charcoal);}
.imported-page.nav .btn:hover,
.imported-page .nav .btn:hover {color:var(--white);}
.imported-page.nav-burger,
.imported-page .nav-burger {
  width:44px;height:44px;flex:0 0 auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  background:transparent;border:0;cursor:pointer;padding:0;
}
.imported-page.nav-burger span,
.imported-page .nav-burger span {display:block;width:24px;height:2px;background:var(--cream);border-radius:var(--radius-hairline);transition:background .25s ease;}
.imported-page.nav-burger:hover span,
.imported-page .nav-burger:hover span {background:var(--lime);}
@media(max-width:479px){
.imported-page.nav .btn,
.imported-page .nav .btn {display:none;}
}

.imported-page.menu-overlay,
.imported-page .menu-overlay {display:none;position:fixed;inset:0;z-index:200;background:var(--surface-dark);color:var(--cream);}
.imported-page.menu-overlay.open,
.imported-page .menu-overlay.open {display:flex;flex-direction:column;}
.imported-page.menu-close,
.imported-page .menu-close {
  position:absolute;top:.9rem;right:1.3rem;z-index:8;width:44px;height:44px;
  background:transparent;border:0;color:var(--cream);font-size:1.9rem;line-height:1;cursor:pointer;
  transition:color .25s ease;
}
.imported-page.menu-close:hover,
.imported-page .menu-close:hover {color:var(--lime);}
.imported-page.menu-links,
.imported-page .menu-links {
  position:relative;z-index:7;flex:1;min-height:0;overflow-y:auto;
  display:flex;flex-direction:column;justify-content:center;gap:.3rem;
  width:100%;max-width:1200px;margin:0 auto;padding:4.5rem 1.5rem 1rem;
}
.imported-page.menu-links a,
.imported-page .menu-links a {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  text-transform:uppercase;letter-spacing:.05em;line-height:1.1;
  font-size:clamp(1.9rem,5.2vh,3.4rem);
  color:var(--cream);text-decoration:none;
  display:flex;align-items:center;gap:1.1rem;
  transition:color .25s ease;
}
.imported-page.menu-links a .mk,
.imported-page .menu-links a .mk {position:relative;width:15px;height:36px;flex:0 0 auto;color:var(--lime);opacity:0;transition:opacity .25s ease;}
.imported-page.menu-links a:hover,
.imported-page .menu-links a:hover,
.imported-page.menu-links a:focus-visible,
.imported-page .menu-links a:focus-visible {color:var(--lime);}
.imported-page.menu-links a:hover .mk,
.imported-page .menu-links a:hover .mk,
.imported-page.menu-links a:focus-visible .mk,
.imported-page .menu-links a:focus-visible .mk {opacity:1;}
.imported-page.menu-foot,
.imported-page .menu-foot {
  position:relative;z-index:7;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.4rem;
  padding:1.3rem 1.5rem 2rem;border-top:1px solid var(--border-light);
}
.imported-page.menu-foot a,
.imported-page .menu-foot a {color:var(--text-caption-dark);text-decoration:none;transition:color .25s ease;}
.imported-page.menu-foot a:hover,
.imported-page .menu-foot a:hover {color:var(--lime);}
.imported-page.menu-foot .btn,
.imported-page .menu-foot .btn {color:var(--charcoal);}
.imported-page.menu-foot .btn:hover,
.imported-page .menu-foot .btn:hover {color:var(--white);}

/* ---------- MINI-HERO (dark, all sub-pages) ---------- */
.imported-page.mhero,
.imported-page .mhero {
  position:relative;background:var(--surface-darker);
  color:var(--white);min-height:62vh;display:flex;align-items:center;
  padding:9.5rem 0 4.5rem;overflow:hidden;
}
.imported-page.mhero-dots,
.imported-page .mhero-dots {
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background-image:
    radial-gradient(circle at center, rgba(var(--lime-rgb),.32) 0 1px, transparent 1.6px),
    radial-gradient(circle at center, rgba(var(--white-rgb),.14) 0 1px, transparent 1.6px);
  background-size:38px 38px, 23px 23px;
  background-position:0 0, 12px 9px;
  animation:mheroDrift 26s linear infinite;
}
@keyframes mheroDrift{
  0%{background-position:0 0, 12px 9px;}
  100%{background-position:140px 76px, 152px 85px;}
}
.imported-page.mhero-scrim,
.imported-page .mhero-scrim {
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 90% 80% at 18% 40%, rgba(var(--surface-darker-rgb),.15) 0%, rgba(var(--surface-darker-rgb),.85) 78%);
}
.imported-page.mhero-inner,
.imported-page .mhero-inner {position:relative;z-index:2;max-width:820px;}
.imported-page.mhero-key,
.imported-page .mhero-key {position:relative;display:block;width:20px;height:48px;margin-bottom:1.3rem;color:var(--lime);}
.imported-page.bc,
.imported-page .bc {
  display:flex;align-items:center;gap:.5rem;list-style:none;margin-bottom:1.4rem;
  text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--text-meta-dark);
  font-variation-settings:var(--fvs-heading);flex-wrap:wrap;
}
.imported-page.bc a,
.imported-page .bc a {color:var(--text-meta-dark);text-decoration:none;transition:color .25s ease;}
.imported-page.bc a:hover,
.imported-page .bc a:hover {color:var(--lime);}
.imported-page.bc span[aria-current],
.imported-page .bc span[aria-current] {color:var(--lime);}
.imported-page.bc .sep,
.imported-page .bc .sep {color:var(--text-sep-dark);}
.imported-page.mhero h1,
.imported-page .mhero h1 {font-size:clamp(2.4rem,5.4vw,4.4rem);margin-bottom:1.4rem;color:var(--white);}
.imported-page.mhero h1 .lime,
.imported-page .mhero h1 .lime {color:var(--lime);}
.imported-page.mhero-lead,
.imported-page .mhero-lead {font-size:clamp(1.02rem,1.5vw,1.2rem);color:var(--text-lead-dark);max-width:56ch;margin-bottom:1.9rem;}
.imported-page.mhero .btn,
.imported-page .mhero .btn {margin-bottom:0;}
/* About page: H1-eyebrow / H2-headline SEO swap inside .mhero. New,
   fully self-contained classes — .mhero h1 above is shared by ~38 other
   pages and must not be touched. NOTE: ".mhero h1" has specificity
   (0,1,1) (one class + one tag) — a bare ".mhero-eyebrow" class alone is
   only (0,1,0) and LOSES that fight (verified via live screenshot: the
   eyebrow rendered at full headline size on first attempt). Prefixing
   with .mhero bumps this to (0,2,0), which wins outright. */
.imported-page.mhero .mhero-eyebrow,
.imported-page .mhero .mhero-eyebrow {
  text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--lime);
  font-variation-settings:var(--fvs-heading);margin-bottom:1rem;
}
.imported-page.mhero .mhero-headline,
.imported-page .mhero .mhero-headline {
  text-transform:uppercase;letter-spacing:.06em;line-height:.95;
  font-size:clamp(2.4rem,5.4vw,4.4rem);margin-bottom:1.4rem;color:var(--white);
}
.imported-page.mhero .mhero-headline .lime,
.imported-page .mhero .mhero-headline .lime {color:var(--lime);}

/* ---------- CONTENT GRID + STICKY ASIDE ---------- */
.imported-page.page-grid,
.imported-page .page-grid {
  display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3.2rem;align-items:start;
  padding:5.5rem 0;
}
.imported-page.main-col,
.imported-page .main-col {grid-column:1;min-width:0;}
.imported-page.main-col p,
.imported-page .main-col p {margin-bottom:1.15rem;color:var(--text-body);}
.imported-page.main-col p.lede,
.imported-page .main-col p.lede {font-size:1.1rem;color:var(--charcoal);}
.imported-page.main-col strong,
.imported-page .main-col strong {font-variation-settings:var(--fvs-heading);color:var(--charcoal);}
.imported-page.main-col .cta-row,
.imported-page .main-col .cta-row {margin:1.8rem 0 .6rem;}
.imported-page.main-col .cu,
.imported-page .main-col .cu {font-variation-settings:var(--fvs-heading);color:var(--forest);font-variant-numeric:tabular-nums;}
.imported-page.main-col .fine-note,
.imported-page .main-col .fine-note {font-size:.85rem;color:var(--muted);margin-top:1.5rem;}
.imported-page.plain-list,
.imported-page .plain-list {list-style:none;margin:1.5rem 0 1.5rem;padding:0;}
.imported-page.plain-list li,
.imported-page .plain-list li {position:relative;padding-left:2.4rem;margin-bottom:1.1rem;color:var(--text-body);break-inside:avoid;}
/* Modifier for long checklists (e.g. the growth-lock-audit "what we look
   at" list) — flows into 2 columns on wide viewports via CSS multi-col,
   which auto-collapses to 1 column when there isn't ~240px+gap to spare,
   so no separate mobile override is needed. break-inside:avoid above
   keeps each item's icon+text together instead of splitting across the
   column break. */
.imported-page.plain-list--cols,
.imported-page .plain-list--cols {columns:2 240px;column-gap:2.4rem;}
.imported-page.plain-list li::before,
.imported-page .plain-list li::before {
  content:"";position:absolute;left:0;top:.15em;width:24px;height:24px;
  border-radius:var(--radius-chip);background:var(--chip-green);
}
.imported-page.plain-list li::after,
.imported-page .plain-list li::after {
  content:"";position:absolute;left:8.5px;top:calc(.15em + 4px);width:7px;height:16px;
  background:var(--lime);
  -webkit-mask:var(--khole-mask) center/contain no-repeat;
  mask:var(--khole-mask) center/contain no-repeat;
}
.imported-page.side-col,
.imported-page .side-col {grid-column:2;grid-row:1/-1;position:sticky;top:110px;display:flex;flex-direction:column;gap:1.4rem;}

/* proof card (dark, in the sticky aside) */
.imported-page.proof-card,
.imported-page .proof-card {
  background:var(--surface-dark);color:var(--cream);border-radius:var(--radius-card);padding:2rem 1.7rem;
  box-shadow:0 20px 45px rgba(var(--black-rgb),.25);
}
.imported-page.proof-card .eyebrow,
.imported-page .proof-card .eyebrow {color:var(--lime);opacity:.9;margin-bottom:.9rem;}
.imported-page.proof-stat,
.imported-page .proof-stat {display:block;margin-bottom:1.1rem;}
.imported-page.proof-stat:last-of-type,
.imported-page .proof-stat:last-of-type {margin-bottom:1.3rem;}
.imported-page.proof-num,
.imported-page .proof-num {
  display:block;color:var(--lime);font-size:1.9rem;line-height:1.05;
  font-variation-settings:var(--fvs-stat);font-variant-numeric:tabular-nums;
}
.imported-page.proof-label,
.imported-page .proof-label {display:block;font-size:.85rem;color:var(--text-caption-dark);margin-top:.2rem;}
.imported-page.proof-link,
.imported-page .proof-link {
  display:inline-block;text-decoration:none;font-size:.92rem;color:var(--cream);
  border-bottom:2px solid var(--lime);padding-bottom:2px;font-variation-settings:var(--fvs-heading);
  transition:color .25s ease;
}
.imported-page.proof-link:hover,
.imported-page .proof-link:hover {color:var(--lime);}

/* CTA card (lime, in the sticky aside) */
.imported-page.cta-card,
.imported-page .cta-card {background:var(--lime);color:var(--charcoal);border-radius:var(--radius-card);padding:2rem 1.7rem;}
.imported-page.cta-card h3,
.imported-page .cta-card h3 {margin-bottom:.9rem;letter-spacing:.08em;font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);font-size:1.1rem;text-transform:uppercase;}
.imported-page.cta-card .btn,
.imported-page .cta-card .btn {background:var(--charcoal);color:var(--lime);width:100%;text-align:center;}
.imported-page.cta-card .btn:hover,
.imported-page .cta-card .btn:hover {background:var(--surface-dark);color:var(--white);transform:none;}

@media(max-width:1023px){

  .imported-page.page-grid,
.imported-page .page-grid {grid-template-columns:minmax(0,1fr) 280px;gap:2.2rem;}

}
@media(max-width:860px){

  .imported-page.page-grid,
.imported-page .page-grid {display:block;padding:3.5rem 0;}
  .imported-page.main-col,
.imported-page .main-col {margin-bottom:0;}
  .imported-page.side-col,
.imported-page .side-col {position:static;top:auto;display:block;margin:2.6rem 0 3rem;}
  .imported-page.side-col .cta-card,
.imported-page .side-col .cta-card {display:none;}
  .imported-page.proof-card,
.imported-page .proof-card {margin:0;}

}

/* ---------- DARK STAT BAND ("Don't Take Our Word For It") ---------- */
.imported-page.stat-band,
.imported-page .stat-band {position:relative;background:var(--surface-darker);color:var(--white);overflow:hidden;text-align:center;}
.imported-page.stat-band .eyebrow,
.imported-page .stat-band .eyebrow {color:var(--lime);opacity:.85;}
/* Explicit heading look baked in here (not just inherited from generic
   h2{}) so this class renders identically whether it's on an h2 (all
   other pages) or an h3 (About page, per its SEO heading swap). */
.imported-page.stat-band-head,
.imported-page .stat-band-head {
  max-width:800px;margin:0 auto 1rem;
  text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;
  /* stays on the heavy display font even when it's rendered as an h3
     (About/growth-lock-audit/services/locallead-ai/city pages SEO swap) — this is a
     big headline, not a medium subheading, so it must not inherit the new
     lighter h3,h4 rule above. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
.imported-page.stat-band-lede,
.imported-page .stat-band-lede {max-width:60ch;margin:0 auto 3.5rem;color:var(--text-lead-dark);font-size:1.05rem;line-height:1.65;}
.imported-page.sb-grid,
.imported-page .sb-grid {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:2rem;row-gap:2.2rem;
  max-width:960px;margin:0 auto 3rem;text-align:center;position:relative;z-index:1;
}
/* location pages with only 3 stats (Auburn, Columbia City, Huntington, New
   Haven, Warsaw) were rendering inside the standard 4-col grid, which left
   an empty 4th column and pushed the 3 real stats off-center to the left
   under the centered heading above them. */
.imported-page.sb-grid.sb-grid--3,
.imported-page .sb-grid.sb-grid--3 {grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin-top:1.8rem;}
.imported-page.sb-num,
.imported-page .sb-num {
  display:block;color:var(--lime);font-size:clamp(1.9rem,3.4vw,2.9rem);
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-stat);line-height:1.05;letter-spacing:.02em;
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
.imported-page.sb-label,
.imported-page .sb-label {display:block;margin-top:.6rem;font-size:.92rem;color:var(--text-caption-dark);}
.imported-page.stat-band-note,
.imported-page .stat-band-note {max-width:680px;margin:0 auto 2.4rem;color:var(--text-lead-dark);}
.imported-page.stat-band .case-link,
.imported-page .stat-band .case-link {
  position:relative;z-index:1;text-decoration:none;font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:2px;transition:color .3s ease;
}
.imported-page.stat-band .case-link:hover,
.imported-page .stat-band .case-link:hover {color:var(--lime);}
@media(max-width:767px){

  .imported-page.sb-grid,
.imported-page .sb-grid {grid-template-columns:repeat(2,1fr);}
  /* 3 columns at phone widths risks clipping longer values like "~10,000"
     (sb-num is white-space:nowrap) — stack instead, same as it would look
     with a lone orphaned 3rd item in the 2-col case, but centered/even. */
  .imported-page.sb-grid.sb-grid--3,
.imported-page .sb-grid.sb-grid--3 {grid-template-columns:1fr;row-gap:1.6rem;}

}

/* ---------- FOUNDER BLOCK (About page) ---------- */
.imported-page.founder-sec,
.imported-page .founder-sec {background:var(--sage);}
.imported-page.founder-grid,
.imported-page .founder-grid {
  display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(2.2rem,5vw,4.5rem);align-items:start;max-width:1040px;margin:0 auto;
}
/* Copy column got much longer than the photo; sticky keeps the portrait
   in view alongside it instead of stranding it near the top once the
   reader scrolls past it. top:100px clears the fixed nav (.nav). Reset
   to static on mobile below, where the grid stacks to 1 column anyway. */
.imported-page.founder-photo,
.imported-page .founder-photo {margin:0;overflow:hidden;border-radius:var(--radius-tile);background:var(--cream);position:sticky;top:100px;}
.imported-page.founder-photo img,
.imported-page .founder-photo img {display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;}
/* .founder-copy is page-unique to About, so this is safe. The site's
   universal *{margin:0} reset leaves a bare h3 with no spacing at all,
   so give the new "A Few Things Worth Knowing" sub-head reasonable
   breathing room by default, then override further for the section's
   real headline via the more specific .founder-headline class. */
.imported-page.founder-copy h3,
.imported-page .founder-copy h3 {margin:1.7rem 0 .8rem;}
.imported-page.founder-copy h3.founder-headline,
.imported-page .founder-copy h3.founder-headline {
  margin:0 0 1.4rem;text-transform:uppercase;letter-spacing:.09em;
  font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;
  /* big display headline, not a medium subheading — stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
.imported-page.founder-copy p,
.imported-page .founder-copy p {margin-bottom:1.15rem;color:var(--text-body);}
.imported-page.founder-copy a.klink,
.imported-page .founder-copy a.klink {
  text-decoration:none;color:var(--forest);font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:1px;
}
.imported-page.founder-copy a.klink:hover,
.imported-page .founder-copy a.klink:hover {color:var(--charcoal);}
@media(max-width:767px){

  .imported-page.founder-grid,
.imported-page .founder-grid {grid-template-columns:1fr;}
  .imported-page.founder-photo,
.imported-page .founder-photo {max-width:420px;margin:0 auto;position:static;}

}

/* ---------- TILE GRID ("What's In It") ---------- */
.imported-page.tiles-sec,
.imported-page .tiles-sec {background:var(--cream);}
.imported-page.tiles-head,
.imported-page .tiles-head {max-width:820px;margin:0 auto 3.6rem;text-align:center;}
/* No page currently nests an h3 inside .tiles-head (they all use h2), so
   this descendant rule only ever matches About's SEO-swapped headline —
   purely additive, zero risk to the other 33 pages using this class. */
.imported-page.tiles-head h3,
.imported-page .tiles-head h3 {
  text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);
  line-height:1.04;margin-bottom:1.3rem;
  /* big display headline (About + 5 city pages), not a medium subheading —
     stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
.imported-page.tile-grid,
.imported-page .tile-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;max-width:1000px;margin:0 auto;}
.imported-page.tile,
.imported-page .tile {
  background:var(--sage);border-radius:var(--radius-tile);padding:2.1rem 2rem;
  display:flex;gap:1.1rem;align-items:flex-start;
}
.imported-page.tile-chip,
.imported-page .tile-chip {
  position:relative;flex:0 0 auto;width:24px;height:24px;border-radius:var(--radius-chip);background:var(--chip-green);margin-top:.2rem;
}
.imported-page.tile-chip .khole,
.imported-page .tile-chip .khole {width:7px;height:16px;left:8.5px;top:4px;color:var(--lime);}
.imported-page.tile h3,
.imported-page .tile h3 {
  /* was pointed at --font-heading (podium-soft-variable), which doesn't
     respond to font-weight/wght at all — rendered heavy regardless of the
     --fw-normal fallback. Switched to the body font, which actually lightens. */
  font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);
  text-transform:none;letter-spacing:.01em;font-size:1.15rem;margin-bottom:.55rem;
}
.imported-page.tile p,
.imported-page .tile p {color:var(--text-body);font-size:.96rem;line-height:1.6;margin-bottom:.9rem;}
.imported-page.tile p:last-child,
.imported-page .tile p:last-child {margin-bottom:0;}
@media(max-width:767px){
.imported-page.tile-grid,
.imported-page .tile-grid {grid-template-columns:1fr;}
}

/* ---------- KEYCODE CALLOUT ("SEO Is One Key. Not the Whole Lock.") ---------- */
.imported-page.keycode-sec,
.imported-page .keycode-sec {background:var(--cream);}
.imported-page.keycode-box,
.imported-page .keycode-box {max-width:800px;margin:0 auto;text-align:left;}
.imported-page.keycode-box h2,
.imported-page .keycode-box h2 {margin-bottom:1.6rem;}
/* No page currently nests an h3 inside .keycode-box (all 39 others use
   h2), so this is purely additive — matches only About's SEO-swapped
   Promise headline. */
.imported-page.keycode-box h3,
.imported-page .keycode-box h3 {
  margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.07em;
  font-size:clamp(1.35rem,2.2vw,2.35rem);line-height:1.12;
  /* big display headline (About + 5 city pages), not a medium subheading —
     stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
.imported-page.keycode-box p,
.imported-page .keycode-box p {margin-bottom:1.1rem;color:var(--text-body);font-size:1.05rem;}
.imported-page.keycode-box a.klink,
.imported-page .keycode-box a.klink {
  text-decoration:none;color:var(--forest);font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:1px;
}
.imported-page.keycode-box a.klink:hover,
.imported-page .keycode-box a.klink:hover {color:var(--charcoal);}

/* ---------- CASE-STUDY CHARTS (hand-built inline SVG, honest axes) ---------- */
.imported-page.chart-sec,
.imported-page .chart-sec {background:var(--cream);}
.imported-page.chart-duo,
.imported-page .chart-duo {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem;max-width:1060px;margin:0 auto;align-items:end;}
.imported-page.gk-chart,
.imported-page .gk-chart {margin:0;}
.imported-page.gk-chart svg,
.imported-page .gk-chart svg {display:block;width:100%;height:auto;}
.imported-page.gk-chart figcaption,
.imported-page .gk-chart figcaption {margin-top:.9rem;font-size:.85rem;color:var(--muted);line-height:1.5;}
.imported-page.gk-chart text,
.imported-page .gk-chart text {font-family:var(--font-body);}
.imported-page.gk-chart .cx-tick,
.imported-page .gk-chart .cx-tick {font-size:12px;fill:var(--muted);font-variation-settings:"wdth" 100,"wght" 500;}
.imported-page.gk-chart .cx-val,
.imported-page .gk-chart .cx-val {font-size:15px;fill:var(--charcoal);font-variation-settings:var(--fvs-heading);}
.imported-page.gk-chart .cx-cat,
.imported-page .gk-chart .cx-cat {font-size:13px;fill:var(--text-body);font-variation-settings:"wdth" 100,"wght" 500;}
.imported-page.gk-chart .cx-grid,
.imported-page .gk-chart .cx-grid {stroke:rgba(var(--charcoal-rgb),.12);stroke-width:1;}
.imported-page.gk-chart .cx-axis,
.imported-page .gk-chart .cx-axis {stroke:rgba(var(--charcoal-rgb),.35);stroke-width:1;}
.imported-page.gk-chart--dark .cx-tick,
.imported-page .gk-chart--dark .cx-tick {fill:var(--text-caption-dark);}
.imported-page.gk-chart--dark .cx-val,
.imported-page .gk-chart--dark .cx-val {fill:var(--white);}
.imported-page.gk-chart--dark .cx-cat,
.imported-page .gk-chart--dark .cx-cat {fill:var(--text-lead-dark);}
.imported-page.gk-chart--dark .cx-grid,
.imported-page .gk-chart--dark .cx-grid {stroke:rgba(var(--white-rgb),.14);}
.imported-page.gk-chart--dark .cx-axis,
.imported-page .gk-chart--dark .cx-axis {stroke:rgba(var(--white-rgb),.35);}
.imported-page.gk-chart--dark figcaption,
.imported-page .gk-chart--dark figcaption {color:var(--text-caption-dark);}
.imported-page.gk-chart .cx-bar-lime,
.imported-page .gk-chart .cx-bar-lime {fill:var(--lime);}
.imported-page.gk-chart .cx-bar-lime--stroked,
.imported-page .gk-chart .cx-bar-lime--stroked {fill:var(--lime);stroke:var(--charcoal);stroke-width:1;}
.imported-page.gk-chart .cx-bar-ink,
.imported-page .gk-chart .cx-bar-ink {fill:var(--charcoal);}
.imported-page.gk-chart .cx-bar-forest,
.imported-page .gk-chart .cx-bar-forest {fill:var(--forest);}
.imported-page.gk-chart .cx-bar-ghost,
.imported-page .gk-chart .cx-bar-ghost {fill:rgba(var(--white-rgb),.22);}
.imported-page.gk-chart .cx-bar-ghost--light,
.imported-page .gk-chart .cx-bar-ghost--light {fill:rgba(var(--charcoal-rgb),.16);}
.imported-page.gk-chart .cx-val--onbar,
.imported-page .gk-chart .cx-val--onbar {fill:var(--white);}
.imported-page.gk-chart .cx-line-ink,
.imported-page .gk-chart .cx-line-ink {fill:none;stroke:var(--charcoal);stroke-width:3;stroke-linejoin:round;stroke-linecap:round;}
.imported-page.gk-chart .cx-line-forest,
.imported-page .gk-chart .cx-line-forest {fill:none;stroke:var(--forest);stroke-width:3;stroke-linejoin:round;stroke-linecap:round;}
.imported-page.gk-chart .cx-dot-ink,
.imported-page .gk-chart .cx-dot-ink {fill:var(--charcoal);}
.imported-page.gk-chart .cx-dot-forest,
.imported-page .gk-chart .cx-dot-forest {fill:var(--forest);}
.imported-page.case-narrative .gk-chart,
.imported-page .case-narrative .gk-chart {margin:2.2rem 0 2.6rem;}

/* ---------- BEFORE/AFTER RANK-GRID (case-study / blog, tokens only) ---------- */
.imported-page.ba-grid,
.imported-page .ba-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;max-width:1000px;margin:0 auto;align-items:start;}
.imported-page.ba-photo,
.imported-page .ba-photo {margin:0;background:var(--white);border:1px solid rgba(var(--charcoal-rgb),.12);border-radius:var(--radius-tile);overflow:hidden;}
.imported-page.ba-photo img,
.imported-page .ba-photo img {display:block;width:100%;height:auto;}
.imported-page.ba-tag,
.imported-page .ba-tag {
  display:inline-block;margin:.9rem 0 .2rem .9rem;padding:.28rem .7rem;border-radius:var(--radius-pill);
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-variation-settings:var(--fvs-heading);
}
.imported-page.ba-tag--before,
.imported-page .ba-tag--before {background:rgba(var(--charcoal-rgb),.08);color:var(--charcoal);}
.imported-page.ba-tag--after,
.imported-page .ba-tag--after {background:var(--lime);color:var(--charcoal);}
.imported-page.ba-photo figcaption,
.imported-page .ba-photo figcaption {padding:.7rem .9rem .95rem;font-size:.85rem;color:var(--text-body);line-height:1.5;}
.imported-page.ba-note,
.imported-page .ba-note {max-width:760px;margin:1.8rem auto 0;text-align:center;color:var(--text-body);}
.imported-page.case-narrative .ba-grid,
.imported-page .case-narrative .ba-grid {margin:2.2rem 0 1rem;}
@media(max-width:767px){
.imported-page.ba-grid,
.imported-page .ba-grid {grid-template-columns:1fr;}
}

/* ---------- DATA TABLE (case-study / blog, tokens only) ---------- */
.imported-page.gk-table-wrap,
.imported-page .gk-table-wrap {overflow-x:auto;margin:2.2rem 0 1rem;}
.imported-page.gk-table,
.imported-page .gk-table {width:100%;border-collapse:collapse;font-size:.92rem;}
.imported-page.gk-table th,
.imported-page .gk-table th {
  text-align:left;padding:.55rem .6rem;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;
  color:var(--muted);font-variation-settings:var(--fvs-heading);border-bottom:2px solid var(--charcoal);
}
.imported-page.gk-table td,
.imported-page .gk-table td {padding:.6rem;border-bottom:1px solid rgba(var(--charcoal-rgb),.12);color:var(--text-body);}
.imported-page.gk-table td.pos,
.imported-page .gk-table td.pos {font-variation-settings:var(--fvs-heading);color:var(--charcoal);white-space:nowrap;}
.imported-page.gk-table .fine-note,
.imported-page .gk-table .fine-note {margin-top:.7rem;}
.imported-page.stat-band .gk-chart,
.imported-page .stat-band .gk-chart {max-width:680px;margin:2.6rem auto 2.2rem;text-align:left;}
@media(max-width:767px){
.imported-page.chart-duo,
.imported-page .chart-duo {grid-template-columns:1fr;gap:3rem;}
}

/* ---------- FAQ ACCORDION ---------- */
.imported-page.faq-sec,
.imported-page .faq-sec {background:var(--sage);}
.imported-page.faq-head,
.imported-page .faq-head {max-width:760px;margin:0 auto 3.2rem;text-align:center;}
.imported-page.faq-list,
.imported-page .faq-list {max-width:800px;margin:0 auto;}
.imported-page.faq-item,
.imported-page .faq-item {border-bottom:1px solid var(--border-dark);}
.imported-page.faq-item:first-child,
.imported-page .faq-item:first-child {border-top:1px solid var(--border-dark);}
/* .faq-q-heading: some pages now wrap the button in an h3 for proper
   document outline (a question is semantically a heading). h3 has no
   box styling of its own here, but line-height is inherited — .faq-q
   below pins it explicitly to the site's base 1.6 so wrapping it in an
   h3 (which carries the generic h1-h4 line-height:1.15) can't shift it. */
.imported-page.faq-q-heading,
.imported-page .faq-q-heading {margin:0;}
.imported-page.faq-q,
.imported-page .faq-q {
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;
  background:none;border:0;text-align:left;cursor:pointer;padding:1.5rem 0;
  /* was pointed at --font-heading (podium-soft-variable, unresponsive to
     weight) — switched to the body font so FAQ questions actually lighten.
     This only matters for the Pattern-A markup (h3.faq-q-heading wrapping
     button.faq-q, growth-lock-audit + locallead-ai) where the question text
     is a direct child of this button; Pattern-B pages (bare h3 nested
     inside the button) already get the fix via the h3,h4 rule regardless. */
  font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);
  font-size:1.05rem;color:var(--charcoal);line-height:1.6;
}
.imported-page.faq-ind,
.imported-page .faq-ind {
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--charcoal);color:var(--lime);
  display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;position:relative;
}
.imported-page.faq-ind::before,
.imported-page .faq-ind::before,
.imported-page.faq-ind::after,
.imported-page .faq-ind::after {content:"";position:absolute;background:var(--lime);border-radius:var(--radius-hairline);}
.imported-page.faq-ind::before,
.imported-page .faq-ind::before {width:11px;height:2px;}
.imported-page.faq-ind::after,
.imported-page .faq-ind::after {width:2px;height:11px;transition:transform .3s ease;}
.imported-page.faq-item[data-open="true"] .faq-ind::after,
.imported-page .faq-item[data-open="true"] .faq-ind::after {transform:rotate(90deg);opacity:0;}
.imported-page.faq-a,
.imported-page .faq-a {overflow:hidden;max-height:0;transition:max-height .35s ease;}
.imported-page.faq-a p,
.imported-page .faq-a p {padding:0 0 1.6rem;max-width:70ch;color:var(--text-body);line-height:1.7;}
/* Bumped from 600px: this is a no-JS/CSS-only fallback cap (JS normally
   sets an exact inline max-height from scrollHeight), and some pages'
   answers have grown past 600px of content. A larger cap never clips
   shorter answers on the other pages using .faq-item, so this is safe
   to raise sitewide. */
.imported-page.faq-item[data-open="true"] .faq-a,
.imported-page .faq-item[data-open="true"] .faq-a {max-height:900px;}

/* ---------- FINAL CTA BAND (forest) ---------- */
.imported-page.final-band,
.imported-page .final-band {background:var(--forest);color:var(--white);text-align:center;}
.imported-page.final-band-inner,
.imported-page .final-band-inner {max-width:760px;margin:0 auto;}
.imported-page.final-band h2,
.imported-page .final-band h2 {color:var(--white);margin-bottom:1.4rem;}
.imported-page.final-band p.lede,
.imported-page .final-band p.lede {font-size:1.1rem;color:var(--text-soft-forest);margin-bottom:2rem;}
.imported-page.final-band .btn,
.imported-page .final-band .btn {margin-bottom:1.3rem;}
.imported-page.final-band .soft-line,
.imported-page .final-band .soft-line {font-style:italic;color:var(--text-faint-forest);font-size:.95rem;}

/* ---------- FOOTER ---------- */
.imported-page.footer,
.imported-page .footer {background:var(--black);color:var(--text-caption-dark);padding:5rem 0 0;}
.imported-page.footer-top,
.imported-page .footer-top {display:grid;grid-template-columns:1.1fr .65fr .85fr .85fr .7fr 1.15fr;gap:2.2rem;align-items:start;padding-bottom:3.5rem;}
.imported-page.footer-brand,
.imported-page .footer-brand {display:flex;flex-direction:column;gap:1.2rem;align-items:flex-start;}
.imported-page.footer-brand img,
.imported-page .footer-brand img {height:96px;width:auto;}
.imported-page.footer-tag,
.imported-page .footer-tag {font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tag-dark);}
.imported-page.footer-cta,
.imported-page .footer-cta {font-size:.88rem;padding:.65rem 1.1rem;}
.imported-page.footer-col h4,
.imported-page .footer-col h4,
.imported-page.footer-col .footer-heading,
.imported-page .footer-col .footer-heading {color:var(--cream);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-family:var(--font-body);font-variation-settings:var(--fvs-heading);}
.imported-page.footer-col a,
.imported-page .footer-col a {display:block;color:var(--text-caption-dark);text-decoration:none;margin-bottom:.6rem;font-size:.95rem;transition:color .25s ease;}
.imported-page.footer-col a:hover,
.imported-page .footer-col a:hover {color:var(--lime);}
.imported-page.footer .contact-col,
.imported-page .footer .contact-col {display:flex;flex-direction:column;gap:1.1rem;}
.imported-page.footer .nap,
.imported-page .footer .nap {font-size:.95rem;line-height:1.9;}
.imported-page.footer .nap a,
.imported-page .footer .nap a {display:inline;margin:0;color:var(--white);text-decoration:none;}
.imported-page.footer .nap a:hover,
.imported-page .footer .nap a:hover {color:var(--lime);}
.imported-page.footer-map,
.imported-page .footer-map {position:relative;width:100%;height:200px;margin-top:1.4rem;border-radius:var(--radius-media);overflow:hidden;border:1px solid var(--border-light);}
.imported-page.footer-map iframe,
.imported-page .footer-map iframe {filter:grayscale(1) invert(.92) hue-rotate(185deg) brightness(.9) contrast(.92);}
.imported-page.map-link,
.imported-page .map-link {position:absolute;left:.8rem;bottom:.8rem;background:rgba(var(--surface-darker-rgb),.85);color:var(--cream);text-decoration:none;font-size:.78rem;padding:.4rem .7rem;border-radius:var(--radius-chip);letter-spacing:.04em;}
.imported-page.map-link:hover,
.imported-page .map-link:hover {color:var(--lime);}
.imported-page.footer-bar,
.imported-page .footer-bar {border-top:1px solid var(--border-light);padding:1.4rem 0;}
.imported-page.footer .fine,
.imported-page .footer .fine {margin-top:0;text-align:center;font-size:.8rem;color:var(--muted);}
@media(max-width:1023px){
.imported-page.footer-top,
.imported-page .footer-top {grid-template-columns:1fr 1fr;}
}
@media(max-width:767px){

  .imported-page.footer-top,
.imported-page .footer-top {grid-template-columns:1fr;gap:2.2rem;}
  .imported-page.footer-map,
.imported-page .footer-map {height:auto;aspect-ratio:4/3;}

}

/* ---------- MOBILE SCALE ---------- */
@media(max-width:767px){

  .imported-page section {padding:var(--section-pad-y-mobile) 0;}
  .imported-page.mhero,
.imported-page .mhero {padding:8.5rem 0 3.5rem;min-height:auto;}

}

/* =====================================================================
   NEW COMPONENTS — added for /who-we-serve/garage-door/ and
   /case-studies/fort-wayne-door-dock/ (vertical + case-study page types).
   Reuses existing tokens/type only; nothing above this block was edited.
   ===================================================================== */

/* ---------- CASE META CHIPS (mini-hero eyebrow row — case-study pages) ---------- */
.imported-page.case-meta,
.imported-page .case-meta {display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.4rem;position:relative;z-index:2;}
.imported-page.case-meta-chip,
.imported-page .case-meta-chip {
  display:inline-block;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;
  color:var(--text-lead-dark);border:1px solid var(--border-light-2);border-radius:var(--radius-pill);
  padding:.35rem .8rem;font-variation-settings:var(--fvs-heading);
  background:var(--fill-light-04);
}
.imported-page.case-meta-chip strong,
.imported-page .case-meta-chip strong {color:var(--lime);font-variation-settings:var(--fvs-heading);}

/* ---------- PULL QUOTE (Joe Schenke testimonial — garage-door + case-study pages) ---------- */
/* Brand-new wrapper (About page testimonial section had no heading
   before) — same "-head" pattern as .tiles-head/.stat-band-head:
   centers the block and lets the generic h2{} rule handle typography. */
.imported-page.proof-head,
.imported-page .proof-head {max-width:700px;margin:0 auto 2.4rem;text-align:center;}
.imported-page.pull-quote,
.imported-page .pull-quote {position:relative;}
.imported-page.pull-quote .qmark,
.imported-page .pull-quote .qmark {
  display:block;font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);line-height:1;color:var(--lime);
}
.imported-page.pull-quote blockquote,
.imported-page .pull-quote blockquote {
  margin:0 0 1rem;font-family:var(--font-body);
  font-variation-settings:var(--fvs-quote);font-weight:var(--fw-normal);line-height:1.6;
}
.imported-page.pull-quote cite,
.imported-page .pull-quote cite {display:block;font-style:normal;}

/* compact variant — dark card, sticky aside (garage-door page) */
.imported-page.pull-quote--mini,
.imported-page .pull-quote--mini {background:var(--surface-dark);color:var(--cream);border-radius:var(--radius-card);padding:1.7rem 1.5rem;}
.imported-page.pull-quote--mini .qmark,
.imported-page .pull-quote--mini .qmark {font-size:2.4rem;margin-bottom:.2rem;}
.imported-page.pull-quote--mini blockquote,
.imported-page .pull-quote--mini blockquote {font-size:.92rem;line-height:1.55;color:var(--text-quote-dark);}
.imported-page.pull-quote--mini cite,
.imported-page .pull-quote--mini cite {font-size:.76rem;color:var(--text-meta-dark);text-transform:uppercase;letter-spacing:.05em;}

/* band variant — heads the dark stat-band (garage-door page) */
.imported-page.pull-quote--band,
.imported-page .pull-quote--band {max-width:760px;margin:0 auto 3.2rem;text-align:center;position:relative;z-index:1;}
.imported-page.pull-quote--band .qmark,
.imported-page .pull-quote--band .qmark {font-size:3.6rem;margin-bottom:.2rem;}
.imported-page.pull-quote--band blockquote,
.imported-page .pull-quote--band blockquote {font-size:clamp(1.15rem,2vw,1.55rem);color:var(--white);line-height:1.55;}
.imported-page.pull-quote--band cite,
.imported-page .pull-quote--band cite {font-size:.82rem;color:var(--text-caption-dark);text-transform:uppercase;letter-spacing:.08em;}

/* large variant — standalone light-bg section (case-study page) */
.imported-page.pull-quote--large,
.imported-page .pull-quote--large {max-width:820px;margin:0 auto;text-align:center;}
.imported-page.pull-quote--large .qmark,
.imported-page .pull-quote--large .qmark {font-size:4.6rem;margin-bottom:.3rem;}
.imported-page.pull-quote--large blockquote,
.imported-page .pull-quote--large blockquote {font-size:clamp(1.4rem,3vw,2.15rem);color:var(--charcoal);line-height:1.35;}
.imported-page.pull-quote--large cite,
.imported-page .pull-quote--large cite {font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}

/* ---------- CASE STUDY NARRATIVE WIDTH ----------
   Reuses .main-col's prose typography (colors, .lede, strong, .cu, mark.hl)
   outside the .page-grid sticky-aside context, for single-column sections. */
.imported-page.case-narrative,
.imported-page .case-narrative {max-width:760px;margin:0 auto;}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){

  .imported-page {scroll-behavior:auto;}
  .imported-page *,
.imported-page *::before,
.imported-page *::after {animation:none!important;transition:none!important;}
  .imported-page.mhero-dots,
.imported-page .mhero-dots {animation:none;}

}

/* ---------- NO-JS / PRE-ANIMATION SAFETY ----------
   Everything must be visible without GSAP. Only elements the JS actively
   manages start hidden, and only once JS confirms it's running (see
   site.js: it adds .js-anim to <html> before setting any opacity:0). */
.imported-page:not(.js-anim) [data-reveal],
.imported-page:not(.js-anim) mark.hl {
  opacity:1!important;filter:none!important;transform:none!important;
}

/* ---------- DIAGNOSTIC PROOF CARD ---------- */
.imported-page.diagnostic-card h3,
.imported-page .diagnostic-card h3 {
  margin:0 0 .85rem;
  color:var(--white);
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-body-med);
  font-size:1.25rem;
  line-height:1.2;
}
.imported-page.diagnostic-intro,
.imported-page .diagnostic-intro {
  margin:0 0 1.25rem;
  color:var(--text-lead-dark);
  font-size:.92rem;
  line-height:1.5;
}
.imported-page.diagnostic-list,
.imported-page .diagnostic-list {display:grid;gap:.95rem;margin:0 0 1.25rem;}
.imported-page.diagnostic-item,
.imported-page .diagnostic-item {display:grid;grid-template-columns:2rem 1fr;gap:.55rem;align-items:start;}
.imported-page.diagnostic-num,
.imported-page .diagnostic-num {color:var(--lime);font-family:var(--font-body);font-variation-settings:var(--fvs-stat);font-size:.75rem;letter-spacing:.08em;line-height:1.45;}
.imported-page.diagnostic-item strong,
.imported-page .diagnostic-item strong {display:block;color:var(--white);font-size:.9rem;line-height:1.25;}
.imported-page.diagnostic-item div > span,
.imported-page .diagnostic-item div > span {display:block;margin-top:.18rem;color:var(--text-caption-dark);font-size:.82rem;line-height:1.45;}
.imported-page.diagnostic-proof,
.imported-page .diagnostic-proof {margin:0 0 1.15rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.14);color:var(--text-lead-dark);font-size:.84rem;line-height:1.5;}
.imported-page.diagnostic-proof strong,
.imported-page .diagnostic-proof strong {color:var(--white);}

/* Keep trademarked menu labels together as one flex item. */
.imported-page.menu-links a .menu-label,
.imported-page .menu-links a .menu-label {display:inline-block;white-space:nowrap;}
.imported-page.menu-links a .menu-label .tm,
.imported-page .menu-links a .menu-label .tm {display:inline;font-size:.42em;vertical-align:super;line-height:0;}

/* Keep the full mobile navigation readable without wrapping long labels. */
@media (max-width: 600px){

  .imported-page.menu-links,
.imported-page .menu-links {padding-left:1rem;padding-right:1rem;gap:.18rem;}
  .imported-page.menu-links a,
.imported-page .menu-links a {
    font-size:clamp(1.35rem,5.8vw,1.75rem);
    letter-spacing:.03em;
    gap:.65rem;
    white-space:nowrap;
  }
  .imported-page.menu-links a .mk,
.imported-page .menu-links a .mk {width:12px;height:28px;}

}

/* Final phone-width menu sizing: keep every navigation label on one line. */
@media (max-width: 600px){

  .imported-page.menu-links,
.imported-page .menu-links {padding-left:.75rem;padding-right:.75rem;gap:.12rem;}
  .imported-page.menu-links a,
.imported-page .menu-links a {
    font-size:clamp(1.05rem,4.8vw,1.35rem);
    letter-spacing:.01em;
    gap:.4rem;
    white-space:nowrap;
  }
  .imported-page.menu-links a .mk,
.imported-page .menu-links a .mk {width:10px;height:23px;}

}

/* Viewport-scaled mobile menu typography: bounded, proportional, and single-line. */
@media (max-width: 600px){

  .imported-page.menu-links a,
.imported-page .menu-links a {
    font-size:clamp(.95rem,4.2vw,1.35rem);
    line-height:1;
    letter-spacing:.01em;
    white-space:nowrap;
  }

}

/* Readable phone menu range: larger on standard phones, still bounded on narrow screens. */
@media (max-width: 600px){

  .imported-page.menu-links a,
.imported-page .menu-links a {font-size:clamp(1rem,5.8vw,1.55rem);}

}

/* Comfortable mobile tap spacing: preserve one-line labels and provide a larger hit area. */
@media (max-width: 600px){

  .imported-page.menu-links,
.imported-page .menu-links {gap:clamp(.35rem,1.8vh,.85rem);}
  .imported-page.menu-links a,
.imported-page .menu-links a {min-height:44px;padding-block:clamp(.15rem,1vh,.4rem);}

}

/* Middle-ground mobile menu spacing: easier to tap without excessive separation. */
@media (max-width: 600px){

  .imported-page.menu-links,
.imported-page .menu-links {gap:clamp(.25rem,1.1vh,.55rem);}
  .imported-page.menu-links a,
.imported-page .menu-links a {min-height:38px;padding-block:.05rem;}

}

/* Mobile reading gutter: keep copy and controls away from the viewport edge. */
@media (max-width: 767px){

  .imported-page.wrap,
.imported-page .wrap,
.imported-page.container,
.imported-page .container,
.imported-page.page-grid,
.imported-page .page-grid,
.imported-page.mhero-inner,
.imported-page .mhero-inner,
.imported-page.hero-inner,
.imported-page .hero-inner,
.imported-page.section-inner,
.imported-page .section-inner,
.imported-page.section-wrap,
.imported-page .section-wrap,
.imported-page.content-wrap,
.imported-page .content-wrap,
.imported-page.copy-wrap,
.imported-page .copy-wrap,
.imported-page.final-band-inner,
.imported-page .final-band-inner,
.imported-page.keycode-box,
.imported-page .keycode-box,
.imported-page.stat-band .wrap,
.imported-page .stat-band .wrap,
.imported-page.tiles-sec .wrap,
.imported-page .tiles-sec .wrap,
.imported-page.faq-sec .wrap,
.imported-page .faq-sec .wrap,
.imported-page.footer-top,
.imported-page .footer-top,
.imported-page.footer-bar,
.imported-page .footer-bar {
    padding-left:clamp(10px,4vw,20px) !important;
    padding-right:clamp(10px,4vw,20px) !important;
  }

}

/* Service-area refinement blocks */
.imported-page.area-diagnostic,
.imported-page .area-diagnostic,
.imported-page.area-faq,
.imported-page .area-faq {background:#f2f3eb;padding:clamp(2.5rem,6vw,5rem) 0}.imported-page.area-diagnostic .wrap,
.imported-page .area-diagnostic .wrap,
.imported-page.area-faq .wrap,
.imported-page .area-faq .wrap {max-width:900px}.imported-page.area-diagnostic h2,
.imported-page .area-diagnostic h2,
.imported-page.area-faq h2,
.imported-page .area-faq h2 {max-width:760px}.imported-page.area-diagnostic-intro,
.imported-page .area-diagnostic-intro {max-width:680px;margin-bottom:2rem}.imported-page.area-diagnostic-grid,
.imported-page .area-diagnostic-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:2rem 0}.imported-page.area-diagnostic-item,
.imported-page .area-diagnostic-item {border-top:1px solid rgba(11,12,16,.22);padding-top:1rem}.imported-page.area-diagnostic-item strong,
.imported-page .area-diagnostic-item strong {display:block;margin-bottom:.35rem}.imported-page.area-diagnostic-item .area-num,
.imported-page .area-diagnostic-item .area-num {color:#0b0c10;font-family:var(--font-display,sans-serif);font-size:.9rem;margin-right:.5rem}.imported-page.area-proof,
.imported-page .area-proof {border-top:1px solid rgba(11,12,16,.22);padding-top:1.25rem;max-width:720px}.imported-page.area-faq-list,
.imported-page .area-faq-list {display:grid;gap:.75rem;max-width:820px}.imported-page.area-faq details,
.imported-page .area-faq details {border-top:1px solid rgba(11,12,16,.22);padding:1rem 0}.imported-page.area-faq summary,
.imported-page .area-faq summary {cursor:pointer;font-weight:700;padding-right:2rem font-variation-settings: "wght" 700, "wdth" 100;
}.imported-page.area-faq details p,
.imported-page .area-faq details p {max-width:720px;margin:.75rem 0 0}@media(max-width:700px){
.imported-page.area-diagnostic-grid,
.imported-page .area-diagnostic-grid {grid-template-columns:1fr;gap:1.25rem}.imported-page.area-diagnostic,
.imported-page .area-diagnostic,
.imported-page.area-faq,
.imported-page .area-faq {padding-left:clamp(10px,4vw,20px);padding-right:clamp(10px,4vw,20px)}
}
.imported-page.area-local-context,
.imported-page .area-local-context {max-width:760px;border-left:3px solid #c8ff24;padding-left:1rem;margin:1rem 0 2rem}.imported-page.area-local-context strong,
.imported-page .area-local-context strong {display:block;margin-bottom:.35rem}

.imported-page.fw-local,
.imported-page .fw-local {background:#f2f3eb;color:#272a36;padding:clamp(4rem,8vw,8rem) 0}.imported-page.fw-local-head,
.imported-page .fw-local-head {max-width:850px}.imported-page.fw-local-grid,
.imported-page .fw-local-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:2.75rem}.imported-page.fw-local-grid>div,
.imported-page .fw-local-grid>div {background:#fff;border-top:3px solid #d2eb00;border-radius:.75rem;padding:1.5rem;box-shadow:0 8px 24px rgba(39,42,54,.08)}.imported-page.fw-local-grid h3,
.imported-page .fw-local-grid h3 {font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.15;letter-spacing:.01em;text-transform:none;margin:0 0 .85rem}.imported-page.fw-local-grid p,
.imported-page .fw-local-grid p {margin:0;line-height:1.55}@media(max-width:700px){
.imported-page.fw-local,
.imported-page .fw-local {padding:clamp(5.5rem,16vw,7rem) clamp(1rem,4vw,1.25rem) clamp(4.5rem,12vw,6rem)}.imported-page.fw-local-head,
.imported-page .fw-local-head {max-width:none}.imported-page.fw-local-head h2,
.imported-page .fw-local-head h2 {margin-top:.65rem;margin-bottom:1.25rem}.imported-page.fw-local-head>p:last-child,
.imported-page .fw-local-head>p:last-child {margin-bottom:2.25rem}.imported-page.fw-local-grid,
.imported-page .fw-local-grid {grid-template-columns:1fr;gap:1.25rem;margin-top:0}.imported-page.fw-local-grid>div,
.imported-page .fw-local-grid>div {padding:1.25rem}.imported-page.fw-local-grid p,
.imported-page .fw-local-grid p {margin-bottom:0;line-height:1.55}
}

/* Back-to-top: navbar-derived frosted glass */
.imported-page.back-to-top,
.imported-page .back-to-top {position:fixed;left:calc(50% - 1.3rem);bottom:.35rem;z-index:40;display:grid;place-items:center;width:2.6rem;height:2.6rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;background:rgba(0,0,0,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:rgba(242,243,235,.94);font-family:var(--font-body);font-size:1.15rem;font-weight:700;line-height:1;text-decoration:none;opacity:0!important;pointer-events:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 20px rgba(11,12,16,.18);transition:opacity .42s ease,bottom .55s cubic-bezier(.22,1,.36,1),border-radius .6s ease,background .3s ease,box-shadow .35s ease; font-variation-settings: "wght" 700, "wdth" 100;
}
.imported-page.back-to-top span,
.imported-page .back-to-top span {position:relative;z-index:1;text-shadow:0 1px 1px #00000059;}
.imported-page.back-to-top::before,
.imported-page .back-to-top::before {content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#ffffff2e,#ffffff00 42%);pointer-events:none;}
.imported-page.back-to-top::after,
.imported-page .back-to-top::after {display:none;}
.imported-page.back-to-top.is-visible,
.imported-page .back-to-top.is-visible {opacity:1!important;pointer-events:auto!important;bottom:1rem;}
.imported-page.back-to-top:hover,
.imported-page .back-to-top:hover,
.imported-page.back-to-top:focus-visible,
.imported-page .back-to-top:focus-visible {opacity:1!important;outline:none;border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;background:rgba(0,0,0,.72);bottom:1.12rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 11px 24px rgba(11,12,16,.25);}
@media(max-width:700px){
.imported-page.back-to-top,
.imported-page .back-to-top {left:calc(50% - 1.25rem);bottom:calc(env(safe-area-inset-bottom) + .35rem);width:2.5rem;height:2.5rem;font-size:1.15rem;touch-action:manipulation;}.imported-page.back-to-top.is-visible,
.imported-page .back-to-top.is-visible {bottom:max(1rem,calc(env(safe-area-inset-bottom) + .7rem));}.imported-page.back-to-top:hover,
.imported-page .back-to-top:hover,
.imported-page.back-to-top:focus-visible,
.imported-page .back-to-top:focus-visible {bottom:max(1.12rem,calc(env(safe-area-inset-bottom) + .82rem));}
}
@media(prefers-reduced-motion:reduce){
.imported-page.back-to-top,
.imported-page .back-to-top {transition:opacity .2s ease,background .2s ease;}
}


/* Continuous liquid motion: low-key at rest, more expressive while hovered. */
@keyframes backtop-idle-morph{0%,100%{border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;}50%{border-radius:53% 47% 49% 51% / 55% 48% 52% 45%;}}
@keyframes backtop-hover-morph{0%,100%{border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;}34%{border-radius:57% 43% 59% 41% / 42% 58% 43% 57%;}68%{border-radius:47% 53% 40% 60% / 60% 40% 59% 41%;}}
@keyframes backtop-idle-sheen{0%,100%{background-position:0% 0%;opacity:.52;}50%{background-position:34% 18%;opacity:.68;}}
@keyframes backtop-hover-sheen{0%,100%{background-position:0% 0%;opacity:.72;}50%{background-position:100% 42%;opacity:1;}}
.imported-page.back-to-top.is-visible,
.imported-page .back-to-top.is-visible {animation:backtop-idle-morph 9s ease-in-out infinite;}
.imported-page.back-to-top.is-visible::before,
.imported-page .back-to-top.is-visible::before {background-size:180% 180%;animation:backtop-idle-sheen 11s ease-in-out infinite;}
.imported-page.back-to-top:hover,
.imported-page .back-to-top:hover,
.imported-page.back-to-top:focus-visible,
.imported-page .back-to-top:focus-visible {animation:backtop-hover-morph 2.8s ease-in-out infinite;}
.imported-page.back-to-top:hover::before,
.imported-page .back-to-top:hover::before,
.imported-page.back-to-top:focus-visible::before,
.imported-page .back-to-top:focus-visible::before {animation:backtop-hover-sheen 2.2s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){
.imported-page.back-to-top,
.imported-page .back-to-top,
.imported-page.back-to-top::before,
.imported-page .back-to-top::before {animation:none!important;}
}


/* Social navigation */
.imported-page.social-links,
.imported-page .social-links {display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;}
.imported-page.social-links a,
.imported-page .social-links a {width:2rem;height:2rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--cream);text-decoration:none;transition:color .22s ease,background .22s ease,border-color .22s ease,transform .22s ease;}
.imported-page.social-links a:hover,
.imported-page .social-links a:hover,
.imported-page.social-links a:focus-visible,
.imported-page .social-links a:focus-visible {color:var(--charcoal);background:var(--lime);border-color:var(--lime);transform:translateY(-2px);outline:none;}
.imported-page.social-links svg,
.imported-page .social-links svg {width:1rem;height:1rem;display:block;fill:currentColor;}
.imported-page.footer-social,
.imported-page .footer-social {margin-top:1.35rem;}
.imported-page.menu-social,
.imported-page .menu-social {justify-content:center;}
@media(max-width:700px){
.imported-page.social-links,
.imported-page .social-links {gap:.4rem;}.imported-page.social-links a,
.imported-page .social-links a {width:1.9rem;height:1.9rem;}.imported-page.menu-social-wrap,
.imported-page .menu-social-wrap {margin-top:1rem;}
}


/* Menu social icons sit in the same action row as contact details and the CTA. */
.imported-page.menu-foot>.menu-social,
.imported-page .menu-foot>.menu-social {flex:0 0 auto;justify-content:center;}
@media(max-width:700px){
.imported-page.menu-foot>.menu-social,
.imported-page .menu-foot>.menu-social {flex-basis:100%;}
}


.imported-page.footer-social-label,
.imported-page .footer-social-label {margin:1.35rem 0 .6rem;color:#8b8fa0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-variation-settings:"wdth" 100,"wght" 600;}
.imported-page.footer-social-label+.footer-social,
.imported-page .footer-social-label+.footer-social {margin-top:0;}


/* Approved logo assets */
.imported-page.nav-word,
.imported-page .nav-word {display:inline-flex;align-items:center;line-height:0;}
.imported-page.nav-word .nav-logo,
.imported-page .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
.imported-page.footer-brand .footer-logo,
.imported-page .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
.imported-page.nav-word .nav-logo,
.imported-page .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}


/* Proportional approved logo sizing. Inline image dimensions protect this scale even before CSS finishes loading. */
.imported-page.nav-word .nav-logo,
.imported-page .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
.imported-page.footer-brand .footer-logo,
.imported-page .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
.imported-page.nav-word .nav-logo,
.imported-page .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}

/* SEO audit right rail: container surface for diagnostic content. */
.imported-page.diagnostic-card,
.imported-page .diagnostic-card {
  background:var(--surface-dark);
  color:var(--cream);
  border-radius:var(--radius-card);
  padding:2rem 1.7rem;
  box-shadow:0 20px 45px rgba(var(--black-rgb),.25);
}
.imported-page.diagnostic-card .eyebrow,
.imported-page .diagnostic-card .eyebrow {color:var(--lime);opacity:.9;margin-bottom:.9rem;}
@media(max-width:860px){
.imported-page.diagnostic-card,
.imported-page .diagnostic-card {margin:0 0 1.4rem;}
}


/* Wider diagnostic audit rail: shared by all service and audience templates with a diagnostic card. */
@media(min-width:1100px){

  .imported-page.page-grid.diagnostic-template,
.imported-page .page-grid.diagnostic-template {grid-template-columns:minmax(0,1fr) 400px;gap:2.6rem;}

}
@media(min-width:861px) and (max-width:1099px){

  .imported-page.page-grid.diagnostic-template,
.imported-page .page-grid.diagnostic-template {grid-template-columns:minmax(0,1fr) 350px;gap:2.2rem;}

}

/* KeyCode System: five GrowthKeys presented as lighter, vertically stacked cards. */
.imported-page.five-keys-section > .keycode-card,
.imported-page .five-keys-section > .keycode-card {
  display: grid;
  grid-template-columns: minmax(7rem, 0.34fr) minmax(0, 1fr);
  gap: 0.75rem 1.35rem;
  align-items: start;
  margin: 1.25rem 0 0;
  padding: 1.2rem 1.35rem;
  background: #fff;
  border: 1px solid rgba(39, 42, 54, 0.12);
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(39, 42, 54, 0.07);
}
.imported-page.five-keys-section > .keycode-card h3,
.imported-page .five-keys-section > .keycode-card h3 {
  grid-column: 1;
  margin: 0;
  color: var(--charcoal, #272a36);
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.2;
 font-variation-settings: "wght" 500, "wdth" 100;
}
.imported-page.five-keys-section > .keycode-card p,
.imported-page .five-keys-section > .keycode-card p {
  grid-column: 2;
  margin: 0;
  max-width: none;
}
@media (max-width: 700px) {

  .imported-page.five-keys-section > .keycode-card,
.imported-page .five-keys-section > .keycode-card {
    grid-template-columns: 1fr;
    gap: 0.55rem;
    padding: 1.05rem 1rem;
    border-radius: 15px;
  }
  .imported-page.five-keys-section > .keycode-card h3,
.imported-page .five-keys-section > .keycode-card h3,
.imported-page.five-keys-section > .keycode-card p,
.imported-page .five-keys-section > .keycode-card p {
    grid-column: 1;
  }

}




/* Final-CTA checklists: high contrast, with the Blog CTA preserving narrative order above its split. */
.imported-page.final-band .plain-list li,
.imported-page .final-band .plain-list li,
.imported-page.final-band .gk-bullet-list li,
.imported-page .final-band .gk-bullet-list li {color:var(--text-soft-forest);text-align:left;}
.imported-page.final-band--split-list .final-band-inner,
.imported-page .final-band--split-list .final-band-inner {max-width:920px;text-align:center;}
.imported-page.final-band--split-list .final-cta-copy,
.imported-page .final-band--split-list .final-cta-copy {max-width:760px;margin:0 auto;text-align:center;}
.imported-page.final-band--split-list .final-cta-copy p,
.imported-page .final-band--split-list .final-cta-copy p {color:var(--text-soft-forest);}
.imported-page.final-band--split-list .final-cta-split,
.imported-page .final-band--split-list .final-cta-split {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.25rem,5vw,4.5rem);align-items:center;max-width:900px;margin:2.25rem auto 0;text-align:left;}
.imported-page.final-band--split-list .final-cta-split .plain-list,
.imported-page .final-band--split-list .final-cta-split .plain-list {margin:0;max-width:100%;text-align:left;}
.imported-page.final-band--split-list .final-cta-actions,
.imported-page .final-band--split-list .final-cta-actions {text-align:left;}
.imported-page.final-band--split-list .final-cta-actions p,
.imported-page .final-band--split-list .final-cta-actions p {color:var(--text-soft-forest);margin-bottom:1rem;}
.imported-page.final-band--split-list .final-cta-actions .cta-row,
.imported-page .final-band--split-list .final-cta-actions .cta-row {margin:1.8rem 0 0;}
@media(max-width:767px){

  .imported-page.final-band--split-list .final-cta-split,
.imported-page .final-band--split-list .final-cta-split {display:block;margin-top:1.65rem;}
  .imported-page.final-band--split-list .final-cta-split .plain-list,
.imported-page .final-band--split-list .final-cta-split .plain-list {max-width:420px;margin:0 auto 2rem;text-align:left;}
  .imported-page.final-band--split-list .final-cta-actions,
.imported-page .final-band--split-list .final-cta-actions {text-align:center;}

}


.imported-page.mhero h1.contact-eyebrow,
.imported-page .mhero h1.contact-eyebrow {
    font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);
    font-weight:var(--fw-normal);font-size:.75rem;line-height:1.2;
    letter-spacing:.12em;text-transform:uppercase;color:var(--lime);margin:0 0 1rem;
  }
  .imported-page.mhero h2.contact-hero-display,
.imported-page .mhero h2.contact-hero-display {
    font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);
    font-weight:var(--fw-normal);font-size:clamp(2.4rem,5.4vw,4.4rem);
    line-height:1.05;margin-bottom:1.4rem;color:var(--white);
  }
  .imported-page.mhero h2.contact-hero-display .lime,
.imported-page .mhero h2.contact-hero-display .lime {color:var(--lime);}
  .imported-page.contact-section-subhead,
.imported-page .contact-section-subhead {margin-top:.15rem;margin-bottom:1rem;}
  .imported-page.tiles-head .contact-form-copy,
.imported-page .tiles-head .contact-form-copy {max-width:62ch;margin:0 auto 1rem;color:var(--text-body);}
  .imported-page.keycode-sec .contact-local-list,
.imported-page .keycode-sec .contact-local-list {max-width:50rem;margin:1.5rem auto 2rem;}
  .imported-page.final-band .contact-final-subhead,
.imported-page .final-band .contact-final-subhead {color:var(--white);margin:-.4rem 0 1.2rem;}



/* ── Undo Tailwind preflight within imported page ── */
:is(.imported-header,.imported-footer) :where(*, *::before, *::after) {
    box-sizing: border-box;
}
:is(.imported-header,.imported-footer) :where(h1, h2, h3, h4, h5, h6) {
    font-size: revert;
    font-weight: revert;
}
:is(.imported-header,.imported-footer) :where(p) {
    margin: revert;
}
:is(.imported-header,.imported-footer) :where(a) {
    color: revert;
    text-decoration: revert;
}
:is(.imported-header,.imported-footer) :where(ul, ol) {
    list-style: revert;
    margin: revert;
    padding: revert;
}
:is(.imported-header,.imported-footer) :where(img) {
    display: revert;
    max-width: 100%;
}
:is(.imported-header,.imported-footer) :where(blockquote, figure, figcaption, hr, pre) {
    margin: revert;
}
:is(.imported-header,.imported-footer) :where(table) {
    border-collapse: revert;
    border-spacing: revert;
}
/* Source: site.css */
/* =====================================================================
   GROWTH KEYS — SHARED SUB-PAGE STYLESHEET
   Tokens, type, header/nav, dividers, buttons and footer are lifted
   verbatim from /concepts/concept-g-final.html (the approved homepage)
   so every sub-page reads as the same site. New here: mini-hero,
   sticky-aside content grid, proof/CTA cards, dark stat band, tile grid,
   FAQ accordion, final CTA band.

   TOKEN INDEX (see :root below for values/comments)
   - Color / brand core:      --lime --charcoal --forest --cream --sage
                               --muted --border --black --white
   - Color / dark surfaces:   --surface-dark --surface-darker
   - Color / text on light:   --text-body
   - Color / text on dark:    --text-lead-dark --text-caption-dark
                               --text-meta-dark --text-quote-dark
                               --text-sep-dark --text-tag-dark
   - Color / text on forest:  --text-soft-forest --text-faint-forest
   - Color / accent fill:     --chip-green
   - Color / rgb triplets:    --white-rgb --black-rgb --charcoal-rgb
                               --surface-darker-rgb --lime-rgb
   - Color / derived borders: --border-light --border-light-2
                               --fill-light-04 --border-dark
   - Type / families:         --font-heading --font-body
   - Type / variable axes:    --fvs-body --fvs-heading --fvs-body-med
                               --fvs-quote --fvs-stat --fvs-soft
   - Type / weight fallback:  --fw-heading --fw-normal
   - Structure / radii:       --radius-sm --radius-chip --radius-media
                               --radius-tile --radius-card --radius-pill
                               --radius-hairline
   - Structure / spacing:     --section-pad-y --section-pad-y-mobile
   - Structure / motion:      --ease-standard
   - Structure / keyhole:     --khole-mask

   USAGE RULES
   - --lime never sits under long-form body copy — labels, numerals,
     underlines and single accent words only; body copy stays
     --charcoal / --text-body.
   - Text ON lime is always dark (--charcoal), never white/cream.
   - Trademark glyphs use <sup class="tm"> (styled by .tm) — never a bare
     ™ character inline.
   - Dark cards/surfaces (--surface-dark / --surface-darker) pair only
     with --cream, --white, or the --text-*-dark family — never
     --text-body (that's the light-background color).
   - --chip-green is the keyhole-chip square fill; the keyhole glyph on
     top of it is always --lime.
   - mark.hl (lime sweep) is capped at 2-3 per page per the
     animation-restraint rule.
   ===================================================================== */

:is(.imported-header,.imported-footer) {
  /* ---------- COLOR: BRAND CORE (existing — verbatim, names unchanged) ---------- */
  --lime:#cfff2e;
  --charcoal:#272a36;
  --forest:#3f524e;
  --cream:#f2f3eb;
  --sage:#e3e5d7;
  --muted:#6b7280;
  --border:#cbd5e1;
  --black:#000000;
  --white:#ffffff;

  /* ---------- COLOR: DARK SURFACES ---------- */
  --surface-dark:#15171e;      /* cards, overlay menu, mini-hero base, pull-quote--mini */
  --surface-darker:#0b0c10;    /* darkest layer — mhero gradient top, stat-band bg */

  /* ---------- COLOR: TEXT ON LIGHT BACKGROUNDS ---------- */
  --text-body:#3d4150;         /* paragraph copy on cream/sage — main-col, plain-list, tile, keycode, faq */

  /* ---------- COLOR: TEXT ON DARK BACKGROUNDS (named by role) ---------- */
  --text-lead-dark:#d7d9de;    /* lead/lede copy on near-black — mhero-lead, stat-band lede/note, case-meta-chip */
  --text-caption-dark:#b6b9c2; /* captions/labels/links on dark — menu-foot, proof-label, sb-label, footer */
  --text-meta-dark:#9aa0af;    /* smallest meta text on dark — breadcrumbs, mini pull-quote citation */
  --text-quote-dark:#e4e6ea;   /* quote body inside a dark card — pull-quote--mini blockquote */
  --text-sep-dark:#4b5563;     /* breadcrumb separator glyph */
  --text-tag-dark:#8b8fa0;     /* footer eyebrow tag */

  /* ---------- COLOR: TEXT ON FOREST (final CTA band) ---------- */
  --text-soft-forest:#dfe3d9;  /* lede copy on forest background */
  --text-faint-forest:#c7cfc4; /* italic fine-print line on forest background */

  /* ---------- COLOR: ACCENT FILL ---------- */
  --chip-green:#293726;        /* keyhole-chip square fill (plain-list, tile grid); lime keyhole sits on top */

  /* ---------- COLOR: RGB TRIPLETS (for alpha compositing via rgba(var(..),a)) ---------- */
  --white-rgb:255,255,255;
  --black-rgb:0,0,0;
  --charcoal-rgb:39,42,54;        /* == --charcoal, expressed as components for alpha use */
  --surface-darker-rgb:11,12,16;  /* == --surface-darker, expressed as components for alpha use */
  --lime-rgb:207,255,46;          /* == --lime, expressed as components for alpha use */

  /* ---------- COLOR: DERIVED BORDERS & WASHES ---------- */
  --border-light:rgba(var(--white-rgb),.08);    /* hairline on dark — nav.scrolled, menu-foot, footer-map, footer-bar */
  --border-light-2:rgba(var(--white-rgb),.18);  /* chip border on dark — case-meta-chip */
  --fill-light-04:rgba(var(--white-rgb),.04);   /* subtle white wash — case-meta-chip background */
  --border-dark:rgba(var(--charcoal-rgb),.14);  /* hairline on light — faq-item dividers */

  /* ---------- TYPOGRAPHY: FAMILIES ---------- */
  --font-heading:"podium-soft-variable",sans-serif;
  --font-body:"podium-sharp-variable",sans-serif;

  /* ---------- TYPOGRAPHY: VARIABLE-FONT AXES (font-variation-settings), named by role ---------- */
  --fvs-body:"wdth" 100,"wght" 500;      /* base body copy */
  --fvs-heading:"wdth" 100,"wght" 600;   /* headings, eyebrows, buttons, links, chip/strong emphasis */
  --fvs-body-med:"wdth" 100,"wght" 640;  /* cta-card h3, and (Aug 2026) the default
     weight for ALL medium subheadings (generic h3/h4) — podium-soft-variable
     (--fvs-heading) was confirmed via direct browser testing to NOT respond to
     font-variation-settings/font-weight at all (measured identical glyph widths
     at wght 100 through 900), so anything that needs to read lighter than the
     big uppercase h1/h2 display treatment must use the body font instead. */
  --fvs-quote:"wdth" 100,"wght" 480;     /* pull-quote blockquote body */
  --fvs-stat:"wdth" 100,"wght" 700;      /* stat numerals — proof-num, sb-num */
  --fvs-soft:"wght" 400;                 /* .soft utility — no width axis */

  /* ---------- TYPOGRAPHY: FONT-WEIGHT FALLBACK COMPANIONS ---------- */
  --fw-heading:900;  /* paired with --fvs-heading on true heading elements (h1-h4, nav-word, menu-links, qmark) */
  --fw-normal:400;   /* paired with --fvs-* on non-bold roles (soft, tile/cta/faq headings, quote body) */

  /* ---------- STRUCTURE: RADII (actual set in use, audited) ---------- */
  --radius-sm:5px;        /* .btn */
  --radius-chip:6px;      /* keyhole-chip squares, map-link badge */
  --radius-media:12px;    /* footer-map */
  --radius-tile:14px;     /* tile grid cards */
  --radius-card:16px;     /* proof-card, cta-card, pull-quote--mini */
  --radius-pill:999px;    /* case-meta-chip */
  --radius-hairline:1px;  /* nav-burger bars, faq-ind plus/minus marks */

  /* ---------- STRUCTURE: SECTION SPACING ---------- */
  --section-pad-y:8.5rem;         /* default <section> vertical padding, desktop */
  --section-pad-y-mobile:4.75rem; /* <=767px override */

  /* ---------- STRUCTURE: MOTION ---------- */
  --ease-standard:cubic-bezier(.4,0,.2,1); /* .btn hover easing */

  /* ---------- STRUCTURE: KEYHOLE DIVIDER MASK ----------
     Brand keyhole silhouette (matches assets/img/icon.svg), inlined as a
     data-URI mask so it renders in any currentColor/var(--lime) context
     without an extra <img>. Single closed path, viewBox 0 0 177.57 442.31 —
     do not hand-edit the "d" attribute; regenerate from the source SVG if
     the mark changes. Reused verbatim by .khole and .plain-list li::after
     (each sets it on both the mask and -webkit-mask properties). */
  --khole-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>");
}
:is(.imported-header,.imported-footer) * {margin:0;padding:0;box-sizing:border-box;}
:is(.imported-header,.imported-footer) {scroll-behavior:smooth;}
:is(.imported-header,.imported-footer) {
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-body);
  background:var(--cream);
  color:var(--charcoal);
  line-height:1.6;
}
:is(.imported-header,.imported-footer) h1,
:is(.imported-header,.imported-footer) h2,
:is(.imported-header,.imported-footer) h3,
:is(.imported-header,.imported-footer) h4 {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  line-height:1.15;
}
:is(.imported-header,.imported-footer) h1 {text-transform:uppercase;letter-spacing:.06em;line-height:.95;}
:is(.imported-header,.imported-footer) h2 {text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);font-variation-settings:var(--fvs-heading);line-height:1.04;margin-bottom:1.3rem;}
:is(.imported-header,.imported-footer) h3 {font-size:clamp(1.15rem,2vw,1.4rem);}
/* (Aug 2026) Medium subheadings — section-kickers, FAQ questions, card
   headlines — switch to the body font at a lighter weight for legibility.
   This does NOT apply to the handful of h3/h4 elements that are actually
   big uppercase display headlines wearing an h3/h4 tag for SEO-hierarchy
   reasons (e.g. .stat-band-head, .founder-headline, .tiles-head h3,
   .keycode-box h3, and several page-scoped classes) — those each carry an
   explicit override below/inline that re-asserts the heavy heading font,
   specifically so they don't inherit this rule. */
:is(.imported-header,.imported-footer) h3,
:is(.imported-header,.imported-footer) h4 {font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);}
:is(.imported-header,.imported-footer).tm,
:is(.imported-header,.imported-footer) .tm {font-size:.42em;vertical-align:super;letter-spacing:0;line-height:0;font-variation-settings:var(--fvs-heading);}
:is(.imported-header,.imported-footer) a {color:inherit;}
/* In-body SEO internal links: invisible until hover, so a linked keyword
   inside a paragraph reads as plain copy, not a styled link. Underline
   appears on hover/focus as the only affordance (WCAG requires links be
   distinguishable by more than color alone — hover/focus state satisfies
   that without visually interrupting the sentence at rest). Scoped to a
   dedicated class so it never touches nav/footer/CTA/.klink card links. */
:is(.imported-header,.imported-footer) a.inline-link {text-decoration:none;color:inherit;}
:is(.imported-header,.imported-footer) a.inline-link:hover,
:is(.imported-header,.imported-footer) a.inline-link:focus-visible {text-decoration:underline;}
:is(.imported-header,.imported-footer) img {max-width:100%;display:block;}
:is(.imported-header,.imported-footer).wrap,
:is(.imported-header,.imported-footer) .wrap {max-width:1200px;margin:0 auto;padding:0 1.5rem;}
:is(.imported-header,.imported-footer) section {padding:var(--section-pad-y) 0;}
:is(.imported-header,.imported-footer).eyebrow,
:is(.imported-header,.imported-footer) .eyebrow {
  text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--muted);
  font-variation-settings:var(--fvs-heading);margin-bottom:1.1rem;
}
:is(.imported-header,.imported-footer).btn,
:is(.imported-header,.imported-footer) .btn {
  display:inline-block;background:var(--lime);color:var(--charcoal);
  border:none;border-radius:var(--radius-sm);padding:.75rem 1.5rem;
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-heading);
  font-size:1rem;text-decoration:none;cursor:pointer;
  transition:all .5s var(--ease-standard);
}
:is(.imported-header,.imported-footer).btn:hover,
:is(.imported-header,.imported-footer) .btn:hover {background:var(--forest);color:var(--white);transform:scale(1.05);}
:is(.imported-header,.imported-footer).btn-ghost,
:is(.imported-header,.imported-footer) .btn-ghost {background:transparent;color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--charcoal);}
:is(.imported-header,.imported-footer).btn-ghost:hover,
:is(.imported-header,.imported-footer) .btn-ghost:hover {background:var(--forest);color:var(--white);box-shadow:inset 0 0 0 2px var(--forest);transform:scale(1.05);}
:is(.imported-header,.imported-footer).btn-ghost-light,
:is(.imported-header,.imported-footer) .btn-ghost-light {background:transparent;color:var(--cream);box-shadow:inset 0 0 0 2px var(--cream);}
:is(.imported-header,.imported-footer).btn-ghost-light:hover,
:is(.imported-header,.imported-footer) .btn-ghost-light:hover {background:var(--lime);color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--lime);}
:is(.imported-header,.imported-footer).soft,
:is(.imported-header,.imported-footer) .soft {font-family:var(--font-heading);font-variation-settings:var(--fvs-soft);font-weight:var(--fw-normal);}

/* highlight sweep — used sparingly (2-3 per page, per animation-restraint rule) */
:is(.imported-header,.imported-footer) mark.hl {background-color:transparent;
  color:inherit;padding:.05em .12em;
  background-image:linear-gradient(var(--lime),var(--lime));
  background-repeat:no-repeat;background-position:0 55%;background-size:100% 92%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}

/* ---------- KEYHOLE (real brand icon.svg mask) ---------- */
:is(.imported-header,.imported-footer).khole,
:is(.imported-header,.imported-footer) .khole {
  position:absolute;inset:0;display:block;background:currentColor;
  -webkit-mask:var(--khole-mask) center/contain no-repeat;
  mask:var(--khole-mask) center/contain no-repeat;
}

/* ---------- SHARP "PYRAMIDS" SECTION DIVIDERS (exact geometry) ---------- */
:is(.imported-header,.imported-footer).pyr,
:is(.imported-header,.imported-footer) .pyr {display:block;line-height:0;font-size:0;position:relative;z-index:5;overflow:hidden;}
:is(.imported-header,.imported-footer).pyr svg,
:is(.imported-header,.imported-footer) .pyr svg {display:block;width:100%;height:140px;position:relative;z-index:2;}
:is(.imported-header,.imported-footer).pyr .pyr-acc,
:is(.imported-header,.imported-footer) .pyr .pyr-acc {position:absolute;top:0;left:0;width:100%;height:140px;z-index:1;transform:translateY(12px);}
:is(.imported-header,.imported-footer).pyr:has(.pyr-acc),
:is(.imported-header,.imported-footer) .pyr:has(.pyr-acc) {padding-bottom:12px;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).pyr svg,
:is(.imported-header,.imported-footer) .pyr svg {height:64px;}:is(.imported-header,.imported-footer).pyr .pyr-acc,
:is(.imported-header,.imported-footer) .pyr .pyr-acc {height:64px;transform:translateY(7px);}:is(.imported-header,.imported-footer).pyr:has(.pyr-acc),
:is(.imported-header,.imported-footer) .pyr:has(.pyr-acc) {padding-bottom:7px;}
}

/* ---------- FILM GRAIN (dark sections) ---------- */
:is(.imported-header,.imported-footer).grain,
:is(.imported-header,.imported-footer) .grain {
  position:absolute;inset:0;pointer-events:none;z-index:6;
  opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- HEADER — slim fixed bar + full-screen menu ---------- */
:is(.imported-header,.imported-footer).nav,
:is(.imported-header,.imported-footer) .nav {
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:transparent;border-bottom:1px solid transparent;
  transition:background .35s ease,border-color .35s ease;
}
:is(.imported-header,.imported-footer).nav.scrolled,
:is(.imported-header,.imported-footer) .nav.scrolled {
  background:rgba(var(--black-rgb),.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border-light);
}
:is(.imported-header,.imported-footer).nav-inner,
:is(.imported-header,.imported-footer) .nav-inner {
  max-width:1200px;margin:0 auto;padding:.7rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
:is(.imported-header,.imported-footer).nav-word,
:is(.imported-header,.imported-footer) .nav-word {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  text-transform:uppercase;letter-spacing:.08em;font-size:1.3rem;line-height:1;
  color:var(--lime);text-decoration:none;white-space:nowrap;
}
:is(.imported-header,.imported-footer).nav-word .nw,
:is(.imported-header,.imported-footer) .nav-word .nw,
:is(.imported-header,.imported-footer).nav-word .tm,
:is(.imported-header,.imported-footer) .nav-word .tm {color:var(--white);}
:is(.imported-header,.imported-footer).nav-right,
:is(.imported-header,.imported-footer) .nav-right {display:flex;align-items:center;gap:.9rem;}
:is(.imported-header,.imported-footer).nav .btn,
:is(.imported-header,.imported-footer) .nav .btn {padding:.5rem 1rem;font-size:.88rem;color:var(--charcoal);}
:is(.imported-header,.imported-footer).nav .btn:hover,
:is(.imported-header,.imported-footer) .nav .btn:hover {color:var(--white);}
:is(.imported-header,.imported-footer).nav-burger,
:is(.imported-header,.imported-footer) .nav-burger {
  width:44px;height:44px;flex:0 0 auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  background:transparent;border:0;cursor:pointer;padding:0;
}
:is(.imported-header,.imported-footer).nav-burger span,
:is(.imported-header,.imported-footer) .nav-burger span {display:block;width:24px;height:2px;background:var(--cream);border-radius:var(--radius-hairline);transition:background .25s ease;}
:is(.imported-header,.imported-footer).nav-burger:hover span,
:is(.imported-header,.imported-footer) .nav-burger:hover span {background:var(--lime);}
@media(max-width:479px){
:is(.imported-header,.imported-footer).nav .btn,
:is(.imported-header,.imported-footer) .nav .btn {display:none;}
}

:is(.imported-header,.imported-footer).menu-overlay,
:is(.imported-header,.imported-footer) .menu-overlay {display:none;position:fixed;inset:0;z-index:200;background:var(--surface-dark);color:var(--cream);}
:is(.imported-header,.imported-footer).menu-overlay.open,
:is(.imported-header,.imported-footer) .menu-overlay.open {display:flex;flex-direction:column;}
:is(.imported-header,.imported-footer).menu-close,
:is(.imported-header,.imported-footer) .menu-close {
  position:absolute;top:.9rem;right:1.3rem;z-index:8;width:44px;height:44px;
  background:transparent;border:0;color:var(--cream);font-size:1.9rem;line-height:1;cursor:pointer;
  transition:color .25s ease;
}
:is(.imported-header,.imported-footer).menu-close:hover,
:is(.imported-header,.imported-footer) .menu-close:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {
  position:relative;z-index:7;flex:1;min-height:0;overflow-y:auto;
  display:flex;flex-direction:column;justify-content:center;gap:.3rem;
  width:100%;max-width:1200px;margin:0 auto;padding:4.5rem 1.5rem 1rem;
}
:is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {
  font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  text-transform:uppercase;letter-spacing:.05em;line-height:1.1;
  font-size:clamp(1.9rem,5.2vh,3.4rem);
  color:var(--cream);text-decoration:none;
  display:flex;align-items:center;gap:1.1rem;
  transition:color .25s ease;
}
:is(.imported-header,.imported-footer).menu-links a .mk,
:is(.imported-header,.imported-footer) .menu-links a .mk {position:relative;width:15px;height:36px;flex:0 0 auto;color:var(--lime);opacity:0;transition:opacity .25s ease;}
:is(.imported-header,.imported-footer).menu-links a:hover,
:is(.imported-header,.imported-footer) .menu-links a:hover,
:is(.imported-header,.imported-footer).menu-links a:focus-visible,
:is(.imported-header,.imported-footer) .menu-links a:focus-visible {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-links a:hover .mk,
:is(.imported-header,.imported-footer) .menu-links a:hover .mk,
:is(.imported-header,.imported-footer).menu-links a:focus-visible .mk,
:is(.imported-header,.imported-footer) .menu-links a:focus-visible .mk {opacity:1;}
:is(.imported-header,.imported-footer).menu-foot,
:is(.imported-header,.imported-footer) .menu-foot {
  position:relative;z-index:7;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.4rem;
  padding:1.3rem 1.5rem 2rem;border-top:1px solid var(--border-light);
}
:is(.imported-header,.imported-footer).menu-foot a,
:is(.imported-header,.imported-footer) .menu-foot a {color:var(--text-caption-dark);text-decoration:none;transition:color .25s ease;}
:is(.imported-header,.imported-footer).menu-foot a:hover,
:is(.imported-header,.imported-footer) .menu-foot a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-foot .btn,
:is(.imported-header,.imported-footer) .menu-foot .btn {color:var(--charcoal);}
:is(.imported-header,.imported-footer).menu-foot .btn:hover,
:is(.imported-header,.imported-footer) .menu-foot .btn:hover {color:var(--white);}

/* ---------- MINI-HERO (dark, all sub-pages) ---------- */
:is(.imported-header,.imported-footer).mhero,
:is(.imported-header,.imported-footer) .mhero {
  position:relative;background:var(--surface-darker);
  color:var(--white);min-height:62vh;display:flex;align-items:center;
  padding:9.5rem 0 4.5rem;overflow:hidden;
}
:is(.imported-header,.imported-footer).mhero-dots,
:is(.imported-header,.imported-footer) .mhero-dots {
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background-image:
    radial-gradient(circle at center, rgba(var(--lime-rgb),.32) 0 1px, transparent 1.6px),
    radial-gradient(circle at center, rgba(var(--white-rgb),.14) 0 1px, transparent 1.6px);
  background-size:38px 38px, 23px 23px;
  background-position:0 0, 12px 9px;
  animation:mheroDrift 26s linear infinite;
}
@keyframes mheroDrift{
  0%{background-position:0 0, 12px 9px;}
  100%{background-position:140px 76px, 152px 85px;}
}
:is(.imported-header,.imported-footer).mhero-scrim,
:is(.imported-header,.imported-footer) .mhero-scrim {
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 90% 80% at 18% 40%, rgba(var(--surface-darker-rgb),.15) 0%, rgba(var(--surface-darker-rgb),.85) 78%);
}
:is(.imported-header,.imported-footer).mhero-inner,
:is(.imported-header,.imported-footer) .mhero-inner {position:relative;z-index:2;max-width:820px;}
:is(.imported-header,.imported-footer).mhero-key,
:is(.imported-header,.imported-footer) .mhero-key {position:relative;display:block;width:20px;height:48px;margin-bottom:1.3rem;color:var(--lime);}
:is(.imported-header,.imported-footer).bc,
:is(.imported-header,.imported-footer) .bc {
  display:flex;align-items:center;gap:.5rem;list-style:none;margin-bottom:1.4rem;
  text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--text-meta-dark);
  font-variation-settings:var(--fvs-heading);flex-wrap:wrap;
}
:is(.imported-header,.imported-footer).bc a,
:is(.imported-header,.imported-footer) .bc a {color:var(--text-meta-dark);text-decoration:none;transition:color .25s ease;}
:is(.imported-header,.imported-footer).bc a:hover,
:is(.imported-header,.imported-footer) .bc a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).bc span[aria-current],
:is(.imported-header,.imported-footer) .bc span[aria-current] {color:var(--lime);}
:is(.imported-header,.imported-footer).bc .sep,
:is(.imported-header,.imported-footer) .bc .sep {color:var(--text-sep-dark);}
:is(.imported-header,.imported-footer).mhero h1,
:is(.imported-header,.imported-footer) .mhero h1 {font-size:clamp(2.4rem,5.4vw,4.4rem);margin-bottom:1.4rem;color:var(--white);}
:is(.imported-header,.imported-footer).mhero h1 .lime,
:is(.imported-header,.imported-footer) .mhero h1 .lime {color:var(--lime);}
:is(.imported-header,.imported-footer).mhero-lead,
:is(.imported-header,.imported-footer) .mhero-lead {font-size:clamp(1.02rem,1.5vw,1.2rem);color:var(--text-lead-dark);max-width:56ch;margin-bottom:1.9rem;}
:is(.imported-header,.imported-footer).mhero .btn,
:is(.imported-header,.imported-footer) .mhero .btn {margin-bottom:0;}
/* About page: H1-eyebrow / H2-headline SEO swap inside .mhero. New,
   fully self-contained classes — .mhero h1 above is shared by ~38 other
   pages and must not be touched. NOTE: ".mhero h1" has specificity
   (0,1,1) (one class + one tag) — a bare ".mhero-eyebrow" class alone is
   only (0,1,0) and LOSES that fight (verified via live screenshot: the
   eyebrow rendered at full headline size on first attempt). Prefixing
   with .mhero bumps this to (0,2,0), which wins outright. */
:is(.imported-header,.imported-footer).mhero .mhero-eyebrow,
:is(.imported-header,.imported-footer) .mhero .mhero-eyebrow {
  text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--lime);
  font-variation-settings:var(--fvs-heading);margin-bottom:1rem;
}
:is(.imported-header,.imported-footer).mhero .mhero-headline,
:is(.imported-header,.imported-footer) .mhero .mhero-headline {
  text-transform:uppercase;letter-spacing:.06em;line-height:.95;
  font-size:clamp(2.4rem,5.4vw,4.4rem);margin-bottom:1.4rem;color:var(--white);
}
:is(.imported-header,.imported-footer).mhero .mhero-headline .lime,
:is(.imported-header,.imported-footer) .mhero .mhero-headline .lime {color:var(--lime);}

/* ---------- CONTENT GRID + STICKY ASIDE ---------- */
:is(.imported-header,.imported-footer).page-grid,
:is(.imported-header,.imported-footer) .page-grid {
  display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3.2rem;align-items:start;
  padding:5.5rem 0;
}
:is(.imported-header,.imported-footer).main-col,
:is(.imported-header,.imported-footer) .main-col {grid-column:1;min-width:0;}
:is(.imported-header,.imported-footer).main-col p,
:is(.imported-header,.imported-footer) .main-col p {margin-bottom:1.15rem;color:var(--text-body);}
:is(.imported-header,.imported-footer).main-col p.lede,
:is(.imported-header,.imported-footer) .main-col p.lede {font-size:1.1rem;color:var(--charcoal);}
:is(.imported-header,.imported-footer).main-col strong,
:is(.imported-header,.imported-footer) .main-col strong {font-variation-settings:var(--fvs-heading);color:var(--charcoal);}
:is(.imported-header,.imported-footer).main-col .cta-row,
:is(.imported-header,.imported-footer) .main-col .cta-row {margin:1.8rem 0 .6rem;}
:is(.imported-header,.imported-footer).main-col .cu,
:is(.imported-header,.imported-footer) .main-col .cu {font-variation-settings:var(--fvs-heading);color:var(--forest);font-variant-numeric:tabular-nums;}
:is(.imported-header,.imported-footer).main-col .fine-note,
:is(.imported-header,.imported-footer) .main-col .fine-note {font-size:.85rem;color:var(--muted);margin-top:1.5rem;}
:is(.imported-header,.imported-footer).plain-list,
:is(.imported-header,.imported-footer) .plain-list {list-style:none;margin:1.5rem 0 1.5rem;padding:0;}
:is(.imported-header,.imported-footer).plain-list li,
:is(.imported-header,.imported-footer) .plain-list li {position:relative;padding-left:2.4rem;margin-bottom:1.1rem;color:var(--text-body);break-inside:avoid;}
/* Modifier for long checklists (e.g. the growth-lock-audit "what we look
   at" list) — flows into 2 columns on wide viewports via CSS multi-col,
   which auto-collapses to 1 column when there isn't ~240px+gap to spare,
   so no separate mobile override is needed. break-inside:avoid above
   keeps each item's icon+text together instead of splitting across the
   column break. */
:is(.imported-header,.imported-footer).plain-list--cols,
:is(.imported-header,.imported-footer) .plain-list--cols {columns:2 240px;column-gap:2.4rem;}
:is(.imported-header,.imported-footer).plain-list li::before,
:is(.imported-header,.imported-footer) .plain-list li::before {
  content:"";position:absolute;left:0;top:.15em;width:24px;height:24px;
  border-radius:var(--radius-chip);background:var(--chip-green);
}
:is(.imported-header,.imported-footer).plain-list li::after,
:is(.imported-header,.imported-footer) .plain-list li::after {
  content:"";position:absolute;left:8.5px;top:calc(.15em + 4px);width:7px;height:16px;
  background:var(--lime);
  -webkit-mask:var(--khole-mask) center/contain no-repeat;
  mask:var(--khole-mask) center/contain no-repeat;
}
:is(.imported-header,.imported-footer).side-col,
:is(.imported-header,.imported-footer) .side-col {grid-column:2;grid-row:1/-1;position:sticky;top:110px;display:flex;flex-direction:column;gap:1.4rem;}

/* proof card (dark, in the sticky aside) */
:is(.imported-header,.imported-footer).proof-card,
:is(.imported-header,.imported-footer) .proof-card {
  background:var(--surface-dark);color:var(--cream);border-radius:var(--radius-card);padding:2rem 1.7rem;
  box-shadow:0 20px 45px rgba(var(--black-rgb),.25);
}
:is(.imported-header,.imported-footer).proof-card .eyebrow,
:is(.imported-header,.imported-footer) .proof-card .eyebrow {color:var(--lime);opacity:.9;margin-bottom:.9rem;}
:is(.imported-header,.imported-footer).proof-stat,
:is(.imported-header,.imported-footer) .proof-stat {display:block;margin-bottom:1.1rem;}
:is(.imported-header,.imported-footer).proof-stat:last-of-type,
:is(.imported-header,.imported-footer) .proof-stat:last-of-type {margin-bottom:1.3rem;}
:is(.imported-header,.imported-footer).proof-num,
:is(.imported-header,.imported-footer) .proof-num {
  display:block;color:var(--lime);font-size:1.9rem;line-height:1.05;
  font-variation-settings:var(--fvs-stat);font-variant-numeric:tabular-nums;
}
:is(.imported-header,.imported-footer).proof-label,
:is(.imported-header,.imported-footer) .proof-label {display:block;font-size:.85rem;color:var(--text-caption-dark);margin-top:.2rem;}
:is(.imported-header,.imported-footer).proof-link,
:is(.imported-header,.imported-footer) .proof-link {
  display:inline-block;text-decoration:none;font-size:.92rem;color:var(--cream);
  border-bottom:2px solid var(--lime);padding-bottom:2px;font-variation-settings:var(--fvs-heading);
  transition:color .25s ease;
}
:is(.imported-header,.imported-footer).proof-link:hover,
:is(.imported-header,.imported-footer) .proof-link:hover {color:var(--lime);}

/* CTA card (lime, in the sticky aside) */
:is(.imported-header,.imported-footer).cta-card,
:is(.imported-header,.imported-footer) .cta-card {background:var(--lime);color:var(--charcoal);border-radius:var(--radius-card);padding:2rem 1.7rem;}
:is(.imported-header,.imported-footer).cta-card h3,
:is(.imported-header,.imported-footer) .cta-card h3 {margin-bottom:.9rem;letter-spacing:.08em;font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);font-size:1.1rem;text-transform:uppercase;}
:is(.imported-header,.imported-footer).cta-card .btn,
:is(.imported-header,.imported-footer) .cta-card .btn {background:var(--charcoal);color:var(--lime);width:100%;text-align:center;}
:is(.imported-header,.imported-footer).cta-card .btn:hover,
:is(.imported-header,.imported-footer) .cta-card .btn:hover {background:var(--surface-dark);color:var(--white);transform:none;}

@media(max-width:1023px){

  :is(.imported-header,.imported-footer).page-grid,
:is(.imported-header,.imported-footer) .page-grid {grid-template-columns:minmax(0,1fr) 280px;gap:2.2rem;}

}
@media(max-width:860px){

  :is(.imported-header,.imported-footer).page-grid,
:is(.imported-header,.imported-footer) .page-grid {display:block;padding:3.5rem 0;}
  :is(.imported-header,.imported-footer).main-col,
:is(.imported-header,.imported-footer) .main-col {margin-bottom:0;}
  :is(.imported-header,.imported-footer).side-col,
:is(.imported-header,.imported-footer) .side-col {position:static;top:auto;display:block;margin:2.6rem 0 3rem;}
  :is(.imported-header,.imported-footer).side-col .cta-card,
:is(.imported-header,.imported-footer) .side-col .cta-card {display:none;}
  :is(.imported-header,.imported-footer).proof-card,
:is(.imported-header,.imported-footer) .proof-card {margin:0;}

}

/* ---------- DARK STAT BAND ("Don't Take Our Word For It") ---------- */
:is(.imported-header,.imported-footer).stat-band,
:is(.imported-header,.imported-footer) .stat-band {position:relative;background:var(--surface-darker);color:var(--white);overflow:hidden;text-align:center;}
:is(.imported-header,.imported-footer).stat-band .eyebrow,
:is(.imported-header,.imported-footer) .stat-band .eyebrow {color:var(--lime);opacity:.85;}
/* Explicit heading look baked in here (not just inherited from generic
   h2{}) so this class renders identically whether it's on an h2 (all
   other pages) or an h3 (About page, per its SEO heading swap). */
:is(.imported-header,.imported-footer).stat-band-head,
:is(.imported-header,.imported-footer) .stat-band-head {
  max-width:800px;margin:0 auto 1rem;
  text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;
  /* stays on the heavy display font even when it's rendered as an h3
     (About/growth-lock-audit/locallead-ai/city pages SEO swap) — this is a
     big headline, not a medium subheading, so it must not inherit the new
     lighter h3,h4 rule above. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
:is(.imported-header,.imported-footer).stat-band-lede,
:is(.imported-header,.imported-footer) .stat-band-lede {max-width:60ch;margin:0 auto 3.5rem;color:var(--text-lead-dark);font-size:1.05rem;line-height:1.65;}
:is(.imported-header,.imported-footer).sb-grid,
:is(.imported-header,.imported-footer) .sb-grid {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:2rem;row-gap:2.2rem;
  max-width:960px;margin:0 auto 3rem;text-align:center;position:relative;z-index:1;
}
/* location pages with only 3 stats (Auburn, Columbia City, Huntington, New
   Haven, Warsaw) were rendering inside the standard 4-col grid, which left
   an empty 4th column and pushed the 3 real stats off-center to the left
   under the centered heading above them. */
:is(.imported-header,.imported-footer).sb-grid.sb-grid--3,
:is(.imported-header,.imported-footer) .sb-grid.sb-grid--3 {grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin-top:1.8rem;}
:is(.imported-header,.imported-footer).sb-num,
:is(.imported-header,.imported-footer) .sb-num {
  display:block;color:var(--lime);font-size:clamp(1.9rem,3.4vw,2.9rem);
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-stat);line-height:1.05;letter-spacing:.02em;
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
:is(.imported-header,.imported-footer).sb-label,
:is(.imported-header,.imported-footer) .sb-label {display:block;margin-top:.6rem;font-size:.92rem;color:var(--text-caption-dark);}
:is(.imported-header,.imported-footer).stat-band-note,
:is(.imported-header,.imported-footer) .stat-band-note {max-width:680px;margin:0 auto 2.4rem;color:var(--text-lead-dark);}
:is(.imported-header,.imported-footer).stat-band .case-link,
:is(.imported-header,.imported-footer) .stat-band .case-link {
  position:relative;z-index:1;text-decoration:none;font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:2px;transition:color .3s ease;
}
:is(.imported-header,.imported-footer).stat-band .case-link:hover,
:is(.imported-header,.imported-footer) .stat-band .case-link:hover {color:var(--lime);}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).sb-grid,
:is(.imported-header,.imported-footer) .sb-grid {grid-template-columns:repeat(2,1fr);}
  /* 3 columns at phone widths risks clipping longer values like "~10,000"
     (sb-num is white-space:nowrap) — stack instead, same as it would look
     with a lone orphaned 3rd item in the 2-col case, but centered/even. */
  :is(.imported-header,.imported-footer).sb-grid.sb-grid--3,
:is(.imported-header,.imported-footer) .sb-grid.sb-grid--3 {grid-template-columns:1fr;row-gap:1.6rem;}

}

/* ---------- FOUNDER BLOCK (About page) ---------- */
:is(.imported-header,.imported-footer).founder-sec,
:is(.imported-header,.imported-footer) .founder-sec {background:var(--sage);}
:is(.imported-header,.imported-footer).founder-grid,
:is(.imported-header,.imported-footer) .founder-grid {
  display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(2.2rem,5vw,4.5rem);align-items:start;max-width:1040px;margin:0 auto;
}
/* Copy column got much longer than the photo; sticky keeps the portrait
   in view alongside it instead of stranding it near the top once the
   reader scrolls past it. top:100px clears the fixed nav (.nav). Reset
   to static on mobile below, where the grid stacks to 1 column anyway. */
:is(.imported-header,.imported-footer).founder-photo,
:is(.imported-header,.imported-footer) .founder-photo {margin:0;overflow:hidden;border-radius:var(--radius-tile);background:var(--cream);position:sticky;top:100px;}
:is(.imported-header,.imported-footer).founder-photo img,
:is(.imported-header,.imported-footer) .founder-photo img {display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;}
/* .founder-copy is page-unique to About, so this is safe. The site's
   universal *{margin:0} reset leaves a bare h3 with no spacing at all,
   so give the new "A Few Things Worth Knowing" sub-head reasonable
   breathing room by default, then override further for the section's
   real headline via the more specific .founder-headline class. */
:is(.imported-header,.imported-footer).founder-copy h3,
:is(.imported-header,.imported-footer) .founder-copy h3 {margin:1.7rem 0 .8rem;}
:is(.imported-header,.imported-footer).founder-copy h3.founder-headline,
:is(.imported-header,.imported-footer) .founder-copy h3.founder-headline {
  margin:0 0 1.4rem;text-transform:uppercase;letter-spacing:.09em;
  font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;
  /* big display headline, not a medium subheading — stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
:is(.imported-header,.imported-footer).founder-copy p,
:is(.imported-header,.imported-footer) .founder-copy p {margin-bottom:1.15rem;color:var(--text-body);}
:is(.imported-header,.imported-footer).founder-copy a.klink,
:is(.imported-header,.imported-footer) .founder-copy a.klink {
  text-decoration:none;color:var(--forest);font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:1px;
}
:is(.imported-header,.imported-footer).founder-copy a.klink:hover,
:is(.imported-header,.imported-footer) .founder-copy a.klink:hover {color:var(--charcoal);}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).founder-grid,
:is(.imported-header,.imported-footer) .founder-grid {grid-template-columns:1fr;}
  :is(.imported-header,.imported-footer).founder-photo,
:is(.imported-header,.imported-footer) .founder-photo {max-width:420px;margin:0 auto;position:static;}

}

/* ---------- TILE GRID ("What's In It") ---------- */
:is(.imported-header,.imported-footer).tiles-sec,
:is(.imported-header,.imported-footer) .tiles-sec {background:var(--cream);}
:is(.imported-header,.imported-footer).tiles-head,
:is(.imported-header,.imported-footer) .tiles-head {max-width:820px;margin:0 auto 3.6rem;text-align:center;}
/* No page currently nests an h3 inside .tiles-head (they all use h2), so
   this descendant rule only ever matches About's SEO-swapped headline —
   purely additive, zero risk to the other 33 pages using this class. */
:is(.imported-header,.imported-footer).tiles-head h3,
:is(.imported-header,.imported-footer) .tiles-head h3 {
  text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);
  line-height:1.04;margin-bottom:1.3rem;
  /* big display headline (About + 5 city pages), not a medium subheading —
     stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
:is(.imported-header,.imported-footer).tile-grid,
:is(.imported-header,.imported-footer) .tile-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;max-width:1000px;margin:0 auto;}
:is(.imported-header,.imported-footer).tile,
:is(.imported-header,.imported-footer) .tile {
  background:var(--sage);border-radius:var(--radius-tile);padding:2.1rem 2rem;
  display:flex;gap:1.1rem;align-items:flex-start;
}
:is(.imported-header,.imported-footer).tile-chip,
:is(.imported-header,.imported-footer) .tile-chip {
  position:relative;flex:0 0 auto;width:24px;height:24px;border-radius:var(--radius-chip);background:var(--chip-green);margin-top:.2rem;
}
:is(.imported-header,.imported-footer).tile-chip .khole,
:is(.imported-header,.imported-footer) .tile-chip .khole {width:7px;height:16px;left:8.5px;top:4px;color:var(--lime);}
:is(.imported-header,.imported-footer).tile h3,
:is(.imported-header,.imported-footer) .tile h3 {
  /* was pointed at --font-heading (podium-soft-variable), which doesn't
     respond to font-weight/wght at all — rendered heavy regardless of the
     --fw-normal fallback. Switched to the body font, which actually lightens. */
  font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);
  text-transform:none;letter-spacing:.01em;font-size:1.15rem;margin-bottom:.55rem;
}
:is(.imported-header,.imported-footer).tile p,
:is(.imported-header,.imported-footer) .tile p {color:var(--text-body);font-size:.96rem;line-height:1.6;margin-bottom:.9rem;}
:is(.imported-header,.imported-footer).tile p:last-child,
:is(.imported-header,.imported-footer) .tile p:last-child {margin-bottom:0;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).tile-grid,
:is(.imported-header,.imported-footer) .tile-grid {grid-template-columns:1fr;}
}

/* ---------- KEYCODE CALLOUT ("SEO Is One Key. Not the Whole Lock.") ---------- */
:is(.imported-header,.imported-footer).keycode-sec,
:is(.imported-header,.imported-footer) .keycode-sec {background:var(--cream);}
:is(.imported-header,.imported-footer).keycode-box,
:is(.imported-header,.imported-footer) .keycode-box {max-width:800px;margin:0 auto;text-align:left;}
:is(.imported-header,.imported-footer).keycode-box h2,
:is(.imported-header,.imported-footer) .keycode-box h2 {margin-bottom:1.6rem;}
/* No page currently nests an h3 inside .keycode-box (all 39 others use
   h2), so this is purely additive — matches only About's SEO-swapped
   Promise headline. */
:is(.imported-header,.imported-footer).keycode-box h3,
:is(.imported-header,.imported-footer) .keycode-box h3 {
  margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.07em;
  font-size:clamp(1.35rem,2.2vw,2.35rem);line-height:1.12;
  /* big display headline (About + 5 city pages), not a medium subheading —
     stays heavy. */
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
}
:is(.imported-header,.imported-footer).keycode-box p,
:is(.imported-header,.imported-footer) .keycode-box p {margin-bottom:1.1rem;color:var(--text-body);font-size:1.05rem;}
:is(.imported-header,.imported-footer).keycode-box a.klink,
:is(.imported-header,.imported-footer) .keycode-box a.klink {
  text-decoration:none;color:var(--forest);font-variation-settings:var(--fvs-heading);
  border-bottom:2px solid var(--lime);padding-bottom:1px;
}
:is(.imported-header,.imported-footer).keycode-box a.klink:hover,
:is(.imported-header,.imported-footer) .keycode-box a.klink:hover {color:var(--charcoal);}

/* ---------- CASE-STUDY CHARTS (hand-built inline SVG, honest axes) ---------- */
:is(.imported-header,.imported-footer).chart-sec,
:is(.imported-header,.imported-footer) .chart-sec {background:var(--cream);}
:is(.imported-header,.imported-footer).chart-duo,
:is(.imported-header,.imported-footer) .chart-duo {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem;max-width:1060px;margin:0 auto;align-items:end;}
:is(.imported-header,.imported-footer).gk-chart,
:is(.imported-header,.imported-footer) .gk-chart {margin:0;}
:is(.imported-header,.imported-footer).gk-chart svg,
:is(.imported-header,.imported-footer) .gk-chart svg {display:block;width:100%;height:auto;}
:is(.imported-header,.imported-footer).gk-chart figcaption,
:is(.imported-header,.imported-footer) .gk-chart figcaption {margin-top:.9rem;font-size:.85rem;color:var(--muted);line-height:1.5;}
:is(.imported-header,.imported-footer).gk-chart text,
:is(.imported-header,.imported-footer) .gk-chart text {font-family:var(--font-body);}
:is(.imported-header,.imported-footer).gk-chart .cx-tick,
:is(.imported-header,.imported-footer) .gk-chart .cx-tick {font-size:12px;fill:var(--muted);font-variation-settings:"wdth" 100,"wght" 500;}
:is(.imported-header,.imported-footer).gk-chart .cx-val,
:is(.imported-header,.imported-footer) .gk-chart .cx-val {font-size:15px;fill:var(--charcoal);font-variation-settings:var(--fvs-heading);}
:is(.imported-header,.imported-footer).gk-chart .cx-cat,
:is(.imported-header,.imported-footer) .gk-chart .cx-cat {font-size:13px;fill:var(--text-body);font-variation-settings:"wdth" 100,"wght" 500;}
:is(.imported-header,.imported-footer).gk-chart .cx-grid,
:is(.imported-header,.imported-footer) .gk-chart .cx-grid {stroke:rgba(var(--charcoal-rgb),.12);stroke-width:1;}
:is(.imported-header,.imported-footer).gk-chart .cx-axis,
:is(.imported-header,.imported-footer) .gk-chart .cx-axis {stroke:rgba(var(--charcoal-rgb),.35);stroke-width:1;}
:is(.imported-header,.imported-footer).gk-chart--dark .cx-tick,
:is(.imported-header,.imported-footer) .gk-chart--dark .cx-tick {fill:var(--text-caption-dark);}
:is(.imported-header,.imported-footer).gk-chart--dark .cx-val,
:is(.imported-header,.imported-footer) .gk-chart--dark .cx-val {fill:var(--white);}
:is(.imported-header,.imported-footer).gk-chart--dark .cx-cat,
:is(.imported-header,.imported-footer) .gk-chart--dark .cx-cat {fill:var(--text-lead-dark);}
:is(.imported-header,.imported-footer).gk-chart--dark .cx-grid,
:is(.imported-header,.imported-footer) .gk-chart--dark .cx-grid {stroke:rgba(var(--white-rgb),.14);}
:is(.imported-header,.imported-footer).gk-chart--dark .cx-axis,
:is(.imported-header,.imported-footer) .gk-chart--dark .cx-axis {stroke:rgba(var(--white-rgb),.35);}
:is(.imported-header,.imported-footer).gk-chart--dark figcaption,
:is(.imported-header,.imported-footer) .gk-chart--dark figcaption {color:var(--text-caption-dark);}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-lime,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-lime {fill:var(--lime);}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-lime--stroked,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-lime--stroked {fill:var(--lime);stroke:var(--charcoal);stroke-width:1;}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-ink,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-ink {fill:var(--charcoal);}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-forest,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-forest {fill:var(--forest);}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-ghost,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-ghost {fill:rgba(var(--white-rgb),.22);}
:is(.imported-header,.imported-footer).gk-chart .cx-bar-ghost--light,
:is(.imported-header,.imported-footer) .gk-chart .cx-bar-ghost--light {fill:rgba(var(--charcoal-rgb),.16);}
:is(.imported-header,.imported-footer).gk-chart .cx-val--onbar,
:is(.imported-header,.imported-footer) .gk-chart .cx-val--onbar {fill:var(--white);}
:is(.imported-header,.imported-footer).gk-chart .cx-line-ink,
:is(.imported-header,.imported-footer) .gk-chart .cx-line-ink {fill:none;stroke:var(--charcoal);stroke-width:3;stroke-linejoin:round;stroke-linecap:round;}
:is(.imported-header,.imported-footer).gk-chart .cx-line-forest,
:is(.imported-header,.imported-footer) .gk-chart .cx-line-forest {fill:none;stroke:var(--forest);stroke-width:3;stroke-linejoin:round;stroke-linecap:round;}
:is(.imported-header,.imported-footer).gk-chart .cx-dot-ink,
:is(.imported-header,.imported-footer) .gk-chart .cx-dot-ink {fill:var(--charcoal);}
:is(.imported-header,.imported-footer).gk-chart .cx-dot-forest,
:is(.imported-header,.imported-footer) .gk-chart .cx-dot-forest {fill:var(--forest);}
:is(.imported-header,.imported-footer).case-narrative .gk-chart,
:is(.imported-header,.imported-footer) .case-narrative .gk-chart {margin:2.2rem 0 2.6rem;}

/* ---------- BEFORE/AFTER RANK-GRID (case-study / blog, tokens only) ---------- */
:is(.imported-header,.imported-footer).ba-grid,
:is(.imported-header,.imported-footer) .ba-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;max-width:1000px;margin:0 auto;align-items:start;}
:is(.imported-header,.imported-footer).ba-photo,
:is(.imported-header,.imported-footer) .ba-photo {margin:0;background:var(--white);border:1px solid rgba(var(--charcoal-rgb),.12);border-radius:var(--radius-tile);overflow:hidden;}
:is(.imported-header,.imported-footer).ba-photo img,
:is(.imported-header,.imported-footer) .ba-photo img {display:block;width:100%;height:auto;}
:is(.imported-header,.imported-footer).ba-tag,
:is(.imported-header,.imported-footer) .ba-tag {
  display:inline-block;margin:.9rem 0 .2rem .9rem;padding:.28rem .7rem;border-radius:var(--radius-pill);
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-variation-settings:var(--fvs-heading);
}
:is(.imported-header,.imported-footer).ba-tag--before,
:is(.imported-header,.imported-footer) .ba-tag--before {background:rgba(var(--charcoal-rgb),.08);color:var(--charcoal);}
:is(.imported-header,.imported-footer).ba-tag--after,
:is(.imported-header,.imported-footer) .ba-tag--after {background:var(--lime);color:var(--charcoal);}
:is(.imported-header,.imported-footer).ba-photo figcaption,
:is(.imported-header,.imported-footer) .ba-photo figcaption {padding:.7rem .9rem .95rem;font-size:.85rem;color:var(--text-body);line-height:1.5;}
:is(.imported-header,.imported-footer).ba-note,
:is(.imported-header,.imported-footer) .ba-note {max-width:760px;margin:1.8rem auto 0;text-align:center;color:var(--text-body);}
:is(.imported-header,.imported-footer).case-narrative .ba-grid,
:is(.imported-header,.imported-footer) .case-narrative .ba-grid {margin:2.2rem 0 1rem;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).ba-grid,
:is(.imported-header,.imported-footer) .ba-grid {grid-template-columns:1fr;}
}

/* ---------- DATA TABLE (case-study / blog, tokens only) ---------- */
:is(.imported-header,.imported-footer).gk-table-wrap,
:is(.imported-header,.imported-footer) .gk-table-wrap {overflow-x:auto;margin:2.2rem 0 1rem;}
:is(.imported-header,.imported-footer).gk-table,
:is(.imported-header,.imported-footer) .gk-table {width:100%;border-collapse:collapse;font-size:.92rem;}
:is(.imported-header,.imported-footer).gk-table th,
:is(.imported-header,.imported-footer) .gk-table th {
  text-align:left;padding:.55rem .6rem;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;
  color:var(--muted);font-variation-settings:var(--fvs-heading);border-bottom:2px solid var(--charcoal);
}
:is(.imported-header,.imported-footer).gk-table td,
:is(.imported-header,.imported-footer) .gk-table td {padding:.6rem;border-bottom:1px solid rgba(var(--charcoal-rgb),.12);color:var(--text-body);}
:is(.imported-header,.imported-footer).gk-table td.pos,
:is(.imported-header,.imported-footer) .gk-table td.pos {font-variation-settings:var(--fvs-heading);color:var(--charcoal);white-space:nowrap;}
:is(.imported-header,.imported-footer).gk-table .fine-note,
:is(.imported-header,.imported-footer) .gk-table .fine-note {margin-top:.7rem;}
:is(.imported-header,.imported-footer).stat-band .gk-chart,
:is(.imported-header,.imported-footer) .stat-band .gk-chart {max-width:680px;margin:2.6rem auto 2.2rem;text-align:left;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).chart-duo,
:is(.imported-header,.imported-footer) .chart-duo {grid-template-columns:1fr;gap:3rem;}
}

/* ---------- FAQ ACCORDION ---------- */
:is(.imported-header,.imported-footer).faq-sec,
:is(.imported-header,.imported-footer) .faq-sec {background:var(--sage);}
:is(.imported-header,.imported-footer).faq-head,
:is(.imported-header,.imported-footer) .faq-head {max-width:760px;margin:0 auto 3.2rem;text-align:center;}
:is(.imported-header,.imported-footer).faq-list,
:is(.imported-header,.imported-footer) .faq-list {max-width:800px;margin:0 auto;}
:is(.imported-header,.imported-footer).faq-item,
:is(.imported-header,.imported-footer) .faq-item {border-bottom:1px solid var(--border-dark);}
:is(.imported-header,.imported-footer).faq-item:first-child,
:is(.imported-header,.imported-footer) .faq-item:first-child {border-top:1px solid var(--border-dark);}
/* .faq-q-heading: some pages now wrap the button in an h3 for proper
   document outline (a question is semantically a heading). h3 has no
   box styling of its own here, but line-height is inherited — .faq-q
   below pins it explicitly to the site's base 1.6 so wrapping it in an
   h3 (which carries the generic h1-h4 line-height:1.15) can't shift it. */
:is(.imported-header,.imported-footer).faq-q-heading,
:is(.imported-header,.imported-footer) .faq-q-heading {margin:0;}
:is(.imported-header,.imported-footer).faq-q,
:is(.imported-header,.imported-footer) .faq-q {
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;
  background:none;border:0;text-align:left;cursor:pointer;padding:1.5rem 0;
  /* was pointed at --font-heading (podium-soft-variable, unresponsive to
     weight) — switched to the body font so FAQ questions actually lighten.
     This only matters for the Pattern-A markup (h3.faq-q-heading wrapping
     button.faq-q, growth-lock-audit + locallead-ai) where the question text
     is a direct child of this button; Pattern-B pages (bare h3 nested
     inside the button) already get the fix via the h3,h4 rule regardless. */
  font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);
  font-size:1.05rem;color:var(--charcoal);line-height:1.6;
}
:is(.imported-header,.imported-footer).faq-ind,
:is(.imported-header,.imported-footer) .faq-ind {
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--charcoal);color:var(--lime);
  display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;position:relative;
}
:is(.imported-header,.imported-footer).faq-ind::before,
:is(.imported-header,.imported-footer) .faq-ind::before,
:is(.imported-header,.imported-footer).faq-ind::after,
:is(.imported-header,.imported-footer) .faq-ind::after {content:"";position:absolute;background:var(--lime);border-radius:var(--radius-hairline);}
:is(.imported-header,.imported-footer).faq-ind::before,
:is(.imported-header,.imported-footer) .faq-ind::before {width:11px;height:2px;}
:is(.imported-header,.imported-footer).faq-ind::after,
:is(.imported-header,.imported-footer) .faq-ind::after {width:2px;height:11px;transition:transform .3s ease;}
:is(.imported-header,.imported-footer).faq-item[data-open="true"] .faq-ind::after,
:is(.imported-header,.imported-footer) .faq-item[data-open="true"] .faq-ind::after {transform:rotate(90deg);opacity:0;}
:is(.imported-header,.imported-footer).faq-a,
:is(.imported-header,.imported-footer) .faq-a {overflow:hidden;max-height:0;transition:max-height .35s ease;}
:is(.imported-header,.imported-footer).faq-a p,
:is(.imported-header,.imported-footer) .faq-a p {padding:0 0 1.6rem;max-width:70ch;color:var(--text-body);line-height:1.7;}
/* Bumped from 600px: this is a no-JS/CSS-only fallback cap (JS normally
   sets an exact inline max-height from scrollHeight), and some pages'
   answers have grown past 600px of content. A larger cap never clips
   shorter answers on the other pages using .faq-item, so this is safe
   to raise sitewide. */
:is(.imported-header,.imported-footer).faq-item[data-open="true"] .faq-a,
:is(.imported-header,.imported-footer) .faq-item[data-open="true"] .faq-a {max-height:900px;}

/* ---------- FINAL CTA BAND (forest) ---------- */
:is(.imported-header,.imported-footer).final-band,
:is(.imported-header,.imported-footer) .final-band {background:var(--forest);color:var(--white);text-align:center;}
:is(.imported-header,.imported-footer).final-band-inner,
:is(.imported-header,.imported-footer) .final-band-inner {max-width:760px;margin:0 auto;}
:is(.imported-header,.imported-footer).final-band h2,
:is(.imported-header,.imported-footer) .final-band h2 {color:var(--white);margin-bottom:1.4rem;}
:is(.imported-header,.imported-footer).final-band p.lede,
:is(.imported-header,.imported-footer) .final-band p.lede {font-size:1.1rem;color:var(--text-soft-forest);margin-bottom:2rem;}
:is(.imported-header,.imported-footer).final-band .btn,
:is(.imported-header,.imported-footer) .final-band .btn {margin-bottom:1.3rem;}
:is(.imported-header,.imported-footer).final-band .soft-line,
:is(.imported-header,.imported-footer) .final-band .soft-line {font-style:italic;color:var(--text-faint-forest);font-size:.95rem;}

/* ---------- FOOTER ---------- */
:is(.imported-header,.imported-footer).footer,
:is(.imported-header,.imported-footer) .footer {background:var(--black);color:var(--text-caption-dark);padding:5rem 0 0;}
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {display:grid;grid-template-columns:1.1fr .65fr .85fr .85fr .7fr 1.15fr;gap:2.2rem;align-items:start;padding-bottom:3.5rem;}
:is(.imported-header,.imported-footer).footer-brand,
:is(.imported-header,.imported-footer) .footer-brand {display:flex;flex-direction:column;gap:1.2rem;align-items:flex-start;}
:is(.imported-header,.imported-footer).footer-brand img,
:is(.imported-header,.imported-footer) .footer-brand img {height:96px;width:auto;}
:is(.imported-header,.imported-footer).footer-tag,
:is(.imported-header,.imported-footer) .footer-tag {font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tag-dark);}
:is(.imported-header,.imported-footer).footer-cta,
:is(.imported-header,.imported-footer) .footer-cta {font-size:.88rem;padding:.65rem 1.1rem;}
:is(.imported-header,.imported-footer).footer-col h4,
:is(.imported-header,.imported-footer) .footer-col h4,
:is(.imported-header,.imported-footer).footer-col .footer-heading,
:is(.imported-header,.imported-footer) .footer-col .footer-heading {color:var(--cream);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-family:var(--font-body);font-variation-settings:var(--fvs-heading);}
:is(.imported-header,.imported-footer).footer-col a,
:is(.imported-header,.imported-footer) .footer-col a {display:block;color:var(--text-caption-dark);text-decoration:none;margin-bottom:.6rem;font-size:.95rem;transition:color .25s ease;}
:is(.imported-header,.imported-footer).footer-col a:hover,
:is(.imported-header,.imported-footer) .footer-col a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer .contact-col,
:is(.imported-header,.imported-footer) .footer .contact-col {display:flex;flex-direction:column;gap:1.1rem;}
:is(.imported-header,.imported-footer).footer .nap,
:is(.imported-header,.imported-footer) .footer .nap {font-size:.95rem;line-height:1.9;}
:is(.imported-header,.imported-footer).footer .nap a,
:is(.imported-header,.imported-footer) .footer .nap a {display:inline;margin:0;color:var(--white);text-decoration:none;}
:is(.imported-header,.imported-footer).footer .nap a:hover,
:is(.imported-header,.imported-footer) .footer .nap a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer-map,
:is(.imported-header,.imported-footer) .footer-map {position:relative;width:100%;height:200px;margin-top:1.4rem;border-radius:var(--radius-media);overflow:hidden;border:1px solid var(--border-light);}
:is(.imported-header,.imported-footer).footer-map iframe,
:is(.imported-header,.imported-footer) .footer-map iframe {filter:grayscale(1) invert(.92) hue-rotate(185deg) brightness(.9) contrast(.92);}
:is(.imported-header,.imported-footer).map-link,
:is(.imported-header,.imported-footer) .map-link {position:absolute;left:.8rem;bottom:.8rem;background:rgba(var(--surface-darker-rgb),.85);color:var(--cream);text-decoration:none;font-size:.78rem;padding:.4rem .7rem;border-radius:var(--radius-chip);letter-spacing:.04em;}
:is(.imported-header,.imported-footer).map-link:hover,
:is(.imported-header,.imported-footer) .map-link:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer-bar,
:is(.imported-header,.imported-footer) .footer-bar {border-top:1px solid var(--border-light);padding:1.4rem 0;}
:is(.imported-header,.imported-footer).footer .fine,
:is(.imported-header,.imported-footer) .footer .fine {margin-top:0;text-align:center;font-size:.8rem;color:var(--muted);}
@media(max-width:1023px){
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {grid-template-columns:1fr 1fr;}
}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {grid-template-columns:1fr;gap:2.2rem;}
  :is(.imported-header,.imported-footer).footer-map,
:is(.imported-header,.imported-footer) .footer-map {height:auto;aspect-ratio:4/3;}

}

/* ---------- MOBILE SCALE ---------- */
@media(max-width:767px){

  :is(.imported-header,.imported-footer) section {padding:var(--section-pad-y-mobile) 0;}
  :is(.imported-header,.imported-footer).mhero,
:is(.imported-header,.imported-footer) .mhero {padding:8.5rem 0 3.5rem;min-height:auto;}

}

/* =====================================================================
   NEW COMPONENTS — added for /who-we-serve/garage-door/ and
   /case-studies/fort-wayne-door-dock/ (vertical + case-study page types).
   Reuses existing tokens/type only; nothing above this block was edited.
   ===================================================================== */

/* ---------- CASE META CHIPS (mini-hero eyebrow row — case-study pages) ---------- */
:is(.imported-header,.imported-footer).case-meta,
:is(.imported-header,.imported-footer) .case-meta {display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.4rem;position:relative;z-index:2;}
:is(.imported-header,.imported-footer).case-meta-chip,
:is(.imported-header,.imported-footer) .case-meta-chip {
  display:inline-block;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;
  color:var(--text-lead-dark);border:1px solid var(--border-light-2);border-radius:var(--radius-pill);
  padding:.35rem .8rem;font-variation-settings:var(--fvs-heading);
  background:var(--fill-light-04);
}
:is(.imported-header,.imported-footer).case-meta-chip strong,
:is(.imported-header,.imported-footer) .case-meta-chip strong {color:var(--lime);font-variation-settings:var(--fvs-heading);}

/* ---------- PULL QUOTE (Joe Schenke testimonial — garage-door + case-study pages) ---------- */
/* Brand-new wrapper (About page testimonial section had no heading
   before) — same "-head" pattern as .tiles-head/.stat-band-head:
   centers the block and lets the generic h2{} rule handle typography. */
:is(.imported-header,.imported-footer).proof-head,
:is(.imported-header,.imported-footer) .proof-head {max-width:700px;margin:0 auto 2.4rem;text-align:center;}
:is(.imported-header,.imported-footer).pull-quote,
:is(.imported-header,.imported-footer) .pull-quote {position:relative;}
:is(.imported-header,.imported-footer).pull-quote .qmark,
:is(.imported-header,.imported-footer) .pull-quote .qmark {
  display:block;font-family:var(--font-heading);
  font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);line-height:1;color:var(--lime);
}
:is(.imported-header,.imported-footer).pull-quote blockquote,
:is(.imported-header,.imported-footer) .pull-quote blockquote {
  margin:0 0 1rem;font-family:var(--font-body);
  font-variation-settings:var(--fvs-quote);font-weight:var(--fw-normal);line-height:1.6;
}
:is(.imported-header,.imported-footer).pull-quote cite,
:is(.imported-header,.imported-footer) .pull-quote cite {display:block;font-style:normal;}

/* compact variant — dark card, sticky aside (garage-door page) */
:is(.imported-header,.imported-footer).pull-quote--mini,
:is(.imported-header,.imported-footer) .pull-quote--mini {background:var(--surface-dark);color:var(--cream);border-radius:var(--radius-card);padding:1.7rem 1.5rem;}
:is(.imported-header,.imported-footer).pull-quote--mini .qmark,
:is(.imported-header,.imported-footer) .pull-quote--mini .qmark {font-size:2.4rem;margin-bottom:.2rem;}
:is(.imported-header,.imported-footer).pull-quote--mini blockquote,
:is(.imported-header,.imported-footer) .pull-quote--mini blockquote {font-size:.92rem;line-height:1.55;color:var(--text-quote-dark);}
:is(.imported-header,.imported-footer).pull-quote--mini cite,
:is(.imported-header,.imported-footer) .pull-quote--mini cite {font-size:.76rem;color:var(--text-meta-dark);text-transform:uppercase;letter-spacing:.05em;}

/* band variant — heads the dark stat-band (garage-door page) */
:is(.imported-header,.imported-footer).pull-quote--band,
:is(.imported-header,.imported-footer) .pull-quote--band {max-width:760px;margin:0 auto 3.2rem;text-align:center;position:relative;z-index:1;}
:is(.imported-header,.imported-footer).pull-quote--band .qmark,
:is(.imported-header,.imported-footer) .pull-quote--band .qmark {font-size:3.6rem;margin-bottom:.2rem;}
:is(.imported-header,.imported-footer).pull-quote--band blockquote,
:is(.imported-header,.imported-footer) .pull-quote--band blockquote {font-size:clamp(1.15rem,2vw,1.55rem);color:var(--white);line-height:1.55;}
:is(.imported-header,.imported-footer).pull-quote--band cite,
:is(.imported-header,.imported-footer) .pull-quote--band cite {font-size:.82rem;color:var(--text-caption-dark);text-transform:uppercase;letter-spacing:.08em;}

/* large variant — standalone light-bg section (case-study page) */
:is(.imported-header,.imported-footer).pull-quote--large,
:is(.imported-header,.imported-footer) .pull-quote--large {max-width:820px;margin:0 auto;text-align:center;}
:is(.imported-header,.imported-footer).pull-quote--large .qmark,
:is(.imported-header,.imported-footer) .pull-quote--large .qmark {font-size:4.6rem;margin-bottom:.3rem;}
:is(.imported-header,.imported-footer).pull-quote--large blockquote,
:is(.imported-header,.imported-footer) .pull-quote--large blockquote {font-size:clamp(1.4rem,3vw,2.15rem);color:var(--charcoal);line-height:1.35;}
:is(.imported-header,.imported-footer).pull-quote--large cite,
:is(.imported-header,.imported-footer) .pull-quote--large cite {font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}

/* ---------- CASE STUDY NARRATIVE WIDTH ----------
   Reuses .main-col's prose typography (colors, .lede, strong, .cu, mark.hl)
   outside the .page-grid sticky-aside context, for single-column sections. */
:is(.imported-header,.imported-footer).case-narrative,
:is(.imported-header,.imported-footer) .case-narrative {max-width:760px;margin:0 auto;}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){

  :is(.imported-header,.imported-footer) {scroll-behavior:auto;}
  :is(.imported-header,.imported-footer) *,
:is(.imported-header,.imported-footer) *::before,
:is(.imported-header,.imported-footer) *::after {animation:none!important;transition:none!important;}
  :is(.imported-header,.imported-footer).mhero-dots,
:is(.imported-header,.imported-footer) .mhero-dots {animation:none;}

}

/* ---------- NO-JS / PRE-ANIMATION SAFETY ----------
   Everything must be visible without GSAP. Only elements the JS actively
   manages start hidden, and only once JS confirms it's running (see
   site.js: it adds .js-anim to <html> before setting any opacity:0). */
:is(.imported-header,.imported-footer):not(.js-anim) [data-reveal],
:is(.imported-header,.imported-footer):not(.js-anim) mark.hl {
  opacity:1!important;filter:none!important;transform:none!important;
}

/* ---------- DIAGNOSTIC PROOF CARD ---------- */
:is(.imported-header,.imported-footer).diagnostic-card h3,
:is(.imported-header,.imported-footer) .diagnostic-card h3 {
  margin:0 0 .85rem;
  color:var(--white);
  font-family:var(--font-body);
  font-variation-settings:var(--fvs-body-med);
  font-size:1.25rem;
  line-height:1.2;
}
:is(.imported-header,.imported-footer).diagnostic-intro,
:is(.imported-header,.imported-footer) .diagnostic-intro {
  margin:0 0 1.25rem;
  color:var(--text-lead-dark);
  font-size:.92rem;
  line-height:1.5;
}
:is(.imported-header,.imported-footer).diagnostic-list,
:is(.imported-header,.imported-footer) .diagnostic-list {display:grid;gap:.95rem;margin:0 0 1.25rem;}
:is(.imported-header,.imported-footer).diagnostic-item,
:is(.imported-header,.imported-footer) .diagnostic-item {display:grid;grid-template-columns:2rem 1fr;gap:.55rem;align-items:start;}
:is(.imported-header,.imported-footer).diagnostic-num,
:is(.imported-header,.imported-footer) .diagnostic-num {color:var(--lime);font-family:var(--font-body);font-variation-settings:var(--fvs-stat);font-size:.75rem;letter-spacing:.08em;line-height:1.45;}
:is(.imported-header,.imported-footer).diagnostic-item strong,
:is(.imported-header,.imported-footer) .diagnostic-item strong {display:block;color:var(--white);font-size:.9rem;line-height:1.25;}
:is(.imported-header,.imported-footer).diagnostic-item div > span,
:is(.imported-header,.imported-footer) .diagnostic-item div > span {display:block;margin-top:.18rem;color:var(--text-caption-dark);font-size:.82rem;line-height:1.45;}
:is(.imported-header,.imported-footer).diagnostic-proof,
:is(.imported-header,.imported-footer) .diagnostic-proof {margin:0 0 1.15rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.14);color:var(--text-lead-dark);font-size:.84rem;line-height:1.5;}
:is(.imported-header,.imported-footer).diagnostic-proof strong,
:is(.imported-header,.imported-footer) .diagnostic-proof strong {color:var(--white);}

/* Keep trademarked menu labels together as one flex item. */
:is(.imported-header,.imported-footer).menu-links a .menu-label,
:is(.imported-header,.imported-footer) .menu-links a .menu-label {display:inline-block;white-space:nowrap;}
:is(.imported-header,.imported-footer).menu-links a .menu-label .tm,
:is(.imported-header,.imported-footer) .menu-links a .menu-label .tm {display:inline;font-size:.42em;vertical-align:super;line-height:0;}

/* Keep the full mobile navigation readable without wrapping long labels. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {padding-left:1rem;padding-right:1rem;gap:.18rem;}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {
    font-size:clamp(1.35rem,5.8vw,1.75rem);
    letter-spacing:.03em;
    gap:.65rem;
    white-space:nowrap;
  }
  :is(.imported-header,.imported-footer).menu-links a .mk,
:is(.imported-header,.imported-footer) .menu-links a .mk {width:12px;height:28px;}

}

/* Final phone-width menu sizing: keep every navigation label on one line. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {padding-left:.75rem;padding-right:.75rem;gap:.12rem;}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {
    font-size:clamp(1.05rem,4.8vw,1.35rem);
    letter-spacing:.01em;
    gap:.4rem;
    white-space:nowrap;
  }
  :is(.imported-header,.imported-footer).menu-links a .mk,
:is(.imported-header,.imported-footer) .menu-links a .mk {width:10px;height:23px;}

}

/* Viewport-scaled mobile menu typography: bounded, proportional, and single-line. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {
    font-size:clamp(.95rem,4.2vw,1.35rem);
    line-height:1;
    letter-spacing:.01em;
    white-space:nowrap;
  }

}

/* Readable phone menu range: larger on standard phones, still bounded on narrow screens. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {font-size:clamp(1rem,5.8vw,1.55rem);}

}

/* Comfortable mobile tap spacing: preserve one-line labels and provide a larger hit area. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {gap:clamp(.35rem,1.8vh,.85rem);}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {min-height:44px;padding-block:clamp(.15rem,1vh,.4rem);}

}

/* Middle-ground mobile menu spacing: easier to tap without excessive separation. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {gap:clamp(.25rem,1.1vh,.55rem);}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {min-height:38px;padding-block:.05rem;}

}

/* Mobile reading gutter: keep copy and controls away from the viewport edge. */
@media (max-width: 767px){

  :is(.imported-header,.imported-footer).wrap,
:is(.imported-header,.imported-footer) .wrap,
:is(.imported-header,.imported-footer).container,
:is(.imported-header,.imported-footer) .container,
:is(.imported-header,.imported-footer).page-grid,
:is(.imported-header,.imported-footer) .page-grid,
:is(.imported-header,.imported-footer).mhero-inner,
:is(.imported-header,.imported-footer) .mhero-inner,
:is(.imported-header,.imported-footer).hero-inner,
:is(.imported-header,.imported-footer) .hero-inner,
:is(.imported-header,.imported-footer).section-inner,
:is(.imported-header,.imported-footer) .section-inner,
:is(.imported-header,.imported-footer).section-wrap,
:is(.imported-header,.imported-footer) .section-wrap,
:is(.imported-header,.imported-footer).content-wrap,
:is(.imported-header,.imported-footer) .content-wrap,
:is(.imported-header,.imported-footer).copy-wrap,
:is(.imported-header,.imported-footer) .copy-wrap,
:is(.imported-header,.imported-footer).final-band-inner,
:is(.imported-header,.imported-footer) .final-band-inner,
:is(.imported-header,.imported-footer).keycode-box,
:is(.imported-header,.imported-footer) .keycode-box,
:is(.imported-header,.imported-footer).stat-band .wrap,
:is(.imported-header,.imported-footer) .stat-band .wrap,
:is(.imported-header,.imported-footer).tiles-sec .wrap,
:is(.imported-header,.imported-footer) .tiles-sec .wrap,
:is(.imported-header,.imported-footer).faq-sec .wrap,
:is(.imported-header,.imported-footer) .faq-sec .wrap,
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top,
:is(.imported-header,.imported-footer).footer-bar,
:is(.imported-header,.imported-footer) .footer-bar {
    padding-left:clamp(10px,4vw,20px) !important;
    padding-right:clamp(10px,4vw,20px) !important;
  }

}

/* Service-area refinement blocks */
:is(.imported-header,.imported-footer).area-diagnostic,
:is(.imported-header,.imported-footer) .area-diagnostic,
:is(.imported-header,.imported-footer).area-faq,
:is(.imported-header,.imported-footer) .area-faq {background:#f2f3eb;padding:clamp(2.5rem,6vw,5rem) 0}:is(.imported-header,.imported-footer).area-diagnostic .wrap,
:is(.imported-header,.imported-footer) .area-diagnostic .wrap,
:is(.imported-header,.imported-footer).area-faq .wrap,
:is(.imported-header,.imported-footer) .area-faq .wrap {max-width:900px}:is(.imported-header,.imported-footer).area-diagnostic h2,
:is(.imported-header,.imported-footer) .area-diagnostic h2,
:is(.imported-header,.imported-footer).area-faq h2,
:is(.imported-header,.imported-footer) .area-faq h2 {max-width:760px}:is(.imported-header,.imported-footer).area-diagnostic-intro,
:is(.imported-header,.imported-footer) .area-diagnostic-intro {max-width:680px;margin-bottom:2rem}:is(.imported-header,.imported-footer).area-diagnostic-grid,
:is(.imported-header,.imported-footer) .area-diagnostic-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:2rem 0}:is(.imported-header,.imported-footer).area-diagnostic-item,
:is(.imported-header,.imported-footer) .area-diagnostic-item {border-top:1px solid rgba(11,12,16,.22);padding-top:1rem}:is(.imported-header,.imported-footer).area-diagnostic-item strong,
:is(.imported-header,.imported-footer) .area-diagnostic-item strong {display:block;margin-bottom:.35rem}:is(.imported-header,.imported-footer).area-diagnostic-item .area-num,
:is(.imported-header,.imported-footer) .area-diagnostic-item .area-num {color:#0b0c10;font-family:var(--font-display,sans-serif);font-size:.9rem;margin-right:.5rem}:is(.imported-header,.imported-footer).area-proof,
:is(.imported-header,.imported-footer) .area-proof {border-top:1px solid rgba(11,12,16,.22);padding-top:1.25rem;max-width:720px}:is(.imported-header,.imported-footer).area-faq-list,
:is(.imported-header,.imported-footer) .area-faq-list {display:grid;gap:.75rem;max-width:820px}:is(.imported-header,.imported-footer).area-faq details,
:is(.imported-header,.imported-footer) .area-faq details {border-top:1px solid rgba(11,12,16,.22);padding:1rem 0}:is(.imported-header,.imported-footer).area-faq summary,
:is(.imported-header,.imported-footer) .area-faq summary {cursor:pointer;font-weight:700;padding-right:2rem font-variation-settings: "wght" 700, "wdth" 100;
}:is(.imported-header,.imported-footer).area-faq details p,
:is(.imported-header,.imported-footer) .area-faq details p {max-width:720px;margin:.75rem 0 0}@media(max-width:700px){
:is(.imported-header,.imported-footer).area-diagnostic-grid,
:is(.imported-header,.imported-footer) .area-diagnostic-grid {grid-template-columns:1fr;gap:1.25rem}:is(.imported-header,.imported-footer).area-diagnostic,
:is(.imported-header,.imported-footer) .area-diagnostic,
:is(.imported-header,.imported-footer).area-faq,
:is(.imported-header,.imported-footer) .area-faq {padding-left:clamp(10px,4vw,20px);padding-right:clamp(10px,4vw,20px)}
}
:is(.imported-header,.imported-footer).area-local-context,
:is(.imported-header,.imported-footer) .area-local-context {max-width:760px;border-left:3px solid #c8ff24;padding-left:1rem;margin:1rem 0 2rem}:is(.imported-header,.imported-footer).area-local-context strong,
:is(.imported-header,.imported-footer) .area-local-context strong {display:block;margin-bottom:.35rem}

:is(.imported-header,.imported-footer).fw-local,
:is(.imported-header,.imported-footer) .fw-local {background:#f2f3eb;color:#272a36;padding:clamp(4rem,8vw,8rem) 0}:is(.imported-header,.imported-footer).fw-local-head,
:is(.imported-header,.imported-footer) .fw-local-head {max-width:850px}:is(.imported-header,.imported-footer).fw-local-grid,
:is(.imported-header,.imported-footer) .fw-local-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:2.75rem}:is(.imported-header,.imported-footer).fw-local-grid>div,
:is(.imported-header,.imported-footer) .fw-local-grid>div {background:#fff;border-top:3px solid #d2eb00;border-radius:.75rem;padding:1.5rem;box-shadow:0 8px 24px rgba(39,42,54,.08)}:is(.imported-header,.imported-footer).fw-local-grid h3,
:is(.imported-header,.imported-footer) .fw-local-grid h3 {font-family:var(--font-body);font-variation-settings:var(--fvs-body-med);font-weight:var(--fw-normal);font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.15;letter-spacing:.01em;text-transform:none;margin:0 0 .85rem}:is(.imported-header,.imported-footer).fw-local-grid p,
:is(.imported-header,.imported-footer) .fw-local-grid p {margin:0;line-height:1.55}@media(max-width:700px){
:is(.imported-header,.imported-footer).fw-local,
:is(.imported-header,.imported-footer) .fw-local {padding:clamp(5.5rem,16vw,7rem) clamp(1rem,4vw,1.25rem) clamp(4.5rem,12vw,6rem)}:is(.imported-header,.imported-footer).fw-local-head,
:is(.imported-header,.imported-footer) .fw-local-head {max-width:none}:is(.imported-header,.imported-footer).fw-local-head h2,
:is(.imported-header,.imported-footer) .fw-local-head h2 {margin-top:.65rem;margin-bottom:1.25rem}:is(.imported-header,.imported-footer).fw-local-head>p:last-child,
:is(.imported-header,.imported-footer) .fw-local-head>p:last-child {margin-bottom:2.25rem}:is(.imported-header,.imported-footer).fw-local-grid,
:is(.imported-header,.imported-footer) .fw-local-grid {grid-template-columns:1fr;gap:1.25rem;margin-top:0}:is(.imported-header,.imported-footer).fw-local-grid>div,
:is(.imported-header,.imported-footer) .fw-local-grid>div {padding:1.25rem}:is(.imported-header,.imported-footer).fw-local-grid p,
:is(.imported-header,.imported-footer) .fw-local-grid p {margin-bottom:0;line-height:1.55}
}

/* Back-to-top: navbar-derived frosted glass */
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {position:fixed;left:calc(50% - 1.3rem);bottom:.35rem;z-index:40;display:grid;place-items:center;width:2.6rem;height:2.6rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;background:rgba(0,0,0,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:rgba(242,243,235,.94);font-family:var(--font-body);font-size:1.15rem;font-weight:700;line-height:1;text-decoration:none;opacity:0!important;pointer-events:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 20px rgba(11,12,16,.18);transition:opacity .42s ease,bottom .55s cubic-bezier(.22,1,.36,1),border-radius .6s ease,background .3s ease,box-shadow .35s ease; font-variation-settings: "wght" 700, "wdth" 100;
}
:is(.imported-header,.imported-footer).back-to-top span,
:is(.imported-header,.imported-footer) .back-to-top span {position:relative;z-index:1;text-shadow:0 1px 1px #00000059;}
:is(.imported-header,.imported-footer).back-to-top::before,
:is(.imported-header,.imported-footer) .back-to-top::before {content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#ffffff2e,#ffffff00 42%);pointer-events:none;}
:is(.imported-header,.imported-footer).back-to-top::after,
:is(.imported-header,.imported-footer) .back-to-top::after {display:none;}
:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {opacity:1!important;pointer-events:auto!important;bottom:1rem;}
:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {opacity:1!important;outline:none;border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;background:rgba(0,0,0,.72);bottom:1.12rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 11px 24px rgba(11,12,16,.25);}
@media(max-width:700px){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {left:calc(50% - 1.25rem);bottom:calc(env(safe-area-inset-bottom) + .35rem);width:2.5rem;height:2.5rem;font-size:1.15rem;touch-action:manipulation;}:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {bottom:max(1rem,calc(env(safe-area-inset-bottom) + .7rem));}:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {bottom:max(1.12rem,calc(env(safe-area-inset-bottom) + .82rem));}
}
@media(prefers-reduced-motion:reduce){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {transition:opacity .2s ease,background .2s ease;}
}


/* Continuous liquid motion: low-key at rest, more expressive while hovered. */
@keyframes backtop-idle-morph{0%,100%{border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;}50%{border-radius:53% 47% 49% 51% / 55% 48% 52% 45%;}}
@keyframes backtop-hover-morph{0%,100%{border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;}34%{border-radius:57% 43% 59% 41% / 42% 58% 43% 57%;}68%{border-radius:47% 53% 40% 60% / 60% 40% 59% 41%;}}
@keyframes backtop-idle-sheen{0%,100%{background-position:0% 0%;opacity:.52;}50%{background-position:34% 18%;opacity:.68;}}
@keyframes backtop-hover-sheen{0%,100%{background-position:0% 0%;opacity:.72;}50%{background-position:100% 42%;opacity:1;}}
:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {animation:backtop-idle-morph 9s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top.is-visible::before,
:is(.imported-header,.imported-footer) .back-to-top.is-visible::before {background-size:180% 180%;animation:backtop-idle-sheen 11s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {animation:backtop-hover-morph 2.8s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top:hover::before,
:is(.imported-header,.imported-footer) .back-to-top:hover::before,
:is(.imported-header,.imported-footer).back-to-top:focus-visible::before,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible::before {animation:backtop-hover-sheen 2.2s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top,
:is(.imported-header,.imported-footer).back-to-top::before,
:is(.imported-header,.imported-footer) .back-to-top::before {animation:none!important;}
}


/* Social navigation */
:is(.imported-header,.imported-footer).social-links,
:is(.imported-header,.imported-footer) .social-links {display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;}
:is(.imported-header,.imported-footer).social-links a,
:is(.imported-header,.imported-footer) .social-links a {width:2rem;height:2rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--cream);text-decoration:none;transition:color .22s ease,background .22s ease,border-color .22s ease,transform .22s ease;}
:is(.imported-header,.imported-footer).social-links a:hover,
:is(.imported-header,.imported-footer) .social-links a:hover,
:is(.imported-header,.imported-footer).social-links a:focus-visible,
:is(.imported-header,.imported-footer) .social-links a:focus-visible {color:var(--charcoal);background:var(--lime);border-color:var(--lime);transform:translateY(-2px);outline:none;}
:is(.imported-header,.imported-footer).social-links svg,
:is(.imported-header,.imported-footer) .social-links svg {width:1rem;height:1rem;display:block;fill:currentColor;}
:is(.imported-header,.imported-footer).footer-social,
:is(.imported-header,.imported-footer) .footer-social {margin-top:1.35rem;}
:is(.imported-header,.imported-footer).menu-social,
:is(.imported-header,.imported-footer) .menu-social {justify-content:center;}
@media(max-width:700px){
:is(.imported-header,.imported-footer).social-links,
:is(.imported-header,.imported-footer) .social-links {gap:.4rem;}:is(.imported-header,.imported-footer).social-links a,
:is(.imported-header,.imported-footer) .social-links a {width:1.9rem;height:1.9rem;}:is(.imported-header,.imported-footer).menu-social-wrap,
:is(.imported-header,.imported-footer) .menu-social-wrap {margin-top:1rem;}
}


/* Menu social icons sit in the same action row as contact details and the CTA. */
:is(.imported-header,.imported-footer).menu-foot>.menu-social,
:is(.imported-header,.imported-footer) .menu-foot>.menu-social {flex:0 0 auto;justify-content:center;}
@media(max-width:700px){
:is(.imported-header,.imported-footer).menu-foot>.menu-social,
:is(.imported-header,.imported-footer) .menu-foot>.menu-social {flex-basis:100%;}
}


:is(.imported-header,.imported-footer).footer-social-label,
:is(.imported-header,.imported-footer) .footer-social-label {margin:1.35rem 0 .6rem;color:#8b8fa0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-variation-settings:"wdth" 100,"wght" 600;}
:is(.imported-header,.imported-footer).footer-social-label+.footer-social,
:is(.imported-header,.imported-footer) .footer-social-label+.footer-social {margin-top:0;}


/* Approved logo assets */
:is(.imported-header,.imported-footer).nav-word,
:is(.imported-header,.imported-footer) .nav-word {display:inline-flex;align-items:center;line-height:0;}
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
:is(.imported-header,.imported-footer).footer-brand .footer-logo,
:is(.imported-header,.imported-footer) .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}


/* Proportional approved logo sizing. Inline image dimensions protect this scale even before CSS finishes loading. */
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
:is(.imported-header,.imported-footer).footer-brand .footer-logo,
:is(.imported-header,.imported-footer) .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}

/* SEO audit right rail: container surface for diagnostic content. */
:is(.imported-header,.imported-footer).diagnostic-card,
:is(.imported-header,.imported-footer) .diagnostic-card {
  background:var(--surface-dark);
  color:var(--cream);
  border-radius:var(--radius-card);
  padding:2rem 1.7rem;
  box-shadow:0 20px 45px rgba(var(--black-rgb),.25);
}
:is(.imported-header,.imported-footer).diagnostic-card .eyebrow,
:is(.imported-header,.imported-footer) .diagnostic-card .eyebrow {color:var(--lime);opacity:.9;margin-bottom:.9rem;}
@media(max-width:860px){
:is(.imported-header,.imported-footer).diagnostic-card,
:is(.imported-header,.imported-footer) .diagnostic-card {margin:0 0 1.4rem;}
}


/* Wider diagnostic audit rail: shared by all service and audience templates with a diagnostic card. */
@media(min-width:1100px){

  :is(.imported-header,.imported-footer).page-grid.diagnostic-template,
:is(.imported-header,.imported-footer) .page-grid.diagnostic-template {grid-template-columns:minmax(0,1fr) 400px;gap:2.6rem;}

}
@media(min-width:861px) and (max-width:1099px){

  :is(.imported-header,.imported-footer).page-grid.diagnostic-template,
:is(.imported-header,.imported-footer) .page-grid.diagnostic-template {grid-template-columns:minmax(0,1fr) 350px;gap:2.2rem;}

}

/* KeyCode System: five GrowthKeys presented as lighter, vertically stacked cards. */
:is(.imported-header,.imported-footer).five-keys-section > .keycode-card,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card {
  display: grid;
  grid-template-columns: minmax(7rem, 0.34fr) minmax(0, 1fr);
  gap: 0.75rem 1.35rem;
  align-items: start;
  margin: 1.25rem 0 0;
  padding: 1.2rem 1.35rem;
  background: #fff;
  border: 1px solid rgba(39, 42, 54, 0.12);
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(39, 42, 54, 0.07);
}
:is(.imported-header,.imported-footer).five-keys-section > .keycode-card h3,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card h3 {
  grid-column: 1;
  margin: 0;
  color: var(--charcoal, #272a36);
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.2;
 font-variation-settings: "wght" 500, "wdth" 100;
}
:is(.imported-header,.imported-footer).five-keys-section > .keycode-card p,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card p {
  grid-column: 2;
  margin: 0;
  max-width: none;
}
@media (max-width: 700px) {

  :is(.imported-header,.imported-footer).five-keys-section > .keycode-card,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card {
    grid-template-columns: 1fr;
    gap: 0.55rem;
    padding: 1.05rem 1rem;
    border-radius: 15px;
  }
  :is(.imported-header,.imported-footer).five-keys-section > .keycode-card h3,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card h3,
:is(.imported-header,.imported-footer).five-keys-section > .keycode-card p,
:is(.imported-header,.imported-footer) .five-keys-section > .keycode-card p {
    grid-column: 1;
  }

}




/* Final-CTA checklists: high contrast, with the Blog CTA preserving narrative order above its split. */
:is(.imported-header,.imported-footer).final-band .plain-list li,
:is(.imported-header,.imported-footer) .final-band .plain-list li,
:is(.imported-header,.imported-footer).final-band .gk-bullet-list li,
:is(.imported-header,.imported-footer) .final-band .gk-bullet-list li {color:var(--text-soft-forest);text-align:left;}
:is(.imported-header,.imported-footer).final-band--split-list .final-band-inner,
:is(.imported-header,.imported-footer) .final-band--split-list .final-band-inner {max-width:920px;text-align:center;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-copy,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-copy {max-width:760px;margin:0 auto;text-align:center;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-copy p,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-copy p {color:var(--text-soft-forest);}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-split,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-split {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.25rem,5vw,4.5rem);align-items:center;max-width:900px;margin:2.25rem auto 0;text-align:left;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-split .plain-list,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-split .plain-list {margin:0;max-width:100%;text-align:left;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-actions,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-actions {text-align:left;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-actions p,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-actions p {color:var(--text-soft-forest);margin-bottom:1rem;}
:is(.imported-header,.imported-footer).final-band--split-list .final-cta-actions .cta-row,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-actions .cta-row {margin:1.8rem 0 0;}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).final-band--split-list .final-cta-split,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-split {display:block;margin-top:1.65rem;}
  :is(.imported-header,.imported-footer).final-band--split-list .final-cta-split .plain-list,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-split .plain-list {max-width:420px;margin:0 auto 2rem;text-align:left;}
  :is(.imported-header,.imported-footer).final-band--split-list .final-cta-actions,
:is(.imported-header,.imported-footer) .final-band--split-list .final-cta-actions {text-align:center;}

}


:is(.imported-header,.imported-footer) {
  --lime:#cfff2e;
  --charcoal:#272a36;
  --forest:#3f524e;
  --cream:#f2f3eb;
  --sage:#e3e5d7;
  --muted:#6b7280;
  --border:#cbd5e1;
  --black:#000000;
}
:is(.imported-header,.imported-footer) * {margin:0;padding:0;box-sizing:border-box;}
/* scroll-behavior:smooth is a well-documented GSAP ScrollTrigger incompatibility —
   it makes the BROWSER apply its own async easing to scroll-position changes,
   which fights ScrollTrigger's own progress calculations on pinned/scrubbed
   sections (like the hero/vault and the "How We Break Growth Lock" pin below)
   and is a common cause of erratic pin stutter/snap/stall behavior. Removed;
   anchor-link smoothness (the 2 in-page "#" links on this page) is now handled
   in JS instead — see the anchor-smooth-scroll helper in homepage-cinematic.js. */
:is(.imported-header,.imported-footer) {scroll-behavior:auto;overflow-anchor:none;}
:is(.imported-header,.imported-footer) {
  font-family:"podium-sharp-variable",sans-serif;
  font-variation-settings:"wdth" 100,"wght" 500;
  background:var(--cream);
  color:var(--charcoal);
  line-height:1.6;
}
:is(.imported-header,.imported-footer) h1,
:is(.imported-header,.imported-footer) h2,
:is(.imported-header,.imported-footer) h3,
:is(.imported-header,.imported-footer) h4 {
  font-family:"podium-soft-variable",sans-serif; /* site headings = rounded Podium Soft */
  font-variation-settings:"wdth" 100,"wght" 600;font-weight:900;
  line-height:1.15;
}
/* GRAND TYPE — all-caps WIDE-TRACKED headings (measured from current site: H1 ls 7px/110px, H2 ls 4-5.4px, wght 600, tight leading) */
:is(.imported-header,.imported-footer) h1 {text-transform:uppercase;letter-spacing:.06em;line-height:.9;}
:is(.imported-header,.imported-footer) h2 {text-transform:uppercase;letter-spacing:.09em;}
:is(.imported-header,.imported-footer) h2 {
  font-size:clamp(2.1rem,4.4vw,4.5rem);
  font-variation-settings:"wdth" 100,"wght" 600;
  line-height:1.04;
}
:is(.imported-header,.imported-footer) h3 {font-size:clamp(1.15rem,2vw,1.4rem);}
/* trademark symbol — small superscript, everywhere except the letter */
:is(.imported-header,.imported-footer).tm,
:is(.imported-header,.imported-footer) .tm {font-size:.42em;vertical-align:super;letter-spacing:0;line-height:0;font-variation-settings:"wdth" 100,"wght" 600;}
:is(.imported-header,.imported-footer) a {color:inherit;}
:is(.imported-header,.imported-footer) img {max-width:100%;display:block;}
:is(.imported-header,.imported-footer) canvas {pointer-events:none;}
:is(.imported-header,.imported-footer).wrap,
:is(.imported-header,.imported-footer) .wrap {max-width:1200px;margin:0 auto;padding:0 1.5rem;}
:is(.imported-header,.imported-footer) section {padding:8.5rem 0;}
:is(.imported-header,.imported-footer).eyebrow,
:is(.imported-header,.imported-footer) .eyebrow {
  text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--muted);
  font-variation-settings:"wdth" 100,"wght" 600;margin-bottom:1.1rem;
}
:is(.imported-header,.imported-footer).btn,
:is(.imported-header,.imported-footer) .btn {
  display:inline-block;background:var(--lime);color:var(--charcoal);
  border:none;border-radius:5px;padding:.75rem 1.5rem;
  font-family:"podium-sharp-variable",sans-serif;
  font-variation-settings:"wdth" 100,"wght" 600;
  font-size:1rem;text-decoration:none;cursor:pointer;
  transition:all .5s cubic-bezier(.4,0,.2,1);
}
:is(.imported-header,.imported-footer).btn:hover,
:is(.imported-header,.imported-footer) .btn:hover {background:var(--forest);color:#fff;transform:scale(1.05);}
:is(.imported-header,.imported-footer).btn-ghost,
:is(.imported-header,.imported-footer) .btn-ghost {background:transparent;color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--charcoal);}
:is(.imported-header,.imported-footer).btn-ghost:hover,
:is(.imported-header,.imported-footer) .btn-ghost:hover {background:var(--forest);color:#fff;box-shadow:inset 0 0 0 2px var(--forest);transform:scale(1.05);}
:is(.imported-header,.imported-footer).soft,
:is(.imported-header,.imported-footer) .soft {font-family:"podium-soft-variable",sans-serif;font-variation-settings:"wght" 400;font-weight:400;}

/* ---------- SHARP "PYRAMIDS" SECTION DIVIDERS ---------- */
/* Band bg = upper section color; upward triangles = lower section color. */
/* Sharp divider — EXACT geometry from current site (Elementor pyramids, single asymmetric sweep, preserveAspectRatio none, up to 150px) */
:is(.imported-header,.imported-footer).pyr,
:is(.imported-header,.imported-footer) .pyr {display:block;line-height:0;font-size:0;position:relative;z-index:5;overflow:hidden;}
:is(.imported-header,.imported-footer).pyr svg,
:is(.imported-header,.imported-footer) .pyr svg {display:block;width:100%;height:140px;position:relative;z-index:2;}
:is(.imported-header,.imported-footer).pyr .pyr-acc,
:is(.imported-header,.imported-footer) .pyr .pyr-acc {position:absolute;top:0;left:0;width:100%;height:140px;z-index:1;transform:translateY(12px);}
/* accent layer shifts down 12px — container needs the extra room or the lime
   sliver gets clipped at the bottom edge (visible bleed into the next section) */
:is(.imported-header,.imported-footer).pyr:has(.pyr-acc),
:is(.imported-header,.imported-footer) .pyr:has(.pyr-acc) {padding-bottom:12px;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).pyr svg,
:is(.imported-header,.imported-footer) .pyr svg {height:64px;}:is(.imported-header,.imported-footer).pyr .pyr-acc,
:is(.imported-header,.imported-footer) .pyr .pyr-acc {height:64px;transform:translateY(7px);}:is(.imported-header,.imported-footer).pyr:has(.pyr-acc),
:is(.imported-header,.imported-footer) .pyr:has(.pyr-acc) {padding-bottom:7px;}
}

/* ---------- FILM GRAIN (dark sections) ---------- */
:is(.imported-header,.imported-footer).grain,
:is(.imported-header,.imported-footer) .grain {
  position:absolute;inset:0;pointer-events:none;z-index:6;
  opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- HEADER — slim fixed bar + full-screen menu ---------- */
:is(.imported-header,.imported-footer).nav,
:is(.imported-header,.imported-footer) .nav {
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:transparent;border-bottom:1px solid transparent;
  transition:background .35s ease,border-color .35s ease;
}
:is(.imported-header,.imported-footer).nav.scrolled,
:is(.imported-header,.imported-footer) .nav.scrolled {
  background:rgba(0,0,0,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
:is(.imported-header,.imported-footer).nav-inner,
:is(.imported-header,.imported-footer) .nav-inner {
  max-width:1200px;margin:0 auto;padding:.7rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
:is(.imported-header,.imported-footer).nav-word,
:is(.imported-header,.imported-footer) .nav-word {
  font-family:"podium-soft-variable",sans-serif;
  font-variation-settings:"wdth" 100,"wght" 600;font-weight:900;
  text-transform:uppercase;letter-spacing:.08em;font-size:1.3rem;line-height:1;
  color:var(--lime);text-decoration:none;white-space:nowrap;
}
:is(.imported-header,.imported-footer).nav-word .nw,
:is(.imported-header,.imported-footer) .nav-word .nw,
:is(.imported-header,.imported-footer).nav-word .tm,
:is(.imported-header,.imported-footer) .nav-word .tm {color:#fff;}
:is(.imported-header,.imported-footer).nav-right,
:is(.imported-header,.imported-footer) .nav-right {display:flex;align-items:center;gap:.9rem;}
:is(.imported-header,.imported-footer).nav .btn,
:is(.imported-header,.imported-footer) .nav .btn {padding:.5rem 1rem;font-size:.88rem;color:var(--charcoal);}
:is(.imported-header,.imported-footer).nav .btn:hover,
:is(.imported-header,.imported-footer) .nav .btn:hover {color:#fff;}
:is(.imported-header,.imported-footer).nav-burger,
:is(.imported-header,.imported-footer) .nav-burger {
  width:44px;height:44px;flex:0 0 auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  background:transparent;border:0;cursor:pointer;padding:0;
}
:is(.imported-header,.imported-footer).nav-burger span,
:is(.imported-header,.imported-footer) .nav-burger span {display:block;width:24px;height:2px;background:#f2f3eb;border-radius:1px;transition:background .25s ease;}
:is(.imported-header,.imported-footer).nav-burger:hover span,
:is(.imported-header,.imported-footer) .nav-burger:hover span {background:var(--lime);}
@media(max-width:479px){
:is(.imported-header,.imported-footer).nav .btn,
:is(.imported-header,.imported-footer) .nav .btn {display:none;}
}

/* full-screen overlay menu (display:none until opened — zero scroll-height impact) */
:is(.imported-header,.imported-footer).menu-overlay,
:is(.imported-header,.imported-footer) .menu-overlay {display:none;position:fixed;inset:0;z-index:200;background:#15171e;color:#f2f3eb;}
:is(.imported-header,.imported-footer).menu-overlay.open,
:is(.imported-header,.imported-footer) .menu-overlay.open {display:flex;flex-direction:column;}
:is(.imported-header,.imported-footer).menu-close,
:is(.imported-header,.imported-footer) .menu-close {
  position:absolute;top:.9rem;right:1.3rem;z-index:8;width:44px;height:44px;
  background:transparent;border:0;color:#f2f3eb;font-size:1.9rem;line-height:1;cursor:pointer;
  transition:color .25s ease;
}
:is(.imported-header,.imported-footer).menu-close:hover,
:is(.imported-header,.imported-footer) .menu-close:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {
  position:relative;z-index:7;flex:1;min-height:0;overflow-y:auto;
  display:flex;flex-direction:column;justify-content:center;gap:.3rem;
  width:100%;max-width:1200px;margin:0 auto;padding:4.5rem 1.5rem 1rem;
}
:is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {
  font-family:"podium-soft-variable",sans-serif;
  font-variation-settings:"wdth" 100,"wght" 600;font-weight:900;
  text-transform:uppercase;letter-spacing:.05em;line-height:1.1;
  font-size:clamp(1.9rem,5.2vh,3.4rem);
  color:#f2f3eb;text-decoration:none;
  display:flex;align-items:center;gap:1.1rem;
  transition:color .25s ease;
}
:is(.imported-header,.imported-footer).menu-links a .mk,
:is(.imported-header,.imported-footer) .menu-links a .mk {position:relative;width:15px;height:36px;flex:0 0 auto;color:var(--lime);opacity:0;transition:opacity .25s ease;}
:is(.imported-header,.imported-footer).menu-links a:hover,
:is(.imported-header,.imported-footer) .menu-links a:hover,
:is(.imported-header,.imported-footer).menu-links a:focus-visible,
:is(.imported-header,.imported-footer) .menu-links a:focus-visible {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-links a:hover .mk,
:is(.imported-header,.imported-footer) .menu-links a:hover .mk,
:is(.imported-header,.imported-footer).menu-links a:focus-visible .mk,
:is(.imported-header,.imported-footer) .menu-links a:focus-visible .mk {opacity:1;}
:is(.imported-header,.imported-footer).menu-foot,
:is(.imported-header,.imported-footer) .menu-foot {
  position:relative;z-index:7;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.4rem;
  padding:1.3rem 1.5rem 2rem;border-top:1px solid rgba(255,255,255,.08);
}
:is(.imported-header,.imported-footer).menu-foot a,
:is(.imported-header,.imported-footer) .menu-foot a {color:#b6b9c2;text-decoration:none;transition:color .25s ease;}
:is(.imported-header,.imported-footer).menu-foot a:hover,
:is(.imported-header,.imported-footer) .menu-foot a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).menu-foot .btn,
:is(.imported-header,.imported-footer) .menu-foot .btn {color:var(--charcoal);}
:is(.imported-header,.imported-footer).menu-foot .btn:hover,
:is(.imported-header,.imported-footer) .menu-foot .btn:hover {color:#fff;}

/* ---------- CINEMATIC HERO (ACTS 1–4) ---------- */
:is(.imported-header,.imported-footer).cine,
:is(.imported-header,.imported-footer) .cine {position:relative;background:linear-gradient(180deg,#000 0%,#0b0c11 100%);color:#fff;padding:0;overflow:clip;}
/* GSAP wraps the pinned hero in a .pin-spacer that sits on the cream body.
   If a wake-time refresh mis-measures the pin, the spacer would show through
   as a white void — paint it like the hero so that failure mode is invisible. */
:is(.imported-header,.imported-footer).pin-spacer:has(> #hero),
:is(.imported-header,.imported-footer) .pin-spacer:has(> #hero) {background:linear-gradient(180deg,#000 0%,#0b0c11 100%);}
:is(.imported-header,.imported-footer).cine-stage,
:is(.imported-header,.imported-footer) .cine-stage {position:relative;padding:6rem 0 5rem;}
/* mobile (no pin): the lime chaos card flows seamlessly into the lime
   #outcomes section — full-bleed bottom, no dark gap between the greens */
@media(max-width:767px){

  :is(.imported-header,.imported-footer):not(.cine-on) .cine-stage {padding-bottom:0;}
  :is(.imported-header,.imported-footer):not(.cine-on) .vault {
    max-width:none;margin:2.5rem 0 0;
    border-radius:28px 28px 0 0;box-shadow:none;
  }

}
:is(.imported-header,.imported-footer).cine-on .cine-stage {height:100vh;padding:0;overflow:hidden;}

/* pixel field (from Concept F) — canvas noise resolves into a lime keyhole */
:is(.imported-header,.imported-footer).hero-pix,
:is(.imported-header,.imported-footer) .hero-pix {
  position:absolute;top:0;left:0;width:100%;height:100vh;z-index:0;
  overflow:hidden;pointer-events:none;will-change:opacity,filter;
}
:is(.imported-header,.imported-footer).hero-pix canvas,
:is(.imported-header,.imported-footer) .hero-pix canvas {position:absolute;inset:0;width:100%;height:100%;}
:is(.imported-header,.imported-footer).hero-fade,
:is(.imported-header,.imported-footer) .hero-fade {
  position:absolute;inset:0;
  background:radial-gradient(ellipse 115% 100% at 50% 45%, rgba(0,0,0,0) 46%, rgba(0,0,0,.82) 100%);
}

:is(.imported-header,.imported-footer).hero-core,
:is(.imported-header,.imported-footer) .hero-core {position:relative;z-index:1;text-align:center;max-width:920px;margin:0 auto;padding:0 1.5rem;}
/* soft radial scrim keeps the headline readable over the pixel field */
:is(.imported-header,.imported-footer).hero-core::before,
:is(.imported-header,.imported-footer) .hero-core::before {
  content:"";position:absolute;z-index:-1;left:50%;top:44%;
  width:135%;max-width:1240px;height:120%;transform:translate(-50%,-50%);
  background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(0,0,0,.58),rgba(0,0,0,.3) 46%,rgba(0,0,0,0) 72%);
  pointer-events:none;
}
/* small solid brand keyhole above the H1 (like the live hero) */
:is(.imported-header,.imported-footer).hero-key,
:is(.imported-header,.imported-footer) .hero-key {position:relative;display:block;width:22px;height:54px;margin:0 auto 1.5rem;color:var(--lime);}
:is(.imported-header,.imported-footer).cine-on .hero-core {
  position:absolute;inset:0;max-width:none;margin:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
}
:is(.imported-header,.imported-footer).cine-on .hero-core > * {max-width:920px;}
/* desktop: left-align hero content so the headline never runs over the
   pixel keyhole living on the right side of the canvas */
@media(min-width:768px){

  :is(.imported-header,.imported-footer).cine-on .hero-core {align-items:flex-start;text-align:left;padding-left:clamp(2rem,7vw,7.5rem);}
  :is(.imported-header,.imported-footer).cine-on .hero-core > * {max-width:min(58vw,860px);}
  :is(.imported-header,.imported-footer).cine-on .hero-key {margin:0 0 1.5rem;}
  :is(.imported-header,.imported-footer).cine-on .hero-core::before {left:32%;}

}
:is(.imported-header,.imported-footer).hero-eyebrow,
:is(.imported-header,.imported-footer) .hero-eyebrow {margin:0 0 1.1rem;color:var(--lime);font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 110,"wght" 620;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.3;}
:is(.imported-header,.imported-footer).hero-core h2,
:is(.imported-header,.imported-footer) .hero-core h2 {
  font-size:clamp(3rem,7.8vw,6.9rem); /* site H1 measures 110px — go grand */
  font-variation-settings:"wdth" 100,"wght" 600;
  margin-bottom:1.6rem;color:#fff;perspective:900px;line-height:.9;letter-spacing:.06em;
}
:is(.imported-header,.imported-footer).h1w,
:is(.imported-header,.imported-footer) .h1w {display:inline-block;will-change:transform,filter;}
:is(.imported-header,.imported-footer).hero-core h2 em,
:is(.imported-header,.imported-footer) .hero-core h2 em {font-style:italic;}
:is(.imported-header,.imported-footer).hero-core h2 .h1-lime,
:is(.imported-header,.imported-footer) .hero-core h2 .h1-lime {color:var(--lime);}
:is(.imported-header,.imported-footer).ulwrap,
:is(.imported-header,.imported-footer) .ulwrap {position:relative;}
:is(.imported-header,.imported-footer).ul-svg,
:is(.imported-header,.imported-footer) .ul-svg {position:absolute;left:-2%;bottom:-.18em;width:104%;height:.32em;overflow:visible;}
:is(.imported-header,.imported-footer).hero-sub,
:is(.imported-header,.imported-footer) .hero-sub {font-size:clamp(1.05rem,1.8vw,1.35rem);max-width:640px;margin:0 auto 2.1rem;color:#d7d9de;}
@media(min-width:768px){
:is(.imported-header,.imported-footer).cine-on .hero-sub {margin-left:0;text-align:left;}
}
:is(.imported-header,.imported-footer).hero-cred,
:is(.imported-header,.imported-footer) .hero-cred {margin-top:1.7rem;font-size:.9rem;color:#8b8fa0;font-style:italic;}

/* THE VAULT CARD — carries the CHAOS INTRO (lime) */
:is(.imported-header,.imported-footer).vault,
:is(.imported-header,.imported-footer) .vault {
  position:relative;z-index:2;overflow:hidden;
  max-width:1120px;margin:3.5rem auto 0;border-radius:40px;
  background:#cbeb00;color:#272a36;text-align:center;
  box-shadow:
    0 80px 160px rgba(0,0,0,.6),
    0 30px 60px rgba(0,0,0,.45),
    0 8px 18px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 0 0 1px rgba(255,255,255,.04);
  will-change:transform,width,height,border-radius;
}
:is(.imported-header,.imported-footer).cine-on .vault {position:absolute;left:50%;top:50%;margin:0;max-width:none;}
:is(.imported-header,.imported-footer).vault-inner,
:is(.imported-header,.imported-footer) .vault-inner {
  position:relative;z-index:1;height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:clamp(2.2rem,5vw,4.5rem) 1.5rem;
  will-change:transform,filter,opacity;
}
:is(.imported-header,.imported-footer).vault-chaos h3,
:is(.imported-header,.imported-footer) .vault-chaos h3 {font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);max-width:920px;margin:0 auto 2rem;text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;}
:is(.imported-header,.imported-footer).vault-chaos .chaos-lines,
:is(.imported-header,.imported-footer) .vault-chaos .chaos-lines {margin-bottom:0;}
:is(.imported-header,.imported-footer).knode,
:is(.imported-header,.imported-footer) .knode {position:absolute;left:-2.1rem;top:.1rem;width:14px;height:30px;z-index:1;}
/* real GK keyhole silhouette (brand icon.svg, viewBox 0 0 177.57 442.31) */
:is(.imported-header,.imported-footer).khole,
:is(.imported-header,.imported-footer) .khole {
  position:absolute;inset:0;display:block;background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
}
:is(.imported-header,.imported-footer).khole.dim,
:is(.imported-header,.imported-footer) .khole.dim {color:#474b5c;}
:is(.imported-header,.imported-footer).khole.lit,
:is(.imported-header,.imported-footer) .khole.lit {
  color:var(--lime);
  filter:drop-shadow(0 0 6px rgba(207,255,46,.9)) drop-shadow(0 0 18px rgba(207,255,46,.5));
}

/* Dashboard mockup */
:is(.imported-header,.imported-footer).tiltwrap,
:is(.imported-header,.imported-footer) .tiltwrap {position:relative;will-change:transform;}
:is(.imported-header,.imported-footer).dash,
:is(.imported-header,.imported-footer) .dash {
  position:relative;z-index:1;border-radius:18px;overflow:hidden;
  background:linear-gradient(180deg,#14161d 0%,#101218 100%);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 40px 80px rgba(0,0,0,.5),0 12px 28px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.08);
  padding:1.4rem 1.5rem 1.5rem;
}
:is(.imported-header,.imported-footer).dash-head,
:is(.imported-header,.imported-footer) .dash-head {display:flex;align-items:center;gap:.45rem;margin-bottom:1.2rem;}
:is(.imported-header,.imported-footer).dash-dot,
:is(.imported-header,.imported-footer) .dash-dot {width:9px;height:9px;border-radius:50%;background:#3a3e4e;}
:is(.imported-header,.imported-footer).dash-title,
:is(.imported-header,.imported-footer) .dash-title {
  margin-left:auto;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
  color:#6f7385;font-variation-settings:"wdth" 100,"wght" 600;
}
:is(.imported-header,.imported-footer).dash-main,
:is(.imported-header,.imported-footer) .dash-main {display:flex;align-items:center;gap:1.4rem;margin-bottom:1.3rem;}
:is(.imported-header,.imported-footer).ring-box,
:is(.imported-header,.imported-footer) .ring-box {position:relative;width:128px;height:128px;flex:0 0 auto;}
:is(.imported-header,.imported-footer).ring-box svg,
:is(.imported-header,.imported-footer) .ring-box svg {width:100%;height:100%;display:block;}
:is(.imported-header,.imported-footer).ring-val,
:is(.imported-header,.imported-footer) .ring-val {
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
}
:is(.imported-header,.imported-footer).ring-num,
:is(.imported-header,.imported-footer) .ring-num {
  color:var(--lime);font-size:1.5rem;line-height:1;
  font-variation-settings:"wdth" 100,"wght" 750;font-variant-numeric:tabular-nums;
}
:is(.imported-header,.imported-footer).ring-label,
:is(.imported-header,.imported-footer) .ring-label {margin-top:.3rem;font-size:.44rem;letter-spacing:.08em;color:#8b8fa0;text-transform:uppercase;text-align:center;max-width:104px;line-height:1.35;margin-left:auto;margin-right:auto;}
:is(.imported-header,.imported-footer).bars,
:is(.imported-header,.imported-footer) .bars {display:flex;align-items:flex-end;gap:8px;height:96px;flex:1;}
:is(.imported-header,.imported-footer).bar,
:is(.imported-header,.imported-footer) .bar {
  flex:1;border-radius:4px 4px 2px 2px;transform-origin:bottom center;
  background:linear-gradient(180deg,rgba(207,255,46,.9),rgba(207,255,46,.35));
  will-change:transform;
}
:is(.imported-header,.imported-footer).bar:nth-child(2n),
:is(.imported-header,.imported-footer) .bar:nth-child(2n) {background:linear-gradient(180deg,#4b5563,#343947);}
:is(.imported-header,.imported-footer).dash-log,
:is(.imported-header,.imported-footer) .dash-log {border-top:1px solid rgba(255,255,255,.07);padding-top:.9rem;}
:is(.imported-header,.imported-footer).log-row,
:is(.imported-header,.imported-footer) .log-row {
  display:flex;align-items:center;gap:.6rem;
  font-size:.78rem;color:#b6b9c2;padding:.42rem 0;
}
:is(.imported-header,.imported-footer).log-dot,
:is(.imported-header,.imported-footer) .log-dot {width:7px;height:7px;border-radius:50%;background:var(--lime);flex:0 0 auto;box-shadow:0 0 8px rgba(207,255,46,.6);}
:is(.imported-header,.imported-footer).log-time,
:is(.imported-header,.imported-footer) .log-time {margin-left:auto;color:#6f7385;font-size:.7rem;}

/* Glass badges */
:is(.imported-header,.imported-footer).badges,
:is(.imported-header,.imported-footer) .badges {margin-top:1rem;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;}
@media(min-width:768px){

  :is(.imported-header,.imported-footer).pdash .badges,
:is(.imported-header,.imported-footer) .pdash .badges {position:absolute;inset:0;margin:0;pointer-events:none;z-index:2;}

}
:is(.imported-header,.imported-footer).badge,
:is(.imported-header,.imported-footer) .badge {
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.55rem .9rem;border-radius:10px;font-size:.8rem;color:#f2f3eb;
  background:rgba(255,255,255,.06);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 18px 40px rgba(0,0,0,.45),0 4px 10px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.1);
  font-variation-settings:"wdth" 100,"wght" 600;white-space:nowrap;
  will-change:transform,opacity,filter;
}
:is(.imported-header,.imported-footer).badge::before,
:is(.imported-header,.imported-footer) .badge::before {content:"";width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 8px rgba(207,255,46,.7);}
@media(min-width:768px){

  :is(.imported-header,.imported-footer).pdash .badge,
:is(.imported-header,.imported-footer) .pdash .badge {position:absolute;}
  :is(.imported-header,.imported-footer).pdash .badge.b1,
:is(.imported-header,.imported-footer) .pdash .badge.b1 {top:-26px;right:-6px;}
  :is(.imported-header,.imported-footer).pdash .badge.b2,
:is(.imported-header,.imported-footer) .pdash .badge.b2 {bottom:24%;left:-52px;}
  :is(.imported-header,.imported-footer).pdash .badge.b3,
:is(.imported-header,.imported-footer) .pdash .badge.b3 {bottom:-26px;right:10%;}

}

/* ---------- CHAOS → PIPELINE (full-lime outcomes, matches live site) ----------
   Intro (lottie + H2 + lines) lives in the vault card; this in-flow section
   carries only the three white cards, same lime bg for a seamless handoff. */
:is(.imported-header,.imported-footer).chaos,
:is(.imported-header,.imported-footer) .chaos {background:#cbeb00;color:#272a36;text-align:center;}
:is(.imported-header,.imported-footer).chaos-emoji,
:is(.imported-header,.imported-footer) .chaos-emoji {width:150px;height:150px;margin:0 auto 1.4rem;overflow:hidden;}
:is(.imported-header,.imported-footer).chaos-lines,
:is(.imported-header,.imported-footer) .chaos-lines {margin-bottom:3.6rem;}
:is(.imported-header,.imported-footer).chaos-line,
:is(.imported-header,.imported-footer) .chaos-line {
  text-transform:uppercase;letter-spacing:.05em;
  font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(1.35rem,2.3vw,1.75rem);line-height:1.4;
}
:is(.imported-header,.imported-footer).chaos-line em,
:is(.imported-header,.imported-footer) .chaos-line em {font-style:italic;}
/* the "one team" line — moved out of the pinned card, sits above the three cards */
:is(.imported-header,.imported-footer).chaos-tag,
:is(.imported-header,.imported-footer) .chaos-tag {
  text-transform:uppercase;letter-spacing:.05em;font-style:italic;
  font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(1.35rem,2.3vw,1.75rem);line-height:1.4;
  max-width:920px;margin:0 auto 3rem;
}
:is(.imported-header,.imported-footer).chaos-grid,
:is(.imported-header,.imported-footer) .chaos-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
:is(.imported-header,.imported-footer).chaos-card,
:is(.imported-header,.imported-footer) .chaos-card {
  background:#fff;border:none;border-radius:12px;
  padding:2.4rem 1.9rem;
  box-shadow:0 18px 40px rgba(39,42,54,.12),0 4px 12px rgba(39,42,54,.08);
}
:is(.imported-header,.imported-footer).chip,
:is(.imported-header,.imported-footer) .chip {
  width:46px;height:46px;border-radius:12px;background:#000;
  display:flex;align-items:center;justify-content:center;margin:0 auto 1.2rem;
}
:is(.imported-header,.imported-footer).chip svg,
:is(.imported-header,.imported-footer) .chip svg {width:24px;height:24px;fill:none;stroke:var(--lime);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
:is(.imported-header,.imported-footer).chaos-card h3,
:is(.imported-header,.imported-footer) .chaos-card h3 {text-transform:uppercase;letter-spacing:.08em;font-size:1.15rem;margin-bottom:.7rem;}
:is(.imported-header,.imported-footer).chaos-card p,
:is(.imported-header,.imported-footer) .chaos-card p {color:#3d4150;font-size:.95rem;line-height:1.55;}
@media(max-width:979px){
:is(.imported-header,.imported-footer).chaos-grid,
:is(.imported-header,.imported-footer) .chaos-grid {grid-template-columns:1fr;max-width:520px;margin:0 auto;}
}

/* ---------- MANIFESTO (charcoal letter world) ---------- */
:is(.imported-header,.imported-footer).manifesto,
:is(.imported-header,.imported-footer) .manifesto {background:var(--charcoal);color:#fff;padding:0;}
:is(.imported-header,.imported-footer).mani-body,
:is(.imported-header,.imported-footer) .mani-body {background:var(--charcoal);padding:8rem 0 9rem;}
:is(.imported-header,.imported-footer).letter,
:is(.imported-header,.imported-footer) .letter {
  background:#fff;color:var(--charcoal);max-width:720px;margin:0 auto;
  border-radius:14px;padding:clamp(2rem,5vw,4rem);
  border:1px solid rgba(39,42,54,.06);
  box-shadow:
    0 1px 2px rgba(0,0,0,.2),
    0 24px 60px rgba(0,0,0,.35),
    0 60px 120px rgba(0,0,0,.3);
}
/* letter header — eyebrow + big all-caps salutation live inside the card */
:is(.imported-header,.imported-footer).letter .eyebrow,
:is(.imported-header,.imported-footer) .letter .eyebrow {margin-bottom:1rem;}
:is(.imported-header,.imported-footer).letter-salutation,
:is(.imported-header,.imported-footer) .letter-salutation {
  font-family:var(--font-heading);font-variation-settings:var(--fvs-heading);font-weight:var(--fw-heading);
  text-transform:uppercase;letter-spacing:.09em;
  font-size:clamp(1.9rem,3.4vw,3rem);
  line-height:1.05;margin-bottom:1.6rem;
}
:is(.imported-header,.imported-footer).letter h3,
:is(.imported-header,.imported-footer) .letter h3 {margin:2.2rem 0 1.2rem;}
:is(.imported-header,.imported-footer).letter h3:first-child,
:is(.imported-header,.imported-footer) .letter h3:first-child {margin-top:0;}
:is(.imported-header,.imported-footer).letter p,
:is(.imported-header,.imported-footer) .letter p {margin-bottom:1.1rem;}
:is(.imported-header,.imported-footer).letter ul,
:is(.imported-header,.imported-footer) .letter ul {margin:0 0 1.1rem 1.4rem;}
:is(.imported-header,.imported-footer).letter li,
:is(.imported-header,.imported-footer) .letter li {margin-bottom:.55rem;}
:is(.imported-header,.imported-footer).letter .quote,
:is(.imported-header,.imported-footer) .letter .quote {
  font-family:"podium-soft-variable",sans-serif;font-variation-settings:"wght" 400;font-weight:400;
  font-style:italic;font-size:1.25rem;color:var(--forest);margin:1.4rem 0;
}
:is(.imported-header,.imported-footer).letter .btn,
:is(.imported-header,.imported-footer) .letter .btn {margin:.6rem 0 1.4rem;}
:is(.imported-header,.imported-footer) mark.hl {
  background-color:transparent;
  color:inherit;padding:.05em .12em;
  background-image:linear-gradient(var(--lime),var(--lime));
  background-repeat:no-repeat;background-position:0 55%;background-size:100% 92%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}
:is(.imported-header,.imported-footer).letter .closer,
:is(.imported-header,.imported-footer) .letter .closer {font-variation-settings:"wdth" 100,"wght" 600;font-style:italic;font-size:1.15rem;}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).mani-body,
:is(.imported-header,.imported-footer) .mani-body {padding:4rem 0 4.75rem;}

}

/* ---------- PROOF — DASHBOARD + STATS (StoryBrand authority) ---------- */
:is(.imported-header,.imported-footer).proof,
:is(.imported-header,.imported-footer) .proof {position:relative;background:#0b0c10;color:#fff;text-align:center;overflow:hidden;}
:is(.imported-header,.imported-footer).proof .eyebrow,
:is(.imported-header,.imported-footer) .proof .eyebrow {color:var(--lime);opacity:.85;}
:is(.imported-header,.imported-footer).proof-head,
:is(.imported-header,.imported-footer) .proof-head {max-width:900px;margin:0 auto 4rem;}
:is(.imported-header,.imported-footer).proof-head h3,
:is(.imported-header,.imported-footer) .proof-head h3 {margin:0 auto 1.4rem;text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;}
:is(.imported-header,.imported-footer).proof-lead,
:is(.imported-header,.imported-footer) .proof-lead {max-width:64ch;margin:0 auto;color:#d7d9de;font-size:1.05rem;}
:is(.imported-header,.imported-footer).pdash,
:is(.imported-header,.imported-footer) .pdash {position:relative;max-width:660px;margin:0 auto;}
:is(.imported-header,.imported-footer).case-link-row,
:is(.imported-header,.imported-footer) .case-link-row {margin:2.6rem 0 0;}
:is(.imported-header,.imported-footer).case-link,
:is(.imported-header,.imported-footer) .case-link {
  text-decoration:none;font-variation-settings:"wdth" 100,"wght" 600;
  border-bottom:2px solid var(--lime);padding-bottom:2px;transition:color .3s ease;
}
:is(.imported-header,.imported-footer).case-link:hover,
:is(.imported-header,.imported-footer) .case-link:hover {color:var(--lime);}
/* stats row width capped to match the dashboard above it */
:is(.imported-header,.imported-footer).stats,
:is(.imported-header,.imported-footer) .stats {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:2rem;row-gap:2rem;margin:4rem auto 3.5rem;max-width:880px;text-align:center;}
:is(.imported-header,.imported-footer).stat-num,
:is(.imported-header,.imported-footer) .stat-num {
  display:block;color:var(--lime);font-size:clamp(1.8rem,2.9vw,2.6rem);
  font-family:"podium-sharp-variable",sans-serif;
  font-variation-settings:"wdth" 100,"wght" 700;font-weight:400;line-height:1.05;
  letter-spacing:.02em;white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
:is(.imported-header,.imported-footer).stat-num .star-line,
:is(.imported-header,.imported-footer) .stat-num .star-line {white-space:nowrap;}
:is(.imported-header,.imported-footer).stat-num .star,
:is(.imported-header,.imported-footer) .stat-num .star {font-size:.6em;}
:is(.imported-header,.imported-footer).stat-label,
:is(.imported-header,.imported-footer) .stat-label {display:block;margin-top:.55rem;font-size:.92rem;color:#b6b9c2;}
:is(.imported-header,.imported-footer).proof-note,
:is(.imported-header,.imported-footer) .proof-note {max-width:680px;margin:0 auto;color:#d7d9de;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).stats,
:is(.imported-header,.imported-footer) .stats {grid-template-columns:repeat(2,1fr);}
}

/* ---------- WHO (two big cards WITH trade lists) ---------- */
:is(.imported-header,.imported-footer).who,
:is(.imported-header,.imported-footer) .who {background:var(--cream);}
:is(.imported-header,.imported-footer).who-head,
:is(.imported-header,.imported-footer) .who-head {text-align:center;max-width:820px;margin:0 auto 4rem;}
:is(.imported-header,.imported-footer).who-head p,
:is(.imported-header,.imported-footer) .who-head p {margin-top:1.2rem;}
:is(.imported-header,.imported-footer).who-grid,
:is(.imported-header,.imported-footer) .who-grid {display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;perspective:1200px;}
:is(.imported-header,.imported-footer).who-card,
:is(.imported-header,.imported-footer) .who-card {
  position:relative;overflow:hidden;
  background:#fff;border:1px solid var(--border);border-radius:14px;
  padding:2.8rem 2.4rem;box-shadow:0 10px 28px rgba(39,42,54,.07);
  --mx:50%;--my:50%;will-change:transform;
}
:is(.imported-header,.imported-footer).who-card .sheen,
:is(.imported-header,.imported-footer) .who-card .sheen {
  position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .45s ease;
  background:radial-gradient(420px circle at var(--mx) var(--my),rgba(207,255,46,.18),transparent 62%);
}
:is(.imported-header,.imported-footer).who-card:hover .sheen,
:is(.imported-header,.imported-footer) .who-card:hover .sheen {opacity:1;}
:is(.imported-header,.imported-footer).who-card h3,
:is(.imported-header,.imported-footer) .who-card h3 {
  font-family:var(--font-heading);font-weight:var(--fw-heading);
  margin-bottom:1.1rem;text-transform:uppercase;letter-spacing:.11em;
  font-variation-settings:"wdth" 100,"wght" 600;font-size:clamp(1.35rem,2.1vw,1.7rem);
}
:is(.imported-header,.imported-footer).who-photo,
:is(.imported-header,.imported-footer) .who-photo {
  height:260px;margin:-2.8rem -2.4rem 1.8rem;overflow:hidden;
  border-radius:13px 13px 0 0;
}
:is(.imported-header,.imported-footer).who-photo img,
:is(.imported-header,.imported-footer) .who-photo img {width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1);}
:is(.imported-header,.imported-footer).who-card:hover .who-photo img,
:is(.imported-header,.imported-footer) .who-card:hover .who-photo img {transform:scale(1.04);}
:is(.imported-header,.imported-footer).wlist,
:is(.imported-header,.imported-footer) .wlist {list-style:none;margin:0 0 1.6rem;padding:0;}
:is(.imported-header,.imported-footer).wlist li,
:is(.imported-header,.imported-footer) .wlist li {position:relative;padding-left:2.4rem;margin-bottom:.75rem;color:#3d4150;}
/* light-bg keyhole bullets: dark rounded-square chip with the lime keyhole centered inside */
:is(.imported-header,.imported-footer).wlist li::before,
:is(.imported-header,.imported-footer) .wlist li::before {
  content:"";position:absolute;left:0;top:.02em;width:24px;height:24px;
  border-radius:6px;background:#293726;
}
:is(.imported-header,.imported-footer).wlist li::after,
:is(.imported-header,.imported-footer) .wlist li::after {
  content:"";position:absolute;left:8.5px;top:calc(.02em + 4px);width:7px;height:16px;
  background:var(--lime);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
}
:is(.imported-header,.imported-footer).who-link,
:is(.imported-header,.imported-footer) .who-link {
  text-decoration:none;font-variation-settings:"wdth" 100,"wght" 600;
  border-bottom:2px solid var(--lime);padding-bottom:2px;transition:color .3s ease;
}
:is(.imported-header,.imported-footer).who-link:hover,
:is(.imported-header,.imported-footer) .who-link:hover {color:var(--forest);}
@media(max-width:767px){
:is(.imported-header,.imported-footer).who-grid,
:is(.imported-header,.imported-footer) .who-grid {grid-template-columns:1fr;}
}

/* ---------- HOW — PINNED HORIZONTAL GROWTH LOCK ---------- */
:is(.imported-header,.imported-footer).how,
:is(.imported-header,.imported-footer) .how {position:relative;background:var(--charcoal);color:#fff;padding:8.5rem 0;overflow:hidden;}
:is(.imported-header,.imported-footer).cine-on .how {padding:0;}
:is(.imported-header,.imported-footer).how-pin,
:is(.imported-header,.imported-footer) .how-pin {position:relative;}
:is(.imported-header,.imported-footer).cine-on .how-pin {height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;}
:is(.imported-header,.imported-footer).how h2,
:is(.imported-header,.imported-footer) .how h2 {text-align:center;margin-bottom:3rem;color:#fff;}
:is(.imported-header,.imported-footer).how h2 .tm,
:is(.imported-header,.imported-footer) .how h2 .tm {color:inherit;}
:is(.imported-header,.imported-footer).hwin,
:is(.imported-header,.imported-footer) .hwin {position:relative;}
:is(.imported-header,.imported-footer).htrack,
:is(.imported-header,.imported-footer) .htrack {
  position:relative;display:grid;gap:1.5rem;
  max-width:1200px;margin:0 auto;padding:0 1.5rem;
}
:is(.imported-header,.imported-footer).cine-on .htrack {
  display:flex;gap:72px;max-width:none;margin:0;
  padding:2rem 0 2rem 84px;align-items:stretch;width:max-content;
  will-change:transform;
}
:is(.imported-header,.imported-footer).hline,
:is(.imported-header,.imported-footer) .hline {
  /* lives in .hwin (the fixed viewport window), NOT .htrack (the sliding
     track) — flush to the screen's left edge so it visually starts there
     and grows rightward as you scroll, instead of translating along with
     the cards and starting wherever they happen to be (which, with the
     cards now sliding in from off-screen right, meant the line started
     off-screen too). */
  display:none;position:absolute;top:50%;left:0;right:0;height:3px;z-index:0;
  background:rgba(207,255,46,.45);border-radius:2px;transform-origin:left center;
}
:is(.imported-header,.imported-footer).cine-on .hline {display:block;}
:is(.imported-header,.imported-footer).hcard,
:is(.imported-header,.imported-footer) .hcard {
  position:relative;z-index:1;background:#fff;color:var(--charcoal);
  border-radius:14px;padding:2.4rem 2rem;
  box-shadow:0 30px 60px rgba(0,0,0,.35),0 8px 18px rgba(0,0,0,.25);
}
:is(.imported-header,.imported-footer).cine-on .hcard {width:min(520px,62vw);flex:0 0 auto;}
:is(.imported-header,.imported-footer).hcard .knode,
:is(.imported-header,.imported-footer) .hcard .knode {display:none;left:-46px;top:50%;margin-top:-12px;}
:is(.imported-header,.imported-footer).cine-on .hcard .knode {display:block;}
:is(.imported-header,.imported-footer).step-num,
:is(.imported-header,.imported-footer) .step-num {
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:3rem;height:3rem;border-radius:10px;background:var(--charcoal);
  overflow:hidden;margin-bottom:1.2rem;
  font-variation-settings:"wdth" 100,"wght" 750;font-size:1.4rem;color:var(--lime);
}
:is(.imported-header,.imported-footer).step-fill,
:is(.imported-header,.imported-footer) .step-fill {
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:var(--lime);color:var(--charcoal);
  font-variation-settings:"wdth" 100,"wght" 750;font-size:1.4rem;
}
:is(.imported-header,.imported-footer).hcard h3,
:is(.imported-header,.imported-footer) .hcard h3 {margin-bottom:.7rem;}
:is(.imported-header,.imported-footer).hcard p,
:is(.imported-header,.imported-footer) .hcard p {color:#4b5563;}
:is(.imported-header,.imported-footer).how-cta,
:is(.imported-header,.imported-footer) .how-cta {text-align:center;margin-top:3rem;}

/* ---------- TESTIMONIALS ---------- */
:is(.imported-header,.imported-footer).testi,
:is(.imported-header,.imported-footer) .testi {background:var(--cream);}
:is(.imported-header,.imported-footer).testi-head h3,
:is(.imported-header,.imported-footer) .testi-head h3 {font-family:var(--font-heading);font-weight:var(--fw-heading);text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);font-variation-settings:"wdth" 100,"wght" 600;line-height:1.04;}
:is(.imported-header,.imported-footer).testi-head,
:is(.imported-header,.imported-footer) .testi-head {text-align:center;max-width:960px;margin:0 auto 4rem;}
:is(.imported-header,.imported-footer).t-grid,
:is(.imported-header,.imported-footer) .t-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
:is(.imported-header,.imported-footer).t-card,
:is(.imported-header,.imported-footer) .t-card {
  background:#fff;border:1px solid rgba(39,42,54,.08);border-radius:16px;
  padding:2.5rem 2.1rem;box-shadow:0 12px 32px rgba(39,42,54,.08);
  transition:transform .4s cubic-bezier(.2,.7,.3,1),box-shadow .4s ease;
}
:is(.imported-header,.imported-footer).t-card:hover,
:is(.imported-header,.imported-footer) .t-card:hover {transform:translateY(-10px);box-shadow:0 30px 60px rgba(39,42,54,.16);}
:is(.imported-header,.imported-footer).t-mark,
:is(.imported-header,.imported-footer) .t-mark {
  display:block;color:var(--lime);font-size:4.6rem;line-height:.55;margin:.4rem 0 1.4rem;
  font-variation-settings:"wdth" 100,"wght" 800;
  filter:drop-shadow(0 3px 0 rgba(39,42,54,.2));
}
:is(.imported-header,.imported-footer).t-quote,
:is(.imported-header,.imported-footer) .t-quote {
  font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 460;font-weight:400;
  font-size:1.02rem;line-height:1.75;color:#3d4150;margin-bottom:1.6rem;
}
:is(.imported-header,.imported-footer).t-name,
:is(.imported-header,.imported-footer) .t-name {display:block;font-family:"podium-soft-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 600;font-weight:900;}
:is(.imported-header,.imported-footer).t-role,
:is(.imported-header,.imported-footer) .t-role {display:block;font-size:.88rem;color:var(--muted);margin-top:.15rem;}
@media(max-width:979px){
:is(.imported-header,.imported-footer).t-grid,
:is(.imported-header,.imported-footer) .t-grid {grid-template-columns:1fr;max-width:640px;margin:0 auto;}
}

/* ---------- SERVICES (dark — varies the page rhythm) ---------- */
:is(.imported-header,.imported-footer).services,
:is(.imported-header,.imported-footer) .services {position:relative;background:var(--charcoal);color:#c9ccd6;overflow:hidden;}
:is(.imported-header,.imported-footer).services-head,
:is(.imported-header,.imported-footer) .services-head {text-align:center;max-width:880px;margin:0 auto 4rem;}
:is(.imported-header,.imported-footer).services-head h2,
:is(.imported-header,.imported-footer) .services-head h2 {color:var(--cream);}
:is(.imported-header,.imported-footer).services-head .eyebrow,
:is(.imported-header,.imported-footer) .services-head .eyebrow {color:var(--lime);opacity:.85;}
:is(.imported-header,.imported-footer).services-head p,
:is(.imported-header,.imported-footer) .services-head p {margin-top:1.2rem;color:#c9ccd6;}
:is(.imported-header,.imported-footer).svc-grid,
:is(.imported-header,.imported-footer) .svc-grid {display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
:is(.imported-header,.imported-footer).svc,
:is(.imported-header,.imported-footer) .svc {
  position:relative;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:8px;
  padding:1.2rem 1.4rem;color:#c9ccd6;
  box-shadow:inset 0 0 0 0 var(--lime);
  transition:box-shadow .35s ease,transform .35s ease,background .35s ease;
}
:is(.imported-header,.imported-footer).svc:hover,
:is(.imported-header,.imported-footer) .svc:hover {box-shadow:inset 5px 0 0 0 var(--lime);background:rgba(255,255,255,.04);transform:translateX(4px);}
:is(.imported-header,.imported-footer).svc h3,
:is(.imported-header,.imported-footer) .svc h3 {font-size:1.05rem;margin-bottom:.3rem;color:var(--cream);font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 600;font-weight:400;text-transform:none;letter-spacing:.01em;}
:is(.imported-header,.imported-footer).svc p,
:is(.imported-header,.imported-footer) .svc p {font-size:.92rem;color:#9aa0af;}
:is(.imported-header,.imported-footer).svc-all,
:is(.imported-header,.imported-footer) .svc-all {text-align:center;margin-top:2.6rem;}
:is(.imported-header,.imported-footer).btn-ghost-light,
:is(.imported-header,.imported-footer) .btn-ghost-light {background:transparent;color:var(--cream);box-shadow:inset 0 0 0 2px var(--cream);}
:is(.imported-header,.imported-footer).btn-ghost-light:hover,
:is(.imported-header,.imported-footer) .btn-ghost-light:hover {background:var(--lime);color:var(--charcoal);box-shadow:inset 0 0 0 2px var(--lime);transform:scale(1.05);}
@media(max-width:767px){
:is(.imported-header,.imported-footer).svc-grid,
:is(.imported-header,.imported-footer) .svc-grid {grid-template-columns:1fr;}
}

/* ---------- LEAD MAGNET (playbook) ---------- */
:is(.imported-header,.imported-footer).magnet,
:is(.imported-header,.imported-footer) .magnet {background:var(--cream);}
:is(.imported-header,.imported-footer).magnet-grid,
:is(.imported-header,.imported-footer) .magnet-grid {
  display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2.5rem,6vw,5.5rem);
  align-items:center;
}
:is(.imported-header,.imported-footer).magnet-media,
:is(.imported-header,.imported-footer) .magnet-media {perspective:1100px;}
:is(.imported-header,.imported-footer).pbook-tilt,
:is(.imported-header,.imported-footer) .pbook-tilt {width:min(380px,88%);margin:0 auto;will-change:transform;}
:is(.imported-header,.imported-footer).pbook,
:is(.imported-header,.imported-footer) .pbook {
  width:100%;
  /* cover PNG ships with its own baked-in drop shadow — no CSS shadow, no card */
  animation:floaty 6.5s ease-in-out infinite;
}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
:is(.imported-header,.imported-footer).magnet-copy h3,
:is(.imported-header,.imported-footer) .magnet-copy h3 {font-family:var(--font-heading);font-weight:var(--fw-heading);margin-bottom:1.4rem;text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);font-variation-settings:"wdth" 100,"wght" 600;line-height:1.04;}
:is(.imported-header,.imported-footer).magnet-copy .lead,
:is(.imported-header,.imported-footer) .magnet-copy .lead {font-size:1.08rem;color:#3d4150;max-width:56ch;margin-bottom:1.8rem;}
:is(.imported-header,.imported-footer).magnet-copy .wlist li,
:is(.imported-header,.imported-footer) .magnet-copy .wlist li {margin-bottom:.85rem;}
:is(.imported-header,.imported-footer).magnet-copy .btn,
:is(.imported-header,.imported-footer) .magnet-copy .btn {margin-top:1.6rem;}
@media(max-width:979px){

  :is(.imported-header,.imported-footer).magnet-grid,
:is(.imported-header,.imported-footer) .magnet-grid {grid-template-columns:1fr;}
  :is(.imported-header,.imported-footer).pbook-tilt,
:is(.imported-header,.imported-footer) .pbook-tilt {width:min(300px,80%);}

}

/* ---------- FINAL CTA ---------- */
:is(.imported-header,.imported-footer).final,
:is(.imported-header,.imported-footer) .final {position:relative;background:var(--forest);color:var(--cream);text-align:center;overflow:hidden;}
:is(.imported-header,.imported-footer).final-inner,
:is(.imported-header,.imported-footer) .final-inner {position:relative;z-index:2;max-width:860px;margin:0 auto;}
:is(.imported-header,.imported-footer).final h2,
:is(.imported-header,.imported-footer) .final h2 {margin-bottom:1.6rem;}
:is(.imported-header,.imported-footer).final p,
:is(.imported-header,.imported-footer) .final p {margin-bottom:1.2rem;}
:is(.imported-header,.imported-footer).final ul,
:is(.imported-header,.imported-footer) .final ul {list-style:none;margin:0 0 2rem;padding:0;}
:is(.imported-header,.imported-footer).final li,
:is(.imported-header,.imported-footer) .final li {
  margin:0 auto .7rem;max-width:560px;padding-left:1.4rem;position:relative;text-align:left;
}
:is(.imported-header,.imported-footer).final li::before,
:is(.imported-header,.imported-footer) .final li::before {
  content:"";position:absolute;left:0;top:.12em;width:9px;height:20px;background:var(--lime);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 177.57 442.31'><path d='M149.22,152.14c-10.18,9.38-15.5,22.9-14.53,36.73l16.23,232.24c0,11.88-9.28,21.2-21.16,21.2H47.82c-11.88,0-21.16-9.31-21.16-21.2l16.23-232.24c.97-13.83-4.34-27.35-14.53-36.73C10.91,136.12,0,113.15,0,87.61,0,38.79,40.1-.62,88.79,0c48.68-.63,88.79,38.78,88.79,87.61,0,25.54-10.91,48.51-28.36,64.53Z'/></svg>") center/contain no-repeat;
}
:is(.imported-header,.imported-footer).final .soft-line,
:is(.imported-header,.imported-footer) .final .soft-line {
  font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 480;font-weight:400;
  font-style:italic;margin-top:1.6rem;color:#dfe3d9;font-size:1rem;
}
/* GHL contact form embed */
:is(.imported-header,.imported-footer).final-form,
:is(.imported-header,.imported-footer) .final-form {position:relative;z-index:2;max-width:760px;margin:4.5rem auto 0;min-height:1480px;}
:is(.imported-header,.imported-footer).final-form h3,
:is(.imported-header,.imported-footer) .final-form h3 {
  color:var(--cream);margin-bottom:1.3rem;
  font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 620;font-weight:400;
  font-size:1.15rem;letter-spacing:.08em;
}
/* GHL's form_embed.js can hide/zero the iframe until its handshake completes
   (which never happens on file://) — hard-guard so the form is always visible */
:is(.imported-header,.imported-footer) #inline-aPr3Vn23gmfTAWexs6M3 {
  display:block!important;visibility:visible!important;opacity:1!important;
  min-height:1437px!important;width:100%!important;background:transparent;border-radius:25px;
}
:is(.imported-header,.imported-footer).btn-deep,
:is(.imported-header,.imported-footer) .btn-deep {
  position:relative;
  box-shadow:0 10px 24px rgba(0,0,0,.35),0 3px 8px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 0 rgba(0,0,0,.12);
}
:is(.imported-header,.imported-footer).btn-deep:active,
:is(.imported-header,.imported-footer) .btn-deep:active {
  transform:scale(.98) translateY(1px);
  box-shadow:0 3px 8px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.2);
}
:is(.imported-header,.imported-footer).btn-deep::after,
:is(.imported-header,.imported-footer) .btn-deep::after {
  content:"";position:absolute;inset:-5px;border-radius:10px;
  border:2px solid var(--lime);opacity:0;pointer-events:none;
  animation:pulsering 2.6s cubic-bezier(.2,.6,.4,1) infinite;
}
@keyframes pulsering{
  0%{transform:scale(.94);opacity:.65;}
  70%{transform:scale(1.22);opacity:0;}
  100%{transform:scale(1.22);opacity:0;}
}

/* ---------- FOOTER ---------- */
:is(.imported-header,.imported-footer).footer,
:is(.imported-header,.imported-footer) .footer {background:var(--black);color:#b6b9c2;padding:5rem 0 0;}
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {display:grid;grid-template-columns:1.1fr .65fr .85fr .85fr .7fr 1.15fr;gap:2.4rem;align-items:start;padding-bottom:3.5rem;}
:is(.imported-header,.imported-footer).footer-brand,
:is(.imported-header,.imported-footer) .footer-brand {display:flex;flex-direction:column;gap:1.2rem;align-items:flex-start;}
:is(.imported-header,.imported-footer).footer-brand img,
:is(.imported-header,.imported-footer) .footer-brand img {height:96px;width:auto;}
:is(.imported-header,.imported-footer).footer-tag,
:is(.imported-header,.imported-footer) .footer-tag {font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:#8b8fa0;}
:is(.imported-header,.imported-footer).footer-cta,
:is(.imported-header,.imported-footer) .footer-cta {font-size:.88rem;padding:.65rem 1.1rem;}
:is(.imported-header,.imported-footer).footer-col h4,
:is(.imported-header,.imported-footer) .footer-col h4,
:is(.imported-header,.imported-footer).footer-col .footer-heading,
:is(.imported-header,.imported-footer) .footer-col .footer-heading {color:var(--cream);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 100,"wght" 600;}
:is(.imported-header,.imported-footer).footer-col a,
:is(.imported-header,.imported-footer) .footer-col a {display:block;color:#b6b9c2;text-decoration:none;margin-bottom:.6rem;font-size:.95rem;transition:color .25s ease;}
:is(.imported-header,.imported-footer).footer-col a:hover,
:is(.imported-header,.imported-footer) .footer-col a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer .nap,
:is(.imported-header,.imported-footer) .footer .nap {font-size:.95rem;line-height:1.9;}
:is(.imported-header,.imported-footer).footer .nap a,
:is(.imported-header,.imported-footer) .footer .nap a {display:inline;margin:0;color:#fff;text-decoration:none;}
:is(.imported-header,.imported-footer).footer .nap a:hover,
:is(.imported-header,.imported-footer) .footer .nap a:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer-map,
:is(.imported-header,.imported-footer) .footer-map {position:relative;width:100%;height:200px;margin-top:1.4rem;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);}
:is(.imported-header,.imported-footer).footer-map iframe,
:is(.imported-header,.imported-footer) .footer-map iframe {filter:grayscale(1) invert(.92) hue-rotate(185deg) brightness(.9) contrast(.92);}
:is(.imported-header,.imported-footer).map-link,
:is(.imported-header,.imported-footer) .map-link {position:absolute;left:.8rem;bottom:.8rem;background:rgba(11,12,16,.85);color:var(--cream);text-decoration:none;font-size:.78rem;padding:.4rem .7rem;border-radius:6px;letter-spacing:.04em;}
:is(.imported-header,.imported-footer).map-link:hover,
:is(.imported-header,.imported-footer) .map-link:hover {color:var(--lime);}
:is(.imported-header,.imported-footer).footer-bar,
:is(.imported-header,.imported-footer) .footer-bar {border-top:1px solid rgba(255,255,255,.08);padding:1.4rem 0;}
@media(max-width:1023px){
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {grid-template-columns:1fr 1fr;}
}
@media(max-width:767px){
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top {grid-template-columns:1fr;gap:2.2rem;}:is(.imported-header,.imported-footer).footer-map,
:is(.imported-header,.imported-footer) .footer-map {height:260px;}
}
:is(.imported-header,.imported-footer).footer .fine,
:is(.imported-header,.imported-footer) .footer .fine {margin-top:2.5rem;text-align:center;font-size:.8rem;color:#6b7280;}
@media(max-width:767px){

  :is(.imported-header,.imported-footer).footer-map,
:is(.imported-header,.imported-footer) .footer-map {height:auto;aspect-ratio:4/3;}

}

/* ---------- MOBILE SCALE ---------- */
@media(max-width:767px){

  :is(.imported-header,.imported-footer) section {padding:4.75rem 0;}
  :is(.imported-header,.imported-footer).how,
:is(.imported-header,.imported-footer) .how {padding:4.75rem 0;}

}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){

  :is(.imported-header,.imported-footer) {scroll-behavior:auto;}
  :is(.imported-header,.imported-footer) *,
:is(.imported-header,.imported-footer) *::before,
:is(.imported-header,.imported-footer) *::after {animation:none!important;transition:none!important;}

}
/* Responsive mobile menu override: scale with viewport width and keep labels on one line. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {padding-left:.75rem;padding-right:.75rem;gap:.12rem;}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {font-size:clamp(.95rem,4.2vw,1.35rem);line-height:1;letter-spacing:.01em;gap:.4rem;white-space:nowrap;}
  :is(.imported-header,.imported-footer).menu-links a .mk,
:is(.imported-header,.imported-footer) .menu-links a .mk {width:10px;height:23px;}
  :is(.imported-header,.imported-footer).menu-links a .menu-label,
:is(.imported-header,.imported-footer) .menu-links a .menu-label {white-space:nowrap;}

}
/* Readable phone menu range: larger on standard phones, still bounded on narrow screens. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {font-size:clamp(1rem,5.8vw,1.55rem);}

}
/* Comfortable mobile tap spacing: preserve one-line labels and provide a larger hit area. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {gap:clamp(.35rem,1.8vh,.85rem);}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {min-height:44px;padding-block:clamp(.15rem,1vh,.4rem);}

}
/* Middle-ground mobile menu spacing: easier to tap without excessive separation. */
@media (max-width: 600px){

  :is(.imported-header,.imported-footer).menu-links,
:is(.imported-header,.imported-footer) .menu-links {gap:clamp(.25rem,1.1vh,.55rem);}
  :is(.imported-header,.imported-footer).menu-links a,
:is(.imported-header,.imported-footer) .menu-links a {min-height:38px;padding-block:.05rem;}

}
/* Mobile reading gutter: keep copy and controls away from the viewport edge. */
@media (max-width: 767px){

  :is(.imported-header,.imported-footer).wrap,
:is(.imported-header,.imported-footer) .wrap,
:is(.imported-header,.imported-footer).container,
:is(.imported-header,.imported-footer) .container,
:is(.imported-header,.imported-footer).page-grid,
:is(.imported-header,.imported-footer) .page-grid,
:is(.imported-header,.imported-footer).mhero-inner,
:is(.imported-header,.imported-footer) .mhero-inner,
:is(.imported-header,.imported-footer).hero-inner,
:is(.imported-header,.imported-footer) .hero-inner,
:is(.imported-header,.imported-footer).section-inner,
:is(.imported-header,.imported-footer) .section-inner,
:is(.imported-header,.imported-footer).section-wrap,
:is(.imported-header,.imported-footer) .section-wrap,
:is(.imported-header,.imported-footer).content-wrap,
:is(.imported-header,.imported-footer) .content-wrap,
:is(.imported-header,.imported-footer).copy-wrap,
:is(.imported-header,.imported-footer) .copy-wrap,
:is(.imported-header,.imported-footer).final-band-inner,
:is(.imported-header,.imported-footer) .final-band-inner,
:is(.imported-header,.imported-footer).keycode-box,
:is(.imported-header,.imported-footer) .keycode-box,
:is(.imported-header,.imported-footer).stat-band .wrap,
:is(.imported-header,.imported-footer) .stat-band .wrap,
:is(.imported-header,.imported-footer).tiles-sec .wrap,
:is(.imported-header,.imported-footer) .tiles-sec .wrap,
:is(.imported-header,.imported-footer).faq-sec .wrap,
:is(.imported-header,.imported-footer) .faq-sec .wrap,
:is(.imported-header,.imported-footer).footer-top,
:is(.imported-header,.imported-footer) .footer-top,
:is(.imported-header,.imported-footer).footer-bar,
:is(.imported-header,.imported-footer) .footer-bar {
    padding-left:clamp(10px,4vw,20px) !important;
    padding-right:clamp(10px,4vw,20px) !important;
  }

}

/* Back-to-top: navbar-derived frosted glass */
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {position:fixed;left:calc(50% - 1.3rem);bottom:.35rem;z-index:40;display:grid;place-items:center;width:2.6rem;height:2.6rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;background:rgba(0,0,0,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:rgba(242,243,235,.94);font-family:var(--font-body);font-size:1.15rem;font-weight:700;line-height:1;text-decoration:none;opacity:0!important;pointer-events:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 20px rgba(11,12,16,.18);transition:opacity .42s ease,bottom .55s cubic-bezier(.22,1,.36,1),border-radius .6s ease,background .3s ease,box-shadow .35s ease; font-variation-settings: "wght" 700, "wdth" 100;
}
:is(.imported-header,.imported-footer).back-to-top span,
:is(.imported-header,.imported-footer) .back-to-top span {position:relative;z-index:1;text-shadow:0 1px 1px #00000059;}
:is(.imported-header,.imported-footer).back-to-top::before,
:is(.imported-header,.imported-footer) .back-to-top::before {content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#ffffff2e,#ffffff00 42%);pointer-events:none;}
:is(.imported-header,.imported-footer).back-to-top::after,
:is(.imported-header,.imported-footer) .back-to-top::after {display:none;}
:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {opacity:1!important;pointer-events:auto!important;bottom:1rem;}
:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {opacity:1!important;outline:none;border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;background:rgba(0,0,0,.72);bottom:1.12rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 11px 24px rgba(11,12,16,.25);}
@media(max-width:700px){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {left:calc(50% - 1.25rem);bottom:calc(env(safe-area-inset-bottom) + .35rem);width:2.5rem;height:2.5rem;font-size:1.15rem;touch-action:manipulation;}:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {bottom:max(1rem,calc(env(safe-area-inset-bottom) + .7rem));}:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {bottom:max(1.12rem,calc(env(safe-area-inset-bottom) + .82rem));}
}
@media(prefers-reduced-motion:reduce){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top {transition:opacity .2s ease,background .2s ease;}
}


/* Continuous liquid motion: low-key at rest, more expressive while hovered. */
@keyframes backtop-idle-morph{0%,100%{border-radius:58% 42% 54% 46% / 45% 56% 44% 55%;}50%{border-radius:53% 47% 49% 51% / 55% 48% 52% 45%;}}
@keyframes backtop-hover-morph{0%,100%{border-radius:42% 58% 46% 54% / 56% 44% 55% 45%;}34%{border-radius:57% 43% 59% 41% / 42% 58% 43% 57%;}68%{border-radius:47% 53% 40% 60% / 60% 40% 59% 41%;}}
@keyframes backtop-idle-sheen{0%,100%{background-position:0% 0%;opacity:.52;}50%{background-position:34% 18%;opacity:.68;}}
@keyframes backtop-hover-sheen{0%,100%{background-position:0% 0%;opacity:.72;}50%{background-position:100% 42%;opacity:1;}}
:is(.imported-header,.imported-footer).back-to-top.is-visible,
:is(.imported-header,.imported-footer) .back-to-top.is-visible {animation:backtop-idle-morph 9s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top.is-visible::before,
:is(.imported-header,.imported-footer) .back-to-top.is-visible::before {background-size:180% 180%;animation:backtop-idle-sheen 11s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top:hover,
:is(.imported-header,.imported-footer) .back-to-top:hover,
:is(.imported-header,.imported-footer).back-to-top:focus-visible,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible {animation:backtop-hover-morph 2.8s ease-in-out infinite;}
:is(.imported-header,.imported-footer).back-to-top:hover::before,
:is(.imported-header,.imported-footer) .back-to-top:hover::before,
:is(.imported-header,.imported-footer).back-to-top:focus-visible::before,
:is(.imported-header,.imported-footer) .back-to-top:focus-visible::before {animation:backtop-hover-sheen 2.2s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){
:is(.imported-header,.imported-footer).back-to-top,
:is(.imported-header,.imported-footer) .back-to-top,
:is(.imported-header,.imported-footer).back-to-top::before,
:is(.imported-header,.imported-footer) .back-to-top::before {animation:none!important;}
}

/* Social navigation */
:is(.imported-header,.imported-footer).social-links,
:is(.imported-header,.imported-footer) .social-links {display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;}
:is(.imported-header,.imported-footer).social-links a,
:is(.imported-header,.imported-footer) .social-links a {width:2rem;height:2rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--cream);text-decoration:none;transition:color .22s ease,background .22s ease,border-color .22s ease,transform .22s ease;}
:is(.imported-header,.imported-footer).social-links a:hover,
:is(.imported-header,.imported-footer) .social-links a:hover,
:is(.imported-header,.imported-footer).social-links a:focus-visible,
:is(.imported-header,.imported-footer) .social-links a:focus-visible {color:var(--charcoal);background:var(--lime);border-color:var(--lime);transform:translateY(-2px);outline:none;}
:is(.imported-header,.imported-footer).social-links svg,
:is(.imported-header,.imported-footer) .social-links svg {width:1rem;height:1rem;display:block;fill:currentColor;}
:is(.imported-header,.imported-footer).footer-social,
:is(.imported-header,.imported-footer) .footer-social {margin-top:1.35rem;}
:is(.imported-header,.imported-footer).menu-social,
:is(.imported-header,.imported-footer) .menu-social {justify-content:center;}
@media(max-width:700px){
:is(.imported-header,.imported-footer).social-links,
:is(.imported-header,.imported-footer) .social-links {gap:.4rem;}:is(.imported-header,.imported-footer).social-links a,
:is(.imported-header,.imported-footer) .social-links a {width:1.9rem;height:1.9rem;}:is(.imported-header,.imported-footer).menu-social-wrap,
:is(.imported-header,.imported-footer) .menu-social-wrap {margin-top:1rem;}
}

/* Menu social icons sit in the same action row as contact details and the CTA. */
:is(.imported-header,.imported-footer).menu-foot>.menu-social,
:is(.imported-header,.imported-footer) .menu-foot>.menu-social {flex:0 0 auto;justify-content:center;}
@media(max-width:700px){
:is(.imported-header,.imported-footer).menu-foot>.menu-social,
:is(.imported-header,.imported-footer) .menu-foot>.menu-social {flex-basis:100%;}
}

:is(.imported-header,.imported-footer).footer-social-label,
:is(.imported-header,.imported-footer) .footer-social-label {margin:1.35rem 0 .6rem;color:#8b8fa0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-variation-settings:"wdth" 100,"wght" 600;}
:is(.imported-header,.imported-footer).footer-social-label+.footer-social,
:is(.imported-header,.imported-footer) .footer-social-label+.footer-social {margin-top:0;}

/* Approved logo assets */
:is(.imported-header,.imported-footer).nav-word,
:is(.imported-header,.imported-footer) .nav-word {display:inline-flex;align-items:center;line-height:0;}
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
:is(.imported-header,.imported-footer).footer-brand .footer-logo,
:is(.imported-header,.imported-footer) .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}

/* Proportional approved logo sizing. Inline image dimensions protect this scale even before CSS finishes loading. */
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {display:block;width:250px;max-width:calc(100vw - 190px);height:auto;max-height:2rem;object-fit:contain;}
:is(.imported-header,.imported-footer).footer-brand .footer-logo,
:is(.imported-header,.imported-footer) .footer-brand .footer-logo {display:block;width:100%;max-width:none;height:auto;aspect-ratio:777 / 212;object-fit:contain;}
@media(max-width:767px){
:is(.imported-header,.imported-footer).nav-word .nav-logo,
:is(.imported-header,.imported-footer) .nav-word .nav-logo {width:10rem;max-width:calc(100vw - 180px);max-height:1.5rem;}
}
/* ---------- AAF FORT WAYNE ADHONORS ---------- */
:is(.imported-header,.imported-footer).awards,
:is(.imported-header,.imported-footer) .awards {position:relative;background:#15171e;color:var(--cream);overflow:hidden;}
:is(.imported-header,.imported-footer).awards:before,
:is(.imported-header,.imported-footer) .awards:before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 46%,rgba(207,255,46,.16),transparent 28%),radial-gradient(circle at 89% 55%,rgba(63,82,78,.7),transparent 34%);pointer-events:none;}
:is(.imported-header,.imported-footer).awards .wrap,
:is(.imported-header,.imported-footer) .awards .wrap {position:relative;z-index:1;}
:is(.imported-header,.imported-footer).awards-grid,
:is(.imported-header,.imported-footer) .awards-grid {display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(2.5rem,6vw,6rem);align-items:center;}
:is(.imported-header,.imported-footer).awards-eyebrow,
:is(.imported-header,.imported-footer) .awards-eyebrow {margin:0 0 1rem;color:var(--lime);font-family:"podium-sharp-variable",sans-serif;font-variation-settings:"wdth" 110,"wght" 620;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;}
:is(.imported-header,.imported-footer).awards h3,
:is(.imported-header,.imported-footer) .awards h3 {max-width:12ch;margin:0 0 1.4rem;color:var(--cream);text-transform:uppercase;letter-spacing:.09em;font-size:clamp(2.1rem,4.4vw,4.5rem);line-height:1.04;}
:is(.imported-header,.imported-footer).awards-copy,
:is(.imported-header,.imported-footer) .awards-copy {max-width:56ch;margin:0;color:#d4d7dd;}
:is(.imported-header,.imported-footer).awards-counts,
:is(.imported-header,.imported-footer) .awards-counts {display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:2rem 0 1.25rem;max-width:540px;}
:is(.imported-header,.imported-footer).award-count,
:is(.imported-header,.imported-footer) .award-count {padding:1rem .85rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:10px;text-align:center;}
:is(.imported-header,.imported-footer).award-count strong,
:is(.imported-header,.imported-footer) .award-count strong {display:block;color:var(--lime);font-family:"podium-soft-variable",sans-serif;font-variation-settings:"wdth" 110,"wght" 750;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1;}
:is(.imported-header,.imported-footer).award-count span,
:is(.imported-header,.imported-footer) .award-count span {display:block;margin-top:.42rem;color:#d4d7dd;font-size:.77rem;line-height:1.25;}
:is(.imported-header,.imported-footer).awards-note,
:is(.imported-header,.imported-footer) .awards-note {margin:0;color:#aeb4c0;font-size:.9rem;line-height:1.55;}
:is(.imported-header,.imported-footer).awards-shelf,
:is(.imported-header,.imported-footer) .awards-shelf {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
:is(.imported-header,.imported-footer).award-photo,
:is(.imported-header,.imported-footer) .award-photo {margin:0;overflow:hidden;background:#0b0c10;border:1px solid rgba(255,255,255,.14);border-radius:16px;box-shadow:0 22px 50px rgba(0,0,0,.32);}
:is(.imported-header,.imported-footer).award-photo img,
:is(.imported-header,.imported-footer) .award-photo img {display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.3,1);}
:is(.imported-header,.imported-footer).award-photo:hover img,
:is(.imported-header,.imported-footer) .award-photo:hover img {transform:scale(1.035);}
:is(.imported-header,.imported-footer).award-photo figcaption,
:is(.imported-header,.imported-footer) .award-photo figcaption {padding:.8rem .9rem .9rem;color:#d4d7dd;font-size:.8rem;line-height:1.4;}
:is(.imported-header,.imported-footer).award-photo .award-year,
:is(.imported-header,.imported-footer) .award-photo .award-year {white-space:nowrap;color:#aeb4c0;}
:is(.imported-header,.imported-footer).award-photo .award-year:empty,
:is(.imported-header,.imported-footer) .award-photo .award-year:empty {display:none;}
:is(.imported-header,.imported-footer).awards-credit,
:is(.imported-header,.imported-footer) .awards-credit {grid-column:1/-1;margin:.4rem 0 0;text-align:center;color:#aeb4c0;font-size:.875rem;line-height:1.5;}
:is(.imported-header,.imported-footer).awards-credit a,
:is(.imported-header,.imported-footer) .awards-credit a {color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);transition:border-color .3s ease;}
:is(.imported-header,.imported-footer).awards-credit a:hover,
:is(.imported-header,.imported-footer) .awards-credit a:hover {border-bottom-color:currentColor;}
@media(max-width:900px){
:is(.imported-header,.imported-footer).awards-grid,
:is(.imported-header,.imported-footer) .awards-grid {grid-template-columns:1fr;}:is(.imported-header,.imported-footer).awards h3,
:is(.imported-header,.imported-footer) .awards h3 {max-width:20ch;}:is(.imported-header,.imported-footer).awards-copy,
:is(.imported-header,.imported-footer) .awards-copy {max-width:65ch;}:is(.imported-header,.imported-footer).awards-shelf,
:is(.imported-header,.imported-footer) .awards-shelf {max-width:650px;}:is(.imported-header,.imported-footer).awards-counts,
:is(.imported-header,.imported-footer) .awards-counts {max-width:none;}
}
/* mobile: crop the TOP of the shelf photos (plaque fan) so the Best in Show trophy at the
   bottom stays visible; both figures + captions should fit one phone viewport */
@media(max-width:767px){
:is(.imported-header,.imported-footer).award-photo img,
:is(.imported-header,.imported-footer) .award-photo img {aspect-ratio:4 / 5;object-position:50% 100%;}
}
@media(max-width:520px){
:is(.imported-header,.imported-footer).awards-counts,
:is(.imported-header,.imported-footer) .awards-counts {gap:.45rem;}:is(.imported-header,.imported-footer).award-count,
:is(.imported-header,.imported-footer) .award-count {padding:.85rem .35rem;}:is(.imported-header,.imported-footer).award-count span,
:is(.imported-header,.imported-footer) .award-count span {font-size:.68rem;}:is(.imported-header,.imported-footer).awards-shelf,
:is(.imported-header,.imported-footer) .awards-shelf {gap:.65rem;}:is(.imported-header,.imported-footer).award-photo,
:is(.imported-header,.imported-footer) .award-photo {border-radius:12px;}:is(.imported-header,.imported-footer).award-photo figcaption,
:is(.imported-header,.imported-footer) .award-photo figcaption {padding:.65rem .7rem .75rem;font-size:.72rem;}
}


#gkcc-banner,#gkcc-banner *,#gkcc-banner *::before,#gkcc-banner *::after{box-sizing:border-box;margin:0;padding:0}#gkcc-banner{--gkcc-bg:#18181b;--gkcc-border:rgba(255,255,255,.08);--gkcc-text:#e4e4e7;--gkcc-subtext:#a1a1aa;--gkcc-accept:#22c55e;--gkcc-accept-h:#16a34a;--gkcc-reject:#3f3f46;--gkcc-reject-h:#52525b;--gkcc-btn-text:#ffffff;--gkcc-shadow:0 -2px 40px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06);--gkcc-radius:14px;--gkcc-z:999999;position:fixed;z-index:var(--gkcc-z);background:var(--gkcc-bg);color:var(--gkcc-text);font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,sans-serif;font-size:14px;line-height:1.55;box-shadow:var(--gkcc-shadow);border:1px solid var(--gkcc-border)}#gkcc-banner.gkcc-hidden{display:none!important}#gkcc-banner.gkcc-pos-bottom-bar{bottom:0;left:0;right:0;border-radius:var(--gkcc-radius)var(--gkcc-radius)0 0;border-bottom:none}#gkcc-banner.gkcc-pos-top-bar{top:0;left:0;right:0;border-radius:0 0 var(--gkcc-radius)var(--gkcc-radius);border-top:none}#gkcc-banner.gkcc-pos-bottom-left{bottom:24px;left:24px;max-width:400px;border-radius:var(--gkcc-radius)}#gkcc-banner.gkcc-pos-bottom-right{bottom:24px;right:24px;max-width:400px;border-radius:var(--gkcc-radius)}#gkcc-banner.gkcc-pos-center{top:50%;left:50%;transform:translate(-50%,-50%);max-width:520px;width:calc(100vw - 48px);border-radius:var(--gkcc-radius)}#gkcc-banner .gkcc-content{display:grid;grid-template-columns:1fr auto;gap:16px 24px;align-items:center;padding:20px 24px}#gkcc-banner.gkcc-pos-bottom-left .gkcc-content,#gkcc-banner.gkcc-pos-bottom-right .gkcc-content,#gkcc-banner.gkcc-pos-center .gkcc-content{grid-template-columns:1fr}#gkcc-banner .gkcc-text{color:var(--gkcc-text);font-size:13.5px}#gkcc-banner .gkcc-text strong{display:block;font-size:15px;font-weight:600;color:#fff;margin-bottom:4px}#gkcc-banner .gkcc-text a{color:var(--gkcc-accept);text-decoration:underline;text-underline-offset:2px}#gkcc-banner .gkcc-text a:hover{opacity:.8}#gkcc-banner .gkcc-buttons{display:flex;flex-wrap:nowrap;gap:10px;align-items:center;flex-shrink:0}#gkcc-banner.gkcc-pos-bottom-left .gkcc-buttons,#gkcc-banner.gkcc-pos-bottom-right .gkcc-buttons,#gkcc-banner.gkcc-pos-center .gkcc-buttons{flex-direction:column;align-items:stretch}#gkcc-banner .gkcc-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:11px 22px!important;margin:0!important;border:none!important;border-radius:8px!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1.2!important;cursor:pointer!important;color:var(--gkcc-btn-text)!important;text-decoration:none!important;transition:background .15s,transform .1s,box-shadow .15s!important;white-space:nowrap!important;min-width:110px!important;min-height:40px!important;letter-spacing:.01em!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;width:auto!important;height:auto!important;background-clip:padding-box!important;vertical-align:middle!important}#gkcc-banner .gkcc-btn:hover{transform:translateY(-1px)!important;box-shadow:0 4px 12px rgba(0,0,0,.3)!important}#gkcc-banner .gkcc-btn:focus-visible{outline:3px solid rgba(255,255,255,.5)!important;outline-offset:2px!important}#gkcc-banner .gkcc-btn:active{transform:translateY(0)!important;box-shadow:none!important}#gkcc-banner .gkcc-btn--accept{background:var(--gkcc-accept)!important}#gkcc-banner .gkcc-btn--accept:hover{background:var(--gkcc-accept-h)!important}#gkcc-banner .gkcc-btn--reject{background:var(--gkcc-reject)!important}#gkcc-banner .gkcc-btn--reject:hover{background:var(--gkcc-reject-h)!important}#gkcc-banner .gkcc-btn--customize{background:0 0!important;border:1.5px solid rgba(255,255,255,.2)!important;color:var(--gkcc-subtext)!important;font-weight:500!important;min-width:auto!important;padding:10px 16px!important;font-size:13px!important}#gkcc-banner .gkcc-btn--customize:hover{border-color:rgba(255,255,255,.45)!important;color:#fff!important;transform:none!important;box-shadow:none!important}#gkcc-banner .gkcc-preferences{border-top:1px solid var(--gkcc-border);padding:20px 24px 24px;background:rgba(255,255,255,2%)}#gkcc-banner .gkcc-preferences.gkcc-hidden{display:none}#gkcc-banner .gkcc-prefs-title{font-size:13px;font-weight:600;color:var(--gkcc-subtext);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}#gkcc-banner .gkcc-prefs-grid{display:grid;gap:0}#gkcc-banner .gkcc-pref-item{display:grid;grid-template-columns:1fr 44px;grid-template-rows:auto auto;gap:2px 0;padding:12px 0;border-bottom:1px solid var(--gkcc-border);cursor:pointer}#gkcc-banner .gkcc-pref-item:last-child{border-bottom:none}#gkcc-banner .gkcc-pref-label{font-weight:600;font-size:14px;color:#fff;grid-column:1;grid-row:1}#gkcc-banner .gkcc-pref-desc{font-size:12px;color:var(--gkcc-subtext);grid-column:1;grid-row:2;padding-right:8px;margin-top:2px}#gkcc-banner .gkcc-pref-item input[type=checkbox]{grid-column:2;grid-row:1/3;align-self:center;justify-self:center;appearance:none!important;-webkit-appearance:none!important;width:36px!important;height:20px!important;border-radius:20px!important;background:#3f3f46!important;border:none!important;padding:0!important;margin:0!important;cursor:pointer!important;transition:background .2s!important;position:relative!important;flex-shrink:0!important;min-width:0!important;min-height:0!important;box-shadow:none!important}#gkcc-banner .gkcc-pref-item input[type=checkbox]::after{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:3px;left:3px;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.4)}#gkcc-banner .gkcc-pref-item input[type=checkbox]:checked{background:var(--gkcc-accept)!important}#gkcc-banner .gkcc-pref-item input[type=checkbox]:checked::after{left:19px}#gkcc-banner .gkcc-pref-item input[type=checkbox]:disabled{opacity:.4!important;cursor:not-allowed!important}#gkcc-banner .gkcc-pref-item input[type=checkbox]:focus-visible{outline:3px solid rgba(34,197,94,.5)!important;outline-offset:2px!important}#gkcc-banner .gkcc-prefs-footer{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}@media(max-width:640px){#gkcc-banner .gkcc-content{grid-template-columns:1fr;padding:18px 18px 16px}#gkcc-banner .gkcc-buttons{flex-direction:column;align-items:stretch}#gkcc-banner .gkcc-btn{text-align:center!important;min-width:0!important;width:100%!important}#gkcc-banner.gkcc-pos-bottom-left,#gkcc-banner.gkcc-pos-bottom-right{left:0;right:0;bottom:0;max-width:100%;border-radius:var(--gkcc-radius)var(--gkcc-radius)0 0;border-bottom:none}#gkcc-banner .gkcc-preferences{padding:16px 18px 20px}}