/* Desktop design review. Mobile art direction is intentionally deferred. */
[hidden]{display:none!important}
.review-bar{gap:20px;height:39px}.review-bar .review-links{display:flex;gap:22px;align-items:center}.review-bar a{white-space:nowrap}.site-header{z-index:40}.header-inner{min-height:99px}#primary-nav{gap:24px}.nav-dropdown{z-index:55}.page-hero{padding:68px 0 65px;display:grid;grid-template-columns:1.08fr .92fr;gap:75px;align-items:center}.page-hero h1{font-size:clamp(58px,6.1vw,84px);max-width:12ch;margin:23px 0 26px;line-height:1.02}.page-hero .lead{font-size:19px;line-height:1.65;max-width:49ch}.hero-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}.page-photo{border:var(--line);border-radius:11px;background:var(--paper);box-shadow:8px 8px 0 var(--ink);transform:rotate(1.5deg);position:relative;margin:0 9px 0 0;overflow:hidden}.page-photo img{width:100%;height:390px;object-fit:cover}.page-photo figcaption{padding:16px 19px;font-size:11px;letter-spacing:.08em;font-weight:700;border-top:var(--line)}.page-photo.flat{transform:none}.sticker{display:inline-block;background:var(--yellow);border:2px solid var(--ink);padding:10px 16px;font-size:13px;font-weight:700;transform:rotate(-3deg);box-shadow:3px 3px 0 var(--ink);margin-top:25px}.page-hero.text-hero{grid-template-columns:1fr;padding-bottom:52px}.text-hero h1{max-width:18ch}.text-hero .lead{max-width:64ch}.chapter-strip{border-block:var(--line);background:var(--orange);padding:17px 48px;display:flex;justify-content:center;gap:54px;font-size:12px;font-weight:700;letter-spacing:.1em}.chapter-strip span{display:flex;align-items:center;gap:45px}.chapter-strip span:not(:last-child)::after{content:'✳';font-size:26px;line-height:1}.page-section{padding-block:78px}.page-section .eyebrow{margin-bottom:17px}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}.section-top h2{font-size:53px}.section-top>p{max-width:34ch}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:start}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.paper-card{background:var(--paper);border:var(--line);border-radius:10px;box-shadow:5px 5px 0 var(--ink);padding:30px}.paper-card.orange{background:var(--orange)}.paper-card.yellow{background:var(--yellow)}.paper-card.pink{background:var(--pink)}.paper-card.green{background:#d3e1b5}.paper-card h3{font-size:32px;line-height:1.12;margin:15px 0}.paper-card p{font-size:16px;line-height:1.65}.paper-card .text-link{margin-top:18px}.card-number{font-size:11px;font-weight:700;letter-spacing:.12em}.link-card{display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.link-card:hover{transform:translate(-2px,-3px);box-shadow:8px 8px 0 var(--ink)}.link-card .text-link{margin-top:auto;padding-top:24px}.link-card p{margin-bottom:10px}.tone-band{background:#f3b8cd;border-block:var(--line)}.tone-band.yellow{background:var(--yellow)}.tone-band.green{background:#d3e1b5}.prose{font-size:18px;line-height:1.8}.prose p{max-width:none;margin-bottom:24px}.prose h2{font-size:38px;line-height:1.15;margin:42px 0 20px}.prose h3{font-size:27px;margin:28px 0 16px;line-height:1.2}.prose h4{font-size:19px;margin:20px 0 10px}.prose ul,.prose ol{padding-left:25px;margin-block:20px}.prose li{margin-bottom:12px}.prose a{text-decoration:underline;text-underline-offset:4px}.prose .button{text-decoration:none}.prose figure{margin:34px 0}.prose figure img{width:100%;max-height:640px;object-fit:contain;border:var(--line);border-radius:10px;background:var(--paper)}.prose figure figcaption{font-size:12px;margin-top:9px}.read-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:75px;max-width:1110px}.read-layout aside{position:sticky;top:137px;align-self:start}.read-layout aside h2{font-size:24px;margin-bottom:20px}.read-layout aside a{font-size:13px;display:block;padding:13px 0;border-bottom:1px solid #b4aa9b;line-height:1.45}.read-layout aside a:hover{text-decoration:underline}.reading-body{min-width:0}.reading-body>h2:first-child{margin-top:0}.team-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:76px;align-items:start;padding:68px 0;border-top:var(--line)}.team-row:nth-child(even){grid-template-columns:1.15fr .85fr}.team-row:nth-child(even) .team-portrait{order:2}.team-row h2{font-size:52px;margin:13px 0 12px}.team-row .role{font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:25px}.team-row p{margin-bottom:19px}.team-portrait{border:var(--line);border-radius:10px;box-shadow:7px 7px 0 var(--ink);overflow:hidden;transform:rotate(-1deg);background:var(--pink)}.team-portrait img{width:100%;height:430px;object-fit:cover}.team-portrait figcaption{font-size:11px;padding:15px 20px;border-top:var(--line);font-weight:700;letter-spacing:.08em}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.stat{background:var(--paper);border:var(--line);padding:27px 24px;border-radius:8px}.stat strong{font-size:52px;letter-spacing:-.07em;line-height:1.1;display:block;margin-bottom:15px}.stat span{font-size:14px;line-height:1.45;display:block}.stat-group{margin-top:36px}.stat-group h3{font-size:28px;margin-bottom:20px}.donation-panel{padding:34px;background:var(--paper);border:var(--line);box-shadow:7px 7px 0 var(--ink);border-radius:12px}.donation-panel h2{font-size:35px;margin:17px 0 24px}.segmented{display:flex;padding:4px;border:2px solid var(--ink);border-radius:7px;gap:4px;background:var(--cream)}.segmented button{flex:1;padding:10px 12px;background:transparent;font-size:14px;font-weight:700;border-radius:4px}.segmented button.active{background:var(--ink);color:var(--cream)}.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:20px 0}.amounts button{background:var(--cream);border:2px solid var(--ink);border-radius:6px;padding:13px;font-weight:700}.amounts button.active{background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.amount-input{display:flex;align-items:center;gap:12px;border:2px solid var(--ink);border-radius:6px;padding:10px 15px}.amount-input input{width:100%;border:0;background:transparent;font:inherit;padding:0;outline-offset:5px}.preview-note{font-size:12px;line-height:1.55;color:#61554c;margin:20px 0 0;max-width:none}.donation-panel>.button{width:100%;margin-top:23px}.quote-grid blockquote{margin:0;padding:28px;background:var(--paper);border:var(--line);border-radius:8px;font-size:20px;line-height:1.55}.quote-grid cite{display:block;font-size:12px;font-style:normal;margin-top:25px;font-weight:700}.level-price{font-size:65px;font-weight:700;letter-spacing:-.06em;margin:18px 0}.level-price small{font-size:18px;letter-spacing:0;font-weight:400}.form-panel{background:var(--paper);border:var(--line);border-radius:12px;padding:36px;box-shadow:7px 7px 0 var(--ink)}.form-panel h2{font-size:35px;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field label,.field>span{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:1.8px solid var(--ink);border-radius:5px;background:var(--cream);padding:12px;min-height:49px;font:inherit}.field textarea{min-height:120px}.field.full{grid-column:1/-1}.form-panel .button{margin-top:25px}.form-result{background:var(--yellow);border:2px solid var(--ink);border-radius:6px;padding:15px;margin-top:20px;font-size:14px}.form-result:empty{display:none}.consent{display:flex;align-items:start;gap:12px;font-size:13px;line-height:1.6;margin-top:18px}.consent input{width:19px;height:19px;flex:none;accent-color:var(--ink);margin-top:3px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-grid .paper-card{min-height:250px}.notice{border-left:5px solid var(--orange);background:var(--paper);padding:23px 28px;margin-bottom:30px}.notice strong{display:block;font-size:19px;margin-bottom:9px}.notice p{font-size:15px}.event-card{border:var(--line);border-radius:11px;overflow:hidden;background:var(--paper);box-shadow:6px 6px 0 var(--ink);display:grid;grid-template-columns:.9fr 1.1fr;margin-bottom:36px}.event-card img{width:100%;height:100%;min-height:380px;object-fit:cover}.event-body{padding:35px}.event-body h3{font-size:39px;margin:18px 0}.event-meta{font-size:13px;letter-spacing:.06em;font-weight:700;margin-bottom:22px}.event-body p{font-size:16px;margin-bottom:24px}.calendar-shell{border:var(--line);border-radius:10px;background:white;overflow:hidden;box-shadow:6px 6px 0 var(--ink)}.calendar-shell iframe{display:block;width:100%;border:0;height:960px;max-height:none}.calendar-link{margin-top:14px}.callout{display:flex;justify-content:space-between;align-items:center;gap:50px;padding:43px;background:var(--yellow);border:var(--line);border-radius:10px;box-shadow:6px 6px 0 var(--ink)}.callout h2{font-size:40px;max-width:20ch}.callout p{font-size:16px;margin-top:15px}.callout .button{flex-shrink:0}.index-intro{padding:64px 0 44px}.index-intro h1{font-size:70px;max-width:13ch;margin:22px 0}.index-intro .lead{max-width:65ch;font-size:19px}.index-count{display:flex;gap:38px;margin-top:30px;font-size:12px;font-weight:700;letter-spacing:.05em}.index-count strong{font-size:27px;margin-right:7px;letter-spacing:-.03em}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.review-card{background:var(--paper);border:var(--line);border-radius:10px;box-shadow:5px 5px 0 var(--ink);padding:25px;display:flex;flex-direction:column;min-height:228px;transition:transform .18s}.review-card:hover{transform:translateY(-3px)}.review-card .tag{font-size:10px;letter-spacing:.1em;font-weight:700}.review-card h3{font-size:30px;margin:20px 0 13px}.review-card p{font-size:13px;line-height:1.5;margin-bottom:23px}.review-card .card-foot{font-size:12px;margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid #d0c5b4;padding-top:14px;font-weight:700}.review-card:nth-child(6n+1){background:#ffcfb7}.review-card:nth-child(6n+2){background:#f6d4e2}.review-card:nth-child(6n+3){background:#f9e99c}.review-group{margin-bottom:60px}.review-group h2{font-size:32px;margin-bottom:25px}.review-search{margin:32px 0;display:flex;gap:16px;align-items:center}.review-search label{font-size:13px;font-weight:700}.review-search input{width:340px;padding:12px 16px;border:2px solid var(--ink);border-radius:6px;background:var(--paper);font:inherit}.review-card[hidden],.review-group[hidden]{display:none}.page-review-nav{display:flex;justify-content:space-between;gap:20px;align-items:center;border-block:var(--line);padding:23px 0;margin-top:40px}.page-review-nav>a{font-size:13px;font-weight:700}.page-review-nav .middle{font-size:10px;letter-spacing:.06em}.review-warning{background:#fff0bb;border:1.5px solid var(--ink);padding:15px 20px;font-size:13px;margin-top:24px;max-width:85ch;line-height:1.6}.review-warning strong{font-weight:700}.preview-notice{font-size:11px;line-height:1.5;background:var(--ink);color:var(--cream);padding:12px 20px;border-radius:6px;margin-bottom:20px}.wide-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:35px 0}.wide-gallery img{width:100%;height:230px;object-fit:cover;border:var(--line);border-radius:9px}.faq details{border-top:var(--line);padding:22px 0}.faq summary{font-size:21px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary::after{content:'+';font-size:26px}.faq details[open] summary::after{content:'−'}.faq details p{margin-top:18px}.footer-expanded{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px;margin-top:35px;font-size:12px;padding-bottom:36px;border-bottom:1px solid #c8baa9}.footer-expanded h3{font-size:17px;margin-bottom:13px}.footer-expanded a{display:inline-block;margin:0 17px 10px 0}.footer-expanded a:hover{text-decoration:underline}.welcome-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:29px}.welcome-card{background:var(--paper);border:var(--line);border-radius:12px;box-shadow:7px 7px 0 var(--ink);overflow:hidden}.welcome-card img{height:280px;width:100%;object-fit:cover}.welcome-card>div{padding:29px}.welcome-card h2{font-size:34px;margin-bottom:18px}.welcome-card .soon{font-size:12px;padding:7px 12px;display:inline-block;background:var(--cream);border:1px solid var(--ink);border-radius:50px}.article-links{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}.article-links .button{font-size:13px}.campaign-side{background:var(--yellow);padding:24px;border:var(--line);border-radius:8px}.campaign-side p{font-size:13px;line-height:1.7}.campaign-side .text-link{font-size:13px}.story-title-sub{display:block;color:#a23c1d}.page-section.compact{padding-block:40px}.flat-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.mini-link{padding:22px;background:var(--paper);border:2px solid var(--ink);border-radius:7px;font-size:15px;font-weight:700;display:flex;justify-content:space-between;gap:20px}.mini-link:hover{background:var(--yellow)}.article-text-lead{font-size:22px;line-height:1.65}.preview-desktop-hint{display:none}
@media(min-width:1000px) and (max-width:1190px){#primary-nav{gap:16px}nav>a,nav summary{font-size:12px}.page-hero{gap:44px}.page-hero h1{font-size:67px}.page-photo img{height:360px}.stat strong{font-size:42px}.review-grid{gap:20px}.read-layout{gap:48px}.team-row{gap:48px}.page-section{padding-block:63px}}
@media(max-width:999px){body{min-width:1000px}.section-wrap,.header-inner{width:904px}.preview-desktop-hint{display:block;background:var(--yellow);border-bottom:2px solid var(--ink);padding:12px 48px;font-size:13px}#primary-nav{display:flex;position:static;flex-direction:row;background:transparent;padding:0;border:0;box-shadow:none;gap:18px}.menu-toggle{display:none}.page-hero h1{font-size:64px}.page-hero{gap:40px}.review-grid{grid-template-columns:repeat(3,1fr)}.header-inner{min-height:99px}.page-hero.text-hero{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* October 12 desktop critique: centered wordmark and uncropped project logos. */
.site-header .wordmark{align-items:center;text-align:center}
.site-header .wordmark>small{padding-left:.28em}
.welcome-card-cotton-branch img,.welcome-card-lifeline img{object-fit:contain;padding:22px 24px}
@media(min-width:821px){
 .peek-wrap{padding-top:164px}
 .peek-window{height:179px;width:270px}
 .peek-art{width:270px;top:2px;transform:translateY(8px);transition:transform .55s var(--ease)}
 .peek-wrap:hover .peek-art,.peek-wrap:focus-within .peek-art{transform:translateY(-16px)}
 .peek-wrap.peek-once .peek-art{animation:peek-desktop 1.8s var(--ease)}
 @keyframes peek-desktop{0%,100%{transform:translateY(8px)}40%,70%{transform:translateY(-16px)}}
}

/* Compact Contact Us cards without numbered labels. */
.contact-grid .paper-card{min-height:210px;padding:24px}
.contact-grid .paper-card h3{margin:0 0 12px}
.contact-grid .link-card .text-link{padding-top:16px}


/* October 16 review: match the centered header signature in every footer. */
.site-footer .wordmark{align-items:center;text-align:center}
.site-footer .wordmark>small{padding-left:.23em}

/* Unfold menu content downward while keeping the native details controls. */
.calendar-shell iframe{height:1168px;max-height:none}
.giving-widget-shell{display:block;width:100%;min-width:0;min-height:0}
.giving-widget-shell givebutter-widget{display:block;width:100%}
.page-hero:has(.giving-widget-shell){align-items:start;padding-block:40px 24px}
.page-hero:has(.giving-widget-shell)+.page-section{padding-top:36px}
.monthly-giving{display:grid;gap:28px;justify-items:center}
.monthly-giving h2{text-align:center}
.monthly-giving .giving-widget-shell{max-width:440px;margin:8px auto 0}
.monthly-intro{max-width:62ch;text-align:center;font-size:18px;line-height:1.6}
.monthly-benefits{width:100%;max-width:880px}
.monthly-benefits .level-price{margin:0 0 16px}
.tour-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
[data-tour-verification]{margin-top:24px;min-height:65px}
.tour-confirmation{max-width:550px;width:calc(100% - 40px);padding:38px;background:var(--cream);color:var(--ink);border:var(--line);border-radius:11px;box-shadow:8px 8px 0 var(--ink)}
.tour-confirmation::backdrop{background:#211c17aa}
.tour-confirmation h2{font-size:38px;margin-bottom:20px}
.tour-confirmation p{font-size:18px;line-height:1.6;margin-bottom:26px}
.faq details{box-sizing:border-box}
.monthly-partner-link{display:inline-flex;margin-top:24px}
.page-hero.monthly-partner-hero{grid-template-columns:.8fr 1.2fr;gap:48px}
.monthly-partner-hero .page-photo{margin-right:0}
.giving-widget-shell{position:relative}
.giving-widget-shell[data-giving-state="loading"]{min-height:470px}
.giving-widget-shell[data-giving-state="loading"] givebutter-widget{opacity:0;pointer-events:none}
.giving-widget-loader{position:absolute;inset:0;max-width:440px;min-height:470px;margin-inline:auto;border:2px solid #ded8d0;border-radius:14px;background:#fff;overflow:hidden}
.giving-widget-loader[hidden]{display:none}
.giving-skeleton{padding:28px;opacity:.55}
.giving-skeleton i{display:block;background:#e8e3dc;border-radius:6px;height:46px}
.giving-skeleton>i:first-child{width:62%;height:24px;margin-bottom:34px}
.giving-skeleton>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}
.giving-skeleton>i:last-child{height:44px;margin-top:106px;background:#f4bd9f}
.giving-loading-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px;text-align:center;background:#ffffff66}
.giving-loading-message p{font-size:14px;max-width:28ch;background:#fff;padding:5px}
.loading-spinner{display:block;width:30px;height:30px;border:3px solid #ded8d0;border-top-color:var(--orange);border-radius:50%}
.giving-fallback{font-size:13px}
.circle-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.circle-submit-frame[hidden]{display:none}
@media(max-width:900px){.page-hero.monthly-partner-hero{grid-template-columns:1fr;gap:32px}}
@media(prefers-reduced-motion:no-preference){.loading-spinner{animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}}
@media(prefers-reduced-motion:no-preference){
 .nav-group[open]>.nav-dropdown{
  transform-origin:top center;
  animation:nav-pull-down .34s cubic-bezier(.22,1,.36,1);
 }
 @keyframes nav-pull-down{
  from{clip-path:inset(0 -12px 100% -12px);transform:translateY(-8px)}
  to{clip-path:inset(0 -12px -12px -12px);transform:translateY(0)}
 }
}

