/* Paper Story design system for the AE router + /income funnel spine.
   Ported from the Heath-approved preview pages (funnel plan deck,
   2026-08-07): preview-router-start.html and preview-income-funnel.html.
   Ink navy structural surfaces, parchment paper
   artifacts, electric blue accents, Archivo display type.
   Scope: pages that opt in with body.ae-paper. The live booking + legacy form
   surfaces keep assets/css/funnel.css untouched. */

:root{
  --pp-navy:#0C2340; --pp-navy-2:#123457; --pp-navy-3:#1A3A63;
  --pp-ink:#0C2340; --pp-ink-2:#3D4A5C; --pp-muted:#57637A;
  --pp-blue:#2F6BF0; --pp-blue-deep:#1D4ED8; --pp-blue-soft:#8FB0F5; --pp-blue-100:#E9EFFE;
  --pp-parchment:#EEE4CF; --pp-parchment-line:#DCCFAF; --pp-parchment-deep:#E3D6B8;
  --pp-paper:#FBF9F4; --pp-paper-panel:#F4EFE3; --pp-white:#FFFFFF;
  --pp-line:#E3E0D3; --pp-line-2:#D8CFB6;
  --pp-display:"Archivo",system-ui,sans-serif;
  --pp-body:"Public Sans",system-ui,sans-serif;
  --pp-mono:"IBM Plex Mono",monospace;
  --pp-wrap:1180px; --pp-gut:clamp(1.2rem,.6rem + 2.4vw,2.8rem);
  --pp-sec:clamp(3.2rem,2.1rem + 4.6vw,6rem);
  --pp-r:16px; --pp-r-lg:24px;
  --pp-ease:cubic-bezier(.2,.7,.2,1);
}
.ae-paper *,.ae-paper *::before,.ae-paper *::after{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body.ae-paper{margin:0; background:var(--pp-paper); color:var(--pp-ink); font-family:var(--pp-body); font-size:1.125rem; line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden}
.ae-paper h1,.ae-paper h2,.ae-paper h3{font-family:var(--pp-display); font-weight:800; line-height:1.08; letter-spacing:-.02em; margin:0; color:var(--pp-navy)}
.ae-paper p{margin:0}
.ae-paper ul,.ae-paper ol{margin:0; padding:0; list-style:none}
.ae-paper img,.ae-paper svg{display:block; max-width:100%}
.ae-paper a{color:var(--pp-blue-deep)}
.ae-paper button{font-family:inherit}
.ae-paper :focus-visible{outline:3px solid var(--pp-blue); outline-offset:3px; border-radius:6px}
.ae-paper .wrap{width:min(100% - 2*var(--pp-gut), var(--pp-wrap)); margin-inline:auto}
.ae-paper .eyebrow{font-family:var(--pp-mono); font-size:.8rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--pp-blue-deep)}
.ae-paper .eyebrow.light{color:var(--pp-blue-soft)}
.ae-paper .section{padding:var(--pp-sec) 0}
.ae-paper .section-head{max-width:60ch; margin-bottom:clamp(2rem,1.4rem + 2vw,3rem)}
.ae-paper .section-head h2{font-size:clamp(1.9rem,1.4rem + 2vw,2.7rem); margin-top:.7rem}
.ae-paper .section-sub{margin-top:.9rem; color:var(--pp-ink-2); font-size:1.1rem; max-width:56ch}

/* header */
.ae-paper .top{padding:1.2rem 0}
.ae-paper .top-row{display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap}
.ae-paper .badge-lockup{display:flex; align-items:center; gap:.6rem; text-decoration:none}
.ae-paper .badge{display:grid; place-items:center; width:34px; height:34px; border-radius:8px; background:var(--pp-navy); color:var(--pp-parchment); font-family:var(--pp-display); font-weight:900; font-size:1.05rem; flex:none}
.ae-paper .wordmark{font-family:var(--pp-display); font-weight:600; font-size:1.15rem; color:var(--pp-navy)}
.ae-paper .wordmark strong{font-weight:900}
.ae-paper .qualifier-chip{font-family:var(--pp-mono); font-size:.72rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--pp-navy); background:var(--pp-parchment); border:1.5px solid var(--pp-navy); border-radius:999px; padding:.5rem 1rem; white-space:nowrap}

