
  :root {
    --navy: #0d1b2a;
    --navy-mid: #1a2e45;
    --navy-light: #243d57;
    --gold: #c9a84c;
    --gold-light: #e8c97a;
    --gold-dim: rgba(201,168,76,0.15);
    --cream: #f5f0e8;
    --white: #ffffff;
    --muted: rgba(255,255,255,0.45);
    /* Framed photos: max width + even gap between image and gold line (narrow / mobile base) */
    --mm-framed-photo-max: 420px;
    --mm-frame-gap: 14px;
  }
  @media (min-width: 901px) {
    :root {
      /* ~2× larger framed images on desktop */
      --mm-framed-photo-max: 840px;
    }
    .intro-img-wrap img {
      max-height: min(78vh, 880px);
    }
    /* Roth conversions: figures band = 80% viewport; image fills band (desktop only) */
    body.page-roth-conversions .page-wrap .container > .page-figures {
      width: 80vw;
      max-width: 80vw;
      position: relative;
      left: 50%;
      transform: translateX(-50%);
      align-items: stretch;
    }
    body.page-roth-conversions .page-wrap .container > .page-figures .page-figure.mm-framed-media {
      width: 100%;
      max-width: none;
      margin-left: 0;
      margin-right: 0;
    }
    body.page-roth-conversions .page-wrap .container > .page-figures .page-figure.mm-framed-media img {
      width: 100%;
      max-width: 100%;
      height: auto;
      max-height: none;
      object-fit: contain;
      object-position: top center;
    }
  }
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; }
  body {
    font-family: 'Jost', sans-serif;
    background: var(--navy);
    color: var(--white);
    overflow-x: hidden;
    cursor: none;
  }

  /* ── CURSOR ── */
  .cursor-dot {
    position: fixed; width: 8px; height: 8px;
    background: var(--gold); border-radius: 50%;
    pointer-events: none; z-index: 9999;
    transform: translate(-50%,-50%);
    transition: width .2s, height .2s, background .2s, opacity .2s;
  }
  .cursor-circle {
    position: fixed; width: 36px; height: 36px;
    border: 1.5px solid rgba(201,168,76,0.45);
    border-radius: 50%; pointer-events: none; z-index: 9998;
    transform: translate(-50%,-50%);
    transition: width .35s cubic-bezier(.16,1,.3,1), height .35s cubic-bezier(.16,1,.3,1),
                border-color .25s, background .25s, opacity .25s;
  }
  .cursor-dot.hover  { width:12px; height:12px; background:var(--gold-light); }
  .cursor-circle.hover { width:56px; height:56px; border-color:rgba(201,168,76,.85); }
  .cursor-dot.btn-hover { opacity:0; }
  .cursor-circle.btn-hover { width:72px; height:72px; background:rgba(201,168,76,.06); border-color:var(--gold); }

  /* ── LAYOUT ── */
  .container { max-width: 1200px; margin: 0 auto; padding: 0 48px; }
  @media(max-width:768px){ .container{ padding:0 24px; } }

  /* ── NOISE TEXTURE ── */
  body::before {
    content:''; position:fixed; inset:0; pointer-events:none; z-index:1;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
    opacity: 0.4;
  }

  /* ── NAVBAR ── */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
    background: rgba(13,27,42,0.92);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border-bottom: 1px solid rgba(201,168,76,0.1);
    transition: background .3s;
  }
  .nav-inner {
    display: flex; align-items: center; justify-content: space-between;
    height: 80px;
  }
  .nav-logo { flex: 0 0 auto; display: inline-flex; align-items: center; min-width: 0; }
  .nav-logo img { height: 56px; width: auto; max-width: none; object-fit: contain; display: block; }
  .nav-contact {
    display: flex; align-items: center; gap: 24px;
    font-size: .78rem; font-weight: 300; color: var(--muted);
  }
  .nav-contact a { color: var(--white); text-decoration: none; transition: color .2s; }
  .nav-contact a:hover { color: var(--gold); }
  .nav-cta {
    display: inline-flex; align-items: center;
    padding: 9px 26px;
    background: transparent;
    color: var(--gold);
    border: 1px solid rgba(201,168,76,0.55);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1rem; font-weight: 400; font-style: italic;
    letter-spacing: .05em; text-transform: none;
    text-decoration: none; cursor: none;
    transition: color .35s, border-color .35s, box-shadow .35s, background .35s;
  }
  .nav-cta:hover {
    background: var(--gold);
    color: var(--navy);
    border-color: var(--gold);
    box-shadow: 0 8px 28px rgba(201,168,76,.3);
  }

  /* ── NAV MENU ── */
  .nav-menu {
    display: flex; align-items: center; gap: 0;
    list-style: none; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase;
  }
  .nav-menu > li { position: relative; }
  .nav-menu > li > a {
    display: block; padding: 28px 16px;
    color: rgba(255,255,255,.7); text-decoration: none;
    transition: color .2s; white-space: nowrap;
  }
  .nav-menu > li > a:hover, .nav-menu > li:hover > a { color: var(--gold); }
  .nav-menu > li > a.active { color: var(--gold); }
  .mobile-nav-cta { display: none; }
  /* dropdown */
  .nav-dropdown {
    position: absolute; top: 100%; left: 0;
    background: rgba(13,27,42,0.97); border: 1px solid rgba(201,168,76,.12);
    min-width: 240px; list-style: none; padding: 8px 0;
    opacity: 0; pointer-events: none; transform: translateY(8px);
    transition: opacity .25s, transform .25s;
  }
  .nav-menu > li:hover .nav-dropdown { opacity: 1; pointer-events: all; transform: translateY(0); }
  .nav-dropdown li a {
    display: block; padding: 10px 20px;
    color: rgba(255,255,255,.6); font-size: .7rem; letter-spacing: .1em; text-transform: uppercase;
    text-decoration: none; transition: color .2s, background .2s;
  }
  .nav-dropdown li a:hover { color: var(--gold); background: rgba(201,168,76,.06); }
  .nav-dropdown li a.red-link { color: #e05c5c; }
  .nav-dropdown li a.red-link:hover { color: #ff7b7b; }

  /* ── MOBILE TOGGLE ── */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: none; padding: 10px;
    background: transparent; border: 1px solid rgba(255,255,255,.18); border-radius: 2px;
    appearance: none; -webkit-appearance: none; box-shadow: none;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: .3s; display: block; }
  @media(max-width:1180px){
    .phone-strip {
      position: relative !important;
      top: auto !important;
      left: auto !important;
      right: auto !important;
      margin-bottom: 0 !important;
    }
    nav {
      position: relative !important;
      top: 0 !important;
      margin-top: 0 !important;
      z-index: 1000;
    }
    .nav-inner { height: auto; min-height: 64px; padding: 12px 0; }
    .hamburger { display: flex; }
    .nav-menu-wrap {
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      background: var(--navy);
      padding: 16px 0 24px;
      border-bottom: 1px solid rgba(201,168,76,.1);
      display: block;
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      visibility: hidden;
      pointer-events: none;
      transform: translateY(-10px);
      transition:
        max-height .45s cubic-bezier(.16,1,.3,1),
        opacity .28s ease,
        transform .35s cubic-bezier(.16,1,.3,1),
        visibility 0s linear .45s;
    }
    .nav-menu-wrap.open {
      max-height: min(80vh, 720px);
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      overflow-y: auto;
      transform: translateY(0);
      transition:
        max-height .45s cubic-bezier(.16,1,.3,1),
        opacity .28s ease,
        transform .35s cubic-bezier(.16,1,.3,1),
        visibility 0s linear 0s;
    }
    .nav-menu { flex-direction: column; align-items: flex-start; padding: 0 24px; gap: 0; }
    .nav-menu > li > a { padding: 12px 0; }
    .nav-menu > li.has-mobile-dropdown > a {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 12px;
      width: 100%;
    }
    .nav-menu > li.has-mobile-dropdown > a .nav-caret {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--gold);
      font-size: .75rem;
      line-height: 1;
      transition: transform .35s cubic-bezier(.16,1,.3,1);
      transform-origin: center;
    }
    .nav-menu > li.has-mobile-dropdown.submenu-open > a .nav-caret { transform: rotate(180deg); }
    .nav-dropdown {
      position: static;
      opacity: 1;
      pointer-events: all;
      transform: none;
      border: none;
      background: transparent;
      padding: 0 0 0 16px;
      min-width: 0;
      display: block;
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      visibility: hidden;
      transition: max-height .4s cubic-bezier(.16,1,.3,1), opacity .25s ease, padding .25s ease;
    }
    .nav-menu > li.submenu-open .nav-dropdown {
      max-height: 420px;
      opacity: 1;
      visibility: visible;
      padding-top: 6px;
    }
    .nav-dropdown li a { padding: 10px 0; }
    .nav-contact { display: none; }
    .nav-cta { display: none; }
    .mobile-nav-cta {
      display: block;
      width: 100%;
      margin-top: 12px;
      padding-top: 16px;
      border-top: 1px solid rgba(201,168,76,.12);
    }
    .mobile-nav-cta > a {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      padding: 14px 20px !important;
      background: var(--gold);
      color: var(--navy) !important;
      border: 1px solid var(--gold);
      font-size: .72rem;
      font-weight: 600;
      letter-spacing: .14em;
      text-transform: uppercase;
    }
  }

  /* ── HERO ── */
  .hero {
    position: relative; min-height: 100vh;
    display: flex; align-items: center;
    overflow: hidden; padding-top: 72px;
  }
  .hero-bg {
    position: absolute; inset: 0;
    background:
      linear-gradient(135deg, rgba(13,27,42,0.97) 0%, rgba(13,27,42,0.82) 55%, rgba(13,27,42,0.65) 100%),
      url('https://images.unsplash.com/photo-1559526324-593bc073d938?w=1800&q=80') center/cover no-repeat;
  }
  .hero-bg::after {
    content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 200px;
    background: linear-gradient(to top, var(--navy), transparent);
  }
  /* subtle gold grid */
  .hero-grid {
    position: absolute; inset: 0; opacity: .03;
    background-image: linear-gradient(rgba(201,168,76,1) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(201,168,76,1) 1px, transparent 1px);
    background-size: 80px 80px;
  }
  .hero-content { position: relative; z-index: 2; max-width: 760px; }
  .hero-eyebrow {
    display: inline-flex; align-items: center; gap: 12px;
    font-size: .68rem; letter-spacing: .28em; text-transform: uppercase;
    color: var(--gold); margin-bottom: 28px;
    opacity: 0; animation: fadeUp .8s .3s forwards;
  }
  .hero-eyebrow::before { content: ''; width: 32px; height: 1px; background: var(--gold); }
  .hero-h1 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.8rem, 6vw, 5rem);
    font-weight: 300; line-height: 1.08; margin-bottom: 28px;
    opacity: 0; animation: fadeUp .9s .45s forwards;
  }
  .hero-h1 em { font-style: italic; color: var(--gold-light); }
  .hero-sub {
    font-size: 1rem; font-weight: 300; line-height: 1.85;
    color: rgba(255,255,255,.6); max-width: 540px; margin-bottom: 44px;
    opacity: 0; animation: fadeUp .9s .6s forwards;
  }
  .hero-btns {
    display: flex; flex-wrap: wrap; gap: 16px;
    opacity: 0; animation: fadeUp .9s .75s forwards;
  }

  /* ── BUTTONS ── */
  .btn-primary, .btn-ghost {
    position: relative; display: inline-flex; align-items: center; gap: 8px;
    padding: 14px 36px; font-size: .75rem; font-weight: 500;
    letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
    cursor: none; overflow: hidden; will-change: transform;
    transition: color .3s, box-shadow .35s, transform .45s cubic-bezier(.16,1,.3,1);
  }
  .btn-primary {
    background: var(--gold); color: var(--navy);
    border: none;
  }
  .btn-primary::before {
    content: ''; position: absolute; inset: 0;
    background: var(--gold-light); transform: scaleX(0); transform-origin: left;
    transition: transform .35s cubic-bezier(.16,1,.3,1); z-index: 0;
  }
  .btn-primary:hover::before { transform: scaleX(1); }
  .btn-primary:hover { box-shadow: 0 12px 36px rgba(201,168,76,.3); }
  .btn-primary span { position: relative; z-index: 1; }
  .btn-ghost {
    background: transparent; color: var(--white);
    border: 1px solid rgba(255,255,255,.25);
  }
  .btn-ghost::before {
    content: ''; position: absolute; inset: 0;
    background: rgba(255,255,255,.06); transform: scaleY(0); transform-origin: bottom;
    transition: transform .35s cubic-bezier(.16,1,.3,1);
  }
  .btn-ghost:hover::before { transform: scaleY(1); }
  .btn-ghost:hover { border-color: rgba(255,255,255,.6); }
  .btn-ghost span { position: relative; z-index: 1; }

  /* magnetic wrappers are handled by JS */
  .mag-wrap { display: inline-block; padding: 8px; }
  @keyframes scrollPulse { 0%,100%{transform:scaleY(1)} 50%{transform:scaleY(.6);opacity:.4} }

  /* ── STATS ── */
  .stats-bar {
    position: relative; z-index: 3;
    background: rgba(26,46,69,0.95);
    border-top: 1px solid rgba(201,168,76,.12);
    border-bottom: 1px solid rgba(201,168,76,.12);
  }
  .stats-inner {
    display: grid; grid-template-columns: repeat(3, 1fr);
  }
  .stat-item {
    padding: 36px 32px; text-align: center;
    border-right: 1px solid rgba(255,255,255,.06);
  }
  .stat-item:last-child { border-right: none; }
  .stat-num {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2.8rem; font-weight: 300;
    color: var(--gold-light); line-height: 1; display: block; margin-bottom: 8px;
  }
  .stat-label { font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }

  /* ── INTRO ── */
  .intro-section { padding: 110px 0 90px; }
  .intro-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: clamp(32px, 5vw, 80px);
  }
  .intro-fred-photo {
    flex: 0 0 auto;
    align-self: flex-start;
    max-width: min(100%, var(--mm-framed-photo-max));
    width: fit-content;
  }
  .intro-fred-copy {
    flex: 1 1 0;
    min-width: 0;
  }
  .intro-img-wrap {
    position: relative;
    padding-bottom: 24px;
  }
  /* Gold frame + corner square — hugs image width (not full viewport) */
  .mm-framed-media {
    position: relative;
    display: block;
    width: fit-content;
    max-width: min(100%, var(--mm-framed-photo-max));
    margin-left: 0;
    margin-right: auto;
  }
  .mm-framed-media::before {
    content: '';
    position: absolute;
    inset: calc(-1 * var(--mm-frame-gap));
    border: 1px solid rgba(201, 168, 76, 0.2);
    z-index: 0;
    pointer-events: none;
  }
  .mm-framed-media::after {
    content: '';
    position: absolute;
    bottom: calc(-4px - var(--mm-frame-gap));
    right: calc(-4px - var(--mm-frame-gap));
    width: 72px;
    height: 72px;
    background: var(--gold-dim);
    border: 1px solid var(--gold);
    z-index: 0;
    pointer-events: none;
  }
  .mm-framed-media img {
    position: relative;
    z-index: 1;
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
  }
  .intro-img-wrap img {
    max-height: min(72vh, 640px);
    object-fit: contain;
    object-position: top left;
    filter: grayscale(20%) contrast(1.05);
  }
  .intro-eyebrow { font-size: .68rem; letter-spacing: .25em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; display: flex; align-items: center; gap: 12px; }
  .intro-eyebrow::before { content: ''; width: 28px; height: 1px; background: var(--gold); }
  .intro-h { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.8rem,3vw,2.6rem); font-weight: 300; line-height: 1.15; margin-bottom: 20px; }
  .intro-h em { font-style: italic; color: var(--gold-light); }
  .intro-text { font-size: .88rem; font-weight: 300; line-height: 1.9; color: rgba(255,255,255,.5); margin-bottom: 16px; }
  .intro-bullets { list-style: none; margin: 24px 0 36px; }
  .intro-bullets li {
    display: flex; align-items: flex-start; gap: 12px;
    font-size: .83rem; font-weight: 300; color: rgba(255,255,255,.55);
    line-height: 1.7; margin-bottom: 10px;
  }
  .intro-bullets li::before { content: '—'; color: var(--gold); flex-shrink: 0; margin-top: 1px; }

  /* ── SERVICES / TILT CARDS ── */
  .services-section { padding: 80px 0 100px; background: rgba(8,16,26,0.7); }
  .section-head { margin-bottom: 56px; }
  .section-eyebrow { font-size: .68rem; letter-spacing: .25em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; display: flex; align-items: center; gap: 12px; }
  .section-eyebrow::before { content: ''; width: 28px; height: 1px; background: var(--gold); }
  .section-h { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.9rem,3.5vw,2.8rem); font-weight: 300; line-height: 1.1; margin-bottom: 14px; }
  .section-h em { font-style: italic; color: var(--gold-light); }
  .section-sub { font-size: .86rem; font-weight: 300; color: rgba(255,255,255,.4); line-height: 1.85; max-width: 500px; }
  .cards-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
  @media(max-width:900px){ .cards-grid{ grid-template-columns: repeat(2,1fr); } }
  @media(max-width:600px){ .cards-grid{ grid-template-columns: 1fr; } }

  .tilt-wrap { perspective: 900px; }
  .tilt-card {
    position: relative; background: var(--navy-mid);
    border: 1px solid rgba(255,255,255,.07);
    padding: 38px 30px 34px; overflow: hidden;
    transform-style: preserve-3d;
    transform: rotateX(0deg) rotateY(0deg);
    transition: transform .05s linear, box-shadow .3s; will-change: transform;
  }
  .tilt-card .sheen {
    position: absolute; inset: 0;
    background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.07) 0%, transparent 65%);
    opacity: 0; transition: opacity .3s; pointer-events: none; z-index: 0;
  }
  .tilt-wrap:hover .tilt-card .sheen { opacity: 1; }
  .tilt-card::after {
    content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
    background: var(--gold); transform: scaleX(0); transform-origin: left;
    transition: transform .45s cubic-bezier(.16,1,.3,1);
  }
  .tilt-wrap:hover .tilt-card::after { transform: scaleX(1); }
  .card-num {
    position: absolute; top: 20px; right: 20px;
    font-family: 'Cormorant Garamond', serif; font-size: 3rem; font-weight: 300;
    color: rgba(255,255,255,.04); line-height: 1; transition: color .3s;
  }
  .tilt-wrap:hover .card-num { color: rgba(201,168,76,.09); }
  .card-icon { font-size: 1.8rem; margin-bottom: 18px; display: inline-block; transform: translateZ(20px); }
  .card-title { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; color: var(--white); margin-bottom: 10px; transform: translateZ(15px); position: relative; z-index: 1; }
  .card-desc { font-size: .8rem; font-weight: 300; line-height: 1.8; color: rgba(255,255,255,.38); position: relative; z-index: 1; }
  .card-link {
    display: inline-flex; align-items: center; gap: 8px; margin-top: 20px;
    font-size: .68rem; letter-spacing: .15em; text-transform: uppercase;
    color: var(--gold); text-decoration: none; opacity: 0;
    transform: translateX(-8px) translateZ(12px); transition: opacity .3s, transform .3s;
    position: relative; z-index: 1;
  }
  .tilt-wrap:hover .card-link { opacity: 1; transform: translateX(0) translateZ(12px); }
  .card-link .arrow { transition: transform .3s; }
  .card-link:hover .arrow { transform: translateX(4px); }

  /* ── PODCAST SECTION ── */
  .podcast-section { padding: 100px 0; }
  .podcast-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
  @media(max-width:900px){
    .podcast-grid { grid-template-columns: 1fr; gap: 48px; }
    .intro-grid {
      flex-direction: column;
      align-items: flex-start;
      gap: 48px;
    }
    /* Fred portrait: edge-to-edge on small screens */
    .intro-fred-photo {
      flex: 0 0 auto;
      width: 100vw;
      max-width: 100vw;
      margin-left: calc(50% - 50vw);
      margin-right: calc(50% - 50vw);
    }
    .intro-fred-photo .intro-img-wrap,
    .intro-fred-photo .mm-framed-media {
      max-width: none;
      width: 100%;
    }
    .intro-fred-photo .intro-img-wrap img {
      width: 100%;
      max-width: none;
    }
    .intro-fred-copy {
      align-self: stretch;
      width: 100%;
      max-width: 100%;
    }
    /* Podcast art: full viewport width */
    .podcast-section .podcast-grid > .reveal.d2 > .mm-framed-media {
      width: 100vw;
      max-width: 100vw;
      margin-left: calc(50% - 50vw);
      margin-right: calc(50% - 50vw);
    }
    .podcast-section .podcast-grid > .reveal.d2 .podcast-img {
      width: 100%;
      max-width: none;
    }
    .podcast-section .podcast-grid > .reveal.d2 .podcast-img img {
      width: 100%;
      max-width: none;
    }
  }
  .podcast-section .mm-framed-media {
    max-width: min(100%, var(--mm-framed-photo-max));
  }
  .podcast-img {
    position: relative;
    overflow: hidden;
    width: fit-content;
    max-width: 100%;
  }
  .podcast-img img {
    width: auto;
    max-width: min(100%, var(--mm-framed-photo-max));
    height: auto;
    display: block;
    filter: grayscale(15%);
  }
  .podcast-img::before {
    content: '▶'; position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 3rem; color: var(--gold); background: rgba(13,27,42,.4);
    opacity: 0; transition: opacity .3s; cursor: none;
    z-index: 2;
  }
  .podcast-img:hover::before { opacity: 1; }
  .podcast-badge {
    position: absolute; top: 20px; left: 20px; z-index: 3;
    background: var(--gold); color: var(--navy);
    font-size: .62rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase;
    padding: 6px 14px;
  }
  .podcast-list { list-style: none; margin: 28px 0 36px; }
  .podcast-list li {
    display: flex; align-items: flex-start; gap: 12px;
    font-size: .83rem; font-weight: 300; color: rgba(255,255,255,.5);
    line-height: 1.7; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.05);
  }
  .podcast-list li::before { content: '◆'; color: var(--gold); font-size: .5rem; margin-top: 5px; flex-shrink: 0; }

  /* ── VIDEO / INTERVIEW ── */
  .video-section {
    padding: 80px 0 100px;
    background: linear-gradient(180deg, rgba(8,16,26,0.8) 0%, var(--navy) 100%);
  }
  .video-card {
    position: relative; overflow: hidden;
    background: var(--navy-mid); border: 1px solid rgba(201,168,76,.12);
    display: grid; grid-template-columns: 1fr 1fr; min-height: 360px;
  }
  @media(max-width:768px){ .video-card { grid-template-columns: 1fr; } }
  .video-embed-wrap {
    position: relative; overflow: hidden; min-height: 300px;
  }
  .video-lazy {
    position: absolute; inset: 0;
    background: center/cover no-repeat;
    display: flex; align-items: center; justify-content: center;
    cursor: none;
  }
  .video-lazy::before {
    content: ''; position: absolute; inset: 0;
    background: rgba(13,27,42,.4);
    transition: background .3s;
  }
  .video-lazy:hover::before { background: rgba(13,27,42,.25); }
  .video-lazy iframe {
    position: absolute; inset: 0; width: 100%; height: 100%; border: none; z-index: 2;
  }
  .play-circle {
    position: relative; z-index: 1;
    width: 72px; height: 72px; border-radius: 50%;
    border: 2px solid var(--gold); display: flex; align-items: center; justify-content: center;
    font-size: 1.4rem; color: var(--gold);
    background: rgba(201,168,76,.1); cursor: none;
    transition: background .3s, box-shadow .3s, transform .3s;
    outline: none;
  }
  .play-circle:hover { background: rgba(201,168,76,.22); box-shadow: 0 0 48px rgba(201,168,76,.3); transform: scale(1.08); }
  .video-content { padding: 48px 44px; display: flex; flex-direction: column; justify-content: center; }
  .video-tag {
    font-size: .65rem; letter-spacing: .22em; text-transform: uppercase;
    color: var(--gold); margin-bottom: 16px;
  }
  .video-h { font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; font-weight: 300; line-height: 1.25; margin-bottom: 16px; }
  .video-text { font-size: .82rem; font-weight: 300; line-height: 1.85; color: var(--muted); margin-bottom: 24px; }
  .video-link {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: .7rem; letter-spacing: .14em; text-transform: uppercase;
    color: var(--gold); text-decoration: none; transition: gap .25s;
  }
  .video-link:hover { gap: 14px; }
  .video-bullets {
    list-style: none; margin: 12px 0 0;
  }
  .video-bullets li {
    display: flex; align-items: flex-start; gap: 10px;
    font-size: .8rem; font-weight: 300; color: rgba(255,255,255,.48);
    line-height: 1.75; padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.04);
  }
  .video-bullets li::before { content: '◆'; color: var(--gold); font-size: .45rem; margin-top: 6px; flex-shrink: 0; }

  /* ── CTA STRIP ── */
  .cta-strip {
    padding: 80px 0;
    background: linear-gradient(135deg, rgba(201,168,76,0.08) 0%, rgba(26,46,69,0.6) 100%);
    border-top: 1px solid rgba(201,168,76,.15);
    border-bottom: 1px solid rgba(201,168,76,.15);
  }
  .cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; flex-wrap: wrap; }
  .cta-text .label { font-size: .68rem; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); margin-bottom: 12px; }
  .cta-text h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.6rem,3vw,2.4rem); font-weight: 300; }
  .cta-text h2 em { font-style: italic; color: var(--gold-light); }
  .cta-btns { display: flex; gap: 16px; flex-wrap: wrap; }

  /* ── FOOTER ── */
  footer {
    background: #060d15;
    border-top: 1px solid rgba(201,168,76,.1);
    padding: 60px 0 36px;
  }
  .footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
  @media(max-width:900px){ .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }
  @media(max-width:600px){
    .footer-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 28px 20px;
      align-items: start;
    }
    .footer-brand {
      grid-column: 1 / -1;
      text-align: center;
    }
    .footer-brand p {
      max-width: 520px;
      margin: 0 auto;
    }
    .footer-brand img {
      margin-left: auto;
      margin-right: auto;
    }
    .footer-addresses {
      text-align: center;
    }
    .footer-col {
      text-align: center;
    }
    .social-links {
      justify-content: center;
    }
    .footer-bottom {
      text-align: center;
      justify-content: center;
    }
    .footer-copy {
      max-width: none;
    }
  }
  @media(max-width:420px){ .footer-grid { grid-template-columns: 1fr; } }
  .footer-brand img { height: 40px; margin-bottom: 16px; }
  .footer-brand p { font-size: .78rem; font-weight: 300; line-height: 1.8; color: rgba(255,255,255,.3); max-width: 260px; }
  .footer-addresses { margin-top: 12px; font-size: .75rem; color: rgba(255,255,255,.25); line-height: 1.8; }
  .footer-addresses strong { color: rgba(255,255,255,.4); }
  .footer-col h4 { font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; }
  .footer-col ul { list-style: none; }
  .footer-col ul li { margin-bottom: 8px; }
  .footer-col ul li a {
    font-size: .78rem; font-weight: 300; color: rgba(255,255,255,.35);
    text-decoration: none; transition: color .2s;
  }
  .footer-col ul li a:hover { color: var(--gold); }
  .footer-col ul li a.red-link { color: rgba(224,92,92,.6); }
  .footer-col ul li a.red-link:hover { color: #ff7b7b; }
  .social-links { display: flex; gap: 12px; margin-top: 20px; }
  .social-link {
    width: 36px; height: 36px; border: 1px solid rgba(201,168,76,.25);
    display: flex; align-items: center; justify-content: center;
    font-size: .8rem; color: var(--gold); text-decoration: none;
    transition: background .25s, border-color .25s; cursor: none;
  }
  .social-link:hover { background: rgba(201,168,76,.12); border-color: var(--gold); }
  .footer-bottom {
    padding-top: 28px; border-top: 1px solid rgba(255,255,255,.05);
    display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 16px;
  }
  .footer-copy { font-size: .72rem; font-weight: 300; color: rgba(255,255,255,.2); line-height: 1.7; max-width: 700px; }
  .footer-copy a { color: rgba(201,168,76,.5); text-decoration: none; }
  .footer-copy a:hover { color: var(--gold); }
  .footer-rights { font-size: .72rem; color: rgba(255,255,255,.2); white-space: nowrap; }

  /* ── PHONE STRIP ── */
  .phone-strip {
    background: var(--navy-mid); border-bottom: 1px solid rgba(201,168,76,.1);
    padding: 10px 0;
  }
  .phone-inner { display: flex; align-items: center; justify-content: flex-end; gap: 32px; }
  .phone-inner a { font-size: .72rem; font-weight: 300; color: rgba(255,255,255,.5); text-decoration: none; transition: color .2s; }
  .phone-inner a:hover { color: var(--gold); }
  .phone-sep { color: rgba(255,255,255,.15); }

  /* ── RESPONSIVE ── */
  img { max-width: 100%; height: auto; }

  @media(min-width:901px){
    nav { top: 38px; }
    .hero { margin-top: 38px; }
  }

  @media (hover: none), (pointer: coarse) {
    body,
    .btn-primary,
    .btn-ghost,
    .nav-cta,
    .hamburger,
    .play-circle,
    .video-lazy,
    .social-link,
    .phc-search-wrap button,
    #resultsBody > div,
    .strategy-nav button,
    .strategy-dot-active,
    .strategy-dot-inactive {
      cursor: auto;
    }

    .cursor-dot,
    .cursor-circle {
      display: none;
    }

    .tilt-card {
      transform: none !important;
    }

    .card-link {
      opacity: 1;
      transform: none;
    }
  }

  @media(max-width:1100px){
    .nav-cta { display: none; }
    .phone-inner { justify-content: center; gap: 20px; }
    .intro-grid,
    .podcast-grid { gap: 56px; }
    .video-content { padding: 40px 32px; }
    #briefingCard,
    #strategyCard { padding: 32px 28px; }
  }

  @media(max-width:900px){
    .hero { margin-top: 0 !important; min-height: auto; padding: 72px 0 88px; }
    .stats-inner { grid-template-columns: 1fr; }
    .stat-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,.06); }
    .stat-item:last-child { border-bottom: none; }
    .intro-section,
    .services-section,
    .podcast-section,
    .video-section,
    .cta-strip,
    #market-intelligence,
    #plan-health-check { padding-top: 72px; padding-bottom: 72px; }
    .phone-inner {
      flex-wrap: wrap;
      justify-content: center;
      gap: 10px 18px;
      text-align: center;
    }
    .phone-sep { display: none; }
    .btn-primary,
    .btn-ghost { padding: 14px 24px; }
    .mi-head,
    .strategy-slide-header,
    .strategy-title-group { gap: 14px; }
    .strategy-slide-header { flex-direction: column; }
    .strategy-nav { align-self: flex-start; }
    .phc-search-wrap { flex-direction: column; }
    .phc-search-wrap button {
      width: 100%;
      justify-content: center;
    }
  }

  @media(max-width:640px){
    .container,
    #market-intelligence > div,
    #plan-health-check > div { padding: 0 18px; }
    .hero { margin-top: 0 !important; padding: 56px 0 72px; }
    .nav-inner { min-height: 56px; padding: 10px 0; }
    .nav-logo img { height: 36px; }
    .hero-content,
    .hero-sub,
    .section-sub,
    .phc-head p,
    .footer-copy,
    .footer-brand p { max-width: none; }
    .hero-eyebrow,
    .intro-eyebrow,
    .section-eyebrow,
    .mi-head-left span:first-child { letter-spacing: .18em; }
    .hero-btns,
    .cta-btns { flex-direction: column; align-items: stretch; }
    .mag-wrap { width: 100%; padding: 0; }
    .mag-wrap .btn-primary,
    .mag-wrap .btn-ghost,
    .cta-btns .btn-primary,
    .cta-btns .btn-ghost {
      width: 100%;
      justify-content: center;
    }
    .mm-framed-media::before,
    .mm-framed-media::after { display: none; }
    .tilt-card { padding: 30px 22px 28px; }
    .card-num { font-size: 2.2rem; top: 16px; right: 16px; }
    .video-content,
    #briefingCard,
    #strategyCard { padding: 24px 20px; }
    .podcast-badge { left: 12px; top: 12px; }
    .briefing-header,
    .mi-head,
    .strategy-plan-header { gap: 10px; }
    .strategy-title-group { align-items: flex-start; }
    #planName,
    #strategyTitle { font-size: 1.2rem; }
    #searchInput,
    .phc-search-wrap button,
    #resultsBody > div,
    #noResults { padding-left: 16px; padding-right: 16px; }
    .footer-bottom { flex-direction: column; }
    .footer-rights { white-space: normal; }
  }

  @media(max-width:1280px){
    #aai-nudge {
      display: none !important;
    }
    #aai-launcher-wrap {
      right: 16px !important;
      bottom: 16px !important;
      left: auto !important;
      top: auto !important;
    }
    #aai-launcher-btn {
      width: 64px !important;
      min-width: 64px !important;
      height: 64px !important;
      padding: 0 !important;
      gap: 0 !important;
      border-radius: 9999px !important;
      justify-content: center !important;
    }
    #aai-launcher-btn > div:first-child {
      display: none !important;
    }
    #aai-panel {
      right: 16px !important;
      left: 16px !important;
      bottom: 96px !important;
      top: auto !important;
      width: auto !important;
      max-width: none !important;
      max-height: calc(100vh - 112px) !important;
    }
  }

  /* ── REVEAL ANIMATIONS ──
     Content stays visible without JS (production CSP / errors used to leave .reveal at opacity:0 forever). */
  .reveal { opacity: 1; transform: translateY(0); transition: opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1); }
  .reveal.visible { opacity: 1; transform: translateY(0); }
  .d1{transition-delay:.1s} .d2{transition-delay:.2s} .d3{transition-delay:.3s} .d4{transition-delay:.4s}


  /* ── HERO RISING BARS CANVAS ── */
  #hero-canvas {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    pointer-events: none; z-index: 1;
    opacity: 0; animation: canvasFadeIn 3s 1s forwards;
  }
  @keyframes canvasFadeIn { from{opacity:0} to{opacity:1} }

  /* ── STAT COUNTER ── */
  .stat-num[data-target] {
    transition: color .3s;
  }

  @keyframes fadeUp { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }

  .divider { height: 1px; background: rgba(255,255,255,.05); }

  /* ══════════════════════════════════════════════
     WIDGETS — Market Intelligence & Plan Health
  ══════════════════════════════════════════════ */

  /* ── MARKET INTELLIGENCE ── */
  #market-intelligence {
    padding: 100px 0 80px;
    background: linear-gradient(180deg, var(--navy) 0%, rgba(8,16,26,0.9) 100%);
    position: relative;
  }
  #market-intelligence > div { max-width: 1200px; margin: 0 auto; padding: 0 48px; }
  @media(max-width:768px){ #market-intelligence > div { padding: 0 24px; } }

  .mi-head { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 20px; margin-bottom: 48px; }
  .mi-head-left span:first-child {
    display: block; font-size: .65rem; letter-spacing: .28em; text-transform: uppercase;
    color: var(--gold); margin-bottom: 12px;
    display: flex; align-items: center; gap: 10px;
  }
  .mi-head-left span:first-child::before { content: ''; width: 28px; height: 1px; background: var(--gold); display: inline-block; }
  .mi-head-left h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.6rem,3vw,2.4rem); font-weight: 300; line-height: 1.15; }
  .mi-head-left h2 em { font-style: italic; color: var(--gold-light); }
  .mi-ai-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(201,168,76,.08); border: 1px solid rgba(201,168,76,.25);
    padding: 8px 16px; font-size: .68rem; letter-spacing: .15em; text-transform: uppercase; color: var(--gold);
  }
  .mi-ai-badge::before { content: '◆'; font-size: .5rem; animation: pulseDot 2s ease-in-out infinite; }
  @keyframes pulseDot { 0%,100%{opacity:1} 50%{opacity:.3} }

  /* Briefing card */
  #briefingCard {
    background: rgba(201,168,76,.05);
    border: 1px solid rgba(201,168,76,.18);
    padding: 36px 40px; margin-bottom: 40px;
    position: relative; overflow: hidden;
  }
  #briefingCard::before {
    content: 'AI'; position: absolute; top: -12px; right: 24px;
    font-family: 'Cormorant Garamond', serif; font-size: 6rem; font-weight: 300;
    color: rgba(201,168,76,.04); line-height: 1; pointer-events: none;
  }
  .briefing-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; flex-wrap: wrap; gap: 12px; }
  .briefing-header h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; font-weight: 400; color: var(--gold-light); }
  #briefingDate { font-size: .68rem; letter-spacing: .15em; color: rgba(255,255,255,.3); text-transform: uppercase; }
  #briefingCard > p { font-size: .78rem; color: rgba(255,255,255,.35); margin-bottom: 24px; font-style: italic; }
  .briefing-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
  @media(max-width:700px){ .briefing-cols { grid-template-columns: 1fr; } }
  .briefing-cols h4 { font-size: .65rem; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); margin-bottom: 10px; }
  #keyTakeaways { font-size: .82rem; font-weight: 300; line-height: 1.8; color: rgba(255,255,255,.55); }
  #actionItems { list-style: none; padding: 0; }
  #actionItems li {
    display: flex; align-items: flex-start; gap: 10px;
    font-size: .8rem; font-weight: 300; line-height: 1.75; color: rgba(255,255,255,.5);
    padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,.04);
  }
  #actionItems li::before { content: '→'; color: var(--gold); flex-shrink: 0; margin-top: 1px; }

  /* News grid */
  #newsGrid {
    display: grid; grid-template-columns: repeat(3,1fr); gap: 2px;
  }
  @media(max-width:900px){ #newsGrid { grid-template-columns: repeat(2,1fr); } }
  @media(max-width:600px){ #newsGrid { grid-template-columns: 1fr; } }
  #newsGrid > div {
    background: rgba(26,46,69,0.6);
    border: 1px solid rgba(255,255,255,.05);
    padding: 28px 26px;
    transition: background .3s, border-color .3s;
    display: flex; flex-direction: column;
  }
  #newsGrid > div:hover { background: rgba(26,46,69,0.9); border-color: rgba(201,168,76,.15); }
  #newsGrid h4 {
    font-family: 'Cormorant Garamond', serif; font-size: 1rem; font-weight: 400;
    line-height: 1.35; color: var(--white); margin-bottom: 10px;
  }
  #newsGrid p {
    font-size: .78rem; font-weight: 300; line-height: 1.75; color: rgba(255,255,255,.38);
    flex: 1; margin-bottom: 16px;
  }
  #newsGrid a {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: .65rem; letter-spacing: .15em; text-transform: uppercase;
    color: var(--gold); text-decoration: none; transition: gap .25s;
    margin-top: auto;
  }
  #newsGrid a:hover { gap: 10px; }
  #newsGrid a::after { content: '→'; }

  /* ── PLAN HEALTH CHECK ── */
  #plan-health-check {
    padding: 100px 0 110px;
    background: #080f1a;
    border-top: 1px solid rgba(201,168,76,.08);
  }
  #plan-health-check > div { max-width: 1200px; margin: 0 auto; padding: 0 48px; }
  @media(max-width:768px){ #plan-health-check > div { padding: 0 24px; } }

  .phc-head { margin-bottom: 44px; }
  #plan-health-check h2 {
    font-family: 'Cormorant Garamond', serif; font-size: clamp(1.8rem,3vw,2.6rem);
    font-weight: 300; line-height: 1.12; margin-bottom: 12px;
  }
  #plan-health-check h2 em { font-style: italic; color: var(--gold-light); }
  .phc-head p { font-size: .86rem; font-weight: 300; line-height: 1.8; color: rgba(255,255,255,.4); max-width: 520px; }

  /* Search bar */
  .phc-search-wrap {
    display: flex; gap: 0; margin-bottom: 28px;
    border: 1px solid rgba(201,168,76,.2);
    transition: border-color .3s;
  }
  .phc-search-wrap:focus-within { border-color: rgba(201,168,76,.6); }
  #searchInput {
    flex: 1; background: rgba(26,46,69,.5); border: none; outline: none;
    padding: 16px 22px; font-family: 'Jost', sans-serif;
    font-size: .85rem; font-weight: 300; color: var(--white);
    letter-spacing: .03em;
  }
  #searchInput::placeholder { color: rgba(255,255,255,.25); }
  .phc-search-wrap button {
    background: var(--gold); border: none; padding: 16px 32px;
    font-family: 'Jost', sans-serif; font-size: .72rem; font-weight: 500;
    letter-spacing: .14em; text-transform: uppercase; color: var(--navy);
    cursor: none; display: flex; align-items: center; gap: 10px;
    transition: background .3s;
  }
  .phc-search-wrap button:hover { background: var(--gold-light); }

  /* Loading spinner */
  #loading {
    width: 16px; height: 16px; border: 2px solid rgba(13,27,42,.3);
    border-top-color: var(--navy); border-radius: 50%;
    animation: spin .7s linear infinite;
  }
  @keyframes spin { to { transform: rotate(360deg); } }

  /* Results dropdown */
  #resultsArea {
    background: rgba(13,27,42,.97); border: 1px solid rgba(201,168,76,.15);
    margin-top: -1px; max-height: 280px; overflow-y: auto;
  }
  #resultsBody > div {
    padding: 13px 22px; font-size: .82rem; font-weight: 300; color: rgba(255,255,255,.65);
    border-bottom: 1px solid rgba(255,255,255,.04); cursor: none;
    transition: background .2s, color .2s;
  }
  #resultsBody > div:hover { background: rgba(201,168,76,.07); color: var(--gold); }
  #noResults { padding: 16px 22px; font-size: .8rem; color: rgba(255,255,255,.3); font-style: italic; }
  #errorMsg {
    padding: 12px 20px; background: rgba(139,46,36,.12);
    border: 1px solid rgba(139,46,36,.25); color: #e08070;
    font-size: .78rem; margin-top: 12px;
  }

  /* Strategy section */
  #strategySection { margin-top: 56px; }
  .strategy-plan-header { margin-bottom: 28px; }
  #planName {
    font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 400;
    color: var(--white); margin-bottom: 4px;
  }
  #sponsorName { font-size: .78rem; font-weight: 300; color: rgba(255,255,255,.4); }

  .strategy-inner { display: grid; grid-template-columns: 1fr 48px; gap: 24px; align-items: start; }
  @media(max-width:600px){ .strategy-inner { grid-template-columns: 1fr; } }

  #strategyCard {
    border: 1px solid rgba(255,255,255,.07);
    padding: 36px 40px;
    transition: background-color .4s;
    position: relative; overflow: hidden;
    min-height: 280px;
  }
  #strategyCard::before {
    content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
    background: var(--gold); transform: scaleX(0); transform-origin: left;
    transition: transform .6s cubic-bezier(.16,1,.3,1);
  }
  #strategySection:not([hidden]) #strategyCard::before { transform: scaleX(1); }

  #strategyLoader { padding: 48px 0; text-align: center; }
  #strategyLoader p {
    font-size: .78rem; letter-spacing: .2em; text-transform: uppercase;
    color: rgba(255,255,255,.3);
    display: flex; align-items: center; justify-content: center; gap: 12px;
  }
  #strategyLoader p::before {
    content: ''; width: 18px; height: 18px; border: 1.5px solid rgba(201,168,76,.3);
    border-top-color: var(--gold); border-radius: 50%; animation: spin .8s linear infinite;
    flex-shrink: 0;
  }

  .strategy-slide-header { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 20px; gap: 16px; }
  .strategy-title-group { display: flex; align-items: center; gap: 14px; }
  #strategyIcon { font-size: 1.6rem; flex-shrink: 0; }
  #strategyTitle { font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; font-weight: 400; margin-bottom: 2px; }
  #strategySubtitle { font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; color: var(--gold); }

  .strategy-nav { display: flex; gap: 8px; flex-shrink: 0; }
  .strategy-nav button {
    width: 36px; height: 36px; background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.5);
    font-size: .9rem; cursor: none; transition: background .2s, color .2s, border-color .2s;
  }
  .strategy-nav button:hover { background: rgba(201,168,76,.1); border-color: rgba(201,168,76,.4); color: var(--gold); }

  #strategyIntro { font-size: .8rem; font-style: italic; color: rgba(255,255,255,.35); margin-bottom: 18px; }
  #strategyList { list-style: none; padding: 0; margin-bottom: 24px; }
  #strategyList li {
    display: flex; align-items: flex-start; gap: 12px;
    font-size: .83rem; font-weight: 300; line-height: 1.75; color: rgba(255,255,255,.6);
    padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.05);
  }
  .strategy-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; margin-top: 7px; }
  .strategy-dot-green  { background: #5a9e6f; }
  .strategy-dot-orange { background: #c98a40; }
  .strategy-dot-blue   { background: #5080a8; }

  #strategyPagination {
    font-size: .65rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.25);
  }

  /* Dots nav sidebar */
  #strategyDots {
    display: flex; flex-direction: column; gap: 10px; padding-top: 40px;
    align-items: center;
  }
  @media(max-width:600px){ #strategyDots { flex-direction: row; padding-top: 0; justify-content: center; } }
  .strategy-dot-active {
    width: 8px; height: 32px; border-radius: 4px; background: var(--gold);
    cursor: none; transition: height .3s, background .3s;
  }
  .strategy-dot-inactive {
    width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.15);
    cursor: none; transition: height .3s, background .3s;
  }
  .strategy-dot-inactive:hover { background: rgba(201,168,76,.4); }
  @media(max-width:600px){
    .strategy-dot-active  { width: 32px; height: 8px; border-radius: 4px; }
    .strategy-dot-inactive { width: 8px;  height: 8px; }
  }

  /* ── INNER PAGES ── */
  .page-wrap { padding: 120px 0 100px; min-height: 55vh; }
  @media(max-width:1180px){ .page-wrap { padding-top: 100px; } }
  .page-hero {
    margin-bottom: 48px;
    padding-bottom: 32px;
    border-bottom: 1px solid rgba(201,168,76,.15);
  }
  .page-hero h1 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 300;
    line-height: 1.15;
    margin-bottom: 12px;
  }
  .page-hero .page-deck {
    font-size: .88rem;
    font-weight: 300;
    color: rgba(255,255,255,.45);
    max-width: 640px;
    line-height: 1.7;
  }
  .page-prose .page-callout {
    margin: 1.75rem 0;
    padding: 1.25rem 1.35rem;
    border-left: 3px solid var(--gold);
    background: rgba(201,168,76,0.07);
    font-size: 0.88rem;
    line-height: 1.75;
    color: rgba(255,255,255,0.62);
  }
  .page-prose .page-callout strong { color: var(--gold-light); font-weight: 500; }

  .page-prose .page-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin: 0 0 2.25rem;
    list-style: none;
    padding: 0;
  }
  @media (max-width: 900px) {
    .page-prose .page-stats { grid-template-columns: 1fr; }
  }
  .page-prose .page-stat {
    border: 1px solid rgba(201,168,76,.18);
    background: rgba(8,16,26,0.55);
    padding: 1.1rem 1.2rem;
  }
  .page-prose .page-stat-num {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.75rem, 4vw, 2.35rem);
    font-weight: 400;
    color: var(--gold);
    line-height: 1.1;
    margin-bottom: 0.5rem;
  }
  .page-prose .page-stat-num.is-red { color: #d67a7a; }
  .page-prose .page-stat-num.is-green { color: #7bc99a; }
  .page-prose .page-stat p { margin: 0; font-size: 0.86rem; color: rgba(255,255,255,0.52); }
  .page-prose .page-stat p strong { color: rgba(255,255,255,0.88); }

  .page-prose table.page-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.35rem 0 1.75rem;
    font-size: 0.82rem;
  }
  .page-prose table.page-table th,
  .page-prose table.page-table td {
    border: 1px solid rgba(201,168,76,.14);
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
  }
  .page-prose table.page-table th {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 500;
    color: var(--gold-light);
    background: rgba(8,16,26,0.45);
  }
  .page-prose table.page-table tbody tr:nth-child(even) td { background: rgba(255,255,255,0.02); }

  .page-prose {
    max-width: 760px;
    font-size: .9rem;
    font-weight: 300;
    line-height: 1.9;
    color: rgba(255,255,255,.58);
  }
  .page-prose h2, .page-prose h3, .page-prose h4 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    color: var(--white);
    margin: 2rem 0 1rem;
    line-height: 1.25;
  }
  .page-prose h2 { font-size: 1.75rem; }
  .page-prose h3 { font-size: 1.35rem; color: var(--gold-light); }
  .page-prose h4 { font-size: 1.1rem; }
  .page-prose p { margin-bottom: 1.1rem; }
  .page-prose ul { margin: 0 0 1.25rem 1.2rem; }
  .page-prose li { margin-bottom: .5rem; }
  .page-prose a { color: var(--gold); text-decoration: none; border-bottom: 1px solid rgba(201,168,76,.35); }
  .page-prose a:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }
  /* CTA buttons inside prose: must not inherit gold link color (invisible on gold background). */
  .page-prose a.btn-primary,
  .page-prose a.btn-primary:hover {
    color: var(--navy);
    border-bottom: none;
  }
  .page-prose a.btn-ghost,
  .page-prose a.btn-ghost:hover {
    color: var(--white);
    border-bottom: none;
  }
  .page-prose hr { border: none; border-top: 1px solid rgba(255,255,255,.08); margin: 2rem 0; }
  .page-cta-row { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 2rem; }

  .page-figures {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
    margin: 0 0 40px;
  }
  .page-figure {
    margin: 0;
    padding-bottom: 24px;
    overflow: visible;
    background: transparent;
    border: none;
    width: fit-content;
    max-width: min(100%, var(--mm-framed-photo-max));
  }
  .page-figure img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(56vh, 480px);
    object-fit: contain;
    object-position: top left;
    display: block;
    filter: grayscale(20%) contrast(1.05);
  }
  @media (max-width: 900px) {
    .page-figures {
      align-items: stretch;
      width: 100vw;
      max-width: 100vw;
      margin-left: calc(50% - 50vw);
      margin-right: calc(50% - 50vw);
      padding-left: 0;
      padding-right: 0;
    }
    .page-figures .page-figure,
    .page-figures .page-figure.mm-framed-media {
      width: 100%;
      max-width: none;
      margin-left: 0;
      margin-right: 0;
    }
    .page-figures .page-figure img {
      width: 100%;
      max-width: none;
      max-height: min(88vh, 900px);
      object-fit: contain;
      object-position: top center;
    }
  }
