*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#f6f5ee;color:#283d32;font-family:system-ui,"Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.8}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.55}a{color:inherit}header,main{width:min(1120px,calc(100% - 72px));margin:auto}header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8ddd2}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-family:Georgia,serif;font-size:24px}.brand small{display:block;font:9px/1.5 system-ui;letter-spacing:.22em}.seal{display:grid;place-items:center;width:42px;height:42px;border:1px solid #466350;border-radius:50%;font:24px Georgia,serif}.quiet{font-size:12px;text-underline-offset:6px}.intro{position:relative;overflow:hidden;padding:80px 0 67px;border-bottom:1px solid #d8ddd2}.eyebrow,.section-no{font-size:10px;letter-spacing:.2em;color:#72816e}.intro h1{position:relative;z-index:1;font-family:Georgia,"PMingLiU",serif;font-size:clamp(42px,6.4vw,78px);font-weight:400;line-height:1.25;letter-spacing:.025em;margin:25px 0 28px}.lead{position:relative;z-index:1;font-size:17px;line-height:2;color:#526553}.signature{font-size:12px;margin-top:30px;color:#6e7e6c}.moon{position:absolute;right:25px;top:53px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fcfbed,#dedfcd 55%,#bac9b5);box-shadow:0 0 80px #d5dec773;opacity:.72}.moon:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse at 35% 35%,#758b7020 0 8%,transparent 15%),radial-gradient(ellipse at 61% 61%,#758b7025 0 11%,transparent 18%),radial-gradient(ellipse at 68% 25%,#758b701a 0 7%,transparent 11%)}.columns{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:66px 0 80px}.note h2,.card h2{font-family:Georgia,"PMingLiU",serif;font-size:31px;line-height:1.55;font-weight:400;margin:20px 0}.note>p{font-size:14px;line-height:2;color:#5d705e;max-width:395px}.rewards-note{margin-top:32px;border-top:1px solid #d5ddcd;padding-top:15px}.rewards-note h3{font-size:14px;font-weight:500}.rewards-note p,.rewards-note li{font-size:13px;color:#6b7b66}.rewards-note ul{padding-left:18px}.card{align-self:start;padding:35px;background:#e9eee2;border:1px solid #d9e1d1;border-radius:8px}.card h2{font-size:27px}.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px 0}.amounts button{border:1px solid #bdcbb4;border-radius:4px;background:transparent;padding:12px 3px;font-size:14px;min-height:48px}.amounts button[aria-pressed=true]{background:#36563e;color:#fff;border-color:#36563e}label{font-size:12px}.amount-field{display:flex;align-items:center;gap:12px;border-bottom:1px solid #9daf96;padding:7px 0}.amount-field span{font-size:14px}.amount-field input{min-width:0;width:100%;background:transparent;border:0;outline:none;font-size:28px;color:#28482f}.primary,.secondary{min-height:48px;border-radius:4px;padding:12px 17px}.primary{width:100%;display:flex;justify-content:center;gap:22px;background:#36563e;color:white;border:1px solid #36563e;margin-top:24px}.primary:hover:not(:disabled){background:#26442e}.secondary{border:1px solid #b6c7ac;background:transparent;color:#36563e;margin-top:15px}.micro{font-size:11px;color:#75836e;line-height:1.8}.status{font-size:13px;color:#744a38}.receipt h3{font-weight:500;font-size:24px}.mode{padding:10px 15px;background:#fff0cf;color:#74521c;font-size:13px;margin-top:20px;border:1px solid #dec596;border-radius:4px}footer{display:flex;justify-content:space-between;border-top:1px solid #d8ddd2;padding:27px 0 40px;color:#89937e;font-size:11px}dialog{border:1px solid #c9d5be;border-radius:14px;width:min(540px,calc(100% - 28px));max-height:90dvh;overflow:auto;padding:42px;background:#f6f5ee;color:#2e4a34;box-shadow:0 28px 100px #10211644;text-align:center}dialog::backdrop{background:#1d2c25a6;backdrop-filter:blur(6px)}dialog h2{font-family:Georgia,"PMingLiU",serif;font-size:29px;font-weight:400}dialog>p:not(.eyebrow){font-size:14px}.dialog-close{position:absolute;right:10px;top:9px;min-width:44px;min-height:44px;background:none;border:0;font-size:27px;color:#70836b}.little-moon{font-size:44px;color:#72835e}.download{display:flex;justify-content:space-between;gap:16px;align-items:center;text-align:left;text-decoration:none;border:1px solid #d1dcc6;border-radius:5px;padding:15px;margin:10px 0;background:#e8eedf}.download span{font-size:14px}.download small{font-size:11px;white-space:nowrap}.handoff{max-width:600px;padding-top:60px}.handoff button{min-height:48px;padding:10px 22px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #78935f;outline-offset:4px}[hidden]{display:none!important}@media(max-width:760px){header,main{width:calc(100% - 36px)}header{height:88px}.intro{padding:50px 0}.moon{right:-60px;top:60px;width:220px;height:220px;opacity:.4}.columns{grid-template-columns:1fr;gap:30px;padding:40px 0}.note h2 br{display:none}.card{padding:25px}.intro h1{font-size:46px}.lead{font-size:15px}dialog{padding:38px 22px}footer{gap:20px}.download{padding:12px}}@media(prefers-reduced-motion:no-preference){dialog[open]{animation:arrive .25s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
#reward-description{white-space:pre-line}.download{flex-direction:column;align-items:flex-start;gap:6px;overflow-wrap:anywhere}.download span{min-width:0}.download small{white-space:normal}
/* A quiet two-part page: introduction, then the amount the reader chooses. */
.sponsor-main{width:min(760px,calc(100% - 40px));padding:56px 0 72px}
.sponsor-main .intro{padding:0 0 34px;border:0}
.sponsor-main .intro h1{margin:0 0 28px;font-size:clamp(38px,7vw,72px)}
.sponsor-main .columns{display:block;padding:0}
.sponsor-main .card{width:100%}
.sponsor-main .mode{margin:0 0 30px}
@media(max-width:760px){.sponsor-main{padding:32px 0 40px}.sponsor-main .intro{padding-bottom:24px}.sponsor-main .card{padding:24px}}

