/* Restyle of the hand-built funnel, opt-in, playbook, infographic, stats and tool pages.
   Loads after /brand/mhi.css and uses its tokens. Visual rules only.
   Spec: companies/mhi-media/projects/mhigrowthengine-rebrand/brand-spec.md
   Markup is produced by tools/restyle-custom.py, which adds three body classes per page:
     mhi-custom            every page in this set
     fam-*                 page family that shares one layout (optin, access, gvsl, fads, fopt, ig)
     pg-*                  the single page
   Inline style attributes that set old-theme colours or fonts are removed by the script and
   those elements are styled here. A few layout-only inline styles remain (grid margins, the Drive
   iframe wrapper, score-bar widths); where they clash with the brand they are overridden with
   !important. */

/* ==========================================================================
   0. Reset (replaces each page's old "*{margin:0;padding:0;box-sizing:border-box}")
   ========================================================================== */
:where(body.mhi-custom) *,
:where(body.mhi-custom) *::before,
:where(body.mhi-custom) *::after { margin: 0; padding: 0; box-sizing: border-box; }
body.mhi-custom { margin: 0; min-height: 100vh; }
body.mhi-custom ::selection { background-color: var(--white); color: var(--blue); }
body.mhi-custom button,
body.mhi-custom input,
body.mhi-custom select,
body.mhi-custom textarea { font-family: var(--font-sans); color: inherit; }
body.mhi-custom img { max-width: 100%; }
body.mhi-custom strong, body.mhi-custom b { font-weight: 500; }
body.mhi-custom em { font-style: normal; }
body.mhi-custom code { font-family: var(--font-mono); }
body.mhi-custom h1, body.mhi-custom h2, body.mhi-custom .headline { text-wrap: balance; }

/* Old scroll-progress bars and fade-up reveals are not part of the brand */
body.mhi-custom #bar,
body.mhi-custom #progress-bar { display: none !important; }
body.fam-gvsl .r { opacity: 1 !important; transform: none !important; transition: none !important; }

/* ==========================================================================
   1. Nav / header bar: wordmark + mono brand text, mono links, clock.
      Same treatment as the blog: 2.5rem padding, 2px white bottom rule,
      one wrapping row, bottom-aligned, space-between.
   ========================================================================== */
body.fam-optin .nav,
body.fam-access .nav,
body.pg-aioffer .nav,
body.fam-gvsl .top,
body.fam-fads nav,
body.pg-founder-playbook nav,
body.fam-ig nav {
  position: relative;
  z-index: 2;
  width: 100%;
  background-color: var(--blue);
  border-bottom: 2px solid var(--white);
  padding: 2.5rem;
  text-align: left;
}
body.fam-optin .nav,
body.fam-access .nav,
body.fam-gvsl .top,
body.pg-founder-playbook nav,
body.fam-ig nav,
body.pg-aioffer .nav-inner,
body.fam-fads .nav-inner,
body.pg-fplaybook .site-header {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1rem;
  width: 100%;
  max-width: none;
  margin: 0;
}
body.pg-aioffer .nav-inner { padding: 0; }
body.fam-fads nav .container-wide { max-width: none; padding: 0; }

/* Brand element: wordmark first, then the existing brand text in Whyte Mono */
body.fam-optin .nav-logo,
body.fam-access .nav-logo,
body.pg-aioffer .nav-logo,
body.fam-gvsl .top-brand,
body.fam-fads .logo,
body.pg-fplaybook .site-logo,
body.pg-founder-playbook .logo,
body.fam-ig .logo {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
  color: var(--white);
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
body.mhi-custom a.nav-logo:hover,
body.mhi-custom a.logo:hover { opacity: .8; }
body.mhi-custom .mhi-wordmark { display: block; flex: none; width: 20.625rem; max-width: 100%; height: auto; color: var(--white); }

/* Nav CTA becomes a mono nav link (mhimedia.com has no button in the nav) */
body.pg-aioffer .nav-cta,
body.fam-fads .nav-cta {
  display: inline-flex;
  align-items: center;
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: var(--white);
  cursor: pointer;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: all .3s;
}
body.pg-aioffer .nav-cta:hover,
body.fam-fads .nav-cta:hover { background: none; opacity: .6; }

/* Founder Ads Playbook: the header sits inside the 50rem reading column in the markup,
   so it breaks out to the full viewport width like every other nav bar */
body.pg-fplaybook { overflow-x: clip; }
body.pg-fplaybook .site-header {
  position: relative;
  z-index: 2;
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: 0;
  padding: 2.5rem;
  background-color: var(--blue);
  border-bottom: 2px solid var(--white);
  text-align: left;
}

/* ==========================================================================
   2. Shared building blocks (selector lists, one rule per brand component)
   ========================================================================== */

/* 2.1 Button: white notched block, blue Whyte Mono text */
body.fam-optin .btn-submit,
body.fam-access .btn-primary,
body.fam-access .btn-secondary,
body.pg-aioffer .cta-btn,
body.fam-gvsl .btn,
body.fam-fads .btn,
body.fam-fopt .btn,
body.pg-fplaybook .email-btn,
body.pg-fplaybook .cta-btn,
body.pg-founder-playbook .btn,
body.fam-ig .btn,
body.fam-ig .copy-btn,
body.pg-tool-script .generate-btn,
body.pg-tool-script .copy-script,
body.pg-strat #submit-btn,
body.pg-strat .doc-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  cursor: pointer;
  white-space: nowrap;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-button);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 1.1em 2em;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  text-decoration: none;
  transform: none;
  transition: opacity .2s;
}
body.fam-optin .btn-submit:hover,
body.fam-access .btn-primary:hover,
body.fam-access .btn-secondary:hover,
body.pg-aioffer .cta-btn:hover,
body.fam-gvsl .btn:hover,
body.fam-fads .btn:hover,
body.fam-fopt .btn:hover,
body.pg-fplaybook .email-btn:hover,
body.pg-fplaybook .cta-btn:hover,
body.pg-founder-playbook .btn:hover,
body.fam-ig .btn:hover,
body.fam-ig .copy-btn:hover,
body.pg-tool-script .generate-btn:hover,
body.pg-tool-script .copy-script:hover,
body.pg-strat #submit-btn:hover,
body.pg-strat .doc-link:hover { background: var(--white); color: var(--blue); opacity: .85; transform: none; box-shadow: none; }
body.mhi-custom button:disabled { opacity: .6 !important; cursor: not-allowed; }
body.fam-access .btn-primary svg,
body.fam-fads .btn svg { width: 1.1em; height: 1.1em; flex: none; }

/* 2.2 Tag pill: translucent notched fill, Helvetica 500 */
body.fam-optin .label,
body.fam-optin .proof-item,
body.pg-aioffer .hero-label,
body.fam-gvsl .pill,
body.fam-gvsl .tick,
body.fam-fads .hero-label,
body.fam-fopt .label,
body.pg-fplaybook .hero-label,
body.pg-founder-playbook .eyebrow,
body.fam-ig .eyebrow,
body.pg-strat .eyebrow,
body.pg-strat .name-tag {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  background-color: var(--white-10);
  color: var(--white);
  clip-path: var(--notch-tag);
  border: 0;
  border-radius: 0;
  padding: 8px .875rem;
  font-family: var(--font-sans);
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: none;
}

/* 2.3 Mono label (section eyebrows, form labels, row labels) */
body.fam-optin .form-label,
body.fam-optin .trap-label,
body.fam-optin .quote-label,
body.fam-optin .locked-head,
body.fam-optin .video-overlay p,
body.fam-access .success-row span,
body.fam-access .doc-label,
body.fam-access .slabel,
body.pg-aioffer .section-label,
body.pg-aioffer .g-badge,
body.pg-aioffer .layer-tag,
body.pg-aioffer .week-tag,
body.fam-gvsl .eyebrow,
body.fam-gvsl .label,
body.fam-gvsl .rbrand,
body.fam-gvsl .gn,
body.fam-gvsl .fcta .small,
body.fam-fads .section-label,
body.pg-fplaybook .toc-label,
body.pg-fplaybook .chapter-label,
body.pg-fplaybook .week-title,
body.pg-founder-playbook .form-label,
body.pg-founder-playbook .proof-label,
body.fam-ig .embed-label,
body.pg-strat .form-label {
  display: block;
  color: var(--white);
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* 2.4 Form inputs: white-10 fill, 2px white border, white text */
body.fam-optin input,
body.fam-fopt .input,
body.pg-fplaybook .email-input,
body.pg-founder-playbook input[type="email"],
body.pg-tool-script .field input,
body.pg-tool-script .field select,
body.pg-tool-script .field textarea,
body.pg-tool-budget .input-group input:not([type="range"]),
body.pg-strat input[type="email"] {
  width: 100%;
  min-width: 0;
  background-color: var(--white-10);
  border: 2px solid var(--white);
  border-radius: 0;
  color: var(--white);
  padding: .9rem 1rem;
  font-family: var(--font-sans);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  outline: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color .2s;
}
body.fam-optin input::placeholder,
body.fam-fopt .input::placeholder,
body.pg-fplaybook .email-input::placeholder,
body.pg-founder-playbook input[type="email"]::placeholder,
body.pg-tool-script .field input::placeholder,
body.pg-tool-budget .input-group input::placeholder,
body.pg-strat input[type="email"]::placeholder { color: var(--white); opacity: .6; }
body.fam-optin input:focus,
body.fam-fopt .input:focus,
body.pg-fplaybook .email-input:focus,
body.pg-founder-playbook input[type="email"]:focus,
body.pg-tool-script .field input:focus,
body.pg-tool-script .field select:focus,
body.pg-tool-budget .input-group input:focus,
body.pg-strat input[type="email"]:focus {
  border-color: var(--white);
  background-color: var(--white-10);
  outline: .125rem solid var(--focus);
  outline-offset: .125rem;
}
body.fam-optin input.invalid { border-style: dashed; }

/* 2.5 Error line: solid white notched strip with blue text */
body.fam-optin .form-error,
body.pg-founder-playbook .form-error,
body.pg-fplaybook .email-error {
  background-color: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tag);
  padding: 8px .875rem;
  margin-top: .75rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.2;
}

/* 2.6 Small secondary copy: white at opacity .6 */
body.fam-optin .form-disclaimer,
body.fam-access .video-caption,
body.fam-access .doc-note,
body.fam-access .dl-note,
body.fam-access .file-size,
body.pg-aioffer .cta-note,
body.pg-aioffer .final-note,
body.fam-gvsl .btn-note,
body.fam-fads .btn-sub,
body.fam-fads .video-caption,
body.fam-fopt .privacy,
body.pg-fplaybook .privacy-text,
body.pg-fplaybook .cta-sub,
body.pg-founder-playbook .disclaimer,
body.pg-strat .fine-print {
  color: var(--white);
  opacity: .6;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
}

