/* ==========================================================================
   Helios Labs replica — SITEWIDE CHROME
   header (announcement strip + nav bar + SHOP mega panel + search overlay),
   mobile drawer, cart drawer, newsletter offer card, footer.
   Geometry measured from source-cdp/pages/home.html + megamenu.html and
   _shots/1440-home-megamenu.png / 390-menu-mobile.png.
   ========================================================================== */

/* ==========================================================================
   HEADER — sticky, 108px total = 36px announcement + 72px nav bar
   ========================================================================== */
.hl-header{position:sticky;top:0;z-index:50;width:100%}

/* ---------- announcement strip (36px) ------------------------------------ */
.hl-announce-slot{min-height:36px}
.hl-announce{position:relative}
.hl-announce__row{
  display:none;align-items:center;justify-content:center;gap:12px;
  height:36px;padding:0 16px;
  background:var(--hl-footer);border-bottom:1px solid var(--hl-hairline);
  transition:background-color .2s;
}
a.hl-announce__row:hover{background:#0b0908}
.hl-announce__row.is-active{display:flex}
.hl-announce__inner{display:flex;align-items:center;gap:10px;min-width:0}
@media (min-width:640px){.hl-announce__inner{gap:12px}}
.hl-announce__chip{
  flex-shrink:0;background:var(--hl-glacier);color:#000;
  font-family:var(--hl-font-mono);font-weight:700;font-size:.54rem;
  line-height:1;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;
}
@media (min-width:640px){.hl-announce__chip{font-size:.58rem}}
.hl-announce__text{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-family:var(--hl-font-mono);font-size:.58rem;letter-spacing:.13em;
  text-transform:uppercase;color:var(--hl-bone-85);
}
@media (min-width:640px){.hl-announce__text{font-size:.64rem}}
.hl-announce__cta{margin-left:8px;font-weight:700;color:var(--hl-glacier)}
.hl-announce__cta .arw{display:inline-block;margin-left:4px;transition:transform .2s}
.hl-announce__row:hover .hl-announce__cta .arw{transform:translateX(2px)}
.hl-announce__dots{
  pointer-events:none;position:absolute;top:0;bottom:0;right:12px;
  display:none;align-items:center;gap:6px;
}
@media (min-width:640px){.hl-announce__dots{display:flex}}
.hl-announce__dots button{
  pointer-events:auto;height:3px;width:12px;padding:0;cursor:pointer;
  background:rgba(140,134,124,.4);transition:background-color .2s;
}
.hl-announce__dots button:hover{background:var(--hl-stone)}
.hl-announce__dots button[aria-current="true"]{background:var(--hl-glacier)}

/* ---------- nav bar ------------------------------------------------------- */
.hl-navbar{position:relative;background:var(--hl-granite)}
.hl-navbar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}
@media (min-width:1024px){.hl-navbar__inner{height:72px}}
.hl-navbar__left{display:flex;align-items:center;gap:24px}
@media (min-width:1024px){.hl-navbar__left{gap:48px}}
.hl-navbar__right{display:flex;align-items:center;gap:6px;color:var(--hl-bone)}
@media (min-width:640px){.hl-navbar__right{gap:12px}}

.hl-burger{display:inline-flex;color:var(--hl-bone);cursor:pointer;padding:0}
@media (min-width:768px){.hl-burger{display:none}}
.hl-burger .ic-6{height:24px;width:24px}

.hl-brand{display:flex;align-items:center;gap:12px}
.hl-brand img{height:28px;width:28px;flex-shrink:0}
@media (min-width:1024px){.hl-brand img{height:32px;width:32px}}
.hl-brand__word{
  font-family:var(--hl-font-condensed);font-size:1.5rem;line-height:1;
  letter-spacing:.04em;text-transform:uppercase;color:var(--hl-bone);
}

