/* Campaign-wide type scale: body 18–20px; supporting text 14–16px. */
:root{--muted:#655044;--line:#d8c8b4;--red:#ce3028}
body{font-size:18px;line-height:1.7}
.wrap{max-width:1320px;padding-left:56px;padding-right:56px}
h1,h2{letter-spacing:-.045em}h3{letter-spacing:-.025em}
h2{font-size:clamp(40px,4.1vw,58px);line-height:1.14}
header{max-width:1440px;padding:26px 44px;gap:32px}
.brand{font-size:24px;flex-shrink:0}.brand small{font-size:11px;letter-spacing:.08em;line-height:1.5}
.brand img{width:56px;height:56px}
nav{font-size:15px;gap:24px}nav a{white-space:nowrap}
.announcement{font-size:14px;padding:10px 20px;letter-spacing:.01em}
.button,.outline,.small,.transparency .outline,.beneficiary .actions .button{font-size:16px;line-height:1.5;min-height:52px;padding:14px 22px;border-radius:8px}
.text-link,.hero .text-link,.beneficiary .text-link{font-size:16px;line-height:1.5;min-height:44px;align-items:center}
.eyebrow,.hero .eyebrow,.values .eyebrow,.beneficiary-art .eyebrow,.festive-copy .eyebrow,.community .eyebrow{font-size:13px;letter-spacing:.11em;line-height:1.6;margin-bottom:22px}
.hero{grid-template-columns:1.1fr 1fr;gap:32px;min-height:740px;padding-top:58px;padding-bottom:70px}
.hero h1{font-size:clamp(66px,6.1vw,88px);line-height:1.03;margin-bottom:28px}
.lead{font-size:24px;line-height:1.4;margin-bottom:18px}
.hero .intro{font-size:20px;line-height:1.7;max-width:560px}
.actions{gap:22px;margin-top:30px}
.hero-note{font-size:14px;line-height:1.65;max-width:500px;margin-top:24px}
.sticker{font-size:14px;right:8px;padding:14px 18px;top:65px}
.stage-caption{font-size:11px;letter-spacing:.08em;gap:18px}
.ribbon{font-size:16px;gap:32px;padding:22px 28px;letter-spacing:-.02em}
.beneficiary{padding:80px 0 34px}.beneficiary-grid{gap:36px 64px;align-items:center}
.beneficiary-art{min-height:480px;padding:38px;border-radius:150px 150px 20px 20px}
.beneficiary h2{font-size:clamp(44px,4.3vw,62px)}
.beneficiary p:not(.eyebrow):not(.disclosure){font-size:18px;line-height:1.75;color:#f1e3d5}
.beneficiary .attribution{font-size:14px!important;line-height:1.6;margin-bottom:28px}
.beneficiary-label{font-size:11px;letter-spacing:.06em;line-height:1.6;text-align:center}
.charity-identity strong{font-size:26px}.charity-identity span{font-size:15px}
.disclosure,.beneficiary .disclosure{font-size:13px;line-height:1.7;color:#e0cbb9;max-width:1000px;padding-top:8px}
.mission{grid-template-columns:1fr 1fr;gap:42px;padding-top:96px;padding-bottom:88px}
.mission-intro{font-size:19px;line-height:1.75;padding-top:42px}
.values{gap:36px;margin-top:16px}.values article{padding-top:28px}
.values .eyebrow{margin:24px 0 14px}.values h3{font-size:27px;line-height:1.22;min-height:66px;margin-bottom:16px}
.values p:last-child{font-size:18px;line-height:1.7;max-width:none}
.illustration{height:190px;border-radius:100px 100px 14px 14px}
.festive{grid-template-columns:.85fr 1.15fr;gap:64px;padding-top:80px;padding-bottom:88px}
.festive h2{font-size:clamp(38px,3.7vw,52px)}
.festive-copy>p{font-size:18px;line-height:1.75}.festive-copy .festive-lead{font-size:23px;line-height:1.55}
.festive-copy .season-note{font-size:14px;line-height:1.6}.festive-art{height:430px}
.present-front{top:160px;width:160px;height:160px}.present-back{top:110px;width:120px;height:140px}
.festive-caption{font-size:11px;line-height:1.6;padding:0 25px;bottom:30px;letter-spacing:.06em}
.giving{padding-top:84px;padding-bottom:88px}.giving-heading{align-items:flex-start;gap:44px}
.giving-heading>p{font-size:18px;line-height:1.7;max-width:320px;padding-top:44px}
.journey{margin:42px 0}.journey li{padding:0 26px}.step{font-size:14px}.step b{font-size:22px}
.journey-icon{height:112px;font-size:56px}.journey h3{font-size:24px;line-height:1.2;min-height:58px;margin-bottom:18px}
.journey p{font-size:17px;line-height:1.7}
.fine-print{padding:28px 30px;gap:36px;align-items:flex-start;border-left:3px solid #ac7652}
.fine-print p{font-size:15px;line-height:1.7}.fine-print strong{font-size:17px;margin-bottom:8px}
.fine-print a{font-size:15px;line-height:1.6;max-width:190px;text-decoration:underline;text-underline-offset:4px}
.transparency{padding:88px 0}.transparency h2{font-size:48px}.transparency .giving-heading{align-items:center}
.record-grid{gap:28px;margin-top:30px}.donation-record,.market-record{padding:36px;border-radius:16px;border-color:#cebea9}
.record-heading{font-size:13px;line-height:1.6;letter-spacing:.08em;gap:20px;margin-bottom:24px}
.source{font-size:13px}.metric-label{font-size:17px}.donation-total{font-size:70px}
.donation-record>p[role],.market-record>p[role]{font-size:15px;line-height:1.65}
.donation-detail{gap:24px;padding:22px 0;justify-content:space-between}.donation-detail span{font-size:14px;line-height:1.6}
.donation-detail strong{font-size:20px;display:block;margin-top:8px}
.donation-record>a{font-size:16px;line-height:1.6;padding-top:20px;gap:18px}
.record-note{font-size:14px;line-height:1.7;margin-top:18px}
.market-row{font-size:18px;padding:24px 0;gap:20px;align-items:center}.market-row strong{font-size:28px}.market-row small{font-size:13px;margin-top:5px}
.contract-bar{padding:26px 30px;margin-top:28px}.contract-bar .eyebrow{font-size:12px}.contract-bar code{font-size:16px}
.verification-links{font-size:14px;line-height:1.65;gap:18px 28px;margin-top:22px}.verification-links a{text-decoration:underline;text-underline-offset:4px}
.faq{grid-template-columns:.9fr 1.4fr;gap:64px;padding-top:88px;padding-bottom:88px}.faq h2{font-size:44px}
summary{font-size:18px;line-height:1.5;padding:25px 0;align-items:center}summary span{font-size:26px;flex-shrink:0}
details p{font-size:17px;line-height:1.75;padding:0 30px 12px 0}
.community{padding-top:70px;padding-bottom:60px;border-radius:24px}.community h2{font-size:64px}
.community>p:not(.eyebrow){font-size:20px;line-height:1.65;max-width:660px;margin-left:auto;margin-right:auto}
.community .small-note{font-size:14px!important}.community-star{font-size:100px;left:55px;top:100px}
.footer-top{flex-wrap:wrap;justify-content:flex-start;gap:24px 36px}.footer-top .brand{margin-right:auto}
.footer-top>a:not(.brand){font-size:15px;line-height:1.6}
footer p{font-size:13px;line-height:1.75;max-width:1100px;margin-bottom:12px}.footer-bottom{font-size:13px;gap:24px}
#toast{font-size:16px;max-width:calc(100% - 40px);width:max-content;padding:14px 22px}
@media(max-width:1100px){header{flex-wrap:wrap;justify-content:center;gap:22px}nav{justify-content:center;gap:24px}.wrap{padding-left:36px;padding-right:36px}.hero{gap:24px}.hero h1{font-size:68px}.bear-stage{height:480px}.beneficiary-grid{gap:36px}.beneficiary-art{padding:30px;min-height:440px}.values h3{font-size:25px}.journey li{padding:0 18px}.journey h3{font-size:21px}.record-heading{flex-wrap:wrap;gap:6px}.community-star{font-size:65px;left:25px}.festive{gap:40px}.festive-copy .button{gap:15px}}
@media(max-width:760px){
  body{font-size:17px}.wrap{padding-left:24px;padding-right:24px}
  header{justify-content:space-between;gap:0;padding:18px 24px}.brand{font-size:23px}.brand img{width:47px;height:47px}.brand small{font-size:10px;letter-spacing:.04em}
  .announcement{font-size:12px;line-height:1.5;padding:10px 16px}.announcement span{margin-left:8px}
  .menu{font-size:15px;min-height:44px;align-items:center}nav{font-size:17px;gap:0;align-items:stretch}nav>a{padding:15px 0}
  .hero{padding-top:40px;padding-bottom:48px;gap:0;min-height:0}.hero h1{font-size:clamp(48px,12.8vw,66px);line-height:1.05;letter-spacing:-.055em}
  .hero .eyebrow{font-size:12px;margin-bottom:22px}.lead{font-size:22px;line-height:1.45}.hero .intro{font-size:18px;line-height:1.7}
  .button,.outline,.small,.transparency .outline,.beneficiary .actions .button,.hero .button{font-size:16px;min-height:52px;padding:14px 18px;gap:16px}
  .text-link,.hero .text-link,.beneficiary .text-link{font-size:16px;min-height:44px}.actions,.hero .actions{gap:16px 22px;margin-top:26px}
  .hero-note{font-size:14px;line-height:1.65;margin-top:22px}.bear-stage{height:370px;margin-top:18px}.sticker{font-size:12px;top:28px;right:6px;padding:10px 13px}.stage-caption{font-size:10px;gap:10px}
  .ribbon{font-size:15px;gap:22px;padding:20px 24px}
  .eyebrow,.values .eyebrow,.beneficiary-art .eyebrow,.festive-copy .eyebrow,.community .eyebrow{font-size:12px;letter-spacing:.09em;line-height:1.6}
  h2,.faq h2,.transparency h2{font-size:38px;line-height:1.15}.beneficiary{padding-top:48px;padding-bottom:32px}.beneficiary-grid{display:flex;gap:32px}
  .beneficiary-art{min-height:370px;padding:32px 24px;border-radius:120px 120px 16px 16px}.beneficiary .beneficiary-art img{width:280px;height:155px}
  .beneficiary-label{font-size:11px;line-height:1.6}.charity-identity strong{font-size:25px}.charity-identity span{font-size:14px}
  .beneficiary h2{font-size:46px}.beneficiary p:not(.eyebrow):not(.disclosure){font-size:18px;line-height:1.75}.beneficiary .attribution{font-size:14px!important}
  .disclosure,.beneficiary .disclosure{font-size:13px;line-height:1.7;text-align:left;padding:0}
  .mission{display:block;padding-top:64px;padding-bottom:60px}.mission-intro{font-size:18px;padding-top:0}.values{gap:30px;margin-top:34px}
  .values article{display:block;padding-top:28px}.illustration{height:180px;border-radius:90px 90px 12px 12px}.values .eyebrow{margin:22px 0 12px}
  .values h3{font-size:27px;min-height:0;margin-bottom:14px}.values p:last-child{font-size:18px;line-height:1.7;max-width:none}
  .gift-box{width:86px;height:78px;font-size:34px}.illustration>span{right:25%;font-size:28px}.book-shape{width:78px;height:105px;font-size:44px;line-height:95px}.star div{font-size:150px}
  .festive{grid-template-columns:1fr;gap:34px;padding-top:55px;padding-bottom:64px}.festive-art{height:320px;max-width:400px}.present-front{top:110px;width:130px;height:130px}.present-back{top:80px;width:100px;height:120px}
  .festive h2{font-size:37px}.festive-copy>p{font-size:18px}.festive-copy .festive-lead{font-size:21px}.festive-copy .season-note{font-size:14px}.festive-caption{font-size:10px}
  .giving{padding-top:64px;padding-bottom:64px}.giving-heading{display:block}.giving-heading>p{font-size:18px;padding:0;max-width:none}
  .journey{display:block;margin:30px 0}.journey li,.journey li:first-child,.journey li:nth-child(3),.journey li:last-child{border:0;border-top:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:70px 1fr;gap:10px 20px}
  .step{grid-column:1/-1;font-size:14px}.journey-icon{grid-row:2/4;height:auto;min-height:70px;font-size:43px;align-items:flex-start;line-height:1.4}.journey-icon span{font-size:23px}
  .journey h3{font-size:24px;min-height:0;margin:0}.journey p{font-size:17px;line-height:1.7;grid-column:2}
  .fine-print{display:block;padding:24px}.fine-print p{font-size:15px}.fine-print strong{font-size:17px}.fine-print a{font-size:15px;max-width:none;margin-top:18px}
  .transparency{padding:64px 0}.record-grid{grid-template-columns:1fr;gap:22px}.donation-record,.market-record{padding:25px 22px}
  .record-heading{font-size:12px;gap:12px;justify-content:space-between}.source{font-size:12px}.metric-label{font-size:16px}.donation-total{font-size:64px}
  .donation-record>p[role],.market-record>p[role]{font-size:14px}.donation-detail{gap:20px}.donation-detail span{font-size:14px}.donation-detail strong{font-size:18px}
  .donation-record>a{font-size:16px}.record-note{font-size:14px}.market-row{font-size:18px}.market-row small{font-size:13px}
  .contract-bar{padding:22px;align-items:stretch}.contract-bar .eyebrow{font-size:12px}.contract-bar code{font-size:15px}.verification-links{font-size:14px;gap:16px}
  .faq{display:block;padding-top:64px;padding-bottom:64px}.questions{margin-top:30px}summary{font-size:18px;padding:23px 0}details p{font-size:17px;padding-right:10px}
  .community{margin:0 16px;padding:55px 24px 42px;border-radius:18px}.community h2{font-size:46px}.community>p:not(.eyebrow){font-size:18px;line-height:1.7}.community-star{display:none}.community .small-note{font-size:14px!important}
  .community .actions{flex-direction:column;align-items:stretch;gap:16px}.community .text-link{flex-basis:auto;justify-content:center}
  footer{padding-top:44px}.footer-top{gap:22px 26px}.footer-top .brand{flex-basis:100%;margin-right:0}.footer-top>a:not(.brand){font-size:15px}footer p{font-size:13px;line-height:1.75}.footer-bottom{font-size:12px;flex-direction:column;gap:8px;margin-top:24px}
}
@media(max-width:380px){header{padding-left:20px;padding-right:20px}.brand{font-size:21px}.brand small{font-size:9px}.wrap{padding-left:20px;padding-right:20px}.beneficiary h2{font-size:40px}.festive h2{font-size:33px}.stage-caption{font-size:9px}}

@media(max-width:760px){.journey li:nth-child(2) .journey-icon{font-size:31px;letter-spacing:-.06em}.journey li:nth-child(2) .journey-icon span{font-size:18px}}

@media(min-width:761px) and (max-width:1250px){header{flex-wrap:wrap;justify-content:center;gap:20px}nav{justify-content:center;flex-wrap:wrap;gap:18px 24px}}
