/* ═══════════════════════════════════════════════════════════════════════════
   Engineering Hardware 2.0 — industrial catalog skin.

   Loaded after style.css. The 1.x theme already draws every component from a
   small set of tokens, so most of the new look is done by re-pointing those
   tokens (navy + signal orange, Barlow / Barlow Condensed) rather than by
   rewriting 86 kB of component CSS. Markup, ids and the navigation are
   untouched: the header, the drawer, the secondary mega-nav and every plugin
   module keep working exactly as before.

   The fonts are bundled (assets/fonts, SIL OFL), so the Google Fonts request
   the 1.x theme made for Inter is gone.
   ═══════════════════════════════════════════════════════════════════════════ */

@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/barlow-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/barlow-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/barlow-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/barlow-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/barlow-condensed-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/barlow-condensed-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/barlow-condensed-latin-700-normal.woff2") format("woff2")}

/* ── Tokens ─────────────────────────────────────────────────────────────── */
html:root{
  --eh-navy:#16181f;
  --eh-navy-2:#232733;
  --eh-navy-3:#2e3342;
  --eh-night:#0f1724;
  --eh-orange:#e2672b;
  --eh-orange-2:#c4521c;
  --eh-grey:#f4f5f7;
  --eh-line:#e3e7ed;
  --eh-ink:#16181f;
  --eh-ink-2:#3a4352;
  --eh-ink-3:#677084;
  --eh-font:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;
  --eh-head:"Barlow Condensed","Barlow","Arial Narrow",sans-serif;

  /* 1.x theme tokens, re-pointed */
  --ehw-primary:var(--eh-navy);
  --ehw-primary-2:var(--eh-navy-3);
  --ehw-primary-container:var(--eh-navy-2);
  --ehw-on-primary-container:#9aa3b5;
  --ehw-accent:var(--eh-orange);
  --ehw-accent-btn:var(--eh-orange-2);
  --ehw-accent-dim:var(--eh-orange-2);
  --ehw-accent-soft:#f6a77c;
  --ehw-ink:var(--eh-ink);
  --ehw-ink-2:var(--eh-ink-2);
  --ehw-muted:var(--eh-ink-3);
  --ehw-bg:var(--eh-grey);
  --ehw-surface-1:#f1f3f6;
  --ehw-line:var(--eh-line);
  --ehw-line-soft:#d6dbe3;
  --ehw-r:6px;
  --ehw-r-md:8px;
  --ehw-shadow-overlay:0 24px 48px -20px rgba(10,16,26,.32);

  /* Plugin tokens (fastener-finder, materials, applications, SEO guides,
     fastener-products). Declared on html:root so they win over the plugins'
     own :root blocks whatever order the stylesheets print in. */
  --fff-primary:var(--eh-navy);
  --fff-primary-2:var(--eh-navy-3);
  --fff-accent:var(--eh-orange);
  --fff-accent-ink:#b4491a;
  --fff-ink:var(--eh-ink);
  --fff-muted:var(--eh-ink-3);
  --fff-line:var(--eh-line);
  --fff-bg:var(--eh-grey);
  --fff-radius:6px;
  --eht-navy:var(--eh-navy);
  --eht-navy-2:var(--eh-navy-2);
  --eht-accent:var(--eh-orange);
  --eht-accent-2:var(--eh-orange-2);
  --eht-grey:var(--eh-grey);
  --eht-line:var(--eh-line);
  --eht-ink:var(--eh-ink);
  --eht-ink-2:var(--eh-ink-2);
  --eht-ink-3:var(--eh-ink-3);
  --eht-radius:6px;
  --eht-font-head:var(--eh-head);
  --eht-sticky:calc(var(--ehw-chrome-h, var(--ehw-nav-h, 72px)) + 8px);
}

