/* =============================================================================
   elequate.io premium layer: one file every page links, right before </head>.
   Approved by Ryan 2026-11-14 (premium pass gallery). What it does:
     1. Inter served from our own domain (no Google round trip, no layout swap).
     2. Balanced headlines, no lone last word.
     3. Section labels: plain tracked text led by a short cyan line, no pill.
     4. Tap press on every button and CTA.
     5. Hooks for shared/premium.js: scroll slide-ins, card lift, count-ups,
        the menu returning on scroll up, the article reading bar.
   Everything here is complete at rest. With JS off or reduced motion on, the
   page shows its finished state and simply does not move.
   ============================================================================= */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/shared/fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}

/* 3. labels lose the pill */
.section-label,.feature-label,.hub-eyebrow,.eqfaq-label,.diff-label,.track-stage,.article-category,.post-tag{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important;display:inline-flex!important;align-items:center;gap:10px}
.section-label::before,.feature-label::before,.hub-eyebrow::before,.eqfaq-label::before,.diff-label::before,.track-stage::before,.article-category::before,.post-tag::before{content:"";width:18px;height:2px;border-radius:1px;background:#21C0FF;flex:none}

/* 4. tap press */
:where(a[class*="btn"],button,a[class*="cta"],.nav-sheet-cta){transition:scale .18s cubic-bezier(.3,1.6,.5,1)}
:where(a[class*="btn"],button,a[class*="cta"],.nav-sheet-cta):active{scale:.96;transition-duration:.07s}

/* 5. motion hooks (classes only ever added by premium.js) */
.eqr-armed{opacity:0}
.eq-num{display:inline-block;font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){
  .eq-lift{transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s,border-color .28s}
  .eq-lift:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(10,30,60,.14)}
}
.eq-nav-fixed{position:fixed!important;top:0;left:0;right:0;z-index:1000!important;background:rgba(22,44,78,.9)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding-top:12px!important;padding-bottom:12px!important;transform:translateY(-110%);transition:transform .32s cubic-bezier(.2,.7,.2,1)!important;box-shadow:0 1px 0 rgba(255,255,255,.06)}
.eq-nav-fixed.eq-nav-in{transform:none}
.eq-read{position:fixed;top:0;left:0;height:3px;width:100%;background:#21C0FF;transform-origin:0 50%;transform:scaleX(0);z-index:1001;pointer-events:none}

@media (prefers-reduced-motion:reduce){
  .eqr-armed{opacity:1}
  .eq-nav-fixed{transition:none!important}
  :where(a[class*="btn"],button,a[class*="cta"],.nav-sheet-cta):active{scale:none}
}
