/* A personal appeal followed directly by contribution choices. */
.support-journey [hidden]{display:none!important}
.support-journey main [id]{scroll-margin-top:24px}
.support-intro{padding:34px 0 24px}
.support-intro>.wrap,.support-body{max-width:960px}
.support-intro h1{font-size:42px;line-height:1.1;letter-spacing:-1px;margin:0 0 22px;max-width:760px}
.support-appeal{max-width:760px;font-size:17px;line-height:1.55}
.support-appeal p{margin:0 0 16px}
.support-appeal .support-signature{margin-bottom:0}
.support-body>.support-giving{padding:0 0 40px}
.support-monthly{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:36px;align-items:center;background:#f5f5f7;padding:28px;border-radius:5px;margin-bottom:36px}
.support-monthly .intro-label{font-size:var(--eyebrow-size);margin:0 0 12px;font-weight:600;line-height:1.25;letter-spacing:normal}
.support-monthly h2{font-size:28px;line-height:1.2;letter-spacing:-.5px;margin:0 0 16px}
.support-monthly p{font-size:16px;line-height:1.6;margin:0 0 16px}
.support-monthly .support-small{font-size:13px;line-height:1.65;margin:0}
.support-monthly-action .button{font-size:15px;text-align:center;display:block}
.support-monthly-action .support-small{margin-top:14px}
.support-monthly-action form{margin:0}
.support-monthly-action label{display:block;font-size:14px;font-weight:600;line-height:1.4;margin-bottom:8px}
.support-monthly-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.support-monthly-presets button{appearance:none;border:1px solid #c7c7cc;border-radius:4px;background:white;color:#1d1d1f;font:600 16px/1.4 Madefor,Arial,sans-serif;min-height:44px;cursor:pointer}
.support-monthly-presets button[aria-pressed=true]{background:#1d1d1f;border-color:#1d1d1f;color:white}
.support-monthly-input{display:flex;gap:8px;align-items:center;margin-bottom:16px;font-size:16px;white-space:nowrap}
.support-monthly-input input{width:100%;min-width:0;min-height:46px;border:1px solid #9c9ca1;background:white;border-radius:4px;padding:9px 10px;font:600 18px/1.4 Madefor,Arial,sans-serif;color:#1d1d1f}
.support-monthly-action .button{width:100%;line-height:1.4;min-height:48px}
.support-monthly .support-monthly-once{font-size:14px;margin:14px 0 0}
.support-once-title{font-size:24px;line-height:1.3;margin:0 0 20px}
.support-audience-controls{display:flex;gap:8px;margin:0 0 18px}
.support-audience-controls button{appearance:none;border:0;box-shadow:none;background:#f1f1f3;color:var(--ink);padding:12px 18px;min-height:44px;border-radius:4px;font:600 14px/1.45 Madefor,Arial,sans-serif;cursor:pointer}
.support-audience-controls button[aria-pressed=true]{background:#1d1d1f;color:#fff}
.support-audience-heading{font-size:19px;margin:0 0 18px}
.support-giving.is-enhanced .support-audience-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.support-amount-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.support-amount{color:var(--ink);text-decoration:none;background:white;border-radius:5px;padding:25px;display:flex;flex-direction:column;align-items:start;box-shadow:0 2px 16px #1d1d1f0e;transition:background .15s;min-height:193px}
.support-amount:hover{background:#ededf0;text-decoration:none}
.support-price{font-size:40px;line-height:1.1;font-weight:600;letter-spacing:-1px;margin-bottom:16px}
.support-amount>span:nth-child(2){font-size:16px;line-height:1.45;margin-bottom:20px}
.support-choice-action{font-size:14px;font-weight:600;margin-top:auto;background:var(--orange);color:white;padding:12px 18px;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;text-decoration:none}
.support-amount:focus-visible,.support-shortcuts a:focus-visible,.support-audience-controls button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.support-custom{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#f5f5f7;padding:22px 25px;border-radius:5px;margin-top:22px}
.support-custom p{font-size:16px;line-height:1.6;margin:0}
.support-custom .button{white-space:normal;font-size:15px}
.support-shortcuts{font-size:15px;line-height:1.7;margin:16px 0 0}
.support-shortcuts a{display:inline-block;padding:8px 2px;text-underline-offset:4px}
.support-payment-note,.support-orientation{font-size:14px;line-height:1.65;color:var(--vh-muted,#616166);max-width:760px;margin:20px 0 0}
.support-receipt{margin:22px 0 0;font-size:15px;line-height:1.6}
.support-receipt p{margin:0 0 12px}
.support-receipt nav{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:13px}
.support-free{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;padding:50px 0;border-top:1px solid var(--vh-line,#dddde2)}
.support-free .intro-label{font-size:var(--eyebrow-size);margin-bottom:16px;font-weight:600;line-height:1.25;letter-spacing:normal}
.support-free h2{font-size:34px;line-height:1.18;margin:0 0 24px;letter-spacing:-.7px}
.support-free p{font-size:17px;line-height:1.65;margin:0 0 20px}
.support-free-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;font-size:14px}
.support-free-actions .button{font-size:15px}
.support-later{padding-top:34px}
.support-later h3{font-size:24px;margin:0 0 22px}
.support-later>a{font-size:16px}
.support-later .support-small,.support-small{font-size:14px;line-height:1.65;color:var(--vh-muted,#616166);margin-top:20px}
.support-note-section{padding:0 0 50px}
.support-note-section .disclosure-body{max-width:690px;font-size:17px;line-height:1.65}
.support-note-section .disclosure-body>p{margin-bottom:20px}
.support-note-section summary h2{font-size:23px}
.support-note-section .membership-form{margin-top:26px}
.support-note-section .support-note-next{margin-top:22px}
.support-finish{display:flex;align-items:center;justify-content:space-between;gap:55px;background:#1d1d1f;color:white;padding:36px 38px;margin-bottom:60px;border-radius:5px}
.support-finish h2{font-size:27px;margin:0 0 18px;color:white}
.support-finish .intro-label{font-size:var(--eyebrow-size);color:#d1d1d6;margin-bottom:14px;font-weight:600;line-height:1.25;letter-spacing:normal}
.support-finish p:not(.intro-label){font-size:16px;line-height:1.6;max-width:570px;margin:0;color:#dfdfe3}
.support-finish .button{flex-shrink:0;background:#f5f5f7;color:#1d1d1f;font-size:14px;text-align:center}

@media(max-width:850px){.support-free{gap:36px}.support-finish{display:block}.support-finish .button{margin-top:26px}}
@media(max-width:600px){
.support-monthly{grid-template-columns:1fr;gap:22px;padding:22px 20px;margin-bottom:28px}
.support-monthly h2{font-size:25px}
.support-monthly-action .button{display:inline-flex}
.support-once-title{font-size:22px}
.support-intro{padding:20px 0 18px}
.support-intro h1{font-size:30px;line-height:1.1;letter-spacing:-.6px;margin-bottom:16px}
.support-appeal{font-size:15px;line-height:1.45}
.support-appeal p{margin-bottom:12px}
.support-audience-controls{display:grid;grid-template-columns:.8fr 1.2fr;gap:7px;margin:0 0 12px}
.support-audience-controls button{padding:10px 8px;font-size:13px}
.support-amount-grid{gap:10px;grid-template-columns:1fr}
.support-amount{min-height:0;padding:16px 20px;display:grid;grid-template-columns:65px minmax(0,1fr);column-gap:18px;align-items:center}
.support-price{grid-row:1/3;font-size:34px;margin:0}
.support-amount>span:nth-child(2){margin:0;font-size:15px}
.support-amount .support-choice-action{margin-top:8px;font-size:13px;padding:10px 14px;justify-self:start}
.support-custom{display:block;padding:22px 20px}
.support-custom .button{margin-top:18px}
.support-shortcuts{font-size:14px;margin-top:12px}
.support-payment-note,.support-orientation{font-size:13px}
.support-free{grid-template-columns:1fr;padding:34px 0;gap:32px}
.support-free h2{font-size:29px;margin-bottom:20px}
.support-free p{font-size:16px}
.support-later{padding-top:0}
.support-later h3{font-size:24px;margin-bottom:16px}
.support-later .support-small{font-size:13px}
.support-note-section{padding-bottom:34px}
.support-note-section summary h2{font-size:20px}
.support-note-section .disclosure-hint{font-size:13px;line-height:1.5}
.support-finish{padding:28px 24px;margin-bottom:40px}
.support-finish h2{font-size:25px}
.support-finish p:not(.intro-label){font-size:15px}
}
@media(prefers-reduced-motion:reduce){.support-amount{transition:none}}
