:root{--bg:#f6f1e7;--paper:#fbf8f2;--ink:#23261f;--muted:#5d6155;--moss:#3f5a3a;--forest:#1f2e22;--clay:#b5653a;--sun:#d9a441;--line:#e2d9c6;--r:18px;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}a{color:var(--moss)}a:hover{color:var(--clay)}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.15;color:var(--forest);margin:0 0 .5em;font-weight:600}
h1{font-size:clamp(2.3rem,5.5vw,4.2rem);letter-spacing:-.01em}h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}h3{font-size:1.3rem}
p{margin:0 0 1em}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:760px}
.eyebrow{font:600 .78rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--clay);margin-bottom:14px;display:block}
/* header */
.site-head{position:sticky;top:0;z-index:50;background:rgba(246,241,231,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--forest);font:600 1.25rem var(--serif)}
.logo svg{width:34px;height:34px}
.nav{display:flex;gap:4px;align-items:center}.nav a{text-decoration:none;color:var(--ink);font-size:.93rem;padding:8px 12px;border-radius:999px}
.nav a:hover,.nav a.on{background:#ebe3d2;color:var(--forest)}
.nav .cta{background:var(--forest);color:#f6f1e7}.nav .cta:hover{background:var(--moss);color:#fff}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}.burger span{display:block;width:24px;height:2px;background:var(--forest);margin:5px 0;transition:.3s}
@media(max-width:960px){.burger{display:block}.nav{position:fixed;inset:68px 0 auto 0;flex-direction:column;align-items:stretch;background:var(--paper);padding:12px 24px 24px;border-bottom:1px solid var(--line);transform:translateY(-120%);transition:transform .35s;z-index:-1}
.nav.open{transform:none}.nav a{padding:12px 14px}}
/* buttons */
.btn{display:inline-block;padding:14px 26px;border-radius:999px;background:var(--clay);color:#fff;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:1rem;transition:transform .2s,background .2s}
.btn:hover{background:#9c522c;color:#fff;transform:translateY(-1px)}.btn.ghost{background:transparent;border:1.5px solid currentColor;color:inherit}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
/* hero */
.hero{position:relative;overflow:hidden;color:#f3ecdc;background:radial-gradient(circle at 78% 30%,rgba(217,164,65,.55),transparent 32%),linear-gradient(180deg,#26382a 0%,#1f2e22 60%,#17221a 100%);padding:120px 0 150px}
.hero h1{color:#fbf5e6;max-width:820px}.hero p.lead{font-size:1.22rem;max-width:620px;color:#dcd3bf}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero .eyebrow{color:var(--sun)}
.hero .sun{position:absolute;right:9%;top:16%;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,#f4cf7a,#d9a441 60%,rgba(217,164,65,0));filter:blur(1px);opacity:.9;animation:breathe 8s ease-in-out infinite}
.hero .ridge{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:auto;display:block}
@keyframes breathe{50%{transform:scale(1.07);opacity:1}}
.page-hero{background:linear-gradient(180deg,#26382a,#1f2e22);color:#e8dfcb;padding:90px 0 70px;position:relative;overflow:hidden}
.page-hero h1{color:#fbf5e6;font-size:clamp(2rem,4.5vw,3.3rem)}.page-hero p{max-width:680px;font-size:1.15rem;color:#d5ccb7}.page-hero .eyebrow{color:var(--sun)}
.page-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(217,164,65,.45),transparent 65%)}
/* sections */
section{padding:90px 0}.alt{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.grid{display:grid;gap:24px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:860px){.g2,.g3{grid-template-columns:1fr}section{padding:64px 0}.hero{padding:80px 0 120px}.hero .sun{width:140px;height:140px;right:-40px;top:-40px;opacity:.5;animation:none}}
@media(min-width:861px) and (max-width:1060px){.g3{grid-template-columns:repeat(2,1fr)}}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:30px;transition:transform .25s,box-shadow .25s;text-decoration:none;color:inherit;display:block}
a.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -22px rgba(31,46,34,.45);color:inherit}
.card .ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#e9e1cd;margin-bottom:18px;color:var(--moss)}
.card .ico svg{width:28px;height:28px}.card p{color:var(--muted);margin:0}.more{display:inline-block;margin-top:14px;font-weight:600;color:var(--clay)}
.mission{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center}@media(max-width:860px){.mission{grid-template-columns:1fr;gap:24px}}
.quote{font:italic 500 clamp(1.4rem,2.6vw,2rem)/1.35 var(--serif);color:var(--forest);border-left:3px solid var(--clay);padding-left:24px}
.levels{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.tag{font-size:.78rem;font-weight:600;padding:5px 12px;border-radius:999px;background:#e9e1cd;color:var(--forest)}
.tag.est{background:#dce6d3}.tag.con{background:#f1dfc4}.tag.spec{background:#ecd5cb}
.post .meta{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.post h3{margin:10px 0}
.post .thumb{height:150px;border-radius:12px;margin:-8px -8px 20px;background:linear-gradient(135deg,#3f5a3a,#d9a441)}
.t2{background:linear-gradient(135deg,#1f2e22,#5a6f8a)!important}.t3{background:linear-gradient(135deg,#6b4a32,#c9b48a)!important}
/* newsletter */
.news{background:var(--forest);color:#e8dfcb;border-radius:28px;padding:56px;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;position:relative;overflow:hidden}
.news h2{color:#fbf5e6}.news:before{content:"";position:absolute;left:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(217,164,65,.35),transparent 70%)}
@media(max-width:860px){.news{grid-template-columns:1fr;padding:36px 26px}}
form.signup{display:flex;gap:10px;flex-wrap:wrap;position:relative}
input,textarea,select{font:inherit;padding:14px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);flex:1;min-width:200px}
textarea{border-radius:16px;min-height:150px;width:100%}.fine{font-size:.82rem;opacity:.75;margin-top:10px}
.form-msg{display:none;margin-top:12px;font-weight:600;color:var(--sun)}
.stack{display:grid;gap:14px;max-width:620px}.stack input,.stack select{border-radius:14px;width:100%}
/* prose */
.prose{font-size:1.08rem}.prose h2{font-size:1.75rem;margin-top:1.8em}.prose h3{margin-top:1.4em}.prose ul{padding-left:1.2em}.prose li{margin:.4em 0}
.notice{background:#f3e7d3;border:1px solid #e3cfa9;border-radius:14px;padding:18px 22px;font-size:.95rem;margin:24px 0}.notice strong{color:var(--clay)}
.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.table th{font-family:var(--sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.person{display:flex;flex-direction:column;gap:6px}.person .handle{font:600 1.1rem var(--serif);color:var(--forest);text-decoration:none}
.person .handle:hover{color:var(--clay)}.person .pill{align-self:flex-start;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--clay);font-weight:700}
/* footer */
footer{background:#17221a;color:#b9b19e;padding:64px 0 34px;font-size:.93rem;margin-top:0}
footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}@media(max-width:860px){footer .cols{grid-template-columns:1fr 1fr}}
footer h4{color:#f0e8d6;font:600 .8rem var(--sans);letter-spacing:.14em;text-transform:uppercase}footer a{color:#d9d0bc;text-decoration:none;display:block;padding:3px 0}
footer a:hover{color:var(--sun)}footer .logo{color:#f0e8d6}.legal{border-top:1px solid #2c3a2e;margin-top:40px;padding-top:22px;font-size:.82rem}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero .sun{animation:none}}

/* ---- variant overrides ---- */
:root{--bg:#1b1815;--paper:#26211c;--ink:#ebdfc8;--muted:#b7a78c;--moss:#e07a3c;--forest:#f1e3c4;--clay:#e07a3c;--sun:#e8a64a;--line:#3d342b;
--serif:"IM Fell English",Georgia,serif;--sans:"Spectral",Georgia,serif}
body{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22400%22%20height%3D%22400%22%3E%3Cfilter%20id%3D%22s%22%3E%3CfeTurbulence%20type%3D%22turbulence%22%20baseFrequency%3D%22.012%22%20numOctaves%3D%224%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%20.1%20%200%200%200%200%20.08%20%200%200%200%200%20.06%20%200%200%200%20.5%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23s%29%22/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22240%22%20height%3D%22240%22%3E%3Cfilter%20id%3D%22n%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.85%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%20.5%20%200%200%200%200%20.38%20%200%200%200%200%20.25%20%200%200%200%20.55%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23n%29%22/%3E%3C/svg%3E"),#1b1815;color:var(--ink)}
h1,.hero h1,.page-hero h1{font-family:"Caveat Brush",var(--serif);font-weight:400;letter-spacing:.01em;color:#f6e7c6}
h2{font-family:"Caveat Brush",var(--serif);font-weight:400;letter-spacing:.01em}
.eyebrow{font-family:var(--serif);font-style:italic;letter-spacing:.12em;text-transform:none;font-size:1rem;color:var(--sun)}
.site-head{background:rgba(27,24,21,.9);border-color:var(--line)}.logo{color:#f1e3c4;font-family:"Caveat Brush";font-size:1.6rem;font-weight:400}
.nav a{color:var(--ink)}.nav a:hover,.nav a.on{background:#3a2f25;color:#fff}.nav .cta{background:var(--clay);color:#1b1815}.burger span{background:#f1e3c4}
@media(max-width:960px){.nav{background:#211c18}}
.hero,.page-hero{background:radial-gradient(ellipse at 75% 45%,rgba(224,122,60,.35),transparent 45%),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22400%22%20height%3D%22400%22%3E%3Cfilter%20id%3D%22s%22%3E%3CfeTurbulence%20type%3D%22turbulence%22%20baseFrequency%3D%22.012%22%20numOctaves%3D%224%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%20.1%20%200%200%200%200%20.08%20%200%200%200%200%20.06%20%200%200%200%20.5%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23s%29%22/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22240%22%20height%3D%22240%22%3E%3Cfilter%20id%3D%22n%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.85%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%20.5%20%200%200%200%200%20.38%20%200%200%200%200%20.25%20%200%200%200%20.55%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23n%29%22/%3E%3C/svg%3E"),linear-gradient(180deg,#2a221b,#16130f)}
.hero .sun{display:none}.hero .ridge path:last-child{fill:#1b1815}.hero .ridge path:first-child{fill:#3a2b1f}
.cave{position:absolute;right:2%;top:50%;transform:translateY(-55%);width:min(46vw,560px);filter:drop-shadow(0 0 1px rgba(0,0,0,.4));pointer-events:none}
.hero .wrap{z-index:1}.hero h1,.hero p.lead{max-width:600px}
.hero p.lead{color:#d8c8aa}
.alt{background:rgba(38,33,28,.75);border-color:var(--line)}
.card{background:linear-gradient(160deg,#2d2620,#231e19);border-color:#43382d;border-radius:6px 14px 8px 16px;box-shadow:inset 0 0 40px rgba(0,0,0,.35)}
a.card:hover{box-shadow:0 0 0 1px var(--clay),0 18px 40px -20px rgba(224,122,60,.5)}.card p{color:var(--muted)}
.card .ico{background:#3a2c20;color:var(--sun);border-radius:50% 45% 52% 48%}
.tag{background:#3a2f25;color:#f1e3c4}.tag.est{background:#3b4a2c}.tag.con{background:#5a3f1e}.tag.spec{background:#5e2d1f}
.quote{font-family:"IM Fell English";color:#f1e3c4;border-color:var(--clay)}
.post .thumb{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22160%22%20height%3D%2260%22%20fill%3D%22none%22%20stroke%3D%22%23b5652f%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.55%22%3E%3Cpath%20d%3D%22M20%2030c0-4%206-4%206%200s-10%207-12%200%208-14%2016-6%202%2020-12%2018%22/%3E%3Cpath%20d%3D%22M60%2040l10-18%2010%2018M95%2022v18M90%2031h10M125%2030c4-8%2014-8%2018%200%22/%3E%3C/svg%3E") center/60% no-repeat,linear-gradient(135deg,#5e2d1f,#c4712f)!important}
.btn{background:var(--clay);color:#1b1815;border-radius:4px 12px 6px 14px}.btn:hover{background:#f08a4a;color:#1b1815}.btn.ghost{color:#f1e3c4}
.news{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22400%22%20height%3D%22400%22%3E%3Cfilter%20id%3D%22s%22%3E%3CfeTurbulence%20type%3D%22turbulence%22%20baseFrequency%3D%22.012%22%20numOctaves%3D%224%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%20.1%20%200%200%200%200%20.08%20%200%200%200%200%20.06%20%200%200%200%20.5%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23s%29%22/%3E%3C/svg%3E"),linear-gradient(135deg,#3a2414,#20170f);border:1px solid #4a3523;border-radius:10px 24px 12px 28px}
.news h2{color:#f6e7c6}
section+section:not(.alt):before{content:"";display:block;height:60px;margin:-60px auto 30px;max-width:160px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22160%22%20height%3D%2260%22%20fill%3D%22none%22%20stroke%3D%22%23b5652f%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.55%22%3E%3Cpath%20d%3D%22M20%2030c0-4%206-4%206%200s-10%207-12%200%208-14%2016-6%202%2020-12%2018%22/%3E%3Cpath%20d%3D%22M60%2040l10-18%2010%2018M95%2022v18M90%2031h10M125%2030c4-8%2014-8%2018%200%22/%3E%3C/svg%3E") center/contain no-repeat}
input,textarea,select{background:#14110e;border-color:#4a3e33;color:var(--ink)}
.notice{background:#2e2218;border-color:#5a4028;color:var(--ink)}
.table td,.table th{border-color:var(--line)}
footer{background:#100e0c}.legal{border-color:#2a241e}
@media(max-width:860px){.cave{position:relative;transform:none;width:100%;top:auto;right:auto;margin:30px 0 -10px;opacity:.85}}
a.card[style]{background:linear-gradient(160deg,#5e2d1f,#3a1d12)!important;border-color:#7a3b1f!important}
a.card[style] h3{color:#f6e7c6!important}a.card[style] p{color:#e3cfae!important}
@media(max-width:860px){.hero{display:flex;flex-direction:column}.cave{order:2;margin:24px 0 0}}

.form-err{display:none;margin-top:12px;font-weight:600;color:#e4572e}

/* Currently happening */
.now[hidden]{display:none}
.now-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;margin-top:32px}
.now-post{margin:0;background:linear-gradient(160deg,#2d2620,#231e19);border:1px solid #43382d;border-radius:6px 14px 8px 16px;overflow:hidden;box-shadow:inset 0 0 40px rgba(0,0,0,.35)}
.now-post img,.now-post video{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#1b1815}
.now-post figcaption{padding:16px 18px 20px}
.now-post time{display:block;font-size:.85rem;color:var(--sun);letter-spacing:.04em;margin-bottom:6px}
.now-post p{margin:0;color:var(--muted)}
