@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;600;800&display=swap');
:root{--g:#2f8cff;--g2:#1a5fd6;--bg:#05070b;--card:#0c1018}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#fff;font-family:Inter,sans-serif;line-height:1.5;
background-image:radial-gradient(ellipse at 10% 0%,rgba(47,140,255,.18),transparent 45%),radial-gradient(ellipse at 100% 40%,rgba(47,140,255,.10),transparent 40%),radial-gradient(ellipse at 0% 90%,rgba(47,140,255,.08),transparent 40%);background-attachment:fixed}
h1,h2,h3,.bebas{font-family:'Bebas Neue',Impact,sans-serif;letter-spacing:1.5px;margin:.2em 0}
a{color:var(--g)}
.bar{background:var(--g);color:#000;text-align:center;font-weight:800;font-size:.8rem;padding:6px;text-transform:uppercase;letter-spacing:1px}
header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:rgba(5,7,11,.92);border-bottom:2px solid var(--g);backdrop-filter:blur(6px)}
header .brand{font-family:'Bebas Neue';font-size:1.8rem;color:#fff;text-decoration:none}header .brand span{color:var(--g)}
nav a{color:#fff;text-decoration:none;margin-left:14px;font-weight:600;font-size:.9rem}
.cartbtn{background:var(--g);color:#000!important;padding:6px 12px;border-radius:6px;font-weight:800}
.hero{text-align:center;padding:30px 16px 20px;position:relative;overflow:hidden}
.hero img{width:min(420px,90%);border-radius:14px;box-shadow:0 0 60px rgba(47,140,255,.35)}
.hero h1{font-size:clamp(2.4rem,9vw,4.5rem);line-height:1;text-shadow:0 0 18px rgba(47,140,255,.6)}.hero h1 span{color:var(--g)}
.smoke{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 60%,rgba(47,140,255,.25),transparent 30%),radial-gradient(circle at 80% 30%,rgba(47,140,255,.18),transparent 30%);filter:blur(30px);animation:drift 12s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate(30px,-20px) scale(1.15)}}
.ruo{display:inline-block;background:var(--g);color:#000;font-family:'Bebas Neue';font-size:1.5rem;padding:6px 18px;transform:skew(-8deg);margin:10px 0}
.btn{display:inline-block;background:var(--g);color:#000;border:0;padding:12px 22px;font-weight:800;border-radius:8px;cursor:pointer;text-decoration:none;font-size:1rem;text-transform:uppercase}
.btn:hover{box-shadow:0 0 20px var(--g)}.btn.ghost{background:transparent;color:#fff;border:2px solid #555}
.badges{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:16px;max-width:1100px;margin:auto}
.badge{border:2px solid var(--g);border-radius:10px;padding:12px;text-align:center;font-family:'Bebas Neue';font-size:1.3rem;background:var(--card)}
.badge i{display:block;font-style:normal;font-size:1.8rem}
section{padding:24px 16px;max-width:1100px;margin:auto}
.sec-title{font-size:2.4rem;border-left:6px solid var(--g);padding-left:12px}
.grid{display:grid;grid-template-columns:1fr;gap:14px}
.card{overflow:hidden;background:var(--card);border:1px solid #1c2638;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;transition:.2s}
.card:hover{border-color:var(--g);box-shadow:0 0 18px rgba(47,140,255,.25)}
.card h3{font-size:1.7rem;color:#fff}.size{color:#aaa;font-weight:600}.price{color:var(--g);font-family:'Bebas Neue';font-size:2rem}
.focus{color:#ccc;font-size:.9rem;flex:1}.card small{color:#777;font-size:.7rem}
.gallery{display:grid;grid-template-columns:1fr;gap:12px}.gallery img{width:100%;border-radius:12px;border:2px solid #1c2638;object-fit:cover;aspect-ratio:4/3}
.terms{background:var(--card);border:1px solid #333;border-radius:12px;padding:18px;font-size:.9rem;color:#ccc}
footer{text-align:center;padding:30px 16px;border-top:2px solid var(--g);color:#888;font-size:.85rem}footer b{color:var(--g)}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:100;align-items:center;justify-content:center;padding:16px}.modal.show{display:flex}
.modal-box{background:var(--card);border:2px solid var(--g);border-radius:14px;padding:24px;max-width:400px;text-align:center}.modal-box img{width:160px;border-radius:10px}.modal-box .btn{width:100%;margin-top:10px}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--g);color:#000;padding:10px 18px;border-radius:8px;font-weight:800;display:none;z-index:50}
table{width:100%;border-collapse:collapse}td,th{padding:8px;border-bottom:1px solid #222;text-align:left}
.qty button{background:#222;color:#fff;border:1px solid #444;width:28px;height:28px;border-radius:4px;cursor:pointer}
input,textarea,select{width:100%;padding:12px;margin:6px 0 12px;background:#111;border:1px solid #333;color:#fff;border-radius:8px;font-size:1rem}
.pay{border:2px dashed var(--g);padding:14px;border-radius:10px;margin:12px 0}
@media(min-width:640px){.grid{grid-template-columns:repeat(2,1fr)}.badges{grid-template-columns:repeat(4,1fr)}.gallery{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){nav a:not(.cartbtn){display:none}}
.card .vial{display:block;width:calc(100% + 32px);margin:-16px -16px 6px;max-width:none;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px 12px 0 0;background:#000}

.logo-wrap img{width:100%!important}
body.locked{overflow:hidden}body.locked>*:not(#age){filter:blur(10px);pointer-events:none;user-select:none}
.modal{backdrop-filter:blur(6px)}.chk{display:flex;gap:10px;text-align:left;align-items:flex-start;margin:12px 0;cursor:pointer}.chk input{width:22px;height:22px;margin:2px 0 0;accent-color:#2f8cff;flex:none}
.btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}

:root{--s:#d9e1ec}
header .brand span{background:linear-gradient(90deg,#cfd8e6,#fff,#8fa3bd);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero h1{text-shadow:0 0 18px rgba(47,140,255,.6)}
.hero h1 span{background:linear-gradient(90deg,#9fb3cc,#fff 45%,#2f8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.logo{position:relative;width:min(560px,94%);margin:0 auto 6px;animation:float 5s ease-in-out infinite}
.logo img{width:100%!important;display:block;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 0 22px rgba(47,140,255,.55))}
.logo .shine{position:absolute;inset:0;-webkit-mask:url(assets/logo.png) center/100% 100% no-repeat;mask:url(assets/logo.png) center/100% 100% no-repeat;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%);background-size:250% 100%;animation:shine 3.6s ease-in-out infinite;mix-blend-mode:screen}
@keyframes shine{0%{background-position:150% 0}60%,100%{background-position:-60% 0}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.ticker{position:sticky;top:0;z-index:30;overflow:hidden;background:linear-gradient(90deg,#0b1a33,#123a7a,#0b1a33);border-bottom:1px solid #2f8cff;white-space:nowrap}
.ticker .t{display:inline-block;padding:8px 0;animation:tk 40s linear infinite;font-weight:800;letter-spacing:1px;font-size:.85rem;color:#e8eef7}
.ticker .t span{margin:0 26px}.ticker .t span b{color:#6fb1ff}
@keyframes tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}
header{top:34px}
.card .vial{aspect-ratio:4/5;object-fit:cover;background:#000}
.card{background:linear-gradient(180deg,#0f1520,#090c12)}
.card h3{background:linear-gradient(90deg,#fff,#b9c6d8);-webkit-background-clip:text;background-clip:text;color:transparent}
.modal-box img{width:260px;border-radius:0}
.chk input{accent-color:#2f8cff}
.catpills{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}.catpills a{border:1px solid #2f8cff;border-radius:20px;padding:5px 14px;text-decoration:none;color:#fff;font-weight:600;font-size:.85rem}
.cat-h{font-size:1.7rem;color:#9fc6ff;margin-top:22px}
@media(prefers-reduced-motion:reduce){.logo,.logo .shine,.ticker .t{animation:none}}
header .brand{display:flex;align-items:center;gap:8px}header .brand .mark{height:30px;width:auto}
.hero2{position:relative;text-align:center;padding:28px 0 26px;background:radial-gradient(ellipse at 50% 60%,#0d3a8f 0%,#071a45 45%,#05070b 80%)}
.hero2 h1{font-size:clamp(2.2rem,7vw,4.6rem);line-height:1;margin:0 16px;text-shadow:0 0 22px rgba(47,140,255,.6)}
.hero2 h1 span{background:linear-gradient(90deg,#9fb3cc,#fff 45%,#2f8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero2 .sub{color:#b9c9e0;font-weight:600;letter-spacing:1px;margin:8px 16px 0}
.hero2 .heroimg{display:block;width:100%;max-width:1400px;height:auto;margin:6px auto 0;-webkit-mask:radial-gradient(ellipse 70% 85% at 50% 50%,#000 60%,transparent 100%);mask:radial-gradient(ellipse 70% 85% at 50% 50%,#000 60%,transparent 100%);animation:rise 1.2s ease-out both}
.hero2 .shop{font-size:1.15rem;padding:14px 38px;margin-top:4px;box-shadow:0 0 24px rgba(47,140,255,.6)}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:640px){.hero2 .heroimg{-webkit-mask:radial-gradient(ellipse 80% 90% at 50% 50%,#000 65%,transparent 100%);mask:radial-gradient(ellipse 80% 90% at 50% 50%,#000 65%,transparent 100%)}header .brand{font-size:1.35rem}header .brand .mark{height:24px}}
.hero2 .emblem{display:block;width:min(380px,72%);height:auto;margin:0 auto 10px;filter:drop-shadow(0 0 24px rgba(47,140,255,.55));animation:float 5s ease-in-out infinite}
header .brand .mark{height:36px}
@media(max-width:640px){header .brand .mark{height:30px}}
.hero2 .gv{width:min(520px,92%);animation:none;filter:drop-shadow(0 0 18px rgba(47,140,255,.35));-webkit-mask:radial-gradient(ellipse 52% 54% at 50% 50%,#000 78%,transparent 100%);mask:radial-gradient(ellipse 52% 54% at 50% 50%,#000 78%,transparent 100%);background:#000}
.hero2{background:radial-gradient(ellipse at 50% 18%,#000 0,#000 22%,transparent 46%),radial-gradient(ellipse at 50% 70%,#0d3a8f 0%,#071a45 45%,#05070b 80%)}
