:root{--paper:#efe9dc;--card:#f6f1e6;--ink:#3b2f2a;--muted:#6a5e55;--gold:#8a6c2f;--pond:#3f2c2c;--pond-ink:#efe9dc;--line:#d8cfbd}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,"Iowan Old Style","Palatino Linotype",serif}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:3px}
a:focus-visible,.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:10}
.skip:focus{left:8px}
.wrap{max-width:1000px;margin:0 auto;padding:0 16px}
.narrow{max-width:640px;text-align:center}
.hero{text-align:center;padding:48px 16px 16px}
.emblem{width:min(420px,82vw);margin:0 auto;border-radius:50%}
h1{font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:clamp(1.6rem,4vw,2.4rem);margin:28px 0 4px;color:var(--gold)}
.tag{font-style:italic;color:var(--muted);margin:0}
.intro{max-width:620px;margin:24px auto 0}
.nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:28px 0 0;font-size:.9rem;letter-spacing:.12em;text-transform:uppercase}
.nav a{text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:2px}
section{padding:56px 0}
h2{font-weight:400;font-size:1.3rem;letter-spacing:.12em;text-transform:uppercase;text-align:center;margin:0 0 28px}

/* Card cascade: each card sticks a little lower than the last, earlier cards recede as later ones arrive */
.cascade{list-style:none;margin:0 auto;padding:0 16px;max-width:1000px}
.card{position:sticky;top:calc(6vh + var(--i) * 22px);margin:0 0 14vh;transform-origin:50% 0;will-change:transform}
.card:last-child{margin-bottom:0}
.card figure{margin:0;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 18px 40px -24px rgba(59,47,42,.55);transform:scale(var(--s,1));filter:brightness(var(--b,1));transition:transform .08s linear,filter .08s linear}
.card picture{display:block;height:min(72vh,720px);background:var(--paper);border-radius:8px;overflow:hidden}
.card img{width:100%;height:100%;object-fit:contain}
.card figcaption{display:flex;gap:12px;align-items:baseline;padding:12px 4px 0;font-style:italic;color:var(--muted)}
.card .n{font-style:normal;letter-spacing:.12em;color:var(--gold)}
@media (prefers-reduced-motion:reduce){.card{position:static;margin-bottom:24px}.card figure{transform:none;filter:none}}

.products{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.product{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column}
.product img{aspect-ratio:4/5;object-fit:cover;border-radius:6px;width:100%}
.product h3{font-weight:400;font-size:1.05rem;margin:12px 0 2px}
.product .meta{color:var(--muted);font-size:.9rem;margin:0}
.product .price{margin:8px 0 12px}
.product .btn{margin-top:auto;text-align:center}
.product.sold .btn{pointer-events:none;opacity:.55}
.soon{text-align:center;max-width:560px;margin:0 auto}
.btn{display:inline-block;padding:10px 20px;border:1px solid currentColor;border-radius:999px;text-decoration:none;letter-spacing:.06em}
.dark{background:var(--pond);color:var(--pond-ink)}
.dark h2{color:#e7d9b6}
footer{text-align:center;padding:32px 0 48px;color:var(--muted);font-size:.9rem;border-top:1px solid var(--line)}
footer p{margin:4px 0}
.prose{max-width:680px;margin:0 auto;padding:48px 16px}
.prose h1{font-size:1.6rem;text-align:left}
.prose h2{text-align:left;font-size:1.05rem;margin:32px 0 8px}
.notice{background:#e7dcc3;border-left:3px solid var(--gold);padding:10px 14px;border-radius:4px;max-width:640px;margin:0 auto 20px}
.tbl{width:100%;border-collapse:collapse;margin:8px 0 16px;font-size:.95rem}
.tbl th,.tbl td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-weight:400;letter-spacing:.06em;color:var(--muted)}
.prose ul{padding-left:1.2em}.prose li{margin:4px 0}
.prose h3{font-weight:400;font-size:1rem;margin:24px 0 6px}
