:root{--bg:#faf8f4;--card:#fff;--text:#1c1a17;--muted:#6b665e;--gold:#b8892b;--dark:#15130f;--line:#e6e0d4;--onGold:#fff;--ph1:#ece6d8;--ph2:#e2dac8}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#12100d;--card:#1b1814;--text:#f3eee4;--muted:#a39b8c;--gold:#d4a64a;--dark:#000;--line:#2c2720;--onGold:#12100d;--ph1:#221e18;--ph2:#2a251d}}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{background:var(--bg);color:var(--text);font-family:"Segoe UI",system-ui,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}[hidden]{display:none!important}
.center{text-align:center;margin-top:24px}

/* placeholder for photos & videos */
.ph{width:100%;height:100%;min-height:80px;display:grid;place-content:center;text-align:center;gap:4px;color:var(--muted);font-size:12px;
  background:repeating-linear-gradient(45deg,var(--ph1) 0 14px,var(--ph2) 14px 28px)}
.ph b{font-size:22px}
.ph img,.media img,.media video{width:100%;height:100%;object-fit:cover;display:block}

.topbar{background:var(--dark);color:#d4a64a;font-size:12px;letter-spacing:1.5px;overflow:hidden;white-space:nowrap;padding:8px 0}
.topbar span{display:inline-block;padding-left:100%;animation:run 28s linear infinite}
@keyframes run{to{transform:translateX(-100%)}}

.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;padding:12px 4vw;background:var(--bg);border-bottom:1px solid var(--line)}
.logo{font-family:Georgia,serif;font-size:26px;font-weight:700;letter-spacing:6px;color:var(--gold)}
.burger{display:none;background:none;border:0;color:var(--text);font-size:24px}
.nav{display:flex;gap:4px;flex:1;justify-content:center;font-size:14px}
.nav>div{position:relative}
.nav a{display:block;padding:8px 12px;white-space:nowrap}
.nav a:hover{color:var(--gold)}
.sub{display:none;position:absolute;left:0;top:100%;min-width:190px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px;box-shadow:0 10px 24px rgba(0,0,0,.15)}
.nav>div:hover .sub{display:block}
.actions{display:flex;align-items:center;gap:10px}
#search{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:99px;padding:7px 14px;width:170px}
.cart-btn{background:var(--gold);color:var(--onGold);border:0;border-radius:99px;padding:8px 16px;font-weight:600}
.cart-btn span{background:var(--dark);color:#fff;border-radius:99px;padding:1px 8px;margin-left:4px;font-size:12px}

.slider{position:relative;overflow:hidden;aspect-ratio:16/6;background:var(--ph1)}
.slides{display:flex;height:100%;transition:transform .6s}
.slide{min-width:100%;height:100%;position:relative}
.slide .cap{position:absolute;left:6vw;top:50%;transform:translateY(-50%);max-width:440px;background:rgba(0,0,0,.55);color:#fff;padding:20px 26px;border-radius:10px}
.slide .cap h2{font-family:Georgia,serif;font-size:clamp(22px,4vw,42px);line-height:1.15;margin-bottom:8px}
.arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.45);color:#fff;border:0;width:38px;height:38px;border-radius:50%;font-size:18px}
.arrow.l{left:12px}.arrow.r{right:12px}
.dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:8px}
.dots i{width:9px;height:9px;border-radius:50%;background:#fff8;cursor:pointer}.dots i.on{background:var(--gold)}

.btn{display:inline-block;background:var(--gold);color:var(--onGold);border:0;padding:11px 28px;border-radius:6px;font-weight:700;letter-spacing:.5px}
.btn:hover{filter:brightness(1.08)}.btn.full{width:100%}
.btn.ghost{background:transparent;border:1.5px solid var(--gold);color:var(--gold)}

.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;padding:16px 4vw;border-block:1px solid var(--line);text-align:center;font-size:13px;font-weight:700;letter-spacing:.5px}
.cats{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;padding:34px 4vw}
.cat{width:112px;text-align:center;font-size:13px;font-weight:600;cursor:pointer}
.cat .ph,.cat .media{width:112px;height:112px;border-radius:50%;overflow:hidden;margin-bottom:8px;min-height:0}
.promos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;padding:0 4vw 30px}
.promo{aspect-ratio:4/3;border-radius:12px;overflow:hidden;position:relative;cursor:pointer}
.promo .tag{position:absolute;left:14px;bottom:14px;background:var(--gold);color:var(--onGold);padding:6px 16px;border-radius:99px;font-weight:700;font-size:14px}

