:root{
--color-primary:#5645d4;--color-primary-press:#4534b3;--color-secondary:#3a2a99;
--color-accent:#5645d4;--color-warm:#dd5b00;--color-warm-deep:#793400;--color-on-primary:#fff;
--color-dark:#0a1530;--color-dark-deep:#070f24;--color-dark-mid:#1a2a52;
--color-bg:#fff;--color-bg-alt:#f6f5f4;--color-surface:#fff;--color-surface-soft:#fafaf9;
--color-text:#1a1a1a;--color-text-2:#37352f;--color-text-muted:#5d5b54;--color-text-faint:#787671;
--color-border:#e5e3df;--color-border-soft:#ede9e4;--color-border-strong:#c8c4be;
--color-on-dark:#fff;--color-on-dark-muted:#a4a097;--color-on-dark-link:#d0cec9;
--tint-peach:#ffe8d4;--tint-rose:#fde0ec;--tint-mint:#d9f3e1;--tint-lavender:#e6e0f5;
--tint-sky:#dcecfa;--tint-yellow:#fef7d6;--tint-cream:#f8f5e8;--tint-gray:#f0eeec;
--dot-pink:#ff64c8;--dot-purple:#7b3ff2;--dot-teal:#2a9d99;--dot-green:#1aae39;--dot-yellow:#f5d75e;
--err:#e03131;--err-bg:#fdeded;--ok:#1aae39;
--font-heading:'Inter',-apple-system,BlinkMacSystemFont,system-ui,'Segoe UI',Helvetica,Arial,sans-serif;
--font-body:'Inter',-apple-system,BlinkMacSystemFont,system-ui,'Segoe UI',Helvetica,Arial,sans-serif;
--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-xxl:20px;--radius-full:9999px;
--shadow-sm:rgba(15,15,15,.04) 0 1px 2px 0;--shadow-md:rgba(15,15,15,.08) 0 4px 12px 0;
--shadow-lg:rgba(15,15,15,.2) 0 24px 48px -8px;--shadow-modal:rgba(15,15,15,.16) 0 16px 48px -8px;
--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:24px;
--space-xxl:32px;--space-xxxl:40px;--space-sec-sm:48px;--space-sec:64px;--space-sec-lg:96px;
--container:1280px;--gutter:24px;--header-h:68px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);
font-size:16px;line-height:1.55;font-weight:400;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;color:var(--color-text);margin:0 0 var(--space-md)}
p{margin:0 0 var(--space-md)}
ul,ol{margin:0;padding:0}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-xs)}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
main{display:block}
section{padding:60px 0;background:var(--color-bg)}
.section-alt{background:var(--color-bg-alt)}
.ht-sec-h{font-size:clamp(1.75rem,3.4vw,2.25rem);line-height:1.2;letter-spacing:-.5px;
max-width:22ch;margin-bottom:var(--space-sm)}
.section-subtitle{font-size:1.0625rem;line-height:1.5;color:var(--color-text-muted);
max-width:64ch;margin:0 0 var(--space-xxl)}
.ht-page-h1{font-size:clamp(2rem,4.5vw,3rem);line-height:1.15;letter-spacing:-1px;margin-bottom:var(--space-md)}
.ht-ico{flex:0 0 auto;width:24px;height:24px}

/* ---------- buttons ---------- */
.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;
gap:var(--space-xs);font-family:var(--font-heading);font-size:.9375rem;font-weight:500;line-height:1.3;
padding:12px 20px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;
text-decoration:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease;
min-height:44px;white-space:nowrap}
.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}
.btn-primary:hover{background:var(--color-primary-press)}
.btn-secondary{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}
.btn-secondary:hover{border-color:var(--color-text);background:var(--color-surface-soft)}
.btn-ghost{background:transparent;color:var(--color-text);border-color:transparent}
.btn-ghost:hover{background:var(--color-bg-alt)}
.btn-sm{padding:9px 14px;font-size:.875rem;min-height:38px}
.btn-lg{padding:14px 24px;font-size:1rem;min-height:48px}
.ht-hero .btn-ghost,.ht-news .btn-ghost{color:var(--color-on-dark);border-color:rgba(255,255,255,.42)}
.ht-hero .btn-ghost:hover,.ht-news .btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}

