:root{--campaign-cream:#f6f1e6;--campaign-navy:#102d3d;--campaign-gold:#b28637;--campaign-ink:#192c36}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}.campaign-site{color:var(--campaign-ink);font-size:20px;line-height:1.5}img{display:block;max-width:100%;height:auto}figure{margin:0}p{margin:0 0 1.1em}a{color:inherit;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #9d552f;outline-offset:6px}h1,h2,h3{font-weight:450;letter-spacing:-.035em;line-height:1.04;margin:0 0 .55em}h2{font-size:clamp(38px,4.3vw,62px)}h3{font-size:34px}.eyebrow{font-size:13px;line-height:1.5;font-weight:650;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}.review-strip{padding:7px 20px;text-align:center;background:#eaf4f9;color:#102d3d;font-family:Arial,sans-serif;font-size:12px}.museum-header{display:flex;justify-content:space-between;gap:25px;padding:18px 5vw;border-bottom:1px solid #d8d7d0}.campaign-brand{font-size:23px;line-height:1.03;text-decoration:none}.campaign-brand strong{font-weight:550}.campaign-nav{display:flex;gap:28px;align-items:center;font-size:17px}.campaign-nav a{display:inline-flex;min-height:44px;align-items:center;text-decoration:none}.campaign-nav a:hover{text-decoration:underline}.museum-brand-divider{height:48px}.museum-brand-lockup{gap:24px}.campaign-hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;background:var(--campaign-cream)}.hero-copy{padding:76px 5vw 64px;align-self:center}.hero-copy h1{font-size:clamp(58px,6.4vw,100px);line-height:.98;margin-bottom:30px}.hero-copy>p:not(.eyebrow):not(.hero-context){max-width:510px;font-size:23px;line-height:1.4}.hero-context{font-size:15px;margin:26px 0 0;color:#455660}.hero-media{display:flex;flex-direction:column;min-width:0;background:var(--campaign-cream)}.hero-media img{width:100%;height:auto;min-height:0;aspect-ratio:3/2;object-fit:contain}.hero-media figcaption,figcaption{font-size:12px;color:#4f5d62;line-height:1.4;padding:9px 0}.hero-media figcaption{padding:9px 16px;background:var(--campaign-cream)}.button{background:var(--campaign-navy);color:white;display:inline-flex;align-items:center;gap:20px;min-height:48px;border:1px solid var(--campaign-navy);padding:12px 23px;text-decoration:none;font:inherit;font-size:18px;border-radius:0}.button:hover{background:#245f7f}.button:disabled{cursor:not-allowed;background:#e1ddd2;color:#4d565a;border-color:#a6aaab;opacity:1}.section{padding:85px max(5vw,calc((100vw - 1280px)/2));}.meaning{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.reading-copy{max-width:670px}.reading-copy p:last-child{margin-bottom:0}.ways{background:#f5f7f6;border-top:1px solid #d8e1e5}.section-heading{margin-bottom:42px}.example-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 40px}.example{background:white;min-width:0;border-bottom:2px solid #d5bb7f}.example figure img{width:100%;aspect-ratio:3/2;object-fit:contain}.example figcaption{padding:7px 24px;color:#536268;background:#f0f3f2}.example-copy{padding:30px 32px}.example-copy .eyebrow{color:#72602e;margin-bottom:14px}.example-copy p:first-of-type+ h3 + p{font-size:24px;line-height:1.28}.example-copy strong{font-weight:550}.invitation{max-width:900px;margin:65px auto 0;text-align:center}.invitation blockquote{font-size:clamp(30px,3.3vw,44px);line-height:1.16;margin:0 0 28px}.invitation>p:last-child{max-width:680px;margin:0 auto}.backing{background:var(--campaign-navy);color:#fff}.backing-inner{padding-top:85px;padding-bottom:85px}.backing .eyebrow{color:#f2cf70}.backing h2{font-size:clamp(42px,5.6vw,80px)}.backing-copy{max-width:920px;columns:2;column-gap:65px;margin-top:35px}.backing-copy p{break-inside:avoid}.foundation{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center}.foundation-identity img{width:130px;margin:0 0 30px}.foundation-identity .eyebrow{max-width:310px}.reading-copy ol{padding-left:24px}.reading-copy li{padding-left:5px;margin-bottom:20px}.coffee-section{background:var(--campaign-cream);border-top:1px solid #dfd4b9}.coffee-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:5vw;align-items:center}.coffee-copy{max-width:550px}.campaign-close{font-size:45px;line-height:1.05;margin-top:32px}.bags{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:10px}.bags>div{min-width:0;text-align:center}.bags img{width:100%;height:auto}.bags p{font-size:20px;line-height:1.2;margin:16px 0 0}.product-pair figcaption{text-align:center;margin-top:28px}.review-note{font-family:Arial,sans-serif;font-size:13px;line-height:1.6;max-width:380px;margin:16px 0 0;padding-left:14px;border-left:2px solid #b28637}.campaign-footer{padding:55px 5vw 25px;background:var(--campaign-navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:20px 60px;font-size:18px}.campaign-footer strong{font-size:30px;font-weight:500}.campaign-footer p{margin-top:12px}.campaign-footer nav{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.campaign-footer nav a{min-height:44px;display:flex;align-items:center}.footer-note{grid-column:1/-1;font-size:13px;opacity:.8;border-top:1px solid #516771;padding-top:22px}
@media(min-width:1441px){.hero-copy{padding-left:max(5vw,calc((100vw - 1280px)/2))}.campaign-hero{grid-template-columns:1fr 1fr}}
@media(max-width:1000px){.museum-header{flex-wrap:wrap}.campaign-hero{grid-template-columns:1fr 1fr}.hero-copy{padding:48px 5vw}.hero-copy h1{font-size:64px}.hero-copy>p:not(.eyebrow):not(.hero-context){font-size:21px}.hero-media img{min-height:0}.section{padding:65px 5vw}.meaning,.foundation{gap:5vw}.example-copy{padding:26px}.backing-copy{column-gap:35px}.campaign-nav{gap:20px}.coffee-inner{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.campaign-site{font-size:19px;line-height:1.5}.museum-header{padding:16px 22px 10px;gap:14px}.museum-brand-lockup{gap:17px}.museum-foundation-back{font-size:13px}.museum-brand-divider{height:44px}.campaign-brand{font-size:21px}.campaign-nav{width:100%;justify-content:space-between;gap:12px;font-size:16px}.campaign-hero{display:flex;flex-direction:column}.hero-copy{padding:28px 24px;align-self:stretch}.hero-copy h1{font-size:clamp(51px,14vw,76px);margin-bottom:22px}.hero-copy .eyebrow{font-size:11px;letter-spacing:.10em;max-width:320px}.hero-copy>p:not(.eyebrow):not(.hero-context){font-size:22px}.hero-media{width:100%}.hero-media img{height:auto;min-height:0;aspect-ratio:3/2;object-fit:contain}.hero-media figcaption{padding:8px 24px}.section{padding:50px 24px}.meaning,.foundation,.coffee-inner{display:block}.reading-copy{margin-top:25px}.eyebrow{font-size:12px;margin-bottom:15px}h2{font-size:43px;line-height:1.07}h3{font-size:31px}.example-grid{grid-template-columns:1fr;gap:30px}.section-heading{margin-bottom:28px}.example-copy{padding:25px}.example-copy p:last-child{margin-bottom:0}.invitation{margin-top:42px}.invitation blockquote{font-size:31px;line-height:1.2}.backing h2{font-size:43px}.backing-copy{columns:auto;margin-top:25px}.foundation-identity img{width:105px;margin-bottom:25px}.product-pair{margin-top:35px}.bags{gap:4px;margin:0 -10px}.bags p{font-size:17px}.campaign-close{font-size:42px}.coffee-copy{max-width:none}.campaign-footer{padding:40px 24px 24px;grid-template-columns:1fr;gap:20px}.campaign-footer strong{font-size:28px}.footer-note{grid-column:1}.review-strip{font-size:10px;padding:7px 12px}.hero-context{font-size:14px}.button{font-size:17px;padding:12px 19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.campaign-footer .footer-tagline{font-size:20px;line-height:1.4;margin:10px 0 20px}

/* Private typography comparison. Main draft has no data-typography override. */
@font-face{font-family:CampaignPoppins;src:url('poppins-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:CampaignPoppins;src:url('poppins-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:CampaignPoppins;src:url('poppins-700.woff2') format('woff2');font-weight:700;font-display:swap}
.type-review{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px 24px;background:#eaf4f9;font:13px/1.4 Arial,sans-serif}.type-review a{display:flex;align-items:center;min-height:44px;padding:5px 8px}.type-review a[aria-current]{background:#102d3d;color:white;text-decoration:none}.type-review strong{margin-right:10px}
[data-typography="sans"],[data-typography="mixed"]{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
[data-typography="mixed"] h1,[data-typography="mixed"] h2,[data-typography="mixed"] h3,[data-typography="mixed"] .campaign-close,[data-typography="mixed"] blockquote{font-family:var(--museum-serif)}
[data-typography="sans"] h1,[data-typography="sans"] h2,[data-typography="sans"] h3{font-weight:650;letter-spacing:-.045em;line-height:1.07}
[data-typography="poppins"]{font-family:CampaignPoppins,Arial,sans-serif}
[data-typography="poppins"] h1,[data-typography="poppins"] h2,[data-typography="poppins"] h3{font-weight:600;letter-spacing:-.04em;line-height:1.1}
[data-typography="poppins"] .hero-copy h1,[data-typography="sans"] .hero-copy h1{font-size:clamp(52px,5.6vw,88px)}
[data-typography="poppins"] .eyebrow,[data-typography="sans"] .eyebrow,[data-typography="mixed"] .eyebrow{font-weight:600;letter-spacing:.08em}
[data-typography="poppins"] .hero-copy>p:not(.eyebrow):not(.hero-context),[data-typography="sans"] .hero-copy>p:not(.eyebrow):not(.hero-context),[data-typography="mixed"] .hero-copy>p:not(.eyebrow):not(.hero-context){font-size:21px;line-height:1.55}
@media(max-width:720px){[data-typography="poppins"] .hero-copy h1,[data-typography="sans"] .hero-copy h1{font-size:clamp(43px,11.7vw,64px)}[data-typography="poppins"] h2,[data-typography="sans"] h2{font-size:36px}[data-typography="poppins"] h3,[data-typography="sans"] h3{font-size:27px}[data-typography="poppins"] .backing h2,[data-typography="sans"] .backing h2{font-size:36px}.type-review{padding:10px 16px;gap:4px 10px;font-size:12px}.type-review strong{width:100%}}

.contribution-banner{background:var(--campaign-navy);color:#fff;padding:22px 24px;text-align:center;border-top:1px solid #b28637;border-bottom:1px solid #b28637}.contribution-banner p{font-size:clamp(20px,2.1vw,28px);line-height:1.4;font-weight:600;letter-spacing:0;margin:0}
@media(max-width:720px){.contribution-banner{padding:20px 24px}.contribution-banner p{font-size:21px;max-width:340px;margin:auto}}
