/* =========================================================
   ApplianceEdge Edge Files — Shared Stylesheet
   Version: 84  |  Bump ?v= in every page <link> on any change.
   Tokens: Edge Files :root palette (#071A15 dark, DM Serif/Sans)
   ========================================================= */

/* ── tokens ─────────────────────────────────────────────── */
:root{
  --green:#1D9E75;--green-deep:#085041;--green-mid:#0F6E56;
  --green-light:#E8F5F0;--ink:#0F1A15;--mist:#F4F7F5;
  --border:#D8E8E2;--secondary:#4A6358;--teal-light:#E1F5EE;
  --amber:#c99a2e;--amber-bg:#fdf8ee;--amber-border:#c99a2e55;
  --dark:#071A15;--white:#ffffff;
  --radius-lg:20px;--radius-md:10px;--radius-sm:6px;
  --shadow:0 1px 2px rgba(15,26,21,.03),0 6px 20px -8px rgba(15,26,21,.10);
  --content-max:1200px;
}

/* ── reset ──────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:hidden;-webkit-text-size-adjust:100%}
body{
  font-family:'DM Sans',ui-sans-serif,-apple-system,sans-serif;
  font-weight:400;color:var(--ink);background:var(--mist);
  font-size:15px;line-height:1.6;overflow-x:hidden;max-width:100%;
}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ── nav ────────────────────────────────────────────────── */
nav{
  display:flex;align-items:center;box-sizing:border-box;
  padding:0 48px;height:72px;border-bottom:0.5px solid var(--border);
  background:rgba(255,255,255,.96);backdrop-filter:blur(8px);
  position:sticky;top:0;z-index:100;
}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.site-logo{width:220px;height:auto;display:block}
@media(max-width:720px){.site-logo{width:180px;height:auto}}
.nav-links{display:flex;align-items:center;gap:32px;list-style:none;margin-left:0;flex-shrink:0}
.nav-links a{
  text-decoration:none;font-size:15px;color:var(--secondary);
  font-weight:500;transition:color .15s;white-space:nowrap;
}
.nav-links a:hover{color:var(--ink)}

