:root{--rust:#b5512b;--rust-d:#8f3d1f;--cream:#f3ead6;--cream-2:#fbf6ea;--pine:#2f4a36;--pine-d:#21352a;--char:#2b2724}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--char);background:var(--cream-2);line-height:1.6;font-size:17px}
h1,h2,h3{font-family:"Alfa Slab One","Rockwell",Georgia,serif;font-weight:400;line-height:1.15;color:var(--pine-d);letter-spacing:.01em}
h2{font-size:clamp(1.8rem,4vw,2.5rem);margin:0 0 .4em}h3{font-size:1.25rem;margin:.2em 0 .4em}
a{color:var(--rust-d)}img{max-width:100%;display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.eyebrow{font:700 .8rem/1 "Inter",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--rust)}
header.site{position:sticky;top:0;z-index:20;background:var(--pine-d);color:var(--cream);border-bottom:4px solid var(--rust)}
header.site .wrap{display:flex;align-items:center;gap:16px;min-height:66px}
.brand{display:flex;align-items:center;gap:10px;color:var(--cream);text-decoration:none;font-weight:700;line-height:1.1}
.brand img{width:44px;height:44px;border-radius:6px}.brand small{display:block;font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#e7c9a8}
nav.main{margin-left:auto;display:flex;gap:18px;align-items:center}
nav.main a{color:var(--cream);text-decoration:none;font-size:.92rem}nav.main a:hover{color:#f1b48f}
.btn{display:inline-block;background:var(--rust);color:#fff!important;text-decoration:none;font-weight:700;padding:.75em 1.3em;border-radius:6px;border:2px solid var(--rust);transition:.15s;cursor:pointer;font-size:1rem}
.btn:hover{background:var(--rust-d);border-color:var(--rust-d)}.btn.ghost{background:transparent;color:var(--pine-d)!important;border-color:var(--pine-d)}
.btn.ghost:hover{background:var(--pine-d);color:var(--cream)!important}
.menu-btn{display:none;background:none;border:2px solid var(--cream);color:var(--cream);border-radius:6px;padding:6px 10px;font-size:1rem}
.hero{background:linear-gradient(180deg,var(--cream) 0%,#ead9b8 100%);border-bottom:6px double var(--pine)}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding-top:60px;padding-bottom:60px}
.hero h1{font-size:clamp(2.2rem,5.5vw,3.8rem);margin:.25em 0}.hero p.lead{font-size:1.2rem;max-width:34em}
.hero .tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 26px}.tag{background:var(--pine);color:var(--cream);padding:5px 12px;border-radius:999px;font-size:.85rem;font-weight:600}
.tag.free{background:var(--rust)}.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero img.logo{filter:drop-shadow(0 10px 18px rgba(0,0,0,.18));max-width:440px;margin:auto}
section{padding:72px 0}section.alt{background:var(--cream)}section.dark{background:var(--pine-d);color:var(--cream)}
section.dark h2,section.dark h3{color:#fff}section.dark a{color:#f1b48f}
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:2px solid #e3d3b4;border-radius:10px;padding:22px;box-shadow:0 3px 0 #e3d3b4}
section.dark .card{background:var(--pine);border-color:#46644d;box-shadow:none}
.num{font-family:"Alfa Slab One",Georgia,serif;font-size:2.2rem;color:var(--rust);line-height:1}
.phases{counter-reset:p}.phase{border-left:5px solid var(--rust);padding:6px 0 6px 18px;margin-bottom:18px}
.sessions{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.sessions li{background:#fff;border:2px solid #e3d3b4;border-radius:8px;padding:12px 16px;display:flex;gap:14px;align-items:flex-start}
.sessions b{font-family:"Alfa Slab One",Georgia,serif;font-weight:400;color:#fff;background:var(--pine);min-width:44px;text-align:center;border-radius:6px;padding:4px 6px;font-size:.9rem}
.sessions li.hl{border-color:var(--rust)}.sessions li.hl b{background:var(--rust)}
ul.check{list-style:none;padding:0}ul.check li{padding-left:28px;position:relative;margin:.45em 0}
ul.check li:before{content:"✔";position:absolute;left:0;color:var(--rust);font-weight:700}
.note{font-size:.88rem;opacity:.8}
.ph{background:#fff2c9;border:1px dashed #c9a33a;padding:0 4px;border-radius:3px;font-family:ui-monospace,monospace;font-size:.85em;color:#6b5210}
details{background:#fff;border:2px solid #e3d3b4;border-radius:8px;padding:14px 18px;margin-bottom:10px}
summary{font-weight:700;cursor:pointer;color:var(--pine-d)}
form.f{background:#fff;border:2px solid #e3d3b4;border-radius:12px;padding:26px;display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
form.f .full{grid-column:1/-1}label{font-weight:600;font-size:.92rem;display:block;margin-bottom:4px}
input,select,textarea{width:100%;padding:.7em;border:2px solid #d6c6a6;border-radius:6px;font:inherit;background:var(--cream-2)}
input:focus,select:focus,textarea:focus{outline:3px solid #f1b48f;border-color:var(--rust)}
.consent{display:flex;gap:10px;align-items:flex-start;font-weight:400}.consent input{width:auto;margin-top:5px}
.hidden{display:none}.banner{background:var(--rust);color:#fff;text-align:center;padding:56px 0}.banner h2{color:#fff}
.banner .btn{background:var(--cream);color:var(--rust-d)!important;border-color:var(--cream)}
footer{background:var(--char);color:#d9cfbd;padding:40px 0;font-size:.9rem}footer a{color:#f1b48f}
footer .wrap{display:flex;gap:24px;flex-wrap:wrap;justify-content:space-between;align-items:center}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;text-align:center}.hero .tags,.hero .ctas{justify-content:center}.hero p.lead{margin:auto}.hero img.logo{max-width:300px;grid-row:1}
.g3,.g4{grid-template-columns:1fr 1fr}.sessions{grid-template-columns:1fr}
.menu-btn{display:block}nav.main{display:none;position:absolute;top:70px;left:0;right:0;background:var(--pine-d);flex-direction:column;padding:16px;gap:14px}nav.main.open{display:flex}
header.site .wrap>.btn{padding:.5em .8em;font-size:.85rem}.menu-btn{margin-left:0}.brand small{display:none}}
@media(max-width:600px){.g2,.g3,.g4{grid-template-columns:1fr}form.f{grid-template-columns:1fr}section{padding:54px 0}.brand span.t{font-size:.9rem}}
nav.main a,.btn{white-space:nowrap}nav.main{gap:14px}
.hero img.logo{mix-blend-mode:multiply;filter:none}
@media(max-width:1320px){.menu-btn{display:block}header.site .wrap>.btn{margin-left:auto}nav.main{display:none;position:absolute;top:70px;left:0;right:0;background:var(--pine-d);flex-direction:column;padding:16px;gap:14px;z-index:50}nav.main.open{display:flex}}
nav.main a.active{color:#f1b48f;font-weight:700;box-shadow:inset 0 -2px #f1b48f}
.card.teaser{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}.card.teaser h3{margin:0}.card.teaser .more{margin-top:auto;font-weight:700;color:var(--rust)}
.soon{display:inline-block;background:var(--rust);color:#fff;font:700 .75rem/1 "Inter",sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.card.prog{display:flex;flex-direction:column;gap:8px}.card.prog .soon{align-self:flex-start}.card.prog .more{margin-top:auto;font-weight:700}
.card.flag{border-color:var(--rust);box-shadow:0 3px 0 var(--rust)}
