:root{color-scheme:dark;--paper:#eee8d8;--muted:#b2bfaf;--gold:#d9bc80;--line:#43513f;--panel:#1b2b22;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0;color:var(--paper);background:#111d18;font:16px/1.65 Georgia,serif}body:before{content:'';position:absolute;inset:0 0 auto;height:840px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 80% 28%,#54754826,transparent 55%),linear-gradient(130deg,#37473120,transparent 70%)}a{color:var(--gold);text-underline-offset:4px}button,.button{font:13px/1.5 Arial,sans-serif;font-weight:600;background:#d8bc80;color:#142219;border:1px solid #d8bc80;border-radius:3px;padding:13px 20px;min-height:45px;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:16px;transition:background .15s,border-color .15s}.button:hover{background:#ead09a;border-color:#ead09a}button:disabled{background:#26372a;color:#b7c3ad;border-color:#4e5e46;cursor:not-allowed}.quiet{background:transparent;color:var(--paper);border-color:#647255}.quiet:hover{background:#30412e;border-color:#9d9d6c}
header,footer{max-width:1240px;margin:auto;padding:26px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px}header{border-bottom:1px solid #34463180}header nav{display:flex;align-items:center;gap:26px}header nav>a:not(.button){font:12px/1.5 Arial,sans-serif;color:#c4cdbb;text-decoration:none}header nav>a:not(.button):hover{color:var(--gold)}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--paper);white-space:nowrap}.brand>span:not(.brand-crest){font-size:13px;letter-spacing:1.9px;line-height:1.7}.brand small{display:block;font:7px/2 Arial,sans-serif;letter-spacing:1.35px;color:#a9b7a5}.brand-crest{display:grid;place-items:center;width:34px;height:41px;border:1px solid #bfa370;border-radius:3px 3px 17px 17px;font-size:23px;color:var(--gold);background:#253629}
main{max-width:1172px;margin:auto;padding:0 34px}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:10px;padding:64px 0 48px}.hero-copy{position:relative;z-index:1}.eyebrow,.tag{font:10px/1.6 Arial,sans-serif;letter-spacing:1.8px;color:var(--gold)}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b8c893;vertical-align:middle;margin-right:6px}h1{font-size:clamp(48px,5.9vw,76px);line-height:1.08;font-weight:normal;letter-spacing:-2px;margin:25px 0}h1 em{color:var(--gold);font-weight:normal}.hero-copy>p{max-width:480px;font-size:18px;line-height:1.75;color:#b6c2af}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:28px}.text-link{font:12px/1.5 Arial,sans-serif;text-decoration:none}.text-link span{margin-left:9px}.text-link:hover{text-decoration:underline}.hero-caption{display:block;font:11px/1.6 Arial,sans-serif;color:#a5b59f;margin-top:17px}.world-seal{position:relative;text-align:center;max-width:425px;width:100%;justify-self:end;align-self:center}.world-seal svg{display:block;width:100%;height:auto}.world-seal>span{display:block;position:relative;margin-top:-36px;color:#c8ad75;font:8px/1.5 Arial,sans-serif;letter-spacing:2.3px}.world-seal i{padding:0 12px;font-style:normal}
.preview-note{display:flex;align-items:center;gap:19px;padding:20px 24px;background:#26322566;border:1px solid #4c593f;border-radius:4px;font:13px/1.6 Arial,sans-serif}.preview-note strong{display:block;color:#e2d2ad;font:17px/1.5 Georgia,serif}.preview-note p{margin:4px 0 0;max-width:750px;font:12px/1.7 Arial,sans-serif}.preview-note .tag{margin-left:auto;flex:none;font-size:8px;letter-spacing:1.3px;border:1px solid #586047;border-radius:3px;padding:5px 8px}.notice-mark{font-size:32px;color:#c9ad70;flex:none}.checkout-notice{margin-top:24px;border-color:#9e8856;background:#293928}.checkout-notice .button{flex:none;font-size:12px}.checkout-notice>div{flex:1}
.membership-section{margin-top:72px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:27px}.section-heading>p{font:13px/1.8 Arial,sans-serif;margin:0 0 5px;max-width:310px}h2{font-size:32px;line-height:1.25;font-weight:normal;margin:10px 0}p{color:var(--muted);margin:12px 0 20px}h3{font-size:24px;font-weight:normal;margin:23px 0 6px}.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);padding:27px;border-radius:5px;min-width:0}.plans .card{display:flex;flex-direction:column;align-items:flex-start}.plans .card h3{margin-top:20px}.card .tag{font-size:9px;letter-spacing:1.4px}.available{color:#c4d6aa}.plan-intro{font:12px/1.6 Arial,sans-serif;margin:0 0 18px}.plans .card .button,.plans .card button{width:100%;margin-top:24px;font-size:12px}.featured{border-color:#9f8857;background:linear-gradient(145deg,#34422f,#1e2f25);box-shadow:inset 0 3px #b59b62}.price{font-size:42px;line-height:1.25;letter-spacing:-1px;color:var(--paper);margin:7px 0 22px}.price small{display:block;font:11px/1.6 Arial,sans-serif;letter-spacing:0;color:#b7c5ad;margin-top:8px}.plan-features{list-style:none;padding:19px 0 0;margin:0;border-top:1px solid #55624899;flex:1;width:100%}.plan-features li{font:12px/1.65 Arial,sans-serif;color:#c3ceba;padding-left:17px;margin:0 0 10px;position:relative}.plan-features li:last-child{margin:0}.plan-features li:before{content:'·';position:absolute;left:0;top:-1px;color:#c9b078;font-size:19px}.plan-footnote{font:11px/1.7 Arial,sans-serif;text-align:center;margin:19px 0 0;color:#a9b69f}
.support-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;margin:65px 0}.support-grid .card{padding:33px}.support-grid h2{font-size:30px;margin-top:17px}.support-grid p{font:14px/1.8 Arial,sans-serif}.donation{background:radial-gradient(ellipse at 0% 100%,#8a63281f,transparent 75%),linear-gradient(135deg,#2b3023,#1a2b22);display:flex;flex-direction:column}.donation>p{max-width:390px}.donation-options{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:8px}.donation-options button{font-size:12px;min-height:44px;background:#2a3727}.support-grid .small,.small{font:11px/1.7 Arial,sans-serif;color:#b0bca5}.card-flourish{color:#8e8359;letter-spacing:9px;text-align:center;display:block;padding:30px 0 4px;margin-top:auto}.founders{background:#1b2b23}.founders>p{margin-bottom:23px}#founder-ideas>div{display:grid;grid-template-columns:28px 1fr;gap:11px;padding:16px 0;border-top:1px solid #44513d}#founder-ideas>div:before{content:'✦';color:#b8a06a;font-size:19px;line-height:1.3}#founder-ideas h3{font:17px/1.4 Georgia,serif;color:#e0ceaa;margin:0}#founder-ideas p{font:12px/1.7 Arial,sans-serif;margin:6px 0 0}.founder-note{border-top:1px solid #44513d;padding-top:16px;margin-bottom:0!important}
.questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;margin:78px 0 70px}.questions>div>p{font:13px/1.7 Arial,sans-serif}.question-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;color:var(--paper);font:15px/1.6 Georgia,serif;padding:19px 26px 19px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;top:17px;color:var(--gold);font-size:22px}details[open] summary:after{content:'−'}details p{font:13px/1.8 Arial,sans-serif;margin:0 24px 19px 0}.closing{text-align:center;border-top:1px solid #49553c;padding:44px 0 51px;background:radial-gradient(ellipse at 50% 100%,#66703e16,transparent 70%)}.closing h2{font-size:38px;margin:12px 0 23px}footer{font:11px/1.6 Arial,sans-serif;border-top:1px solid #354431;color:#a8b79f}.footer-divider{margin:0 10px;color:#697757}footer a{text-decoration:none}.skip-link{position:absolute;left:20px;top:-100px;padding:12px;background:#e0c68f;color:#122319;z-index:10}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #f2d792;outline-offset:5px}
@media(max-width:1000px){header nav{gap:17px}.hero{grid-template-columns:1.2fr 1fr;padding-top:45px}.world-seal>span{font-size:7px;letter-spacing:1.4px}.card{padding:22px}.support-grid .card{padding:25px}.section-heading{align-items:start;flex-direction:column;gap:8px}.section-heading>p{max-width:none}.section-heading>p br{display:none}.preview-note .tag{display:none}.questions{gap:35px}.plans{gap:12px}.plan-intro{min-height:38px}}
@media(max-width:760px){header,footer{padding:22px}main{padding:0 22px}header nav>a:not(.button){display:none}.brand>span:not(.brand-crest){font-size:11px;letter-spacing:1.4px}.brand small{font-size:6px;letter-spacing:1px}.brand{gap:9px}header nav .button{padding:9px 12px;min-height:40px;font-size:11px}.hero{grid-template-columns:1fr;gap:0;padding:43px 0 31px}.hero-copy>p{font-size:17px}.world-seal{display:none}h1{font-size:62px}.eyebrow{font-size:9px;letter-spacing:1.5px}.hero-actions{gap:18px}.preview-note{padding:17px;gap:13px}.preview-note strong{font-size:16px}.preview-note p{font-size:11px}.notice-mark{font-size:26px}.membership-section{margin-top:44px}.section-heading{margin-bottom:21px}h2{font-size:28px}.plans{grid-template-columns:1fr;gap:14px}.plans .card{padding:23px}.plans h3{font-size:25px}.plan-intro{min-height:0;margin-bottom:11px}.price{font-size:38px;margin:5px 0 18px}.price small{display:inline-block;vertical-align:middle;margin-left:9px;margin-top:0;max-width:155px;font-size:11px}.plans .card .button,.plans .card button{margin-top:21px}.plan-features{padding-top:16px}.plan-features li{margin-bottom:8px}.support-grid{grid-template-columns:1fr;margin:40px 0;gap:17px}.support-grid h2{font-size:28px}.support-grid .card{padding:25px}.card-flourish{padding-top:17px}.questions{grid-template-columns:1fr;gap:15px;margin:46px 0 43px}.questions h2 br{display:none}.questions>div>p{margin:10px 0}.closing{padding:32px 0 38px}.closing h2{font-size:32px}.checkout-notice{flex-wrap:wrap}.checkout-notice>div{flex-basis:100%}.checkout-notice .button{width:100%}footer{align-items:flex-start;gap:15px;flex-wrap:wrap}}
@media(max-width:380px){header,footer{padding:17px}main{padding:0 17px}.brand small{display:none}.brand>span:not(.brand-crest){font-size:10px;letter-spacing:1px}.brand-crest{width:27px;height:35px}.hero-actions{gap:16px}.hero-actions .button{font-size:12px;padding:12px 14px}h1{font-size:54px}.hero .eyebrow{letter-spacing:.8px;font-size:8px}.price small{max-width:132px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}button,.button{transition:none}}
.annual-savings{font:12px/1.7 Arial,sans-serif;color:#f0d69a;background:#c1a66d12;border:1px solid #81724d;padding:12px;margin:0 0 18px}.coming-soon{display:inline-block;margin-left:4px;color:#d5bd86;font-size:10px}.bank-benefits{margin-top:26px;padding:23px 26px;border:1px solid #4d5c43;background:#1a2b22}.bank-benefits h3{font:23px/1.3 Georgia,serif;margin:0 0 10px;color:#e5d8af}.bank-benefits p{font:13px/1.8 Arial,sans-serif;margin:8px 0;color:#c3ceba}.bank-benefits strong{color:#e8d7af}
.footer-social{display:inline-flex;flex-wrap:wrap;gap:14px;margin-left:14px}

/* Dark oak, warm light, and one paper accent. Payment controls remain unchanged. */
body.medieval-support {
  --muted: #cbb998;
  --gold: #d5b779;
  --line: #786041;
  --panel: #30271d;
  color-scheme: dark;
  color: #e4d1ac;
  background: #241c14;
  font-family: Palatino, 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
}
.medieval-support::before { display: none; }
.medieval-support p { color: #cbb998; }
.medieval-support a { color: #dfbd82; }
.medieval-support a:hover { color: #fff0cd; }
.medieval-support h1,
.medieval-support h2,
.medieval-support h3 { color: #f0dfbb; }
.medieval-support h1 { letter-spacing: -.045em; font-size: clamp(44px, 5.4vw, 70px); }
.medieval-support h1 em { color: #dfb87b; }
.medieval-support > header {
  max-width: none;
  background: var(--oak, #231910);
  border-bottom: 3px double var(--brass, #bb9456);
  padding-inline: max(24px, calc((100vw - 1172px) / 2));
  min-height: 94px;
}
.medieval-support .brand { color: #f2dfb5; }
.medieval-support .brand-crest {
  background: #3a2a1c;
  color: #dfbd78;
  border-color: #af884e;
  border-radius: 0 0 45% 45%;
  box-shadow: inset 0 0 0 3px #231910;
  width: 39px;
  height: 48px;
}
.medieval-support .brand > span:not(.brand-crest) { letter-spacing: .12em; }
.medieval-support .brand-crest img { display: block; width: 30px; height: 35px; }
.medieval-support .brand small { color: #bea783; letter-spacing: .08em; font-family: Georgia, serif; }
.medieval-support header nav > a:not(.button) { color: #decaa5; font: 15px/1.5 Georgia, serif; }
.medieval-support header nav > a:hover { color: #fff0cc; }
.medieval-support button,
.medieval-support .button {
  font-family: Georgia, serif;
  font-size: 15px;
  font-weight: normal;
  letter-spacing: .025em;
  background: #6b3328;
  color: #fff0cc;
  border: 1px solid #c59d5b;
  border-radius: 0;
  box-shadow: inset 0 0 0 3px #44271b;
  min-height: 46px;
}
.medieval-support .button:hover { background: #81412e; color: #fff6df; border-color: #dab574; }
.medieval-support .quiet { background: transparent; color: #e1c698; border-color: #9f7b4d; }
.medieval-support .quiet:hover { background: #45351f; color: #fff0cd; }
.medieval-support header .quiet { background: #3a281b; color: #f3dfb3; border-color: #a27b45; }
.medieval-support header .quiet:hover { background: #523820; color: #fff1d0; }
.medieval-support button:disabled { background: #3a3126; color: #c1b296; border-color: #766246; box-shadow: none; }
.medieval-support .hero { gap: 36px; padding-block: 65px 55px; }
.medieval-support .hero-copy > p { color: #ddccb0; font-size: 19px; }
.medieval-support .eyebrow,
.medieval-support .tag { font-family: Georgia, serif; color: #ceb07a; letter-spacing: .12em; }
.medieval-support .status-dot { background: #c0a265; width: 6px; height: 6px; }
.medieval-support .text-link { font: italic 15px/1.6 Georgia, serif; }
.medieval-support .hero-caption { color: #c2b190; font: 13px/1.65 Georgia, serif; }
.medieval-support .world-seal {
  padding: 18px 15px 38px;
  border: 1px solid #a5834d;
  outline: 1px solid #715b3d;
  outline-offset: 6px;
  background: #1d1812;
  box-shadow: 0 10px 24px #0004;
}
.medieval-support .world-seal svg { display: none; }
.medieval-support .world-seal::before {
  content: '';
  display: block;
  width: 100%;
  aspect-ratio: 1;
  background: url('/site-art/castle.webp') center / contain no-repeat;
}
.medieval-support .world-seal > span { margin-top: 0; padding-top: 18px; color: #d5bc8d; font: 11px/1.6 Georgia, serif; letter-spacing: .15em; }
.medieval-support .preview-note {
  background: #30271d;
  border-color: #796141;
  border-left: 4px solid #b38d52;
  border-radius: 0;
  font-family: Georgia, serif;
}
.medieval-support .preview-note strong { color: #f0dfbb; }
.medieval-support .preview-note p { color: #cbb998; font: 14px/1.7 Georgia, serif; }
.medieval-support .preview-note .tag { color: #d5b779; border-color: #91774f; border-radius: 0; }
.medieval-support .notice-mark { color: #d5b779; }
.medieval-support .checkout-notice { background: #33271e; }
.medieval-support .section-heading > p { font: italic 16px/1.7 Georgia, serif; }
.medieval-support .card {
  border-radius: 0;
  background: #30271d;
  border: 1px solid #786041;
  border-top: 3px double #aa8650;
  box-shadow: 0 4px 14px #0002;
}
.medieval-support .featured { background: #efe0bf; border-color: #9b7341; box-shadow: inset 0 4px #987348; }
.medieval-support .card h3 { color: #f0dfbb; }
.medieval-support .card .tag { color: #d5b779; }
.medieval-support .available { color: #c7c9a1; }
.medieval-support .plan-intro { font: italic 14px/1.65 Georgia, serif; color: #cbb998; }
.medieval-support .price { color: #f7e9c9; }
.medieval-support .price small { color: #c2b190; font: 12px/1.7 Georgia, serif; }
.medieval-support .plan-features { border-color: #786041; }
.medieval-support .plan-features li { font: 14px/1.6 Georgia, serif; color: #dbc8a6; }
.medieval-support .plan-features li::before { color: #d5b779; }
.medieval-support .featured h3,
.medieval-support .featured .price { color: #493321; }
.medieval-support .featured .tag,
.medieval-support .featured .plan-intro,
.medieval-support .featured .price small,
.medieval-support .featured .plan-features li,
.medieval-support .featured .coming-soon { color: #5c452e; }
.medieval-support .featured .plan-features { border-color: #b59b70; }
.medieval-support .featured .plan-features li::before { color: #805c30; }
.medieval-support .featured button:disabled { background: #dbc8a3; color: #5b4a37; border-color: #ad9165; }
.medieval-support .plans .card .button,
.medieval-support .plans .card button { font-size: 15px; }
.medieval-support .plan-footnote { font: 13px/1.75 Georgia, serif; color: #bda985; }
.medieval-support .annual-savings { color: #e2c99a; background: #211a13; border-color: #796141; font: 13px/1.7 Georgia, serif; }
.medieval-support .coming-soon { color: #bda985; font-style: italic; font-size: 11px; }
.medieval-support .bank-benefits { background: #30271d; border-color: #786041; border-left: 3px solid #b18a50; }
.medieval-support .bank-benefits h3 { color: #f0dfbb; }
.medieval-support .bank-benefits p { color: #cbb998; font: 15px/1.75 Georgia, serif; }
.medieval-support .bank-benefits strong { color: #f0dfbb; }
.medieval-support .support-grid p { font: 16px/1.75 Georgia, serif; }
.medieval-support .support-grid .small,
.medieval-support .small { font: 13px/1.75 Georgia, serif; color: #bda985; }
.medieval-support .donation { background: #2c241c; }
.medieval-support .donation-options { gap: 12px; }
.medieval-support .donation-options .button,
.medieval-support .donation-options button { font-size: 14px; padding-inline: 12px; }
.medieval-support .founders { background: #201b16; }
.medieval-support #founder-ideas > div { border-color: #786041; }
.medieval-support #founder-ideas > div::before { color: #d5b779; }
.medieval-support #founder-ideas h3 { color: #f0dfbb; }
.medieval-support #founder-ideas p { color: #cbb998; font: 14px/1.7 Georgia, serif; }
.medieval-support .founder-note { border-color: #786041; }
.medieval-support .card-flourish { color: #9c7745; background: url('/site-art/ornament.webp') center bottom / 150px auto no-repeat; font-size: 0; min-height: 42px; }
.medieval-support .questions > div > p { font: 15px/1.7 Georgia, serif; }
.medieval-support .question-list,
.medieval-support details { border-color: #786041; }
.medieval-support summary { color: #f0dfbb; font-size: 17px; }
.medieval-support summary::after { color: #d5b779; }
.medieval-support details p { font: 15px/1.8 Georgia, serif; color: #cbb998; }
.medieval-support .closing { border-color: #786041; background: transparent; padding-block: 45px 55px; }
.medieval-support > footer {
  max-width: none;
  padding-inline: max(24px, calc((100vw - 1172px) / 2));
  color: #c5ad87;
  background: #231910;
  border-top: 3px double #a7824c;
  font: 13px/1.7 Georgia, serif;
}
.medieval-support > footer a { color: #ddc297; }
.medieval-support > footer a:hover { color: #fff0cf; }
.medieval-support .footer-divider { color: #806344; }
.medieval-support a:focus-visible,
.medieval-support button:focus-visible,
.medieval-support summary:focus-visible { outline: 3px solid #dfbd7e; outline-offset: 4px; }
.medieval-support .featured :focus-visible { outline-color: #82422b; }
.medieval-support header a:focus-visible,
.medieval-support footer a:focus-visible { outline-color: #dfbd7e; }
@media(max-width:760px) {
  .medieval-support > header { padding: 18px 20px; min-height: 85px; gap: 12px; }
  .medieval-support header .button { font-size: 13px; }
  .medieval-support .hero { padding-block: 39px 32px; gap: 0; }
  .medieval-support h1 { font-size: clamp(42px, 8.5vw, 62px); }
  .medieval-support .hero-copy > p { font-size: 17px; }
  .medieval-support .preview-note p { font-size: 13px; }
  .medieval-support .donation-options { grid-template-columns: 1fr; }
  .medieval-support .price small { max-width: 155px; font-size: 12px; }
}
@media(max-width:380px) {
  .medieval-support > header { padding-inline: 16px; }
  .medieval-support .brand > span:not(.brand-crest) { font-size: 10px; letter-spacing: .08em; }
  .medieval-support .brand-crest { width: 30px; height: 39px; }
  .medieval-support .brand-crest img { width: 24px; height: 30px; }
  .medieval-support header .button { padding-inline: 10px; font-size: 12px; }
}