.hl-nav{display:none}
@media (min-width:768px){.hl-nav{display:block}}
.hl-nav__list{
  display:flex;align-items:center;gap:20px;margin:0;padding:0;list-style:none;
  font-family:var(--hl-font-body);font-size:.82rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--hl-bone-90);
}
@media (min-width:1024px){.hl-nav__list{gap:24px}}
.hl-nav__item{position:relative;display:flex;align-items:center;gap:20px}
@media (min-width:1024px){.hl-nav__item{gap:24px}}
.hl-nav__item--shop{gap:0}
.hl-nav__item > a{display:flex;align-items:center;gap:6px;padding:4px 0;transition:color .2s}
.hl-nav__item > a:hover{color:var(--hl-glacier)}
.hl-nav__item--shop > a:hover{color:var(--hl-bone)}
.hl-nav__ring{
  flex-shrink:0;height:6px;width:6px;border-radius:9999px;
  border:1px solid var(--hl-glacier);
}

.hl-iconbtn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  border-radius:9999px;padding:8px;cursor:pointer;transition:color .2s;color:var(--hl-bone);
}
.hl-iconbtn:hover{color:var(--hl-glacier)}
.hl-iconbtn .ic{height:1.35rem;width:1.35rem}
.hl-cart-count{
  position:absolute;top:0;right:0;min-width:16px;height:16px;padding:0 4px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:9999px;background:var(--hl-glacier);color:#000;
  font-family:var(--hl-font-mono);font-size:.58rem;font-weight:700;line-height:1;
}
.hl-cart-count.is-empty{display:none}
.hl-drawer__title .hl-cart-count{
  position:static;margin-left:8px;background:none;color:var(--hl-glacier);
  font-size:.7rem;letter-spacing:.1em;padding:0;height:auto;
}
.hl-drawer__title .hl-cart-count.is-empty{display:inline-flex}

/* ---------- SHOP mega panel ---------------------------------------------- */
.hl-mega{
  position:absolute;left:0;top:100%;z-index:30;padding-top:12px;
  visibility:hidden;opacity:0;transform:translateY(-4px);
  transition:opacity .2s,transform .2s,visibility .2s;
}
.hl-nav__item--shop.is-open .hl-mega{visibility:visible;opacity:1;transform:none}
.hl-mega__panel{
  width:min(54rem,calc(100vw - 18rem));
  border:1px solid var(--hl-hairline);background:var(--hl-layer);
  box-shadow:var(--hl-shadow-panel);
}
.hl-mega__head{
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--hl-hairline);padding:14px 24px;
}
.hl-mega__eyebrow{
  margin:0;font-family:var(--hl-font-mono);font-size:.62rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--hl-stone);
}
.hl-mega__all{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--hl-font-mono);font-size:.66rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hl-glacier);transition:color .2s;
}
.hl-mega__all:hover{color:var(--hl-glacier-hover)}
.hl-mega__all .arw{transition:transform .2s}
.hl-mega__all:hover .arw{transform:translateX(2px)}
.hl-mega__body{display:grid;grid-template-columns:1fr 16rem}
.hl-mega__cols{columns:2;column-gap:32px;column-fill:balance;padding:24px}
.hl-mega__group{break-inside:avoid;margin-bottom:14px}
.hl-mega__cat{
  display:block;padding-bottom:10px;border-bottom:1px solid var(--hl-hairline);
  font-family:var(--hl-font-condensed);font-size:1rem;line-height:1;
  letter-spacing:.02em;text-transform:uppercase;color:var(--hl-bone);
  transition:color .2s;
}
.hl-mega__cat:hover{color:var(--hl-glacier)}
.hl-mega__subs{list-style:none;margin:12px 0 0;padding:0}
.hl-mega__subs li{margin-bottom:6px}
.hl-mega__subs a{
  display:flex;align-items:center;gap:8px;
  font-family:var(--hl-font-mono);font-size:.62rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hl-stone);transition:color .2s;
}
.hl-mega__subs a:hover{color:var(--hl-glacier)}
.hl-mega__subs .dash{color:var(--hl-faint)}
.hl-mega__promos{
  display:flex;flex-direction:column;gap:1px;
  border-left:1px solid var(--hl-hairline);background:var(--hl-hairline);
}