.block{padding:44px 4vw}
h2{font-family:Georgia,serif;font-size:30px;text-align:center;margin-bottom:22px}
.crumb{font-size:13px;color:var(--muted);margin-bottom:6px}.crumb a:hover{color:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;position:relative;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.14)}
.badge{position:absolute;top:10px;left:10px;z-index:2;background:#c0392b;color:#fff;font-size:12px;font-weight:700;padding:2px 10px;border-radius:99px}
.badge.out{background:#555}
.pic{aspect-ratio:1/1;position:relative;overflow:hidden}
.pic .second{position:absolute;inset:0;opacity:0;transition:opacity .3s}
.card:hover .pic .second{opacity:1}
.info{padding:12px 14px 16px;display:flex;flex-direction:column;gap:2px;flex:1}
.info small{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px}
.info h3{font-size:15px;line-height:1.35}
.price{margin:4px 0 10px}.price b{color:var(--gold);font-size:17px}.price s{color:var(--muted);font-size:13px;margin-left:8px}
.add{margin-top:auto;background:var(--dark);color:#fff;border:0;border-radius:6px;padding:10px}
.add:hover:not(:disabled){background:var(--gold);color:var(--onGold)}
.add:disabled{opacity:.5;cursor:not-allowed}
.empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:40px}

.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.vid{aspect-ratio:9/14;border-radius:12px;overflow:hidden;position:relative}
.vid .play{position:absolute;inset:0;display:grid;place-items:center;font-size:42px;color:#fff;text-shadow:0 2px 10px #000a;pointer-events:none}
.vid .shop{position:absolute;left:10px;right:10px;bottom:10px}

.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;padding:30px 4vw;text-align:center}
.trust div{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
.trust b{display:block;font-size:28px}
.seo{max-width:860px;margin:auto;padding:30px 5vw 60px;color:var(--muted)}
.seo h3{color:var(--text);margin:16px 0 4px;font-size:17px}

.footer{background:var(--dark);color:#cfc8b8;padding:46px 4vw 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px;font-size:14px}
.footer h4{color:#d4a64a;margin-bottom:8px}
.footer #fCols a{display:block;padding:2px 0}.footer #fCols a:hover{color:#d4a64a}
.news{display:flex;gap:6px;margin:8px 0}.news input{flex:1;min-width:0;padding:9px;border-radius:6px;border:0}
.news .btn{padding:9px 14px}.social{margin-top:8px}
.copy{grid-column:1/-1;text-align:center;border-top:1px solid #2c2720;padding-top:16px;font-size:12px}

.overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:.25s;z-index:30}.overlay.show{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(400px,100%);background:var(--bg);z-index:40;transform:translateX(100%);transition:transform .3s;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.drawer.show{transform:none}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}
.drawer-head button{background:none;border:0;color:var(--text);font-size:20px}
.drawer-body{flex:1;overflow:auto;padding:12px 20px}
.line{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.line .t{flex:1;font-size:14px}
.qty{display:flex;align-items:center;gap:8px}.qty button{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text)}
.drawer-foot{padding:16px 20px;border-top:1px solid var(--line)}
.gift{display:block;margin-bottom:10px;font-size:14px}
.total{display:flex;justify-content:space-between;margin-bottom:12px;font-size:18px}
.note{text-align:center;color:var(--muted);font-size:12px;margin-top:8px}

@media (max-width:860px){
  .burger{display:block}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;padding:8px 4vw;border-bottom:1px solid var(--line);max-height:70vh;overflow:auto}
  .nav.open{display:flex}
  .sub{display:block;position:static;border:0;box-shadow:none;padding:0 0 0 14px;background:none}
  #search{display:none}.header{justify-content:space-between}.nav{justify-content:flex-start}
  .slider{aspect-ratio:4/3}
}
