:root{--bg:#0a0a0a;--fg:#f5f5f5;--muted:#c5c5c5;--accent:#e11d48;--accent-strong:#ff2a4f;--border:#1f1f22}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:radial-gradient(60rem 40rem at 50% -10%, rgba(225,29,72,0.22), transparent 60%),var(--bg);color:var(--fg)}
.container{max-width:1100px;margin:0 auto;padding:24px}
.header{position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);background:linear-gradient(180deg,rgba(10,10,10,.85),rgba(10,10,10,.6));border-bottom:1px solid var(--border)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 24px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--fg)}
.brand img{height:90px;width:auto;border-radius:10px;box-shadow:0 0 24px rgba(225,29,72,.25)}
.menu{display:flex;gap:10px;flex-wrap:wrap}
.menu a{text-decoration:none;color:var(--fg);background:linear-gradient(180deg,#1f1114,#0f0a0b);border:1px solid var(--border);padding:10px 14px;border-radius:999px;font-weight:600;letter-spacing:.2px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);transition:transform .15s ease, box-shadow .2s ease, color .2s ease}
.menu a:hover{color:#fff;transform:translateY(-1px);box-shadow:0 0 18px rgba(225,29,72,.45), 0 0 2px rgba(225,29,72,.65) inset;border-color:rgba(225,29,72,.65)}
.hero{display:grid;gap:22px;padding:36px 24px}
.hero h1{font-size:42px;line-height:1.1;margin:0;text-align:center}
.intro{margin:0 auto;max-width:70ch;text-align:center;font-size:20px;line-height:1.6;color:#d9d9d9;font-weight:600}
.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:linear-gradient(180deg,#121214,#0c0c0e);border:1px solid var(--border);border-radius:20px;padding:18px;box-shadow:0 6px 18px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.04)}
.product-img{width:100%;aspect-ratio:4/3;border-radius:16px;background:#000;border:1px solid #1a1a1d;display:block;object-fit:cover;box-shadow:0 0 18px rgba(225,29,72,.25)}
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;text-decoration:none;color:#fff;font-weight:700;background:radial-gradient(90% 90% at 50% -20%,rgba(225,29,72,.55),rgba(225,29,72,.35)),linear-gradient(180deg,#2a0f15,#1a0a0d);border:1px solid rgba(225,29,72,.6);box-shadow:0 12px 24px rgba(225,29,72,.25);transition:transform .15s ease, box-shadow .15s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 16px 28px rgba(225,29,72,.34), 0 0 24px rgba(225,29,72,.35)}
.btn.secondary{background:linear-gradient(180deg,#1b1b1b,#0f0f10);border-color:#2a2a2e;box-shadow:none}
.table{width:100%;border-collapse:collapse;border-radius:14px;overflow:hidden}
.table th,.table td{border:1px solid var(--border);padding:10px 12px;text-align:left}
.table th{background:#141416}
.table tr.discounts-row td{font-weight:800;background:linear-gradient(90deg, rgba(255,42,79,0.12), rgba(255,42,79,0.04));}
.footer{margin-top:48px;padding:24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#c9c9c9}
.social{display:flex;gap:14px}
.social a{display:inline-flex;align-items:center;gap:8px;color:#c9c9c9;text-decoration:none;transition:color .2s ease, transform .12s ease}
.social a:hover{color:#ff2a4f;transform:translateY(-1px)}
.icon{width:22px;height:22px;display:inline-block}
.form{display:grid;gap:14px}.field{display:grid;gap:6px}
input,select,textarea{background:#0e0e10;color:#f5f5f5;border:1px solid #262629;border-radius:12px;padding:10px 12px}
input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(225,29,72,.6);box-shadow:0 0 0 4px rgba(225,29,72,.15)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.small{font-size:12px;color:#c5c5c5}
.badge{display:inline-flex;gap:8px;align-items:center;font-size:12px;background:#131316;border:1px solid var(--border);padding:8px 10px;border-radius:999px}
.notice{background:#101012;border:1px dashed #333;border-radius:14px;padding:12px;color:#c5c5c5}
.toast{margin-top:8px;font-weight:700;display:none;color:#fff;background:rgba(255,42,79,0.12);border:1px solid rgba(255,42,79,0.35);box-shadow:0 0 24px rgba(255,42,79,0.28);padding:10px 12px;border-radius:12px}
input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.3) contrast(0.8); opacity:0.9}
input[type="date"]{background-image:none}
.total-card{box-shadow:0 0 0 1px rgba(255,42,79,0.35), 0 0 24px rgba(255,42,79,0.25) inset, 0 8px 28px rgba(255,42,79,0.18)}
.total-note{font-size:12px;color:#cfcfcf;margin-top:4px}


/* Age gate overlay */
.age-gate{position:fixed;inset:0;background:rgba(10,10,10,.96);display:none;align-items:center;justify-content:center;z-index:9999}
.age-card{max-width:560px;margin:0 16px;background:linear-gradient(180deg,#151516,#0e0e10);border:1px solid #2a2a2e;border-radius:20px;padding:24px;box-shadow:0 0 32px rgba(225,29,72,.35)}
.age-card h2{margin:0 0 8px 0;text-align:center}
.age-card p{color:#d2d2d2;text-align:center}
.age-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}
.age-actions .btn{min-width:120px;justify-content:center}
.age-actions .btn.secondary{background:linear-gradient(180deg,#141414,#0b0b0b)}
.red{color:#ff2a4f}

.promo-group{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.promo-input{max-width:220px}

.breakdown{margin-top:10px;display:grid;gap:6px}
.breakdown .row{grid-template-columns:1fr auto;align-items:center}
.breakdown .bdr{border-bottom:1px dashed rgba(255,255,255,0.08);padding-bottom:6px}
.breakdown .row div:last-child{text-align:right;font-variant-numeric:tabular-nums}
/* Slightly slimmer selects and inputs */
select, input[type="text"], input[type="email"], input[type="tel"], .promo-input{padding:8px 10px;border-radius:10px}

/* BRIGHTER FIELDS */
input,select,textarea{background:#121216;color:#f8f8f8;border:2px solid rgba(255,42,79,0.55);box-shadow:0 0 0 2px rgba(255,42,79,0.10) inset;border-radius:12px}
input:focus,select:focus,textarea:focus{outline:none;border-color:#ff2a4f;box-shadow:0 0 0 3px rgba(255,42,79,0.25)}
.field label{font-weight:600;color:#fff}
/* Make placeholder text a bit brighter */
::placeholder{color:#d4d4d4;opacity:1}

select{min-width: 120px}

.terms-highlights{margin-top:6px;color:#ddd}
.terms-highlights strong{color:#fff}

.newsletter{margin:40px 0 10px 0;padding:20px;border:1px solid #262629;background:#101012;border-radius:14px}
.newsletter h3{margin:0 0 6px 0}
.newsletter .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.newsletter .hp{position:absolute !important;left:-10000px !important;opacity:0 !important;height:0 !important;width:0 !important}
@media (max-width: 720px){
  .newsletter .row{grid-template-columns:1fr}
}
