:root{
  --navy-950:#070f22; --navy-900:#0b1a33; --navy-800:#122544;
  --gold-400:#e6c273; --gold-500:#d4a94f; --gold-600:#a8802f;
  --paper:#fbfaf6; --ink:#141b2b; --slate:#5c667c; --line:rgba(20,27,43,.1);
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Inter',Arial,sans-serif;background:var(--paper);color:var(--ink);}
a{text-decoration:none;color:inherit;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
.mono{font-family:'JetBrains Mono',monospace;}

/* top bar */
.topbar{background:var(--navy-950);color:#fff;padding:16px 0;position:sticky;top:0;z-index:50;}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;}
.brand{font-weight:700;font-size:20px;display:flex;align-items:center;}
.brand-logo{max-height:34px;display:block;}
.brand-logo-text{font-weight:700;font-size:20px;}
.brand .x{color:var(--gold-400);}
.topnav{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:14px;}
.topnav a{color:#cdd4e2;}
.topnav a:hover{color:var(--gold-400);}
.cart-badge{background:var(--gold-500);color:var(--navy-950);border-radius:50%;font-size:11px;padding:1px 6px;font-weight:700;margin-left:4px;}
.btn{display:inline-block;padding:12px 22px;border-radius:3px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;}
.btn-gold{background:var(--gold-500);color:var(--navy-950);}
.btn-gold:hover{background:var(--gold-400);}
.btn-outline{border-color:var(--gold-500);color:var(--gold-400);}
.btn-outline:hover{background:var(--gold-500);color:var(--navy-950);}
.btn-navy{background:var(--navy-950);color:#fff;}
.btn-navy:hover{background:var(--navy-800);}
.btn-block{display:block;width:100%;text-align:center;}
.btn-sm{padding:8px 14px;font-size:13px;}

/* page header */
.page-head{background:var(--navy-900);color:#fff;padding:44px 0;}
.page-head h1{margin:0;font-size:28px;}
.page-head p{color:#aeb8cd;margin-top:8px;font-size:14px;}

/* ============ HERO SLIDER (auto-play, admin-managed) ============ */
.hero-slider{position:relative;overflow:hidden;background:var(--navy-950);}
.slides-track{display:flex;transition:transform .6s cubic-bezier(.65,0,.35,1);}
.slide{min-width:100%;position:relative;background-size:cover;background-position:center;color:#fff;}
.slide::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,15,34,.94) 0%,rgba(11,26,51,.72) 55%,rgba(11,26,51,.35) 100%);}
.slide.no-image{background:radial-gradient(ellipse 100% 90% at 25% 20%,var(--navy-800) 0%,var(--navy-900) 45%,var(--navy-950) 100%);}
.slide.no-image::before{content:none;}
.slide-inner{position:relative;z-index:2;padding:74px 0 84px;display:grid;grid-template-columns:1fr;min-height:420px;align-content:center;}
.slide .eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-400);margin-bottom:12px;font-weight:600;}
.slide h1{font-size:clamp(34px,5vw,54px);line-height:1.03;margin:0;font-weight:700;text-transform:uppercase;letter-spacing:-.01em;}
.slide p.sub{color:#c6cede;margin-top:16px;font-size:16px;line-height:1.6;max-width:520px;}
.hero-pills{display:flex;gap:22px;margin-top:26px;flex-wrap:wrap;}
.hero-pill{text-align:center;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#cdd4e2;}
.hero-pill .circle{width:52px;height:52px;border-radius:50%;border:1px solid var(--gold-500);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;font-family:'Space Grotesk','JetBrains Mono',monospace;color:var(--gold-400);margin:0 auto 8px;background:rgba(230,194,115,.06);}
.slide .tagline{margin-top:14px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--gold-400);text-transform:uppercase;}
.slide .cta{margin-top:30px;}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);color:#fff;width:44px;height:44px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.slider-arrow:hover{background:rgba(230,194,115,.25);border-color:var(--gold-400);}
.slider-arrow.prev{left:20px;}
.slider-arrow.next{right:20px;}
@media(max-width:700px){.slider-arrow{display:none;}}
.slider-dots{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:center;gap:9px;z-index:5;}
.slider-dots .dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.35);border:none;cursor:pointer;padding:0;transition:background .2s,transform .2s;}
.slider-dots .dot.active{background:var(--gold-400);transform:scale(1.2);}
.trust-strip{background:var(--navy-950);border-top:1px solid rgba(255,255,255,.08);padding:16px 0;}
.trust-strip .wrap{display:flex;gap:26px;flex-wrap:wrap;color:#c6cede;font-size:12px;justify-content:center;}

/* ============ ABOUT ============ */
.about-section{background:var(--off-white,#f2f0ea);padding:70px 0;}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center;}
@media(max-width:860px){.about-grid{grid-template-columns:1fr;}}
.about-visual{aspect-ratio:1;max-width:380px;margin:0 auto;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(11,26,51,.08),transparent 65%);display:flex;align-items:center;justify-content:center;position:relative;}
.about-visual .dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--gold-500);opacity:.8;}
.about-visual .core{width:70%;height:70%;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(11,26,51,.35),rgba(11,26,51,.05) 70%);border:1px solid rgba(11,26,51,.2);}
.about-section .eyebrow{color:var(--gold-600);}
.about-section h2{font-size:clamp(24px,3vw,32px);margin:8px 0 20px;color:var(--navy-950);}
.about-section p{color:var(--slate);line-height:1.75;margin-bottom:14px;white-space:pre-line;}