/* promo tiles — shared by the mega panel and the mobile drawer */
.hl-promo{
  position:relative;display:flex;flex:1;flex-direction:column;justify-content:flex-end;
  overflow:hidden;background:var(--hl-layer);padding:20px 128px 20px 20px;
  transition:background-color .2s;
}
.hl-promo:hover{background:rgba(255,255,255,.03)}
.hl-promo__art{
  pointer-events:none;position:absolute;top:0;bottom:0;right:0;width:144px;
  display:flex;align-items:center;justify-content:center;opacity:.8;
}
.hl-promo__art img{height:128px;width:128px;object-fit:contain;mix-blend-mode:screen}
.hl-promo__eyebrow{
  position:relative;font-family:var(--hl-font-mono);font-size:.58rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--hl-stone);
}
.hl-promo__eyebrow.is-accent{color:var(--hl-glacier)}
.hl-promo__title{
  position:relative;display:block;margin-top:12px;max-width:7.5rem;
  font-family:var(--hl-font-condensed);font-size:1.55rem;line-height:1.04;
  text-transform:uppercase;color:var(--hl-bone);
}
.hl-promo__cta{
  position:relative;display:inline-flex;align-items:center;gap:4px;margin-top:10px;
  font-family:var(--hl-font-mono);font-size:.62rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hl-glacier);
}
.hl-promo__cta .arw{transition:transform .2s}
.hl-promo:hover .hl-promo__cta .arw{transform:translateX(2px)}
/* small variant for the mobile drawer */
.hl-promo--sm{display:block;padding:1px;background:var(--hl-hairline)}
.hl-promo--sm:hover{background:var(--hl-hairline)}
.hl-promo--sm .hl-promo__inner{
  position:relative;display:flex;height:5.5rem;flex-direction:column;justify-content:center;
  overflow:hidden;background:var(--hl-layer);padding:16px 112px 16px 16px;
}
.hl-promo--sm .hl-promo__art{width:112px}
.hl-promo--sm .hl-promo__art img{height:76px;width:76px}
.hl-promo--sm .hl-promo__eyebrow{font-size:.55rem}
.hl-promo--sm .hl-promo__title{margin-top:6px;font-size:1.15rem;line-height:1.02}
.hl-promo--sm .hl-promo__cta{margin-top:4px;font-size:.58rem}

/* ---------- search overlay ------------------------------------------------ */
.hl-search{
  position:absolute;left:0;top:100%;width:100%;
  border-bottom:1px solid var(--hl-hairline);
  background:rgba(5,5,4,.95);backdrop-filter:blur(12px);
  pointer-events:none;opacity:0;transform:translateY(-8px);
  transition:opacity .2s,transform .2s;
}
.hl-search.is-open{pointer-events:auto;opacity:1;transform:none}
.hl-search__inner{padding-top:20px;padding-bottom:20px}
.hl-search__form{
  display:flex;align-items:center;gap:12px;
  border-bottom:1px solid rgba(140,134,124,.3);padding-bottom:12px;
}
.hl-search__form .ic{height:20px;width:20px;flex-shrink:0;color:var(--hl-stone)}
.hl-search__form input[type="search"]{
  width:100%;background:transparent;border:0;
  font-family:var(--hl-font-mono);font-size:.875rem;letter-spacing:.04em;color:var(--hl-bone);
}
.hl-search__form input::placeholder{color:var(--hl-stone)}
.hl-search__form input:focus{outline:none}
.hl-search__close{flex-shrink:0;border-radius:9999px;padding:4px;color:var(--hl-stone);cursor:pointer;transition:color .2s}
.hl-search__close:hover{color:var(--hl-bone)}
.hl-search__close .ic-5{height:20px;width:20px}

/* ---------- the orange navwave hairline ---------------------------------- */
.hl-navwave{
  pointer-events:none;position:absolute;left:0;right:0;top:100%;z-index:0;height:16px;
}
@media (min-width:1024px){.hl-navwave{height:20px}}
.hl-navwave svg{height:100%;width:100%;display:block;overflow:visible}

/* ==========================================================================
   OVERLAYS — mobile drawer + cart drawer
   ========================================================================== */
