/* Donate: a connected case for giving, using the site's shared type and materials. */
.donate-page { overflow:clip; }
.donate-page section { position:relative; }
.donate-page p { font-size:20px; line-height:1.55; }
.interior-page .donate-opening { padding-block:140px 80px; background:var(--cream); }
.donate-opening-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(440px,1.05fr); gap:70px; align-items:start; }
.donate-proposition h1 { max-width:10ch; margin-bottom:28px; font-size:clamp(52px,4.8vw,72px); }
.donate-proposition p { max-width:44ch; }
.donate-proposition p+p { margin-top:22px; }
.donate-provenance { margin-top:32px; }
.donate-provenance .foundation-mark { gap:18px; font-size:16px; flex-wrap:wrap; }
.donate-provenance .foundation-mark a { width:240px; min-width:0; }
.donation-surface { min-width:0; scroll-margin-top:110px; }
.donation-surface h2 { font-size:36px; margin-bottom:18px; }
.donation-mount { position:relative; isolation:isolate; padding:10px 10px 8px; }
.donation-mount::before { content:''; position:absolute; z-index:-1; inset:6px -7px -8px 7px; background:var(--stone) url('/assets/stone-matte.webp') center / cover; clip-path:polygon(.15% .15%,99.85% 0,100% 99.8%,.1% 100%); transform:rotate(-.16deg); }
.donation-mount::after { content:''; position:absolute; z-index:-1; inset:0; background:#fff; clip-path:polygon(.12% .2%,99.9% 0,100% 99.9%,.08% 100%); transform:rotate(-.06deg); }
.donation-surface [data-zeffy-embed] { min-height:460px; }
.donation-surface iframe { display:block; width:100%; min-height:500px; border:0; }
.donation-fallback,.donation-privacy { margin-top:19px!important; font-size:16px; line-height:1.5; }
.donation-privacy { color:color-mix(in srgb,var(--ink) 72%,transparent); }


.interior-page .donate-hospitality { padding-block:72px; background:var(--white); }
.hospitality-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:80px; }
.hospitality-copy h2 { max-width:15ch; color:var(--navy); font-size:clamp(42px,4.1vw,60px); margin-bottom:28px; }
.hospitality-copy p+p { margin-top:22px; }
.hospitality-stories { display:grid; gap:26px; padding-right:12px; }
.hospitality-abroad { width:88%; }
.hospitality-home { width:88%; margin-left:auto; }
.hospitality-photo { position:relative; isolation:isolate; margin:0; height:235px; }
.hospitality-photo::before { content:''; position:absolute; z-index:-1; inset:9px -10px -10px 9px; transform:rotate(1deg); background:var(--olive) url('/assets/story-olive-matte.webp') center/cover; }
.hospitality-home .hospitality-photo::before { transform:rotate(-1deg); background:var(--navy) url('/assets/story-navy-recycled.webp') center/cover; }
.hospitality-photo .photo-window,.hospitality-photo .photo { width:100%; height:100%; }
.hospitality-photo .photo { object-fit:cover; object-position:center 48%; }
.interior-page .donate-alive { padding-block:85px; background:var(--cream); }
.donate-alive-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:80px; align-items:center; }
.donate-alive h2 { max-width:13ch; margin-bottom:28px; font-size:clamp(44px,4.2vw,62px); }
.donate-alive p+p { margin-top:22px; }
.alive-photo::before { background:var(--navy) url('/assets/partner-navy-recycled.webp') center/cover; }
.alive-photo .photo { aspect-ratio:4/3; object-fit:cover; }
.interior-page .donate-provision { padding-block:85px; color:var(--cream); background:var(--navy) url('/assets/partner-navy-matte.webp') center/cover; }
.work-grid { display:grid; grid-template-columns:1fr 1fr; gap:36px 80px; align-items:start; }
.work-copy { grid-column:1; grid-row:1/3; }
.work-copy h2 { color:var(--cream); font-size:clamp(44px,4.2vw,62px); margin-bottom:28px; }
.work-copy p+p { margin-top:22px; }
.donate-set-table { grid-column:2; margin:0 10px 0 0; }
.donate-set-table::before { background:var(--gold) url('/assets/partner-gold-matte.webp') center/cover; }
.donate-set-table .photo { width:100%; height:270px; object-fit:cover; object-position:center 58%; }
.gift-supports { grid-column:2; }
.gift-supports h3 { color:var(--gold-light); font-size:34px; margin-bottom:20px; }
.work-copy p,.gift-supports p { font-size:19px; }
.donate-give { display:inline-block; margin-top:24px; padding:17px 27px; font-size:20px; }
/* Keipi proof uses the site's classic offset-photo spread. */
.interior-page .donate-proof { padding-block:120px 132px; background:var(--cream); }
.proof-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:clamp(30px,5vw,82px); align-items:start; }
.donate-proof h2 { grid-column:1/7; grid-row:1; max-width:8ch; margin:22px 0 0; color:var(--ink); font-size:clamp(60px,6.1vw,92px); line-height:.96; }
.donate-proof h2 span { color:var(--gold); }
.proof-photo { grid-column:7/13; grid-row:1/3; height:700px; margin:0 8px 0 0; --photo-backer:var(--olive); }
.proof-photo::before { background-color:var(--olive); background-image:url('/assets/partner-olive-recycled.webp'); background-size:cover; }
.proof-photo .photo-window,.proof-photo .photo { width:100%; height:100%; }
.proof-photo .photo { object-fit:cover; object-position:center 58%; }
.proof-logo-sheet { position:absolute; z-index:2; top:-22px; right:-18px; display:grid; width:116px; aspect-ratio:1; place-items:center; padding:13px; background:var(--navy) url('/assets/partner-navy-matte.webp') center / cover; clip-path:var(--paper-cut); transform:rotate(2deg); }
.proof-logo { width:100%; height:auto; }
.proof-copy { grid-column:1/7; grid-row:2; max-width:46ch; margin-top:42px; }
.proof-copy p { font-size:20px; line-height:1.5; }
.proof-copy p+p { margin-top:23px; }
.proof-ending { margin-top:34px!important; color:var(--olive); font-family:var(--font-display); font-size:clamp(24px,2.1vw,32px)!important; font-weight:500; line-height:1.28!important; letter-spacing:-.018em; }