/* ---------- header ---------- */
.ht-hdr{position:sticky;top:0;z-index:60;background:var(--color-bg);
border-bottom:1px solid var(--color-border);transition:box-shadow .18s ease}
.ht-hdr.header--scrolled{box-shadow:var(--shadow-sm)}
.ht-hdr-in{display:flex;align-items:center;gap:var(--space-lg);min-height:var(--header-h)}
.ht-hdr-logo{display:flex;flex-direction:column;text-decoration:none;line-height:1.1;margin-right:auto}
.ht-hdr-mark{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;letter-spacing:-.4px;color:var(--color-text)}
.ht-hdr-sub{font-size:.6875rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-faint)}
.ht-hdr-nav{display:none}
.ht-hdr-list{display:flex;align-items:center;gap:var(--space-xl);list-style:none}
.ht-hdr-list a{font-size:.9375rem;font-weight:500;color:var(--color-text-2);text-decoration:none;padding:6px 0}
.ht-hdr-list a:hover{color:var(--color-primary)}
.ht-hdr-list a.is-active{color:var(--color-primary)}
.ht-hdr-cta{display:none}
.ht-hdr-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;
padding:0;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);
color:var(--color-text);cursor:pointer}
@media(min-width:1024px){
.ht-hdr-nav{display:block}
.ht-hdr-cta{display:block}
.ht-hdr-burger{display:none}
}
@media(max-width:1023px){
.ht-hdr-nav.is-open{display:block;position:absolute;left:0;right:0;top:100%;background:var(--color-bg);
border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:var(--space-md) var(--gutter)}
.ht-hdr-nav.is-open .ht-hdr-list{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}
.ht-hdr-nav.is-open .ht-hdr-list a{display:block;padding:11px 0;width:100%}
.ht-hdr-in{position:relative}
}
body.no-scroll{overflow:hidden}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--color-dark);color:var(--color-on-dark);
padding:40px 0 44px}
.ht-hero-dots{position:absolute;inset:0;pointer-events:none}
.ht-dot{position:absolute;width:10px;height:10px;border-radius:var(--radius-full);opacity:.55}
.ht-dot--pink{background:var(--dot-pink)}
.ht-dot--purple{background:var(--dot-purple)}
.ht-dot--teal{background:var(--dot-teal)}
.ht-dot--green{background:var(--dot-green)}
.ht-dot--yellow{background:var(--dot-yellow)}
.ht-hero-in{position:relative;display:grid;gap:var(--space-xxl);align-items:center}
.ht-hero-body{max-width:36rem}
.ht-hero-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
color:#d6b6f6;margin-bottom:var(--space-sm)}
.ht-hero-h1{font-size:clamp(2.25rem,5.4vw,3.5rem);line-height:1.06;letter-spacing:-1.5px;
color:var(--color-on-dark);margin-bottom:var(--space-md)}
.ht-hero-sub{font-size:1.125rem;line-height:1.5;color:#e8e6ef;margin-bottom:var(--space-lg)}
.ht-hero-marks{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-xl)}
.ht-hero-mark{font-size:.8125rem;font-weight:500;color:var(--color-on-dark);
background:var(--color-dark-mid);border:1px solid #2f4272;
border-radius:var(--radius-full);padding:6px 14px}
.ht-hero-acts{display:flex;flex-wrap:wrap;gap:var(--space-sm)}
.ht-hero-media img{width:100%;max-height:300px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
@media(min-width:900px){.ht-hero-in{grid-template-columns:1.05fr .95fr;gap:var(--space-xxxl)}.hero{padding:52px 0 56px}
.ht-hero-media img{max-height:360px}}

/* ---------- stats strip ---------- */
.ht-stats{background:var(--color-dark-deep);color:var(--color-on-dark);padding:var(--space-xl) 0}
.ht-stats-in{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}
.ht-stat{display:flex;flex-direction:column;gap:2px;text-align:center}
.ht-stat-num{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;letter-spacing:-.5px;color:#f5d75e}
.ht-stat-lbl{font-size:.8125rem;color:#d0cec9;line-height:1.35}
.ht-stats-in--page{background:var(--color-dark-deep);border-radius:var(--radius-lg);padding:var(--space-xxl) var(--space-lg)}
.ht-stats-in--page .ht-stat-lbl{color:#d0cec9}
.ht-abt-stats{background:var(--color-bg)}
@media(min-width:768px){.ht-stats-in{grid-template-columns:repeat(4,1fr)}}

/* ---------- products ---------- */
.ht-prods{padding-bottom:60px}
.products-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xl)}
@media(min-width:700px){.products-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:700px){.products-grid:has(>.product-card:only-child){grid-template-columns:minmax(0,560px);justify-content:center}
.products-grid:has(>.product-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,460px));justify-content:center}}
.product-card{display:flex;flex-direction:column;background:var(--color-surface);
border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);
position:relative;transition:box-shadow .18s ease,transform .18s ease}
.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.product-card__media{background:#fff;border:1px solid var(--color-border-soft);
border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-md)}
.product-card__media img{width:100%;aspect-ratio:1/1;object-fit:contain;padding:var(--space-md)}
.product-card__title{font-size:1.0625rem;line-height:1.35;margin-bottom:var(--space-xs)}
.product-card__rating{font-size:.875rem;font-weight:600;color:var(--color-warm);margin-bottom:var(--space-sm)}
.product-card__reviews{font-weight:400;color:var(--color-text-muted)}
.product-card__description{font-size:.9375rem;line-height:1.6;color:var(--color-text-muted);
margin-bottom:var(--space-xs);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
line-clamp:3;overflow:hidden}
.product-card__description.is-expanded{-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;display:block}
.product-card__more{align-self:flex-start;background:none;border:0;padding:0 0 var(--space-md);
color:var(--color-primary);font-family:var(--font-body);font-size:.9375rem;font-weight:500;
cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.product-card__more:hover{color:var(--color-primary-press)}
.product-card__highlights,.product-card-bullets{list-style:none;display:flex;flex-direction:column;
gap:var(--space-xs);margin-bottom:var(--space-lg)}
.product-card__highlights li,.product-card-bullets li{position:relative;padding-left:22px;
font-size:.875rem;line-height:1.5;color:var(--color-text-2)}
.product-card__highlights li::before,.product-card-bullets li::before{content:"";position:absolute;
left:0;top:.5em;width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-primary)}
.product-card__cta{margin-top:auto;width:100%}
.product-badge{position:absolute;top:var(--space-md);left:var(--space-md);z-index:2;
display:inline-block;padding:4px 10px;border-radius:var(--radius-full);
background:var(--color-warm);color:#fff;font-size:.8125rem;font-weight:600;line-height:1.3}
.product-badge--restock{background:var(--tint-yellow-bold,#f9e79f);color:var(--color-warm-deep)}
.product-card--unavailable img{filter:grayscale(.55)}
.product-card--unavailable .product-card__title{color:var(--color-text-faint)}

/* ---------- benefits ---------- */
.ht-why-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:700px){.ht-why-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.ht-why-grid{grid-template-columns:repeat(3,1fr)}}
.ht-why-card{border-radius:var(--radius-lg);padding:var(--space-xxl);color:var(--color-text-2)}
.ht-why-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;
border-radius:var(--radius-md);background:rgba(255,255,255,.72);color:var(--color-text-2);margin-bottom:var(--space-md)}
.ht-why-h{font-size:1.1875rem;line-height:1.3;margin-bottom:var(--space-xs);color:var(--color-text-2)}
.ht-why-txt{font-size:.9375rem;line-height:1.6;margin:0;color:var(--color-text-2)}
.ht-tint--peach{background:var(--tint-peach)}
.ht-tint--rose{background:var(--tint-rose)}
.ht-tint--mint{background:var(--tint-mint)}
.ht-tint--lavender{background:var(--tint-lavender)}
.ht-tint--sky{background:var(--tint-sky)}
.ht-tint--yellow{background:var(--tint-yellow)}

/* ---------- how it works ---------- */
.ht-steps-grid{list-style:none;counter-reset:none;display:grid;grid-template-columns:1fr;gap:var(--space-xl)}
@media(min-width:640px){.ht-steps-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.ht-steps-grid{grid-template-columns:repeat(4,1fr)}}
.ht-step{background:var(--color-surface);border:1px solid var(--color-border);
border-radius:var(--radius-lg);padding:var(--space-xl)}
.ht-step-num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;
border-radius:var(--radius-full);background:var(--color-primary);color:#fff;
font-family:var(--font-heading);font-weight:600;font-size:1.0625rem;margin-bottom:var(--space-md)}
.ht-step-h{font-size:1.0625rem;margin-bottom:var(--space-xs)}
.ht-step-txt{font-size:.9375rem;line-height:1.6;color:var(--color-text-muted);margin:0}

