.newsletter-page { background:radial-gradient(ellipse at 82% 15%,#203d2d22,transparent 38%),#080e10; }
.newsletter-page main { width:min(1260px,86%); margin:auto; }
.newsletter-page h2 em,.newsletter-page h1 em { color:var(--accent-soft); }
.newsletter-page header nav { font-size:13px; }
.blueprint-hero { display:grid; grid-template-columns:1.1fr .9fr; gap:80px; align-items:center; padding:145px 0 105px; }
.blueprint-intro>.eyebrow { color:#a7c3b4; font-size:10px; letter-spacing:.16em; margin-bottom:27px; }
.blueprint-intro h1 { font-size:clamp(54px,5.8vw,78px); line-height:1.04; margin-bottom:27px; }
.blueprint-promise { font-size:18px; line-height:1.65; max-width:530px; color:#b5c8bd; margin:0 0 16px; }
.blueprint-promise strong { font-weight:400; color:#e0ece4; }
.blueprint-summary { font-size:15px; color:#8fa99a; line-height:1.8; max-width:485px; margin:0 0 30px; }
.blueprint-form { scroll-margin-top:140px; }
.blueprint-form label { display:block; font-size:13px; color:#cbdcd0; margin-bottom:12px; }
.signup-controls { display:flex; gap:0; border:1px solid #b7dbc142; border-radius:5px; padding:5px; background:#c5ffe208; box-shadow:inset 0 1px #ffffff12,0 6px 22px #0003; }
.signup-controls input { min-width:0; flex:1; width:100%; padding:14px 12px; color:#edf5ef; background:transparent; border:0; outline-offset:-2px; border-radius:3px; font:16px 'DM Sans',sans-serif; }
.signup-controls input::placeholder { color:#799586; }
.signup-controls input:focus-visible { outline:1px solid var(--accent-soft); }
.signup-controls button { flex-shrink:0; background:linear-gradient(135deg,#a1edc3,#73dba8); color:#0a281a; font-size:13px; font-weight:500; border-radius:3px; padding:14px 16px; display:flex; gap:18px; align-items:center; box-shadow:inset 0 1px #ecfff28c; transition:background .3s,box-shadow .3s; }
.signup-controls button:hover { box-shadow:inset 0 1px #ecfff2,0 0 24px #72dea92b; }
.signup-controls button:disabled { opacity:.65; cursor:default; }
.signup-controls button span { font-size:18px; }
.signup-promise { display:flex; flex-wrap:wrap; align-items:center; gap:9px; color:#91ab9b; font-size:11px; line-height:1.5; margin:13px 0 0; }
.signup-promise i { font-style:normal; color:#5d7b6a; }
.signup-status { color:#638270; font-size:11px; line-height:1.6; margin-top:10px; }
.signup-status.is-complete { color:#b2dec1; padding:13px 16px; border:1px solid #7cba9638; border-radius:4px; background:#82cfa90b; }
.blueprint-author-inline { display:flex; align-items:center; gap:12px; margin-top:25px; }
.blueprint-author-inline img { border-radius:50%; border:1px solid #c1ddca38; }
.blueprint-author-inline>div { display:flex; flex-direction:column; gap:5px; }
.blueprint-author-inline>div>span:first-child { color:#b3c8bb; font-size:12px; }
.blueprint-author-inline>div>span:last-child { color:#6f8f7b; font-size:11px; }
.blueprint-preview-wrap { position:relative; perspective:1600px; padding:12px 10px 0; }
.preview-orbit { position:absolute; width:90%; aspect-ratio:1; left:5%; top:9%; border:1px solid #bdd7c115; border-radius:50%; transform:rotateX(45deg) rotateZ(-20deg); pointer-events:none; }
.preview-orbit::before,.preview-orbit::after { content:""; position:absolute; width:4px; height:4px; background:#c6ddd0; border-radius:50%; box-shadow:0 0 14px #d4eee75e; }
.preview-orbit::before { left:12%; top:16%; }.preview-orbit::after { right:8%; bottom:21%; }
.issue-preview { position:relative; border:1px solid #c8dfd440; border-top-color:#e1f1e867; padding:28px 32px; border-radius:7px; background:linear-gradient(130deg,#cdebd711,#16231fbc 48%,#0d1713ee); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); box-shadow:0 28px 75px #0007,inset 0 1px #fff2; transform:rotateY(-8deg) rotateZ(2deg); transition:transform 1s cubic-bezier(.2,.8,.2,1); }
.issue-preview:hover { transform:rotateY(-3deg) rotateZ(0); }
.issue-topline { display:flex; align-items:center; justify-content:space-between; color:#85a08e; font-size:8px; letter-spacing:.14em; padding-bottom:22px; border-bottom:1px solid #d1e3d424; }
.issue-topline>span:last-child { font-size:17px; color:#bbd8c4; }
.issue-masthead { font-family:Manrope,sans-serif; font-size:clamp(38px,4vw,57px); line-height:1.05; letter-spacing:-.055em; margin:27px 0 22px; }
.issue-masthead em { font-style:normal; color:var(--accent-soft); }
.issue-from { display:flex; align-items:center; gap:10px; font-size:11px; color:#9bb6a4; }
.issue-from img { border-radius:50%; }
.issue-badge { margin-left:auto; color:#789a85; font-size:8px; letter-spacing:.11em; border:1px solid #a5c1ad2e; padding:5px; }
.issue-opening { color:#9eb9a7; font-size:16px; line-height:1.6; margin:25px 0 20px; }
.issue-opening strong { color:#d3e8db; font-weight:400; }
.issue-mini { display:flex; gap:18px; border-top:1px solid #bed7c520; padding:16px 0; }
.issue-number { color:#7da38b; font-size:10px; padding-top:2px; }
.issue-mini>div>span { color:#729680; font-size:8px; letter-spacing:.12em; }
.issue-mini h3,.issue-mini .issue-mini-title { margin:7px 0 0; font-size:16px; line-height:1.45; color:#c4d9cb; }
.issue-preview-link { display:flex; align-items:center; justify-content:space-between; font-size:11px; color:var(--accent-soft); padding:17px 0 0; border-top:1px solid #bed7c52e; }
.preview-caption { display:flex; justify-content:center; align-items:center; gap:12px; margin-top:28px; color:#6d8b79; font-size:9px; letter-spacing:.13em; }
.preview-caption>span { width:25px; height:1px; background:#719a8155; }
.blueprint-benefits { padding:65px 0 75px; border-top:1px solid var(--line); }
.blueprint-section-heading { display:grid; grid-template-columns:1.3fr 1fr; column-gap:50px; align-items:end; }
.blueprint-section-heading>.eyebrow { grid-column:1/-1; font-size:10px; margin-bottom:22px; }
.blueprint-section-heading h2 { font-size:clamp(37px,4.5vw,62px); margin:0; }
.blueprint-section-heading>p { font-size:15px; color:#8da797; margin:0; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; margin-top:50px; }
.benefit-grid article { border-top:1px solid #afcdb937; padding-top:22px; }
.benefit-index { font-size:10px; color:#779e86; letter-spacing:.1em; }
.benefit-grid h3 { font-family:Manrope,sans-serif; font-size:28px; line-height:1.2; letter-spacing:-.035em; margin:21px 0 17px; }
.benefit-grid p { font-size:14px; line-height:1.85; color:#91aa9b; margin:0 0 20px; }
.benefit-takeaway { font-size:12px; color:#a0c8af; }
.blueprint-sample { display:grid; grid-template-columns:.9fr 1.1fr; gap:85px; align-items:start; padding:65px 0 90px; }
.sample-intro { position:sticky; top:150px; }
.sample-intro>.eyebrow { font-size:10px; }
.sample-intro h2 { margin:25px 0; font-size:clamp(38px,4.5vw,62px); }
.sample-intro>p { font-size:16px; max-width:340px; }
.sample-label { display:inline-block; font-size:9px; color:#6f947b; letter-spacing:.13em; border-top:1px solid #a7c9b533; padding-top:22px; margin-top:20px; }
.sample-letter { border:1px solid #c5ddcf2b; border-top-color:#c5ddcf51; padding:35px 38px; background:linear-gradient(135deg,#b3d3c00a,#13271b28); border-radius:4px; }
.sample-letter-head { display:flex; justify-content:space-between; gap:15px; font-size:8px; letter-spacing:.12em; color:#789e84; padding-bottom:25px; border-bottom:1px solid #a7c9b524; }
.sample-greeting { font-size:13px; margin:24px 0 12px; color:#9fbba9; }
.sample-letter>h3 { font-family:Manrope,sans-serif; font-size:32px; line-height:1.2; margin:0 0 20px; letter-spacing:-.035em; }
.sample-letter>p:not(.sample-greeting) { font-size:15px; color:#a5bcad; }
.sample-points { list-style:none; margin:27px 0 0; padding:0; }
.sample-points>li { display:flex; align-items:baseline; gap:20px; padding:22px 0; border-top:1px solid #a7c9b522; }
.sample-points>li>span { color:#82b091; font-size:10px; }
.sample-points h4 { font-size:16px; font-weight:400; color:#d0e4d7; margin:0 0 9px; }
.sample-points p { font-size:14px; color:#90ac9a; margin:0; }
.sample-points a { display:inline-block; color:var(--accent-soft); font-size:12px; margin-top:17px; }
.sample-points a>span { margin-left:20px; }
.sample-signoff { font-size:14px; line-height:1.8; color:#b0cbb9; border-top:1px solid #a7c9b524; padding-top:23px; }
.sample-signoff>span { display:block; font-family:Manrope,sans-serif; font-size:25px; color:var(--accent-soft); margin-top:8px; }
.blueprint-about { display:grid; grid-template-columns:.85fr 1.15fr; gap:85px; align-items:center; padding:65px 0 90px; border-top:1px solid var(--line); }
.blueprint-portrait { position:relative; aspect-ratio:4/4.5; overflow:hidden; background:#151b18; }
.blueprint-portrait img { width:100%; height:100%; object-fit:cover; object-position:50% 0; filter:saturate(.75); }
.blueprint-portrait::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 60%,#080e10c9); }
.blueprint-portrait>span { position:absolute; z-index:1; bottom:24px; left:24px; font-size:9px; letter-spacing:.1em; color:#a2beae; }
.blueprint-about .eyebrow { font-size:10px; }
.blueprint-about h2 { font-size:clamp(38px,4.4vw,60px); margin:25px 0; }
.blueprint-about p { color:#9fb7a8; font-size:16px; }
.blueprint-about .blueprint-about-emphasis { color:#b2dbc0; margin:25px 0 15px; }
.blueprint-faq { display:grid; grid-template-columns:.85fr 1.15fr; gap:85px; border-top:1px solid var(--line); padding:60px 0 80px; }
.blueprint-faq .eyebrow { font-size:10px; }
.blueprint-faq h2 { font-size:clamp(38px,4vw,56px); margin-top:24px; }
.faq-list details { border-bottom:1px solid #a7c9b528; }
.faq-list summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 0; font-size:16px; color:#c9ded1; cursor:pointer; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary>span { color:#80b292; font-size:21px; transition:transform .3s; }
.faq-list details[open] summary>span { transform:rotate(45deg); }
.faq-list p { font-size:15px; margin:0 0 25px; color:#91b09d; }
.blueprint-final { text-align:center; border-top:1px solid var(--line); padding:85px 0; }
.blueprint-final>.eyebrow { font-size:10px; }
.blueprint-final h2 { font-size:clamp(48px,6vw,83px); margin:25px 0; }
.blueprint-final p { color:#91ae9d; font-size:16px; }
.blueprint-final-cta { display:inline-flex; justify-content:center; align-items:center; gap:35px; background:linear-gradient(135deg,#a1edc3,#73dba8); color:#092417; padding:19px 26px; font-size:15px; font-weight:500; margin:15px 0; border-radius:4px; transition:box-shadow .3s; }
.blueprint-final-cta:hover { box-shadow:0 0 35px #72dea920; }
.final-promise { display:block; font-size:11px; color:#6e967d; margin-top:7px; }
.blueprint-footer { width:min(1260px,86%); margin:auto; display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; padding:25px 0 35px; border-top:1px solid #a7c9b526; color:#789984; font-size:11px; }
@media(min-width:1450px) { .hero-break { display:none; } }
@media(max-width:1100px) and (min-width:801px) { .blueprint-hero { gap:35px; } .signup-controls { flex-direction:column; } .signup-controls button { justify-content:space-between; } .issue-preview { padding:25px; } .blueprint-sample,.blueprint-about,.blueprint-faq { gap:45px; } }
@media(max-width:800px) {
 .newsletter-page header nav { display:flex; font-size:12px; }
 .newsletter-page header nav>a:first-child { display:none; }
 .newsletter-page .contact-link span { margin-left:12px; }
 .blueprint-hero { grid-template-columns:1fr; gap:45px; padding:120px 0 55px; }
 .blueprint-intro>.eyebrow { font-size:9px; }
 .blueprint-intro h1 { font-size:clamp(55px,10.8vw,80px); }
 .hero-break { display:none; }
 .blueprint-promise { font-size:17px; }
 .blueprint-summary { font-size:15px; }
 .signup-controls { flex-direction:column; gap:4px; }
 .signup-controls button { justify-content:space-between; padding:16px; font-size:14px; }
 .signup-controls input { padding:15px 12px; }
 .blueprint-preview-wrap { width:min(100%,420px); justify-self:center; padding:10px; }
 .issue-preview { transform:rotateZ(1deg); padding:28px; }
 .issue-masthead { font-size:46px; }
 .blueprint-section-heading { grid-template-columns:1fr; }
 .blueprint-section-heading>p { margin-top:22px; }
 .blueprint-section-heading>p br { display:none; }
 .benefit-grid { grid-template-columns:1fr; gap:30px; margin-top:35px; }
 .benefit-grid h3 br { display:none; }
 .benefit-grid h3 { font-size:27px; }
 .blueprint-benefits { padding:45px 0; }
 .blueprint-sample,.blueprint-about,.blueprint-faq { grid-template-columns:1fr; gap:30px; padding:40px 0 55px; }
 .sample-intro { position:static; }
 .sample-intro>p { max-width:none; }
 .sample-label { margin-top:10px; padding-top:15px; }
 .sample-letter { padding:25px 22px; }
 .sample-letter>h3 { font-size:28px; }
 .sample-points>li { gap:13px; }
 .blueprint-portrait { max-height:460px; }
 .blueprint-faq h2 { margin-bottom:0; }
 .blueprint-final { padding:55px 0; }
 .blueprint-final-cta { font-size:14px; gap:22px; padding:18px 20px; }
 .blueprint-footer { flex-direction:column; gap:17px; }
}
@media(prefers-reduced-motion:reduce) { .issue-preview,.issue-preview:hover { transform:none; } }

/* The same form follows the reader, keeping their email and focus intact. */
/* Light travels over the glass; the controls themselves remain still and sharp. */
.signup-controls { position:relative; isolation:isolate; }
.signup-controls::before { content:""; position:absolute; z-index:2; inset:0; border-radius:5px; pointer-events:none; background:linear-gradient(112deg,transparent 35%,#e4fff509 42%,#effffb38 49%,#d4ffe912 55%,transparent 64%); background-size:300% 100%; background-position:120% 0; opacity:0; animation:blueprint-sheen 6.8s ease-in-out infinite; }
.signup-controls::after { content:""; position:absolute; inset:-3px; border:1px solid #a0f3c8b3; border-radius:7px; box-shadow:0 0 18px #72dea947,0 0 42px #72dea921,inset 0 0 12px #b9ffdf0d; pointer-events:none; opacity:.22; animation:blueprint-invitation 6.8s ease-in-out infinite; }
@keyframes blueprint-sheen { 0%,12% { background-position:120% 0; opacity:0; } 20% { opacity:.85; } 48% { background-position:-20% 0; opacity:.85; } 58%,100% { background-position:-20% 0; opacity:0; } }
@keyframes blueprint-invitation { 0%,12%,75%,100% { opacity:.22; } 33%,42% { opacity:1; } }
.blueprint-form:focus-within .signup-controls::before,.blueprint-form.has-submitted .signup-controls::before { animation:none; opacity:0; }
.blueprint-form:focus-within .signup-controls::after { animation:none; opacity:.4; }
.blueprint-form.has-submitted .signup-controls::after { animation:none; opacity:.12; }
@keyframes blueprint-glass-focus { from { -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); } 65% { -webkit-backdrop-filter:blur(28px); backdrop-filter:blur(28px); } to { -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); } }
.blueprint-form.is-docked { position:fixed; z-index:21; top:var(--signup-top,105px); left:7%; right:7%; width:auto; max-width:1120px; margin:0 auto; display:grid; grid-template-columns:190px minmax(0,1fr); column-gap:25px; align-items:center; padding:15px 22px 12px; border:1px solid #bdd9ca3d; border-top-color:#d8ebde5c; border-radius:7px; background:linear-gradient(130deg,#263c31cf,#0c1914e0); animation:blueprint-glass-focus 1.6s ease-out both; -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); box-shadow:0 12px 45px #0006,inset 0 1px #ffffff0e; }
.blueprint-form.is-docked>label { grid-column:1; grid-row:1; margin:0; max-width:180px; line-height:1.5; font-size:13px; color:#cbe2d4; }
.blueprint-form.is-docked .signup-controls { grid-column:2; grid-row:1; flex-direction:row; }
.blueprint-form.is-docked .signup-promise { grid-column:1/-1; grid-row:2; font-size:10px; margin-top:10px; }
.blueprint-form.is-docked .signup-status { grid-column:2; grid-row:2; justify-self:end; text-align:right; margin-top:10px; font-size:10px; max-width:430px; }
.blueprint-form.is-docked .signup-status.is-complete { grid-column:1/-1; grid-row:3; justify-self:stretch; text-align:left; max-width:none; padding:8px 10px; }
@media(max-width:800px) {
 .blueprint-form.is-docked { left:4%; right:4%; padding:12px; column-gap:12px; grid-template-columns:1fr; }
 .blueprint-form.is-docked>label { grid-column:1; grid-row:1; max-width:none; font-size:11px; margin-bottom:8px; }
 .blueprint-form.is-docked .signup-controls { grid-column:1; grid-row:2; }
 .blueprint-form.is-docked .signup-controls input { padding:11px 9px; }
 .blueprint-form.is-docked .signup-controls button { font-size:12px; padding:11px 13px; gap:10px; }
 .blueprint-form.is-docked .signup-promise { display:none; }
 .blueprint-form.is-docked .signup-status { grid-column:1; grid-row:3; justify-self:start; text-align:left; font-size:9px; margin-top:7px; }
 .blueprint-form.is-docked .signup-status.is-complete { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { .signup-controls::before { animation:none; opacity:0; } .signup-controls::after { animation:none; opacity:.3; } .blueprint-form.is-docked { animation:none; } }

.newsletter-page{overflow-x:clip}.blueprint-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.blueprint-intro,.signup-slot,.blueprint-preview-wrap{min-width:0}@media(max-width:800px){.blueprint-hero{grid-template-columns:1fr}}

/* One field at a time, always in the same glass box. */
.blueprint-form .signup-controls{display:flex;flex-direction:row;gap:0;overflow:hidden}
.blueprint-form .signup-controls input{flex:1;min-width:0;width:100%;font-size:16px}
.blueprint-form .signup-controls input[hidden],.signup-back[hidden]{display:none!important}
.blueprint-form .signup-controls button{flex-shrink:0;white-space:nowrap;gap:8px}
.signup-back{background:transparent;border:0;color:var(--accent-soft);font:inherit;font-size:10px;padding:0 0 0 12px;cursor:pointer}
.signup-back:focus-visible{outline:1px solid var(--accent-soft);outline-offset:4px}
@media(max-width:600px){.blueprint-form .signup-controls button{font-size:12px;padding:12px 10px}.blueprint-form .signup-controls input{padding:12px 8px}}