.hl-overlay{position:fixed;inset:0;z-index:60;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .3s}
.hl-overlay.is-open{opacity:1;pointer-events:auto}
.hl-overlay--menu{display:block}
@media (min-width:768px){.hl-overlay--menu{display:none}}
.hl-overlay__scrim{position:absolute;inset:0;height:100%;width:100%;cursor:default;background:rgba(0,0,0,.55);border:0}
.hl-overlay__scrim--dark{background:rgba(0,0,0,.7);backdrop-filter:blur(2px)}

.hl-drawer{
  position:absolute;top:0;height:100%;display:flex;flex-direction:column;
  background:var(--hl-granite);transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.hl-drawer--left{left:0;width:88vw;max-width:24rem;border-right:1px solid var(--hl-hairline);transform:translateX(-100%);box-shadow:0 25px 50px -12px rgba(0,0,0,.6)}
.hl-drawer--right{right:0;width:92vw;max-width:26rem;border-left:1px solid var(--hl-hairline);transform:translateX(100%)}
.hl-overlay.is-open .hl-drawer{transform:none}

.hl-drawer__head{
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--hl-hairline);padding:16px 20px;
}
.hl-drawer__head--cart{align-items:flex-start}
.hl-drawer__eyebrow{
  margin:0;font-family:var(--hl-font-mono);font-size:.62rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--hl-stone);
}
.hl-drawer__title{
  margin:4px 0 0;font-family:var(--hl-font-condensed);font-size:1.5rem;line-height:1;
  letter-spacing:.01em;text-transform:uppercase;color:var(--hl-bone);
}
.hl-drawer__x{border-radius:9999px;padding:6px;color:var(--hl-stone);cursor:pointer;transition:color .2s}
.hl-drawer__x:hover{color:var(--hl-bone)}
.hl-drawer__x .ic-5{height:20px;width:20px}

.hl-drawer__body{
  flex:1;overflow-y:auto;padding:24px 20px;
  font-family:var(--hl-font-mono);font-size:.875rem;letter-spacing:.14em;color:var(--hl-bone);
}
.hl-drawer__rangehead{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}
.hl-drawer__rangehead p{margin:0;font-family:var(--hl-font-mono);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--hl-stone)}
.hl-drawer__rangehead a{display:inline-flex;align-items:center;gap:4px;font-family:var(--hl-font-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--hl-glacier)}
.hl-drawer__tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;margin:0 0 28px;padding:0}
.hl-tile{display:block;padding:1px;background:var(--hl-hairline)}
.hl-tile__inner{
  position:relative;display:flex;height:4.75rem;flex-direction:column;justify-content:space-between;
  overflow:hidden;background:var(--hl-panel);padding:10px;
}
.hl-tile__art{
  pointer-events:none;position:absolute;top:0;bottom:0;right:-4px;width:58%;
  background-size:contain;background-position:right center;background-repeat:no-repeat;
  opacity:.4;mix-blend-mode:screen;
}
.hl-tile__art--flame{right:-8px;bottom:-12%;top:auto;height:110%;width:56%;
  background-position:right bottom;opacity:.24;mix-blend-mode:normal}
.hl-tile__fade{pointer-events:none;position:absolute;inset:0;
  background:linear-gradient(to right,var(--hl-panel) 0%,rgba(11,10,10,.8) 55%,transparent 100%)}
.hl-tile__count{position:relative;font-family:var(--hl-font-mono);font-size:.56rem;letter-spacing:.16em;color:var(--hl-stone);font-variant-numeric:tabular-nums}
.hl-tile__name{position:relative;font-family:var(--hl-font-condensed);font-size:.9rem;line-height:.95;letter-spacing:.02em;text-transform:uppercase;color:var(--hl-bone)}
/* the sub-menu is rendered so a drawer JS can derive it; hidden by default */
.hl-drawer__subs{display:none}
.hl-drawer__promos{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}
.hl-drawer__links{list-style:none;margin:0;padding:0}
.hl-drawer__links li + li{margin-top:4px}
.hl-drawer__links a{display:flex;align-items:center;gap:10px;padding:8px 0;color:var(--hl-bone);transition:color .2s}
.hl-drawer__links a:hover{color:var(--hl-glacier)}
.hl-drawer__links a.is-current{color:var(--hl-glacier)}
.hl-drawer__links .bar{height:1.05em;width:2px;flex-shrink:0;background:transparent}
.hl-drawer__links a.is-current .bar{background:var(--hl-glacier)}

