
@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface&family=Lora:ital,wght@0,400;0,600;1,400&family=Dancing+Script:wght@600;700&display=swap');
:root{--night:#0e0a04;--dark:#1a1006;--earth:#2e1e0a;--wood:#4a2e0e;--crimson:#c0201a;--gold:#d4960a;--amber:#e8b020;--cream:#faf0d8;--linen:#f0e4c0;--forest:#2a4a1e;--text:#2a1a08;--muted:#6a4a28;--rule:rgba(212,150,10,.3);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{scroll-behavior:smooth;}
body{font-family:'Lora',Georgia,serif;background:var(--night);color:var(--cream);min-height:100vh;}
#prog{position:fixed;top:0;left:0;height:3px;background:linear-gradient(to right,var(--crimson),var(--gold),var(--amber));z-index:1000;width:0%;}
.nav{background:var(--dark);border-bottom:4px solid var(--gold);padding:10px 28px;display:flex;align-items:center;justify-content:space-between;}
.nav .bc{font-family:'Lora',serif;font-size:.68rem;color:rgba(212,150,10,.7);letter-spacing:.1em;}
.nav .bc .s{color:rgba(212,150,10,.3);margin:0 8px;}
.nav .script{font-family:'Dancing Script',cursive;font-size:1.1rem;color:var(--amber);}
.hero{position:relative;min-height:540px;display:flex;align-items:flex-end;overflow:hidden;}
.sky{position:absolute;inset:0;background:linear-gradient(175deg,#050302 0%,#0e0a04 30%,#1a1206 55%,#1e1c08 70%,#0e1208 100%);}
.moon{position:absolute;top:8%;right:12%;width:55px;height:55px;background:radial-gradient(circle,#ffe8a0 30%,rgba(255,220,120,.4) 60%,transparent 80%);border-radius:50%;box-shadow:0 0 40px rgba(255,220,120,.25);}
.star-field{position:absolute;inset:0;pointer-events:none;}
.star{position:absolute;background:#fff;border-radius:50%;animation:st-tw 3s ease-in-out infinite;}
@keyframes st-tw{0%,100%{opacity:.3;}50%{opacity:.9;}}
.fire-glow{position:absolute;bottom:100px;left:22%;transform:translateX(-50%);width:120px;height:80px;background:radial-gradient(ellipse at 50% 70%,rgba(200,80,30,.33) 0%,rgba(200,100,20,.13) 40%,transparent 70%);animation:flk 2s ease-in-out infinite;}
@keyframes flk{0%,100%{transform:translateX(-50%) scale(1);}50%{transform:translateX(-50%) scale(1.1,1.2);}}
.landscape{position:absolute;bottom:0;left:0;right:0;height:130px;background:linear-gradient(to top,rgba(14,16,8,.98) 0%,rgba(26,24,10,.8) 50%,transparent 100%);}
.roul-svg{position:absolute;bottom:88px;left:50%;transform:translateX(-50%);width:min(620px,82vw);filter:drop-shadow(0 14px 40px rgba(0,0,0,.9));animation:rest 8s ease-in-out infinite;}
@keyframes rest{0%,100%{transform:translateX(-50%) translateY(0) rotate(-.3deg);}50%{transform:translateX(-50%) translateY(-3px) rotate(.2deg);}}
.ground{position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(to top,rgba(14,10,4,.98) 0%,rgba(14,10,4,.7) 60%,transparent 100%);}
.hero-txt{position:relative;z-index:2;width:100%;padding:42px 50px 50px;background:linear-gradient(to top,rgba(14,10,4,.98) 0%,rgba(14,10,4,.7) 55%,transparent 100%);}
.hero-eyebrow{font-family:'Dancing Script',cursive;font-size:1.02rem;color:var(--amber);margin-bottom:10px;}
.hero h1{font-family:'Abril Fatface',cursive;font-size:clamp(3.5rem,8vw,7rem);color:var(--cream);line-height:.88;text-shadow:2px 4px 12px rgba(0,0,0,.6);}
.hero h1 em{display:block;font-family:'Dancing Script',cursive;font-size:.44em;font-style:normal;color:var(--amber);letter-spacing:.04em;margin-bottom:8px;}
.hero-sub{margin-top:14px;font-size:1.08rem;font-style:italic;color:rgba(250,240,216,.75);max-width:540px;line-height:1.75;}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.htag{padding:4px 14px;border:1.5px solid rgba(212,150,10,.33);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(212,150,10,.82);font-family:'Lora',serif;}
.main{max-width:1100px;margin:0 auto;padding:0 24px 80px;}
.intro{background:var(--linen);border:3px solid var(--gold);border-top:6px solid var(--gold);padding:34px 50px;margin-bottom:0;text-align:center;}
.intro p{font-size:1.15rem;font-style:italic;color:var(--text);line-height:1.82;max-width:780px;margin:0 auto;}
.intro strong{color:var(--crimson);font-weight:700;font-style:normal;}
.orn{display:block;text-align:center;color:var(--gold);margin:6px 0;font-size:1.2rem;letter-spacing:.4em;}
.grid{display:grid;grid-template-columns:1fr 320px;gap:0;background:var(--linen);border:3px solid var(--gold);border-top:none;}
.mc{padding:42px 42px 42px 50px;border-right:1px solid var(--rule);}
.sb{padding:42px 30px;background:rgba(212,150,10,.04);}
.sh{font-family:'Abril Fatface',cursive;font-size:1.5rem;color:var(--crimson);margin:42px 0 14px;padding-bottom:9px;border-bottom:2px solid var(--gold);display:flex;align-items:center;gap:12px;}
.sh:first-child{margin-top:0;}
.mc p{font-size:1.03rem;color:var(--text);line-height:1.88;margin-bottom:14px;}
.mc strong{color:var(--crimson);font-weight:700;}
.hgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0;}
.hc{background:white;border:1px solid rgba(212,150,10,.18);border-left:4px solid var(--gold);border-radius:3px;padding:14px;opacity:0;transform:translateY(12px);transition:opacity .5s,transform .5s;}
.hc.on{opacity:1;transform:translateY(0);}
.hc h4{font-family:'Abril Fatface',cursive;font-size:.93rem;color:var(--crimson);margin-bottom:5px;}
.hc p{font-size:.84rem!important;color:var(--muted)!important;line-height:1.52!important;margin:0!important;}
.dt{width:100%;border-collapse:collapse;margin:16px 0;font-size:.87rem;}
.dt thead th{background:var(--crimson);color:var(--cream);padding:9px 13px;text-align:left;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;}
.dt td{padding:8px 13px;border-bottom:1px solid rgba(212,150,10,.1);color:var(--text);}
.dt tr:nth-child(even) td{background:rgba(212,150,10,.04);}
.dt td:first-child{font-weight:700;color:var(--crimson);}
.tl{position:relative;padding-left:26px;margin:14px 0;}
.tl::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--gold),var(--amber),transparent);}
.tl-item{position:relative;margin-bottom:18px;opacity:0;transform:translateX(-10px);transition:opacity .45s,transform .45s;}
.tl-item.on{opacity:1;transform:translateX(0);}
.tl-item::before{content:'★';position:absolute;left:-24px;top:3px;font-size:.6rem;color:var(--amber);}
.tl-yr{font-size:.7rem;color:var(--gold);letter-spacing:.15em;font-weight:700;margin-bottom:1px;}
.tl-item p{font-size:.97rem!important;margin:0!important;line-height:1.64!important;}
.qbox{background:rgba(192,32,26,.06);border-left:6px solid var(--crimson);border-right:6px solid var(--crimson);padding:20px 26px;margin:18px 0;text-align:center;}
.qbox blockquote{font-size:1.12rem;font-style:italic;color:var(--text);line-height:1.72;}
.qbox cite{display:block;font-size:.8rem;color:var(--muted);margin-top:8px;font-style:normal;}
.vocab{list-style:none;}
.vocab li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid rgba(212,150,10,.1);opacity:0;transform:translateX(-8px);transition:opacity .4s,transform .4s;}
.vocab li.on{opacity:1;transform:translateX(0);}
.vocab li:last-child{border-bottom:none;}
.vt{font-style:italic;font-weight:700;color:var(--crimson);min-width:130px;flex-shrink:0;}
.vd{font-size:.9rem;color:var(--text);line-height:1.5;}
.scard{background:white;border:1px solid rgba(212,150,10,.18);border-radius:3px;padding:18px;margin-bottom:18px;position:relative;overflow:hidden;}
.scard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--crimson),var(--gold));}
.scard h3{font-family:'Abril Fatface',cursive;font-size:.96rem;color:var(--crimson);margin-bottom:12px;padding-bottom:7px;border-bottom:1px solid var(--rule);}
.sr{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;border-bottom:1px solid rgba(212,150,10,.09);}
.sr:last-child{border-bottom:none;}
.sr-l{font-size:.81rem;color:var(--muted);}
.sr-v{font-size:.81rem;color:var(--crimson);font-weight:700;text-align:right;max-width:120px;}
.parts{list-style:none;}
.parts li{padding:8px;border-bottom:1px solid rgba(212,150,10,.1);cursor:pointer;border-radius:3px;transition:background .2s;}
.parts li:hover{background:rgba(212,150,10,.07);}
.pn{font-style:italic;font-weight:700;color:var(--crimson);font-size:.9rem;}
.pd{font-size:.79rem;color:var(--muted);margin-top:1px;}
.pdet{display:none;font-size:.77rem;color:var(--text);margin-top:6px;padding:6px;background:rgba(212,150,10,.05);border-left:3px solid var(--gold);line-height:1.52;}
.parts li.open .pdet{display:block;}
#bt{position:fixed;bottom:28px;right:28px;width:44px;height:44px;background:var(--dark);border:2px solid var(--gold);color:var(--amber);font-size:1.1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s,transform .25s;z-index:999;text-decoration:none;}
#bt.on{opacity:1;pointer-events:auto;}#bt:hover{transform:translateY(-3px);}
footer{background:var(--dark);border-top:3px solid var(--gold);padding:22px 44px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.fb{font-family:'Dancing Script',cursive;font-size:1.2rem;color:var(--amber);}
.fm{font-size:.62rem;color:rgba(212,150,10,.38);text-align:right;line-height:1.8;letter-spacing:.06em;text-transform:uppercase;}
@media(max-width:820px){.grid{grid-template-columns:1fr;}.mc{border-right:none;border-bottom:1px solid var(--rule);}.hgrid{grid-template-columns:1fr;}.hero-txt{padding:30px 22px 34px;}}