/* ---------- features ---------- */
.ht-feat-row{display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:center;
padding:var(--space-xxl) 0;border-top:1px solid var(--color-border)}
.ht-feat-row:first-of-type{border-top:0;padding-top:0}
.ht-feat-media{border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-alt)}
.ht-feat-img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ht-feat-h{font-size:clamp(1.25rem,2.4vw,1.625rem);line-height:1.25;margin-bottom:var(--space-sm)}
.ht-feat-p{font-size:1rem;line-height:1.65;color:var(--color-text-muted);margin-bottom:var(--space-md)}
.ht-feat-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}
.ht-feat-list li{position:relative;padding-left:26px;font-size:.9375rem;line-height:1.55;color:var(--color-text-2)}
.ht-feat-list li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:12px;
border-radius:var(--radius-xs);background:var(--tint-lavender);border:2px solid var(--color-primary)}
@media(min-width:900px){
.ht-feat-row{grid-template-columns:1fr 1fr;gap:var(--space-xxxl);padding:var(--space-sec-sm) 0}
.ht-feat-row--flip .ht-feat-media{order:2}
.ht-feat-row--flip .ht-feat-body{order:1}
}

/* ---------- information gain ---------- */
.ht-ig-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:640px){.ht-ig-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.ht-ig-grid{grid-template-columns:repeat(3,1fr)}}
.ht-ig-card{display:flex;flex-direction:column;background:var(--color-surface);
border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xxl)}
.ht-ig-num{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;letter-spacing:-.8px;
line-height:1.15;color:var(--color-primary);margin-bottom:var(--space-sm)}
.ht-ig-claim{font-size:.9375rem;line-height:1.6;color:var(--color-text-2);margin-bottom:var(--space-sm)}
.ht-ig-gap{font-size:.875rem;line-height:1.55;color:var(--color-text-faint);margin-bottom:var(--space-md)}
.ht-ig-proof{margin:auto 0 0;align-self:flex-start;font-size:.75rem;font-weight:600;
letter-spacing:.05em;text-transform:uppercase;color:var(--color-warm-deep);
background:var(--tint-peach);border-radius:var(--radius-full);padding:5px 12px}