#payment-method-field{margin:22px 0}#payment-method{display:block;width:100%;max-width:100%;min-height:48px;margin-top:8px;padding:10px 12px;border:1px solid #b4c3a9;border-radius:4px;background:#f6f5ee;color:#283d32;font:inherit}#payment-method:focus-visible{outline:2px solid #78935f;outline-offset:4px}

.donor-field{margin:22px 0}.donor-field input,.donor-field textarea{display:block;width:100%;min-width:0;max-width:100%;margin-top:8px;padding:10px 12px;border:1px solid #b4c3a9;border-radius:4px;background:#f6f5ee;color:#283d32;font:inherit}.donor-field input{min-height:48px}.donor-field textarea{min-height:128px;resize:vertical}.donor-field :focus-visible{outline:2px solid #78935f;outline-offset:4px}.donor-field .micro{margin:6px 0 0}.saved-message{margin:20px 0;padding:14px 16px;border:1px solid #d1dcc6;border-radius:5px;background:#e8eedf;text-align:left;font-size:14px;overflow-wrap:anywhere}.saved-message p{margin:6px 0;white-space:pre-wrap}#receipt-message-status{font-size:14px;overflow-wrap:anywhere}

.donor-field select{display:block;width:100%;max-width:100%;min-height:48px;margin-top:8px;padding:10px 12px;border:1px solid #b4c3a9;border-radius:4px;background:#f6f5ee;color:#283d32;font:inherit}.public-messages{margin-top:44px;padding-top:30px;border-top:1px solid #d8ddd2}.public-messages h2{font-family:Georgia,"PMingLiU",serif;font-size:28px;font-weight:400;margin:0 0 12px}.public-messages ol{list-style:none;margin:20px 0 0;padding:0}.public-messages li{padding:20px 0;border-bottom:1px solid #d8ddd2;overflow-wrap:anywhere}.public-messages h3{font-size:15px;font-weight:500;margin:0 0 8px}.public-messages li p{font-size:14px;white-space:pre-wrap;margin:0}.public-messages-actions{display:flex;flex-wrap:wrap;gap:12px}
