/* Inner pages use the typography and warm paper palette of concept 1. */
[hidden]{display:none!important}
#main:focus{outline:none}
.skip-link{z-index:60}
.site-menu-toggle{display:none}
#site-mobile-nav{display:none}
.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:13px}
.footer-links a{text-underline-offset:5px}
.footer-links a:hover{text-decoration:underline}
a.campaign-card{text-decoration:none}
a.campaign-card:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
.inner-page .site-footer{border-top:1px solid var(--line);padding-bottom:80px}
.page-intro{max-width:1240px;padding-block:72px 66px;border-bottom:1px solid var(--line)}
.page-intro .eyebrow,.book-page-hero .eyebrow{color:var(--terracotta);margin-bottom:22px}
.page-intro h1,.book-page-hero h1{font-size:clamp(48px,6.5vw,92px);line-height:1.04;letter-spacing:-2px;max-width:1050px}
.page-intro h1 em,.book-page-hero h1 em,.book-story h2 em{color:var(--terracotta)}
.page-lead{font-size:19px;line-height:1.7;max-width:660px;margin-top:28px}
.article-layout{max-width:1240px;display:grid;grid-template-columns:260px minmax(0,760px);gap:clamp(42px,6vw,100px);padding-block:68px 100px;align-items:start}
.page-contents{position:sticky;top:35px}
.page-contents>.eyebrow{font-size:10px;color:var(--muted);margin-bottom:20px}
.page-contents nav{display:flex;flex-direction:column;border-left:1px solid var(--line)}
.page-contents a{font-size:13px;line-height:1.55;padding:10px 0 10px 20px;text-underline-offset:4px}
.page-contents a:hover{text-decoration:underline;color:var(--terracotta)}
.article-section{scroll-margin-top:35px}
.article-section+.article-section{margin-top:58px;padding-top:58px;border-top:1px solid var(--line)}
.article-section h2,.reading-copy h2,.steps-section h2,.support-wall h2,.other-ways h2{font-size:clamp(32px,3.2vw,46px);line-height:1.13;letter-spacing:-.6px;margin-bottom:26px}
.article-section h3{font-size:26px;line-height:1.3;margin-top:30px}
.article-section p,.reading-copy>p:not(.eyebrow){font-size:17px;line-height:1.85;margin-top:18px}
.article-section p:first-of-type,.reading-copy>p:not(.eyebrow):first-child{margin-top:0}
.reading-copy>.eyebrow{color:var(--terracotta);margin-bottom:22px}
.article-section .button,.reading-copy .button{margin-top:28px}
.reading-list{margin:18px 0 0;padding-left:22px}
.reading-list li{padding:5px 0;font-size:16px;line-height:1.75}
.reading-list li::marker{color:var(--terracotta)}
.next-step{background:var(--petrol);color:#fffbed;padding-block:64px}
.next-step>.wrap{max-width:1240px;display:flex;align-items:center;justify-content:space-between;gap:48px}
.next-step h2{font-size:clamp(32px,3.4vw,48px);line-height:1.12;margin-bottom:18px}
.next-step p{max-width:610px;color:#ece7d7}
.next-step .button{flex-shrink:0;white-space:normal;text-align:center}
.narrow{max-width:760px}
.narrow.reading-copy{padding-block:48px}
.reading-copy .standout{font:italic 44px/1.1 var(--serif);color:var(--terracotta);margin-top:26px}
.steps-section{max-width:1240px;padding-block:28px 72px}
.steps-section>.eyebrow{margin-bottom:18px}
.care-steps{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:1fr 1fr;column-gap:70px}
.care-steps li{padding:32px 0 30px;border-top:1px solid var(--line)}
.care-steps h3{font-size:28px;line-height:1.2;margin-bottom:18px}
.care-steps p{font-size:16px;line-height:1.8}
.quote-band{background:#dfdac5;color:var(--petrol);padding:65px 24px;text-align:center}
.quote-band blockquote{max-width:910px;margin:0 auto;font:400 clamp(27px,3.3vw,44px)/1.3 var(--serif)}
.quote-band figcaption{margin-top:28px;font-size:13px;line-height:1.7}
.quiet-ending{max-width:1240px;padding-block:0 80px}
.quiet-ending>p{font:italic 32px/1.3 var(--serif);color:var(--terracotta);margin-bottom:24px}
.contribution-list{margin:28px 0 0}
.contribution-list dt{font-size:16px;font-weight:700;padding-top:22px;margin-top:22px;border-top:1px solid var(--line)}
.contribution-list dd{margin:10px 0 0;font-size:16px;line-height:1.8}
.other-ways{max-width:1240px;padding-block:64px 75px}
.action-row{display:flex;gap:15px;flex-wrap:wrap;margin-top:26px}
.book-page-hero{max-width:1240px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;padding-block:68px 82px}
.book-page-hero h1{font-size:clamp(48px,5.8vw,82px)}
.book-page-hero p:not(.eyebrow){max-width:590px}
.book-page-hero .page-lead{margin-bottom:24px}
.book-page-hero .button{margin-top:30px}
.book-page-hero figure{padding:10px 15px 15px 0}
.book-page-hero figure img{width:100%;max-height:630px;object-fit:cover;transform:rotate(3deg);box-shadow:12px 14px 0 #d5cbb5}
.book-page-hero .field-help{margin-top:14px}
.book-story{max-width:1240px;display:grid;grid-template-columns:minmax(0,760px) 280px;gap:80px;border-top:1px solid var(--line);padding-block:64px 85px;align-items:start}
.author-note img{width:180px;height:210px;object-fit:cover;margin-bottom:24px}
.author-note h3{font-size:25px;margin-bottom:10px}
.author-note p{font-size:14px;line-height:1.75}
.author-note .quiet-link{margin-top:18px}
.share-story .quiet-link{display:flex;width:fit-content;margin-top:40px}
.share-story{padding-bottom:90px!important}
.contact-intro{max-width:1240px;padding-block:50px 38px}
.contact-intro .eyebrow{margin-bottom:17px}
.contact-intro h1{font-size:clamp(48px,5.4vw,72px);line-height:1.02;letter-spacing:-1.5px}
.contact-intro h1 em{font-size:.82em}
.contact-section{max-width:1240px;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(40px,6vw,82px);padding-block:30px 90px;align-items:start}
.contact-copy{padding-top:10px}
.contact-details{display:grid;gap:0;margin-top:36px;border-top:1px solid var(--line)}
.contact-details a{display:grid;grid-template-columns:82px 1fr 20px;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}
.contact-details a span{font-size:12px;color:var(--muted)}
.contact-details a strong{font-weight:500;overflow-wrap:anywhere}
.contact-details a svg{width:18px;height:18px;transition:transform .2s}
.contact-details a:hover svg{transform:translateX(3px)}
.contact-form{padding:30px 34px 28px;background:#ebe9dd;border:0;border-top:3px solid var(--petrol)}
.contact-form h2{font-size:29px;line-height:1.2;margin-bottom:12px}
.contact-form textarea{width:100%;min-height:150px;padding:12px 14px;border:1px solid #b8b8a7;border-radius:0;background:#f8f6ee;color:var(--ink);font:inherit;font-size:16px;line-height:1.65;resize:vertical}
.contact-form input:not([type=checkbox]){min-height:50px;border-color:#b8b8a7;background:#f8f6ee;font-size:16px}
.contact-form>label{font-size:13px}
.contact-form textarea:focus-visible{outline:3px solid var(--terracotta);outline-offset:3px}
.contact-form .field-help{margin-top:2px}
.heart-poster{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:340px;background:#dedbc9;padding:36px;text-align:center}
.heart-poster>svg{width:95px;height:95px;stroke-width:1px;color:var(--terracotta);transform:rotate(-8deg);margin-bottom:32px}
.heart-poster>span{font:400 35px/1.2 var(--serif)}
.join-section{background:var(--yellow);padding-block:66px;scroll-margin-top:24px}
.join-layout{max-width:1240px;display:grid;grid-template-columns:1fr 1fr;gap:90px}
.join-form-column{display:grid;gap:28px;align-content:start}
.join-form-column .heart-poster{min-height:260px}
.join-layout .eyebrow{margin-bottom:22px}
.join-layout h2{font-size:clamp(44px,5vw,66px);line-height:1.05;margin-bottom:28px}
.join-layout h2 em{color:var(--terracotta)}
.join-copy>p{max-width:500px}.join-copy>p+p{margin-top:18px}
.site-form{align-self:center;display:flex;flex-direction:column;gap:12px}
.site-form>label{font-size:14px;font-weight:600}
.site-form input:not([type=checkbox]){width:100%;min-height:52px;padding:12px 15px;border:1px solid #8f926d;border-radius:0;background:#fffdf4;color:var(--ink);font-size:17px}
.site-form input:focus-visible{outline:3px solid var(--terracotta);outline-offset:3px}
.site-form .form-check{display:flex;align-items:flex-start;gap:12px;font-size:13px;font-weight:400;line-height:1.6;margin-block:8px}
.form-check input{width:20px;height:20px;flex-shrink:0;margin:1px 0 0;accent-color:var(--petrol)}
.site-form .button{align-self:flex-start;margin-top:5px}
.site-form button:disabled{opacity:.65;cursor:wait}
.field-help{font-size:12px!important;line-height:1.65!important;color:var(--muted)}
.form-message{font-size:14px;line-height:1.65;min-height:24px}
.form-message.error{color:#8a2720}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.support-wall{max-width:1240px;padding-block:65px 85px}
.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}
.section-heading .eyebrow{margin-bottom:18px}
.section-heading h2{margin-bottom:16px}
.text-button{display:inline-flex;align-items:center;gap:12px;padding:12px 0;font-size:13px;text-decoration:underline;text-underline-offset:5px}
#support-total{font-size:14px;margin-top:12px}
#support-names{padding:0;margin:28px 0 0;list-style:none;display:flex;flex-wrap:wrap;gap:14px}
#support-names li{display:flex;align-items:center;gap:10px;background:#dfdac5;padding:14px 18px;font-size:14px;overflow-wrap:anywhere;max-width:100%}
#support-names svg{width:18px;height:18px;color:var(--terracotta)}
.support-wall #share-message{margin-top:20px}
.support-withdraw{font-size:13px;text-decoration:underline;text-underline-offset:4px;align-self:flex-start;padding:8px 0}
.about-people{max-width:1240px;padding-block:68px 90px}
.book-purchase{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.book-page-hero .book-price{font-size:28px;font-weight:500;line-height:1.3}
.book-price span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:7px}
.book-purchase .button{margin-top:20px}
.donation-section{max-width:1240px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,100px);padding-block:64px;border-bottom:1px solid var(--line);scroll-margin-top:24px;align-items:center}
.donation-section h2 em{color:var(--terracotta)}
.donation-section .quiet-link{margin-top:24px}
.donation-form{padding:30px;background:#e9e5d5;border:1px solid var(--line)}
.payment-mode{width:fit-content;font-size:12px;line-height:1.5;padding:6px 10px;background:#fff7cd;color:#574821;margin-bottom:22px}
.donation-form fieldset{border:0;padding:0;min-width:0;margin:0 0 20px}
.donation-form legend,.donation-form label[for]{font-size:15px;font-weight:500;margin-bottom:12px}
.amount-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.amount-options label{position:relative;cursor:pointer}
.amount-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.amount-options span{display:grid;place-items:center;min-height:52px;padding:12px 6px;border:1px solid #a0ac9f;background:#faf8ef;font-size:17px;font-weight:500}
.amount-options input:checked+span{background:var(--petrol);color:#fffbed;border-color:var(--petrol)}
.amount-options input:focus-visible+span{outline:3px solid var(--terracotta);outline-offset:3px}
.amount-options input:disabled+span{opacity:.6;cursor:wait}
.amount-options .other-amount{grid-column:1/-1}
.amount-options .other-amount span{font-size:14px;min-height:44px}
.currency-input{display:flex;align-items:center;background:#fffdf7;border:1px solid #8f9e91;margin-top:10px}
.currency-input>span{padding-left:16px;color:var(--muted)}
.currency-input input{min-width:0;width:100%;border:0;background:none;padding:13px;font:inherit;font-size:17px;color:var(--petrol)}
.currency-input:focus-within{outline:3px solid var(--terracotta);outline-offset:3px}
.currency-input input:focus{outline:0}
#custom-amount-wrap .field-help{margin-top:8px}
.donation-form>.button{width:100%;margin-top:20px;min-height:52px}
.donation-form>.button,.payment-card .button:not(.outline){background:var(--petrol);color:#fffbed}
.donation-form>.field-help{margin-top:12px}
.donation-form>.form-message{margin-top:12px;min-height:0}
.donation-form>.form-message:empty{display:none}
.donation-form button:disabled,.payment-page button:disabled{opacity:.65;cursor:wait}
.payment-page{max-width:850px;padding-block:65px 100px;min-height:70vh}
.payment-page>.eyebrow{color:var(--terracotta);margin-bottom:24px}
.payment-page h1{font-size:clamp(44px,6vw,72px);line-height:1.08;letter-spacing:-1.5px}
.payment-page h1 em{color:var(--terracotta)}
.payment-card{margin-top:40px;padding:32px;background:#e9e5d5;border:1px solid var(--line)}
.payment-summary{margin:0 0 24px}
.payment-summary>div{display:flex;justify-content:space-between;gap:25px;padding-block:14px;border-bottom:1px solid var(--line)}
.payment-summary dt{font-size:15px}.payment-summary dd{margin:0;text-align:right;font-size:16px;font-weight:500}
.payment-card>p:not(.payment-mode){font-size:15px;line-height:1.75}
.payment-card .quiet-link{margin-top:24px}
.payment-card .form-message{margin-top:20px;min-height:0}
.payment-card .form-message:empty{display:none}
.demo-outcomes{display:flex;gap:8px 16px;flex-wrap:wrap;align-items:center;margin-top:22px;font-size:12px;color:var(--muted)}
.demo-outcomes button{padding-block:8px;text-decoration:underline;text-underline-offset:4px;color:var(--petrol)}
@media(max-width:1050px){.article-layout{grid-template-columns:200px minmax(0,1fr);gap:38px}.join-layout{gap:45px}.book-page-hero{gap:40px}.book-story{grid-template-columns:minmax(0,1fr) 220px;gap:45px}}
@media(max-width:900px){
  .site-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;font-size:12px;padding:5px 0}
  .site-menu-toggle svg{width:22px;height:22px}
  .site-header .nav-book{margin-left:auto}
  #site-mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:12px 24px 24px;background:var(--paper);border-bottom:1px solid var(--line)}
  #site-mobile-nav a{font-size:16px;min-height:46px;padding:12px 0;border-bottom:1px solid var(--line)}
  #site-mobile-nav a[aria-current]{color:var(--terracotta);text-decoration:underline;text-underline-offset:5px}
  .next-step>.wrap{align-items:flex-start;flex-direction:column;gap:26px}
  .book-page-hero{gap:35px}.book-page-hero h1{font-size:52px}
}
@media(max-width:767px){
  .contact-intro{padding-block:38px 30px}.contact-intro h1{font-size:clamp(43px,9.7vw,67px)}
  .contact-section{grid-template-columns:1fr;padding-block:14px 60px;gap:32px}.contact-copy{padding-top:0}.contact-details{margin-top:25px}.contact-form{padding:23px 20px 22px}
  .donation-section{grid-template-columns:1fr;padding-block:38px;gap:30px}.donation-form{padding:22px 18px}.amount-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.amount-options span{font-size:16px}
  .payment-page{padding-block:38px 60px}.payment-card{padding:22px 18px;margin-top:28px}.payment-summary>div{gap:16px}.payment-summary dd{font-size:15px;max-width:45%}.payment-card .action-row{gap:12px}
  .hybrid .site-header{gap:16px}.hybrid .wordmark{font-size:23px;gap:10px}.wordmark>svg{width:23px}
  .site-header .nav-book{font-size:11px;padding:10px;min-height:44px;gap:8px}
  .page-intro{padding-block:38px 40px}
  .page-intro h1{font-size:clamp(43px,9.7vw,67px);letter-spacing:-1px}
  .page-lead{font-size:17px;line-height:1.75;margin-top:23px}
  .article-layout{display:block;padding-block:30px 60px}
  .page-contents{position:static;margin-bottom:40px}
  .page-contents nav{flex-direction:row;flex-wrap:wrap;border:0;gap:8px}
  .page-contents a{border:1px solid var(--line);padding:10px 13px;font-size:12px}
  .article-section+.article-section{margin-top:38px;padding-top:38px}
  .article-section h2,.reading-copy h2,.support-wall h2{font-size:34px;line-height:1.14}
  .article-section p,.reading-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}
  .button{white-space:normal;text-align:center}
  .next-step{padding-block:44px}
  .care-steps{grid-template-columns:1fr}.care-steps h3{font-size:27px}
  .quote-band{padding:46px 24px}.quote-band blockquote{font-size:30px}
  .steps-section{padding-bottom:44px}
  .book-page-hero{grid-template-columns:1fr;padding-block:38px 50px;gap:40px}.book-page-hero h1{font-size:54px}
  .book-page-hero figure{max-width:400px;margin-inline:auto;width:100%}
  .book-story{grid-template-columns:1fr;gap:40px;padding-block:40px 54px}
  .author-note{border-top:1px solid var(--line);padding-top:30px}.author-note img{width:150px;height:185px}
  .heart-poster{min-height:270px}.heart-poster>svg{width:70px;height:70px}
  .heart-poster>span{font-size:32px}
  .join-section{padding-block:42px}.join-layout{grid-template-columns:1fr;gap:35px}
  .join-layout h2{font-size:48px}.join-layout .eyebrow{margin-bottom:18px}
  .section-heading{display:block}.support-wall{padding-block:44px 52px}
  .footer-links{gap:22px;margin-top:8px}.inner-page .site-footer{padding-bottom:82px}
  .other-ways{padding-block:42px 55px}.quiet-ending{padding-bottom:55px}
  .about-people{padding-block:40px 52px}
}
@media(max-width:389px){.hybrid .site-header{gap:10px}.hybrid .wordmark{font-size:21px;gap:7px}.wordmark>svg{width:21px}.site-menu-toggle{font-size:0;gap:0}.site-menu-toggle svg{width:24px}.page-intro h1{font-size:42px}.book-page-hero h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.site-menu-toggle,#site-mobile-nav,.fb-launch,.page-contents{display:none!important}.article-layout{display:block}.page-intro{padding-block:24px}.next-step{break-inside:avoid}}
