/* ===========================================================
   HELIXI brand layer for Flatsome: all custom components scoped under .hx
   Header/footer theming scoped to #header / .hx-foot. Loaded after Flatsome CSS.
   =========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Hanken+Grotesk:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap');

:root{
  --navy:#08151f; --navy-2:#0c1f2e; --navy-3:#0e2231;
  --blue:#0b6fb8; --cyan:#1fb6e6; --cyan-soft:#5ed0f2;
  --slate:#5a7282; --pale:#eaf3f9; --paper:#fafcfe; --paper-2:#f2f8fc;
  --line:rgba(8,21,31,.10); --line-d:rgba(255,255,255,.10);
  --green:#3ad29a; --amber:#f3b53b;
  --serif:'Instrument Serif',Georgia,serif;
  --sans:'Hanken Grotesk',system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
}

/* ---- Global typography (covers Flatsome header/footer chrome) ---- */
html{background:#08151f}
body,button,input,select,textarea,.button{font-family:var(--sans)}
h1,h2,h3,h4.is-serif,.is-serif{font-family:var(--serif)}
#header .header-main,.header-bottom{ }
.nav>li>a{font-family:var(--sans);font-weight:500}
.woocommerce-loop-product__title,.product-title,.product_title{font-family:var(--serif)!important;font-weight:400}

/* ---- HX scope base ---- */
.hx{font-family:var(--sans);color:var(--navy);line-height:1.5}
.hx *{box-sizing:border-box}
.hx a{color:inherit;text-decoration:none}
.hx img{max-width:100%;display:block}
.hx .wrap{max-width:1240px;margin:0 auto;padding:0 28px}
.hx .mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.18em;font-size:.7rem}
.hx .muted{color:var(--slate)}
.hx h1,.hx h2,.hx h3{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.01em;margin:0}
.hx .eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;color:var(--blue);display:inline-flex;align-items:center;gap:.7em}
.hx .eyebrow::before{content:"";width:26px;height:1px;background:var(--cyan)}
.hx .eyebrow.light{color:var(--cyan-soft)}
.hx .btn{display:inline-flex;align-items:center;gap:.6em;font-weight:600;font-size:.92rem;padding:.85em 1.5em;border-radius:999px;transition:.25s;cursor:pointer;border:1px solid transparent}
.hx .btn-primary{background:var(--cyan);color:var(--navy)}
.hx .btn-primary:hover{background:var(--cyan-soft);transform:translateY(-2px);box-shadow:0 12px 30px -10px rgba(31,182,230,.6);color:var(--navy)}
.hx .btn-ghost{border-color:rgba(255,255,255,.28);color:#fff}
.hx .btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}
.hx .btn-dark{background:var(--navy);color:#fff}
.hx .btn-dark:hover{background:var(--blue);transform:translateY(-2px);color:#fff}
.hx section.block{padding:96px 0}
.hx .sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}
.hx .sec-head h2{font-size:clamp(2rem,4vw,3rem)}
.hx .sec-head h2 em,.hx h1 em,.hx h2 em{font-style:italic;color:var(--blue)}

/* ============ HEADER theming (HELIXI) ============ */
#header .header-main{transition:background .35s}
#header,#header .header-wrapper{background:#08151f}
#header .header-main{background:#08151f}
#header .header-bottom{background:#0c1f2e}
#top-bar,#header .header-top{display:none!important}        /* topbar off */
#header .nav-dropdown{font-family:var(--sans)}
/* HELIXI wordmark logo (site-title fallback) */
#logo a{font-family:var(--sans)!important;font-weight:800;font-size:1.2rem;letter-spacing:.02em;color:#fff!important;display:flex;align-items:center;gap:.5em;text-transform:none}
#logo a::before{content:"";width:24px;height:24px;flex:none;display:inline-block;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'%3E%3Cpath d='M8 4c8 4 8 8 16 12M8 28c8-4 8-8 16-12' stroke='%231fb6e6' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M24 4C16 8 16 12 8 16M24 28C16 24 16 20 8 16' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' opacity='.55'/%3E%3C/svg%3E") no-repeat center/contain}
#logo a::after{content:"HELIXI";font-family:var(--sans);font-weight:800;font-size:1.2rem;letter-spacing:.02em;color:#fff}
#logo img{display:none!important}
/* nav links white */
#header .header-nav a,#header .nav>li>a{font-family:var(--sans);font-weight:500;color:rgba(255,255,255,.82)}
#header .nav>li>a:hover{color:#fff}
/* header CTA cyan */
#header .header-main .button,#header .nav>li.html a.button{background:var(--cyan)!important;color:var(--navy)!important;border-color:transparent!important;border-radius:999px!important}
#header .header-main .button:hover{background:var(--cyan-soft)!important}
/* transparent over the home hero, solid navy when stuck */
/* home header: solid navy, consistent with inner pages; hero (100vh) sits below */
.home #header,.home #header .header-wrapper,.home #header .header-main{background:#08151f!important}
#header.stuck .header-main,.stuck .header-main{background:#08151f!important}
.home .hero{margin-top:0}

/* WooCommerce add-to-cart buttons → cyan (color_primary mod doesn't recompile) */
.single_add_to_cart_button,button.single_add_to_cart_button,.button.add_to_cart_button,a.add_to_cart_button,.shop_table .button{background:var(--cyan)!important;color:var(--navy)!important;border-color:transparent!important}
.single_add_to_cart_button:hover,.add_to_cart_button:hover{background:var(--cyan-soft)!important;color:var(--navy)!important}

/* ============ HERO (full-screen) ============ */
.hx .hero{position:relative;min-height:100vh;background:radial-gradient(120% 90% at 78% 8%, #103048 0%, var(--navy) 55%, #050e16 100%);color:#fff;overflow:hidden;display:flex;align-items:center;margin-top:-1px}
.hx .hero *{color:inherit}
.hx .hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(80% 70% at 60% 30%,#000 30%,transparent 85%)}
.hx .hero-glow{position:absolute;width:720px;height:720px;right:-160px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,230,.22),transparent 62%);filter:blur(20px)}
.hx .hero-trace{position:absolute;left:0;right:0;bottom:0;height:340px;z-index:1;opacity:.9}
.hx .hero-trace svg{width:100%;height:100%}
.hx .trace-line{fill:none;stroke:url(#tg);stroke-width:2;stroke-dasharray:3600;stroke-dashoffset:3600;animation:hxdraw 9s ease-in-out infinite}
.hx .trace-fill{fill:url(#tgf);opacity:.5;clip-path:inset(0 100% 0 0);animation:hxreveal 9s ease-in-out infinite}
@keyframes hxdraw{0%{stroke-dashoffset:3600}55%,100%{stroke-dashoffset:0}}
@keyframes hxreveal{0%{clip-path:inset(0 100% 0 0)}55%,100%{clip-path:inset(0 0 0 0)}}
.hx .detector{fill:var(--cyan);filter:drop-shadow(0 0 8px var(--cyan));animation:hxrun 9s ease-in-out infinite}
@keyframes hxrun{0%{transform:translateX(0)}55%,100%{transform:translateX(1180px)}}
.hx .molecule{position:absolute;right:6%;top:14%;width:340px;height:340px;z-index:1;opacity:.85;animation:hxfloat 14s ease-in-out infinite}
@keyframes hxfloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-22px) rotate(6deg)}}
.hx .bond{stroke:rgba(94,208,242,.55);stroke-width:1.5}
.hx .atom{fill:#0c1f2e;stroke:var(--cyan);stroke-width:1.5}
.hx .atom.key{fill:var(--cyan)}
.hx .atom-pulse{transform-origin:center;animation:hxpulse 3s ease-in-out infinite}
@keyframes hxpulse{0%,100%{opacity:.4}50%{opacity:1}}
.hx .hero-noise{position:absolute;inset:0;opacity:.5;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}
.hx .hero-content{position:relative;z-index:3;width:100%}
.hx .hero-row{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}
.hx .hero h1{font-size:clamp(3.2rem,7vw,6rem);margin:.32em 0 .5em}
.hx .hero h1 em{font-style:italic;color:var(--cyan)}
.hx .hero p.lead{font-size:1.18rem;color:rgba(255,255,255,.74);max-width:30em;font-weight:400}
.hx .hero-actions{display:flex;gap:14px;margin:2em 0 2.4em;flex-wrap:wrap}
.hx .trust{display:flex;gap:34px;border-top:1px solid var(--line-d);padding-top:22px}
.hx .trust .num{font-family:var(--serif);font-size:1.9rem;color:#fff}
.hx .trust .lbl{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--slate)}
.hx .hero [class^=an]{opacity:0;transform:translateY(22px);animation:hxrise .9s cubic-bezier(.2,.7,.2,1) forwards}
.hx .an1{animation-delay:.1s}.hx .an2{animation-delay:.24s}.hx .an3{animation-delay:.38s}.hx .an4{animation-delay:.52s}.hx .an5{animation-delay:.66s}
@keyframes hxrise{to{opacity:1;transform:none}}
/* result / COA card */
.hx .result-card,.hx .coa-card{position:relative;background:linear-gradient(160deg,rgba(18,40,58,.9),rgba(10,24,35,.82));border:1px solid rgba(94,208,242,.22);border-radius:20px;backdrop-filter:blur(10px);box-shadow:0 40px 90px -40px rgba(0,0,0,.8);overflow:hidden}
.hx .result-card{padding:26px}
.hx .scan{position:absolute;left:0;right:0;height:2px;top:0;background:linear-gradient(90deg,transparent,var(--cyan),transparent);box-shadow:0 0 16px var(--cyan);animation:hxscan 4.5s ease-in-out infinite}
@keyframes hxscan{0%{top:0}50%{top:100%}100%{top:0}}
.hx .rc-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
.hx .rc-tag{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;color:var(--cyan);border:1px solid rgba(94,208,242,.4);border-radius:999px;padding:5px 10px}
.hx .rc-name{font-family:var(--serif);font-size:1.6rem;color:#fff}
.hx .rc-sub{font-family:var(--mono);font-size:.66rem;color:var(--slate);letter-spacing:.12em;text-transform:uppercase}
.hx .purity{display:flex;align-items:baseline;gap:.3em;margin:8px 0 2px}
.hx .purity b{font-family:var(--serif);font-size:3.4rem;font-weight:400;color:#fff;line-height:1}
.hx .purity span{color:var(--cyan);font-family:var(--mono);font-size:.8rem}
.hx .rc-bar{height:6px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden;margin:14px 0 18px}
.hx .rc-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--cyan));animation:hxfill 2.4s cubic-bezier(.2,.7,.2,1) .4s forwards}
@keyframes hxfill{to{width:99.4%}}
.hx .rc-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-family:var(--mono);font-size:.66rem;color:rgba(255,255,255,.6);letter-spacing:.05em}
.hx .rc-meta div{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line-d);padding-bottom:6px}
.hx .rc-meta b{color:#fff;font-weight:500}
.hx .rc-foot{display:flex;align-items:center;gap:12px;margin-top:18px}
.hx .rc-qr{width:54px;height:54px;border-radius:8px;background:#fff;padding:5px}
.hx .rc-verified{font-family:var(--mono);font-size:.66rem;color:var(--cyan);text-transform:uppercase;letter-spacing:.12em}
.hx .rc-verified b{display:block;color:#fff;font-size:.78rem;letter-spacing:.04em}
.hx .ticker{position:absolute;bottom:0;left:0;right:0;z-index:4;border-top:1px solid var(--line-d);background:rgba(5,14,22,.6);backdrop-filter:blur(8px);overflow:hidden}
.hx .ticker-track{display:flex;gap:48px;white-space:nowrap;padding:11px 0;width:max-content;animation:hxslide 38s linear infinite;font-family:var(--mono);font-size:.7rem;color:var(--slate);letter-spacing:.1em}
.hx .ticker-track b{color:var(--cyan)}
.hx .ticker-track .ok{color:var(--green)}
@keyframes hxslide{to{transform:translateX(-50%)}}

/* ============ HERO (light, clean, search-forward) ============ */
.hx .hero-l{position:relative;overflow:hidden;text-align:center;padding:124px 0 100px;
  background:radial-gradient(900px 540px at 50% -10%,rgba(31,182,230,.13),transparent 70%),#fff}
.hx .hero-l .hl-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(8,21,31,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(8,21,31,.045) 1px,transparent 1px);background-size:62px 62px;mask-image:radial-gradient(72% 64% at 50% 26%,#000,transparent 82%)}
.hx .hero-l .hl-mol{position:absolute;right:4%;top:9%;width:280px;height:280px;opacity:.1;pointer-events:none}
.hx .hero-l .hl-mol .bond{stroke:var(--blue);stroke-width:1.6}
.hx .hero-l .hl-mol .atom{fill:#fff;stroke:var(--blue);stroke-width:1.6}
.hx .hero-l .hl-mol .atom.key{fill:var(--cyan);stroke:var(--cyan)}
.hx .hero-l-inner{position:relative;z-index:2;max-width:760px;margin:0 auto}
.hx .hero-l .eyebrow{justify-content:center;color:var(--blue);margin-bottom:18px}
.hx .hero-l h1{font-size:clamp(2.6rem,5.4vw,4.5rem);line-height:1.02;letter-spacing:-.015em;margin:0 0 .35em}
.hx .hero-l h1 em{font-style:italic;color:var(--blue)}
.hx .hero-l .lead{font-size:1.12rem;color:var(--slate);max-width:34em;margin:0 auto 32px;line-height:1.6}
.hx .hl-search{display:flex;align-items:center;gap:6px;max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 7px 7px 20px;box-shadow:0 26px 60px -34px rgba(8,21,31,.4)}
.hx .hl-search svg{color:var(--slate);flex:none}
.hx .hl-search input[type=text]{flex:1;border:0;outline:0;font-family:var(--sans);font-size:1rem;color:var(--navy);background:transparent;min-width:0}
.hx .hl-search input::placeholder{color:#9bb0bf}
.hx .hl-search button{flex:none;border:0;background:var(--cyan);color:var(--navy);font-weight:700;font-family:var(--sans);border-radius:999px;padding:.72em 1.5em;cursor:pointer;transition:.2s}
.hx .hl-search button:hover{background:var(--cyan-soft)}
.hx .hl-chips{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin:18px auto 0;max-width:600px}
.hx .hl-chips a{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);border:1px solid var(--line);border-radius:999px;padding:8px 14px;transition:.2s}
.hx .hl-chips a:hover{border-color:var(--cyan);color:var(--blue);background:rgba(31,182,230,.05)}
.hx .hl-trust{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:38px;font-size:.92rem;color:var(--slate)}
.hx .hl-trust b{font-family:var(--serif);font-size:1.25rem;color:var(--navy);margin-right:.35em}
.hx .hl-trust .dot{width:4px;height:4px;border-radius:50%;background:var(--line)}
@media(max-width:600px){.hx .hero-l{padding:92px 0 70px}.hx .hero-l .hl-mol{display:none}.hx .hl-trust{gap:10px}}
/* split variant: text + search left, COA card right */
.hx .hero-l.hero-split{text-align:left;padding:88px 0 80px}
.hx .hero-split-row{display:grid;grid-template-columns:1.05fr .92fr;gap:54px;align-items:center;position:relative;z-index:2}
.hx .hero-split .eyebrow{justify-content:flex-start;margin-bottom:16px}
.hx .hero-split h1{font-size:clamp(2.4rem,4.5vw,4rem);text-align:left;line-height:1.04;margin:0 0 .4em}
.hx .hero-split .lead{text-align:left;margin:0 0 26px;max-width:32em}
.hx .hero-split .hl-search{margin:0;max-width:520px;box-shadow:0 22px 50px -32px rgba(8,21,31,.35)}
.hx .hero-split .hl-chips{justify-content:flex-start;margin-top:16px}
.hx .hero-split .hl-trust{justify-content:flex-start;margin-top:30px}
.hx .hero-split-card{display:flex;justify-content:center}
.hx .hero-split-card .result-card{max-width:420px;width:100%}
@media(max-width:900px){.hx .hero-split-row{grid-template-columns:1fr;gap:40px}.hx .hero-split-card{order:-1}.hx .hero-split-card .result-card{max-width:460px}}

/* tests cards */
.hx .tests{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.hx .test{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff;transition:.3s;position:relative;overflow:hidden;display:flex;flex-direction:column}
.hx .test:hover{transform:translateY(-6px);box-shadow:0 30px 60px -34px rgba(8,21,31,.35);border-color:rgba(31,182,230,.4)}
.hx .test .spark{height:60px;margin:-4px -4px 14px;opacity:.9}
.hx .test .test-img{margin:-6px -6px 16px;border-radius:12px;overflow:hidden;background:linear-gradient(170deg,#f3f7fb,#e7eef5);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.hx .test .test-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.hx .test:hover .test-img img{transform:scale(1.04)}
.hx .test .cat{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;color:var(--blue);text-transform:uppercase}
.hx .test h3{font-family:var(--sans);font-weight:700;font-size:1.02rem;line-height:1.3;margin:10px 0 8px;letter-spacing:0;color:var(--navy)}
.hx .test .test-copy{font-family:var(--sans);font-size:.82rem;line-height:1.5;color:var(--slate);margin:0 0 16px}
.hx .test .hxprice{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:auto}
.hx .test .hxprice b{font-family:var(--serif);font-size:1.7rem}
.hx .test .hxprice span{font-family:var(--mono);font-size:.64rem;color:var(--slate)}

/* capabilities */
.hx .cap-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}
.hx .cap-list{display:flex;flex-direction:column}
.hx .cap{display:flex;align-items:center;gap:18px;padding:22px 4px;border-bottom:1px solid var(--line);transition:.25s}
.hx .cap:hover{padding-left:18px}
.hx .cap .ix{font-family:var(--mono);font-size:.72rem;color:var(--blue)}
.hx .cap .nm{font-family:var(--serif);font-size:1.55rem;flex:1}
.hx .cap .ar{color:var(--cyan);transition:.25s}
.hx .cap:hover .ar{transform:translateX(6px)}

/* band */
.hx .band{background:var(--navy);color:#fff;padding:64px 0}
.hx .band-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.hx .band .n{font-family:var(--serif);font-size:3.2rem;color:var(--cyan)}
.hx .band .l{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6)}

/* steps */
.hx .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}
.hx .step{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--paper-2)}
.hx .step .ix{font-family:var(--mono);color:var(--cyan);font-size:.7rem;letter-spacing:.16em}
.hx .step h3{font-family:var(--sans);font-weight:700;font-size:1.1rem;margin:14px 0 8px;letter-spacing:0}

/* ============ INNER PAGE HERO ============ */
.hx .page-hero{position:relative;background:radial-gradient(120% 120% at 80% -20%, #103048 0%, var(--navy) 60%, #050e16 100%);color:#fff;padding:120px 0 64px;overflow:hidden}
.hx .page-hero *{color:inherit}
.hx .page-hero .hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(80% 120% at 70% 0,#000 30%,transparent 80%)}
.hx .page-hero .glow{position:absolute;width:560px;height:560px;right:-140px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,230,.20),transparent 62%);filter:blur(20px)}
.hx .page-hero .crumbs{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:18px;position:relative}
.hx .page-hero .crumbs a:hover{color:var(--cyan)}
.hx .page-hero h1{font-size:clamp(2.6rem,5vw,4rem);position:relative}
.hx .page-hero h1 em{font-style:italic;color:var(--cyan)}
.hx .page-hero p.sub{position:relative;color:rgba(255,255,255,.72);max-width:34em;margin-top:16px;font-size:1.08rem}

/* ============ BLOG ============ */
.hx .blog-layout{display:grid;grid-template-columns:1fr 300px;gap:54px;align-items:start}
.hx .feature{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;margin-bottom:48px;transition:.3s}
.hx .feature:hover{box-shadow:0 30px 70px -40px rgba(8,21,31,.4);border-color:rgba(31,182,230,.4)}
.hx .feature .img{background:linear-gradient(150deg,#0c1f2e,#0b6fb8);min-height:340px;position:relative;overflow:hidden}
.hx .feature .img::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 30% 30%,rgba(31,182,230,.5),transparent 40%),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,40px 40px}
.hx .feature .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hx .feature .body{padding:34px 32px;display:flex;flex-direction:column;justify-content:center}
.hx .post-cat{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.hx .feature h2{font-size:2.1rem;margin:14px 0 12px;line-height:1.08}
.hx .feature p{color:var(--slate);font-size:1rem;margin-bottom:18px}
.hx .post-meta{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;color:var(--slate);text-transform:uppercase;display:flex;gap:14px;align-items:center}
.hx .post-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--cyan)}
.hx .post-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.hx .hxcard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:.3s;display:block}
.hx .hxcard:hover{transform:translateY(-6px);box-shadow:0 26px 50px -34px rgba(8,21,31,.35);border-color:rgba(31,182,230,.4)}
.hx .hxcard .img{height:190px;background:linear-gradient(150deg,#0e2231,#0b6fb8);position:relative;overflow:hidden}
.hx .hxcard .img::after{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:34px 34px}
.hx .hxcard .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hx .hxcard .img .tag{position:absolute;top:14px;left:14px;font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(8,21,31,.6);border:1px solid var(--line-d);padding:5px 9px;border-radius:999px;backdrop-filter:blur(6px);z-index:2}
.hx .hxcard .body{padding:22px}
.hx .hxcard h3{font-family:var(--sans);font-weight:700;font-size:1.1rem;line-height:1.3;margin-bottom:10px;letter-spacing:0;color:var(--navy)}
.hx .hxcard p{color:var(--slate);font-size:.9rem;margin-bottom:16px}
.hx .side{position:sticky;top:96px;display:flex;flex-direction:column;gap:34px}
.hx .side h4{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.hx .cats{display:flex;flex-direction:column;gap:2px}
.hx .cats a{display:flex;justify-content:space-between;padding:10px 0;font-size:.92rem;border-bottom:1px solid var(--line);transition:.2s}
.hx .cats a:hover{color:var(--blue);padding-left:8px}
.hx .cats a span{font-family:var(--mono);font-size:.66rem;color:var(--slate)}
.hx .side-cta{background:var(--navy);color:#fff;border-radius:16px;padding:26px;position:relative;overflow:hidden}
.hx .side-cta::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,230,.35),transparent 65%)}
.hx .side-cta h4{color:#fff;border:0;font-family:var(--serif);font-size:1.4rem;letter-spacing:0;text-transform:none;margin-bottom:10px}
.hx .side-cta p{color:rgba(255,255,255,.7);font-size:.88rem;margin-bottom:18px}
.hx .recent a{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.hx .recent .th{width:56px;height:56px;border-radius:10px;flex:none;background:linear-gradient(150deg,#0e2231,#1fb6e6);overflow:hidden}
.hx .recent .th img{width:100%;height:100%;object-fit:cover}
.hx .recent .tt{font-size:.86rem;font-weight:600;line-height:1.3}
.hx .recent .dt{font-family:var(--mono);font-size:.6rem;color:var(--slate);letter-spacing:.1em;text-transform:uppercase;margin-top:4px}

/* ============ SINGLE POST ============ */
.hx .article{max-width:760px;margin:0 auto}
.hx .article .lede{font-size:1.3rem;line-height:1.6;color:var(--navy);font-weight:500;margin:0 0 30px;padding-left:22px;border-left:3px solid var(--cyan)}
.hx .article p{font-size:1.08rem;line-height:1.75;color:#23323d;margin:0 0 26px}
.hx .article h2{font-size:1.9rem;margin:46px 0 16px}
.hx .article h2 em{font-style:italic;color:var(--blue)}
.hx .article a.inl,.hx .article-content a{color:var(--blue);border-bottom:1px solid rgba(11,111,184,.3)}
.hx .byline{display:flex;align-items:center;gap:14px;margin:34px 0 40px;padding-bottom:34px;border-bottom:1px solid var(--line)}
.hx .byline .av{width:48px;height:48px;border-radius:50%;background:linear-gradient(150deg,#0e2231,#1fb6e6)}
.hx .byline .nm{font-weight:700}.hx .byline .mt{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;color:var(--slate);text-transform:uppercase;margin-top:3px}
.hx .helixi-callout{background:var(--navy);color:#fff;border-radius:16px;padding:28px 30px;margin:36px 0;position:relative;overflow:hidden}
.hx .helixi-callout::after{content:"";position:absolute;right:-50px;top:-50px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,230,.3),transparent 65%)}
.hx .helixi-callout .lbl{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan)}
.hx .helixi-callout .big{font-family:var(--serif);font-size:2.4rem;margin:6px 0 4px}
.hx .helixi-callout p{color:rgba(255,255,255,.74);font-size:.96rem;margin:0}
.hx .helixi-chromo{height:120px;background:#0b1622;border:1px solid var(--line-d);border-radius:14px;margin:32px 0;position:relative;overflow:hidden}
.hx .helixi-chromo svg{width:100%;height:100%}
.hx blockquote{font-family:var(--serif);font-size:1.7rem;line-height:1.3;color:var(--navy);margin:40px 0;padding:0 0 0 4px;border:0}
.hx blockquote em{color:var(--blue)}
.hx .tags{display:flex;gap:10px;flex-wrap:wrap;margin:40px 0;padding-top:30px;border-top:1px solid var(--line)}
.hx .tags a{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);border:1px solid var(--line);border-radius:999px;padding:7px 14px;transition:.2s}
.hx .tags a:hover{border-color:var(--blue);color:var(--blue)}
.hx .related{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.hx .rel{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;transition:.3s;display:block}
.hx .rel:hover{transform:translateY(-5px);box-shadow:0 24px 46px -34px rgba(8,21,31,.35)}
.hx .rel .img{height:130px;background:linear-gradient(150deg,#0e2231,#0b6fb8);overflow:hidden}
.hx .rel .img img{width:100%;height:100%;object-fit:cover}
.hx .rel .b{padding:18px}.hx .rel h3{font-family:var(--sans);font-weight:700;font-size:1rem;line-height:1.3;letter-spacing:0;color:var(--navy)}
.hx .rel .dt{font-family:var(--mono);font-size:.6rem;color:var(--slate);letter-spacing:.1em;text-transform:uppercase;margin-top:8px}

/* ============ PRODUCT (COA + summary additions) ============ */
.helixi-incl{border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin:18px 0 22px;background:var(--paper-2);font-family:var(--sans)}
.helixi-incl h4{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin:0 0 14px}
.helixi-incl ul{list-style:none;margin:0;padding:0}
.helixi-incl li{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-size:.94rem;color:#23323d}
.helixi-incl li svg{flex:none;margin-top:2px}
.helixi-trust{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 4px}
.helixi-trust .t{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);border:1px solid var(--line);border-radius:999px;padding:8px 13px}
.helixi-trust .t b{color:var(--green)}
/* COA full-width section */
.hx-coa{background:var(--paper-2);color:var(--navy);padding:80px 0;position:relative;overflow:hidden;margin-top:40px;border-top:1px solid var(--line)}
.hx-coa *{box-sizing:border-box}
.hx-coa .glow{position:absolute;width:680px;height:680px;left:-180px;bottom:-300px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,230,.12),transparent 62%);filter:blur(20px)}
.hx-coa .wrap{max-width:1240px;margin:0 auto;padding:0 28px}
.hx-coa .coa-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;position:relative}
.hx-coa .coa-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,2.8rem);margin:0;color:var(--navy)}
.hx-coa .coa-head h2 em{font-style:italic;color:var(--blue)}
.hx-coa .eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;color:var(--blue);display:inline-flex;align-items:center;gap:.7em}
.hx-coa .eyebrow::before{content:"";width:26px;height:1px;background:var(--cyan)}
.hx-coa .mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--slate)}
.hx-coa .coa-card{display:grid;grid-template-columns:1.5fr 1fr;border-radius:20px;border:1px solid var(--line);overflow:hidden;background:#fff;box-shadow:0 40px 90px -52px rgba(8,21,31,.45);position:relative}
.hx-coa .scan{position:absolute;left:0;right:0;height:2px;top:0;background:linear-gradient(90deg,transparent,var(--cyan),transparent);box-shadow:0 0 14px var(--cyan);animation:hxscan 5s ease-in-out infinite;z-index:3}
.hx-coa .coa-main{padding:36px 38px;border-right:1px solid var(--line)}
.hx-coa .coa-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}
.hx-coa .coa-id .k{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--slate)}
.hx-coa .coa-id .v{font-family:var(--serif);font-size:1.9rem;color:var(--navy)}
.hx-coa .coa-pass{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#15976a;background:rgba(58,210,154,.1);border:1px solid rgba(58,210,154,.45);border-radius:999px;padding:7px 13px;height:max-content}
.hx-coa .coa-purity{display:flex;align-items:flex-end;gap:30px;margin-bottom:18px}
.hx-coa .coa-purity .big{font-family:var(--serif);font-size:4.6rem;line-height:.9;color:var(--navy)}
.hx-coa .coa-purity .big small{font-family:var(--mono);font-size:1rem;color:var(--blue)}
.hx-coa .coa-purity .meta{flex:1}
.hx-coa .coa-bar{height:7px;border-radius:7px;background:var(--pale);overflow:hidden;margin-bottom:8px}
.hx-coa .coa-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan))}
.hx-coa .coa-purity .meta .note{font-family:var(--mono);font-size:.62rem;color:var(--slate);letter-spacing:.06em;text-transform:uppercase}
.hx-coa .coa-chromo{height:128px;background:linear-gradient(160deg,#0c1f2e,#08151f);border:1px solid var(--navy-2);border-radius:12px;margin:18px 0 22px;position:relative;overflow:hidden}
.hx-coa .coa-chromo svg{width:100%;height:100%}
.hx-coa .coa-chromo .cap{position:absolute;bottom:8px;left:13px;font-family:var(--mono);font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:var(--slate)}
.hx-coa .coa-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px 14px}
.hx-coa .coa-grid div{font-family:var(--mono);font-size:.66rem;color:var(--slate);letter-spacing:.04em}
.hx-coa .coa-grid .k{display:block;color:var(--slate);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.hx-coa .coa-grid b{color:var(--navy);font-weight:600;font-size:.82rem}
.hx-coa .coa-verify{padding:36px 30px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;background:var(--paper-2)}
.hx-coa .coa-qr{width:150px;height:150px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px;margin-bottom:18px}
.hx-coa .coa-verify .vk{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.hx-coa .coa-verify .vu{font-family:var(--mono);font-size:.74rem;color:var(--navy);margin:6px 0 20px;word-break:break-all}
.hx-coa .btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-weight:600;font-size:.92rem;padding:.85em 1.5em;border-radius:999px;width:100%;margin-bottom:10px;transition:.25s}
.hx-coa .btn-primary{background:var(--cyan);color:var(--navy)}
.hx-coa .btn-primary:hover{background:var(--cyan-soft)}
.hx-coa .btn-ghost{border:1px solid var(--line);color:var(--navy)}
.hx-coa .btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.hx-coa .coa-foot{font-family:var(--mono);font-size:.58rem;color:var(--slate);letter-spacing:.08em;margin-top:8px}
.hx-coa .coa-foot{font-family:var(--mono);font-size:.58rem;color:var(--slate);letter-spacing:.08em;margin-top:8px}

/* ============ FOOTER (Custom HTML widget) ============ */
.hx-foot{font-family:var(--sans)}
.hx-foot .wrap{max-width:1240px;margin:0 auto;padding:0 28px}
.hx-foot .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--line-d)}
.hx-foot .logo{display:flex;align-items:center;gap:.6em;color:#fff;font-weight:800;font-size:1.15rem;letter-spacing:.02em;margin-bottom:16px}
.hx-foot .logo .glyph{width:26px;height:26px}
.hx-foot h4{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:0 0 16px}
.hx-foot ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}
.hx-foot ul a{font-size:.9rem;color:rgba(255,255,255,.66)}.hx-foot ul a:hover{color:var(--cyan)}
.hx-foot p{color:rgba(255,255,255,.66);font-size:.92rem;margin:0}
.hx-foot .foot-bottom{display:flex;justify-content:space-between;padding-top:24px;font-family:var(--mono);font-size:.66rem;color:var(--slate);letter-spacing:.08em}
/* Flatsome footer chrome: navy, no default credit bar, no padding around our widget */
#footer{background:#08151f}
#footer .footer-widgets,#footer .footer-1,#footer .row{background:#08151f;padding:0;max-width:none}
#footer .footer-widgets .col{padding:0;margin:0}
#footer .absolute-footer,.absolute-footer{display:none!important}

/* ============ SHOP / CATEGORY ARCHIVE (Janoshik-mirrored, HELIXI brand) ============ */
/* hide WooCommerce/Flatsome default archive title, we render our own hero */
.woocommerce-products-header,.archive .shop-page-title,.tax-product_cat .shop-page-title,.post-type-archive-product .shop-page-title{display:none!important}
/* contain the full-bleed hero so it doesn't create a horizontal scrollbar */
.woocommerce-page #content,.archive #content,.tax-product_cat #content,.post-type-archive-product #content{overflow-x:clip}

.hx-shop-hero{position:relative;width:100vw;margin-left:calc(50% - 50vw);
  background:radial-gradient(120% 130% at 88% -10%,#103048 0%,var(--navy) 60%,#050e16 100%);
  color:#fff;padding:118px 0 60px;overflow:hidden;margin-bottom:50px}
.hx-shop-hero *{color:inherit}
.hx-shop-hero .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(80% 120% at 70% 0,#000 30%,transparent 80%)}
.hx-shop-hero .mol{position:absolute;right:5%;top:8%;width:300px;height:300px;opacity:.55}
.hx-shop-hero .mol .bond{stroke:rgba(94,208,242,.5);stroke-width:1.5}
.hx-shop-hero .mol .atom{fill:#0c1f2e;stroke:var(--cyan);stroke-width:1.5}
.hx-shop-hero .mol .atom.key{fill:var(--cyan)}
.hx-shop-hero .wrap{max-width:1240px;margin:0 auto;padding:0 28px;position:relative;z-index:2}
.hx-shop-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,5.5vw,4.4rem);line-height:1.02;letter-spacing:-.01em;margin:.18em 0 0}
.hx-shop-hero p{color:rgba(255,255,255,.72);max-width:34em;font-size:1.12rem;margin-top:14px}
.hx-shop-hero .eyebrow{color:var(--cyan-soft)}

/* result count + ordering row */
.archive.woocommerce .woocommerce-result-count,.tax-product_cat .woocommerce-result-count,.post-type-archive-product .woocommerce-result-count{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);padding-top:8px}
.archive.woocommerce .woocommerce-ordering select,.tax-product_cat .woocommerce-ordering select,.post-type-archive-product .woocommerce-ordering select{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--line);border-radius:999px;padding:9px 18px;background:#fff;color:var(--navy)}

/* 4-up product grid: override Flatsome column floats */
.archive.woocommerce ul.products,.tax-product_cat ul.products,.post-type-archive-product ul.products{
  display:grid!important;grid-template-columns:repeat(4,1fr);gap:44px 28px;margin:0 0 40px!important}
.archive.woocommerce ul.products li.product,.tax-product_cat ul.products li.product,.post-type-archive-product ul.products li.product{
  width:auto!important;margin:0!important;padding:0!important;float:none!important;clear:none!important}
/* card: tall image panel + text below */
.archive.woocommerce ul.products li.product .box,.tax-product_cat ul.products li.product .box,.post-type-archive-product ul.products li.product .box{margin:0;border:0;box-shadow:none;background:transparent}
.archive.woocommerce ul.products li.product .box-image,.tax-product_cat ul.products li.product .box-image,.post-type-archive-product ul.products li.product .box-image{
  border-radius:16px;overflow:hidden;background:linear-gradient(165deg,#eef5fa,#dbe9f3)!important;aspect-ratio:3/4;margin:0!important;transition:.3s}
.archive.woocommerce ul.products li.product .box-image img,.tax-product_cat ul.products li.product .box-image img,.post-type-archive-product ul.products li.product .box-image img{width:100%;height:100%;object-fit:cover}
.archive.woocommerce ul.products li.product:hover .box-image,.tax-product_cat ul.products li.product:hover .box-image,.post-type-archive-product ul.products li.product:hover .box-image{transform:translateY(-6px);box-shadow:0 30px 60px -34px rgba(8,21,31,.4)}
.archive.woocommerce ul.products li.product .box-text,.tax-product_cat ul.products li.product .box-text,.post-type-archive-product ul.products li.product .box-text{padding:18px 2px 0!important;text-align:left!important;background:transparent}
.archive.woocommerce ul.products li.product .box-text .category,.tax-product_cat ul.products li.product .box-text .category,.post-type-archive-product ul.products li.product .box-text .category{font-family:var(--mono)!important;font-size:.58rem!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:var(--blue)!important;margin:0 0 6px!important}
.archive.woocommerce ul.products li.product .box-text .product-title,.tax-product_cat ul.products li.product .box-text .product-title,.post-type-archive-product ul.products li.product .box-text .product-title{font-family:var(--serif)!important;font-weight:400!important;font-size:1.5rem!important;line-height:1.1!important;letter-spacing:-.01em;text-transform:none!important;margin:0 0 8px!important}
.archive.woocommerce ul.products li.product .box-text .product-title a,.tax-product_cat ul.products li.product .box-text .product-title a,.post-type-archive-product ul.products li.product .box-text .product-title a{color:var(--navy)!important}
.archive.woocommerce ul.products li.product .price,.tax-product_cat ul.products li.product .price,.post-type-archive-product ul.products li.product .price{font-family:var(--mono)!important;font-size:.92rem!important;color:var(--navy)!important;font-weight:500}
.archive.woocommerce ul.products li.product .price del,.tax-product_cat ul.products li.product .price del{color:var(--slate)!important;opacity:.6}
/* hide the loop add-to-cart for the clean Janoshik look (click card -> product) */
.archive.woocommerce ul.products li.product .add-to-cart-button,.archive.woocommerce ul.products li.product .button.product_type_simple,.tax-product_cat ul.products li.product .button.add_to_cart_button,.post-type-archive-product ul.products li.product .button.add_to_cart_button{display:none!important}
@media(max-width:1100px){.archive.woocommerce ul.products,.tax-product_cat ul.products,.post-type-archive-product ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.archive.woocommerce ul.products,.tax-product_cat ul.products,.post-type-archive-product ul.products{grid-template-columns:repeat(2,1fr);gap:28px 18px}.hx-shop-hero .mol{display:none}}

/* ============ RESPONSIVE ============ */
@media(max-width:900px){
  .hx .hero-row,.hx .cap-row,.hx .blog-layout,.hx .feature,.hx .post-grid{grid-template-columns:1fr}
  .hx .tests,.hx .band-grid,.hx .steps,.hx .related{grid-template-columns:1fr 1fr}
  .hx .molecule{display:none}
  .hx-coa .coa-card{grid-template-columns:1fr}
  .hx-coa .coa-main{border-right:0;border-bottom:1px solid var(--line-d)}
  .hx-foot .foot-grid{grid-template-columns:1fr 1fr}
}
