/* =====================================================================
   SUPPORT SPOLEAD — reader contributions. Loaded site-wide (small file) because the footer
   strip appears on every page; the homepage banner, article prompt and /support/ page styles
   live in the same file since they share the .supp- button/notice primitives below.
   ===================================================================== */

.supp-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:6px;font:700 .92rem/1 var(--sans);letter-spacing:.02em;text-decoration:none;cursor:pointer;border:1px solid transparent}
.supp-btn-primary{background:var(--dark);color:#fff}
.supp-btn-primary:hover{background:#611d2e}
.supp-btn-outline{background:transparent;color:var(--dark);border-color:var(--dark)}
.supp-btn-outline:hover{background:var(--dark);color:#fff}
.supp-btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.supp-btn-outline-light:hover{background:rgba(255,255,255,.12)}
.supp-btn-sm{padding:9px 18px;font-size:.85rem}

/* ---- Homepage banner (dismissible) ---- */
.supp-banner{background:var(--bg2);border-bottom:1px solid var(--rule);border-top:3px solid var(--dark)}
.supp-banner-in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px;flex-wrap:wrap}
.supp-banner-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;max-width:72ch}
.supp-banner-kicker{font:700 .78rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dark)}
.supp-banner-sub{font:italic 600 1rem/1.3 var(--serif);color:var(--fg)}
.supp-banner-body{font:400 .92rem/1.4 var(--sans);color:var(--fg2)}
.supp-banner-actions{display:flex;align-items:center;gap:10px;flex:none}
.supp-banner-close{width:30px;height:30px;border-radius:50%;border:1px solid var(--rule);background:none;color:var(--fg2);font-size:1.2rem;line-height:1;display:grid;place-items:center}
.supp-banner-close:hover{border-color:var(--dark);color:var(--dark)}

/* ---- Footer strip ---- */
.supp-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:clamp(24px,3vw,32px);padding-top:clamp(20px,2.6vw,28px);border-top:1px solid rgba(255,255,255,.18)}
.supp-foot-text{display:flex;flex-direction:column;gap:3px;color:var(--accent-ink,#fff)}
.supp-foot-text strong{font:700 1rem/1.2 var(--serif)}
.supp-foot-text span{font:400 .88rem/1.35 var(--sans);opacity:.85}

/* ---- Article support prompt ---- */
.supp-prompt{max-width:var(--read,700px);margin:clamp(28px,3.6vw,40px) auto;padding:20px 24px;background:#fff;border:1px solid var(--rule);border-left:3px solid var(--dark);border-radius:4px}
.supp-prompt-h{margin:0;font:700 1.02rem/1.25 var(--serif);color:var(--fg)}
.supp-prompt-body{margin:8px 0 14px;font:400 .95rem/1.5 var(--sans);color:var(--fg2)}
.supp-prompt-end{max-width:var(--read,700px);margin:clamp(24px,3vw,32px) auto 0;padding-top:16px;border-top:1px solid var(--rule);font:400 .92rem/1.4 var(--sans);color:var(--fg2)}
.supp-prompt-end a{color:var(--dark);font-weight:700;text-decoration:none}
.supp-prompt-end a:hover{text-decoration:underline}

/* ---- /support/ page ---- */
.supp-page{background:var(--bg)}
.supp-sh{margin:0 0 20px;font:700 1.5rem/1.15 var(--serif);letter-spacing:-.01em;color:var(--fg)}

.supp-status{padding-block:28px;text-align:center}
.supp-status-success{background:var(--bg2);border-bottom:3px solid var(--dark)}
.supp-status-cancelled{background:var(--bg2);border-bottom:3px solid var(--rule)}
.supp-status-h{margin:0;font:700 1.6rem/1.2 var(--serif);color:var(--fg)}
.supp-status-body{margin:10px auto 0;max-width:60ch;font:400 1.02rem/1.5 var(--sans);color:var(--fg2)}
.supp-status-amount{margin:12px 0 0;font:700 1rem/1 var(--sans);color:var(--dark)}

.supp-hero{padding-block:clamp(48px,7vw,80px) clamp(28px,4vw,44px)}
.supp-hero-in{max-width:760px;margin-inline:auto}
.supp-kicker{display:inline-block;font:700 .8rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--dark)}
.supp-h1{margin:14px 0 0;font:700 clamp(2rem,1.5rem + 2.2vw,3rem)/1.08 var(--serif);letter-spacing:-.015em;color:var(--fg);text-wrap:balance}
.supp-tagline{margin:12px 0 0;font:italic 400 clamp(1.05rem,1rem + .4vw,1.3rem)/1.35 var(--serif);color:var(--fg2)}
.supp-rule{width:56px;height:3px;background:var(--dark);margin:22px 0 20px;border-radius:1px}
.supp-intro{margin:0 0 18px;max-width:64ch;font:400 1.05rem/1.6 var(--sans);color:var(--fg2)}
.supp-secondary{margin:4px 0 0;font:600 .95rem/1.4 var(--sans);color:var(--dark)}

.supp-matters{padding-block:0 clamp(32px,5vw,56px)}
.supp-matters .wrap{max-width:760px}
.supp-matters-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.supp-matters-list li{position:relative;padding-left:22px;font:400 1rem/1.4 var(--sans);color:var(--fg)}
.supp-matters-list li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--dark)}