/* ---------- about ---------- */
.ht-abt-grid,.ht-story-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xxl);align-items:start}
@media(min-width:900px){.ht-abt-grid,.ht-story-grid{grid-template-columns:1.15fr .85fr;gap:var(--space-xxxl)}}
.ht-abt-lead{font-size:1.125rem;line-height:1.6;font-weight:500;color:var(--color-text);
border-left:3px solid var(--color-primary);padding-left:var(--space-lg);margin-bottom:var(--space-lg)}
.ht-abt-body p{font-size:1rem;line-height:1.7;color:var(--color-text-muted)}
.ht-abt-link{margin-top:var(--space-xs)}
.ht-abt-media{position:sticky;top:calc(var(--header-h) + 16px)}
.ht-abt-img{width:100%;border-radius:var(--radius-lg);border:1px solid var(--color-border)}

/* ---------- reviews ---------- */
.ht-voice-note{font-size:.9375rem;color:var(--color-text-muted);margin-bottom:var(--space-xl)}
.ht-voice-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:700px){.ht-voice-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1200px){.ht-voice-grid{grid-template-columns:repeat(3,1fr)}}
.ht-voice-card{margin:0;background:var(--color-surface);border:1px solid var(--color-border);
border-radius:var(--radius-lg);padding:var(--space-xl);display:flex;flex-direction:column}
.ht-voice-txt{margin:0 0 var(--space-md);padding:0;border:0}
.ht-voice-txt p{font-size:.9375rem;line-height:1.65;color:var(--color-text-2);margin:0}
.ht-voice-meta{margin-top:auto;display:flex;flex-direction:column;gap:2px;
border-top:1px solid var(--color-border-soft);padding-top:var(--space-sm)}
.ht-voice-badge{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ok)}
.ht-voice-item{font-size:.8125rem;color:var(--color-text-faint)}