/* ---------- cart drawer body (WooCommerce mini-cart, re-skinned) ---------- */
.hl-drawer__cart{flex:1;display:flex;flex-direction:column;overflow:hidden}
.hl-drawer__cart .woocommerce-mini-cart{
  flex:1;overflow-y:auto;list-style:none;margin:0;padding:0 20px;
}
.hl-drawer__cart .woocommerce-mini-cart-item{
  display:flex;align-items:flex-start;gap:12px;position:relative;
  border-bottom:1px solid var(--hl-hairline);padding:16px 0;
}
.hl-drawer__cart .woocommerce-mini-cart-item img{width:56px;height:auto;flex-shrink:0;mix-blend-mode:screen}
.hl-drawer__cart .woocommerce-mini-cart-item a{
  font-family:var(--hl-font-mono);font-size:.8rem;text-transform:uppercase;
  letter-spacing:.02em;color:var(--hl-bone);
}
.hl-drawer__cart .woocommerce-mini-cart-item .quantity{
  display:block;font-family:var(--hl-font-mono);font-size:.7rem;color:var(--hl-stone);
}
.hl-drawer__cart .woocommerce-mini-cart-item .remove_from_cart_button{
  position:absolute;top:16px;right:0;color:var(--hl-stone);font-size:1rem;line-height:1;
}
.hl-drawer__cart .woocommerce-mini-cart-item .remove_from_cart_button:hover{color:var(--hl-glacier)}
.hl-drawer__cart .woocommerce-mini-cart__empty-message{
  flex:1;display:flex;align-items:center;justify-content:center;margin:0;padding:0 32px;
  text-align:center;font-family:var(--hl-font-mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--hl-stone);
}
.hl-drawer__cart .woocommerce-mini-cart__total{
  display:flex;align-items:baseline;justify-content:space-between;
  border-top:1px solid var(--hl-hairline);margin:0;padding:16px 20px 0;
  font-family:var(--hl-font-mono);font-size:.66rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--hl-stone);
}
.hl-drawer__cart .woocommerce-mini-cart__total .amount,
.hl-drawer__cart .woocommerce-mini-cart__total strong + .amount{
  font-family:var(--hl-font-condensed);font-size:1.75rem;line-height:1;
  color:var(--hl-bone);font-variant-numeric:tabular-nums;letter-spacing:0;
}
.hl-drawer__cart .woocommerce-mini-cart__buttons{
  display:flex;flex-direction:column;gap:12px;margin:0;padding:16px 20px 20px;
}
.hl-drawer__cart .woocommerce-mini-cart__buttons a{
  display:flex;align-items:center;justify-content:center;
  padding:14px 24px;font-family:var(--hl-font-condensed);font-size:1.125rem;
  line-height:1;letter-spacing:.04em;text-transform:uppercase;
  background:var(--hl-glacier);color:#000;transition:background-color .2s;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
}
.hl-drawer__cart .woocommerce-mini-cart__buttons a:hover{background:var(--hl-glacier-hover)}
.hl-drawer__cart .woocommerce-mini-cart__buttons a:not(.checkout){
  background:transparent;color:var(--hl-glacier);border:1px solid var(--hl-hairline);clip-path:none;
}

/* ==========================================================================
   NEWSLETTER OFFER — bottom-right corner card, 4s delay
   ========================================================================== */
/* The popup stays in the DOM after it is dismissed / already seen. Without
   pointer-events:none the (opacity 0) card kept intercepting clicks over a
   384x508 region at the bottom-right of EVERY page, forever, for every
   returning visitor. Measured: elementFromPoint(1200,820) returned
   FORM.hl-offer__form. Only .is-open takes pointer events. */
