@font-face{font-family:"Cinzel";src:url(/fonts/cinzel-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Cinzel";src:url(/fonts/cinzel-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Cinzel";src:url(/fonts/cinzel-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(/fonts/eb-garamond-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(/fonts/eb-garamond-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(/fonts/eb-garamond-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
:root{--cream:#F2EADA;--cream-2:#F8F3E8;--paper:#FFFBF3;--sage:#6A9486;--sage-d:#4C7266;--sage-dd:#35544B;--apricot:#D9863F;--apricot-d:#A85F22;--ink:#2E3B36;--muted:#5C6660;--line:#DDD1BA;--r:14px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"EB Garamond",Georgia,serif;font-size:1.15rem;line-height:1.55}
a{color:var(--sage-dd);text-decoration-color:var(--apricot);text-underline-offset:3px}
a:hover{color:var(--apricot-d)}
h1,h2,h3,.logo,.footer-logo,.price,.button,.badge,.eyebrow,.topic span,.tier .ribbon{font-family:"Cinzel",Georgia,serif}
h1{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.15;font-weight:600;color:var(--sage-dd);margin:.4em 0 .3em}
h2{font-size:1.45rem;font-weight:600;color:var(--sage-dd);margin:1.6em 0 .5em}
h3{font-size:1.1rem;font-weight:600;margin:.2em 0 .3em}
.wrap{max-width:1160px;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sprig{width:30px;height:30px;color:var(--sage);flex:none}
.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.7rem;padding-bottom:.7rem}
.logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--sage-dd);font-weight:700;font-size:1.25rem;letter-spacing:.04em}
.site-nav{display:flex;flex-wrap:wrap;gap:.2rem 1.1rem}
.site-nav a{text-decoration:none;color:var(--ink);font-size:1.05rem}
.site-nav a[aria-current],.site-nav a:hover{color:var(--apricot-d);text-decoration:underline;text-decoration-color:var(--apricot)}
.site-nav a[href="/sponsor/"]{color:var(--apricot-d);font-weight:600}
.nav-toggle{display:none;background:none;color:var(--sage-dd);border:1px solid var(--line);border-radius:8px;padding:.3rem .7rem;font:inherit}
main{padding-bottom:3rem}
.crumbs{font-size:.95rem;color:var(--muted);margin-top:1.2rem}
.crumbs a{color:var(--muted)}
.hero{margin:1.8rem 0 1rem;background:var(--sage);color:var(--cream);border-radius:22px;padding:clamp(1.6rem,5vw,3.4rem);position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-40px;bottom:-40px;width:260px;height:260px;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path d="M8 56 C24 40 36 28 56 8" fill="none" stroke="%23F2EADA" stroke-width="1.5"/><path d="M20 44 C14 36 16 28 22 24 C26 32 26 38 20 44Z M30 34 C26 24 30 18 36 14 C38 22 36 30 30 34Z M40 24 C38 16 42 10 48 8 C48 16 46 20 40 24Z M24 40 C32 42 38 40 42 34 C34 32 28 34 24 40Z M34 30 C42 32 48 28 52 22 C44 20 38 24 34 30Z" fill="%23F2EADA"/></svg>') no-repeat center/contain;opacity:.18}
.hero h1{color:var(--cream);max-width:20ch}
.hero .lede{color:#F8F3E8;max-width:60ch}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;color:var(--apricot-d);margin:0}
.hero .eyebrow{color:#F6D3AE}
.lede{font-size:1.25rem;color:var(--muted);max-width:68ch}
.hero-search{display:flex;gap:.5rem;max-width:560px;margin-top:1.2rem;position:relative;z-index:1}
.hero-search input,.signup-form input[type=email],.filters input,.filters select{flex:1;font:inherit;padding:.65rem .9rem;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
button,.button{font:inherit;font-family:"Cinzel",Georgia,serif;font-weight:600;background:var(--apricot);color:#fff;border:0;border-radius:10px;padding:.65rem 1.2rem;cursor:pointer;text-decoration:none;display:inline-block;letter-spacing:.03em}
button:hover,.button:hover{background:var(--apricot-d);color:#fff}
.button.ghost{background:transparent;color:var(--sage-dd);border:1.5px solid var(--sage)}
.stats{margin:.9rem 0 0;color:#F8F3E8}
.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.1rem}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.1rem 1.2rem;display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(53,84,75,.05)}
.card:hover{border-color:var(--sage)}
.card h3 a{text-decoration:none;color:var(--ink)}
.card h3 a:hover{color:var(--apricot-d)}
.card-top{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}
.badge{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .55rem;border-radius:99px;background:#F4E1CC;color:#7A4415;font-weight:700}
.badge.free{background:#DCE8E2;color:var(--sage-dd)}
.badge.warn{background:#F3D4CC;color:#8A2E1A}
.badge.faith{background:#ECE4F2;color:#4F3B66}
.badge.timed{background:#FFF0C9;color:#6B4E00}
.card-warn{border-color:#E3B3A6}
.stated{margin:.2rem 0 .4rem}
.stated.big{font-size:1.3rem}
.note{color:var(--muted);font-style:italic;margin:.1rem 0 .5rem;font-size:1.02rem}
.meta{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.92rem;color:var(--muted);margin:.2rem 0 .5rem}
.chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.2rem 0 .6rem}
.chip{font-size:.85rem;background:var(--cream-2);border:1px solid var(--line);border-radius:99px;padding:.05rem .6rem;text-decoration:none;color:var(--sage-dd)}
.chip:hover{border-color:var(--apricot)}
.card-links{margin-top:auto;display:flex;gap:1rem;align-items:center}
.visit{font-weight:600}
.topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.8rem}
.topic{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--sage);border-radius:12px;padding:.8rem 1rem;text-decoration:none;color:var(--ink)}
.topic:hover{border-left-color:var(--apricot)}
.topic span{font-weight:600;font-size:1rem}
.topic small{color:var(--muted)}
.signup{margin:2.5rem 0;background:var(--sage-dd);color:var(--cream);border-radius:22px;padding:clamp(1.4rem,4vw,2.6rem)}
.signup.compact{margin-top:2.5rem}
.signup h2{color:var(--cream);margin-top:0}
.signup a{color:#F6D3AE}
.signup-inner{max-width:640px}
.signup-form .row{display:flex;gap:.5rem}
.consent{display:flex;gap:.5rem;align-items:center;margin-top:.7rem;font-size:1.02rem}
.consent input{width:1.1rem;height:1.1rem;accent-color:var(--apricot)}
.hp{position:absolute;left:-9999px}
.form-msg{min-height:1.4em;margin:.5rem 0 0;font-weight:600}
.form-msg.ok{color:#F6D3AE}.form-msg.err{color:#FFD0C4}
.fine{font-size:.92rem;opacity:.9}
.planner{background:var(--paper);border:1px dashed var(--apricot);border-radius:var(--r);padding:1.2rem 1.4rem;margin-top:2.5rem}
.planner h2{margin-top:0}
.filters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:1rem 0 1.4rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:.8rem 1rem}
.filters label{font-family:"Cinzel",serif;font-size:.85rem}
.filters input{min-width:220px}
.filters select{flex:0 1 260px}
.count{color:var(--muted);margin-left:auto}
.callout{background:#E6EEE9;border-left:4px solid var(--sage);padding:.8rem 1rem;border-radius:8px;max-width:75ch}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.7rem 1rem;margin:.5rem 0;max-width:80ch}
.faq summary{cursor:pointer;font-weight:600}
.entry,.post{max-width:760px}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:.3rem 1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.2rem}
.facts dt{font-family:"Cinzel",serif;font-size:.85rem;color:var(--sage-dd);padding-top:.15rem}
.facts dd{margin:0}
.small{font-size:.95rem;color:var(--muted)}
.center{text-align:center}
.questions li{margin:.35rem 0}
.post h2{font-size:1.2rem;color:var(--apricot-d);margin-top:.6rem}
.post h3{margin-top:1.4rem;color:var(--sage-dd)}
.sponsor-hero{text-align:center;max-width:820px;margin:1.5rem auto 0}
.sponsor-hero .lede{margin:0 auto}
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin:2rem 0 1rem}
.tier{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:1.4rem 1.5rem;display:flex;flex-direction:column;position:relative}
.tier h2{margin:.2rem 0}
.tier ul{padding-left:1.1rem;flex:1}
.tier li{margin:.35rem 0}
.tier .button{text-align:center;margin-top:.6rem}
.tier-plus{border:2px solid var(--sage);box-shadow:0 6px 24px rgba(53,84,75,.12)}
.tier .ribbon{position:absolute;top:-.8rem;right:1rem;background:var(--sage);color:#fff;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .7rem;border-radius:99px;margin:0}
.price{font-size:2.4rem;font-weight:700;color:var(--apricot-d);margin:.2rem 0 0}
.price span{font-size:1rem;color:var(--muted);font-weight:400}
.price.soon{font-size:1.5rem;color:var(--sage-d)}
.per{margin:0;color:var(--muted)}
.tier-soon{background:var(--cream-2);border-style:dashed}
.site-footer{background:var(--sage-dd);color:#E9E2D2;margin-top:2rem;padding-top:2rem}
.site-footer a{color:#F6D3AE}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
.footer-grid ul{list-style:none;padding:0;margin:0}.footer-grid li{margin:.25rem 0}
.footer-logo{display:flex;gap:.5rem;align-items:center;font-weight:700;color:var(--cream);font-size:1.15rem;margin-top:0}
.footer-logo .sprig{color:#BFD6CC}
.footer-h{font-family:"Cinzel",serif;color:var(--cream);margin-top:0}
.disclosure-note{font-size:.98rem;background:rgba(255,255,255,.07);padding:.6rem .8rem;border-radius:8px}
.footer-base{border-top:1px solid rgba(255,255,255,.15);margin-top:1.5rem;padding:1rem 1.25rem;font-size:.95rem}
:focus-visible{outline:3px solid var(--apricot);outline-offset:2px}
@media (max-width:820px){.nav-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.site-nav.open{display:flex}.footer-grid{grid-template-columns:1fr}.signup-form .row,.hero-search{flex-direction:column}}
