/* The funnel pages (front door and result page), v3, 2026-09-18. Built for an older reader: 19px body, 7:1 contrast,
   one column, targets 56px and up, no dropdowns, "step x of y" at the top of every page. Shares the palette and the
   fonts with the guide (shared.css) but none of its furniture: no cover band, no ruler, no numbered margin. */
:root{--serif:Fraunces,Georgia,serif;--sans:"Public Sans",system-ui,sans-serif;--muted:#4a4840;--rust:#9c4222;--rust-dark:#7f351b;--line:#d8d2c6;--card:#faf7f0}
body.squeeze{background:#fff;color:var(--ink);font-size:19px;line-height:1.6}
body.squeeze .topbar{background:var(--green);color:rgba(246,241,230,.9);font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:12px 16px}
body.squeeze .topbar a{color:var(--cream);text-decoration:underline;text-underline-offset:3px}
body.squeeze .page{max-width:760px;margin:0 auto;padding:40px 20px 80px}
body.squeeze .stepline{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
body.squeeze h1{font-family:var(--serif);font-variation-settings:"opsz" 144;font-weight:400;font-size:clamp(34px,5.4vw,50px);line-height:1.1;letter-spacing:-.01em;margin:0 0 18px;max-width:20ch}
body.squeeze .sub{font-size:21px;line-height:1.5;color:var(--muted);margin:0 0 30px;max-width:56ch}
body.squeeze h2{font-family:var(--serif);font-weight:400;font-size:clamp(27px,3.6vw,34px);line-height:1.15;margin:0 0 16px}
body.squeeze h3{font-size:20px;font-weight:600;margin:24px 0 8px}
body.squeeze p{margin:0 0 18px;max-width:62ch}
body.squeeze a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
body.squeeze section{display:block;margin:0;padding:52px 0 0;border-top:1px solid var(--line);margin-top:52px}
body.squeeze section:first-of-type{border-top:0;margin-top:0}

/* the card that holds the questions */
body.squeeze .card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:28px 24px 26px;margin:0 0 44px}
body.squeeze .bar{height:8px;background:#e8e2d5;border-radius:4px;overflow:hidden;margin:0 0 26px}
body.squeeze .bar span{display:block;height:100%;width:0;background:var(--green);transition:width .25s ease}
body.squeeze .card h2{font-family:var(--sans);font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
body.squeeze .q{font-family:var(--serif);font-size:clamp(25px,3.6vw,31px);line-height:1.2;margin:0 0 22px;max-width:none}
body.squeeze .opts{display:grid;gap:12px;margin:0 0 8px}
body.squeeze .opts button{font:inherit;font-size:19px;line-height:1.35;text-align:left;min-height:60px;padding:14px 18px;background:#fff;color:var(--ink);border:2px solid #8d877a;border-radius:8px;cursor:pointer}
body.squeeze .opts button:hover{border-color:var(--green)}
body.squeeze .opts button:focus-visible,body.squeeze input:focus-visible,body.squeeze .btn:focus-visible,body.squeeze button.primary:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
body.squeeze .opts button.on{background:var(--green);color:#fff;border-color:var(--green)}
body.squeeze label{display:block;font-weight:600;font-size:18px;margin:18px 0 8px}
body.squeeze label small{display:block;font-weight:400;font-size:16px;color:var(--muted)}
body.squeeze input{display:block;width:100%;box-sizing:border-box;font:inherit;font-size:20px;min-height:58px;padding:12px 16px;border:2px solid #8d877a;border-radius:8px;background:#fff;color:var(--ink)}
body.squeeze input::placeholder{color:#8a847a}
body.squeeze .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
body.squeeze button.primary,body.squeeze .btn{display:block;width:100%;box-sizing:border-box;font:inherit;font-size:21px;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;min-height:64px;padding:18px 22px;margin:26px 0 0;background:var(--rust-dark);color:#fff;border:0;border-radius:8px;cursor:pointer}
body.squeeze button.primary:hover,body.squeeze .btn:hover{background:#6a2c16}
body.squeeze button.primary:disabled{opacity:.7;cursor:wait}
body.squeeze section .btn{max-width:440px;margin-top:22px}
body.squeeze .reassure{list-style:none;padding:0;margin:20px 0 0;font-size:17px;line-height:1.5;color:var(--muted)}
body.squeeze .reassure li{padding:4px 0 4px 28px;position:relative}
body.squeeze .reassure li::before{content:"\2713";position:absolute;left:2px;top:4px;color:var(--green);font-weight:700}
body.squeeze .err{display:none;background:#fdeeea;border:1px solid var(--rust);color:#5d2410;padding:12px 14px;border-radius:8px;margin:16px 0 0;font-size:17px}
body.squeeze .nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:22px 0 0;font-size:17px}
body.squeeze .nav a{color:var(--muted);padding:8px 0}

/* result page */
body.squeeze .result p{font-size:19px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin:0 0 12px;max-width:none}
body.squeeze .result .feeline{background:var(--green);color:#fff;border-color:var(--green);font-size:20px}
body.squeeze .result .feeline b{font-size:24px;font-weight:600}
body.squeeze #offer,body.squeeze #qdone{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}
body.squeeze #offer h2,body.squeeze #qdone h2{font-family:var(--serif);font-size:clamp(25px,3.6vw,31px);letter-spacing:0;text-transform:none;color:var(--ink);margin:0 0 10px}
body.squeeze #offer .q,body.squeeze #qdone .q{font-family:var(--sans);font-size:19px;line-height:1.55;color:var(--muted);margin:0 0 6px}

/* the long copy */
body.squeeze .mock{margin:0 0 48px}
body.squeeze .mock img{display:block;width:100%;max-width:600px;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:8px}
body.squeeze .bullets ul{padding:0 0 0 24px;margin:0 0 8px}
body.squeeze .bullets li{margin:0 0 14px;max-width:62ch}
body.squeeze .numbered{list-style:none;counter-reset:n;padding:0;margin:0}
body.squeeze .numbered li{counter-increment:n;position:relative;padding:0 0 0 56px;margin:0 0 20px;max-width:62ch}
body.squeeze .numbered li::before{content:counter(n);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--green);color:#fff;font-weight:600;font-size:19px;display:flex;align-items:center;justify-content:center}
body.squeeze .letter{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:32px 28px}
body.squeeze .letter .from{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
body.squeeze .letter p:last-child{font-family:var(--serif);font-size:26px;margin:0}
body.squeeze .who ul{padding:0 0 0 24px;margin:0}
body.squeeze .who li{margin:0 0 10px}
body.squeeze details{border-top:1px solid var(--line);padding:6px 0}
body.squeeze details:last-of-type{border-bottom:1px solid var(--line)}
body.squeeze summary{font-weight:600;font-size:20px;cursor:pointer;padding:14px 0;list-style:none;position:relative;padding-right:40px}
body.squeeze summary::-webkit-details-marker{display:none}
body.squeeze summary::after{content:"+";position:absolute;right:6px;top:10px;font-size:28px;color:var(--green)}
body.squeeze details[open] summary::after{content:"\2212"}
body.squeeze details p{padding:0 0 12px}
body.squeeze .close{background:var(--green);color:var(--cream);border-radius:10px;padding:44px 28px;border-top:0}
body.squeeze .close h2{color:#fff}
body.squeeze .close p{color:rgba(246,241,230,.92)}
body.squeeze .close .btn{background:var(--cream);color:var(--ink)}
body.squeeze .close .btn:hover{background:#fff}
body.squeeze .alt{font-size:17px;color:var(--muted);margin-top:18px}
body.squeeze .foot{max-width:760px;margin:0 auto;padding:24px 20px 48px;font-size:16px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line)}
@media (max-width:600px){body.squeeze .topbar .long{display:none}body.squeeze .page{padding:28px 16px 60px}body.squeeze .card{padding:22px 16px 20px;border-radius:8px}body.squeeze .letter{padding:24px 18px}body.squeeze .close{padding:32px 18px}body.squeeze section{padding-top:40px;margin-top:40px}}
@media (prefers-reduced-motion:reduce){body.squeeze .bar span{transition:none}}