.hl-offer{position:fixed;left:16px;right:16px;bottom:16px;z-index:90;display:flex;justify-content:center;pointer-events:none}
.hl-offer.is-open{pointer-events:auto}
@media (min-width:640px){.hl-offer{left:auto;right:24px;bottom:24px;justify-content:flex-end}}
.hl-offer__card{
  position:relative;width:100%;max-width:24rem;
  border-radius:var(--hl-r-xl);border:1px solid rgba(140,134,124,.25);
  background:var(--hl-layer);padding:20px;box-shadow:0 25px 50px -12px rgba(0,0,0,.75);
  transform:translateY(16px);opacity:0;visibility:hidden;
  transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .4s,visibility 0s linear .4s;
}
@media (min-width:640px){.hl-offer__card{padding:28px}}
.hl-offer.is-open .hl-offer__card{transform:none;opacity:1;visibility:visible;transition-delay:0s}
.hl-offer__x{
  position:absolute;top:12px;right:12px;border-radius:5px;padding:6px;
  font-family:var(--hl-font-mono);font-size:1.125rem;line-height:1;
  color:var(--hl-stone);cursor:pointer;transition:color .2s;
}
.hl-offer__x:hover{color:var(--hl-bone)}
.hl-offer__eyebrow{margin:0;font-family:var(--hl-font-mono);font-weight:600;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hl-glacier)}
.hl-offer__title{margin:8px 0 0;font-family:var(--hl-font-condensed);font-size:1.55rem;line-height:1.05;letter-spacing:.01em;text-transform:uppercase;color:var(--hl-bone)}
@media (min-width:640px){.hl-offer__title{margin-top:12px;font-size:2.1rem}}
.hl-offer__lede{margin:8px 0 0;font-family:var(--hl-font-body);font-size:.8rem;line-height:1.625;color:var(--hl-stone)}
@media (min-width:640px){.hl-offer__lede{margin-top:12px;font-size:.875rem}}
.hl-offer__form{margin-top:16px}
@media (min-width:640px){.hl-offer__form{margin-top:20px}}
.hl-offer__form input[type="email"]{
  width:100%;border-radius:5px;border:1px solid rgba(140,134,124,.3);
  background:rgba(5,5,4,.4);padding:10px 16px;
  font-family:var(--hl-font-mono);font-size:.875rem;color:var(--hl-bone);
}
.hl-offer__form input[type="email"]::placeholder{color:var(--hl-stone)}
.hl-offer__form input[type="email"]:focus{border-color:var(--hl-glacier);outline:none}
.hl-offer__topics{margin:12px 0 0;padding:0;border:0}
.hl-offer__topics legend{padding:0;font-family:var(--hl-font-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--hl-stone)}
.hl-offer__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
/* Source chip: `rounded-[5px] border px-2.5 py-1.5 font-mono text-[0.6rem]
   tracking-[0.08em]`. hl-chip-sm's 4px/8px + .06em made every chip ~5px
   narrower, which re-wrapped the 4 topics 3+1 instead of the source's 2+2. */
.hl-offer__chips .hl-chip{border-radius:5px;border-color:rgba(140,134,124,.3);font-size:.6rem;font-weight:400;letter-spacing:.08em;padding:6px 10px}
.hl-offer__hint{margin:6px 0 0;font-family:var(--hl-font-mono);font-size:.56rem;letter-spacing:.08em;color:var(--hl-faint)}
.hl-offer__submit{margin-top:10px;padding:14px 24px;font-size:1.125rem}
@media (min-width:640px){.hl-offer__submit{margin-top:12px}}
.hl-offer__msg{margin:8px 0 0;min-height:1rem;font-family:var(--hl-font-mono);font-size:.7rem;letter-spacing:.06em;color:var(--hl-stone)}
.hl-offer__no{margin-top:4px;font-family:var(--hl-font-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl-stone);cursor:pointer;transition:color .2s}
.hl-offer__no:hover{color:var(--hl-bone);text-decoration:underline;text-underline-offset:4px}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.hl-footer{
  position:relative;isolation:isolate;overflow:hidden;
  border-top:1px solid var(--hl-hairline);background:var(--hl-footer);color:var(--hl-bone);
}
.hl-footer__ring{
  pointer-events:none;position:absolute;left:50%;top:50%;aspect-ratio:1;
  transform:translate(-50%,-50%);border-radius:9999px;
}
.hl-footer__ring--1{
  width:min(1180px,120%);border:1px solid rgba(231,164,56,.25);
  box-shadow:0 0 26px rgba(231,164,56,.09),inset 0 0 22px rgba(231,164,56,.05);
}
.hl-footer__ring--2{width:min(1020px,104%);border:1px solid rgba(231,164,56,.08)}
.hl-corner{pointer-events:none;position:absolute;z-index:0;user-select:none;width:17vw;max-width:280px;opacity:.9}
.hl-corner--tl{left:0;top:0}
.hl-corner--tr{right:0;top:0}
.hl-corner--bl{left:0;bottom:0}
.hl-corner--br{right:0;bottom:0}
.hl-footer__inner{position:relative;z-index:10;padding-top:56px;padding-bottom:56px}
@media (min-width:1024px){.hl-footer__inner{padding-top:64px;padding-bottom:64px}}