/* 2.7 Footer: 2px top rule, Whyte Mono legal line, links fade on hover */
body.mhi-custom footer {
  display: block;
  border-top: 2px solid var(--white);
  background: none;
  padding: 5rem 2.5rem 2.5rem;
  color: var(--white);
  text-align: center;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: uppercase;
}
body.mhi-custom footer p { color: var(--white); font-size: .75rem; letter-spacing: 0; margin: 0; }
body.mhi-custom footer a { color: var(--white) !important; text-decoration: none; transition: all .2s; }
body.mhi-custom footer a:hover { opacity: .5; }
/* Footer top: full-width wordmark, then a 2px white line, then the existing legal line */
body.mhi-custom footer .mhi-footer-logo { margin: 0 0 2.5rem; }
body.mhi-custom footer .mhi-footer-logo .mhi-wordmark { width: 100%; max-width: none; }
body.mhi-custom footer .mhi-footer-line { margin: 0 0 2rem; }

/* ==========================================================================
   3. fam-optin: 6-reps-before-ai, customer-research-skill, vsl (single opt-in card)
   ========================================================================== */
body.fam-optin { display: flex; flex-direction: column; }
body.fam-optin .main { flex: 1; display: flex; align-items: center; justify-content: center; padding: 4rem 2.5rem; }
body.fam-optin .card { width: 100%; max-width: 36rem; }
body.fam-optin .label { margin-bottom: 1.5rem; }

body.fam-optin h1 {
  font-size: clamp(2.25rem, 3.4vw, 3rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.5px;
  text-transform: none;
  font-family: var(--font-sans);
  margin-bottom: 1.25rem;
}
body.fam-optin h1 span { color: inherit; }
body.fam-optin .subhead { color: var(--white); font-size: 1.125rem; line-height: 1.4; margin-bottom: 1.75rem; }
body.fam-optin .subhead strong { color: var(--white); font-weight: 500; }

body.fam-optin .proof-bar { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2rem; }
body.fam-optin .proof-item::before { display: none; }

body.fam-optin .divider { border: 0; border-top: 2px solid var(--white); margin: 0 0 1.75rem; }
body.fam-optin .form-label { margin-bottom: .875rem; }
body.fam-optin .form-row { display: flex; gap: .5rem; margin-bottom: .5rem; }
body.fam-optin input { flex: 1; }
body.fam-optin .btn-submit { width: 100%; padding: 1.35em 2em; margin-top: .25rem; }
body.fam-optin .form-error { display: none; }
body.fam-optin .form-error.show { display: block; }
body.fam-optin .form-disclaimer { margin-top: .875rem; }

body.fam-optin .bullets { display: flex; flex-direction: column; gap: .875rem; margin-top: 2rem; padding-top: 1.75rem; border-top: 2px solid var(--white); }
body.fam-optin .bullet { display: flex; gap: .75rem; align-items: flex-start; color: var(--white); font-size: 1rem; line-height: 1.35; }
body.fam-optin .bullet strong { color: var(--white); font-weight: 500; }
body.fam-optin .bullet em { font-style: normal; text-decoration: underline; text-underline-offset: .15em; }
body.fam-optin .bullet-check { color: var(--white); font-weight: 500; flex-shrink: 0; line-height: 1.35; }

/* Callout panels: translucent notched card */
body.fam-optin .trap,
body.fam-optin .quote {
  margin-top: 2rem;
  padding: 1.75rem 1.75rem;
  background-color: var(--white-10);
  clip-path: var(--notch-card);
  border: 0;
  border-radius: 0;
}
body.fam-optin .trap-label,
body.fam-optin .quote-label { margin-bottom: .75rem; }
body.fam-optin .trap p:not(.trap-label) { color: var(--white); font-size: 1rem; line-height: 1.4; }
body.fam-optin .qline { color: var(--white); font-size: 1rem; line-height: 1.5; }
body.fam-optin .qline em { color: var(--white); font-style: normal; }
body.fam-optin .qline.answer { font-weight: 500; }
body.fam-optin .quote-after { margin-top: .875rem; color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; line-height: 1.4; }

/* 6-reps locked preview: flat translucent panel with crisp placeholder lines */
body.pg-6reps .video-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 1.75rem;
  overflow: hidden;
  background: var(--white-10);
  clip-path: var(--notch-card);
  border: 0;
  border-radius: 0;
}
body.pg-6reps .video-preview::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(var(--white-10) 0 0) 12% 26% / 58% 9px no-repeat,
    linear-gradient(var(--white-10) 0 0) 12% 41% / 72% 9px no-repeat,
    linear-gradient(var(--white-10) 0 0) 12% 56% / 44% 9px no-repeat,
    linear-gradient(var(--white-10) 0 0) 12% 71% / 64% 9px no-repeat;
  filter: none;
}
body.fam-optin .video-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .875rem;
  background: none;
  backdrop-filter: none;
}
body.fam-optin .lock-badge,
body.fam-optin .lock-icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tile);
  border: 0;
  border-radius: 0;
  font-size: 1.25rem;
}
body.fam-optin .lock-badge svg { width: 1.5rem; height: 1.5rem; color: var(--blue); }

/* customer-research-skill locked manifest */
body.pg-crs .locked {
  position: relative;
  width: 100%;
  margin-bottom: 1.75rem;
  padding: 1.75rem 1.75rem;
  overflow: hidden;
  background: var(--white-10);
  clip-path: var(--notch-card);
  border: 0;
  border-radius: 0;
}
body.pg-crs .locked-head { display: flex; align-items: center; gap: .625rem; margin-bottom: 1.125rem; opacity: .6; text-transform: none; letter-spacing: 0; }
body.pg-crs .locked-dot { width: .5rem; height: .5rem; border-radius: 0; background: var(--white); flex-shrink: 0; }
body.pg-crs .manifest { display: flex; flex-direction: column; gap: .5rem; filter: blur(2.4px); opacity: .75; }
body.pg-crs .mrow { display: flex; justify-content: space-between; gap: 1rem; color: var(--white); font-size: .8125rem; font-weight: 500; }
body.pg-crs .mrow span:last-child { opacity: .6; color: var(--white); }
body.pg-crs .locked-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  background: rgba(0, 87, 255, .72);
}
body.pg-crs .lock-badge svg { width: 1.375rem; height: 1.375rem; }
body.pg-crs .locked-overlay p { font-family: var(--font-mono); font-size: .75rem; font-weight: 500; text-transform: uppercase; color: var(--white); }

/* vsl blurred thumbnail preview */
body.pg-vsl .video-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 2rem;
  overflow: hidden;
  cursor: pointer;
  background: var(--white-10);
  border: 2px solid var(--white);
  border-radius: 0;
}
body.pg-vsl .video-preview img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: .5; filter: blur(2px) grayscale(1); }
body.pg-vsl .video-overlay { background: rgba(0, 87, 255, .45); }
body.pg-vsl .video-overlay p { font-size: .75rem; }
body.pg-vsl .form-row { flex-direction: column; margin-bottom: .75rem; }
body.pg-vsl .form-disclaimer { text-align: center; }
body.pg-vsl .bullets { border-top: 0; padding-top: 0; margin-top: 1.75rem; }

/* ==========================================================================
   4. fam-access: 6-reps-before-ai/access, customer-research-skill/success
   ========================================================================== */
body.fam-access { display: flex; flex-direction: column; }
body.fam-access .main { flex: 1; padding: 4rem 2.5rem 5rem; }
body.fam-access .container { max-width: 54rem; margin: 0 auto; }

body.fam-access .success-row { display: flex; align-items: center; gap: .875rem; margin-bottom: 1.5rem; }
body.fam-access .success-icon,
body.pg-crs-success .file-icon {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tag);
  border: 0;
  border-radius: 0;
}
body.fam-access .success-icon svg { width: 1.25rem; height: 1.25rem; color: var(--blue); }
body.pg-crs-success .file-icon svg { width: 1.2rem; height: 1.2rem; color: var(--blue); }