/* ---------- comparison ---------- */
.ht-cmp-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}
.ht-cmp-tbl{width:100%;border-collapse:collapse;min-width:640px;font-size:.9375rem}
.ht-cmp-tbl th,.ht-cmp-tbl td{padding:var(--space-md) var(--space-lg);text-align:left;
border-bottom:1px solid var(--color-border-soft);vertical-align:top}
.ht-cmp-tbl thead th{font-family:var(--font-heading);font-size:.875rem;font-weight:600;
background:var(--color-bg-alt);color:var(--color-text);white-space:nowrap}
.ht-cmp-tbl tbody th{font-weight:600;color:var(--color-text);width:26%}
.ht-cmp-tbl td{color:var(--color-text-muted)}
.ht-cmp-tbl tr:last-child th,.ht-cmp-tbl tr:last-child td{border-bottom:0}
.ht-cmp-tbl .ht-cmp-mine{background:var(--tint-lavender);color:var(--color-text-2);font-weight:500}
.ht-cmp-tbl thead .ht-cmp-mine{background:var(--color-primary);color:#fff}

/* ---------- fears ---------- */
.ht-risk-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:700px){.ht-risk-grid{grid-template-columns:repeat(2,1fr)}}
.ht-risk-card{display:flex;flex-direction:column;background:var(--color-surface);
border:1px solid var(--color-border);border-left:4px solid var(--color-warm);
border-radius:var(--radius-lg);padding:var(--space-xxl)}
.ht-risk-ico{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;
border-radius:var(--radius-md);background:var(--tint-peach);color:var(--color-warm-deep);margin-bottom:var(--space-md)}
.ht-risk-h{font-size:1.125rem;line-height:1.3;margin-bottom:var(--space-xs)}
.ht-risk-txt{font-size:.9375rem;line-height:1.65;color:var(--color-text-muted);margin-bottom:var(--space-md)}
.ht-risk-tag{margin:auto 0 0;align-self:flex-start;font-size:.75rem;font-weight:600;
letter-spacing:.04em;text-transform:uppercase;color:var(--color-warm-deep);
background:var(--tint-yellow);border-radius:var(--radius-full);padding:5px 12px}
.ht-risk-cta{margin:var(--space-xl) 0 0;font-size:.9375rem;color:var(--color-text-2);
background:var(--tint-mint);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-xl)}
.ht-risk-cta a{color:var(--color-primary);font-weight:600}

/* ---------- timeline ---------- */
.ht-tl-list{list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:640px){.ht-tl-list{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.ht-tl-list{grid-template-columns:repeat(4,1fr)}}
.ht-tl-item{background:var(--color-surface);border:1px solid var(--color-border);
border-top:4px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--space-xl)}
.ht-tl-when{font-size:.8125rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
color:var(--color-primary);margin-bottom:var(--space-xs)}
.ht-tl-txt{font-size:.9375rem;line-height:1.6;color:var(--color-text-muted);margin:0}
.ht-tl-cta{margin:var(--space-xl) 0 0;font-size:.9375rem;color:var(--color-text-2)}
.ht-tl-cta a{color:var(--color-primary);font-weight:600}

/* ---------- faq ---------- */
.ht-faq-list,.ht-faq-more{display:flex;flex-direction:column;gap:var(--space-sm);max-width:64rem}
.ht-faq-more{margin-top:var(--space-sm)}
.ht-faq-itm{background:var(--color-surface);border:1px solid var(--color-border);
border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg)}
.ht-faq-itm>summary{cursor:pointer;list-style:none;font-family:var(--font-heading);
font-size:1.0625rem;font-weight:600;line-height:1.4;color:var(--color-text);
padding-right:var(--space-xxl);position:relative}
.ht-faq-itm>summary::-webkit-details-marker{display:none}
.ht-faq-itm>summary::after{content:"";position:absolute;right:4px;top:.45em;width:9px;height:9px;
border-right:2px solid var(--color-text-faint);border-bottom:2px solid var(--color-text-faint);
transform:rotate(45deg);transition:transform .18s ease}
.ht-faq-itm[open]>summary::after{transform:rotate(-135deg)}
.ht-faq-a{padding-top:var(--space-sm)}
.ht-faq-a p{font-size:.9375rem;line-height:1.7;color:var(--color-text-muted);margin:0}
.ht-faq-toggle{margin-top:var(--space-lg)}