/* ============ WHY REGENX ============ */
.why-section{background:var(--navy-950);color:#fff;padding:64px 0;}
.why-section .section-title{text-align:center;font-size:clamp(22px,3vw,30px);margin-bottom:38px;text-transform:uppercase;letter-spacing:.02em;}
.why-section .section-title .accent{color:var(--gold-400);}
.why-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
@media(max-width:1000px){.why-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:600px){.why-grid{grid-template-columns:repeat(2,1fr);}}
.why-card{border:1px solid rgba(230,194,115,.25);padding:26px 18px;text-align:center;}
.why-card .icon{font-size:28px;margin-bottom:14px;}
.why-card h4{font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;}
.why-card p{font-size:12px;color:#aeb8cd;line-height:1.55;}

/* ============ CLINICAL APPLICATIONS ============ */
.applications-section{background:var(--paper);padding:64px 0;}
.app-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
@media(max-width:1000px){.app-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:600px){.app-grid{grid-template-columns:repeat(2,1fr);}}
.app-card{text-align:center;}
.app-card .icon-circle{width:64px;height:64px;border-radius:50%;background:var(--navy-950);color:var(--gold-400);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 14px;}
.app-card .icon-circle.app-photo{background-size:cover;background-position:center;border:2px solid var(--gold-500);}
.app-card h4{font-size:13px;text-transform:uppercase;letter-spacing:.03em;margin:0 0 6px;}
.app-card p{font-size:12px;color:var(--slate);line-height:1.5;}

/* ============ STATS ============ */
.stats-strip{background:var(--navy-950);color:#fff;padding:40px 0;border-top:1px solid rgba(230,194,115,.15);}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;text-align:center;}
@media(max-width:800px){.stats-grid{grid-template-columns:repeat(2,1fr);}}
.stat-item .val{font-family:'JetBrains Mono',monospace;font-size:26px;font-weight:700;color:var(--gold-400);}
.stat-item .lbl{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#aeb8cd;margin-top:6px;}

/* ============ CTA BANNER ============ */
.cta-banner{
  background:linear-gradient(120deg,var(--navy-950) 0%,var(--navy-900) 100%);
  color:#fff;padding:64px 0;position:relative;overflow:hidden;
}
.cta-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(7,15,34,.88) 0%,rgba(11,26,51,.7) 100%);z-index:1;}
.cta-banner::after{
  content:"";position:absolute;right:-60px;top:50%;transform:translateY(-50%);
  width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle,rgba(230,194,115,.14),transparent 70%);
}
.cta-banner .inner{position:relative;z-index:2;max-width:600px;}
.cta-banner .lead{font-size:16px;color:#c6cede;}
.cta-banner h2{font-size:clamp(24px,3.4vw,36px);margin:6px 0 26px;line-height:1.15;}
.cta-banner h2 .accent{color:var(--gold-400);}
.cta-banner .btns{display:flex;gap:14px;flex-wrap:wrap;}

/* ============ FOOTER ============ */
footer.site-footer{background:var(--navy-950);color:#8a93a6;padding:0;margin-top:0;font-size:12.5px;text-align:left;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:30px;padding:56px 0 30px;border-bottom:1px solid rgba(255,255,255,.08);}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;}}
.footer-grid h5{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 16px;}
.footer-grid p{color:#8a93a6;line-height:1.6;font-size:13px;}
.footer-grid ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;}
.footer-grid ul a{color:#aeb8cd;font-size:13px;}
.footer-grid ul a:hover{color:var(--gold-400);}
.footer-social{display:flex;gap:10px;margin-top:16px;}
.footer-social a{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:13px;color:#cdd4e2;}
.footer-bottom{padding:20px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:11.5px;}

/* product grid */
.section{padding:48px 0;}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.filters a{padding:8px 16px;border:1px solid var(--line);border-radius:20px;font-size:13px;color:var(--slate);}
.filters a.active,.filters a:hover{background:var(--navy-950);color:#fff;border-color:var(--navy-950);}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:1000px){.product-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.product-grid{grid-template-columns:1fr;}}
.pcard{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .25s, box-shadow .25s;}
.pcard:hover{transform:translateY(-4px);box-shadow:0 20px 30px -18px rgba(11,26,51,.25);}
.pcard .thumb{height:150px;background:linear-gradient(160deg,var(--navy-800),var(--navy-950));display:flex;align-items:center;justify-content:center;color:var(--gold-400);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-align:center;padding:10px;}
.pcard .info{padding:16px 18px 20px;display:flex;flex-direction:column;flex:1;}
.pcard .cat{font-size:10px;letter-spacing:.1em;color:var(--gold-600);text-transform:uppercase;font-family:'JetBrains Mono',monospace;}
.pcard h4{margin:8px 0 4px;font-size:16px;}
.pcard .size{font-size:12px;color:var(--slate);}
.pcard .price{margin-top:12px;font-weight:700;font-size:17px;font-family:'JetBrains Mono',monospace;}
.pcard .stock{font-size:11px;color:#2e8b57;margin-top:2px;}
.pcard .stock.low{color:#c0392b;}
.pcard form{margin-top:12px;}
.pcard input[type=number]{width:56px;padding:8px;border:1px solid var(--line);margin-right:6px;}

/* forms */
.form-card{max-width:440px;margin:0 auto;background:#fff;border:1px solid var(--line);padding:36px;}
.form-card h2{margin:0 0 6px;font-size:22px;}
.form-card p.sub{color:var(--slate);font-size:13px;margin-bottom:24px;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:12px;font-weight:600;margin-bottom:6px;color:var(--navy-900);}
.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid var(--line);font-size:14px;font-family:inherit;}
.alert{padding:12px 16px;border-radius:3px;font-size:13px;margin-bottom:18px;}
.alert-error{background:#fdecea;color:#c0392b;border:1px solid #f5c6cb;}
.alert-success{background:#eafaf1;color:#1e7e46;border:1px solid #b7ebc6;}

/* cart / checkout */
table.cart-table{width:100%;border-collapse:collapse;background:#fff;}
table.cart-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--slate);padding:12px;border-bottom:2px solid var(--navy-950);}
table.cart-table td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle;}
.cart-summary{background:#fff;border:1px solid var(--line);padding:24px;max-width:360px;margin-left:auto;margin-top:20px;}
.cart-summary .row{display:flex;justify-content:space-between;font-size:14px;margin-bottom:10px;}
.cart-summary .total{font-weight:700;font-size:18px;border-top:1px solid var(--line);padding-top:10px;margin-top:10px;}
.pay-options label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);padding:14px;margin-bottom:10px;cursor:pointer;font-size:13.5px;}
.pay-options input{margin-top:3px;}

/* member dashboard */
.dash-grid{display:grid;grid-template-columns:220px 1fr;gap:28px;}
@media(max-width:800px){.dash-grid{grid-template-columns:1fr;}}
.dash-nav{background:#fff;border:1px solid var(--line);padding:20px;height:fit-content;}
.dash-nav a{display:block;padding:10px 6px;font-size:14px;color:var(--ink);border-radius:3px;}
.dash-nav a:hover,.dash-nav a.active{background:var(--navy-950);color:#fff;padding-left:12px;}
.order-row{background:#fff;border:1px solid var(--line);padding:16px 20px;margin-bottom:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;}
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;}
.badge-pending{background:#fef3cd;color:#8a6d00;}
.badge-paid,.badge-completed{background:#eafaf1;color:#1e7e46;}
.badge-processing{background:#e6f0fb;color:#1a56a8;}
.badge-shipped{background:#eee6fb;color:#5c34a8;}
.badge-cancelled,.badge-failed{background:#fdecea;color:#c0392b;}


/* chat widget */
#chatToggle{position:fixed;bottom:24px;right:24px;background:var(--gold-500);color:var(--navy-950);border:none;width:56px;height:56px;border-radius:50%;font-size:22px;cursor:pointer;box-shadow:0 10px 24px -8px rgba(0,0,0,.4);z-index:200;}
#chatBox{position:fixed;bottom:92px;right:24px;width:320px;max-height:440px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 40px -12px rgba(0,0,0,.3);display:none;flex-direction:column;z-index:200;}
#chatBox.open{display:flex;}
#chatBox .chat-head{background:var(--navy-950);color:#fff;padding:14px 16px;font-size:14px;font-weight:600;}
#chatBox .chat-body{flex:1;padding:12px;overflow-y:auto;font-size:13px;display:flex;flex-direction:column;gap:8px;max-height:280px;}
.chat-msg{padding:8px 12px;border-radius:10px;max-width:80%;}
.chat-msg.mine{align-self:flex-end;background:var(--gold-500);color:var(--navy-950);}
.chat-msg.theirs{align-self:flex-start;background:#f0f1f4;}
#chatBox .chat-input{display:flex;border-top:1px solid var(--line);}
#chatBox .chat-input input{flex:1;border:none;padding:12px;font-size:13px;}
#chatBox .chat-input button{border:none;background:var(--navy-950);color:#fff;padding:0 16px;cursor:pointer;}