/* buttons */
.ae-paper .btn-primary{display:inline-flex; align-items:center; justify-content:center; gap:.5em; min-height:56px; padding:.95em 1.8em; border-radius:12px; border:2px solid var(--pp-blue); background:var(--pp-blue); color:#fff; font:800 1.05rem/1.2 var(--pp-display); text-decoration:none; cursor:pointer; transition:transform .15s var(--pp-ease), background .15s var(--pp-ease), border-color .15s var(--pp-ease)}
.ae-paper .btn-primary:hover{background:var(--pp-blue-deep); border-color:var(--pp-blue-deep); transform:translateY(-2px)}
.ae-paper .btn-primary[disabled]{opacity:.55; cursor:default; transform:none}
.ae-paper .btn-lg{min-height:60px; padding:1.05em 2.1em; font-size:1.1rem}
.ae-paper .btn-ghost{display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:.9em 1.5em; border-radius:12px; border:2px solid var(--pp-line-2); background:transparent; color:var(--pp-navy); font:700 1.02rem/1.2 var(--pp-display); cursor:pointer; text-decoration:none}
.ae-paper .btn-ghost:hover{border-color:var(--pp-navy); background:var(--pp-paper-panel)}

/* hero */
.ae-paper .hero{padding:clamp(1.6rem,1rem + 2.4vw,3.2rem) 0 clamp(1.8rem,1.2rem + 1.8vw,2.6rem); max-width:920px}
.ae-paper .hero h1{font-size:clamp(2.1rem,1.4rem + 3.4vw,3.9rem); max-width:19ch; letter-spacing:-.03em}
.ae-paper .hl{background:var(--pp-blue); color:#fff; padding:.04em .3em; border-radius:.22em; box-decoration-break:clone; -webkit-box-decoration-break:clone}
.ae-paper .subhead{font-size:clamp(1.1rem,1.02rem + .4vw,1.32rem); color:var(--pp-ink-2); margin-top:1.1rem; max-width:52ch}
.ae-paper .qualifier-line{margin-top:1rem; font-size:clamp(1.05rem,1rem + .3vw,1.22rem); color:var(--pp-ink-2); max-width:58ch}
.ae-paper .small-disc{margin-top:.9rem; font-size:.85rem; color:var(--pp-muted); max-width:58ch; line-height:1.5}

/* router panel */
.ae-paper .router-section{background:var(--pp-paper-panel); border-top:1px solid var(--pp-line); border-bottom:1px solid var(--pp-line); padding:var(--pp-sec) 0}
.ae-paper .router-inner{max-width:680px; margin-inline:auto}
.ae-paper .progress{display:flex; align-items:center; gap:1rem; margin-bottom:1.4rem}
.ae-paper .progress-track{flex:1; height:6px; border-radius:999px; background:var(--pp-line-2); overflow:hidden}
.ae-paper .progress-fill{height:100%; width:100%; background:var(--pp-blue); border-radius:999px; transform:scaleX(0); transform-origin:left; transition:transform .35s var(--pp-ease)}
@media (prefers-reduced-motion:reduce){.ae-paper .progress-fill{transition:none}}
.ae-paper .progress-label{font-family:var(--pp-mono); font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--pp-blue-deep); white-space:nowrap}
.ae-paper .q-card{background:#fff; border:1px solid var(--pp-line); border-radius:var(--pp-r-lg); padding:clamp(1.5rem,1.1rem + 1.8vw,2.6rem); box-shadow:0 30px 60px -40px rgba(12,35,64,.35); transition:opacity .22s var(--pp-ease), transform .22s var(--pp-ease)}
.ae-paper .q-card.is-leaving{opacity:0; transform:translateY(-8px)}
.ae-paper .back-link{display:inline-flex; align-items:center; gap:.35rem; border:0; background:none; padding:0; margin:0 0 1rem; font:600 .92rem var(--pp-body); color:var(--pp-muted); cursor:pointer}
.ae-paper .back-link:hover{color:var(--pp-navy)}
.ae-paper .q-text{font-size:clamp(1.35rem,1.15rem + 1vw,1.85rem); max-width:22ch}
.ae-paper .q-micro{margin-top:.7rem; color:var(--pp-ink-2); font-size:1rem; line-height:1.55; max-width:48ch}
.ae-paper .answers{display:grid; gap:.7rem; margin-top:1.5rem}
.ae-paper .answer-btn{display:flex; align-items:center; justify-content:space-between; gap:1rem; width:100%; min-height:64px; text-align:left; padding:1rem 1.3rem; border:1.5px solid var(--pp-line-2); border-radius:14px; background:#fff; color:var(--pp-ink); font:600 1.05rem/1.4 var(--pp-display); letter-spacing:-.005em; cursor:pointer; transition:border-color .15s var(--pp-ease), background .15s var(--pp-ease), transform .1s var(--pp-ease)}
.ae-paper .answer-btn::after{content:"\2192"; font-family:var(--pp-body); font-weight:400; color:var(--pp-blue); flex:none; opacity:0; transform:translateX(-4px); transition:opacity .15s var(--pp-ease), transform .15s var(--pp-ease)}
.ae-paper .answer-btn:hover{border-color:var(--pp-blue); background:var(--pp-blue-100)}
.ae-paper .answer-btn:hover::after{opacity:1; transform:translateX(0)}
.ae-paper .answer-btn:active{transform:scale(.99)}
.ae-paper .match-eyebrow{font-family:var(--pp-mono); font-size:.76rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--pp-blue-deep)}
.ae-paper .match-name{font-size:clamp(1.6rem,1.3rem + 1.4vw,2.3rem); margin-top:.6rem; max-width:20ch}
.ae-paper .match-promise{margin-top:.9rem; color:var(--pp-ink-2); font-size:1.08rem; line-height:1.6; max-width:50ch}
.ae-paper .match-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.6rem}
.ae-paper .trust-line{text-align:center; margin-top:1.3rem; color:var(--pp-muted); font-size:.96rem}

/* doors */
.ae-paper .doors{padding:var(--pp-sec) 0}
.ae-paper .door-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.2rem}
.ae-paper .door-card{background:#fff; border:1.5px solid var(--pp-line); border-radius:var(--pp-r-lg); padding:1.7rem; display:flex; flex-direction:column; gap:.6rem; transition:border-color .2s var(--pp-ease), box-shadow .2s var(--pp-ease), transform .2s var(--pp-ease); scroll-margin:120px}
.ae-paper .door-card:hover{border-color:var(--pp-blue-soft); box-shadow:0 24px 44px -30px rgba(12,35,64,.3); transform:translateY(-3px)}
.ae-paper .door-card.matched{border-color:var(--pp-blue); box-shadow:0 0 0 4px var(--pp-blue-100), 0 24px 44px -28px rgba(47,107,240,.4)}
.ae-paper .door-icon{width:44px; height:44px; border-radius:10px; background:var(--pp-paper-panel); display:grid; place-items:center; color:var(--pp-blue-deep)}
.ae-paper .door-icon svg{width:22px; height:22px}
.ae-paper .door-card h3{font-size:1.22rem; margin-top:.2rem}
.ae-paper .door-promise{color:var(--pp-ink-2); font-size:.98rem; line-height:1.55; flex:1}
.ae-paper .door-link{display:inline-flex; align-items:center; gap:.4rem; margin-top:.4rem; font:700 .95rem var(--pp-display); color:var(--pp-blue-deep); text-decoration:none}
.ae-paper .door-link:hover{text-decoration:underline}

/* standards (navy band) */
.ae-paper .standards{background:var(--pp-navy); padding:var(--pp-sec) 0}
.ae-paper .standards-inner .section-head h2{color:#fff; max-width:26ch}
.ae-paper .standards-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.4rem; margin-top:2rem}
.ae-paper .standard{border:1px solid rgba(255,255,255,.16); border-radius:var(--pp-r); padding:1.5rem; background:rgba(255,255,255,.04)}
.ae-paper .standard h3{color:#fff; font-size:1.15rem}
.ae-paper .standard p{color:#B9C9E8; margin-top:.6rem; font-size:.98rem; line-height:1.55}

/* VSL frame */
.ae-paper .vsl-frame{margin-top:2rem; max-width:820px}
.ae-paper .vsl-poster{position:relative; aspect-ratio:16/9; border-radius:var(--pp-r-lg); overflow:hidden; background:
    radial-gradient(circle at 18% 15%, rgba(47,107,240,.35), transparent 42%),
    radial-gradient(circle at 82% 85%, rgba(238,228,207,.16), transparent 45%),
    linear-gradient(155deg,#0C2340 0%,#123457 55%,#081729 100%);
  box-shadow:0 34px 64px -30px rgba(12,35,64,.5); display:flex; flex-direction:column; justify-content:space-between; padding:clamp(1.1rem,.8rem + 1vw,1.8rem)}
.ae-paper .vsl-poster::before{content:""; position:absolute; inset:0; background-image:repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 1px, transparent 1px 26px); pointer-events:none}
.ae-paper .vsl-chip{align-self:flex-start; font-family:var(--pp-mono); font-size:.7rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--pp-navy); background:var(--pp-parchment); border-radius:999px; padding:.45rem .9rem; position:relative; z-index:1}
.ae-paper .vsl-mid{position:relative; z-index:1; text-align:center; display:flex; flex-direction:column; align-items:center; gap:1rem}
.ae-paper .vsl-title-card{font-family:var(--pp-mono); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--pp-blue-soft)}
.ae-paper .vsl-title-card b{display:block; margin-top:.5rem; font-family:var(--pp-display); font-weight:800; font-size:clamp(1.1rem,1rem + 1.2vw,1.7rem); letter-spacing:-.01em; color:var(--pp-parchment); text-transform:none}
.ae-paper .vsl-caption{position:relative; z-index:1; text-align:center; font-family:var(--pp-mono); font-size:.75rem; letter-spacing:.05em; color:#AABEDD}
.ae-paper .vsl-cta-link{display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.7em 1.4em; border-radius:12px; border:2px solid var(--pp-parchment); color:var(--pp-parchment); font:700 1rem/1.2 var(--pp-display); text-decoration:none}
.ae-paper .vsl-cta-link:hover{background:rgba(238,228,207,.12)}
.ae-paper .vsl-poster video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:2; background:#081729}
.ae-paper .skip-path{margin-top:1.1rem}
.ae-paper .skip-link{font:700 1rem var(--pp-display); color:var(--pp-blue-deep); text-decoration:none; border-bottom:2px solid var(--pp-blue-soft); padding-bottom:.1rem}
.ae-paper .skip-link:hover{color:var(--pp-blue-deep); border-color:var(--pp-blue-deep)}
.ae-paper .listen-line{margin-top:.7rem; font-size:.95rem; color:var(--pp-muted)}

/* centerpiece worksheet */
.ae-paper .centerpiece{background:var(--pp-paper-panel); border-top:1px solid var(--pp-line); border-bottom:1px solid var(--pp-line)}
.ae-paper .show-grid{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(1.8rem,1.2rem + 2.4vw,3.4rem); align-items:start}
.ae-paper .worksheet-wrap{position:relative}
.ae-paper .worksheet{background:var(--pp-parchment); border:1.5px solid var(--pp-parchment-deep); border-radius:18px; padding:clamp(1.4rem,1.1rem + 1.2vw,2.1rem); box-shadow:0 40px 70px -34px rgba(12,35,64,.4); transform:rotate(-1.1deg); position:relative}
.ae-paper .worksheet::after{content:""; position:absolute; inset:10px; border:1px dashed rgba(12,35,64,.18); border-radius:12px; pointer-events:none}
.ae-paper .worksheet-head{display:flex; justify-content:space-between; align-items:flex-start; gap:.8rem; padding-bottom:1rem; border-bottom:1.5px solid rgba(12,35,64,.18)}
.ae-paper .ws-eyebrow{font-family:var(--pp-mono); font-size:.82rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--pp-navy)}
.ae-paper .ws-tag{font-family:var(--pp-mono); font-size:.66rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--pp-blue-deep); background:rgba(47,107,240,.12); border-radius:999px; padding:.35rem .7rem; white-space:nowrap}
.ae-paper .ws-row{padding:1rem 0; border-bottom:1px dashed rgba(12,35,64,.22)}
.ae-paper .ws-row:last-of-type{border-bottom:none}
.ae-paper .ws-label{display:block; font-family:var(--pp-display); font-weight:700; font-size:1.02rem; color:var(--pp-navy)}
.ae-paper .ws-fill{display:block; margin-top:.5rem; font-family:var(--pp-mono); font-size:1.05rem; letter-spacing:.06em; color:rgba(12,35,64,.42)}
.ae-paper .ws-fill--accent{color:var(--pp-blue-deep); font-weight:600}
.ae-paper .ws-stack{display:flex; flex-direction:column; gap:.4rem}
.ae-paper .ws-bars{margin-top:.6rem; display:grid; gap:.5rem}
.ae-paper .ws-bar{display:flex; align-items:center; justify-content:space-between; background:rgba(255,255,255,.55); border-radius:8px; padding:.55rem .8rem; font-size:.94rem}
.ae-paper .ws-bar span{font-weight:600; color:var(--pp-navy)}
.ae-paper .ws-bar em{font-style:normal; font-family:var(--pp-mono); color:rgba(12,35,64,.42)}
.ae-paper .ws-gap .ws-label{color:var(--pp-blue-deep)}
.ae-paper .ws-result{display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap}
.ae-paper .ws-seal{font-family:var(--pp-mono); font-size:.7rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; background:var(--pp-navy); color:var(--pp-parchment); border-radius:999px; padding:.5rem 1rem; white-space:nowrap}
.ae-paper .ws-footnote{margin-top:1rem; font-size:.78rem; color:rgba(12,35,64,.5); line-height:1.5}
.ae-paper .get-list{display:grid; gap:1.3rem; margin-top:.3rem}
.ae-paper .get-list li{display:flex; gap:1rem}
.ae-paper .get-n{flex:none; font-family:var(--pp-mono); font-weight:600; font-size:.85rem; color:#fff; background:var(--pp-navy); width:36px; height:36px; border-radius:9px; display:grid; place-items:center}
.ae-paper .get-list h3{font-size:1.15rem}
.ae-paper .get-list p{color:var(--pp-ink-2); margin-top:.4rem; font-size:1rem; line-height:1.55}
.ae-paper .show-copy .btn-primary{margin-top:1.7rem}
.ae-paper .cta-note{margin-top:.8rem; font-size:.95rem; color:var(--pp-muted)}

/* method */
.ae-paper .method-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1.2rem}
.ae-paper .method-step{background:#fff; border:1px solid var(--pp-line); border-radius:var(--pp-r); padding:1.6rem}
.ae-paper .m-n{font-family:var(--pp-mono); font-weight:600; font-size:.85rem; color:var(--pp-blue-deep); background:var(--pp-blue-100); width:38px; height:38px; border-radius:9px; display:grid; place-items:center}
.ae-paper .method-step h3{font-size:1.14rem; margin-top:.9rem}
.ae-paper .method-step p{color:var(--pp-ink-2); font-size:.98rem; margin-top:.5rem; line-height:1.55}

/* honesty */
.ae-paper .honesty{padding:var(--pp-sec) 0}
.ae-paper .honesty-card{background:var(--pp-navy); border-radius:28px; padding:clamp(1.8rem,1.3rem + 2.6vw,3.4rem); color:#fff; position:relative; overflow:hidden}
.ae-paper .honesty-card::before{content:""; position:absolute; inset:0; background:radial-gradient(circle at 88% 8%, rgba(47,107,240,.28), transparent 46%); pointer-events:none}
.ae-paper .honesty-card > *{position:relative}
.ae-paper .honesty-card h2{color:#fff; font-size:clamp(1.9rem,1.4rem + 2vw,2.7rem); margin-top:.7rem; max-width:16ch}
.ae-paper .honesty-lede{margin-top:1rem; color:var(--pp-blue-soft); font-size:1.15rem; max-width:52ch}
.ae-paper .honesty-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1.2rem; margin-top:2.2rem}
.ae-paper .honesty-item{border:1px solid rgba(255,255,255,.16); border-radius:14px; padding:1.4rem; background:rgba(255,255,255,.04)}
.ae-paper .honesty-item h3{color:#fff; font-size:1.08rem}
.ae-paper .honesty-item p{color:#B9C9E8; margin-top:.5rem; font-size:.96rem; line-height:1.55}
.ae-paper .honesty-foot{margin-top:2rem; padding-top:1.6rem; border-top:1px solid rgba(255,255,255,.16); color:#9FB4D9; font-size:.9rem; line-height:1.6; max-width:64ch}

/* agenda */
.ae-paper .agenda-grid{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:clamp(1.6rem,1rem + 2vw,2.8rem); align-items:start}
.ae-paper .agenda-list{display:grid; gap:1.5rem}
.ae-paper .agenda-list li{display:flex; gap:1.1rem}
.ae-paper .a-n{flex:none; font-family:var(--pp-mono); font-weight:600; font-size:.85rem; color:#fff; background:var(--pp-navy); width:38px; height:38px; border-radius:9px; display:grid; place-items:center}
.ae-paper .agenda-list h3{font-size:1.16rem}
.ae-paper .agenda-list p{color:var(--pp-ink-2); margin-top:.45rem; font-size:1rem; line-height:1.55}
.ae-paper .agenda-notes{display:grid; gap:1rem}
.ae-paper .note-card{background:var(--pp-paper-panel); border:1px solid var(--pp-line); border-radius:var(--pp-r); padding:1.5rem}
.ae-paper .note-card h3{font-size:1.05rem}
.ae-paper .note-card p{color:var(--pp-ink-2); margin-top:.5rem; font-size:.98rem; line-height:1.55}

/* final cta */
.ae-paper .final-cta{background:linear-gradient(180deg,var(--pp-navy) 0%,var(--pp-navy-2) 100%); padding:var(--pp-sec) 0; text-align:center}
.ae-paper .final-inner{max-width:720px}
.ae-paper .final-cta h2{color:#fff; font-size:clamp(2rem,1.4rem + 2.4vw,3.1rem); margin-top:.7rem}
.ae-paper .final-lede{margin-top:1.2rem; color:var(--pp-blue-soft); font-size:1.14rem; line-height:1.6; max-width:60ch; margin-inline:auto}
.ae-paper .final-cta .btn-primary{margin-top:2rem}
.ae-paper .triple-beat{margin-top:1.1rem; color:#AABEDD; font-size:.98rem; letter-spacing:.01em}

/* fit survey */
.ae-paper .fit-shell{max-width:680px; margin-inline:auto}
.ae-paper .fit-frame{margin-top:2rem; max-width:680px}
.ae-paper .fit-frame .trust-line{text-align:left}
.ae-paper .fit-step{display:none}
.ae-paper .fit-step.is-active{display:block}
.ae-paper .fit-step fieldset,.ae-paper .fit-contact fieldset{border:0; margin:0; padding:0; min-width:0}
.ae-paper .fit-step legend,.ae-paper .fit-contact legend{padding:0}
.ae-paper .fit-legend{font-family:var(--pp-display); font-weight:800; line-height:1.15; letter-spacing:-.02em; color:var(--pp-navy); font-size:clamp(1.35rem,1.15rem + 1vw,1.85rem); max-width:24ch}
.ae-paper .choice-grid{display:grid; gap:.7rem; margin-top:1.5rem}
.ae-paper .choice-card{position:relative; display:block}
.ae-paper .choice-card input{position:absolute; opacity:0; inset:0; width:100%; height:100%; margin:0; cursor:pointer}
.ae-paper .choice-card span{display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:64px; padding:1rem 1.3rem; border:1.5px solid var(--pp-line-2); border-radius:14px; background:#fff; color:var(--pp-ink); font:600 1.05rem/1.4 var(--pp-display); letter-spacing:-.005em; transition:border-color .15s var(--pp-ease), background .15s var(--pp-ease)}
.ae-paper .choice-card:hover span{border-color:var(--pp-blue); background:var(--pp-blue-100)}
.ae-paper .choice-card input:checked + span{border-color:var(--pp-blue); background:var(--pp-blue-100); box-shadow:0 0 0 3px var(--pp-blue-100)}
.ae-paper .choice-card input:focus-visible + span{outline:3px solid var(--pp-blue); outline-offset:3px}
.ae-paper .field-label{display:block; margin-top:1.2rem; font:700 .98rem var(--pp-display); color:var(--pp-navy)}
.ae-paper .field-input, .ae-paper select.field-input{width:100%; margin-top:.45rem; min-height:52px; padding:.7rem .9rem; border:1.5px solid var(--pp-line-2); border-radius:12px; background:#fff; color:var(--pp-ink); font:500 1.02rem var(--pp-body)}
.ae-paper .field-input:focus{border-color:var(--pp-blue); outline:2px solid var(--pp-blue-100)}
.ae-paper .fine{font-size:.82rem; color:var(--pp-muted); line-height:1.55; margin-top:.9rem}
.ae-paper .consent-check{display:flex; gap:8px; align-items:flex-start; text-align:left; cursor:pointer; margin-top:1rem; font-size:.86rem; color:var(--pp-ink-2); line-height:1.5}
.ae-paper .consent-check input{margin-top:3px; flex-shrink:0}
.ae-paper .error{color:#B42318; font-weight:600; margin-top:1rem; min-height:1.2em}
.ae-paper .field-error{color:#B42318; font:700 1.2rem/1.45 var(--pp-body); margin:.4rem 0 .85rem}
.ae-paper .field-input[aria-invalid="true"], .ae-paper select.field-input[aria-invalid="true"]{border-color:#B42318; box-shadow:0 0 0 3px rgba(180,35,24,.14)}
.ae-paper .status-note{color:var(--pp-ink-2); font-size:.98rem; margin-top:1rem}
.ae-paper .hidden{display:none !important}
.ae-paper .interstitial h2{font-size:clamp(1.5rem,1.25rem + 1.2vw,2rem)}
.ae-paper .interstitial p{margin-top:.9rem; color:var(--pp-ink-2)}
.ae-paper .edu-links{display:grid; gap:.8rem; margin-top:1.4rem}
.ae-paper .edu-links a{display:block; padding:1rem 1.2rem; border:1.5px solid var(--pp-line-2); border-radius:14px; background:#fff; font:600 1.02rem var(--pp-display); color:var(--pp-navy); text-decoration:none}
.ae-paper .edu-links a:hover{border-color:var(--pp-blue); background:var(--pp-blue-100)}

/* briefing newscast furniture (deck 2026-08-07 §2.5: Plex Mono strap headers,
   MYTH / FACT / IT DEPENDS stamps as content devices on THIS funnel only) */
.ae-paper .strap-head{display:inline-flex; align-items:center; gap:.55rem; font-family:var(--pp-mono); font-size:.78rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--pp-navy); background:var(--pp-parchment); border:1.5px solid var(--pp-parchment-deep); border-radius:6px; padding:.5rem .95rem; box-shadow:0 12px 24px -18px rgba(12,35,64,.45)}
.ae-paper .strap-head::before{content:""; width:9px; height:9px; border-radius:2px; background:var(--pp-blue); flex:none}
.ae-paper .strap-head--light{color:var(--pp-parchment); background:rgba(47,107,240,.22); border-color:rgba(143,176,245,.45)}
.ae-paper .claim-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.2rem}
.ae-paper .claim-card{background:#fff; border:1.5px solid var(--pp-line); border-radius:var(--pp-r-lg); padding:1.7rem; display:flex; flex-direction:column; align-items:flex-start; gap:.9rem}
.ae-paper .claim-quote{font-family:var(--pp-display); font-weight:800; font-size:1.24rem; line-height:1.3; letter-spacing:-.01em; color:var(--pp-navy)}
.ae-paper .stamp{font-family:var(--pp-mono); font-size:.72rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; border-radius:6px; padding:.45rem .85rem; border:2px solid var(--pp-navy); transform:rotate(-2deg)}
.ae-paper .stamp--depends{color:var(--pp-navy); background:var(--pp-parchment)}
.ae-paper .stamp--fact{color:#fff; background:var(--pp-blue); border-color:var(--pp-blue)}
.ae-paper .claim-verdict{color:var(--pp-ink-2); font-size:.98rem; line-height:1.55}
.ae-paper .vsl-caption--below{margin-top:.85rem; color:var(--pp-muted)}
@media (prefers-reduced-motion:reduce){.ae-paper .stamp{transform:none}}

/* footer */
.ae-paper .foot{background:var(--pp-parchment); padding:clamp(2.4rem,1.8rem + 2vw,3.6rem) 0 2rem}
.ae-paper .foot-inner{display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(1.6rem,1rem + 2vw,3rem); align-items:start}
.ae-paper .wordmark-lg{font-family:var(--pp-display); font-weight:600; font-size:1.4rem; color:var(--pp-navy)}
.ae-paper .wordmark-lg strong{font-weight:900}
.ae-paper .foot-tag{margin-top:.7rem; max-width:34ch; color:var(--pp-ink-2); font-size:1rem; line-height:1.5}
.ae-paper .foot-links{display:flex; flex-wrap:wrap; gap:1rem; margin-top:1rem; font-size:.92rem}
.ae-paper .foot-links a{color:var(--pp-navy)}
.ae-paper .foot-disc p{color:#5A5138; font-size:.88rem; line-height:1.6}
.ae-paper .foot-disc p + p{margin-top:.7rem}
.ae-paper .foot-strip{margin-top:1rem; font-family:var(--pp-mono); font-size:.72rem; letter-spacing:.05em; color:#7A6E4C}

/* sticky mobile cta */
.ae-paper .sticky-cta{position:fixed; left:0; right:0; bottom:0; z-index:80; background:var(--pp-navy); color:#fff; padding:.8rem var(--pp-gut) calc(.8rem + env(safe-area-inset-bottom)); transform:translateY(110%); transition:transform .3s var(--pp-ease); display:none}
.ae-paper .sticky-cta.on{transform:none}
.ae-paper .sticky-row{display:flex; align-items:center; gap:1rem}
.ae-paper .sticky-text{font:700 .98rem var(--pp-display)}
.ae-paper .sticky-text small{display:block; font:400 .78rem var(--pp-body); color:#AABEDD; margin-top:.15rem}
.ae-paper .sticky-cta .btn-primary{margin-left:auto; min-height:48px; padding:.7em 1.3em; font-size:.95rem; white-space:nowrap}

/* reveal */
.ae-paper .rv{opacity:0; transform:translateY(16px); transition:opacity .6s var(--pp-ease), transform .6s var(--pp-ease)}
.ae-paper .rv.in{opacity:1; transform:none}
@media (prefers-reduced-motion:reduce){.ae-paper .rv{opacity:1!important; transform:none!important}}

@media (max-width:900px){
  /* minmax(0,1fr), not bare 1fr: the bare keyword keeps a min-content floor,
     and a nowrap chip inside the worksheet can push the whole column past a
     320px viewport. Zero-overflow at 320 is the small-screen contract. */
  .ae-paper .show-grid{grid-template-columns:minmax(0,1fr)}
  .ae-paper .agenda-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:720px){
  .ae-paper .foot-inner{grid-template-columns:1fr}
  .ae-paper .top-row{flex-direction:column; align-items:flex-start; gap:.6rem}
  .ae-paper .qualifier-chip{font-size:.64rem; padding:.42rem .75rem; white-space:normal; text-align:left; width:100%}
  .ae-paper .sticky-cta{display:block}
  body.ae-paper.has-sticky{padding-bottom:5.5rem}
}
@media (max-width:560px){
  body.ae-paper{font-size:1.05rem}
  .ae-paper .q-card{padding:1.3rem}
  .ae-paper .answer-btn{padding:.9rem 1.05rem; font-size:1rem}
  .ae-paper .choice-card span{padding:.9rem 1.05rem; font-size:1rem}
  .ae-paper .match-actions{flex-direction:column; align-items:stretch}
  .ae-paper .worksheet{transform:none}
  .ae-paper .ws-tag{white-space:normal; text-align:right}
  .ae-paper .sticky-text small{display:none}
}

/* Mobile-first standard (Heath 2026-08-07): title, video immediately under it,
   wordy content after; balanced, centered title block. Opt-in via
   .hero--lesson (income). CSS order only: DOM, copy, and tracking untouched.
   The subhead and multi-line qualifier move below the VSL slot; the header
   qualifier chip keeps the audience line above the fold. */
@media (max-width:720px){
  .ae-paper .hero--lesson{display:flex; flex-direction:column}
  .ae-paper .hero--lesson .eyebrow{order:1; text-align:center}
  .ae-paper .hero--lesson h1{order:2; margin-inline:auto; text-align:center; text-wrap:balance}
  .ae-paper .hero--lesson .vsl-frame{order:3; margin-top:1.25rem}
  .ae-paper .hero--lesson .skip-path{order:4}
  .ae-paper .hero--lesson .subhead{order:5; margin-top:1.5rem}
  .ae-paper .hero--lesson .qualifier-line{order:6}
  .ae-paper .hero--lesson .listen-line{order:7}
  .ae-paper .hero--lesson .small-disc{order:8}

  /* Same mobile standard for the quiz-first /fit hero: the quiz card is the
     page's primary asset and sits directly under the title on mobile. Opt-in
     via .hero--fit. CSS order only: DOM, copy, and tracking untouched. */
  .ae-paper .hero--fit{display:flex; flex-direction:column}
  .ae-paper .hero--fit .eyebrow{order:1; text-align:center}
  .ae-paper .hero--fit h1{order:2; margin-inline:auto; text-align:center; text-wrap:balance}
  .ae-paper .hero--fit .vsl-frame{order:3; margin-top:1.25rem}
  .ae-paper .hero--fit .fit-frame{order:4; margin-top:1.25rem}
  .ae-paper .hero--fit .subhead{order:5; margin-top:1.5rem}
  .ae-paper .hero--fit .qualifier-line{order:6}
  .ae-paper .hero--fit .small-disc{order:7}

  /* Same mobile standard for /review: the placeholder VSL slot (the page's
     primary asset until the Heath-gated letter ships) sits directly under
     the title. Opt-in via .hero--review. CSS order only. */
  .ae-paper .hero--review{display:flex; flex-direction:column}
  .ae-paper .hero--review .eyebrow{order:1; text-align:center}
  .ae-paper .hero--review h1{order:2; margin-inline:auto; text-align:center; text-wrap:balance}
  .ae-paper .hero--review .vsl-frame{order:3; margin-top:1.25rem}
  .ae-paper .hero--review .skip-path{order:4}
  .ae-paper .hero--review .subhead{order:5; margin-top:1.5rem}
  .ae-paper .hero--review .qualifier-line{order:6}
  .ae-paper .hero--review .small-disc{order:7}

  /* Same mobile standard for /briefing: the episode player sits directly
     under the title. Opt-in via .hero--briefing. CSS order only. */
  .ae-paper .hero--briefing{display:flex; flex-direction:column}
  .ae-paper .hero--briefing .eyebrow{order:1; text-align:center}
  .ae-paper .hero--briefing h1{order:2; margin-inline:auto; text-align:center; text-wrap:balance}
  .ae-paper .hero--briefing .vsl-frame{order:3; margin-top:1.25rem}
  .ae-paper .hero--briefing .skip-path{order:4}
  .ae-paper .hero--briefing .subhead{order:5; margin-top:1.5rem}
  .ae-paper .hero--briefing .qualifier-line{order:6}
  .ae-paper .hero--briefing .small-disc{order:7}
}