.interior-page .donate-closing { padding-block:90px; background:var(--white); }
.donate-closing .closing-response { max-width:38ch; }
.donate-closing .closing-response p { font-size:inherit; }
.donation-dialog { width:min(700px,calc(100% - 32px)); max-height:calc(100dvh - 16px); padding:24px; border:0; background:var(--white); color:var(--ink); overflow:auto; }
.donation-dialog::backdrop { background:rgb(22 29 35 / .72); }
.donation-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }
.donation-dialog h2 { font-size:34px; }
.donation-close { border:0; background:transparent; color:var(--navy); cursor:pointer; padding:8px; }
.donation-close span { font-size:24px; }
.donation-dialog iframe { display:block; border:0; background:white; width:100%; height:min(640px,calc(100dvh - 170px)); }
html.donation-modal-open { overflow:hidden; }
@media(max-width:1100px) {
 .donate-opening-grid { gap:44px; grid-template-columns:minmax(0,1fr) minmax(400px,1fr); }
 .hospitality-grid,.donate-alive-grid,.work-grid { column-gap:44px; }
 .donate-page p { font-size:18px; }
 .hospitality-photo { height:205px; }
 .donate-proof h2 { font-size:66px; }
 .proof-photo { height:620px; }
 .proof-copy p { font-size:18px; }
}
@media(max-width:900px) {
 .donate-opening-grid { grid-template-columns:1fr; gap:40px; }
 .donate-proposition { max-width:650px; }
 .donation-surface { width:100%; max-width:650px; }
}
@media(max-width:760px) {
 .interior-page .donate-opening { padding-block:120px 60px; }
 .donate-proposition h1 { font-size:clamp(44px,11vw,60px); }
 .donation-surface h2 { font-size:32px; }
 .donate-page p { font-size:18px; }
 .donate-page .donation-fallback,.donate-page .donation-privacy { font-size:15px; }
 .donation-mount { padding:6px 0; }
 .donation-mount::before { inset:5px -4px -6px 4px; }
 .interior-page .donate-hospitality,.interior-page .donate-alive,.interior-page .donate-provision { padding-block:60px; }
 .hospitality-grid,.donate-alive-grid,.work-grid { display:flex; flex-direction:column; gap:36px; }
 .hospitality-copy h2,.donate-alive h2,.work-copy h2 { font-size:clamp(40px,10vw,54px); }
 .hospitality-stories { width:100%; gap:24px; }
 .hospitality-photo { height:210px; }
 .alive-photo,.donate-set-table { width:calc(100% - 10px); }
 .donate-set-table .photo { height:235px; }
 .gift-supports h3 { font-size:32px; }
 .interior-page .donate-proof { padding-block:72px 82px; }
 .proof-grid { display:flex; flex-direction:column; gap:38px; }
 .donate-proof h2 { margin:0; font-size:clamp(50px,12vw,62px); }
 .proof-photo { order:2; width:calc(100% - 10px); height:430px; margin:0 0 0 auto; }
 .proof-logo-sheet { width:78px; top:-15px; right:-10px; }
 .proof-copy { order:3; max-width:none; margin:0; }
 .proof-copy p { font-size:19px; }
 .proof-ending { font-size:26px!important; }
 .interior-page .donate-closing { padding-block:80px; }
 .donation-dialog { padding:18px 12px; }
 .donation-dialog h2 { font-size:30px; }
}
