
.art-wrap{max-width:1040px}
.art-head{padding:56px 0 40px;border-bottom:1px solid var(--line)}
.art-head .eyebrow{color:var(--accent);margin-bottom:16px}
.art-head h1{font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.08;max-width:22em;overflow-wrap:break-word}
.byline{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:20px;font-size:.9375rem;color:var(--muted)}
time{white-space:nowrap}
.verified{display:inline-block;padding:4px 10px;border-radius:var(--radius);background:var(--sage-tint);color:var(--accent);font-weight:600;font-size:.875rem}
.answer{margin-top:32px;max-width:46em;padding:22px 26px;background:var(--sage-tint);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0}
.answer-label{font:600 .75rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.answer-text{font:400 1.25rem/1.5 var(--serif);color:var(--text);font-variation-settings:"opsz" 24}
.aside-def{margin-top:14px;max-width:46em;font-size:.9375rem;color:var(--muted)}
.aside-def a,.prose a:not(.btn){color:var(--accent)}
.note{margin-top:20px;max-width:46em;padding:14px 18px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);font-size:.9375rem;color:var(--ink-2)}
.note strong{color:var(--text)}
.art-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding-top:48px;padding-bottom:72px}
.toc{position:sticky;top:24px;align-self:start;font-size:.875rem}
.toc-title{font:600 .75rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.toc ol{border-left:2px solid var(--line)}
.toc li{margin:0}
.toc a{display:block;padding:6px 0 6px 14px;color:var(--ink-2);text-decoration:none;line-height:1.35}
.toc a:hover{color:var(--accent);text-decoration:underline}
.prose{max-width:44em;min-width:0}
.prose section{padding-top:8px;margin-bottom:44px;scroll-margin-top:16px}
.prose h2{font:500 clamp(1.5rem,2.4vw,1.875rem)/1.2 var(--serif);letter-spacing:-.01em;margin-bottom:16px;padding-top:24px;border-top:1px solid var(--line)}
.prose section:first-child h2{border-top:0;padding-top:0}
.prose h2 code{font-size:.8em}
.prose p{color:var(--ink-2);margin-bottom:16px}
.prose p:last-child{margin-bottom:0}
.prose strong{color:var(--text);font-weight:600}
.prose :not(pre)>code{background:var(--bg-alt);border:1px solid var(--line);border-radius:3px;padding:1px 5px;color:var(--text);overflow-wrap:anywhere}
.prose q{quotes:"\201C" "\201D";color:var(--text)}
.ticks{margin:0 0 18px}
.ticks li{position:relative;padding-left:22px;margin:8px 0;color:var(--ink-2)}
.ticks li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;background:var(--accent);border-radius:1px}
.code{margin:0 0 18px;padding:18px 20px;background:var(--text);color:var(--bg);border-radius:var(--radius);font:400 .875rem/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2}
.code code{font-size:inherit}
.prompt{margin:0 0 18px;padding:18px 22px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 var(--radius) var(--radius) 0}
.prompt p{font:400 1.125rem/1.55 var(--serif);color:var(--text)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.qa-block{padding:18px 0;border-bottom:1px solid var(--line-2)}
.qa-block:first-of-type{border-top:2px solid var(--text)}
.qa-block h3{margin-bottom:8px}
.qa-block p{margin:0}
.faq-plain .src{margin-top:16px}
.sources{counter-reset:s;margin:0 0 12px}
.sources li{counter-increment:s;position:relative;padding-left:30px;margin:10px 0;color:var(--ink-2);font-size:.9375rem;overflow-wrap:anywhere}
.sources li::before{content:counter(s);position:absolute;left:0;top:1px;font:600 .8125rem/1.6 var(--mono);color:var(--accent)}
.behind{background:var(--accent);color:var(--on-green);padding:56px 0}
.behind-in{display:flex;gap:28px;align-items:flex-start}
.behind-seal{flex:none;color:var(--bg);--amp:var(--brass)}
.behind-eyebrow{font:600 .75rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--sage);margin-bottom:8px}
.behind h2{font:500 1.75rem/1.2 var(--serif);color:var(--bg);margin-bottom:12px}
.behind p{max-width:40em;margin-bottom:10px}
.behind a{color:var(--bg)}
.behind :focus-visible{outline-color:var(--brass)}
@media (max-width:980px){
  .art-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .toc{position:static;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
  .toc ol{border-left:0}
  .toc a{padding:5px 0}
}
@media (max-width:720px){
  .art-head{padding:40px 0 32px}
  .answer{padding:18px 18px}
  .answer-text{font-size:1.125rem}
  .art-grid{padding-top:32px;padding-bottom:48px}
  .code{padding:14px 14px;font-size:.8125rem}
  .behind{padding:44px 0}
  .behind-in{flex-direction:column;gap:16px}
  .behind-seal{width:56px;height:56px}
}

/* newsletter (direction C: green blocks, cream, sage labels, brass small accents on green only) */
.nl-hero{background:var(--accent);color:var(--on-green);padding:64px 0 56px}
.nl-wrap{max-width:1040px}
.nl-eyebrow{font:600 .75rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--sage);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.nl-eyebrow::before{content:"";width:22px;height:3px;background:var(--brass);border-radius:1px}
.nl-hero h1{font:500 clamp(2.25rem,5vw,3.5rem)/1.05 var(--serif);color:var(--bg);letter-spacing:-.01em;overflow-wrap:break-word}
.nl-pitch{margin-top:16px;max-width:36em;font:400 1.25rem/1.5 var(--serif);color:var(--on-green)}
.nl-card{margin-top:28px;max-width:40em}
.nl-label{display:block;font-weight:600;font-size:.9375rem;color:var(--bg);margin-bottom:8px}
.nl-row{display:flex;gap:10px;flex-wrap:wrap}
.nl-input{flex:1 1 220px;min-width:0;min-height:48px;padding:0 14px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);color:var(--text);font:400 1rem/1.2 var(--sans)}
.nl-input:focus-visible{outline:3px solid var(--brass);outline-offset:2px}
.nl-btn{flex:0 0 auto;background:var(--bg);color:var(--accent)}
.nl-btn:hover{background:#E4DCCB}
.nl-btn:focus-visible{outline:3px solid var(--brass);outline-offset:2px}
.nl-btn[disabled]{opacity:.75;cursor:not-allowed}
.nl-note{margin-top:12px;font-size:.875rem;color:var(--on-green)}
.nl-note a,.nl-hero .nl-link,.nl-alert a,.nl-copy a{color:var(--bg)}
.nl-hero a:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
.hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.nl-alert{margin-top:22px;max-width:40em;padding:14px 18px;border:1px solid var(--sage);border-left:3px solid var(--brass);border-radius:var(--radius);background:var(--accent-hover);color:var(--bg);font-size:.9375rem}
.nl-alert strong{color:var(--bg)}
.nl-small{padding:80px 0 96px}
.nl-copy{margin-top:16px;max-width:36em}
.nl-copy p{margin-top:12px;color:var(--on-green)}
.nl-confirm{margin-top:28px}
.issue-h{font:500 clamp(1.875rem,3.6vw,2.75rem)/1.12 var(--serif);max-width:22em;color:var(--text);overflow-wrap:break-word}
.issue-dek{margin-top:16px;max-width:40em;font:400 1.1875rem/1.5 var(--serif);color:var(--ink-2)}
.issue-wrap{padding-top:40px;padding-bottom:72px}
.issue{max-width:44em}
.issue h3{font:500 clamp(1.375rem,2.2vw,1.625rem)/1.25 var(--serif);margin:36px 0 14px;padding-top:24px;border-top:1px solid var(--line)}
.issue h3:first-of-type{border-top:0;padding-top:0}
.issue ul{margin-bottom:18px}
.issue em{font-style:italic;color:var(--text)}
.issue .issue-rule{border:0;border-top:2px solid var(--text);margin:36px 0}
@media (max-width:720px){
  .nl-hero{padding:44px 0 44px}
  .nl-small{padding:56px 0 64px}
  .nl-pitch{font-size:1.125rem}
  .nl-btn{flex:1 1 100%}
}