/* ── nav model search ────────────────────────────────────── */
/* Pill — visible at ≥1200px; logo → 32px → pill; spare space before right cluster */
.ns-pill{
  display:flex;align-items:center;gap:8px;
  background:#f1f4f3;border:1px solid transparent;border-radius:100px;
  padding:6px 14px 6px 10px;
  flex:0 1 300px;min-width:200px;max-width:300px;
  margin-left:32px;margin-right:auto;
  transition:border-color .15s,background .15s;cursor:text;
}
.ns-pill:focus-within{border-color:var(--green);background:#fff}
.ns-icon{
  width:15px;height:15px;color:#9aada6;flex-shrink:0;transition:color .15s;
  display:inline-flex;align-items:center;justify-content:center;
}
.ns-icon svg{width:15px;height:15px;display:block}
.ns-pill:focus-within .ns-icon{color:var(--green)}
.ns-input{
  flex:1;min-width:0;border:none;background:transparent;
  font-family:'DM Sans',sans-serif;font-size:13px;color:var(--ink);outline:none;
}
.ns-input::placeholder{color:#9aada6;font-size:13px}
.ns-input::-webkit-search-cancel-button,.ns-input::-webkit-search-decoration{-webkit-appearance:none}
/* Collapse toggle — visible at 801–1199px, right of nav-links */
.ns-toggle{
  display:none;align-items:center;justify-content:center;
  width:34px;height:34px;border:none;background:#f1f4f3;border-radius:50%;
  cursor:pointer;color:var(--secondary);transition:background .15s,color .15s;flex-shrink:0;
}
.ns-toggle:hover{background:#e5ebe9;color:var(--ink)}
.ns-toggle svg{width:16px;height:16px;display:block}
/* Mobile icon — left of hamburger at ≤800px */
.ns-mob{
  display:none;align-items:center;justify-content:center;
  width:34px;height:34px;border:none;background:none;
  cursor:pointer;color:var(--secondary);transition:color .15s;
  margin-left:auto;
}
.ns-mob:hover{color:var(--ink)}
.ns-mob svg{width:17px;height:17px;display:block}
/* Expanding bar — fixed below nav, shared for mobile + narrow desktop */
.ns-bar{
  display:none;align-items:center;gap:10px;
  position:fixed;top:72px;left:0;right:0;z-index:99;
  box-sizing:border-box;
  padding:10px 48px;background:var(--white);
  border-bottom:0.5px solid var(--border);
  box-shadow:0 4px 16px rgba(15,26,21,.06);
}
.ns-bar.open{display:flex}
.ns-bar-icon{width:15px;height:15px;color:var(--secondary);flex-shrink:0}
.ns-bar-input{
  flex:1;min-width:0;border:none;border-bottom:1.5px solid var(--border);
  background:transparent;font-family:'DM Sans',sans-serif;
  font-size:15px;color:var(--ink);outline:none;padding:4px 0;
  transition:border-color .15s;
}
.ns-bar-input:focus{border-color:var(--green)}
.ns-bar-input::placeholder{color:#9aada6}
.ns-bar-input::-webkit-search-cancel-button,.ns-bar-input::-webkit-search-decoration{-webkit-appearance:none}
.ns-bar-close{
  display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;border:none;background:none;cursor:pointer;
  color:var(--secondary);flex-shrink:0;transition:color .15s;
}
.ns-bar-close:hover{color:var(--ink)}
.ns-bar-close svg{width:14px;height:14px}
/* Mid desktop — fit full chrome with breathing room (incl. 1280) */
@media(min-width:951px) and (max-width:1360px){
  nav{padding:0 32px}
  .site-logo{width:clamp(160px,14vw,200px)}
  .nav-links{gap:clamp(12px,1.4vw,22px)}
  .nav-links a{font-size:clamp(13px,1.15vw,14px);white-space:nowrap}
  .nav-cta{white-space:nowrap;padding:7px 14px;font-size:clamp(12px,1.1vw,13px)!important}
  .ns-pill{flex:0 1 220px;max-width:220px;min-width:170px}
}
/* Breakpoints */
@media(max-width:1199px){
  .ns-pill{display:none}
  .ns-toggle{display:flex}
  .nav-links{margin-left:auto}
}
@media(max-width:800px){.ns-toggle{display:none}.ns-mob{display:flex}.ns-bar{top:60px;padding:10px 20px}}
.nav-links a.active{color:var(--green)}
.nav-cta{
  background:var(--green);color:var(--white)!important;
  padding:8px 18px;border-radius:var(--radius-sm);
  font-size:14px!important;font-weight:500!important;
  text-decoration:none!important;transition:background .15s;
  white-space:nowrap;
}
.nav-cta:hover{background:var(--green-mid)!important}

/* hamburger */
.hamburger{
  display:none;flex-direction:column;gap:5px;cursor:pointer;
  padding:4px;background:none;border:none;z-index:200;
}
.hamburger span{
  display:block;width:22px;height:2px;background:var(--ink);
  border-radius:2px;transition:all .25s;
}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{
  display:none;position:fixed;top:72px;left:0;right:0;
  background:var(--white);border-bottom:0.5px solid var(--border);
  padding:16px 24px;flex-direction:column;gap:0;
  z-index:99;box-shadow:0 4px 24px rgba(0,0,0,.06);
}
.mobile-menu.open{display:flex}
.mobile-menu a{
  font-size:14px;color:var(--secondary);text-decoration:none;
  padding:12px 0;border-bottom:0.5px solid var(--border);
  font-weight:400;transition:color .15s;
}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a:hover{color:var(--ink)}
.mobile-menu a.nav-cta{
  color:var(--white);font-weight:500;border-bottom:none;
  margin-top:8px;background:var(--green);text-align:center;
  padding:12px 0;border-radius:var(--radius-sm);
}

/* ── page layout ─────────────────────────────────────────── */
.ef-page{max-width:720px;margin:0 auto;padding:32px 24px 100px}

/* ── breadcrumb ──────────────────────────────────────────── */
.ef-back-crumb{display:inline-block;font-size:13px;font-weight:500;color:var(--green);text-decoration:none;margin-bottom:20px;transition:color .15s}
.ef-back-crumb:hover{color:var(--green-mid)}

/* ── base card ───────────────────────────────────────────── */
.ef-card{
  border-radius:var(--radius-lg);overflow:hidden;
  border:0.5px solid var(--border);background:var(--white);
  margin-bottom:16px;padding:26px 24px;
  box-shadow:var(--shadow);
}

/* ── dark card ───────────────────────────────────────────── */
.ef-dark{background:var(--dark);color:#f2f6f3;border:none;box-shadow:none}
.ef-dark h1,.ef-dark h2,.ef-dark h3{color:#f2f6f3}
.ef-dark h1.ef-id-badge-pattern{color:#8fc9b2}
.ef-dark p{color:#C6D8CE}

/* ── kicker ──────────────────────────────────────────────── */
.ef-kicker{
  font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.12em;
  font-weight:500;color:var(--green);text-transform:uppercase;
  margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;
}
.ef-dark .ef-kicker{color:#8fc9b2}

/* ── serif headline ──────────────────────────────────────── */
.ef-headline{
  font-family:'DM Serif Display',Georgia,serif;font-size:26px;
  font-weight:400;line-height:1.2;letter-spacing:-0.3px;
  color:var(--ink);margin:0 0 10px;
}
.ef-dark .ef-headline{color:#f2f6f3}
.ef-headline em{font-style:italic;color:var(--green)}
.ef-dark .ef-headline em{color:#8fc9b2}

/* ── identity tiles ──────────────────────────────────────── */
.ef-id-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 16px}
.ef-id-tile{
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius-md);padding:13px 14px;
}
.ef-id-tile-l{
  font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:#9dbcac;margin-bottom:5px;
}
.ef-id-tile-v{
  font-family:'DM Serif Display',Georgia,serif;font-size:19px;
  font-weight:400;color:#f2f6f3;line-height:1.2;
}
.ef-id-tile-s{font-size:10px;color:#7fa490;margin-top:3px}

/* ── logo in dark hero ───────────────────────────────────── */
.ef-id-logo{
  height:24px;max-width:100px;object-fit:contain;
  filter:brightness(0) invert(1);opacity:.55;margin-bottom:14px;display:block;
}

/* ── credential line ─────────────────────────────────────── */
.ef-credential{
  font-size:11px;color:#6e8f80;margin-top:14px;line-height:1.5;
  padding-top:14px;border-top:1px solid rgba(255,255,255,.1);
}

/* ── meta row ────────────────────────────────────────────── */
.ef-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:#8fc9b2;margin-bottom:0}

/* ── verdict banner (compact dark) ──────────────────────── */
.ef-verdict-banner{padding:15px 20px}
.ef-verdict-row{display:flex;align-items:center;gap:14px;text-decoration:none}
.ef-verdict-row:hover{text-decoration:none}
.ef-verdict-icon{
  width:38px;height:38px;border-radius:11px;
  background:rgba(255,255,255,.10);display:grid;place-items:center;flex:none;
}
.ef-verdict-icon svg{width:19px;height:19px;stroke:#8FD3AE}
.ef-verdict-txt{flex:1;min-width:0}
.ef-verdict-title{
  display:block;font-family:'DM Serif Display',Georgia,serif;
  font-size:17px;font-weight:400;color:#fff;
}
.ef-verdict-sub{display:block;font-size:12px;color:#A9C4B5;margin-top:1px;font-weight:500}
.ef-verdict-circ{
  width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none;
}
.ef-verdict-circ svg{width:16px;height:16px;stroke:#fff}

/* ── chapter card ────────────────────────────────────────── */
.ef-chapter{
  border-radius:var(--radius-lg);border:0.5px solid var(--border);
  background:var(--white);margin-bottom:16px;overflow:hidden;
  box-shadow:var(--shadow);
}
.ef-chapter-header{padding:22px 24px 10px}
.ef-chapter-kicker{
  display:block;font-size:12px;font-weight:500;letter-spacing:.12em;
  text-transform:uppercase;color:var(--green);font-family:'DM Sans',sans-serif;
  margin-bottom:4px;
}
.ef-chapter-title{
  font-family:'DM Serif Display',Georgia,serif;font-size:20px;
  font-weight:400;color:var(--ink);line-height:1.2;margin:0 0 5px;
}
.ef-chapter-intro{font-size:15px;color:var(--secondary);line-height:1.5;margin:0}

/* ── disclosure sections ─────────────────────────────────── */
.ef-disclosure{border-top:0.5px solid var(--border)}
.ef-chapter .ef-disclosure:first-of-type{border-top:0.5px solid var(--border)}
.ef-disclosure summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;
  gap:12px;padding:14px 24px;
}
.ef-disclosure summary::-webkit-details-marker{display:none}
.ef-sec-title{
  flex:1;font-family:'DM Sans',Arial,sans-serif;
  font-size:14px;font-weight:700;color:var(--ink);
}
.ef-chev{
  width:15px;height:15px;stroke:var(--secondary);flex:none;
  transition:transform .18s ease;fill:none;stroke-width:2.2;
  stroke-linecap:round;stroke-linejoin:round;
}
.ef-disclosure[open] .ef-chev{transform:rotate(180deg)}
.ef-disclosure[open] .ef-sec-title{color:var(--green-mid)}
.ef-panel{padding:0 24px 22px;animation:ef-slide .18s ease}
@keyframes ef-slide{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}

/* open section (standalone when chapter dropped) */
.ef-open-card{
  border-radius:var(--radius-lg);border:0.5px solid var(--border);
  background:var(--white);margin-bottom:16px;padding:22px 24px;
  box-shadow:var(--shadow);
}
.ef-open-head{
  display:flex;align-items:center;gap:12px;margin-bottom:16px;
}
.ef-open-head .ef-sec-title{
  font-family:'DM Serif Display',Georgia,serif;font-size:18px;
  font-weight:400;color:var(--ink);
}

/* ── icon tile ───────────────────────────────────────────── */
.ef-icon-tile{
  width:34px;height:34px;border-radius:10px;
  background:var(--teal-light);display:grid;place-items:center;flex:none;
}
.ef-icon-tile svg{width:17px;height:17px;stroke:var(--green);fill:none}
.ef-icon-tile img.ef-ae-icon{width:17px;height:17px;display:block;filter:brightness(0) saturate(100%) invert(46%) sepia(65%) saturate(450%) hue-rotate(129deg) brightness(93%) contrast(90%)}
.ef-dark .ef-icon-tile{background:rgba(255,255,255,.10)}
.ef-dark .ef-icon-tile svg{stroke:#8FD3AE}
.ef-count-badge{
  font-size:12px;font-weight:700;color:var(--secondary);
  background:#F0F3EF;padding:3px 10px;border-radius:999px;flex:none;
}

/* ── glance list ─────────────────────────────────────────── */
.ef-glance{list-style:none}
.ef-glance-row{
  display:flex;align-items:center;gap:12px;padding:10px 0;
  border-bottom:0.5px solid var(--border);
}
.ef-glance-row:last-child{border-bottom:none;padding-bottom:2px}
.ef-glance-row:first-child{padding-top:2px}
.ef-glance-meta{flex:1;min-width:0}
.ef-glance-label{font-size:11px;color:var(--secondary);font-weight:600;letter-spacing:.03em}
.ef-glance-value{font-size:14px;font-weight:700;color:var(--ink);margin-top:1px}

/* ── story ───────────────────────────────────────────────── */
.ef-lead{font-size:15px;line-height:1.72;color:var(--ink);margin-bottom:14px}
.ef-known-for{background:var(--mist);border-radius:var(--radius-sm);padding:12px 15px;margin-bottom:10px}
.ef-known-lbl{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--secondary);margin-bottom:6px}
.ef-known-body{font-size:15px;line-height:1.6;color:var(--secondary)}
.ef-era{font-size:12.5px;color:var(--secondary);font-style:italic;margin-top:10px}

/* ── finishes chips ──────────────────────────────────────── */
.ef-finish-chips{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}
.ef-finish-chip{
  flex:1;min-width:60px;border:1.5px solid var(--border);border-radius:12px;
  padding:12px 6px;text-align:center;background:#FBFCFA;
}
.ef-finish-chip-code{display:block;font-size:15px;letter-spacing:.02em;font-weight:800;color:var(--ink)}
.ef-finish-chip-label{display:block;margin-top:4px;font-size:10px;color:var(--secondary);line-height:1.25;font-weight:600}

/* ── filter cross-ref ────────────────────────────────────── */
.ef-filter-row{
  display:flex;align-items:center;gap:12px;border:1.5px solid var(--border);
  border-radius:12px;padding:12px 14px;background:#FBFCFA;margin-bottom:8px;
}
.ef-filter-glyph{
  width:26px;height:44px;border-radius:6px;
  background:linear-gradient(180deg,#E9EDE9,#D7DED8);flex:none;border:1px solid #CBD4CD;
}
.ef-filter-name{font-size:14px;font-weight:600;color:var(--ink)}
.ef-filter-oem{font-size:12px;color:var(--secondary);font-weight:500;margin-top:2px}

/* ── verified models ─────────────────────────────────────── */
.ef-model-check-form{display:flex;gap:8px;margin:0 0 14px}
.ef-model-check-input{
  flex:1;min-width:0;padding:12px 14px;border:1.5px solid var(--border);
  border-radius:10px;background:#FAFBF9;font-size:16px;color:var(--ink);
  font-family:'DM Sans',sans-serif;outline:none;transition:border-color .15s;
}
.ef-model-check-input:focus{border-color:var(--green)}
.ef-model-check-input::placeholder{color:#A9B5AC}
.ef-model-check-btn{
  width:48px;border:none;border-radius:10px;background:var(--dark);
  display:grid;place-items:center;cursor:pointer;
}
.ef-model-check-btn svg{width:18px;height:18px;stroke:#fff;fill:none}
.ef-models-ul{list-style:none}
.ef-models-ul li{
  padding:11px 0;border-bottom:0.5px solid var(--border);
  font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;
  letter-spacing:.01em;font-family:'DM Mono',monospace,sans-serif;color:var(--ink);
}
.ef-models-ul li:last-child{border-bottom:none}
/* view all models */
.ef-models-more{margin-top:12px}
.ef-models-more[open] .ef-models-more-btn{display:none}
.ef-models-more-btn{
  display:flex;width:100%;align-items:center;justify-content:center;gap:8px;
  padding:13px;border:1.5px solid var(--border);border-radius:10px;
  color:var(--green);font-weight:700;font-size:14px;cursor:pointer;
  list-style:none;background:none;font-family:'DM Sans',sans-serif;
}
.ef-models-more-btn::-webkit-details-marker{display:none}
.ef-models-more-btn svg{width:14px;height:14px;stroke:var(--green);fill:none}
.ef-model-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.ef-model-chip{
  font-size:11.5px;font-family:'DM Sans',sans-serif;font-weight:500;
  letter-spacing:.015em;font-feature-settings:"zero" 1;
  background:var(--mist);border:0.5px solid var(--border);border-radius:4px;
  padding:3px 8px;color:var(--secondary);
}

/* ── warranty point-boxes (tune-7) ───────────────────────── */
.ef-warranty-box{
  border:1px solid var(--border);border-radius:var(--radius-sm);
  padding:12px 14px;margin-bottom:8px;background:#fff;
}
.ef-wa-name{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:4px}
.ef-wa-terms{font-size:12.5px;line-height:1.55;color:var(--secondary);margin:0 0 5px}
.ef-wa-link{font-size:11.5px;font-weight:500;color:var(--green-deep);text-decoration:underline;text-underline-offset:2px}

/* ── recall block ────────────────────────────────────────── */
.ef-recall-block{
  border:1.5px solid var(--border);border-radius:12px;
  background:#FBFCFA;padding:14px 15px;margin:10px 0;
}
.ef-recall-title{font-size:14.5px;font-weight:700;color:var(--ink);margin-bottom:6px}
.ef-recall-body{font-size:13px;line-height:1.6;color:var(--secondary);margin-bottom:8px}
.ef-recall-databox{
  border:1.5px solid var(--border);border-radius:10px;
  background:#FAFBF9;padding:11px 13px;margin:8px 0;
}
.ef-recall-databox dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);font-weight:700}
.ef-recall-databox dd{margin:4px 0 0;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}
.ef-recall-databox dd.small{font-size:14px;font-weight:700}
.ef-recall-cpsc-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:13px;border:1.5px solid var(--border);border-radius:10px;
  color:var(--green);font-weight:700;font-size:14px;text-decoration:none;
  margin-top:10px;transition:border-color .15s;
}
.ef-recall-cpsc-btn:hover{border-color:var(--green);text-decoration:none}
.ef-recall-cpsc-btn svg{width:14px;height:14px;stroke:var(--green);fill:none}
/* recall summary icon accent */
.ef-recall-icon{stroke:#C0392B!important}

/* ── maintenance ─────────────────────────────────────────── */
.ef-habit-box{
  border:1px solid var(--border);border-radius:var(--radius-sm);
  padding:12px 14px;margin-bottom:8px;background:#fff;
}
.ef-habit-name{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:3px}
.ef-habit-detail{font-size:12.5px;line-height:1.55;color:var(--secondary);margin:0}

/* ── AE expected lifespan ───────────────────────────────── */
.ef-lifespan-box{
  display:flex;align-items:center;gap:14px;border:1.5px solid var(--border);
  border-radius:12px;background:#FBFCFA;padding:14px 16px;margin:2px 0 12px;
}
.ef-lifespan-num{
  font-family:'DM Serif Display',Georgia,serif;font-size:28px;
  line-height:1;color:var(--green-deep);white-space:nowrap;
}
.ef-lifespan-num span{font-size:14px}
.ef-lifespan-cap{font-size:12px;color:var(--secondary);line-height:1.45}

/* ── repair economics ────────────────────────────────────── */
.ef-econ-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.ef-econ-tile{background:var(--mist);border-radius:var(--radius-sm);padding:13px 14px}
.ef-econ-tile-l{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:4px}
.ef-econ-tile-v{font-family:'DM Serif Display',Georgia,serif;font-size:22px;font-weight:400;color:var(--ink);line-height:1.2}
.ef-econ-tile-s{font-size:10.5px;color:var(--secondary);margin-top:2px}
.ef-cost-table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:12px}
.ef-cost-table th{text-align:left;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);padding:0 0 8px;border-bottom:1px solid var(--border)}
.ef-cost-table td{padding:7px 0;border-bottom:0.5px solid var(--border);color:var(--ink);vertical-align:top}
.ef-cost-table tr:last-child td{border-bottom:none}
.ef-cost-table .cost-range{font-weight:600;color:var(--green-deep);white-space:nowrap}

/* ── parts advisory ──────────────────────────────────────── */
/* ── parts availability + sources (tune-7) ───────────────── */
.ef-parts-avail{border-radius:var(--radius-sm);padding:12px 14px;margin-bottom:10px}
.ef-parts-avail--ok{background:#edf7f3;border:1px solid #b8ddd2}
.ef-parts-avail--warn{background:#faf5f2;border:1px solid #c8b0a0}
.ef-parts-avail-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:4px}
.ef-parts-avail--warn .ef-parts-avail-label{color:#7a4530}
.ef-parts-avail-grade{font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 4px}
.ef-parts-avail--warn .ef-parts-avail-grade{color:#6b3820}
.ef-parts-avail-ev{font-size:12px;line-height:1.55;color:var(--secondary);margin:0}
.ef-parts-avail--warn .ef-parts-avail-ev{color:#6b3820}
.ef-parts-sources{margin-bottom:10px}
.ef-parts-sources-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:7px}
.ef-source-chips{display:flex;flex-wrap:wrap;gap:6px}
.ef-source-chip{
  display:inline-block;padding:5px 12px;border-radius:20px;
  border:1.5px solid var(--green);background:rgba(143,201,178,.12);
  font-size:11.5px;font-weight:600;color:var(--green-deep);
}
.ef-parts-search{margin:12px 0 4px;font-size:12.5px}
.ef-parts-search a{color:var(--green-deep);text-decoration:underline;text-underline-offset:2px}

/* ── failure / what fails ────────────────────────────────── */
.ef-fail-list{list-style:none}
.ef-fail-list li{padding:10px 0;border-bottom:0.5px solid var(--border)}
.ef-fail-list li:last-child{border-bottom:none}
.ef-fail-name{font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:3px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}
.ef-fail-body{font-size:12.5px;color:var(--secondary);line-height:1.55;margin:0}
.ef-fail-reported{
  font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:2px 8px;border-radius:999px;
  background:var(--teal-light);color:var(--green-deep);border:1px solid #b8ddd2;
}
.ef-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}
.ef-tag{font-size:10px;font-weight:500;letter-spacing:.06em;padding:2px 7px;border-radius:3px;white-space:nowrap}
.ef-tag-safe{background:#fef0f0;color:#a32d2d;border:1px solid #f0c4c4}
.ef-tag-diy{background:var(--teal-light);color:var(--green-deep);border:1px solid #b8ddd2}
.ef-tag-pro{background:#f5f5f5;color:var(--secondary);border:1px solid var(--border)}

/* ── DIY outline button (kept for backward compat) ────────── */
.ef-outline-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:13px;border:1.5px solid var(--border);border-radius:10px;
  color:var(--green);font-weight:700;font-size:14px;text-decoration:none;
  margin-top:14px;transition:border-color .15s;
}
.ef-outline-btn:hover{border-color:var(--green);text-decoration:none}
.ef-outline-btn svg{width:14px;height:14px;stroke:var(--green);fill:none}

/* ── DIY dark verdict button (tune-7) ─────────────────────── */
.ef-dark-verdict-btn{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 20px;border-radius:10px;
  background:#071A15;
  text-decoration:none;
  margin-top:16px;transition:background .15s;
}
.ef-dark-verdict-btn:hover{background:#0d2a20;text-decoration:none}
.ef-dark-verdict-btn svg{width:14px;height:14px;stroke:#8fc9b2;fill:none;flex-shrink:0}
/* two-line DIY CTA */
.ef-dark-verdict-btn .ef-diy-line1{
  display:block;font-family:'DM Sans',system-ui,sans-serif;font-style:normal;
  font-size:14px;font-weight:500;color:#f2f6f3;line-height:1.3;
}
.ef-dark-verdict-btn .ef-diy-line2{
  display:block;font-family:'DM Serif Display',Georgia,serif;font-style:italic;
  font-size:15px;font-weight:400;color:#8fc9b2;line-height:1.3;margin-top:3px;
}
.ef-dark-verdict-btn:hover .ef-diy-line1{color:#c8e4d8}
.ef-dark-verdict-btn:hover .ef-diy-line2{color:#a8d8c4}
.ef-dark-verdict-btn>span{display:flex;flex-direction:column}

/* ── trust card ──────────────────────────────────────────── */
.ef-trust{
  background:#071A15;border-color:rgba(255,255,255,.1);
}
.ef-trust .ef-scard-title,
.ef-trust-title{
  color:#8fc9b2;margin-bottom:12px;font-style:italic;
}
.ef-trust p{font-size:14px;color:#ffffff;margin:0;line-height:1.75}

/* ── disclaimer ──────────────────────────────────────────── */
.ef-disclaimer{
  font-size:11px;line-height:1.6;color:var(--secondary);
  border-top:0.5px solid var(--border);padding-top:20px;margin-top:32px;
}

/* ── utility ─────────────────────────────────────────────── */
.ef-note{font-size:12px;color:var(--secondary);font-style:italic;margin-top:12px;line-height:1.55}
.ef-lede{font-size:13px;color:var(--secondary);margin:6px 0 10px;line-height:1.55}
.ef-sub-lbl{
  font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--secondary);padding:8px 0 6px;border-top:0.5px solid var(--border);
  margin-top:10px;margin-bottom:8px;
}
.ef-stack{list-style:none}
.ef-stack li{padding:10px 0;border-bottom:0.5px solid var(--border);font-size:14px;line-height:1.55;color:var(--ink)}
.ef-stack li:last-child{border-bottom:none}
.ef-stack li h3{font-size:14px;font-weight:700;margin-bottom:3px;color:var(--ink)}

/* ── tune-3: identity badge hero (column layout + chips) ─── */
/* tune-7 addendum: logo slot removed from hero; brand/pattern now stack without right column */
.ef-id-badge{position:relative;display:flex;flex-direction:column;padding:36px 28px 24px;gap:12px}
.ef-id-badge-brand{
  font-family:'DM Serif Display',Georgia,serif;font-size:38px;
  font-weight:400;color:#fff;line-height:1.12;
}
.ef-id-badge-pattern{
  font-family:'DM Serif Display',Georgia,serif;font-size:28px;
  font-weight:400;font-style:italic;color:#8fc9b2;line-height:1.2;margin:0;
}
/* ── tune-4: hero chips — eyebrow treatment, no pill borders ── */
.ef-id-badge-chips{display:flex;flex-wrap:nowrap;align-items:center;gap:0}
.ef-id-chip{
  font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:#8fc9b2;line-height:1;white-space:nowrap;
}
.ef-id-chip+.ef-id-chip{margin-left:10px;padding-left:10px;border-left:1px solid rgba(143,201,178,.3)}

/* ── VERIFIED chip — hero top-right (static on all family pages) ─────────── */
/* Absolutely positioned within .ef-id-badge (position:relative) */
.ef-id-badge-verified{
  position:absolute;top:14px;right:18px;
  font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:#1d9e75;background:rgba(29,158,117,.15);
  border:1px solid rgba(29,158,117,.35);border-radius:4px;
  padding:3px 8px;line-height:1;white-space:nowrap;pointer-events:none;
}
/* Lens-active: slightly brighter */
.ef-id-badge-verified--lens{
  background:rgba(29,158,117,.22);border-color:rgba(29,158,117,.5);color:#1d9e75;
}
/* Platform kicker chip in chips row (no separator before it) */
.ef-id-chip--platform{
  border-left:none!important;margin-left:10px;
}
.ef-mono-chip--lens-match{
  background:rgba(29,158,117,.22)!important;border-color:rgba(29,158,117,.45)!important;
  color:#8fc9b2!important;font-weight:600;
}
.ef-dark-tile-value--lens{
  font-size:11px!important;color:#f2f6f3!important;line-height:1.35;
}
.ef-recall-row--lens-match{background:rgba(29,158,117,.1)}
.ef-recall-row--lens-match .ef-recall-model-num{font-weight:700;color:#1d9e75}
.ef-recall-your-model{
  font-size:11px;color:#1d9e75;font-style:italic;
  padding:0 6px;white-space:nowrap;vertical-align:middle;
}

/* ── tune-7 addendum: About card logo (color, top-right) ────── */
.ef-scard-title-row{
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;margin-bottom:7px;
}
.ef-scard-title-row .ef-scard-title{margin-bottom:0}
#card-ownership .ef-scard-title-row,
#card-service   .ef-scard-title-row{margin-bottom:10px}
.ef-about-logo{
  max-width:120px;object-fit:contain;flex-shrink:0;display:block;
  margin-right:25px;
}
/* optical bucket heights — About card mobile slot (28px) */
.ef-about-logo[data-logo-shape="wordmark"]{height:28px}
.ef-about-logo[data-logo-shape="standard"]{height:24px}
.ef-about-logo[data-logo-shape="emblem"]  {height:20px}
.ef-about-logo:not([data-logo-shape])     {height:24px}

/* ── tune-1: section cards (At a Glance / Ownership / Service) ── */
.ef-scard{padding:18px 22px 14px;margin-bottom:14px}
.ef-scard-title{
  font-family:'DM Serif Display',Georgia,serif;font-size:22px;
  font-weight:400;color:var(--ink);margin:0 0 12px;padding:0;
}
#card-ownership .ef-scard-title,
#card-service   .ef-scard-title{margin-bottom:10px}
.ef-scard-intro{
  font-size:14px;color:var(--secondary);line-height:1.65;
  margin:0 0 14px;
}
.ef-scard-intro p{margin:0 0 10px}
.ef-scard-intro p:last-child{margin-bottom:0}
/* ef-own-closer retained for back-compat; tune-6 uses ef-own-body */
.ef-own-closer{font-style:italic}

/* ── tune-1/4: Overview prose + confidence ──────────────── */
.ef-glance-prose{font-size:14px;color:var(--secondary);line-height:1.65;margin:0 0 16px}
.ef-prose-link{color:var(--green);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.ef-prose-link:hover{color:var(--ink)}
.ef-glance-conf{font-size:11px;color:var(--secondary);opacity:.6;margin:10px 0 0;text-align:right}

/* ── tune-4: At a Glance dark disc card ─────────────────── */
.ef-dark-disc{padding:0!important;margin-bottom:14px}
.ef-dark-disc>summary{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 22px;cursor:pointer;list-style:none;gap:14px;user-select:none;
}
.ef-dark-disc>summary::-webkit-details-marker{display:none}
.ef-dark-disc-title{
  font-family:'DM Serif Display',Georgia,serif;font-size:22px;
  font-weight:400;font-style:normal;color:#fff;
}
.ef-dark-disc-ag{font-style:italic;color:#8fc9b2}
.ef-dark-disc-circ{
  width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none;
  transition:background .15s;
}
.ef-dark-disc:hover .ef-dark-disc-circ{background:rgba(255,255,255,.22)}
.ef-dark-disc-chev{
  width:14px;height:14px;stroke:#8fc9b2;stroke-width:2.4;
  fill:none;flex-shrink:0;transition:transform .15s;
}
.ef-dark-disc[open]>summary .ef-dark-disc-chev{transform:rotate(180deg)}
/* Belt: explicit hide when closed (belt-and-suspenders on top of UA default) */
.ef-dark-disc:not([open])>.ef-dark-disc-panel,.ef-dark-disc:not([open])>.ef-dark-vm-wrap{display:none}
.ef-dark-disc-panel{
  padding:0 14px 16px;
  /* display is intentionally absent — UA hides this when parent <details> is closed.
     display:grid is only activated below via the [open] rule so no author override
     exists when closed, removing the display conflict entirely. */
  grid-template-columns:1fr;gap:8px;
  max-width:420px;margin:0 auto;
}
/* Suspenders: set display only when open — guarantees correct layout AND ensures
   no author display value exists on the panel when the details is closed. */
.ef-dark-disc[open]>.ef-dark-disc-panel{display:grid}
.ef-dark-tile{
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  border-radius:10px;padding:12px 14px;
}
.ef-dark-tile--wide{grid-column:span 1}
.ef-dark-tile-label{
  font-size:9px;letter-spacing:.12em;text-transform:uppercase;
  color:#9dbcac;margin-bottom:5px;
}
.ef-dark-tile-value{
  font-family:'DM Serif Display',Georgia,serif;font-size:16px;
  font-weight:400;color:#f2f6f3;line-height:1.25;
}
.ef-dark-tile-value--dim{color:#f2f6f3}
.ef-dark-tile-note{font-size:11px;color:#7fa490;margin-top:6px}
.ef-dark-tile-note a{color:#8fc9b2;text-decoration:none}
.ef-dark-tile-note a:hover{text-decoration:underline}

/* ── tune-6: Verified Models sub-disclosure inside dark At a Glance card ── */
/* tune-8.1: VM wrap matches tile column width + centers, like .ef-dark-disc-panel */
.ef-dark-vm-wrap{padding:0 14px 14px;max-width:420px;margin:0 auto}
.ef-dark-subdisc{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:10px;overflow:hidden;
}
.ef-dark-subdisc>summary{
  display:flex;align-items:center;justify-content:space-between;
  padding:11px 14px;cursor:pointer;list-style:none;gap:10px;user-select:none;
}
.ef-dark-subdisc>summary::-webkit-details-marker{display:none}
.ef-dark-subdisc-label{
  font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:600;
  color:#c8e0d5;letter-spacing:.02em;display:flex;align-items:center;gap:7px;
}
.ef-vm-count-pill{
  font-family:'DM Mono',monospace;font-size:10px;font-weight:500;
  background:rgba(143,201,178,.2);border:1px solid rgba(143,201,178,.3);
  color:#8fc9b2;border-radius:20px;padding:1px 7px;line-height:1.5;margin-left:auto;
}
.ef-dark-subdisc-chev{
  width:14px;height:14px;stroke:#6fa48d;stroke-width:2.2;flex-shrink:0;
  transition:transform .15s;
}
.ef-dark-subdisc[open]>summary .ef-dark-subdisc-chev{transform:rotate(180deg)}
.ef-dark-subdisc:not([open])>.ef-dark-subdisc-panel{display:none}
.ef-dark-subdisc-panel{padding:10px 14px 14px;flex-direction:column;gap:10px}
.ef-dark-subdisc[open]>.ef-dark-subdisc-panel{display:flex}
.ef-vm-check-wrap{display:flex;gap:8px;align-items:center}
.ef-vm-dark-input{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.15)!important;color:#f0f6f3!important}
.ef-vm-dark-input::placeholder{color:#6a9480!important}
/* Model chips — class name ef-mono-chip retained for stability;
   face switched from DM Mono to DM Sans (medium, slight tracking). */
.ef-mono-chips{display:flex;flex-wrap:wrap;gap:5px;margin:4px 0}
.ef-mono-chip{
  font-family:'DM Sans',sans-serif;font-size:11.5px;font-weight:500;
  letter-spacing:.015em;font-feature-settings:"zero" 1;
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);
  border-radius:4px;padding:3px 7px;color:#d8efe6;white-space:nowrap;
}
a.ef-mono-chip{text-decoration:none;display:inline-block}
.ef-mono-chips-more{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
/* ef-mono-chip-group / ef-mono-var removed — replaced by footnote system */
.ef-dark-subdisc-more>summary{
  font-size:11px;color:#7fa490;cursor:pointer;list-style:none;
  padding:4px 2px;margin-top:2px;
}
.ef-dark-subdisc-more>summary::-webkit-details-marker{display:none}
/* "+N more / show less" toggle — spans switch on open/closed */
.ef-more-open{display:none}
.ef-dark-subdisc-more[open]>.ef-dark-more-btn .ef-more-closed{display:none}
.ef-dark-subdisc-more[open]>.ef-dark-more-btn .ef-more-open{display:inline}
.fym-chips-more[open]>.ef-dark-more-btn .ef-more-closed{display:none}
.fym-chips-more[open]>.ef-dark-more-btn .ef-more-open{display:inline}
/* Footnote legend at bottom of VM panel */
.ef-vm-footnotes{font-size:10.5px;color:#7fa490;line-height:1.5;padding:6px 0 2px;border-top:1px solid rgba(255,255,255,.08);margin-top:6px}
.ef-vm-fn-row{margin:1px 0}
.ef-fn-mark{font-size:9px;color:#8fc9b2;vertical-align:super;line-height:1;font-family:inherit}
.ef-fn-model{font-family:'DM Mono',monospace;color:#d8efe6}
/* Lens v1.1 — green checkmark on collapsed VM summary bar */
.ef-vm-lens-check{color:#1D9E75;font-size:13px;font-weight:600;flex-shrink:0;margin-right:4px;line-height:1}
.ef-dark-note{font-size:11px;color:#7fa490;line-height:1.5;margin:0}
/* Finish chips inside dark sub-disc — override light styles */
.ef-dark-subdisc-finishes .ef-finish-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.13)}
.ef-dark-subdisc-finishes .ef-finish-chip-code{color:#8fc9b2;background:rgba(143,201,178,.15);border-color:rgba(143,201,178,.25)}
.ef-dark-subdisc-finishes .ef-finish-chip-label{color:#d8efe6}
.ef-dark-subdisc-finishes .ef-lede,.ef-dark-subdisc-finishes .ef-note{color:#7fa490}

/* ── tune-6: Recall — active icon when events present (amber card removed tune-6 adj) ── */
.ef-recall-icon--active .ef-icon-tile{background:#fff0e0!important;color:#c45c00!important}
.ef-recall-clear{
  font-size:13px;color:var(--secondary);line-height:1.65;margin:0;
  font-style:italic;
}

/* ── tune-6: Ownership "How We See It" kicker ─────────────── */
.ef-own-kicker{
  font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;color:var(--green);
  margin:0 0 6px;
}
.ef-own-body{
  font-size:14px;color:var(--secondary);line-height:1.65;margin:0;
}

/* ── tune-2: AEL block in At a Glance ───────────────────── */
.ef-ael-block{margin-top:16px;padding-top:14px;border-top:0.5px solid var(--border)}
.ef-ael-label{
  font-size:10px;text-transform:uppercase;letter-spacing:.12em;
  color:var(--secondary);font-weight:600;margin-bottom:8px;
}
.ef-ael-detail{margin:0}
.ef-ael-detail>summary{
  list-style:none;display:inline-flex;align-items:center;
  gap:8px;cursor:pointer;user-select:none;
}
.ef-ael-detail>summary::-webkit-details-marker{display:none}
.ef-ael-figure{
  font-family:'DM Serif Display',Georgia,serif;font-size:28px;
  font-weight:400;color:var(--ink);line-height:1.1;
}
.ef-ael-chev{
  width:18px;height:18px;stroke:var(--secondary);stroke-width:2.2;
  fill:none;flex-shrink:0;transition:transform .15s;
}
.ef-ael-detail[open]>summary .ef-ael-chev{transform:rotate(180deg)}
.ef-ael-detail .ef-note{margin-top:10px}

/* ── tune-7: AEL brand mark + no-split ─────────────────── */
.ef-brand-edge{color:var(--green)}
.ef-nowrap{white-space:nowrap}

/* ── tune-1: finish chips block inside Verified Models ──── */
.ef-finish-chips-block{margin-top:12px}

/* ── tune-1/5: verdict banner updated layout (icon removed) ── */
.ef-verdict-row{display:flex;align-items:center;gap:12px;text-decoration:none;padding:2px 0}
.ef-verdict-txt{flex:1;min-width:0}
.ef-verdict-title{
  font-family:'DM Serif Display',Georgia,serif;font-size:22px;
  font-weight:400;color:#f2f6f3;line-height:1.3;display:block;
}
.ef-verdict-gi{color:#8fc9b2;font-style:italic}

/* ── still on the bench ─────────────────────────────────── */
/* .ef-bench removed — merged into .ef-trust (dataYouCanTrust) in tune-8 */

/* ── tune-1: mobile anchor ad slot (dormant) ────────────── */
.ef-anchor-ad{
  position:fixed;bottom:0;left:0;right:0;min-height:60px;
  background:var(--white);border-top:0.5px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;color:var(--secondary);z-index:99;
}

/* ── sticky mobile verdict bar (retired in tune-1) ───────── */
.ef-sticky{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:20;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(244,247,245,0) 0%,var(--mist) 38%);
}
.ef-sticky-inner{
  max-width:500px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--dark);color:#fff;text-decoration:none;
  border-radius:14px;padding:14px 16px;
  box-shadow:0 12px 28px -12px rgba(13,42,29,.5);
}
.ef-sticky-inner:hover{text-decoration:none}
.ef-sticky-txt{flex:1;min-width:0}
.ef-sticky-title{display:block;font-size:15px;font-weight:700;color:#fff}
.ef-sticky-sub{display:block;font-size:12px;color:#A9C4B5;margin-top:1px;font-weight:500}
.ef-sticky-circ{
  width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none;
}
.ef-sticky-circ svg{width:15px;height:15px;stroke:#fff;fill:none}

/* ── ad seam (dormant) ───────────────────────────────────── */
.ef-ad-slot{
  min-height:282px;border:1.5px dashed #D3DCD4;border-radius:14px;
  background:#FAFBF9;margin:0 0 16px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:6px;
  color:#A2AFA5;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;
}

/* ── hub page ────────────────────────────────────────────── */
/* White hero band (matches Promotions / tool page-header); mist body below */
.hub-hero{
  background:var(--white);padding:14px 0 60px;
  border-bottom:0.5px solid var(--border);
}
.hub-hero-inner{max-width:var(--content-max);margin:0 auto;padding:0 24px}
@media(min-width:768px){.hub-hero-inner{padding:0 48px}}
@media(max-width:640px){.hub-hero{padding:24px 0 36px}.hub-hero-inner{padding:0 24px}}
.hub-eyebrow{
  display:flex;align-items:center;gap:10px;
  font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--green);margin-bottom:22px;
}
.hub-eyebrow::before{content:'';width:28px;height:1.5px;background:var(--green);flex-shrink:0}
.hub-h1{font-family:'DM Serif Display',Georgia,serif;font-size:50px;font-weight:400;line-height:1.1;letter-spacing:-.5px;color:var(--ink);margin-bottom:12px}
.hub-h1 em{font-style:italic;color:var(--green)}
.hub-sub{font-size:15px;color:var(--secondary);line-height:1.65;max-width:80ch;margin-bottom:22px}
/* White-on-white search card — same lift language as Promotions .framing-box */
.hub-lookup-card{
  background:var(--white);border:0.5px solid var(--border);border-radius:var(--radius-lg);
  padding:24px;margin-bottom:0;
  box-shadow:0 1px 2px rgba(15,26,21,.03),0 10px 28px rgba(15,26,21,.04);
}
.hub-main{max-width:720px;margin:0 auto;padding:40px 24px 80px}
@media(min-width:768px){.hub-main{max-width:var(--content-max);padding:40px 48px 80px}}
@media(max-width:640px){.hub-main{padding:24px 24px 60px}}
/* Legacy wrapper — keep if any older markup remains */
.hub-page{max-width:var(--content-max);margin:0 auto;padding:0}
.hub-lookup-row{display:flex;gap:10px}
.hub-lookup-input{
  flex:1;padding:11px 14px;border:0.5px solid var(--border);
  border-radius:8px;font-family:'DM Sans',sans-serif;font-size:16px;
  color:var(--ink);outline:none;transition:border-color .15s;background:var(--white);
}
.hub-lookup-input:focus{border-color:var(--green)}
.hub-lookup-btn{
  padding:11px 20px;background:var(--green);color:#fff;border:none;
  border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;
  font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s;
}
.hub-lookup-btn:hover{background:var(--green-mid)}
.hub-lookup-btn:disabled{opacity:.5;cursor:default}
.hub-lookup-hint{font-size:12px;color:var(--secondary);margin-top:8px}
.hub-result{margin-top:14px;padding:13px 15px;border-radius:8px;font-size:13.5px;line-height:1.6}
.hub-result-nav{background:#edf7f3;border:1px solid #b8ddd2;color:var(--ink)}
.hub-result-soon{background:#fdf8ee;border:1px solid #e5c89d;color:#6b3800}
.hub-result-nomatch{background:var(--mist);border:1px solid var(--border);color:var(--secondary)}
.hub-result-candidates{background:var(--mist);border:1px solid var(--border);color:var(--ink)}
.hub-cand-label{font-size:13px;color:var(--secondary);margin:0 0 10px}
.hub-cand-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.hub-cand-list li{font-size:13.5px;line-height:1.45}
.hub-cand-list a{color:var(--green);font-weight:500;text-decoration:none}
.hub-cand-list a:hover{text-decoration:underline}
.hub-cand-soon{font-size:12px;color:var(--secondary);margin-left:6px;font-style:italic}
.hub-cand-hidden{display:none}
.hub-cand-more{
  display:inline-flex;align-items:center;gap:5px;
  background:none;border:none;padding:10px 0 0;
  color:var(--green);font-size:13px;font-weight:500;
  font-family:'DM Sans',sans-serif;cursor:pointer;
  text-decoration:none;
}
.hub-cand-more:hover{text-decoration:underline}
.hub-cand-chevron{font-size:16px;line-height:1;transition:transform .2s}
.hub-cand-tip{font-size:12px;color:var(--secondary);margin:8px 0 0;font-style:italic;display:none}
/* brand collage */
.hub-collage-section{margin-top:0}
.hub-collage-head{
  font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--secondary);margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border);
}
.hub-brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
@media(min-width:1100px){
  .hub-brand-grid{grid-template-columns:repeat(6,1fr)}
  .hub-brand-tile{aspect-ratio:1;min-height:0}
}
.hub-brand-tile{
  border:0.5px solid var(--border);border-radius:12px;background:var(--white);
  padding:16px 10px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:6px;
  text-decoration:none;min-height:76px;transition:background .15s,border-color .15s;
}
.hub-brand-tile:hover,.hub-brand-tile:focus-visible{background:var(--teal-light);border-color:var(--green);text-decoration:none;outline:none}
.hub-brand-tile img{
  max-width:128px;object-fit:contain;display:block;
}
/* optical bucket heights — hub collage (~15% under prior bump) */
.hub-brand-tile img[data-logo-shape="wordmark"]{height:44px}
.hub-brand-tile img[data-logo-shape="standard"]{height:37px}
.hub-brand-tile img[data-logo-shape="emblem"]  {height:34px}
.hub-brand-tile img:not([data-logo-shape])     {height:37px}
.hub-brand-wordmark{
  font-family:'DM Serif Display',Georgia,serif;font-size:13px;
  color:var(--secondary);text-align:center;line-height:1.2;
}
.hub-brand-tile:hover .hub-brand-wordmark{color:var(--green-deep)}
.hub-brand-tile-label{font-size:10px;color:var(--secondary);font-weight:600;text-align:center;margin-top:2px}
.hub-brand-tile.hub-brand-tile--prompt{border-style:dashed}
.hub-brand-tile.hub-brand-tile--prompt .hub-brand-wordmark,
.hub-brand-tile.hub-brand-tile--prompt .hub-brand-wordmark--prompt{
  font-family:'DM Serif Display',Georgia,serif;font-size:17px;font-weight:400;
  color:#0F1A15;opacity:1;line-height:1.3;
}
.hub-brand-tile.hub-brand-tile--prompt .hub-brand-tile-label{
  font-family:'DM Serif Display',Georgia,serif;font-size:17px;font-weight:400;
  font-style:italic;color:var(--green);margin-top:6px;
}
.hub-brand-tile.hub-brand-tile--prompt:hover .hub-brand-wordmark,
.hub-brand-tile.hub-brand-tile--prompt:hover .hub-brand-wordmark--prompt{color:#0F1A15}
.hub-brand-tile.hub-brand-tile--prompt:hover .hub-brand-tile-label{color:var(--green-deep)}
.hub-count-line{font-size:16px;font-weight:500;color:var(--ink);margin:0 0 24px;line-height:1.5}
.hub-count-line .hub-count-edge{color:var(--green)}
/* CTA banner */
.cta-banner{background:var(--green-light);border-radius:var(--radius-lg);padding:30px 26px;text-align:center;margin:20px 0}
.cta-banner h2{font-family:'DM Serif Display',Georgia,serif;font-size:22px;font-weight:400;color:var(--ink);margin-bottom:10px}
.cta-banner p{font-size:14px;color:var(--secondary);margin-bottom:18px;max-width:400px;margin-left:auto;margin-right:auto}
.btn-white-cta{
  display:inline-block;padding:11px 24px;background:var(--dark);color:#fff!important;
  border-radius:var(--radius-sm);font-size:14px;font-weight:500;
  text-decoration:none!important;transition:background .15s;
}
.btn-white-cta:hover{background:var(--green-deep)!important}

/* ── brand index page ────────────────────────────────────── */
.bp-page{max-width:720px;margin:0 auto;padding:32px 24px 80px}
.bp-header{display:block}
/* Sectioned brand page — sub-brand sections with anchor deep-links */
.bp-sub-section{margin-top:32px;scroll-margin-top:64px}
.bp-section-header{display:block;margin-bottom:0}
.bp-section-h2{font-family:'DM Serif Display',Georgia,serif;font-size:26px;font-weight:400;margin:0 0 8px;line-height:1.2}
.bp-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}
.bp-header-content{flex:1;min-width:0}
.bp-header-logo{flex-shrink:0;display:flex;align-items:flex-start;padding-top:2px}
.bp-logo{height:36px;max-width:120px;object-fit:contain;display:block}
.bp-wordmark{font-size:13px;font-weight:600;color:var(--ink);display:block}
.bp-h1{font-family:'DM Serif Display',Georgia,serif;font-size:28px;font-weight:400;margin:0 0 8px;line-height:1.2}
.bp-brand-name{color:var(--ink);font-style:normal;font-size:38px}
.bp-edge-label{color:var(--green);font-style:italic;display:block}
.bp-intro{font-size:14px;color:var(--secondary);line-height:1.5;margin:0}
.bp-promos-link{margin:8px 0 0;font-size:13px}
.bp-promos-link a{color:var(--green);text-decoration:none;font-weight:500}
.bp-promos-link a:hover{text-decoration:underline}
/* ── Find Your Model card ─────────────────────────────────────────────────── */
.fym-card{padding:0!important;overflow:hidden;margin-bottom:24px}
.fym-card-head{padding:18px 22px 14px}
.fym-card-head .ef-kicker{display:block;margin-bottom:6px}
.fym-card-intro{font-size:13px;color:var(--secondary);margin:0;line-height:1.5}
.fym-row{border-top:0.5px solid var(--border);margin:0!important}
.fym-row summary{padding:13px 20px}
/* Explicit :not([open]) hide — same fix as ef-dark-disc, prevents author padding from
   beating UA details hiding and creating ghost chip sections below the accordion. */
.fym-row:not([open])>.fym-panel{display:none}
.fym-panel{padding:10px 20px 16px}
.fym-subcat-head{
  font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--secondary);margin:12px 0 4px;
}
.fym-subcat-head:first-child{margin-top:0}
.fym-subcat-token-head{
  font-size:9.5px;font-weight:600;letter-spacing:.10em;text-transform:uppercase;
  color:var(--secondary);opacity:.75;margin:8px 0 3px;padding-left:2px;
}
.fym-subcat-token-head:first-child{margin-top:0}
.fym-chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}
.fym-chips:last-child{margin-bottom:0}
/* Dark-green chips on light card background — match family-page verified-model weight */
.fym-chip{
  font-size:11px!important;padding:3px 8px!important;
  color:var(--green-deep)!important;
  background:var(--teal-light)!important;
  border-color:#b8ddd2!important;
}
.fym-chip:hover{background:var(--green-light)!important;text-decoration:none}
.fym-count-chip{
  display:inline-block;font-family:'DM Mono',monospace;font-size:11px;font-weight:500;
  color:var(--green-mid);background:rgba(107,175,140,.1);
  border:0.5px solid rgba(107,175,140,.3);border-radius:20px;
  padding:0 7px;line-height:1.6;margin-left:4px;vertical-align:middle;
}
.fym-install-badge{
  font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--green-deep);background:rgba(107,175,140,.15);
  border-radius:3px;padding:1px 4px;margin-left:3px;vertical-align:middle;
  white-space:nowrap;
}
/* Zero-live section header chip (replaces numeric badge when no live models) */
.fym-soon-header-chip{
  font-size:9px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  color:var(--secondary);background:var(--mist);
  border:0.5px solid var(--border);border-radius:20px;
  padding:1px 8px;white-space:nowrap;vertical-align:middle;
}
/* Coming-soon pending zone within category sections */
.fym-pending-divider{
  font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  color:var(--secondary);margin-top:12px;margin-bottom:6px;
  padding-top:10px;border-top:1px solid var(--border);
}
.fym-chip--pending{
  color:var(--secondary)!important;cursor:default;pointer-events:none;
  border-color:var(--border)!important;
}
.fym-chip--pending:hover{background:transparent!important}
.fym-chips--pending{opacity:.75}
.fym-soon-badge{
  font-size:9px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  color:var(--secondary);background:var(--mist);
  border:0.5px solid var(--border);border-radius:20px;
  padding:1px 7px;white-space:nowrap;flex-shrink:0;margin-left:4px;
}
.bp-cta-full{background:var(--green-light)}
.bp-cta-inner{max-width:1100px;margin:0 auto;padding:40px 56px;display:flex;align-items:center;justify-content:space-between;gap:48px}
.bp-cta-heading{font-family:'DM Serif Display',serif;font-size:34px;font-weight:400;color:var(--ink);margin-bottom:6px;letter-spacing:-0.3px;line-height:1.2}
.bp-cta-heading em{font-style:italic;color:var(--green)}
.bp-cta-sub{font-size:14px;color:var(--secondary);line-height:1.6;margin:0}
.btn-green-cta{background:var(--green);color:var(--white)!important;padding:12px 28px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;text-decoration:none!important;white-space:nowrap;flex-shrink:0;transition:background .15s}
.btn-green-cta:hover{background:var(--green-mid)!important}
@media(max-width:860px){.bp-cta-inner{padding:32px 24px;gap:32px}}
@media(max-width:600px){.bp-cta-inner{flex-direction:column;align-items:center;text-align:center;gap:24px}.btn-green-cta{display:block;text-align:center}}

/* ── footer ──────────────────────────────────────────────── */
footer{
  background:#071A15;border-top:none;padding:44px 56px;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:20px;
}
.footer-logo{width:258px;height:auto;display:block}
.footer-links{display:flex;gap:42px;list-style:none}
.footer-links a{font-size:14px;color:rgba(255,255,255,.6);text-decoration:none;transition:color .15s}
.footer-links a:hover{color:var(--green)}
.footer-copy{font-size:14px;color:rgba(255,255,255,.35)}
.ftc-strip{
  background:#071A15;border-top:0.5px solid rgba(255,255,255,.08);
  padding:14px 56px;font-size:12px;color:rgba(255,255,255,.3);
  line-height:1.6;text-align:center;
}

/* ── responsive ──────────────────────────────────────────── */
/* optical bucket heights — About card desktop slot (32px) */
@media(min-width:601px){
  .ef-about-logo[data-logo-shape="wordmark"]{height:32px}
  .ef-about-logo[data-logo-shape="standard"]{height:27px}
  .ef-about-logo[data-logo-shape="emblem"]  {height:22px}
  .ef-about-logo:not([data-logo-shape])     {height:27px}
}
@media(max-width:950px){
  .hamburger{display:flex}
  .nav-links{display:none!important}
}
@media(max-width:600px){
  nav{padding:0 20px;height:60px}
  .mobile-menu{top:60px}
  .ef-page{padding:16px 16px 96px}
  .ef-card{padding:20px 18px}
  .ef-chapter-header{padding:18px 18px 8px}
  .ef-disclosure summary{padding:13px 18px}
  .ef-panel{padding:0 18px 18px}
  .ef-open-card{padding:18px 18px}
  .ef-headline{font-size:22px}
  .ef-id-tiles,.ef-econ-tiles{grid-template-columns:1fr}
  .ef-id-badge{padding:24px 18px 18px;gap:10px}
  .ef-id-badge-brand{font-size:28px}
  .ef-id-badge-pattern{font-size:22px;font-style:italic}
  .ef-scard{padding:16px 16px 12px}
  .hub-brand-grid{grid-template-columns:repeat(3,1fr)}
  footer{padding:32px 24px;flex-direction:column;align-items:flex-start;gap:16px}
  .footer-links{gap:20px;flex-wrap:wrap}
  .ftc-strip{padding:12px 24px}
  input,select,textarea{font-size:16px!important}
  .ef-dark-disc-panel{max-width:100%}
  .ef-dark-vm-wrap{max-width:100%}
  .ef-dark-disc-title{font-size:20px}
  .ef-verdict-title{font-size:20px}
  .hub-h1{font-size:clamp(28px,8vw,36px)}
}
/* ── Known-Issues section ("Recurring Issues to Watch For") ─────────────── */
.ef-ki-entry{border-bottom:1px solid var(--border);padding:14px 0;}
.ef-ki-entry:last-of-type{border-bottom:none;}
.ef-ki-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;flex-wrap:wrap;}
.ef-ki-tier-chip{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:3px;padding:2px 7px;white-space:nowrap;}
.ef-ki-chip--t1{background:#1a3d28;color:#5dd6a0;border:1px solid #2d6045;}
.ef-ki-chip--t2{background:#1e2e3d;color:#7bb6e0;border:1px solid #2a4560;}
.ef-ki-chip--t3{background:#2e2a1a;color:#c9a84c;border:1px solid #4d3f18;}
.ef-ki-era{font-size:11px;color:var(--secondary);font-family:'DM Mono',monospace;margin-left:auto;}
.ef-ki-title{font-weight:700;font-size:14px;color:var(--text);margin-bottom:4px;line-height:1.35;}
.ef-ki-body{font-size:13px;color:var(--secondary);margin:0 0 8px;line-height:1.5;}
.ef-ki-entry--t3 .ef-ki-title{font-weight:600;color:var(--secondary);}
.ef-ki-entry--t3 .ef-ki-body{font-size:12.5px;}
/* Affected-model expand */
.ef-ki-affected{margin-top:4px;}
.ef-ki-affected-trigger{font-size:12px;color:var(--green-mid);cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:4px;user-select:none;}
.ef-ki-affected-trigger::-webkit-details-marker{display:none}
.ef-ki-aff-open{display:none}
.ef-ki-affected[open] .ef-ki-aff-closed{display:none}
.ef-ki-affected[open] .ef-ki-aff-open{display:inline}
.ef-ki-aff-content{padding:8px 0 4px;}
.ef-ki-serial{font-size:11.5px;color:var(--secondary);margin-bottom:6px;font-family:'DM Mono',monospace;}
.ef-ki-model-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px;}
.ef-ki-model{font-family:'DM Sans',sans-serif;font-size:11.5px;font-weight:500;letter-spacing:.015em;font-feature-settings:"zero" 1;background:var(--card-bg);border:1px solid var(--border);border-radius:3px;padding:2px 6px;color:var(--secondary);}
.ef-ki-model--match{background:#1a3d28;border-color:#2d6045;color:#5dd6a0;font-weight:600;}
.ef-ki-model--match::after{content:'\00a0\2014\00a0your model';font-weight:400;color:#5dd6a0;}
/* Provenance note */
.ef-ki-provenance{font-size:11px;color:var(--secondary);font-style:italic;margin:6px 0 0;padding:6px 10px;border-left:2px solid var(--border);}
/* Generic wear-points drawer */
.ef-ki-generic-drawer{margin-top:12px;}
.ef-ki-generic-trigger{font-size:11.5px;color:var(--secondary);cursor:pointer;list-style:none;user-select:none;}
.ef-ki-generic-trigger::-webkit-details-marker{display:none}
/* Empty state */
.ef-ki-empty-state{font-size:13px;color:var(--secondary);font-style:italic;margin-bottom:10px;}
/* Tier 4 Owner-Reported zone */
.ef-ki-tier4{margin-top:20px;padding-top:16px;border-top:2px solid var(--border);}
/* fym-chips-more on brand pages */
.fym-chips-more{margin-top:4px;}
.fym-chips-more>summary{font-size:11px;color:#7fa490;cursor:pointer;list-style:none;padding:4px 2px;margin-top:2px;}
.fym-chips-more>summary::-webkit-details-marker{display:none}

@media(max-width:400px){
  .hub-brand-grid{grid-template-columns:repeat(2,1fr)}
}
