:root{--green:#0b3d2e;--green-deep:#06261c;--burgundy:#6b1e2f;--burgundy-deep:#4a1420;--cream:#f5e6c8;--cream-soft:#faf3e4;--gold:#c9a227;--gold-bright:#e0b83a;--ink:#1a1208;--muted:#5c4a38;--border:#c9a227;--font-display:"Cinzel", "Times New Roman", serif;--font-serif:"Libre Baskerville", Georgia, serif;--font-sans:"Source Sans 3", "Segoe UI", sans-serif;--max:1120px;--radius:2px}*,*::before,*::after{box-sizing:border-box}[x-cloak]{display:none!important}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:radial-gradient(ellipse at 20% 0%,rgba(201,162,39,8%),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(107,30,47,6%),transparent 45%),linear-gradient(180deg,var(--cream-soft) 0%,var(--cream) 40%,#ebe0c4 100%);min-height:100vh;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--burgundy);text-decoration-thickness:1px;text-underline-offset:.2em}a:hover{color:var(--green)}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:.02em;color:var(--green-deep)}h1{font-size:clamp(2.1rem,5vw,3.6rem);margin:0 0 .5rem}h2{font-size:clamp(1.5rem,3vw,2.2rem);margin:0 0 .75rem}h3{font-size:1.25rem;margin:0 0 .5rem}p{margin:0 0 1rem}.eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--gold);margin:0 0 .75rem}.eyebrow.light{color:var(--gold-bright)}.lead{font-family:var(--font-serif);font-size:1.1rem;color:var(--muted);max-width:36rem}.poster-number{font-family:var(--font-display);font-size:clamp(3.5rem,10vw,6rem);color:var(--gold);line-height:1;margin:0 0 .25rem;opacity:.85}.site-header{position:sticky;top:0;z-index:40;background:linear-gradient(180deg,var(--green-deep),var(--green));border-bottom:3px solid var(--gold);box-shadow:0 4px 0 var(--burgundy)}.header-inner{max-width:var(--max);margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--cream)}.brand:hover{color:var(--gold-bright)}.brand-mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:2px solid var(--gold);font-family:var(--font-display);font-size:.85rem;color:var(--gold)}.brand-text{font-family:var(--font-display);font-size:1rem;letter-spacing:.04em}.nav-toggle{display:none;background:0 0;border:1px solid var(--gold);width:2.6rem;height:2.6rem;padding:.55rem;cursor:pointer;flex-direction:column;justify-content:space-between}.nav-toggle span{display:block;height:2px;background:var(--cream)}.site-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1.1rem}.site-nav a{color:var(--cream);text-decoration:none;font-size:.95rem;font-weight:600}.site-nav a:hover{color:var(--gold-bright)}.nav-cta{border:1px solid var(--gold);padding:.35rem .85rem;color:var(--gold)!important}.nav-cta:hover{background:var(--gold);color:var(--green-deep)!important}@media(max-width:860px){.nav-toggle{display:flex}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--green-deep);flex-direction:column;align-items:stretch;padding:1rem 1.25rem 1.25rem;border-bottom:3px solid var(--gold)}.site-nav.is-open{display:flex}.site-nav a{padding:.55rem 0;border-bottom:1px solid rgba(201,162,39,.25)}}.btn{display:inline-block;font-family:var(--font-display);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:.85rem 1.4rem;border:2px solid transparent;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn:disabled{opacity:.65;cursor:wait;transform:none}.btn-gold{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:var(--green-deep);border-color:#8a6e12}.btn-gold:hover{color:var(--green-deep)}.btn-cream{background:var(--cream);color:var(--burgundy-deep);border-color:var(--cream)}.btn-cream:hover{color:var(--burgundy-deep)}.btn-outline{background:0 0;color:var(--cream);border-color:var(--cream)}.hero{position:relative;min-height:min(92vh,760px);display:grid;align-items:end;overflow:hidden;border-bottom:4px solid var(--gold)}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:50%;transform:scale(1.04);animation:heroDrift 18s ease-in-out infinite alternate}.hero-veil{position:absolute;inset:0;background:linear-gradient(120deg,rgba(6,38,28,.92) 0%,rgba(6,38,28,.55) 48%,rgba(107,30,47,.45) 100%),linear-gradient(0deg,rgba(6,38,28,.75),transparent 50%)}.hero-poster-panel{position:relative;z-index:1;max-width:var(--max);width:100%;margin:0 auto;padding:4rem 1.25rem 3.5rem;color:var(--cream);animation:riseIn .9s ease both}.hero-poster-panel h1{color:var(--cream);text-shadow:0 2px 0 rgba(0,0,0,.35);max-width:14ch}.hero-line{font-family:var(--font-serif);font-size:clamp(1.05rem,2.2vw,1.3rem);max-width:34rem;margin:0 0 1.6rem;color:var(--cream-soft)}@keyframes heroDrift{from{transform:scale(1.04)translate3d(0,0,0)}to{transform:scale(1.1)translate3d(-1.5%,1%,0)}}@keyframes riseIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.page-hero{padding:3rem 1.25rem 1.5rem;max-width:var(--max);margin:0 auto}.page-hero--image{position:relative;max-width:none;min-height:340px;display:flex;align-items:flex-end;padding:0;background-image:var(--hero-img);background-size:cover;background-position:50%;border-bottom:3px solid var(--gold)}.page-hero--image .ornament-frame{position:relative;z-index:1;max-width:var(--max);margin:0 auto 2rem;width:calc(100% - 2.5rem);color:var(--cream)}.page-hero--image h1,.page-hero--image .lead{color:var(--cream)}.ornament-frame{border:2px solid var(--gold);outline:1px solid var(--burgundy);outline-offset:6px;padding:1.5rem 1.4rem;background:rgba(250,243,228,.72);animation:riseIn .7s ease both}.ornament-frame--dense{background:var(--green);color:var(--cream);text-align:center}.ornament-frame--dense h2{color:var(--cream)}.ornament-frame--dense p{color:var(--cream-soft)}.content-block{max-width:var(--max);margin:0 auto;padding:2.5rem 1.25rem}.section-split{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}@media(max-width:800px){.section-split{grid-template-columns:1fr}}.framed-figure{margin:0;border:3px solid var(--gold);box-shadow:8px 8px 0 var(--burgundy);overflow:hidden}.framed-figure img{width:100%;aspect-ratio:9/7;object-fit:cover;transition:transform .6s ease}.framed-figure:hover img{transform:scale(1.04)}.band-burgundy{max-width:none;background:repeating-linear-gradient( -12deg,transparent,transparent 12px,rgba(0,0,0,4%) 12px,rgba(0,0,0,4%) 13px ),linear-gradient(135deg,var(--burgundy-deep),var(--burgundy));color:var(--cream);border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);text-align:center;padding:3.5rem 1.25rem}.band-burgundy h2{color:var(--cream)}.band-burgundy p{max-width:40rem;margin-left:auto;margin-right:auto}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.35rem}.poster-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--cream-soft);border:2px solid var(--green);box-shadow:0 0 0 1px var(--gold)inset;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.poster-card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--gold)inset,6px 6px 0 var(--burgundy);color:inherit}.poster-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-bottom:2px solid var(--gold)}.poster-card-body{padding:1.1rem 1.15rem 1.35rem}.poster-card-body h2,.poster-card-body h3{font-size:1.15rem}.card-meta,.poster-card time{display:block;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--burgundy);margin-bottom:.4rem}.section-quote{text-align:center}.section-quote blockquote{margin:0 auto 1rem;max-width:40rem;font-family:var(--font-serif);font-size:1.2rem;font-style:italic;color:var(--green-deep)}.section-quote cite{display:block;font-style:normal;font-size:.95rem;color:var(--muted);margin-top:.75rem}.text-link{font-weight:700;text-decoration:none;border-bottom:2px solid var(--gold)}.cta-band .ornament-frame{margin-top:.5rem}.meta-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;border-bottom:1px solid rgba(11,61,46,.2)}.meta-strip span{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy)}.meta-strip strong{font-family:var(--font-display);font-size:1rem;color:var(--green-deep)}.prose{font-family:var(--font-serif);font-size:1.02rem}.prose--narrow{max-width:42rem}.prose h2,.prose h3{margin-top:2rem}.prose ul,.prose ol{padding-left:1.2rem}.prose li{margin-bottom:.45rem}.prose table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:.95rem;margin:1.25rem 0}.prose th,.prose td{border:1px solid rgba(11,61,46,.25);padding:.65rem .75rem;text-align:left}.prose th{background:var(--green);color:var(--cream);font-family:var(--font-display);font-weight:600}.rate-table,.story-block,.curriculum-step{border:2px solid var(--green);outline:1px solid var(--gold);outline-offset:4px;padding:1.25rem 1.2rem;margin:0 0 1.25rem;background:rgba(250,243,228,.55)}.rate-table h3,.story-block h3,.curriculum-step h3{margin-top:0}.review-grid{display:grid;gap:1.25rem}.review-card{border-left:4px solid var(--gold);padding:.25rem 0 .25rem 1.1rem;background:0 0}.review-card p{font-family:var(--font-serif)}.review-card footer{font-size:.9rem;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:2rem;align-items:start}@media(max-width:800px){.contact-layout{grid-template-columns:1fr}}.contact-aside{border:2px solid var(--gold);background:var(--green);color:var(--cream);padding:1.5rem}.contact-aside h2{color:var(--cream)}.contact-aside a{color:var(--gold-bright)}.address{font-family:var(--font-serif)}.response-note{font-size:.95rem;opacity:.9}.contact-form{display:grid;gap:1rem;border:2px solid var(--green);padding:1.4rem;background:var(--cream-soft)}.field label{display:block;font-family:var(--font-display);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem;color:var(--green-deep)}.field input,.field select,.field textarea{width:100%;padding:.7rem .8rem;border:1px solid rgba(11,61,46,.35);background:#fffdf8;font:inherit;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);border-color:var(--green)}.field-error{color:var(--burgundy);font-size:.88rem;margin:.35rem 0 0}.form-status{padding:.75rem .9rem;margin:0;font-weight:600}.form-status--ok{background:rgba(11,61,46,.12);color:var(--green-deep);border:1px solid var(--green)}.form-status--err{background:rgba(107,30,47,.1);color:var(--burgundy-deep);border:1px solid var(--burgundy)}.site-footer{margin-top:3rem;background:linear-gradient(180deg,var(--green),var(--green-deep));color:var(--cream);border-top:4px solid var(--gold);padding:2.5rem 1.25rem 1.5rem}.footer-ornament{max-width:var(--max);margin:0 auto 1.25rem;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.footer-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1.5rem}@media(max-width:800px){.footer-grid{grid-template-columns:1fr}}.footer-title{font-family:var(--font-display);font-size:1.2rem;margin:0 0 .35rem}.footer-tag{opacity:.85;margin:0}.footer-contact a,.footer-links a{color:var(--cream);text-decoration:none}.footer-contact a:hover,.footer-links a:hover{color:var(--gold-bright)}.footer-links{display:flex;flex-direction:column;gap:.4rem}.footer-copy{max-width:var(--max);margin:2rem auto 0;padding-top:1rem;border-top:1px solid rgba(201,162,39,.35);font-size:.85rem;opacity:.8}.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:60;max-width:640px;margin:0 auto}.cookie-inner{background:var(--green-deep);color:var(--cream);border:2px solid var(--gold);box-shadow:0 0 0 4px var(--burgundy);padding:1.1rem 1.2rem;display:grid;gap:.9rem}.cookie-inner a{color:var(--gold-bright)}.cookie-actions{display:flex;flex-wrap:wrap;gap:.6rem}.error-404{min-height:60vh;display:grid;align-content:center}.steps-list{counter-reset:step;list-style:none;padding:0;margin:0}.steps-list li{counter-increment:step;position:relative;padding:1rem 1rem 1rem 4.5rem;margin-bottom:1rem;border:1px solid rgba(11,61,46,.25);background:rgba(250,243,228,.65)}.steps-list li::before{content:counter(step,decimal-leading-zero);position:absolute;left:.85rem;top:.85rem;font-family:var(--font-display);font-size:1.5rem;color:var(--gold)}