.hl-footer__signup{max-width:36rem}
.hl-footer__signup-lede{margin:0;font-family:var(--hl-font-body);font-size:1.125rem;line-height:1.625;color:var(--hl-bone-75)}
@media (min-width:640px){.hl-footer__signup-lede{font-size:1.25rem}}
.hl-nlform{margin-top:24px;max-width:36rem}
.hl-nlform__field{
  display:flex;align-items:center;gap:8px;border-radius:var(--hl-r-lg);
  border:1px solid var(--hl-hairline);padding-left:20px;padding-right:8px;
  transition:border-color .2s;
}
.hl-nlform__field:focus-within{border-color:var(--hl-glacier)}
.hl-nlform__field input{
  width:100%;background:transparent;border:0;padding:14px 0;
  font-family:var(--hl-font-mono);font-size:.75rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hl-bone);
}
.hl-nlform__field input::placeholder{color:var(--hl-stone)}
.hl-nlform__field input:focus{outline:none}
.hl-nlform__field button{
  flex-shrink:0;padding:8px 12px;color:var(--hl-glacier);cursor:pointer;
  font-family:var(--hl-font-mono);font-size:1rem;transition:color .2s;
}
.hl-nlform__field button:hover{color:var(--hl-glacier-hover)}
.hl-nlform__msg{margin:8px 0 0;min-height:1rem;font-family:var(--hl-font-mono);font-size:.7rem;color:var(--hl-stone)}

.hl-footer__rule{height:1px;background:var(--hl-hairline);margin:48px 0}
.hl-footer__rule--short{margin:28px 0;max-width:24rem}

.hl-footer__grid{display:grid;grid-template-columns:1fr;gap:56px}
@media (min-width:1024px){.hl-footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.9fr);gap:80px}}
.hl-footer__brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hl-footer__brand img{height:128px;width:128px;object-fit:contain}
.hl-footer__wordmark{
  font-family:var(--hl-font-condensed);font-size:2.25rem;line-height:1;
  letter-spacing:.02em;text-transform:uppercase;color:var(--hl-glacier);
}
.hl-footer__blurb{margin:24px 0 0;max-width:24rem;font-family:var(--hl-font-body);font-size:.95rem;line-height:1.6;color:var(--hl-stone)}
.hl-footer__contact{margin:0}
.hl-footer__contact > div{display:flex;align-items:baseline;gap:12px;margin-bottom:12px}
.hl-footer__contact > div:last-child{margin-bottom:0}
.hl-footer__contact dt{
  flex:0 0 5.5rem;width:5.5rem;
  font-family:var(--hl-font-mono);font-size:.8rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hl-stone);
}
.hl-footer__contact span[aria-hidden]{color:var(--hl-faint)}
.hl-footer__contact dd{margin:0;font-family:var(--hl-font-mono);font-size:.8rem;letter-spacing:.06em;color:var(--hl-bone)}
.hl-footer__contact dd a{color:var(--hl-bone);transition:color .2s}
.hl-footer__contact dd a:hover{color:var(--hl-glacier)}

