:root{--bg:#fbf3e4;--fg:#2b1d16;--muted:#6a564a;--accent:#c8323b;--accent2:#e3a33b;--on-accent:#fff;--card:#fffaf1;--line:rgba(43,29,22,.14);--fh:"Fraunces",Georgia,serif;--fb:"Karla",system-ui,sans-serif;--r:22px;--btnr:999px;--hh:0px}
h1,h2{font-weight:600;letter-spacing:-.015em}h2{font-size:clamp(2rem,3.8vw,3.2rem)}
.bar{position:fixed;left:0;right:0;top:0;height:4px;z-index:70;background:rgba(0,0,0,.08)}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));transform-origin:0 50%;transform:scaleX(0)}
.dots{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:60}
.dots ol{list-style:none;margin:0;padding:10px 8px;display:grid;gap:14px;border-radius:999px;background:rgba(255,250,241,.55);backdrop-filter:blur(6px)}
.dots a{position:relative;display:block;width:14px;height:14px;border-radius:50%;border:2px solid var(--fg);transition:transform .3s,background .3s}
.dots a::after{content:attr(data-label);position:absolute;right:26px;top:50%;transform:translate(8px,-50%);white-space:nowrap;background:var(--fg);color:#fff;font:700 13px/1 var(--fb);padding:7px 10px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.dots a:hover::after,.dots a:focus-visible::after,.dots a[aria-current]::after{opacity:1;transform:translate(0,-50%)}
.dots a[aria-current]{background:var(--fg);transform:scale(1.25)}
.dots.dark a{border-color:#fff}.dots.dark a[aria-current]{background:#fff}.dots.dark ol{background:rgba(20,13,23,.35)}
.ch{position:relative;min-height:100vh;min-height:100svh;display:grid;align-items:center;padding:90px 0;overflow:hidden}
.ch .w{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding-right:40px}
.ch.flip .artwrap{order:2}
.art{width:100%;height:auto;border-radius:28px;box-shadow:0 40px 70px -40px rgba(43,29,22,.6)}
.chap{display:inline-block;font:800 12.5px/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.c1{background:#fdf6e6}.c2{background:#f9ead8}.c3{background:#f4e6cc}.c4{background:#231c19;color:#efe3d3}.c4 .lead{color:#cbb9a6}.c4 .chap{color:var(--accent2)}
.c5{background:#2e1820;color:#f6e6dc}.c5 .lead{color:#d8bfb4}.c5 .chap{color:var(--accent2)}.c6{background:#fbf3e4;align-items:start;padding-bottom:0}
.c0{background:#1b1430;color:#fff;text-align:center;padding:0}
.bgart{position:absolute;inset:0;width:100%;height:100%}
.title{position:relative;display:block!important;padding:0 20px!important;max-width:820px;margin:0 auto}
.title .mark{width:64px;height:64px;margin:0 auto 18px;animation:bob 4s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-8px) rotate(4deg)}}
.title h1{color:#fff;font-size:clamp(3rem,8vw,6.4rem);line-height:.95}.title h1 em{color:#ffc58a;font-weight:500}
.title .lead{color:#f1d9cf;margin:18px auto 30px;max-width:520px}.title .kick{color:#ffc58a}
.scroll-cue{display:inline-flex;gap:10px;align-items:center;color:#fff;font-weight:800;text-decoration:none;border:2px solid rgba(255,255,255,.6);padding:12px 22px;border-radius:999px}
.scroll-cue span{animation:cue 1.6s ease-in-out infinite}@keyframes cue{50%{transform:translateY(5px)}}
.st{animation:tw 3s ease-in-out infinite}@keyframes tw{50%{opacity:.2}}
.moonrise{animation:rise 14s ease-out both}@keyframes rise{from{transform:translateY(80px);opacity:0}}
.mini{list-style:none;padding:0;margin:26px 0 0;display:flex;gap:34px}.mini b{display:block;font:600 2.4rem/1 var(--fh);color:var(--accent)}.mini span{font-size:14.5px;color:var(--muted)}
.leaf{animation:fallleaf 9s linear infinite}@keyframes fallleaf{from{transform:translate(0,0) rotate(0)}to{transform:translate(60px,480px) rotate(320deg)}}
.dropapple{animation:dropa 5s cubic-bezier(.5,0,1,1) infinite}@keyframes dropa{0%,40%{transform:translateY(-20px);opacity:0}45%{opacity:1}80%,100%{transform:translateY(330px);opacity:1}}
.drop{animation:drip 1.2s ease-in infinite}@keyframes drip{from{transform:translateY(0);opacity:1}to{transform:translateY(60px);opacity:0}}
.plate{animation:press 4s ease-in-out infinite}.screw{animation:press 4s ease-in-out infinite}@keyframes press{50%{transform:translateY(6px)}}
.glow{animation:flick 3s ease-in-out infinite;transform-origin:460px 110px}@keyframes flick{30%{opacity:.75}50%{opacity:1;transform:scale(1.05)}70%{opacity:.85}}
.bb{animation:bub 2s ease-in infinite}@keyframes bub{from{transform:translateY(0);opacity:.8}to{transform:translateY(-110px);opacity:0}}
.flight{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:2px}
.flight li{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:12px 0;border-bottom:1px dashed rgba(255,255,255,.2)}
.flight small{display:block;color:#d8bfb4}.flight .abv{opacity:.7;font-size:14px}.flight .pr{font:600 1.15rem var(--fh);color:#ffc58a}
.fine{font-size:13.5px;opacity:.75;margin-top:14px}
.vgrid{align-items:start!important}
.fcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px;box-shadow:0 30px 60px -40px rgba(43,29,22,.5)}.fcard h3{font-family:var(--fh);font-size:1.5rem}.fcard .ok{margin-top:14px}
.addr{margin-top:22px;line-height:2}.addr svg{display:inline;width:18px;height:18px;vertical-align:-3px;color:var(--accent)}
.sfoot{margin-top:90px;background:#2b1d16;color:#d8c4b4;padding:26px 0;font-size:13.5px}.sfoot .w{display:flex!important;justify-content:space-between;flex-wrap:wrap;gap:10px}.sfoot a{color:inherit}
.c6{display:block}.c6>.w{padding-top:0}
@media(max-width:900px){
 .ch{min-height:0;padding:70px 0}.c0{min-height:88svh;display:grid}
 .ch .w{grid-template-columns:1fr;gap:30px;padding-right:44px}
 .ch.flip .artwrap{order:0}
 .dots{right:8px}.dots ol{gap:11px;padding:8px 6px}.dots a{width:12px;height:12px}
 .dots a::after{display:none}
 .mini{gap:22px}
}
@media (prefers-reduced-motion:reduce){.bar i{transition:none}}
