.store-hero{background:var(--ink);color:var(--on-dark);padding:54px 0 40px;position:relative;overflow:hidden}
.store-hero .glow{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(200,240,74,.16),transparent 62%);top:-260px;right:-120px}
.crumb{font-family:"Space Mono",monospace;font-size:12px;letter-spacing:.06em;color:var(--on-dark-muted);display:flex;gap:8px;position:relative;z-index:2}
.crumb a:hover{color:var(--accent)}
.store-hero h1{font-size:clamp(42px,6.5vw,80px);letter-spacing:-.03em;margin:18px 0 0;position:relative;z-index:2}
.store-hero p{color:var(--on-dark-muted);font-size:18px;margin-top:14px;max-width:560px;position:relative;z-index:2}
.store-hero .head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.dispatch{display:flex;align-items:center;gap:12px;background:rgba(244,239,226,.07);border:1px solid rgba(244,239,226,.14);border-radius:14px;padding:14px 18px;position:relative;z-index:2;max-width:330px}
.dispatch svg{width:22px;height:22px;color:var(--accent);flex:none}
.dispatch p{font-size:13px;margin:0;color:var(--on-dark)}
.toolbar{position:sticky;top:70px;z-index:30;background:rgba(246,241,230,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:16px 0}
.toolbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.fchip{font-family:"Space Mono",monospace;font-size:12.5px;letter-spacing:.03em;padding:9px 15px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);transition:.2s var(--ease)}
.fchip:hover{border-color:var(--ink)}
.fchip.active{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}
.cart-btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--accent-ink);border:none;padding:11px 18px;border-radius:999px;font-weight:700;font-size:14px;box-shadow:0 8px 20px rgba(169,213,47,.3)}
.cart-btn svg{width:18px;height:18px}
.cart-btn .cc{background:var(--accent-ink);color:var(--accent);min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;font-size:11px;font-family:"Space Mono",monospace}
.shop{padding:40px 0 90px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1080px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.grid{grid-template-columns:1fr}}
.prod{background:var(--cream-card);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.prod:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.prod .img{position:relative;aspect-ratio:4/5;background:var(--paper-2);overflow:hidden}
.prod .img .ph{position:absolute;inset:0;z-index:1}
.prod .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.prod .img img.fit-contain{object-fit:contain;padding:6px}
.badge{position:absolute;top:12px;left:12px;z-index:2}
.disc{position:absolute;top:12px;right:12px;z-index:2;font-family:"Space Mono",monospace;font-weight:700;font-size:11px;background:var(--ink);color:var(--accent);padding:5px 9px;border-radius:8px}
/* Branded course panel (.classart) lives in styles.css — shared by home + store */
.prod .body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.prod .nm{font-family:"Bricolage Grotesque";font-weight:700;font-size:16px;letter-spacing:-.01em;line-height:1.12}
.prod .mt{font-size:12.5px;color:var(--muted);margin-top:6px;flex:1}
.prod .tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.prod .tags .t{font-family:"Space Mono",monospace;font-size:10.5px;letter-spacing:.04em;padding:4px 9px;border-radius:999px;border:1px solid var(--line-strong);color:var(--muted)}
.prod .prow{display:flex;align-items:baseline;gap:8px;margin-top:14px}
.prod .now{font-family:"Bricolage Grotesque";font-weight:800;font-size:22px}
.prod .was{font-size:13px;color:var(--muted-2);text-decoration:line-through}
.prod .add{margin-top:14px;width:100%;justify-content:center;border:1.5px solid var(--ink);background:transparent;color:var(--ink)}
.prod .add:hover{background:var(--ink);color:var(--on-dark)}
.prod .add.preorder{border-color:var(--danger);color:var(--danger)}
.prod .add.preorder:hover{background:var(--danger);color:#fff}
.prod.added .add{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.scrim{position:fixed;inset:0;background:rgba(22,20,14,.45);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:.3s;z-index:80}
.scrim.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,92vw);background:var(--paper);z-index:90;transform:translateX(100%);transition:transform .35s var(--ease);display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(22,20,14,.25)}
.drawer.open{transform:none}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line)}
.drawer-head h3{font-family:"Bricolage Grotesque";font-size:22px}
.drawer-head .x{background:none;border:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--ink)}
.drawer-head .x:hover{background:var(--paper-2)}
.cart-items{flex:1;overflow-y:auto;padding:8px 24px}
.citem{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.citem .ci-img{width:54px;height:66px;border-radius:9px;background:var(--paper-2);overflow:hidden;flex:none}
.citem .ci-img img{width:100%;height:100%;object-fit:cover}
.citem .ci-mid{flex:1;min-width:0}
.citem .ci-nm{font-weight:700;font-size:14px;line-height:1.2}
.citem .ci-pr{font-family:"Space Mono",monospace;font-size:13px;color:var(--muted);margin-top:4px}
.qty{display:inline-flex;align-items:center;gap:0;border:1px solid var(--line-strong);border-radius:999px;margin-top:8px;overflow:hidden}
.qty button{width:26px;height:26px;background:transparent;border:none;color:var(--ink);font-size:15px;display:grid;place-items:center}
.qty button:hover{background:var(--paper-2)}
.qty span{min-width:26px;text-align:center;font-family:"Space Mono",monospace;font-size:13px}
.ci-rm{background:none;border:none;color:var(--muted-2);font-size:12px;cursor:pointer;align-self:flex-start;text-decoration:underline}
.cart-empty{text-align:center;color:var(--muted);padding:60px 20px}
.cart-empty .em-ic{font-size:40px;margin-bottom:14px}
.drawer-foot{padding:22px 24px;border-top:1px solid var(--line);background:var(--cream-card)}
.subtotal{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.subtotal .l{color:var(--muted);font-size:14px}
.subtotal .v{font-family:"Bricolage Grotesque";font-weight:800;font-size:26px}
.checkout{width:100%;justify-content:center}
.drawer-note{font-size:11.5px;color:var(--muted);text-align:center;margin-top:12px}
.dl-strip{background:var(--ink);color:var(--on-dark);border-radius:24px;padding:40px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.dl-strip h3{font-family:"Bricolage Grotesque";font-size:26px;color:var(--on-dark)}
.dl-strip p{color:var(--on-dark-muted);font-size:15px;margin-top:8px;max-width:480px}
@media(max-width:640px){.dl-strip{grid-template-columns:1fr}}