/* ── Base type ──────────────────────────────────────────────────────────── */
body{font-family:var(--eh-font);color:var(--eh-ink-2);font-size:16px}
h1,h2,.ehw-page-title,.ehw-section-head h2,.ehw-phead h1,.ehw-hero h1{font-family:var(--eh-head);letter-spacing:.005em;color:var(--eh-ink)}
.ehw-phead h1,.ehw-hero h1,.eh-band h2{color:#fff}
h1,h2{font-weight:700}
h3,h4{color:var(--eh-ink)}
a{color:var(--eh-navy)}
a:hover{color:var(--eh-orange)}
::selection{background:var(--eh-orange);color:#fff}
:focus-visible{outline:2px solid var(--eh-orange);outline-offset:2px}
.ehw-container{max-width:1280px}
.ehw-eyebrow{color:var(--eh-orange);font-size:13px;letter-spacing:.14em}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.ehw-btn{border-radius:6px;font-weight:600;font-size:15px;padding:11px 22px;transition:background .2s,color .2s,border-color .2s,transform .2s}
.ehw-btn-primary{background:var(--eh-orange);color:#fff;border:1px solid var(--eh-orange)}
.ehw-btn-primary:hover{background:var(--eh-orange-2);border-color:var(--eh-orange-2);color:#fff}
.ehw-btn-outline{border:1px solid #c9d0da;color:var(--eh-navy);background:transparent}
.ehw-btn-outline:hover{background:var(--eh-navy);color:#fff;border-color:var(--eh-navy)}
.ehw-btn-on-dark{color:#fff;border-color:rgba(255,255,255,.45)}
.ehw-btn-on-dark:hover{background:#fff;color:var(--eh-navy);border-color:#fff}
.ehw-btn-sm{padding:8px 16px;font-size:14px}

/* ── Top bar + header (same markup as 1.x, dark industrial bar) ─────────── */
.ehw-topbar{background:var(--eh-night);color:rgba(255,255,255,.72)}
.ehw-topbar a{color:rgba(255,255,255,.86)}
.ehw-topbar a:hover{color:var(--eh-orange)}
.ehw-header{background:var(--eh-navy);border-bottom:0;backdrop-filter:none;box-shadow:0 1px 0 rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.18)}
.ehw-header.is-scrolled{box-shadow:0 1px 0 rgba(255,255,255,.06),0 10px 28px rgba(0,0,0,.28)}
.ehw-logo a{color:#fff;font-family:var(--eh-head);font-size:26px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}
.ehw-logo a:hover{color:#fff}
.ehw-logo .ehw-logo-mark{background:var(--eh-orange);border-radius:5px}
.ehw-nav-menu>li>a{position:relative;color:rgba(255,255,255,.92);font-family:var(--eh-head);font-size:17px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border-radius:0;padding:24px 10px}
.ehw-nav-menu>li>a::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:var(--eh-orange);transform:scaleX(0);transition:transform .25s}
.ehw-nav-menu>li>a:hover,.ehw-nav-menu>li.current-menu-item>a,.ehw-nav-menu>li.current-menu-ancestor>a{background:transparent;color:#fff}
.ehw-nav-menu>li:hover>a::after,.ehw-nav-menu>li.current-menu-item>a::after,.ehw-nav-menu>li.current-menu-ancestor>a::after{transform:scaleX(1)}
.ehw-nav-menu .sub-menu{border:0;border-top:3px solid var(--eh-orange);border-radius:0 0 6px 6px;box-shadow:0 16px 34px rgba(0,0,0,.2);padding:8px 0}
.ehw-nav-menu .sub-menu a{color:var(--eh-ink-2);padding:8px 18px;font-family:var(--eh-font);text-transform:none;letter-spacing:0;font-size:15px}
.ehw-nav-menu .sub-menu a:hover{background:var(--eh-grey);color:var(--eh-orange)}
.ehw-header-actions .ehw-btn-primary{padding:11px 18px}
.ehw-ham{background:transparent;border-color:rgba(255,255,255,.25)}
.ehw-ham span{background:#fff}
.ehw-drawer-head{background:var(--eh-navy);color:#fff;border-bottom:0}
.ehw-drawer-logo{font-family:var(--eh-head);text-transform:uppercase;letter-spacing:.04em;font-size:20px}
.ehw-drawer-close{color:#fff}
.ehw-drawer-menu a{font-family:var(--eh-head);font-size:18px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--eh-line);border-radius:0}
.ehw-drawer-menu a:hover{color:var(--eh-orange)}

/* ── Home hero ──────────────────────────────────────────────────────────── */
.ehw-hero{background:var(--eh-navy)}
.ehw-hero::after{background:radial-gradient(circle at 85% 20%,rgba(226,103,43,.22),transparent 42%)}
.ehw-hero h1{color:#fff;font-size:clamp(36px,5.2vw,62px);line-height:1.02;text-transform:uppercase;letter-spacing:.01em}
.ehw-hero-scrim{background:linear-gradient(90deg,rgba(14,15,20,.94) 0%,rgba(14,15,20,.8) 46%,rgba(14,15,20,.35) 100%)}
.ehw-hero-kicker{border-color:rgba(226,103,43,.55);background:rgba(226,103,43,.12);color:#ffc3a3}
.ehw-hero-points li:before{border-color:var(--eh-orange)}

/* ── Page header (all inner pages) ──────────────────────────────────────── */
.ehw-phead{background-color:var(--eh-navy);background-size:cover;background-position:center}
.ehw-phead-scrim{background:linear-gradient(90deg,rgba(14,15,20,.92) 0%,rgba(14,15,20,.78) 50%,rgba(14,15,20,.45) 100%)}
.ehw-phead h1{font-size:clamp(34px,4.4vw,54px);text-transform:none}
.ehw-phead .ehw-eyebrow{color:#f6a77c}
.ehw-phead::after{content:"";position:absolute;left:0;bottom:0;width:120px;height:4px;background:var(--eh-orange);z-index:3}

/* ── Sections, cards ────────────────────────────────────────────────────── */
.ehw-section{padding:64px 0}
.ehw-section-alt{background:var(--eh-grey)}
.ehw-section-head h2{font-size:clamp(28px,3.6vw,40px)}
.ehw-section-head h2::after{content:"";display:block;width:56px;height:3px;background:var(--eh-orange);margin:14px auto 0}
.ehw-section-head-row h2::after{margin-left:0}
.ehw-card,.ehw-post-card,.ehw-feed-card,.ehw-calc-card,.ehw-blog-card,.ehw-cat-card{border-color:var(--eh-line);border-radius:8px}
.ehw-card:hover,.ehw-calc-card:hover{border-color:var(--eh-orange)}
.ehw-calc-card h3{color:var(--eh-ink)}
.ehw-post-card h3 a:hover,.ehw-blog-card h3 a:hover{color:var(--eh-orange)}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.ehw-footer{background:var(--eh-navy);color:rgba(255,255,255,.66);border-top:4px solid var(--eh-orange)}
.ehw-footer h4{font-family:var(--eh-head);font-size:18px;letter-spacing:.06em}
.ehw-footer a{color:rgba(255,255,255,.7)}
.ehw-footer a:hover{color:var(--eh-orange)}
.ehw-footer-brand{font-family:var(--eh-head);text-transform:uppercase;letter-spacing:.04em;font-size:26px}
.ehw-footer-bottom{background:var(--eh-night);border-top:0;margin:0 calc(50% - 50vw);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%)}

/* ═══ New in 2.0 ════════════════════════════════════════════════════════ */

/* Product catalog tiles (home + products directory teaser) */
.eh-catgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.eh-cat{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:230px;padding:18px;border-radius:8px;overflow:hidden;color:#fff;text-decoration:none;background:var(--eh-navy);isolation:isolate}
.eh-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s}
.eh-cat::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,15,20,.05) 25%,rgba(14,15,20,.9) 100%)}
.eh-cat:hover{color:#fff}
.eh-cat:hover img{transform:scale(1.06)}
.eh-cat b{font-family:var(--eh-head);font-size:22px;line-height:1.05;letter-spacing:.01em}
.eh-cat small{font-size:13.5px;color:rgba(255,255,255,.78);margin-top:4px}
.eh-cat em{font-style:normal;font-size:13px;font-weight:600;color:#f6a77c;margin-top:8px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}
.eh-cat:hover em{opacity:1;transform:none}
.eh-cat--wide{grid-column:span 2}
.eh-center{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
@media(max-width:1100px){.eh-catgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.eh-catgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.eh-cat{min-height:170px;padding:12px}.eh-cat b{font-size:18px}.eh-cat--wide{grid-column:span 2}}

/* Image band with text (about / contact / home) */
.eh-band{position:relative;isolation:isolate;color:#fff;background:var(--eh-navy) center/cover no-repeat;padding:72px 0;overflow:hidden}
.eh-band::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,15,20,.93),rgba(14,15,20,.62))}
.eh-band h2{color:#fff;font-size:clamp(28px,3.6vw,42px);margin:0 0 12px}
.eh-band p{color:rgba(255,255,255,.82);font-size:17px;max-width:640px;margin:0 0 22px}
.eh-band__in{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}

/* Photo gallery strip (factory / office) */
.eh-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:12px}
.eh-gallery figure{position:relative;margin:0;border-radius:8px;overflow:hidden;background:var(--eh-grey)}
.eh-gallery figure:first-child{grid-row:span 2}
.eh-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.eh-gallery figure:hover img{transform:scale(1.04)}
.eh-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 14px 10px;font-size:13.5px;font-weight:600;color:#fff;background:linear-gradient(180deg,transparent,rgba(14,15,20,.85))}
@media(max-width:760px){.eh-gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto}.eh-gallery figure{aspect-ratio:4/3}.eh-gallery figure:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:16/9}}

/* Split media blocks used on About / Contact */
.eh-split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.eh-split--rev .eh-split__media{order:2}
.eh-split__media{margin:0;border-radius:8px;overflow:hidden;position:relative;box-shadow:0 24px 48px -24px rgba(10,16,26,.4)}
.eh-split__media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.eh-split__media::after{content:"";position:absolute;left:0;top:0;width:6px;height:72px;background:var(--eh-orange)}
.eh-split h2{font-size:clamp(26px,3.2vw,36px);margin:0 0 14px}
.eh-split p{font-size:16.5px;line-height:1.75}
@media(max-width:860px){.eh-split{grid-template-columns:1fr;gap:24px}.eh-split--rev .eh-split__media{order:0}}

/* Stats row */
.eh-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--eh-line);border:1px solid var(--eh-line);border-radius:8px;overflow:hidden;margin-top:30px}
.eh-stats div{background:#fff;padding:22px 18px}
.eh-stats b{display:block;font-family:var(--eh-head);font-size:34px;color:var(--eh-ink);line-height:1}
.eh-stats span{display:block;margin-top:6px;font-size:13.5px;color:var(--eh-ink-3)}
@media(max-width:700px){.eh-stats{grid-template-columns:1fr 1fr}}

/* ═══ Plugin pages: fastener-finder, Materials & Grades, applications,
   SEO guides. Same tokens as the theme; these rules only fix the places
   where the plugins hard-coded the old blue. ══════════════════════════════ */
html body .fff-materials{--fm-accent:var(--eh-navy);--fm-line:var(--eh-line);--fm-ink:var(--eh-ink);--fm-mute:var(--eh-ink-3);--fm-bg:var(--eh-grey)}
html body .fff-apps{--fa-accent:var(--eh-navy);--fa-line:var(--eh-line);--fa-ink:var(--eh-ink);--fa-mute:var(--eh-ink-3);--fa-bg:var(--eh-grey)}
body .fff-page h2,body .fsp-page h2,body .fap-main h2,body .fsp-main h2{font-family:var(--eh-head);font-size:clamp(24px,2.6vw,30px);letter-spacing:.005em;color:var(--eh-ink)}
body .fff-main h2,body .fsp-main h2,body .fap-main h2{padding-left:14px;border-left:4px solid var(--eh-orange);line-height:1.15}
body .fff-toc,body .fsp-toc,body .fap-toc,body .fsp-side-panel,body .fap-side-panel,body .fff-related-panel{border-color:var(--eh-line);border-radius:8px;box-shadow:none}
body .fsp-toc-list a,body .fap-toc-list a,body .fsp-side-list a,body .fap-side-list a,body .fff-toc a{color:var(--eh-ink-2)}
body .fsp-toc-list a:hover,body .fap-toc-list a:hover,body .fsp-side-list a:hover,body .fap-side-list a:hover,body .fff-toc a:hover{color:var(--eh-orange);background:var(--eh-grey)}
body .fff-answer,body .fap-answer,body .fsp-answer{border-left:4px solid var(--eh-orange);border-radius:0 8px 8px 0;background:var(--eh-grey)}
body .fff-page table th,body .fsp-page table th,body .fap-main table th{background:var(--eh-navy);color:#fff;border-color:var(--eh-navy-3)}
body .fff-page table tr:nth-child(even) td,body .fsp-page table tr:nth-child(even) td,body .fap-main table tr:nth-child(even) td{background:#fafbfc}
body .fff-page .fff-btn,body .fff-page button[type=submit],body .fff-quote-section button[type=submit],body .fsp-page .fff-btn,body .fap-main .fff-btn{background:var(--eh-orange);border-color:var(--eh-orange);border-radius:6px;color:#fff}
body .fff-page .fff-btn:hover,body .fff-quote-section button[type=submit]:hover{background:var(--eh-orange-2);border-color:var(--eh-orange-2)}
body .fff-quote-section,body .fap-quote{border-top:4px solid var(--eh-orange);border-radius:8px}
body .fap-index-link:hover,body .fap-index-item:hover{border-color:var(--eh-orange)}
body .fap-cat-heading,body .fsp-index h2{font-family:var(--eh-head)}
body .fff-faq summary,body .fsp-faq summary,body .fap-faq summary{font-weight:600;color:var(--eh-ink)}
body .fff-faq summary:hover,body .fsp-faq summary:hover,body .fap-faq summary:hover{color:var(--eh-orange)}

/* Captcha used by the product inquiry form (fastener-products). */
.eht-captcha{margin:6px 0 14px}
.eht-captcha__label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;color:var(--eh-ink)}
.eht-captcha__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.eht-captcha__img{border:1px solid var(--eh-line);border-radius:6px;background:#fff}
.eht-captcha__input input{width:120px;padding:10px 12px;border:1px solid #c9d0da;border-radius:6px;font:inherit}
.eht-captcha__help{font-size:12.5px;color:var(--eh-ink-3);margin:6px 0 0}
.eht-captcha__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ═══ 2.0.1 — header search, Products mega menu, catalog home, search results
   (ported from the Connector catalog theme). ═══════════════════════════════ */
.eh-iconbtn{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;cursor:pointer;transition:background .2s,border-color .2s}
.eh-iconbtn:hover,.eh-iconbtn[aria-expanded="true"]{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.45)}
.eh-searchbar{background:var(--eh-navy-2);padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}
.eh-search{display:flex;align-items:center;background:#fff;border-radius:6px;overflow:hidden;border:1px solid transparent}
.eh-search input{flex:1;min-width:0;border:0;padding:15px 16px;font:inherit;font-size:16px;color:var(--eh-ink-2);outline:none;background:transparent}
.eh-search input::placeholder{color:#9aa3b2}
.eh-search button{align-self:stretch;display:inline-flex;align-items:center;gap:8px;border:0;background:var(--eh-orange);color:#fff;padding:0 26px;font:inherit;font-weight:600;font-size:16px;cursor:pointer}
.eh-search button:hover{background:var(--eh-orange-2)}
.eh-search--bar{max-width:900px;margin:0 auto}
.eh-search--hero{max-width:760px;box-shadow:0 16px 40px rgba(0,0,0,.3)}
.eh-search--hero input{padding:19px 18px;font-size:17px}
.eh-search--page{max-width:820px;border-color:#cfd6e0}
.eh-search--drawer{border-color:var(--eh-line);margin:12px}
.eh-search--drawer input{padding:11px 12px;font-size:15px}
.eh-search--drawer button{padding:0 14px}
.eh-search--drawer button span{display:none}
@media(max-width:600px){.eh-search button span{display:none}.eh-search button{padding:0 18px}}

/* Products mega panel */
.ehw-header .ehw-container{position:static}
.ehw-nav-menu>li.has-mega{position:static}
.eh-mega{position:absolute;left:0;right:0;top:100%;background:#fff;color:var(--eh-ink-2);box-shadow:0 24px 48px rgba(10,16,26,.22);border-top:3px solid var(--eh-orange);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s;max-height:calc(100vh - 140px);overflow-y:auto;z-index:60}
.ehw-nav-menu>li.is-open>.eh-mega{opacity:1;visibility:visible;transform:none}
.eh-mega__in{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;padding-top:24px;padding-bottom:24px}
.eh-mega__cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 22px}
.ehw-nav-menu .eh-mega a{padding:0;border-radius:0;text-transform:none;letter-spacing:0;font-family:var(--eh-font);color:var(--eh-ink-3);background:none}
.ehw-nav-menu .eh-mega a::after{display:none}
.ehw-nav-menu .eh-mega .eh-mega__h{display:block;font-family:var(--eh-head);font-size:16.5px;font-weight:700;color:var(--eh-ink);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px;padding-bottom:5px;border-bottom:1px solid var(--eh-line);white-space:normal}
.eh-mega__col ul{list-style:none;margin:0;padding:0}
.ehw-nav-menu .eh-mega__col li a{display:block;padding:3px 0;font-size:14px;line-height:1.35;white-space:normal}
.ehw-nav-menu .eh-mega a:hover{color:var(--eh-orange)}
.ehw-nav-menu .eh-mega .eh-mega__card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:240px;padding:20px;border-radius:8px;overflow:hidden;color:#fff;background:var(--eh-navy) center/cover;isolation:isolate}
.eh-mega__card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,15,20,.1),rgba(14,15,20,.9));z-index:-1}
.eh-mega__card b{font-family:var(--eh-head);font-size:26px;line-height:1.05;color:#fff}
.eh-mega__card span{font-size:14px;color:rgba(255,255,255,.8)}
.eh-mega__card em{font-style:normal;color:var(--eh-orange);font-weight:600;margin-top:6px}
@media(max-width:920px){.eh-mega{display:none}}

/* Home hero */
.eh-hero{position:relative;color:#fff;background:var(--eh-navy) var(--bg) center/cover no-repeat;padding:84px 0 96px;isolation:isolate}
.eh-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,15,20,.96) 0%,rgba(14,15,20,.85) 42%,rgba(14,15,20,.35) 100%),linear-gradient(0deg,rgba(14,15,20,.6),transparent 40%)}
.eh-hero__in{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:end}
.eh-hero h1{color:#fff;font-family:var(--eh-head);font-size:clamp(38px,5.2vw,66px);line-height:1;margin:6px 0 18px;max-width:880px;text-transform:uppercase}
.eh-hero .ehw-eyebrow{color:#f6a77c}
.eh-hero__lede{font-size:18.5px;color:rgba(255,255,255,.82);max-width:720px;margin:0 0 28px}
.eh-hero__hot{margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;color:rgba(255,255,255,.6)}
.eh-hero__hot a{color:#fff;padding:4px 12px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);text-decoration:none}
.eh-hero__hot a:hover{background:var(--eh-orange);border-color:var(--eh-orange);color:#fff}
.eh-hero__stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.14);border-radius:10px;overflow:hidden;backdrop-filter:blur(6px)}
.eh-hero__stats li{background:rgba(14,15,20,.72);padding:18px 16px}
.eh-hero__stats b{display:block;font-family:var(--eh-head);font-size:34px;line-height:1;color:#fff}
.eh-hero__stats li:first-child b{color:var(--eh-orange)}
.eh-hero__stats span{font-size:13px;color:rgba(255,255,255,.7)}
@media(max-width:900px){.eh-hero{padding:56px 0 60px}.eh-hero__in{grid-template-columns:1fr;gap:28px}.eh-hero__lede{font-size:16.5px}}

/* Group strip */
.eh-groups{background:#fff;border-bottom:1px solid var(--eh-line);box-shadow:0 6px 18px rgba(22,24,31,.05)}
.eh-groups__in{display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin;padding-top:14px;padding-bottom:14px}
.eh-groups a{flex:0 0 auto;width:112px;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;padding:8px 4px;border-radius:8px;text-decoration:none}
.eh-groups a:hover{background:var(--eh-grey)}
.eh-groups span{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--eh-grey);border:2px solid var(--eh-line);transition:border-color .2s}
.eh-groups a:hover span{border-color:var(--eh-orange)}
.eh-groups img{width:100%;height:100%;object-fit:cover}
.eh-groups b{font-size:13px;font-weight:600;line-height:1.25;color:var(--eh-ink)}

/* Directory */
.eh-dir{padding:56px 0 64px}
.eh-dir__head{display:grid;grid-template-columns:280px 1fr 280px;align-items:start;gap:24px;margin-bottom:36px}
.eh-dir__ad{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px;min-height:170px;justify-content:flex-end;border-radius:8px;overflow:hidden;color:#fff;background:var(--eh-navy) center/cover;isolation:isolate;border-bottom:4px solid var(--eh-orange);text-decoration:none}
.eh-dir__ad::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,15,20,.2),rgba(14,15,20,.92))}
.eh-dir__ad b{font-family:var(--eh-head);font-size:22px;line-height:1.1}
.eh-dir__ad span{font-size:13.5px;color:rgba(255,255,255,.82)}
.eh-dir__ad em{font-style:normal;color:var(--eh-orange);font-size:14px;font-weight:600}
.eh-dir__ad:hover{color:#fff}
.eh-dir__title{text-align:center;grid-column:2}
.eh-dir__title h2{font-size:clamp(30px,3.6vw,46px);margin:0 0 10px;text-transform:uppercase}
.eh-dir__title p{color:var(--eh-ink-3);font-size:17px;margin:0 0 24px}
.eh-tabs{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center}
.eh-tabs button{background:#fff;border:1px solid #cfd6e0;color:var(--eh-ink-2);padding:10px 26px;font:inherit;font-size:16px;font-weight:600;cursor:pointer;border-radius:30px;transition:.2s}
.eh-tabs button:hover{border-color:var(--eh-orange);color:var(--eh-orange)}
.eh-tabs button.is-on{background:var(--eh-orange);border-color:var(--eh-orange);color:#fff}
.eh-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px 28px}
.eh-col h3{font-family:var(--eh-head);font-size:18px;text-transform:uppercase;letter-spacing:.02em;padding-bottom:8px;border-bottom:2px solid var(--eh-ink);margin:0 0 10px}
.eh-col h3 a{color:var(--eh-ink);text-decoration:none}
.eh-col ul{list-style:none;margin:0;padding:0}
.eh-col li a{display:block;color:var(--eh-ink-3);font-size:14.5px;line-height:1.4;padding:4px 0;text-decoration:none}
.eh-col li a small{color:#a4acba;font-size:12px}
.eh-col li a:hover,.eh-col h3 a:hover{color:var(--eh-orange)}
@media(max-width:1100px){.eh-dir__head{grid-template-columns:1fr}.eh-dir__ad{display:none}.eh-dir__title{grid-column:1}.eh-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.eh-cols{grid-template-columns:1fr 1fr;gap:26px 16px}}

/* Section head (left title, right link) */
.eh-sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.eh-sechead h2{font-size:clamp(28px,3.2vw,40px);margin:0;text-transform:uppercase}
.eh-sechead>a{color:var(--eh-orange);font-weight:600;white-space:nowrap;text-decoration:none}

/* Finder section */
.eh-finder{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;align-items:start}
.eh-finder h2{font-size:clamp(28px,3.2vw,40px);text-transform:uppercase;margin:4px 0 12px}
.eh-finder__tool{background:#fff;border:1px solid var(--eh-line);border-radius:8px;padding:18px;border-top:4px solid var(--eh-orange)}
.eh-chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px}
.eh-chips a{padding:6px 13px;border:1px solid #cfd6e0;border-radius:20px;background:#fff;color:var(--eh-ink-2);font-size:14px;text-decoration:none}
.eh-chips a:hover{border-color:var(--eh-orange);color:var(--eh-orange)}
@media(max-width:900px){.eh-finder{grid-template-columns:1fr}}

/* Search results */
.eh-results{padding-top:32px;padding-bottom:56px}
.eh-results__bar{margin-bottom:18px}
.eh-results__jump{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.eh-results__jump a{padding:8px 16px;border:1px solid #cfd6e0;border-radius:30px;background:#fff;color:var(--eh-ink-2);font-weight:600;font-size:14.5px;text-decoration:none}
.eh-results__jump a b{color:var(--eh-orange);margin-left:4px}
.eh-results__jump a:hover{border-color:var(--eh-orange)}
.eh-results__sec{margin-bottom:46px;scroll-margin-top:calc(var(--ehw-header-h,72px) + 16px)}
.eh-results__sec .eh-sechead h2{font-size:clamp(24px,2.6vw,32px)}
.eh-results__none{padding:22px;border:1px dashed #cfd6e0;border-radius:8px;color:var(--eh-ink-3);background:#fff}
.eh-speclist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.eh-spec{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--eh-line);border-radius:8px;background:#fff;text-decoration:none;color:var(--eh-ink-2);transition:border-color .15s,box-shadow .15s}
.eh-spec:hover{border-color:var(--eh-orange);box-shadow:0 10px 24px -14px rgba(10,16,26,.3)}
.eh-spec__img{width:64px;height:64px;border-radius:6px;background:var(--eh-grey);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--eh-ink-3)}
.eh-spec__img img{width:100%;height:100%;object-fit:cover}
.eh-spec__txt b{display:block;color:var(--eh-ink);font-size:15.5px;line-height:1.3}
.eh-spec__txt small{display:block;color:var(--eh-orange);font-size:12.5px;font-weight:600;margin:2px 0}
.eh-spec__txt span{display:block;font-size:13.5px;color:var(--eh-ink-3);line-height:1.45}
.eh-spec em{font-style:normal;font-size:13px;font-weight:600;color:var(--eh-navy);white-space:nowrap}
@media(max-width:820px){.eh-speclist{grid-template-columns:1fr}.eh-spec{grid-template-columns:52px 1fr}.eh-spec em{display:none}.eh-spec__img{width:52px;height:52px}}
.eh-drawer-search{border-bottom:1px solid var(--eh-line)}
.eh-finder h2,.eh-sechead h2,.eh-dir__title h2{line-height:1.05}

/* ═══ 2.1.1 — responsive header ═════════════════════════════════════════
   The live menu has ten items (Home … Contact). At 17px uppercase with the
   1.x right-hand gutter of up to 200px it did not fit below ~1500px and the
   items ran over the logo and the search button. The bar now:
   – drops the 1.x gutter and lets the menu take the free space;
   – keeps logo and buttons at their natural width (never squeezed);
   – steps the menu type down as the window narrows;
   – switches to the drawer below 1200px, where ten items cannot fit. */
.ehw-header .ehw-container{padding-left:20px;padding-right:20px;max-width:1600px}
.ehw-header-inner{gap:18px}
.ehw-logo{flex:0 0 auto}
.ehw-logo img,.ehw-logo .custom-logo{max-height:46px;width:auto}
.ehw-nav{flex:1 1 auto;min-width:0;margin:0}
.ehw-nav-menu{justify-content:center;gap:0;flex-wrap:nowrap}
.ehw-nav-menu>li>a{white-space:nowrap}
.ehw-header-actions{flex:0 0 auto;gap:10px}
@media (max-width:1600px){.ehw-nav-menu>li>a{font-size:16px;padding:24px 9px;letter-spacing:.04em}.ehw-nav-menu>li>a::after{left:9px;right:9px}}
@media (max-width:1440px){.ehw-nav-menu>li>a{font-size:15px;padding:24px 7px;letter-spacing:.025em}.ehw-nav-menu>li>a::after{left:7px;right:7px}.ehw-header-actions .ehw-btn-primary{padding:10px 14px;font-size:14px}}
@media (max-width:1320px){.ehw-nav-menu>li>a{font-size:14px;padding:24px 6px;letter-spacing:.01em}.ehw-nav-menu>li>a::after{left:6px;right:6px}.ehw-logo img,.ehw-logo .custom-logo{max-height:40px}}
@media (max-width:1199px){
  .ehw-nav{display:none}
  .ehw-ham{display:flex}
  .ehw-header-inner{justify-content:space-between}
  .ehw-header-actions{margin-left:auto}
}
@media (max-width:600px){.ehw-header-actions .ehw-btn-primary{display:none}}

/* ── 2.1.2: larger logo ──
   The logo artwork is dark navy with generous transparent margins; capped
   at 40–46px it shrank to a smudge on the dark header. It now sits on a
   small white plate (so the navy text reads) and is sized for the bar. */
.ehw-logo .custom-logo-link,.ehw-logo .eh-logo-img{display:inline-flex;align-items:center;background:#fff;border-radius:8px;padding:4px 12px;line-height:0}
.ehw-logo img,.ehw-logo .custom-logo{max-height:64px;height:64px;width:auto;object-fit:contain}
@media (max-width:1440px){.ehw-logo img,.ehw-logo .custom-logo{max-height:58px;height:58px}}
@media (max-width:1320px){.ehw-logo img,.ehw-logo .custom-logo{max-height:54px;height:54px}}
@media (max-width:600px){.ehw-logo .custom-logo-link,.ehw-logo .eh-logo-img{padding:3px 8px}.ehw-logo img,.ehw-logo .custom-logo{max-height:48px;height:48px}}

/* ── 2.1.3: glow instead of the white plate ──
   A soft white halo traced around the logo's own shape (drop-shadow follows
   the transparent edges, unlike a box) lifts the navy artwork off the dark
   bar without boxing it in. */
.ehw-logo .custom-logo-link,.ehw-logo .eh-logo-img{background:none;padding:0;border-radius:0}
.ehw-logo img,.ehw-logo .custom-logo{filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 2px rgba(255,255,255,.7)) drop-shadow(0 0 10px rgba(255,255,255,.35));transition:filter .25s}
.ehw-logo a:hover img,.ehw-logo a:hover .custom-logo{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 3px rgba(255,255,255,.8)) drop-shadow(0 0 14px rgba(226,103,43,.55))}
@media (max-width:600px){.ehw-logo .custom-logo-link,.ehw-logo .eh-logo-img{padding:0}}