/* ---------- gallery + lightbox ---------- */
.ht-gal-grid{display:grid;grid-template-columns:1fr;gap:var(--space-md)}
@media(min-width:560px){.ht-gal-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.ht-gal-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1200px){.ht-gal-grid{grid-template-columns:repeat(4,1fr)}}
.ht-gal-fig{margin:0;background:var(--color-surface);border:1px solid var(--color-border);
border-radius:var(--radius-lg);overflow:hidden}
.ht-gal-img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;padding:var(--space-sm);cursor:zoom-in}
.ht-gal-cap{font-size:.8125rem;line-height:1.45;color:var(--color-text-muted);
padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-border-soft);margin:0}
.ht-lb{position:fixed;inset:0;z-index:120;background:rgba(7,15,36,.92);
display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-xl)}
.ht-lb-img{max-width:min(92vw,900px);max-height:76vh;border-radius:var(--radius-lg);background:#fff}
.ht-lb-cap{color:var(--color-on-dark);font-size:.9375rem;text-align:center;max-width:60ch;margin:0}
.ht-lb-close{position:absolute;top:var(--space-lg);right:var(--space-lg);width:44px;height:44px;
display:inline-flex;align-items:center;justify-content:center;background:transparent;
border:1px solid rgba(255,255,255,.45);border-radius:var(--radius-md);color:#fff;cursor:pointer}

/* ---------- newsletter ---------- */
.ht-news{position:relative;overflow:hidden;background:var(--color-dark);color:var(--color-on-dark);padding:72px 0}
.ht-news-dots{position:absolute;inset:0;pointer-events:none}
.ht-news-in{position:relative;max-width:44rem;text-align:center}
.ht-news-h{font-size:clamp(1.75rem,3.4vw,2.25rem);line-height:1.2;letter-spacing:-.5px;color:var(--color-on-dark)}
.ht-news-sub{font-size:1.0625rem;line-height:1.55;color:#e8e6ef;margin-bottom:var(--space-xl)}
.ht-news-form{display:flex;flex-direction:column;gap:var(--space-sm);max-width:32rem;margin:0 auto}
.ht-news-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ht-news-input{height:48px;padding:0 var(--space-md);border-radius:var(--radius-md);
border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;
font-family:var(--font-body);font-size:1rem;width:100%}
.ht-news-input::placeholder{color:#a4a097}
.ht-news-input:focus{outline:none;border:2px solid #d6b6f6;background:rgba(255,255,255,.14)}
.ht-news-note{font-size:.8125rem;color:#d0cec9;margin:var(--space-md) 0 0}
.ht-news-msg{margin:var(--space-md) auto 0;max-width:32rem;font-size:.875rem;
border-radius:var(--radius-md);padding:10px 14px;text-align:left}
.ht-news-msg--err{color:#fff;background:rgba(224,49,49,.9);border:1px solid #e03131}
@media(min-width:640px){.ht-news-form{flex-direction:row}.ht-news-form .btn-primary{flex:0 0 auto}}

/* ---------- footer ---------- */
.ht-foot{background:var(--color-dark-deep);color:var(--color-on-dark);padding:var(--space-sec) 0 var(--space-xxl)}
.ht-foot-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xxl)}
@media(min-width:640px){.ht-foot-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.ht-foot-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:var(--space-xxxl)}}
.ht-foot-logo{font-family:var(--font-heading);font-weight:700;font-size:1.375rem;letter-spacing:-.4px;
color:var(--color-on-dark);display:block;margin-bottom:var(--space-sm)}
.ht-foot-tag{font-size:.9375rem;line-height:1.6;color:#d0cec9;max-width:34ch}
.ht-foot-addr{font-style:normal;font-size:.875rem;line-height:1.7;color:#d0cec9;margin-bottom:var(--space-sm)}
.ht-foot-addr a{color:#d0cec9;text-decoration:underline;text-underline-offset:3px}
.ht-foot-hours{font-size:.875rem;line-height:1.7;color:#d0cec9;margin:0}
.ht-foot-h{font-family:var(--font-heading);font-size:.8125rem;font-weight:600;letter-spacing:.09em;
text-transform:uppercase;color:var(--color-on-dark);margin-bottom:var(--space-md)}
.ht-foot-list,.ht-foot-soc{list-style:none;display:flex;flex-direction:column;gap:var(--space-xs)}
.ht-foot-list a,.ht-foot-soc a{font-size:.9375rem;color:#d0cec9;text-decoration:none}
.ht-foot-list a:hover,.ht-foot-soc a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.footer__languages{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-xxl)}
.footer__languages:empty{display:none}
.footer__languages a{font-size:.875rem;color:#d0cec9;text-decoration:none}
.ht-foot-bot{margin-top:var(--space-xxl);padding-top:var(--space-lg);border-top:1px solid rgba(255,255,255,.14)}
.ht-foot-bot p{font-size:.8125rem;line-height:1.6;color:#d0cec9;margin:0 0 var(--space-xs)}
.footer__copyright{font-size:.875rem;color:#fff}
.ht-foot-safety{max-width:80ch}

/* ---------- cookie + sticky ---------- */
.ht-cookie{position:fixed;left:0;right:0;bottom:0;z-index:110;background:rgba(7,15,36,.97);
color:var(--color-on-dark);border-top:1px solid rgba(255,255,255,.16);padding:var(--space-md) 0}
.ht-cookie-in{display:flex;flex-direction:column;gap:var(--space-sm);align-items:flex-start}
.ht-cookie-txt{font-size:.875rem;line-height:1.5;color:#e8e6ef;margin:0}
.ht-cookie-txt a{color:#d6b6f6;text-decoration:underline;text-underline-offset:3px}
.ht-cookie-acts{display:flex;gap:var(--space-xs);flex-shrink:0}
.ht-cookie-acts .btn-secondary{color:#fff;border-color:rgba(255,255,255,.45)}
.ht-cookie-acts .btn-secondary:hover{background:rgba(255,255,255,.12);border-color:#fff}
@media(min-width:768px){.ht-cookie-in{flex-direction:row;align-items:center;justify-content:space-between}}
.ht-sticky{position:fixed;left:0;right:0;bottom:0;z-index:100;
background:rgba(10,21,48,.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
border-top:1px solid rgba(255,255,255,.16);padding:var(--space-sm) 0}
.ht-sticky-in{display:flex;align-items:center;gap:var(--space-md)}
.ht-sticky-txt{font-size:.875rem;color:#e8e6ef;margin:0;flex:1 1 auto}
.ht-sticky-btn{flex:0 0 auto}
.ht-sticky-close{flex:0 0 auto;width:36px;height:36px;display:inline-flex;align-items:center;
justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.35);
border-radius:var(--radius-md);color:#fff;cursor:pointer}
@media(max-width:639px){
.ht-sticky-in{flex-wrap:wrap}
.ht-sticky-txt{flex:1 1 100%;font-size:.8125rem}
.ht-sticky-btn{flex:1 1 auto}
}

/* ---------- inner pages ---------- */
.ht-contact,.ht-story,.ht-legal,.ht-values,.ht-abt-stats{padding-top:var(--space-sec-sm)}
.ht-crumbs{display:flex;flex-wrap:wrap;gap:var(--space-xs);font-size:.8125rem;
color:var(--color-text-faint);margin-bottom:var(--space-sm)}
.ht-crumbs a{color:var(--color-text-muted);text-decoration:none}
.ht-crumbs a:hover{color:var(--color-primary)}
.ht-crumb-sep{color:var(--color-border-strong)}
.ht-back{display:inline-block;font-size:.9375rem;font-weight:500;color:var(--color-primary);
text-decoration:none;margin-bottom:var(--space-lg)}
.ht-back::before{content:"\2190";margin-right:6px}
.ht-contact-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xxxl);align-items:start}
@media(min-width:900px){.ht-contact-grid{grid-template-columns:1.2fr .8fr}}
.ht-contact-form-wrap,.ht-contact-info{background:var(--color-surface);border:1px solid var(--color-border);
border-radius:var(--radius-lg);padding:var(--space-xxl)}
.ht-contact-form{display:flex;flex-direction:column;gap:var(--space-lg)}
.ht-fgroup{display:flex;flex-direction:column;gap:6px}
.ht-flabel{font-size:.875rem;font-weight:500;color:var(--color-text-2)}
.ht-req{color:var(--err)}
.ht-finput,.ht-ftext{width:100%;font-family:var(--font-body);font-size:1rem;color:var(--color-text);
background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);
padding:var(--space-sm) var(--space-md)}
.ht-finput{height:44px}
.ht-ftext{min-height:132px;resize:vertical;line-height:1.55}
.ht-finput:focus,.ht-ftext:focus{outline:none;border:2px solid var(--color-primary);padding:11px 15px}
.ht-fmsg{font-size:.875rem;border-radius:var(--radius-md);padding:10px 14px}
.ht-fmsg--err{color:#c0392b;background:var(--err-bg);border:1px solid var(--err)}
.ht-info-blk{display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-md) 0;
border-bottom:1px solid var(--color-border-soft)}
.ht-info-blk:last-child{border-bottom:0}
.ht-info-blk p{font-size:.9375rem;line-height:1.6;color:var(--color-text-muted);margin:0}
.ht-info-blk a{color:var(--color-primary)}
.ht-info-ico{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;
flex:0 0 auto;border-radius:var(--radius-md);background:var(--tint-sky);color:var(--color-secondary)}
.ht-info-h{font-size:.9375rem;margin-bottom:2px}
.ht-values-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:700px){.ht-values-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.ht-values-grid{grid-template-columns:repeat(4,1fr)}}
.ht-value-card{border-radius:var(--radius-lg);padding:var(--space-xxl);color:var(--color-text-2)}
.ht-value-h{font-size:1.0625rem;line-height:1.3;margin-bottom:var(--space-xs);color:var(--color-text-2)}
.ht-value-txt{font-size:.9375rem;line-height:1.6;margin:0;color:var(--color-text-2)}
.ht-legal-body{max-width:76ch}
.ht-legal-date{font-size:.875rem;color:var(--color-text-faint);margin-bottom:var(--space-xxl)}
.ht-legal-blk{margin-bottom:var(--space-xl)}
.ht-legal-h{font-size:1.1875rem;line-height:1.3;margin-bottom:var(--space-xs)}
.ht-legal-blk p{font-size:1rem;line-height:1.7;color:var(--color-text-muted)}
.ht-legal-blk a{color:var(--color-primary)}
.auto-email{color:var(--color-primary)}

/* ---------- scroll reveal ---------- */
.js-reveal .ht-why-card,.js-reveal .ht-step,.js-reveal .ht-ig-card,.js-reveal .ht-risk-card,
.js-reveal .ht-tl-item,.js-reveal .ht-voice-card,.js-reveal .ht-value-card,.js-reveal .ht-feat-row{
opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.js-reveal .ht-why-card.visible,.js-reveal .ht-step.visible,.js-reveal .ht-ig-card.visible,
.js-reveal .ht-risk-card.visible,.js-reveal .ht-tl-item.visible,.js-reveal .ht-voice-card.visible,
.js-reveal .ht-value-card.visible,.js-reveal .ht-feat-row.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
.js-reveal .ht-why-card,.js-reveal .ht-step,.js-reveal .ht-ig-card,.js-reveal .ht-risk-card,
.js-reveal .ht-tl-item,.js-reveal .ht-voice-card,.js-reveal .ht-value-card,.js-reveal .ht-feat-row{
opacity:1;transform:none;transition:none}
}
@media(min-width:1024px){section{padding:var(--space-sec-lg) 0}}

/* ---------- section wrappers ---------- */
.ht-why,.ht-steps,.ht-feat,.ht-ig,.ht-abt,.ht-voice,.ht-cmp,.ht-risk,.ht-tl,.ht-faq,.ht-gal{
position:relative}
.ht-why .ht-sec-h,.ht-ig .ht-sec-h,.ht-risk .ht-sec-h{max-width:24ch}
.ht-steps .section-subtitle,.ht-tl .section-subtitle{max-width:58ch}
.ht-feat .ht-sec-h,.ht-abt .ht-sec-h,.ht-cmp .ht-sec-h,.ht-voice .ht-sec-h,.ht-faq .ht-sec-h,.ht-gal .ht-sec-h{
max-width:26ch}
.ht-abt{padding-bottom:var(--space-sec)}
.ht-faq .section-subtitle{max-width:60ch}
.ht-faq-q{margin:0}
.ht-gal .section-subtitle{margin-bottom:var(--space-xl)}
.ht-foot-brand{display:flex;flex-direction:column}
.ht-foot-col{display:flex;flex-direction:column}
