:root{--paper:#f7f7ef;--ink:#213d32;--muted:#647168;--line:#d9ded2;--lime:#deef8c;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait}button,a,summary{touch-action:manipulation}button{background:none;border:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #668a31;outline-offset:6px}::selection{background:var(--lime);color:var(--ink)}[hidden]{display:none!important}.wrap{max-width:1320px;width:calc(100% - 112px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:100px;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:11px;font-size:18px;line-height:.95;letter-spacing:-.7px;font-weight:700;flex-shrink:0}.brand-icon{font-family:var(--serif);font-style:italic;font-size:40px;width:45px;height:45px;background:var(--ink);color:var(--paper);border-radius:50%;display:grid;place-items:center;padding-bottom:7px;padding-right:5px}.brand-dot{font-size:10px;vertical-align:super;margin-left:3px}.site-header nav{display:flex;gap:32px;font-size:13px}.site-header nav a:hover{box-shadow:0 1px currentColor}.button{display:inline-flex;justify-content:center;align-items:center;gap:35px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:5px;padding:18px 24px;font-size:14px;line-height:1.3;transition:background .2s,transform .2s}.button:hover{background:#365a48;transform:translateY(-2px)}.button.small{padding:13px 17px;font-size:12px;gap:20px}.button span{font-size:21px;line-height:1}.hero{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:22px;padding-top:53px;padding-bottom:53px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.8px;line-height:1.6;margin:0 0 27px}.status-dot{display:inline-block;width:7px;height:7px;background:#73854c;border-radius:50%;margin-right:9px;vertical-align:1px}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);font-weight:400;font-size:clamp(58px,6.4vw,86px);letter-spacing:-5px;line-height:1.035;margin-bottom:26px}em{font-weight:400}h1 em{position:relative}h1 em:after{content:'';position:absolute;left:0;right:-10px;bottom:0;height:3px;background:var(--ink);border-radius:50%;transform:rotate(-5deg)}.title-spark{color:#82964b;display:inline-block;font-size:68px;vertical-align:5px;margin-left:30px;font-weight:400}.hero-description{font-size:16px;line-height:1.8;max-width:365px;color:#526358;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:27px}.text-link{display:inline-flex;align-items:center;gap:14px;padding:4px 0;font-size:13px;border-bottom:1px solid currentColor;line-height:1.6}.text-link:hover{color:#6b7e3b}.hero-note{font-size:11px;color:var(--muted);margin:19px 0 0}.hero-art{position:relative;height:490px;isolation:isolate;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 50%,#e5e9d1 0%,transparent 65%)}.orbit{position:absolute;border:1px solid #cfd6be;border-radius:50%;width:93%;height:75%;transform:rotate(-32deg);z-index:-1}.orbit-two{transform:rotate(32deg);height:87%;width:80%}.note-card{position:relative;width:325px;padding:24px 26px 20px;background:#e6f0b5;transform:rotate(-9deg);box-shadow:8px 20px 40px #223f3218;outline:1px solid #213d3210}.note-top{display:flex;justify-content:space-between;border-bottom:1px solid #213d3240;padding-bottom:15px;font-size:8px;font-weight:700;letter-spacing:1.5px}.note-message{font-family:var(--serif);font-size:52px;letter-spacing:-2.6px;line-height:1.05;padding:27px 0}.note-message em{font-style:italic}.note-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #213d3240;padding-top:15px;font-size:8px;font-weight:700;letter-spacing:1.5px;line-height:1.6}.note-arrow{font-size:34px;font-weight:400}.round-seal{position:absolute;bottom:39px;right:3%;width:137px;height:137px;background:var(--ink);border:5px solid var(--paper);border-radius:50%;color:var(--lime);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(13deg);box-shadow:0 3px 8px #213d3210}.round-seal span{font-size:7px;line-height:1.5;letter-spacing:1.2px;text-align:center}.round-seal strong{font-family:var(--serif);font-size:42px;font-weight:400;font-style:italic;line-height:1.1;margin:2px 0 8px}.art-spark{position:absolute;right:0;top:23px;font-size:85px;font-weight:400;transform:rotate(12deg);color:#96a768}.art-caption{position:absolute;bottom:0;left:22%;font-size:8px;letter-spacing:2px;color:var(--muted)}.values-strip{border-block:1px solid var(--line);padding:24px 0}.values-strip .wrap{display:flex;align-items:center;justify-content:space-around;font-family:var(--serif);font-size:23px;gap:15px}.strip-star{font-size:26px;color:#8c9a63}.section{padding-top:92px;padding-bottom:92px}h2{font-family:var(--serif);font-size:clamp(38px,4vw,54px);line-height:1.12;font-weight:400;letter-spacing:-2px;margin-bottom:28px}.story{display:grid;grid-template-columns:1fr 1fr;gap:80px}.story .eyebrow{margin-bottom:30px}.story-signature{display:flex;gap:15px;align-items:center;font-size:11px;line-height:1.6;color:var(--muted);margin-top:45px}.tiny-star{font-size:35px;color:#8d9c61}.story-copy{padding-top:40px;max-width:475px}.story-copy p{font-size:14px;line-height:1.85;color:#56665b;margin-bottom:20px}.story-copy .lead{font-size:24px;line-height:1.4;letter-spacing:-.5px;color:var(--ink);margin-bottom:25px}.story-copy .text-link{margin-top:4px}.good-section{background:#eeefe5}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 5px}.fund-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fund-card{background:var(--paper);border:1px solid #dce0d3;padding:26px 27px 22px;display:flex;flex-direction:column;min-width:0}.fund-top{display:flex;justify-content:space-between;align-items:start;gap:10px;height:93px;font-size:8px;letter-spacing:1.3px;font-weight:600}.fund-top svg{width:43px;height:43px;fill:none;stroke:var(--ink);stroke-width:1.3;flex-shrink:0}.fund-card h3{font-family:var(--serif);font-weight:400;font-size:28px;letter-spacing:-.8px;line-height:1.15;margin-bottom:16px}.fund-card p{font-size:13px;color:#59685d;line-height:1.8;margin:0 0 30px}.fund-link{border-top:1px solid var(--line);padding:18px 0 0;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;font-size:12px;margin-top:auto;gap:10px}.fund-link span{font-size:23px;transition:transform .2s}.fund-link:hover span{transform:translate(3px,-3px)}.travel-card{background:#e3e9cf}.choice-note{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px;font-size:12px}.choice-note p{margin:0;color:var(--muted)}.allocation-note{text-align:center;font-size:10px;color:#64705f;max-width:630px;line-height:1.7;margin:19px auto 0}.promise-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px}.promise-list>div{display:flex;gap:24px;padding:0 0 23px;margin:0 0 23px;border-bottom:1px solid var(--line)}.promise-list>div:last-child{border:0;margin:0;padding:0}.promise-list>div>span{font-size:10px;color:#718062;padding-top:4px}.promise-list h3{font-weight:500;font-size:16px;margin:0 0 9px}.promise-list p{font-size:13px;line-height:1.8;color:var(--muted);margin:0;max-width:360px}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{padding:22px 0;display:flex;justify-content:space-between;gap:24px;cursor:pointer;font-size:14px;list-style:none;line-height:1.5}summary::-webkit-details-marker{display:none}summary span{font-size:20px;font-weight:400;line-height:1;flex-shrink:0}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;line-height:1.85;color:#56665b;margin:0 28px 23px 0}.closing{background:var(--ink);color:var(--paper);text-align:center}.closing-inner{position:relative;padding:73px 0 63px}.closing .eyebrow{color:var(--lime);margin-bottom:23px;font-size:9px}.closing h2{font-size:clamp(42px,4.9vw,67px);margin-bottom:28px}.closing-star{position:absolute;left:7%;top:83px;color:var(--lime);font-size:83px;transform:rotate(10deg)}.button.lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}.button.lime:hover{background:#eef8bc}.closing p:last-child{font-size:11px;color:#c0cdbe;margin:22px 0 0}.footer-top{padding:44px 0;display:flex;align-items:center;gap:50px}.footer-top p{font-size:11px;line-height:1.7;color:var(--muted);margin:0}.footer-top>.text-link{margin-left:auto}.footer-bottom{border-top:1px solid var(--line);padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted)}.footer-bottom .text-link{font-size:10px}.share-status{font-size:12px;color:var(--muted);text-align:right;overflow-wrap:anywhere}.share-status:empty{display:none}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:var(--ink);color:white;padding:15px}.skip-link:focus{top:15px}dialog{border:1px solid var(--line);border-radius:10px;padding:0;width:min(510px,calc(100% - 32px));max-height:calc(100dvh - 40px);color:var(--ink);background:var(--paper);box-shadow:0 24px 90px #0004}dialog::backdrop{background:#102b24aa;backdrop-filter:blur(5px)}.dialog-inner{padding:44px 38px;position:relative}.dialog-close{position:absolute;right:15px;top:10px;font-size:30px;min-width:44px;min-height:44px}.dialog-spark{font-size:43px;color:#7e8d4b;display:block;margin-bottom:17px}.dialog-inner .eyebrow{font-size:9px;margin-bottom:15px}.dialog-inner h2{font-size:43px}.dialog-inner>p:not(.eyebrow){font-size:14px;line-height:1.75;color:var(--muted)}.dialog-inner .button{width:100%;margin:8px 0 12px}.dialog-inner .dialog-fine{font-size:11px!important}.dialog-back{display:flex;margin:20px auto 0;font-size:12px}.noscript{padding:20px;text-align:center;background:var(--lime)}body.modal-open{overflow:hidden}
@media(min-width:1500px){.hero{gap:60px}.hero-art{height:550px}.note-card{width:350px}.note-message{font-size:57px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:20px;font-size:12px}.hero{padding-block:58px;gap:10px}h1{font-size:65px;letter-spacing:-3.8px}.hero-art{height:470px}.note-card{width:280px;padding:22px}.note-message{font-size:46px}.round-seal{width:118px;height:118px;right:-5px;bottom:39px}.art-spark{font-size:70px}.hero-actions{gap:18px}.hero-actions .button{padding:16px;gap:20px}.title-spark{font-size:52px}.story,.faq{gap:45px}.fund-card{padding:22px 20px}.fund-card h3{font-size:25px}.fund-top{font-size:7px}.fund-top svg{width:36px}.promise-layout{gap:45px}.section{padding-block:74px}.closing-star{left:2%}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{min-height:90px}.site-header nav{display:none}.brand{font-size:15px}.brand-icon{font-size:34px;width:39px;height:39px}.site-header .button{font-size:11px;gap:14px;padding:12px}.hero{grid-template-columns:1fr;padding-top:43px;padding-bottom:38px;gap:18px}.hero .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:23px}h1{font-size:clamp(49px,10.5vw,75px);letter-spacing:-3px;line-height:1.06}.hero-description{font-size:15px;max-width:400px}.hero-actions{gap:24px}.hero-note{font-size:10px}.hero-art{height:405px;width:min(100%,420px);margin-inline:auto}.note-card{width:260px;transform:rotate(-8deg);padding:20px 23px}.note-message{font-size:43px;padding:23px 0}.note-top{font-size:7px}.round-seal{right:0;bottom:20px;width:112px;height:112px}.round-seal strong{font-size:34px}.round-seal span{font-size:6px}.art-spark{top:9px;right:2%;font-size:65px}.art-caption{bottom:-2px;left:17%;font-size:7px}.values-strip{padding:20px 0}.values-strip .wrap{font-size:15px;justify-content:space-between;gap:9px}.values-strip .strip-star{font-size:15px}.values-strip .wrap>span:last-child{max-width:95px}.section{padding-block:58px}.story{grid-template-columns:1fr;gap:5px}.story-signature{display:none}.story-copy{padding-top:5px;max-width:none}.story-copy .lead{font-size:24px}.story-copy p{font-size:14px}h2{font-size:42px;letter-spacing:-1.8px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{margin-top:23px;font-size:12px}.fund-grid{grid-template-columns:1fr;gap:15px}.fund-card{padding:25px;min-height:245px}.fund-top{height:65px;font-size:9px}.fund-top svg{width:42px}.fund-card h3{font-size:30px;margin-bottom:14px}.fund-card p{font-size:14px;margin-bottom:24px}.fund-link{font-size:13px;min-height:44px}.choice-note{flex-direction:column;gap:9px;text-align:center;margin-top:27px}.allocation-note{font-size:10px}.promise-layout{grid-template-columns:1fr;gap:10px}.promise-list p{max-width:none}.promise-list>div{gap:20px}.faq{grid-template-columns:1fr;gap:5px}.faq h2 br{display:none}.faq h2 em{margin-left:7px}summary{font-size:14px;padding-block:21px;gap:15px}.closing-inner{padding-block:57px}.closing-star{position:static;display:block;font-size:52px;margin-bottom:20px}.closing h2{font-size:42px}.closing .eyebrow{font-size:8px;letter-spacing:1.4px}.footer-top{flex-wrap:wrap;gap:25px;padding-block:34px}.footer-top p{margin-left:auto;font-size:10px}.footer-top>.text-link{margin:0}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%;line-height:1.7}.dialog-inner{padding:35px 25px}.dialog-inner h2{font-size:38px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.site-header{gap:8px}.site-header .button{font-size:10px;gap:10px;padding:11px}.hero-actions{gap:14px}.hero-actions .text-link{font-size:12px}.values-strip .wrap{font-size:13px}.brand{font-size:14px}.hero-art{height:385px}.note-card{width:245px}.round-seal{right:-3px}.footer-top p{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

#paypal-donate { margin: 18px 0 12px; }
#paypal-donate img { display: block; cursor: pointer; min-height: 44px; max-width: 100%; object-fit: contain; }
#paypal-donate img:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.paypal-fallback { display: inline-flex; margin-bottom: 12px; }

.action-arrow { display: inline-flex; flex: none; }
.action-arrow svg { width: 1em; height: 1em; }

.hero-art { overflow: clip; }
body { padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); }

.floating-give {
  position: fixed;
  z-index: 5;
  right: max(16px, env(safe-area-inset-right, 0px));
  bottom: max(16px, env(safe-area-inset-bottom, 0px));
  min-height: 48px;
  gap: 12px;
  padding: 12px 18px;
  border-radius: 999px;
  box-shadow: 0 4px 20px #213d3233;
  font-weight: 600;
}

/* The companion site uses a warm paper palette and a family note. */
:root {
  --paper: #faf6ee;
  --ink: #1c293c;
  --muted: #515c6a;
  --line: #dcd3c6;
  --lime: #f1c49f;
}
.site-header { min-height: 84px; }
.brand-icon { display: block; flex: none; padding: 0; border-radius: 12px; }
.brand-wordmark { display: grid; gap: 3px; }
.brand-wordmark span { font-size: 9px; line-height: 1; letter-spacing: .2em; text-transform: uppercase; }
.brand-wordmark strong { font: 700 clamp(16px, 2.4vw, 23px)/1 var(--serif); letter-spacing: -.045em; }
.button:hover { background: #33465f; }
.button.lime:hover { background: #f7d7ba; }
.status-dot { background: #9f522f; }
.hero { gap: clamp(32px, 6vw, 112px); padding-block: clamp(48px, 6vw, 92px); }
.hero h1 { max-width: 680px; font-size: clamp(57px, 6.25vw, 92px); line-height: 1.04; }
.hero h1 em { display: block; color: #9b4b28; }
.hero h1 em::after { display: none; }
.hero-description { color: #465264; max-width: 510px; }
.hero-note { color: #515c6a; }
.family-note {
  position: relative;
  min-width: 0;
  padding: clamp(24px, 4vw, 54px);
  border-radius: 18px;
  border: 1px solid #35465e;
  background: linear-gradient(150deg, #273951, #1c293c 70%);
  color: #fff7ed;
  box-shadow: 0 22px 46px #1c293c20;
}
.family-note-label { color: var(--lime); margin-bottom: 22px; font-size: 12px; font-weight: 700; }
.family-note h2 { margin: 0 0 24px; font-size: clamp(34px, 3.4vw, 52px); line-height: 1.08; letter-spacing: -.04em; }
.family-note ul { list-style: none; padding: 0; margin: 0; }
.family-note li { display: grid; gap: 5px; padding: 14px 0; border-top: 1px solid #f1c49f44; }
.family-note li strong { color: var(--lime); font-size: 12px; }
.family-note li span { font-size: 15px; line-height: 1.45; }
.family-note-signature { margin: 20px 0 0; color: #fff7ed; font: italic 20px var(--serif); }
.story { border-top: 1px solid var(--line); }
.good-section { background: #efe8dd; }
.fund-card { background: #fffaf3; border-color: #dcd3c6; }
.travel-card { background: #f7e6d6; }
.fund-card p, .story-copy p, .promise-list p, details p { color: #465264; }
.closing { background: var(--ink); }
.closing p:last-child { color: #e1d5c8; }
.footer-top p a, .faq-list p a { text-decoration: underline; text-underline-offset: 3px; }
.floating-give { box-shadow: 0 4px 20px #1c293c33; }
@media (max-width: 760px) {
  .hero { gap: 36px; }
  .hero h1 { font-size: clamp(48px, 10.7vw, 70px); }
  .family-note { padding: 26px; }
}