body.fam-access h1 { font-size: clamp(2.25rem, 4vw, 3.5rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1rem; }
body.fam-access h1 em { font-style: normal; color: inherit; }
body.fam-access h2 { font-size: 2rem; font-weight: 400; line-height: 1.05; letter-spacing: 0; margin-bottom: .875rem; }
body.fam-access .lede { color: var(--white); font-size: 1.125rem; line-height: 1.4; max-width: 40rem; margin-bottom: 2.25rem; }

body.pg-6reps-access #video-section { display: none; margin-bottom: 2.25rem; }
body.fam-access .video-wrapper { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: var(--white-10); border: 2px solid var(--white); border-radius: 0; }
body.fam-access .video-wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
body.fam-access .video-caption { margin-top: .75rem; }

body.pg-6reps-access .cta-block,
body.pg-crs-success .download-block {
  margin-bottom: 2.25rem;
  padding: 2rem 2rem;
  background: var(--white-10);
  clip-path: var(--notch-card);
  border: 0;
  border-radius: 0;
}
body.pg-6reps-access .cta-block h2 { font-size: 1.5rem; margin-bottom: .5rem; }
body.pg-6reps-access .cta-block p:not(.doc-note) { color: var(--white); font-size: 1rem; line-height: 1.4; margin-bottom: 1.25rem; }
body.fam-access .doc-note,
body.fam-access .dl-note { margin-top: .875rem; }

body.fam-access .doc-label { margin-bottom: .75rem; }
body.pg-6reps-access .doc-frame { display: block; width: 100%; height: 760px; background: var(--white); border: 2px solid var(--white); border-radius: 0; }

body.fam-access .next-step { margin-top: 3rem; padding-top: 2.5rem; border-top: 2px solid var(--white); }
body.fam-access .next-step p:not(.slabel) { color: var(--white); font-size: 1.0625rem; line-height: 1.4; max-width: 38rem; margin-bottom: 1.5rem; }

body.pg-crs-success .file-row { display: flex; align-items: center; gap: .875rem; flex-wrap: wrap; margin-bottom: 1.5rem; padding-bottom: 1.5rem; border-bottom: 2px solid var(--white); }
body.pg-crs-success .file-meta { min-width: 0; }
body.pg-crs-success .file-name { color: var(--white); font-size: 1rem; font-weight: 500; line-height: 1.3; word-break: break-all; }
body.pg-crs-success .file-size { margin-top: .25rem; }
body.pg-crs-success .btn-primary { padding: 1.35em 2.25em; }

body.fam-access .slabel { margin-bottom: .75rem; }
body.pg-crs-success .steps { list-style: none; counter-reset: step; margin-top: 1.5rem; border-top: 2px solid var(--white); }
body.pg-crs-success .step { display: grid; grid-template-columns: 2.5rem 1fr; gap: 1rem; align-items: start; padding: 1.125rem 0; border-bottom: 2px solid var(--white); }
body.pg-crs-success .step::before {
  counter-increment: step;
  content: counter(step, decimal-leading-zero);
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.6;
  color: var(--white);
}
body.pg-crs-success .step:last-child { border-bottom: 0; }
body.pg-crs-success .step-body { min-width: 0; }
body.pg-crs-success .step-title { color: var(--white); font-size: 1.0625rem; font-weight: 500; line-height: 1.3; }
body.pg-crs-success .step-detail { margin-top: .375rem; color: rgb(255 255 255 / .6); font-size: .9375rem; font-weight: 500; line-height: 1.45; }
body.pg-crs-success .step-detail code {
  color: var(--white);
  background: var(--white-10);
  border: 0;
  border-radius: 0;
  padding: .1em .4em;
  font-size: .8125rem;
  white-space: nowrap;
}
body.pg-crs-success .inside { margin-top: 3rem; padding-top: 2.5rem; border-top: 2px solid var(--white); }
body.pg-crs-success .manifest { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: .5rem; margin-top: 1.5rem; }
body.pg-crs-success .mitem { padding: 1.125rem 1.25rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.pg-crs-success .mname { color: var(--white); font-size: .9375rem; font-weight: 500; line-height: 1.3; overflow-wrap: anywhere; }
body.pg-crs-success .mdesc { margin-top: .375rem; color: var(--white); opacity: .6; font-size: .8125rem; font-weight: 500; line-height: 1.35; }

/* ==========================================================================
   5. aioffer (long sales page)
   ========================================================================== */
body.pg-aioffer { line-height: 1.45; }
body.pg-aioffer .container { max-width: 52rem; margin: 0 auto; padding: 0 2.5rem; }
body.pg-aioffer .container-wide { max-width: 72rem; margin: 0 auto; padding: 0 2.5rem; }

body.pg-aioffer .urgency-banner,
body.fam-fads .urgency-banner,
body.fam-fopt .urgency-banner {
  background: var(--white);
  color: var(--blue);
  padding: .875rem 2.5rem;
  text-align: center;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: uppercase;
}
body.fam-fads .urgency-text,
body.fam-fopt .urgency-text { margin: 0; color: var(--blue); font-size: .75rem; font-weight: 500; }

body.pg-aioffer .proof-bar {
  background: none;
  border-bottom: 2px solid var(--white);
  padding: 1rem 2.5rem;
  text-align: center;
  color: rgb(255 255 255 / .6);
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: 0;
}
body.pg-aioffer .proof-bar strong { color: var(--white); }

body.pg-aioffer h2 { font-size: clamp(2rem, 3.2vw, 3rem); font-weight: 400; line-height: 1.05; letter-spacing: 0; }
body.pg-aioffer .section-label { margin-bottom: 1rem; }
body.pg-aioffer .sub { color: var(--white); opacity: .6; font-size: 1rem; font-weight: 500; line-height: 1.35; }

body.pg-aioffer .hero { padding: 6rem 0 5rem; text-align: center; background: none; }
body.pg-aioffer .hero-label { margin-bottom: 1.75rem; }
body.pg-aioffer .hero h1 { font-size: clamp(2.5rem, 4vw, 4rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1.5rem; }
body.pg-aioffer .hero-sub { color: var(--white); font-size: 1.25rem; line-height: 1.35; max-width: 36rem; margin: 0 auto 2.5rem; }
body.pg-aioffer .cta-note { margin-top: 1rem; }

body.pg-aioffer hr.div { border: 0; border-top: 2px solid var(--white); margin: 0; }

body.pg-aioffer .kamal-section,
body.pg-aioffer .yt-section,
body.pg-aioffer .testimonials-section,
body.pg-aioffer .problem-section,
body.pg-aioffer .system-section,
body.pg-aioffer .deliverables-section,
body.pg-aioffer .timeline-section,
body.pg-aioffer .guarantee-section,
body.pg-aioffer .faq-section { background: none; padding: 5rem 0; }
body.pg-aioffer .kamal-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
body.pg-aioffer .kamal-photo { position: relative; }
body.pg-aioffer .kamal-photo img { display: block; width: 100%; border-radius: 0; filter: grayscale(1); clip-path: polygon(0 0, calc(50% - .9rem) 0, 50% 1.1rem, calc(50% + .9rem) 0, 100% 0, 100% 100%, calc(50% + .9rem) 100%, 50% calc(100% - 1.1rem), calc(50% - .9rem) 100%, 0 100%); }
body.pg-aioffer .kamal-photo-label {
  position: absolute;
  bottom: 1.25rem;
  left: 1.25rem;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tag);
  border: 0;
  border-radius: 0;
  padding: 6px 1rem 5px;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: 0;
}
body.pg-aioffer .kamal-bio h2 { font-size: clamp(2rem, 2.8vw, 2.75rem); margin-bottom: 1.5rem; }
body.pg-aioffer .kamal-bio p { color: var(--white); font-size: 1rem; line-height: 1.45; margin-bottom: 1rem; }
body.pg-aioffer .kamal-bio .stat-row { display: flex; gap: 2.5rem; margin-top: 2rem; padding-top: 1.75rem; border-top: 2px solid var(--white); }
body.pg-aioffer .kamal-bio .stat-num { color: var(--white); font-size: 2.5rem; font-weight: 400; line-height: 1; letter-spacing: 0; }
body.pg-aioffer .kamal-bio .stat-lbl { margin-top: .5rem; color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; }

body.pg-aioffer .yt-section h2 { margin-bottom: .75rem; }
body.pg-aioffer .yt-section .sub { margin-bottom: 2.5rem; }
body.pg-aioffer .yt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); gap: .5rem; }
body.pg-aioffer .yt-card { background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; overflow: hidden; transform: none; transition: opacity .2s; }
body.pg-aioffer .yt-card:hover { transform: none; opacity: .75; }
body.pg-aioffer .yt-thumb { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; filter: grayscale(1); }
body.pg-aioffer .yt-info { padding: 1rem 1.25rem 1.25rem; }
body.pg-aioffer .yt-title { color: var(--white); font-size: 1rem; font-weight: 500; line-height: 1.25; }

/* Stats: the page's one white band */
body.pg-aioffer .stats-section { background: var(--white); color: var(--blue); padding: 5rem 0; }
body.pg-aioffer .stats-section .section-label,
body.pg-aioffer .stats-section h2,
body.pg-aioffer .stats-section .sub { color: var(--blue); }
body.pg-aioffer .stats-section h2 { margin-bottom: .75rem; }
body.pg-aioffer .stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; background: none; border: 0; border-radius: 0; }
body.pg-aioffer .stat-box { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: .75rem; background: var(--blue); color: var(--white); clip-path: var(--notch-card); padding: 2.5rem 1.25rem; text-align: center; }
body.pg-aioffer .stat-big { color: var(--white); font-size: 2.25rem; font-weight: 400; line-height: 1; letter-spacing: 0; margin: 0; }
body.pg-aioffer .stat-caption { color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; line-height: 1.3; }

/* Testimonial quote cards (inline-styled in the HTML) */
body.pg-aioffer .testimonials-section h2 { margin-bottom: .75rem; }
body.pg-aioffer .testimonials-section .sub { margin-bottom: 2.5rem; }
body.pg-aioffer .quote-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr)); gap: .5rem; margin-bottom: 3rem; }
body.pg-aioffer .quote-card { background: var(--white-10); border: 0; border-radius: 0; clip-path: var(--notch-card); padding: 2rem 1.75rem; }
body.pg-aioffer .quote-mark { color: var(--white); font-family: var(--font-sans); font-size: 3rem; line-height: .8; margin-bottom: .75rem; }
body.pg-aioffer .quote-text { color: var(--white); font-size: 1.0625rem; line-height: 1.4; margin-bottom: 1.5rem; }
body.pg-aioffer .quote-name { color: var(--white); font-size: .875rem; font-weight: 500; }
body.pg-aioffer .quote-meta { color: var(--white); opacity: .6; font-size: .8125rem; font-weight: 500; margin-top: .25rem; }
body.pg-aioffer .testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
body.pg-aioffer .testi-card { background: var(--white-10); border: 0; border-radius: 0; overflow: hidden; }
body.pg-aioffer .testi-video { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; }
body.pg-aioffer .testi-info { padding: 1rem 1.25rem 1.25rem; }
body.pg-aioffer .testi-name { color: var(--white); font-size: 1rem; font-weight: 500; }
body.pg-aioffer .testi-result { margin-top: .25rem; color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; }

body.pg-aioffer .problem-section h2 { margin-bottom: 1.75rem; }
body.pg-aioffer .problem-section p { color: var(--white); font-size: 1.125rem; line-height: 1.45; margin-bottom: 1.125rem; }
body.pg-aioffer .problem-section p:last-child { margin-bottom: 0; }

body.pg-aioffer .system-section h2 { margin-bottom: .75rem; }
body.pg-aioffer .layers { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
body.pg-aioffer .layer,
body.pg-aioffer .deliverable,
body.pg-aioffer .week {
  background: var(--white-10);
  clip-path: var(--notch-card);
  border: 0;
  border-radius: 0;
  padding: 2rem 1.75rem;
}
body.pg-aioffer .layer-tag { opacity: .6; margin-bottom: .75rem; }
body.pg-aioffer .layer-name { color: var(--white); font-size: 1.5rem; font-weight: 400; line-height: 1.1; margin-bottom: .75rem; }
body.pg-aioffer .layer-desc { color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.4; }

body.pg-aioffer .mid-cta { background: none; border-bottom: 2px solid var(--white); padding: 4rem 2.5rem; text-align: center; }
body.pg-aioffer .mid-cta-title { font-size: 2rem; font-weight: 400; letter-spacing: 0; line-height: 1.1; margin-bottom: 1.5rem; }

body.pg-aioffer .deliverables-section h2,
body.pg-aioffer .timeline-section h2,
body.pg-aioffer .faq-section h2 { margin-bottom: 2.5rem; }
body.pg-aioffer .deliverables-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; }
body.pg-aioffer .deliverable { display: flex; gap: 1.25rem; align-items: flex-start; }
body.pg-aioffer .d-num {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tag);
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
}
body.pg-aioffer .d-name { color: var(--white); font-size: 1.25rem; font-weight: 400; line-height: 1.15; margin-bottom: .5rem; }
body.pg-aioffer .d-desc { color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.4; }

