*{box-sizing:border-box}
:root{--black:#050505;--paper:#f7f4ee;--gold:#c9a45b;--ink:#1c1a17;--line:rgba(28,26,23,.12)}
html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--paper);color:var(--ink)}
button{font:inherit}.hidden{display:none!important}
.topbar{height:74px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:10px 22px;background:rgba(7,7,7,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.brand{border:0;background:transparent;padding:0;cursor:pointer}.brand img{height:52px;width:auto;display:block}
.top-action{border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;border-radius:999px;padding:10px 16px;cursor:pointer}
.home{min-height:calc(100vh - 74px);display:grid;place-items:center;padding:24px;background:
radial-gradient(circle at 50% 35%,rgba(201,164,91,.13),transparent 28%),
linear-gradient(145deg,#020202,#111)}
.hero{text-align:center;width:min(780px,92vw);animation:fadeUp .9s ease both}
.hero img{display:block;margin:auto;max-width:min(560px,86vw);max-height:60vh;object-fit:contain}
.hero p{margin:18px 0 28px;color:rgba(255,255,255,.68);letter-spacing:.22em;text-transform:uppercase;font-size:12px}
.primary{border:1px solid var(--gold);background:var(--gold);color:#070707;padding:15px 28px;border-radius:999px;font-weight:600;letter-spacing:.06em;cursor:pointer}
.page{padding:36px 26px 70px}
.heading span{font-size:11px;letter-spacing:.28em;color:#94733c}
.heading h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,5vw,58px);margin:8px 0 8px}
.heading p{margin:0 0 26px;color:#777}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.card{border:0;border-radius:20px;overflow:hidden;padding:0;background:#eee9df;cursor:pointer;aspect-ratio:7/8}
.card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.card:hover img{transform:scale(1.025)}
.viewer{position:fixed;inset:0;z-index:100;background:rgba(2,2,2,.985);display:grid;grid-template-columns:72px 1fr 72px;align-items:center}
.viewer-stage{height:100%;display:grid;place-items:center;position:relative;padding:28px}
.viewer-stage img{max-width:100%;max-height:92vh;object-fit:contain;touch-action:pan-y}
.counter{position:absolute;bottom:18px;color:rgba(255,255,255,.62);font-size:12px;letter-spacing:.12em}
.close{position:absolute;right:20px;top:18px;z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.2);color:#fff;font-size:30px;cursor:pointer}
.nav{height:100%;border:0;background:transparent;color:#fff;font-size:68px;opacity:.55;cursor:pointer}.nav:hover{opacity:1}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:980px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.topbar{padding:8px 12px}.brand img{height:46px}.page{padding:26px 12px 50px}.grid{grid-template-columns:repeat(2,1fr);gap:9px}.viewer{grid-template-columns:44px 1fr 44px}.nav{font-size:46px}.viewer-stage{padding:12px}}