.hl-footer__navs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
@media (min-width:768px){.hl-footer__navs{grid-template-columns:repeat(4,minmax(0,1fr))}}
.hl-footer__nav h3{
  margin:0;font-family:var(--hl-font-mono);font-weight:600;font-size:.72rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--hl-bone);
}
/* Source: `<span class="mt-2.5 block h-px w-7 bg-glacier">` under every
   column heading, then `<ul class="mt-5 space-y-3.5">`. Measured link pitch
   at 1440 is 38px (source) — li line-box 26 + 12 margin. */
.hl-footer__nav .rule{display:block;height:1px;width:28px;margin-top:10px;background:var(--hl-glacier)}
.hl-footer__nav ul{list-style:none;margin:20px 0 0;padding:0}
.hl-footer__nav li{margin-bottom:12px}
.hl-footer__nav li:last-child{margin-bottom:0}
.hl-footer__nav a{
  font-family:var(--hl-font-body);font-size:.95rem;line-height:1.5;
  color:var(--hl-bone-80);transition:color .2s;
}
.hl-footer__nav a:hover{color:var(--hl-glacier)}

.hl-footer__bottom{display:flex;flex-direction:column;gap:20px}
@media (min-width:1024px){.hl-footer__bottom{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.hl-footer__legalese p{margin:0 0 6px;font-family:var(--hl-font-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl-stone)}
.hl-footer__legalese p + p{text-transform:none;letter-spacing:.02em;color:var(--hl-faint)}
.hl-footer__meta{display:flex;flex-direction:column;gap:14px}
@media (min-width:1024px){.hl-footer__meta{align-items:flex-end}}
.hl-footer__coins{display:flex;gap:8px}
.hl-coin{
  display:inline-flex;align-items:center;justify-content:center;
  height:30px;width:30px;background:var(--hl-layer);
  border:0;color:var(--hl-stone);transition:color .2s;
}
.hl-coin:hover{color:var(--hl-glacier)}
.hl-coin svg{height:20px;width:20px}
.hl-footer__legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-family:var(--hl-font-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}
.hl-footer__legal a{color:var(--hl-stone);transition:color .2s}
.hl-footer__legal a:hover{color:var(--hl-glacier)}
.hl-footer__legal .sep{color:var(--hl-faint)}

/* ==========================================================================
   SHARED PAGE / PROSE SHELL (used by page.php, singular.php, the SEO zone)
   ========================================================================== */
.hl-page{padding-top:56px;padding-bottom:56px}
@media (min-width:1024px){.hl-page{padding-top:80px;padding-bottom:80px}}
.hl-page__title{margin-bottom:24px}
.hl-page__glow{left:-14rem;top:-14rem}
.hl-page__thumb{margin-bottom:24px}
.hl-prose{max-width:70ch;font-family:var(--hl-font-body);font-size:1rem;line-height:1.75;color:var(--hl-stone)}
.hl-prose h2{
  margin:0 0 20px;font-family:var(--hl-font-condensed);font-weight:400;
  font-size:clamp(1.75rem,3.4vw,2.75rem);line-height:1;letter-spacing:.01em;
  text-transform:uppercase;color:var(--hl-glacier);
}
.hl-prose h3{
  margin:32px 0 12px;font-family:var(--hl-font-condensed);font-weight:400;
  font-size:1.35rem;line-height:1.1;text-transform:uppercase;color:var(--hl-bone);
}
.hl-prose p{margin:0 0 18px}
.hl-prose a{color:var(--hl-glacier);text-decoration:underline;text-underline-offset:3px}
.hl-prose a:hover{color:var(--hl-glacier-hover)}
.hl-prose strong{color:var(--hl-bone);font-weight:600}
.hl-prose ul,.hl-prose ol{margin:0 0 18px;padding-left:20px}
.hl-prose li{margin-bottom:8px}
.hl-searchform{display:flex;gap:8px;align-items:center}
.hl-searchform input[type="search"]{
  flex:1;background:transparent;border:1px solid var(--hl-hairline);padding:12px 16px;
  font-family:var(--hl-font-mono);font-size:.8rem;color:var(--hl-bone);
}
.hl-searchform input[type="search"]:focus{border-color:var(--hl-glacier);outline:none}