body.pg-aioffer .weeks { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
body.pg-aioffer .week-tag { margin-bottom: .75rem; }
body.pg-aioffer .week-title { color: var(--white); font-size: 1.5rem; font-weight: 400; line-height: 1.1; margin-bottom: 1.25rem; }
body.pg-aioffer .week ul { list-style: none; }
body.pg-aioffer .week li { display: flex; gap: .625rem; align-items: flex-start; padding: .4rem 0; border: 0; color: var(--white); font-size: .9375rem; font-weight: 500; line-height: 1.35; }
body.pg-aioffer .week li::before { content: "✓"; color: var(--white); font-size: .875rem; margin-top: 0; flex-shrink: 0; }

body.pg-aioffer .guarantee-box { max-width: 45rem; margin: 0 auto; padding: 3.5rem 3rem; text-align: center; background: var(--blue); border: 2px dashed var(--white); border-radius: 0; }
body.pg-aioffer .g-badge { margin-bottom: 1.25rem; }
body.pg-aioffer .guarantee-box h2 { font-size: clamp(1.75rem, 2.6vw, 2.5rem); margin-bottom: 1.25rem; }
body.pg-aioffer .guarantee-box p { color: var(--white); font-size: 1.0625rem; line-height: 1.45; }

body.pg-aioffer .faq-item { border-top: 2px solid var(--white); padding: 1.5rem 0; }
body.pg-aioffer .faq-item:last-child { border-bottom: 2px solid var(--white); }
body.pg-aioffer .faq-q { color: var(--white); font-size: 1.125rem; font-weight: 500; line-height: 1.25; margin-bottom: .75rem; }
body.pg-aioffer .faq-a { color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.45; }

body.pg-aioffer .final-cta { background: none; padding: 6rem 0; text-align: center; border-top: 2px solid var(--white); }
body.pg-aioffer .final-avatar { display: block; width: 5rem; height: 5rem; margin: 0 auto 1.75rem; object-fit: cover; border-radius: 0; border: 0; clip-path: var(--notch-tile); filter: grayscale(1); }
body.pg-aioffer .final-cta h2 { font-size: clamp(2.25rem, 3.6vw, 3.5rem); margin-bottom: 1.25rem; }
body.pg-aioffer .final-cta p:not(.final-note) { color: var(--white); font-size: 1.125rem; line-height: 1.4; max-width: 33rem; margin: 0 auto 2.25rem; }
body.pg-aioffer .final-note { margin-top: 1rem; }

body.pg-aioffer footer .footer-brand { color: var(--white); font-weight: 500; }
body.pg-aioffer footer .footer-tagline {
  margin-top: .75rem;
  color: var(--white);
  opacity: .6;
  font-family: var(--font-sans);
  font-size: .875rem;
  font-style: normal;
  font-weight: 500;
  text-transform: none;
}

/* ==========================================================================
   6. fam-gvsl: aioffer-vsl, founder-ads-vsl (video sales letter)
   ========================================================================== */
body.fam-gvsl { line-height: 1.45; }
body.fam-gvsl .hero { max-width: 60rem; margin: 0 auto; padding: 4rem 2.5rem 2.5rem; text-align: center; }
body.fam-gvsl .hero .eyebrow { margin-bottom: 1.5rem; }
body.fam-gvsl .hero h1 { color: var(--white); font-family: var(--font-sans); font-size: clamp(2.25rem, 3.6vw, 3.5rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1.25rem; }
body.fam-gvsl .hero h1 em { color: inherit; font-style: normal; }
body.fam-gvsl .hero .sub { color: var(--white); font-size: 1.125rem; line-height: 1.4; max-width: 36rem; margin: 0 auto .75rem; }
body.fam-gvsl .hero .pill { margin-top: .5rem; }

body.fam-gvsl .vid-section { max-width: 60rem; margin: 0 auto; padding: 0 2.5rem; }
body.fam-gvsl .vid-outer { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: var(--white-10); border: 2px solid var(--white); }
body.fam-gvsl .vid-outer iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

body.fam-gvsl .vcta { max-width: 50rem; margin: 0 auto; padding: 2.5rem 2.5rem 1rem; text-align: center; }
body.fam-gvsl .btn { padding: 1.35em 2.5em; }
body.fam-gvsl .btn-note { margin-top: .875rem; }

body.fam-gvsl .ticker { max-width: 55rem; margin: 2rem auto 0; padding: 1.25rem 0 0; border-top: 2px solid var(--white); border-bottom: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }
body.fam-gvsl .tick b { color: var(--white); font-weight: 500; }

body.fam-gvsl .hr { max-width: 55rem; margin: 3.5rem auto 0; border-top: 2px solid var(--white); }

body.fam-gvsl .sec { max-width: 45rem; margin: 0 auto; padding: 3.5rem 2.5rem; }
body.fam-gvsl .sec .label { margin-bottom: 1rem; }
body.fam-gvsl .sec h2 { color: var(--white); font-family: var(--font-sans); font-size: clamp(1.875rem, 2.8vw, 2.5rem); font-weight: 400; line-height: 1.08; letter-spacing: 0; margin-bottom: 1.25rem; }
body.fam-gvsl .sec p:not(.label):not(.rbrand) { color: var(--white); font-size: 1.0625rem; line-height: 1.5; margin-bottom: 1rem; }
body.fam-gvsl .sec p b { color: var(--white); font-weight: 500; }

body.fam-gvsl .rcard { margin: 2rem 0; padding: 2rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.fam-gvsl .rcard .rbrand { opacity: .6; margin-bottom: 1.25rem; }
body.fam-gvsl .rnums { display: flex; flex-wrap: wrap; gap: 1.5rem 2rem; margin-bottom: 1.5rem; }
body.fam-gvsl .rstat .rn { color: var(--white); font-family: var(--font-sans); font-size: 2rem; font-weight: 400; line-height: 1; }
body.fam-gvsl .rstat .rl { margin-top: .375rem; color: var(--white); opacity: .6; font-size: .8125rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.fam-gvsl .rcard blockquote { border-left: 2px solid var(--white); padding-left: 1rem; color: var(--white); font-size: 1.125rem; font-style: normal; line-height: 1.35; }

body.fam-gvsl .clist { list-style: none; margin: 1.5rem 0; border-top: 2px solid var(--white); }
body.fam-gvsl .clist li { display: flex; align-items: flex-start; gap: .75rem; padding: .875rem 0; border-bottom: 2px solid var(--white); color: var(--white); font-size: 1rem; line-height: 1.4; }
body.fam-gvsl .clist li::before { content: "→"; color: var(--white); font-family: var(--font-sans); font-weight: 500; flex-shrink: 0; margin-top: 0; }
body.fam-gvsl .clist + .clist { border-top: 0; }
body.fam-gvsl .clist li.no { color: rgb(255 255 255 / .6); }
body.fam-gvsl .clist li.no::before { content: "✕"; color: rgb(255 255 255 / .6); }

body.fam-gvsl .grid3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: .5rem; margin: 2rem 0; background: none; border: 0; }
body.fam-gvsl .g3cell { padding: 1.75rem 1.5rem; background: var(--white-10); clip-path: var(--notch-card); }
body.fam-gvsl .g3cell .gn { margin-bottom: .75rem; }
body.fam-gvsl .g3cell .gt { color: rgb(255 255 255 / .6); font-size: .9375rem; font-weight: 500; line-height: 1.4; }
body.fam-gvsl .g3cell .gt b { display: block; margin-bottom: .375rem; color: var(--white); font-family: var(--font-sans); font-size: 1.125rem; font-weight: 400; line-height: 1.2; }

body.fam-gvsl .fcta { background: none; border-top: 2px solid var(--white); padding: 5rem 2.5rem; text-align: center; }
body.fam-gvsl .fcta .label { margin-bottom: 1rem; }
body.fam-gvsl .fcta h2 { color: var(--white); font-family: var(--font-sans); font-size: clamp(2.25rem, 3.6vw, 3.5rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; max-width: 45rem; margin: 0 auto 1.25rem; }
body.fam-gvsl .fcta p:not(.label):not(.small) { color: var(--white); font-size: 1.0625rem; line-height: 1.45; max-width: 32rem; margin: 0 auto 2.25rem; }
body.fam-gvsl .fcta .small { margin-top: 1.25rem; opacity: .6; }

/* ==========================================================================
   7. fam-fads: founder-ads, vsl/watch, founder-ads-swipe (long-form VSL)
   ========================================================================== */
body.fam-fads { line-height: 1.5; }
body.fam-fads .container { max-width: 50rem; margin: 0 auto; padding: 0 2.5rem; }
body.fam-fads .container-wide { max-width: 64rem; margin: 0 auto; padding: 0 2.5rem; }

body.fam-fads h1,
body.fam-fads h2,
body.fam-fads h3 { font-family: var(--font-sans); font-weight: 400; letter-spacing: 0; }
body.fam-fads h1 { font-size: clamp(2.5rem, 4vw, 4rem); line-height: 1.05; letter-spacing: -.5px; }
body.fam-fads h2 { font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.05; margin-bottom: 1.5rem; }
body.fam-fads h3 { font-size: 1.5rem; line-height: 1.15; margin-bottom: 1rem; }
body.fam-fads .highlight { color: inherit; }
body.fam-fads .underline { text-decoration: underline; text-decoration-color: var(--white); text-decoration-thickness: 2px; text-underline-offset: .15em; }
body.fam-fads p { color: var(--white); font-size: 1.0625rem; line-height: 1.5; margin-bottom: 1.25rem; }
body.fam-fads p:last-child { margin-bottom: 0; }
body.fam-fads strong { color: var(--white); font-weight: 500; }

body.fam-fads .hero { padding: 5rem 0 3rem; text-align: center; }
body.fam-fads .hero-label { margin-bottom: 1.5rem; }
body.fam-fads .hero h1 { margin-bottom: 1.5rem; }
body.fam-fads .hero-sub { font-size: 1.25rem; line-height: 1.35; max-width: 38rem; margin: 0 auto 2rem; }

body.fam-fads .video-section { padding: 0 0 3.5rem; }
body.fam-fads .video-wrapper { position: relative; overflow: hidden; background: var(--white-10); border: 2px solid var(--white); border-radius: 0; }
body.fam-fads .video-wrapper-drive { border-radius: 0 !important; }
body.fam-fads wistia-player { display: block; width: 100%; }
body.fam-fads .video-caption { margin-top: 1rem; text-align: center; }
body.fam-fads .video-caption strong { color: var(--white); }

body.fam-fads .social-proof-bar { padding: 1.75rem 0; border-top: 2px solid var(--white); border-bottom: 2px solid var(--white); text-align: center; }
body.fam-fads .social-proof-bar p { margin: 0; color: rgb(255 255 255 / .6); font-size: 1rem; font-weight: 500; }
body.fam-fads .social-proof-bar strong { color: var(--white); }

body.fam-fads .section { padding: 4.5rem 0; border-bottom: 2px solid var(--white); }
body.fam-fads .section:last-of-type { border-bottom: 0; }
body.fam-fads .section-label { margin-bottom: 1rem; }

body.fam-fads .proof-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; margin: 2.5rem 0; }
body.fam-fads .proof-item { padding: 2rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.fam-fads .proof-item:nth-child(2) { background: var(--white); }
body.fam-fads .proof-item:nth-child(2) .proof-stat,
body.fam-fads .proof-item:nth-child(2) .proof-desc { color: var(--blue); }
body.fam-fads .proof-stat { color: var(--white); font-size: 2.5rem; font-weight: 400; line-height: 1; margin-bottom: .75rem; }
body.fam-fads .proof-desc { margin: 0; color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.4; }
body.fam-fads .proof-item:nth-child(2) .proof-desc { opacity: 1; }
body.fam-fads .proof-note { color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; text-align: center; }

body.fam-fads .method-point { margin-bottom: 2rem; padding-left: 1.5rem; border-left: 2px solid var(--white); }
body.fam-fads .method-point h3 { font-family: var(--font-sans); font-size: 1.375rem; font-weight: 400; margin-bottom: .5rem; }
body.fam-fads .method-point p { margin: 0; }

body.fam-fads blockquote { margin: 2rem 0; padding-left: 1.5rem; border-left: 2px solid var(--white); color: var(--white); font-family: var(--font-sans); font-size: 1.625rem; font-style: normal; line-height: 1.2; }

body.fam-fads .cta-box { margin: 0; padding: 3.5rem 2.5rem; text-align: center; background: var(--blue); border: 2px dashed var(--white); border-radius: 0; }
body.fam-fads .cta-box h2 { margin-bottom: 1.25rem; }
body.fam-fads .cta-box p { max-width: 32rem; margin: 0 auto 2rem; }
body.fam-fads .btn { padding: 1.35em 2.5em; }
body.fam-fads .cta-box .btn-sub { margin: 1.25rem auto 0; }
/* vsl/watch's button text already ends in an arrow, so the decorative SVG arrow is hidden */
body.pg-vsl-watch .cta-box .btn svg { display: none; }

body.fam-fads .faq-item { padding: 1.5rem 0; border-top: 2px solid var(--white); }
body.fam-fads .faq-item:last-child { border-bottom: 2px solid var(--white); }
body.fam-fads .faq-q { color: var(--white); font-family: var(--font-sans); font-size: 1.125rem; font-weight: 500; line-height: 1.25; margin-bottom: .75rem; }
body.fam-fads .faq-a { margin: 0; color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.45; }

body.fam-fads footer { padding: 5rem 2.5rem 2.5rem; }
body.fam-fads footer .container { max-width: 50rem; padding: 0; }
body.fam-fads footer .footer-tagline { margin-bottom: 1.5rem; color: var(--white); font-family: var(--font-sans); font-size: 1.5rem; font-style: normal; font-weight: 400; line-height: 1.2; text-transform: none; }
body.fam-fads footer .footer-copy { color: var(--white); font-size: .75rem; }

/* founder-ads-swipe: the swipe-file block becomes a white band with a blue notched button */
body.pg-founder-ads-swipe .swipe-cta { background: var(--white); color: var(--blue); border: 0; padding: 4.5rem 0; }
body.pg-founder-ads-swipe .swipe-label { margin: 0 0 1rem; color: var(--blue); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; line-height: 1.4; letter-spacing: .04em; text-transform: uppercase; }
body.pg-founder-ads-swipe .swipe-title { margin: 0 0 1rem; color: var(--blue); font-family: var(--font-sans); font-size: clamp(2rem, 3vw, 2.75rem); font-weight: 400; line-height: 1.05; }
body.pg-founder-ads-swipe .swipe-sub { max-width: 32.5rem; margin: 0 auto 1.75rem; color: var(--blue); font-size: 1.0625rem; line-height: 1.45; }
body.pg-founder-ads-swipe .swipe-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: var(--blue);
  color: var(--white);
  clip-path: var(--notch-button);
  border-radius: 0;
  padding: 1.35em 2.5em;
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  text-decoration: none;
  transition: opacity .2s;
}
body.pg-founder-ads-swipe .swipe-btn:hover { opacity: .85; }
body.pg-founder-ads-swipe .swipe-note { margin: .875rem 0 0; color: var(--blue); opacity: .6; font-size: .8125rem; font-weight: 500; }

/* ==========================================================================
   8. fam-fopt: founder-ads-optin, founder-ads-swipe-file (centred opt-in, no nav)
   ========================================================================== */
body.fam-fopt { display: flex; flex-direction: column; }
body.fam-fopt .page { flex: 1; display: flex; align-items: center; justify-content: center; padding: 4rem 2.5rem; }
body.fam-fopt .container { width: 100%; max-width: 36rem; }
body.fam-fopt .label { margin-bottom: 1.5rem; }
body.fam-fopt .headline { color: var(--white); font-family: var(--font-sans); font-size: clamp(2.25rem, 3.4vw, 3rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1.25rem; }
body.fam-fopt .headline em { font-style: normal; }
body.fam-fopt .headline .highlight { color: inherit; }
body.fam-fopt .subheadline { color: var(--white); font-size: 1.125rem; line-height: 1.4; margin-bottom: 2rem; }
body.fam-fopt .form-wrapper { margin-bottom: 2rem; }
body.fam-fopt .input-group { display: flex; gap: .5rem; margin-bottom: .5rem; }
body.fam-fopt .input { flex: 1; }
body.fam-fopt .btn { width: 100%; padding: 1.35em 2em; margin-top: .25rem; }
body.fam-fopt .privacy { margin-top: .875rem; }
body.fam-fopt .benefits { display: flex; flex-direction: column; gap: .875rem; margin-bottom: 2rem; padding-top: 2rem; border-top: 2px solid var(--white); }
body.fam-fopt .benefit { display: flex; align-items: flex-start; gap: .75rem; color: var(--white); font-size: 1rem; line-height: 1.35; }
body.fam-fopt .success-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.375rem;
  height: 1.375rem;
  margin-top: 0;
  background: var(--white);
  color: var(--blue);
  clip-path: var(--notch-tag);
  border-radius: 0;
}
body.fam-fopt .benefit-icon { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 1.125rem; height: 1.35em; background: none; border-radius: 0; color: var(--white); }
body.fam-fopt .benefit-icon svg { width: .9rem; height: .9rem; color: var(--white); }
body.fam-fopt .social-proof { padding-top: 2rem; border-top: 2px solid var(--white); }
body.fam-fopt .social-proof-text { color: rgb(255 255 255 / .6); font-size: .9375rem; font-weight: 500; line-height: 1.4; }
body.fam-fopt .social-proof-text strong { color: var(--white); font-weight: 500; }
body.fam-fopt .success-message { display: none; text-align: center; padding: 3rem 0; }
body.fam-fopt .success-message.show { display: block; }
body.fam-fopt .success-icon { width: 4.5rem; height: 4.5rem; margin: 0 auto 1.5rem; clip-path: var(--notch-tile); }
body.fam-fopt .success-icon svg { width: 2rem; height: 2rem; color: var(--blue); }
body.fam-fopt .success-title { font-family: var(--font-sans); font-size: 2.25rem; font-weight: 400; margin-bottom: .75rem; }
body.fam-fopt .success-text { color: var(--white); font-size: 1.125rem; }
body.fam-fopt .form-content.hidden { display: none; }

/* ==========================================================================
   9. founder-ads-playbook (long-form guide)
   ========================================================================== */
body.pg-fplaybook { color: var(--white); line-height: 1.5; }
body.pg-fplaybook .container { max-width: 50rem; margin: 0 auto; padding: 0 2.5rem; }

body.pg-fplaybook .hero { padding: 4.5rem 0 4rem; text-align: center; border-bottom: 2px solid var(--white); }
body.pg-fplaybook .hero-label { margin-bottom: 1.75rem; }
body.pg-fplaybook .hero h1 { color: var(--white); font-size: clamp(2.75rem, 5vw, 4.5rem); font-weight: 400; line-height: 1; letter-spacing: -.5px; margin-bottom: 1.5rem; }
body.pg-fplaybook .hero-sub { color: var(--white); font-size: 1.25rem; line-height: 1.35; max-width: 36rem; margin: 0 auto 2.5rem; }
body.pg-fplaybook .hero-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
body.pg-fplaybook .hero-stat { display: flex; flex-direction: column; align-items: center; gap: .625rem; padding: 2rem 1rem; background: var(--white-10); clip-path: var(--notch-card); text-align: center; }
body.pg-fplaybook .hero-stat:nth-child(2) { background: var(--white); color: var(--blue); }
body.pg-fplaybook .hero-stat-num { display: block; color: inherit; font-size: 2rem; font-weight: 400; line-height: 1; letter-spacing: 0; }
body.pg-fplaybook .hero-stat-label { color: inherit; font-size: .875rem; font-weight: 500; letter-spacing: 0; text-transform: none; }

body.pg-fplaybook .toc { padding: 3rem 0; border-bottom: 2px solid var(--white); }
body.pg-fplaybook .toc-label { margin-bottom: 1.25rem; }
body.pg-fplaybook .toc-list { list-style: none; border-top: 2px solid var(--white); }
body.pg-fplaybook .toc-list li { display: flex; align-items: center; gap: 1rem; padding: .875rem 0; border-bottom: 2px solid var(--white); }
body.pg-fplaybook .toc-list li:last-child { border-bottom: 0; }
body.pg-fplaybook .toc-num { min-width: 1.5rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; }
body.pg-fplaybook .toc-list a { color: var(--white); font-size: 1.125rem; font-weight: 400; text-decoration: none; transition: opacity .2s; }
body.pg-fplaybook .toc-list a:hover { color: var(--white); opacity: .6; }

body.pg-fplaybook .chapter { padding: 4.5rem 0; border-bottom: 2px solid var(--white); }
body.pg-fplaybook .chapter-label { margin-bottom: 1rem; }
body.pg-fplaybook .chapter h2 { color: var(--white); font-size: clamp(2rem, 3.4vw, 3rem); font-weight: 400; line-height: 1.05; letter-spacing: 0; margin-bottom: 2rem; }
body.pg-fplaybook .chapter h3 { color: var(--white); font-size: 1.5rem; font-weight: 400; line-height: 1.15; margin: 2.5rem 0 1rem; }
body.pg-fplaybook .chapter p { color: var(--white); font-size: 1.0625rem; line-height: 1.5; margin-bottom: 1.25rem; }
body.pg-fplaybook .chapter p:last-child { margin-bottom: 0; }

body.pg-fplaybook .pullquote { margin: 2rem 0; padding: 1.75rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.pg-fplaybook .pullquote p { margin: 0; color: var(--white); font-size: 1.375rem; font-style: normal; line-height: 1.25; }

body.pg-fplaybook .stat-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: .5rem; margin: 2rem 0; }
body.pg-fplaybook .stat-card { display: flex; flex-direction: column; align-items: center; gap: .625rem; padding: 1.75rem 1rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; text-align: center; }
body.pg-fplaybook .stat-card-num { display: block; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; }
body.pg-fplaybook .stat-card-label { margin: 0; color: var(--white); font-size: 1.125rem; font-weight: 400; line-height: 1.15; }

body.pg-fplaybook .framework { margin: .5rem 0; padding: 2rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.pg-fplaybook .framework-title { color: var(--white); font-size: 1.5rem; font-weight: 400; line-height: 1.15; margin-bottom: .5rem; }
body.pg-fplaybook .framework-meta { color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; margin-bottom: 1.25rem; }
body.pg-fplaybook .framework ol,
body.pg-fplaybook .framework ul { margin: 1rem 0; padding-left: 1.25rem; }
body.pg-fplaybook .framework li { margin-bottom: .5rem; color: var(--white); font-size: .9375rem; line-height: 1.45; }
body.pg-fplaybook .framework li::marker { color: var(--white); }
body.pg-fplaybook .framework .example { margin-top: 1.25rem; padding: 0 0 0 1rem; background: none; border: 0; border-left: 2px solid var(--white); border-radius: 0; color: var(--white); font-size: .9375rem; font-style: normal; line-height: 1.5; }

/* Tables: 2px white rules, mono header row (blog table treatment) */
body.mhi-custom .table-wrap { overflow-x: auto; margin: 1.5rem 0 2rem; }
body.pg-fplaybook .hook-table,
body.pg-fplaybook .equip-table,
body.pg-ig-compare .compare-table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
  border-top: 2px solid var(--white);
  font-size: .9375rem;
  line-height: 1.35;
}
body.pg-fplaybook .hook-table th,
body.pg-fplaybook .equip-table th,
body.pg-ig-compare .compare-table th {
  padding: .875rem 1rem .875rem 0;
  background: none;
  border: 0;
  border-bottom: 2px solid var(--white);
  color: var(--white);
  font-family: var(--font-mono);
  font-size: .75rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: .04em;
  text-align: left;
  text-transform: uppercase;
}
body.pg-fplaybook .hook-table td,
body.pg-fplaybook .equip-table td,
body.pg-ig-compare .compare-table td {
  padding: .875rem 1rem .875rem 0;
  border: 0;
  border-bottom: 2px solid var(--white);
  color: var(--white);
  vertical-align: top;
}
body.pg-fplaybook .hook-table tr:last-child td { border-bottom: 2px solid var(--white); }
body.pg-fplaybook .hook-table tr:hover td,
body.pg-ig-compare .compare-table tr:hover td { background: none; }
body.pg-fplaybook .equip-table tr:last-child td { color: var(--white); font-weight: 500; }

body.pg-fplaybook .tips { list-style: none; border-top: 2px solid var(--white); }
body.pg-fplaybook .tips li { position: relative; display: block; padding: .875rem 0 .875rem 1.75rem; border-bottom: 2px solid var(--white); color: var(--white); font-size: 1rem; line-height: 1.4; }
body.pg-fplaybook .tips li:last-child { border-bottom: 2px solid var(--white); }
body.pg-fplaybook .tips li::before { content: "→"; position: absolute; left: 0; top: .875rem; color: var(--white); }

body.pg-fplaybook .case-study { margin: .5rem 0; padding: 2.25rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.pg-fplaybook .case-study-header { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.5rem; padding-bottom: 1.5rem; border-bottom: 2px solid var(--white); }
body.pg-fplaybook .case-study-num { display: inline-flex; align-items: center; background: var(--white); color: var(--blue); clip-path: var(--notch-tag); border-radius: 0; padding: 8px .875rem; font-size: .875rem; font-weight: 500; letter-spacing: 0; text-transform: none; white-space: nowrap; }
body.pg-fplaybook .case-study h3 { margin: 0; font-size: 1.5rem; }
body.pg-fplaybook .case-study-meta { margin-top: .375rem; color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; }
body.pg-fplaybook .case-study-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr)); gap: .5rem; margin-bottom: 1.5rem; }
body.pg-fplaybook .result-item { padding: 1.25rem .75rem; background: var(--blue); clip-path: var(--notch-tile); border-radius: 0; text-align: center; }
body.pg-fplaybook .result-num { color: var(--white); font-size: 1.75rem; font-weight: 400; line-height: 1; letter-spacing: 0; }
body.pg-fplaybook .result-label { margin-top: .5rem; color: var(--white); opacity: .6; font-size: .8125rem; font-weight: 500; line-height: 1.25; }
body.pg-fplaybook .case-study p { font-size: 1rem; }
body.pg-fplaybook .case-insight { margin-top: 1.25rem; padding: 1.25rem 1.5rem; background: var(--white); color: var(--blue); clip-path: var(--notch-card); border-radius: 0; font-size: .9375rem; font-weight: 500; line-height: 1.4; }

body.pg-fplaybook .week-block { margin: .5rem 0; padding: 1.75rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; }
body.pg-fplaybook .week-title { margin-bottom: 1rem; }
body.pg-fplaybook .checklist { list-style: none; }
body.pg-fplaybook .checklist li { display: flex; gap: .75rem; padding: .4rem 0; border: 0; color: var(--white); font-size: 1rem; line-height: 1.4; }
body.pg-fplaybook .checklist li::before { content: "○"; color: var(--white); font-size: .875rem; flex-shrink: 0; margin-top: .05rem; }

body.pg-fplaybook .email-capture { margin: 4rem 0 .5rem; padding: 3rem 2.5rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; border-radius: 0; text-align: center; }
body.pg-fplaybook .email-capture h2 { color: var(--white); font-size: 2rem; font-weight: 400; line-height: 1.05; letter-spacing: 0; margin-bottom: .75rem; }
body.pg-fplaybook .email-capture p:not(.privacy-text) { color: var(--white); font-size: 1rem; line-height: 1.4; margin-bottom: 1.75rem; }
body.pg-fplaybook .email-form { display: flex; gap: .5rem; max-width: 30rem; margin: 0 auto; }
body.pg-fplaybook .email-input { flex: 1; }
body.pg-fplaybook .email-btn { flex: none; }
body.pg-fplaybook .email-success { display: none; color: var(--white); font-size: 1.125rem; font-weight: 500; }
body.pg-fplaybook .email-error { display: none; max-width: 30rem; margin: .75rem auto 0; }
body.pg-fplaybook .privacy-text { margin-top: .875rem; }

body.pg-fplaybook .cta-section { margin: 0 0 4rem; padding: 3.5rem 2.5rem; background: var(--blue); border: 2px dashed var(--white); border-radius: 0; text-align: center; }
body.pg-fplaybook .cta-section h2 { color: var(--white); font-size: 2.25rem; font-weight: 400; line-height: 1.05; letter-spacing: 0; margin-bottom: 1rem; }
body.pg-fplaybook .cta-section p:not(.cta-sub) { color: var(--white); font-size: 1.0625rem; line-height: 1.45; max-width: 32rem; margin: 0 auto 2rem; }
body.pg-fplaybook .cta-btn { padding: 1.35em 2.5em; }
body.pg-fplaybook .cta-sub { margin-top: 1rem; }
/* The playbook footer also sits inside the reading column; break it out to full width */
body.pg-fplaybook footer { width: 100vw; max-width: none; margin-left: calc(50% - 50vw); padding: 5rem 2.5rem 2.5rem; }

/* ==========================================================================
   10. founder-playbook (opt-in card)
   ========================================================================== */
body.pg-founder-playbook { display: flex; flex-direction: column; }
body.pg-founder-playbook .hero { flex: 1; display: flex; align-items: center; justify-content: center; padding: 4rem 2.5rem; }
body.pg-founder-playbook .card { width: 100%; max-width: 36rem; }
body.pg-founder-playbook .eyebrow { margin-bottom: 1.75rem; }
body.pg-founder-playbook h1 { font-size: clamp(2.5rem, 4vw, 3.75rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1.25rem; }
body.pg-founder-playbook h1 span { color: inherit; }
body.pg-founder-playbook .sub { color: var(--white); font-size: 1.125rem; line-height: 1.4; margin-bottom: 2.25rem; }
body.pg-founder-playbook .bullets { display: flex; flex-direction: column; gap: .75rem; margin-bottom: 2.25rem; }
body.pg-founder-playbook .bullet { display: flex; align-items: flex-start; gap: .75rem; color: var(--white); font-size: 1rem; line-height: 1.35; }
body.pg-founder-playbook .check { color: var(--white); flex-shrink: 0; }
body.pg-founder-playbook .divider { height: 2px; background: var(--white); margin-bottom: 2rem; }
body.pg-founder-playbook .form-label { margin-bottom: .875rem; }
body.pg-founder-playbook .form-row { display: flex; gap: .5rem; }
body.pg-founder-playbook input[type="email"] { flex: 1; }
body.pg-founder-playbook .btn { flex: none; }
body.pg-founder-playbook .disclaimer { margin-top: .875rem; }
body.pg-founder-playbook .form-error { display: none; }
body.pg-founder-playbook .success { display: none; text-align: center; padding: 2.5rem 0; }
body.pg-founder-playbook .success-icon { font-size: 2.25rem; margin-bottom: 1rem; }
body.pg-founder-playbook .success h2 { font-size: 1.75rem; font-weight: 400; margin-bottom: .75rem; }
body.pg-founder-playbook .success p { color: var(--white); font-size: 1rem; line-height: 1.45; }
body.pg-founder-playbook .proof { margin-top: 2.5rem; padding-top: 2rem; border-top: 2px solid var(--white); }
body.pg-founder-playbook .proof-label { margin-bottom: 1rem; }
body.pg-founder-playbook .stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
body.pg-founder-playbook .stats > div { display: flex; flex-direction: column; align-items: center; gap: .5rem; padding: 1.5rem .75rem; background: var(--white-10); clip-path: var(--notch-card); text-align: center; }
body.pg-founder-playbook .stats > div:nth-child(2) { background: var(--white); color: var(--blue); }
body.pg-founder-playbook .stat-num { color: inherit; font-size: 1.625rem; font-weight: 400; line-height: 1; }
body.pg-founder-playbook .stat-desc { color: inherit; opacity: .6; font-size: .8125rem; font-weight: 500; line-height: 1.25; }
body.pg-founder-playbook .stats > div:nth-child(2) .stat-desc { opacity: 1; }

/* ==========================================================================
   11. fam-ig: infographics, stats, tools (shared frame)
   ========================================================================== */
body.fam-ig {
  /* legacy variables still referenced by inline styles in the markup */
  --primary: #fff;
  --bg: #0057ff;
  --surface: #ffffff1a;
  --border: #fff;
  --text: #fff;
  --muted: rgb(255 255 255 / .6);
  display: flex;
  flex-direction: column;
  line-height: 1.4;
}
body.fam-ig main { flex: 1; width: 100%; max-width: 69rem; margin: 0 auto; padding: 4rem 2.5rem 5rem; }
body.fam-ig h1 { font-size: clamp(2.5rem, 4.5vw, 4rem); font-weight: 400; line-height: 1.02; letter-spacing: -.5px; margin-bottom: 1.25rem; }
body.fam-ig h2 { color: var(--white); font-size: 2rem; font-weight: 400; line-height: 1.05; margin: 3rem 0 1.25rem; }
body.fam-ig .eyebrow { margin-bottom: 1.5rem; }
body.fam-ig .sub { color: var(--white); font-size: 1.125rem; line-height: 1.4; max-width: 40rem; margin-bottom: 2.5rem; }
body.fam-ig .divider { height: 2px; background: var(--white); margin: 3rem 0 0; }

body.fam-ig .embed-block,
body.pg-stats .cite-block { margin-top: 2rem; padding: 1.75rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.fam-ig .embed-label { opacity: .6; margin-bottom: .75rem; }
body.fam-ig .embed-code { color: var(--white); font-family: var(--font-mono); font-size: .75rem; line-height: 1.6; text-transform: none; word-break: break-all; cursor: pointer; }
body.fam-ig .copy-btn { margin-top: 1rem; }

body.fam-ig .related { display: flex; flex-direction: column; gap: .5rem; margin-top: 1rem; }
body.fam-ig .related a { display: block; padding: 1.125rem 1.25rem; background: var(--white-10); clip-path: var(--notch-tag); border: 0; color: var(--white); font-size: 1rem; font-weight: 500; line-height: 1.25; text-decoration: none; transition: opacity .2s; }
body.fam-ig .related a:hover { border: 0; opacity: .6; }

body.fam-ig .cta-block { margin-top: 3rem; padding: 3rem 2rem; background: var(--blue); border: 2px dashed var(--white); text-align: center; }
body.fam-ig .cta-block p { color: var(--white); font-size: 1.5rem; font-weight: 400; line-height: 1.15; margin-bottom: 1.5rem; }
body.fam-ig .btn { padding: 1.35em 2.5em; }

/* 11.1 7 hook types */
body.pg-ig-hooks .hooks { display: grid; grid-template-columns: repeat(auto-fill, minmax(21rem, 1fr)); gap: .5rem; margin: 2rem 0; }
body.pg-ig-hooks .hook-card { position: relative; padding: 2rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-ig-hooks .hook-num { margin-bottom: .875rem; color: var(--white); opacity: .6; font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-ig-hooks .hook-type { margin-bottom: .75rem; color: var(--white); font-size: 1.75rem; font-weight: 400; line-height: 1.05; }
body.pg-ig-hooks .hook-why { margin-bottom: 1rem; color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; line-height: 1.4; }
body.pg-ig-hooks .hook-example { margin: 1rem 0; padding-left: 1rem; border-left: 2px solid var(--white); color: var(--white); font-size: 1.125rem; font-style: normal; line-height: 1.3; }
body.pg-ig-hooks .hook-template { margin: .5rem 0 1.25rem; color: var(--white); font-size: .875rem; font-weight: 500; line-height: 1.4; }
body.pg-ig-hooks .hook-template span { color: var(--white); opacity: .6; }
body.pg-ig-hooks .hook-score { display: flex; align-items: center; gap: .75rem; color: var(--white); font-size: .8125rem; font-weight: 500; }
body.pg-ig-hooks .score-bar { flex: 1; height: .375rem; overflow: hidden; background: var(--white-10); border-radius: 0; }
body.pg-ig-hooks .score-fill { height: 100%; background: var(--white); border-radius: 0; }

/* 11.2 Anatomy of a founder ad */
body.pg-ig-anatomy .anatomy { position: relative; display: flex; flex-direction: column; gap: .5rem; margin: 2rem 0; }
body.pg-ig-anatomy .anatomy-step { position: relative; display: flex; align-items: flex-start; gap: 1.5rem; margin: 0; padding: 2rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-ig-anatomy .anatomy-step::before { display: none; }
body.pg-ig-anatomy .step-num { min-width: 7rem; padding-top: .3rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-ig-anatomy .step-timing { min-width: 4rem; padding-top: .3rem; color: var(--white); opacity: .6; font-family: var(--font-mono); font-size: .75rem; font-weight: 500; }
body.pg-ig-anatomy .step-content h3 { margin-bottom: .625rem; color: var(--white); font-size: 1.75rem; font-weight: 400; line-height: 1.05; }
body.pg-ig-anatomy .step-content .step-desc { margin-bottom: 1rem; color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.4; }
body.pg-ig-anatomy .step-example { padding-left: 1rem; border-left: 2px solid var(--white); color: var(--white); font-size: 1.0625rem; font-style: normal; line-height: 1.35; }
body.pg-ig-anatomy .why-works { margin-top: 2rem; padding: 2.25rem 2rem; background: var(--white); color: var(--blue); clip-path: var(--notch-card); border: 0; }
body.pg-ig-anatomy .why-works h3 { margin-bottom: .875rem; color: var(--blue); font-size: 1.75rem; font-weight: 400; line-height: 1.05; }
body.pg-ig-anatomy .why-works p { color: var(--blue); font-size: 1.0625rem; line-height: 1.45; }

/* 11.3 DTC scaling funnel */
body.pg-ig-funnel .funnel { display: flex; flex-direction: column; gap: .5rem; margin: 2rem 0; }
body.pg-ig-funnel .funnel-stage { position: relative; overflow: hidden; padding: 2rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-ig-funnel .funnel-stage::before { display: none; }
body.pg-ig-funnel .stage-header { display: flex; flex-wrap: wrap; align-items: baseline; gap: .75rem 1.25rem; margin-bottom: 1.5rem; padding-bottom: 1.25rem; border-bottom: 2px solid var(--white); }
body.pg-ig-funnel .stage-range { color: var(--white); font-size: 2.25rem; font-weight: 400; line-height: 1; }
body.pg-ig-funnel .stage-name { color: var(--white); opacity: .6; font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-ig-funnel .stage-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1.5rem; }
body.pg-ig-funnel .stage-col h4 { margin-bottom: .75rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-ig-funnel .stage-col ul { list-style: none; display: flex; flex-direction: column; gap: .5rem; }
body.pg-ig-funnel .stage-col li { color: var(--white); font-size: .9375rem; font-weight: 500; line-height: 1.35; }
body.pg-ig-funnel .stage-col li::before { content: "→ "; color: var(--white); }
body.pg-ig-funnel .stage-col li.mistake { color: var(--white); }
body.pg-ig-funnel .stage-col li.mistake::before { content: "✗ "; color: var(--white); }

/* 11.4 UGC vs founder vs polished */
body.pg-ig-compare .col-ugc,
body.pg-ig-compare .col-founder { color: var(--white); }
body.pg-ig-compare .col-polished { color: rgb(255 255 255 / .6); }
body.pg-ig-compare .compare-table th.col-polished { color: rgb(255 255 255 / .6); }
body.pg-ig-compare .compare-table th,
body.pg-ig-compare .compare-table td { padding-left: .75rem; padding-right: .75rem; }
body.pg-ig-compare .compare-table td.winner { background: var(--white-10); border-left: 0; color: var(--white); font-weight: 500; }
body.pg-ig-compare .compare-table td:first-child { font-weight: 500; }
body.pg-ig-compare .tag { display: inline-flex; align-items: center; margin-left: .25rem; padding: 3px .5rem; background: var(--white); color: var(--blue); clip-path: var(--notch-tag); border: 0; font-size: .75rem; font-weight: 500; line-height: 1.2; letter-spacing: 0; text-transform: capitalize; vertical-align: 1px; }
body.pg-ig-compare .verdict { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin: 1.5rem 0 2rem; }
body.pg-ig-compare .verdict-card { padding: 2rem 1.75rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-ig-compare .verdict-card h4 { margin-bottom: .75rem; color: var(--white); font-size: 1.25rem; font-weight: 400; line-height: 1.15; }
body.pg-ig-compare .verdict-card p { color: var(--white); opacity: .6; font-size: .9375rem; font-weight: 500; line-height: 1.4; }

/* 11.5 Meta ads benchmarks */
body.pg-stats .section-title { margin: 2.5rem 0 1rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-stats .stats-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: .5rem; margin-bottom: 1rem; }
body.pg-stats .stat-card { padding: 2rem 1.5rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-stats .stat-card .num { margin-bottom: .75rem; color: var(--white); font-size: 2.5rem; font-weight: 400; line-height: 1; }
body.pg-stats .stat-card .label { margin-bottom: .625rem; color: var(--white); font-size: 1rem; font-weight: 500; line-height: 1.2; letter-spacing: 0; text-transform: none; }
body.pg-stats .stat-card .context { color: var(--white); opacity: .6; font-size: .875rem; font-weight: 500; line-height: 1.4; }
body.pg-stats .methodology { margin-top: 2.5rem; padding: 2rem 2rem; background: var(--white); color: var(--blue); clip-path: var(--notch-card); border: 0; font-size: 1rem; line-height: 1.45; }
body.pg-stats .methodology strong { color: var(--blue); }

/* 11.6 Founder ad script generator */
body.pg-tool-script .tool-form { margin: 2rem 0; padding: 2.5rem 2.25rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-tool-script .field { margin-bottom: 1.5rem; }
body.pg-tool-script .field label { display: block; margin-bottom: .625rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-tool-script .field select {
  cursor: pointer;
  padding-right: 2.75rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 5'%3E%3Cpath d='M3.5 5L0 0H7L3.5 5Z' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: .625rem auto;
}
body.pg-tool-script .field select option { background: var(--blue); color: var(--white); }
body.pg-tool-script .generate-btn { width: 100%; margin-top: .5rem; padding: 1.35em 2em; }
body.pg-tool-script .output { display: none; margin-top: 2rem; padding: 2.5rem 2.25rem; background: var(--white); color: var(--blue); clip-path: var(--notch-card); border: 0; }
body.pg-tool-script .output-label { margin-bottom: 1.5rem; color: var(--blue); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-tool-script .script-section { margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 2px solid var(--blue); }
body.pg-tool-script .script-section:last-of-type { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
body.pg-tool-script .script-tag { margin-bottom: .375rem; color: var(--blue); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; }
body.pg-tool-script .script-timing { margin-bottom: .625rem; color: var(--blue); opacity: .6; font-size: .875rem; font-weight: 500; }
body.pg-tool-script .script-text { color: var(--blue); font-size: 1.125rem; line-height: 1.45; }
body.pg-tool-script .copy-script { margin-top: 1.75rem; background: var(--blue); color: var(--white); }
body.pg-tool-script .copy-script:hover { background: var(--blue); color: var(--white); }

/* 11.7 Meta ad budget calculator */
body.pg-tool-budget .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; margin: 2rem 0; align-items: start; }
body.pg-tool-budget .calc-inputs { padding: 2.25rem 2rem; background: var(--white-10); clip-path: var(--notch-card); border: 0; }
body.pg-tool-budget .calc-outputs { padding: 2.25rem 2rem; background: var(--white); color: var(--blue); clip-path: var(--notch-card); border: 0; }
body.pg-tool-budget .input-group { margin-bottom: 1.5rem; }
body.pg-tool-budget .input-group:last-child { margin-bottom: 0; }
body.pg-tool-budget .input-group label { display: block; margin-bottom: .625rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; line-height: 1.4; letter-spacing: .04em; text-transform: uppercase; }
body.pg-tool-budget .input-row { display: flex; align-items: stretch; gap: 0; }
body.pg-tool-budget .input-prefix { display: flex; align-items: center; padding: 0 1rem; background: var(--white); color: var(--blue); border: 2px solid var(--white); border-right: 0; font-family: var(--font-sans); font-size: 1rem; font-weight: 500; }
body.pg-tool-budget .input-group input[type="range"] { width: 100%; height: 1.5rem; padding: 0; background: transparent; border: 0; accent-color: var(--white); cursor: pointer; -webkit-appearance: none; appearance: none; }
body.pg-tool-budget .input-group input[type="range"]::-webkit-slider-runnable-track { height: 2px; background: var(--white); border: 0; }
body.pg-tool-budget .input-group input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 1rem; height: 1rem; margin-top: calc(-.5rem + 1px); background: var(--white); border: 0; border-radius: 0; }
body.pg-tool-budget .input-group input[type="range"]::-moz-range-track { height: 2px; background: var(--white); border: 0; }
body.pg-tool-budget .input-group input[type="range"]::-moz-range-thumb { width: 1rem; height: 1rem; background: var(--white); border: 0; border-radius: 0; }
body.pg-tool-budget .range-val { min-width: 3rem; color: var(--white); text-align: right; }
body.pg-tool-budget .results-label { margin-bottom: 1.25rem; color: var(--blue); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-tool-budget .result-item { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding: .875rem 0; border-bottom: 2px solid var(--blue); }
body.pg-tool-budget .result-item:first-of-type { border-top: 2px solid var(--blue); }
body.pg-tool-budget .result-label { color: var(--blue); font-size: .9375rem; font-weight: 500; }
body.pg-tool-budget .result-value { color: var(--blue); font-size: 1.375rem; font-weight: 400; line-height: 1; }
body.pg-tool-budget .result-value.primary { color: var(--blue); font-size: 2rem; }
body.pg-tool-budget .reality-check { margin-top: 1.5rem; padding: 1.5rem 1.5rem; background: var(--blue); color: var(--white); clip-path: var(--notch-card); border: 0; font-size: .875rem; }
body.pg-tool-budget .reality-check h4 { margin-bottom: .875rem; color: var(--white); font-family: var(--font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
body.pg-tool-budget .reality-check .rc-item { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .625rem 0; border-bottom: 2px solid var(--white); color: var(--white); font-weight: 500; }
body.pg-tool-budget .reality-check .rc-item:last-child { border-bottom: 0; }
body.pg-tool-budget .rc-good,
body.pg-tool-budget .rc-warn,
body.pg-tool-budget .rc-bad { padding: 4px .625rem; clip-path: var(--notch-tag); text-align: right; }
body.pg-tool-budget .rc-good { color: var(--white); }
body.pg-tool-budget .rc-warn { background: var(--white-10); color: var(--white); }
body.pg-tool-budget .rc-bad { background: var(--white); color: var(--blue); }

/* ==========================================================================
   12. strat-doc (no nav, single centred card)
   ========================================================================== */
body.pg-strat { display: flex; align-items: center; justify-content: center; padding: 4rem 1.25rem; }
body.pg-strat .container { width: 100%; max-width: 36rem; }
body.pg-strat .eyebrow { margin-bottom: 1.5rem; }
body.pg-strat h1 { color: var(--white); font-size: clamp(2.25rem, 3.4vw, 3rem); font-weight: 400; line-height: 1.05; letter-spacing: -.5px; margin-bottom: 1.25rem; }
body.pg-strat h1 span { color: inherit; }
body.pg-strat .subhead { color: var(--white); font-size: 1.125rem; line-height: 1.45; margin-bottom: 2rem; }
body.pg-strat .names { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2.5rem; }
body.pg-strat .form-label { margin-bottom: .875rem; }
body.pg-strat .form-row { display: flex; gap: .5rem; }
body.pg-strat input[type="email"] { flex: 1; }
body.pg-strat #submit-btn { flex: none; }
body.pg-strat .fine-print { margin-top: .875rem; }
body.pg-strat .from { margin-top: 2.5rem; padding-top: 1.75rem; border-top: 2px solid var(--white); color: rgb(255 255 255 / .6); font-size: .9375rem; font-weight: 500; line-height: 1.4; }
body.pg-strat .from strong { color: var(--white); }
body.pg-strat .success { display: none; text-align: center; padding: 2.5rem 0; }
body.pg-strat .success-icon { font-size: 2.5rem; margin-bottom: 1rem; }
body.pg-strat .success h2 { color: var(--white); font-size: 2rem; font-weight: 400; margin-bottom: .75rem; }
body.pg-strat .success p { color: var(--white); font-size: 1rem; line-height: 1.45; margin-bottom: 1.75rem; }

/* ==========================================================================
   13. Responsive (mhimedia.com breakpoints)
   ========================================================================== */
@media screen and (max-width: 991px) {
  body.mhi-custom .mhi-wordmark { width: 15rem; }
  body.pg-aioffer .kamal-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  body.pg-aioffer .kamal-photo { max-width: 28rem; margin: 0 auto; }
  body.pg-aioffer .stats-grid { grid-template-columns: repeat(2, 1fr); }
  body.pg-aioffer .layers,
  body.pg-aioffer .deliverables-grid,
  body.pg-aioffer .weeks,
  body.pg-aioffer .testi-grid { grid-template-columns: 1fr; }
}
@media screen and (max-width: 767px) {
  body.fam-optin .nav,
  body.fam-access .nav,
  body.pg-aioffer .nav,
  body.fam-gvsl .top,
  body.fam-fads nav,
  body.pg-founder-playbook nav,
  body.fam-ig nav { padding: 2rem 1.25rem; }
  body.pg-fplaybook .site-header { padding: 2rem 1.25rem; }
  body.mhi-custom .mhi-wordmark { width: 10rem; }
  body.mhi-custom footer { padding: 3rem 1.25rem 2rem; }
  body.mhi-custom footer .mhi-footer-logo { margin-bottom: 2rem; }
  body.mhi-custom footer .mhi-footer-line { margin-bottom: 1.5rem; }

  body.fam-optin .main,
  body.fam-fopt .page,
  body.pg-founder-playbook .hero { padding: 2.5rem 1.25rem 3rem; }
  body.fam-access .main { padding: 2.5rem 1.25rem 3rem; }
  body.pg-6reps-access .cta-block,
  body.pg-crs-success .download-block { padding: 1.75rem 1.25rem; }

  body.pg-aioffer .container,
  body.pg-aioffer .container-wide,
  body.fam-fads .container,
  body.fam-fads .container-wide,
  body.pg-fplaybook .container { padding: 0 1.25rem; }
  body.pg-aioffer .urgency-banner,
  body.fam-fads .urgency-banner,
  body.fam-fopt .urgency-banner { padding: .875rem 1.25rem; }
  body.pg-aioffer .proof-bar { padding: 1rem 1.25rem; }
  body.pg-aioffer .hero { padding: 3.5rem 0 3rem; }
  body.pg-aioffer .kamal-section,
  body.pg-aioffer .yt-section,
  body.pg-aioffer .stats-section,
  body.pg-aioffer .testimonials-section,
  body.pg-aioffer .problem-section,
  body.pg-aioffer .system-section,
  body.pg-aioffer .deliverables-section,
  body.pg-aioffer .timeline-section,
  body.pg-aioffer .guarantee-section,
  body.pg-aioffer .faq-section { padding: 3rem 0; }
  body.pg-aioffer .final-cta { padding: 3.5rem 0; }
  body.pg-aioffer .guarantee-box { padding: 2.5rem 1.25rem; }
  body.pg-aioffer .kamal-bio .stat-row { flex-wrap: wrap; gap: 1.5rem; }
  body.pg-aioffer .mid-cta { padding: 3rem 1.25rem; }

  body.fam-gvsl .hero { padding: 3rem 1.25rem 2rem; }
  body.fam-gvsl .vid-section { padding: 0 1.25rem; }
  body.fam-gvsl .vcta { padding: 2rem 1.25rem .5rem; }
  body.fam-gvsl .ticker { margin: 1.5rem 1.25rem 0; }
  body.fam-gvsl .hr { margin: 2.5rem 1.25rem 0; }
  body.fam-gvsl .sec { padding: 2.5rem 1.25rem; }
  body.fam-gvsl .fcta { padding: 3.5rem 1.25rem; }

  body.fam-fads .hero { padding: 3rem 0 2rem; }
  body.fam-fads .section { padding: 3rem 0; }
  body.fam-fads .cta-box { padding: 2.5rem 1.25rem; }
  body.fam-fads blockquote { font-size: 1.375rem; }
  body.fam-fads footer { padding: 3rem 1.25rem 2rem; }
  body.pg-fplaybook footer { padding: 3rem 1.25rem 2rem; }
  body.pg-founder-ads-swipe .swipe-cta { padding: 3rem 0; }

  body.pg-fplaybook .hero { padding: 3rem 0; }
  body.pg-fplaybook .hero-stats { grid-template-columns: 1fr; }
  body.pg-fplaybook .chapter { padding: 3rem 0; }
  body.pg-fplaybook .framework,
  body.pg-fplaybook .case-study,
  body.pg-fplaybook .week-block,
  body.pg-fplaybook .pullquote { padding: 1.75rem 1.25rem; }
  body.pg-fplaybook .case-study-header { flex-direction: column; gap: .75rem; }
  body.pg-fplaybook .email-capture { padding: 2.25rem 1.25rem; }
  body.pg-fplaybook .email-form { flex-direction: column; }
  body.pg-fplaybook .cta-section { padding: 2.5rem 1.25rem; }

  body.fam-ig main { padding: 2.5rem 1.25rem 3rem; }
  body.fam-ig .cta-block { padding: 2.5rem 1.25rem; }
  body.pg-ig-hooks .hooks { grid-template-columns: 1fr; }
  body.pg-ig-anatomy .anatomy-step { flex-wrap: wrap; gap: .5rem 1rem; padding: 1.75rem 1.25rem; }
  body.pg-ig-anatomy .step-num,
  body.pg-ig-anatomy .step-timing { min-width: 0; }
  body.pg-ig-anatomy .step-content { flex: 1 1 100%; margin-top: .5rem; }
  body.pg-ig-funnel .funnel-stage { padding: 1.75rem 1.25rem; }
  body.pg-ig-funnel .stage-grid { grid-template-columns: 1fr; }
  body.pg-ig-compare .compare-table { min-width: 40rem; }
  body.pg-ig-compare .verdict { grid-template-columns: 1fr; }
  body.pg-tool-script .tool-form,
  body.pg-tool-script .output { padding: 1.75rem 1.25rem; }
  body.pg-tool-budget .calc-grid { grid-template-columns: 1fr; }
  body.pg-tool-budget .calc-inputs,
  body.pg-tool-budget .calc-outputs { padding: 1.75rem 1.25rem; }
}
@media screen and (max-width: 640px) {
  body.pg-aioffer .yt-grid { grid-template-columns: 1fr; }
  body.pg-6reps-access .doc-frame { height: 560px; }
}
@media screen and (max-width: 600px) {
  body.fam-fads .proof-grid { grid-template-columns: 1fr; }
}
@media screen and (max-width: 560px) {
  body.fam-optin .form-row { flex-direction: column; }
  body.pg-crs-success .btn-primary { width: 100%; justify-content: center; padding: 1.35em 1.5em; }
}
@media screen and (max-width: 520px) {
  body.fam-fopt .input-group { flex-direction: column; }
}
@media screen and (max-width: 479px) {
  body.fam-optin .nav,
  body.fam-access .nav,
  body.fam-gvsl .top,
  body.pg-founder-playbook nav,
  body.fam-ig nav,
  body.pg-aioffer .nav-inner,
  body.fam-fads .nav-inner,
  body.pg-fplaybook .site-header { gap: 1.25rem 1.5rem; }
  body.fam-optin .nav-logo,
  body.fam-access .nav-logo,
  body.pg-aioffer .nav-logo,
  body.fam-gvsl .top-brand,
  body.fam-fads .logo,
  body.pg-fplaybook .site-logo,
  body.pg-founder-playbook .logo,
  body.fam-ig .logo { flex: 1 1 100%; flex-flow: column; align-items: flex-start; gap: .75rem; }
  body.mhi-custom .mhi-wordmark { width: 100%; }
  body.pg-aioffer .stats-grid { grid-template-columns: 1fr; }
  body.pg-founder-playbook .form-row,
  body.pg-strat .form-row { flex-direction: column; }
  body.pg-founder-playbook .btn,
  body.pg-strat #submit-btn { width: 100%; }
  body.pg-founder-playbook .stats { grid-template-columns: 1fr; }
  body.pg-crs-success .step-detail code { white-space: normal; overflow-wrap: anywhere; }
}