.supp-give{padding-block:clamp(32px,5vw,56px);background:var(--bg2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.supp-give .wrap{max-width:640px}
.supp-notice{padding:18px 20px;border:1px solid var(--rule);border-radius:6px;background:#fff;margin-bottom:8px}
.supp-notice p{margin:0 0 6px;font:400 .95rem/1.5 var(--sans);color:var(--fg2)}
.supp-notice p:last-child{margin-bottom:0}

.supp-freq{display:flex;gap:10px;margin-bottom:20px}
.supp-freq-btn{flex:1;padding:14px;border:1px solid var(--rule);border-radius:6px;background:#fff;color:var(--fg2);font:700 .92rem/1 var(--sans)}
.supp-freq-btn.is-active{background:var(--dark);color:#fff;border-color:var(--dark)}

.supp-amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.supp-amount-btn{padding:14px 8px;border:1px solid var(--rule);border-radius:6px;background:#fff;color:var(--fg);font:700 1rem/1 var(--sans)}
.supp-amount-btn.is-active{background:var(--dark);color:#fff;border-color:var(--dark)}

.supp-other{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}
.supp-other label{font:600 .8rem/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--fg2)}
.supp-other input{padding:12px 14px;border:1px solid var(--rule);border-radius:6px;font:600 1.1rem/1 var(--sans);background:#fff;color:var(--fg)}

.supp-summary{margin:0 0 18px;font:400 1.02rem/1.3 var(--sans);color:var(--fg2)}
.supp-summary strong{color:var(--dark);font-size:1.1em}

#supp-continue{width:100%;justify-content:center}
.supp-unavailable{margin:12px 0 0;font:600 .88rem/1.4 var(--sans);color:var(--dark)}
.supp-processor-note{margin:14px 0 0;font:400 .82rem/1.4 var(--sans);color:var(--fg2)}

.supp-trust{padding-block:clamp(32px,5vw,56px)}
.supp-trust .wrap{max-width:680px}
.supp-trust-p{margin:0 0 14px;font:400 .98rem/1.55 var(--sans);color:var(--fg2)}
.supp-trust-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px}
.supp-trust-links a{font:700 .88rem/1 var(--sans);color:var(--dark);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px}

.supp-faq{padding-block:0 clamp(48px,7vw,80px)}
.supp-faq .wrap{max-width:680px}
.supp-faq-item{border-bottom:1px solid var(--rule);padding-block:14px}
.supp-faq-item summary{cursor:pointer;font:700 1rem/1.3 var(--serif);color:var(--fg);list-style:none}
.supp-faq-item summary::-webkit-details-marker{display:none}
.supp-faq-item summary::before{content:"+";display:inline-block;width:18px;color:var(--dark);font-weight:700}
.supp-faq-item[open] summary::before{content:"\2212"}
.supp-faq-item p{margin:10px 0 0 18px;font:400 .95rem/1.5 var(--sans);color:var(--fg2)}

@media (max-width:720px){
  .supp-banner-in{flex-direction:column;align-items:flex-start}
  .supp-amounts{grid-template-columns:repeat(2,1fr)}
  .supp-foot{flex-direction:column;align-items:flex-start}
}
