/* ============================================================
   LML THEME — MASTER STYLESHEET v1.1
   Life Medical Lab | All styles in one file.
   ============================================================ */

/* ── 1. FONTS loaded non-blocking via <link rel="preload"> in header.php ── */
/* @import removed — it blocks CSS parsing until fonts download.             */

/* ── 2. CSS CUSTOM PROPERTIES ───────────────────────────────── */
:root {
  --color-primary:        #0D7C7C;
  --color-primary-dark:   #0A6363;
  --color-primary-mid:    #0F9898;
  --color-primary-light:  rgba(13,124,124,.1);
  --color-primary-xlight: #E6FFFA;
  --color-secondary:      #164E63;
  --color-accent:         #06B6D4;
  --color-surface-teal:   #F0FDFB;
  --color-normal:         #16A34A; --color-normal-bg: #DCFCE7; --color-normal-border: #86EFAC;
  --color-borderline:     #D97706; --color-borderline-bg: #FEF3C7; --color-borderline-border: #FCD34D;
  --color-elevated:       #EA580C; --color-elevated-bg: #FFEDD5; --color-elevated-border: #FDBA74;
  --color-critical:       #DC2626; --color-critical-bg: #FEF2F2; --color-critical-border: #FCA5A5;
  --color-dark:           #0F172A;
  --color-text:           #1E293B;
  --color-text-secondary: #475569;
  --color-text-muted:     #64748B;
  --color-text-faint:     #94A3B8;
  --color-border:         #E2E8F0;
  --color-border-dark:    #CBD5E1;
  --color-border-light:   #F1F5F9;
  --color-surface:        #F8FAFC;
  --color-white:          #FFFFFF;
  --font-body: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'Courier New', monospace;
  --text-xs:.75rem; --text-sm:.875rem; --text-base:1rem; --text-lg:1.125rem;
  --text-xl:1.25rem; --text-2xl:1.5rem; --text-3xl:1.875rem; --text-4xl:2.25rem; --text-5xl:3rem;
  --fw-regular:400; --fw-medium:500; --fw-semibold:600; --fw-bold:700; --fw-extrabold:700;
  --weight-regular:400; --weight-medium:500; --weight-semibold:600; --weight-bold:700;
  --lh-tight:1.2; --lh-snug:1.35; --lh-normal:1.6; --lh-relaxed:1.75; --lh-loose:1.85;
  --leading-tight:1.2; --leading-snug:1.35; --leading-relaxed:1.75; --leading-loose:1.85;
  --ls-tight:-0.02em; --ls-snug:-0.01em; --ls-wide:0.02em; --ls-wider:0.08em;
  --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.25rem;
  --space-6:1.5rem; --space-7:1.75rem; --space-8:2rem; --space-10:2.5rem;
  --space-12:3rem; --space-16:4rem; --space-20:5rem; --space-24:6rem;
  --radius-sm:4px; --radius-md:8px; --radius-lg:12px; --radius-xl:16px;
  --radius-2xl:24px; --radius-full:9999px; --radius-btn:50px;
  --shadow-xs:0 1px 2px rgba(15,23,42,.06);
  --shadow-sm:0 1px 3px rgba(15,23,42,.08),0 1px 2px rgba(15,23,42,.06);
  --shadow-md:0 4px 6px rgba(15,23,42,.07),0 2px 4px rgba(15,23,42,.06);
  --shadow-lg:0 10px 15px rgba(15,23,42,.08),0 4px 6px rgba(15,23,42,.05);
  --shadow-xl:0 20px 25px rgba(15,23,42,.08),0 8px 10px rgba(15,23,42,.05);
  --shadow-nav:0 4px 12px rgba(15,23,42,.08);
  --shadow-teal:0 4px 14px rgba(13,124,124,.25);
  --focus-ring:0 0 0 3px rgba(13,124,124,.35);
  --container-max:1200px; --container-narrow:768px; --container-prose:720px;
  --nav-height:72px; --header-height:72px;
  --transition:150ms ease;
}

/* ── 3. RESET ───────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-relaxed);color:var(--color-text);background:var(--color-white);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{max-width:100%;height:auto;display:block}
a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--color-primary-dark)}
a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:2px}
button,input,textarea,select{font-family:inherit;font-size:inherit}
button{cursor:pointer;border:none;background:none}
ul,ol{list-style:none}
.skip-to-content{position:absolute;top:-100%;left:1rem;z-index:9999;padding:.75rem 1.5rem;background:var(--color-primary);color:#fff;font-weight:var(--fw-semibold);border-radius:var(--radius-btn);text-decoration:none;transition:top 150ms ease}
.skip-to-content:focus{top:1rem}

/* ── 4. HEADINGS — Poppins, weights 600/500 ─────────────────── */
h1,h2,h3,h4,h5,h6{font-family:var(--font-body);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--color-dark);letter-spacing:var(--ls-snug)}
h1{font-size:clamp(1.875rem,4vw,var(--text-5xl));font-weight:var(--fw-semibold)}
h2{font-size:clamp(1.5rem,3vw,var(--text-4xl));font-weight:var(--fw-semibold)}
h3{font-size:clamp(1.25rem,2.5vw,var(--text-3xl));font-weight:var(--fw-medium)}
h4{font-size:var(--text-2xl);font-weight:var(--fw-medium)}
h5{font-size:var(--text-xl)}
h6{font-size:var(--text-lg)}
p{margin-bottom:var(--space-4)}
p:last-child{margin-bottom:0}

/* ── 5. LAYOUT ──────────────────────────────────────────────── */
.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-6)}
.container--narrow{max-width:var(--container-narrow)}
.container--prose{max-width:var(--container-prose)}
.section-padding{padding-block:var(--space-20)}
.section-padding--sm{padding-block:var(--space-12)}

/* ── 6. BUTTONS — Pill shape everywhere ─────────────────────── */
.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-ghost,.btn-white,.btn-white-outline {
  display:inline-flex;align-items:center;gap:var(--space-2);
  padding:.625rem 1.375rem;font-size:var(--text-sm);font-weight:var(--fw-semibold);
  border-radius:var(--radius-btn);border:2px solid transparent;
  transition:all var(--transition);cursor:pointer;white-space:nowrap;
  text-decoration:none;line-height:1;
}
.btn,.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
.btn:hover,.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-teal)}
.btn-secondary{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}
.btn-secondary:hover{background:#0f3749;border-color:#0f3749;color:#fff}
.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}
.btn-outline:hover{background:var(--color-primary);color:#fff}
.btn-ghost{background:transparent;color:var(--color-text);border-color:var(--color-border)}
.btn-ghost:hover{background:var(--color-surface)}
.btn-white{background:#fff;color:var(--color-primary);border-color:#fff}
.btn-white:hover{background:var(--color-primary-xlight)}
.btn-white-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-white-outline:hover{background:rgba(255,255,255,.15);border-color:#fff;color:#fff}
.btn-sm{padding:.4rem 1rem;font-size:var(--text-xs)}
.btn-lg{padding:.875rem 1.875rem;font-size:var(--text-base)}
.nav-cta{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1.1rem;font-size:var(--text-sm);font-weight:var(--fw-semibold);background:var(--color-primary);color:#fff;border-radius:var(--radius-btn);border:none;cursor:pointer;text-decoration:none;transition:all var(--transition)}
.nav-cta:hover{background:var(--color-primary-dark);color:#fff;box-shadow:var(--shadow-teal)}

/* ── 7. BADGES ──────────────────────────────────────────────── */
.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .625rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);border-radius:var(--radius-full);border:1px solid transparent}
.badge-normal,.status-badge--normal{background:var(--color-normal-bg);color:var(--color-normal);border-color:var(--color-normal-border)}
.badge-borderline,.status-badge--borderline{background:var(--color-borderline-bg);color:var(--color-borderline);border-color:var(--color-borderline-border)}
.badge-elevated,.status-badge--elevated{background:var(--color-elevated-bg);color:var(--color-elevated);border-color:var(--color-elevated-border)}
.badge-critical,.status-badge--critical{background:var(--color-critical-bg);color:var(--color-critical);border-color:var(--color-critical-border)}
.status-badge{display:inline-flex;align-items:center;padding:.15rem .625rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);border-radius:var(--radius-full)}

/* ── 8. ARTICLE CARDS ───────────────────────────────────────── */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}
.post-card{background:var(--color-white);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;display:flex;flex-direction:column;transition:all 250ms ease;text-decoration:none;color:inherit}
.post-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.post-card__thumb{aspect-ratio:16/9;overflow:hidden;background:var(--color-surface);position:relative}
.post-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform 400ms ease}
.post-card:hover .post-card__thumb img{transform:scale(1.04)}
.post-card__thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-surface-teal) 0%,var(--color-surface) 100%)}
.post-card__body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);flex:1}
.post-card__meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.post-card__cat{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);background:var(--color-primary-light);padding:.2rem .625rem;border-radius:var(--radius-full);text-decoration:none;transition:background var(--transition)}
.post-card__cat:hover{background:rgba(13,124,124,.18);color:var(--color-primary)}
.post-card__time{font-size:var(--text-xs);color:var(--color-text-faint);display:flex;align-items:center;gap:.25rem}
.post-card__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:var(--lh-snug);flex:1}
.post-card:hover .post-card__title{color:var(--color-primary)}
.post-card__excerpt{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-card__footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--color-border);margin-top:auto}
.post-card__author{display:flex;align-items:center;gap:var(--space-2);text-decoration:none}
.post-card__author-img{width:26px;height:26px;border-radius:50%;object-fit:cover;border:1.5px solid var(--color-border)}
.post-card__author-name{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--color-text-muted)}
.post-card__readmore{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);display:flex;align-items:center;gap:.2rem}

/* ── 9. SECTION HEADERS ─────────────────────────────────────── */
.section-header{text-align:center;margin-bottom:var(--space-12)}
.section-eyebrow{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);background:var(--color-primary-light);padding:.25rem .875rem;border-radius:var(--radius-full);margin-bottom:var(--space-3)}
.section-title{font-size:clamp(1.75rem,3.5vw,var(--text-4xl));font-weight:var(--fw-semibold);color:var(--color-dark);letter-spacing:var(--ls-tight);margin-bottom:var(--space-3)}
.section-desc{font-size:var(--text-lg);color:var(--color-text-muted);max-width:580px;margin-inline:auto;line-height:var(--lh-relaxed)}

/* ── 10. BREADCRUMB ─────────────────────────────────────────── */
/* ── BREADCRUMB STRIP — teal bar at top of content pages ── */
.breadcrumb-strip{
  background:linear-gradient(90deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);
  padding:.5rem 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.breadcrumb{margin:0;padding:0}
.breadcrumb__list{
  display:flex;
  align-items:center;
  gap:.25rem;
  flex-wrap:wrap;
  list-style:none;
  margin:0;padding:0;
}
.breadcrumb__list li{
  display:flex;
  align-items:center;
  gap:.25rem;
  font-size:11px;
  font-weight:var(--fw-medium);
  color:rgba(255,255,255,.65);
}
.breadcrumb__list li a{
  color:rgba(255,255,255,.65);
  text-decoration:none;
  transition:color var(--transition);
}
.breadcrumb__list li a:hover{color:#fff}
.breadcrumb__list li:last-child{color:rgba(255,255,255,.95);font-weight:var(--fw-semibold)}
.breadcrumb__sep-icon{stroke:rgba(255,255,255,.4);flex-shrink:0}

/* ── 11. HEADER ─────────────────────────────────────────────── */
.site-header{position:sticky;top:0;z-index:900;height:var(--nav-height);background:var(--color-white);border-bottom:1px solid var(--color-border);transition:box-shadow var(--transition)}
.site-header.is-scrolled{box-shadow:var(--shadow-nav)}
.header-inner{display:flex;align-items:center;height:100%;gap:var(--space-3);max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-6)}
.site-logo{flex-shrink:0;display:flex;align-items:center;gap:.625rem;text-decoration:none}
.site-logo img{height:40px;width:auto;display:block}
.site-logo__text{display:flex;flex-direction:column;line-height:1.1}
.site-logo__name{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--color-dark);letter-spacing:var(--ls-snug)}
.site-logo__name span{color:var(--color-primary)}
/* Footer override — dark bg so name must be white */
.site-footer .site-logo__name{color:#fff}
.site-footer .site-logo__name span{color:#4EEAEA}
.site-logo__tagline{font-size:.6rem;text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);font-weight:var(--fw-medium)}
#lml-nav{flex:1;display:flex;justify-content:center}
.nav-list{display:flex;align-items:center;gap:.25rem;list-style:none}
.nav-item{position:relative}
.nav-link{display:flex;align-items:center;gap:.3rem;padding:.5rem .75rem;font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text);border-radius:var(--radius-sm);transition:all var(--transition);white-space:nowrap;text-decoration:none}
.nav-link:hover,li[data-menu].menu-open>a{color:var(--color-primary);background:var(--color-primary-light)}
.nav-chevron{width:14px;height:14px;transition:transform var(--transition);flex-shrink:0}
li[data-menu].menu-open>a .nav-arrow{transform:rotate(180deg)}
.header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}
.search-trigger{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:all var(--transition)}
.search-trigger:hover{background:var(--color-surface);color:var(--color-primary)}
.hamburger-btn{display:none;flex-direction:column;gap:5px;width:36px;height:36px;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition)}
.hamburger-btn:hover{background:var(--color-surface)}
.hamburger-btn span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:all .25s ease;transform-origin:center}
.hamburger-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── 12. MEGA MENU — Full-width fixed ───────────────────────── */
/* ── MEGA MENU v1.6 — floating card, rounded, centred ── */
.mega-menu{
  position:fixed;
  top:calc(var(--nav-height) + 6px);   /* 6px gap below header bottom edge */
  left:50%;
  transform:translateX(-50%) translateY(-6px);
  width:min(1200px, calc(100vw - 3rem));
  background:var(--color-white);
  border:1.5px solid var(--color-border);
  border-top:3px solid var(--color-primary);
  border-radius:0 0 var(--radius-xl) var(--radius-xl);
  box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 200ms ease,visibility 200ms ease,transform 200ms ease;
  z-index:850;
  /* Invisible bridge covers gap between nav link and menu */
}
.mega-menu::before{
  content:'';
  position:absolute;
  top:-10px;
  left:0;right:0;
  height:10px;
  background:transparent;
  pointer-events:all;  /* keeps hover when mouse crosses the gap */
}
.mega-menu.is-open,li[data-menu].menu-open>.mega-menu{
  opacity:1;
  visibility:visible;
  pointer-events:all;
  transform:translateX(-50%) translateY(0);
}
.mega-inner{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 260px;gap:var(--space-5);padding:var(--space-5) var(--space-6);max-width:100%;}
.mega-col-heading{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);padding-bottom:.5rem;border-bottom:2px solid var(--color-primary-light);margin-bottom:.625rem;display:flex;align-items:center;gap:.375rem}
.mega-col-heading svg{width:14px;height:14px}
.mega-link{display:flex;align-items:center;gap:.375rem;padding:.3rem .5rem;font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);transition:all var(--transition);text-decoration:none}
.mega-link:hover{background:var(--color-primary-light);color:var(--color-primary);padding-left:.875rem}
/* FIX: constrain SVG chevron inside mega-link to 14px — was rendering full size */
.mega-link svg{width:14px;height:14px;flex-shrink:0;color:var(--color-text-muted);transition:color var(--transition)}
.mega-link:hover svg{color:var(--color-primary)}
.mega-link-dot{width:5px;height:5px;border-radius:50%;background:var(--color-border-dark);flex-shrink:0;transition:background var(--transition)}
.mega-link:hover .mega-link-dot{background:var(--color-primary)}
.mega-viewall{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);margin-top:.5rem;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition);text-decoration:none}
.mega-viewall:hover{background:var(--color-primary-light)}
/* ── MEGA MENU 5th column: Quick Start panel ── */
.mega-quickstart{display:flex;flex-direction:column;gap:var(--space-2);height:100%}
/* Primary CTA card — teal tool button */
.mega-quickstart__tool{display:flex;align-items:center;gap:var(--space-2);background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));border-radius:var(--radius-lg);padding:var(--space-3);text-decoration:none;transition:all 200ms ease;flex-shrink:0}
.mega-quickstart__tool:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 6px 16px rgba(13,124,124,.3)}
.mega-quickstart__tool-icon{width:34px;height:34px;background:rgba(255,255,255,.18);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mega-quickstart__tool-icon svg{width:17px;height:17px;stroke:#fff}
.mega-quickstart__tool-body{flex:1;min-width:0}
.mega-quickstart__tool-label{display:block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.7);margin-bottom:1px}
.mega-quickstart__tool-name{display:block;font-size:var(--text-xs);font-weight:700;color:#fff;line-height:1.25}
.mega-quickstart__tool-desc{display:block;font-size:9px;color:rgba(255,255,255,.72);margin-top:1px;line-height:1.3}
.mega-quickstart__tool-arrow{width:14px;height:14px;stroke:#fff;opacity:.7;flex-shrink:0}
/* Divider label */
.mega-quickstart__divider{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-1) 0}
.mega-quickstart__divider::before,.mega-quickstart__divider::after{content:'';flex:1;height:1px;background:var(--color-border)}
.mega-quickstart__divider span{font-size:10px;font-weight:600;color:var(--color-text-faint);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em}
/* Guide links */
.mega-quickstart__guide{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--radius-md);text-decoration:none;transition:all 150ms ease;color:var(--color-text)}
.mega-quickstart__guide:hover{background:var(--color-primary-light);color:var(--color-primary)}
.mega-quickstart__guide-icon{width:26px;height:26px;background:var(--color-surface);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background 150ms}
.mega-quickstart__guide-icon svg{width:13px;height:13px;stroke:var(--color-primary)}
.mega-quickstart__guide:hover .mega-quickstart__guide-icon{background:rgba(13,124,124,.12)}
.mega-quickstart__guide span{font-size:var(--text-xs);font-weight:var(--fw-medium);flex:1;line-height:1.3}
.mega-quickstart__guide>svg:last-child{width:12px;height:12px;stroke:var(--color-text-faint);flex-shrink:0}
.mega-quickstart__guide:hover>svg:last-child{stroke:var(--color-primary)}
/* Keep old mega-featured for any legacy use */
.mega-featured{background:var(--color-surface-teal);border-radius:var(--radius-md);padding:var(--space-3);border:1px solid rgba(13,124,124,.15)}
.mega-featured-label{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:var(--space-2);display:flex;align-items:center;gap:.3rem}
.mega-featured-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:var(--lh-snug);margin-bottom:.5rem}
.mega-featured-cta{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary)}

/* Standard dropdown */
.dropdown-menu{position:absolute;top:calc(100% + 2px);left:50%;transform:translateX(-50%);min-width:480px;background:var(--color-white);border:1px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-3);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition),visibility var(--transition);z-index:850}
li[data-menu].menu-open .simple-dropdown,li[data-menu].menu-open .dropdown-menu{opacity:1;visibility:visible;pointer-events:all}
.dropdown-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}
.dropdown-col-heading{font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);padding-bottom:.375rem;border-bottom:1px solid var(--color-border);margin-bottom:.5rem}
.dropdown-item{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);transition:all var(--transition);text-decoration:none}
.dropdown-item:hover{background:var(--color-primary-light);color:var(--color-primary);padding-left:.875rem}
.dropdown-item svg{width:14px;height:14px;color:var(--color-primary);flex-shrink:0}

/* Calculators strip */
.calc-dropdown{min-width:640px}
.calc-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.calc-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.375rem;padding:var(--space-2) .75rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition);background:var(--color-white)}
.calc-card:hover{border-color:var(--color-primary);background:var(--color-primary-light);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.calc-card__icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}
.calc-card__name{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-dark);line-height:1.2}
.calc-card__desc{font-size:.65rem;color:var(--color-text-muted);line-height:1.3}

/* Authors dropdown */
.authors-dropdown{min-width:360px}
.authors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);margin-bottom:var(--space-2)}
.author-mini{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem .5rem;border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition)}
.author-mini:hover{background:var(--color-primary-light)}
.author-mini__avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--color-border);transition:border-color var(--transition)}
.author-mini:hover .author-mini__avatar{border-color:var(--color-primary)}
.author-mini__name{font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--color-dark);text-align:center;line-height:1.2}
.author-mini__cred{font-size:.65rem;color:var(--color-text-muted);text-align:center}
.authors-team-link{display:block;text-align:center;padding:.5rem;border-top:1px solid var(--color-border);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);transition:all var(--transition);border-radius:0 0 var(--radius-md) var(--radius-md)}
.authors-team-link:hover{background:var(--color-primary-light)}

/* ── 13. MOBILE NAV ─────────────────────────────────────────── */
.mobile-nav-panel{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-white);z-index:950;overflow-y:auto;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);padding:16px 20px 24px}
.mobile-nav-panel.is-open{transform:translateX(0)}
.mobile-nav-overlay{position:fixed;inset:0;background:rgba(15,23,42,.5);z-index:940;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}
.mobile-nav-overlay.is-open{opacity:1;visibility:visible;pointer-events:all}

/* Panel header */
.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;margin-bottom:4px;border-bottom:1px solid var(--color-border)}
.mobile-nav-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--color-surface);border:none;cursor:pointer;transition:background var(--transition)}
.mobile-nav-close:hover{background:var(--color-border)}

/* Nav items */
.mobile-nav-item{border-bottom:1px solid var(--color-border)}

/* FIX 1: trigger is now a proper flex row — chevron aligns right, never wraps */
.mobile-nav-trigger{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:12px 0;
  font-size:15px;
  font-weight:600;
  color:var(--color-text);
  background:none;
  border:none;
  cursor:pointer;
  text-align:left;
  gap:12px;
  transition:color var(--transition);
  line-height:1.4;
}
.mobile-nav-trigger:hover{color:var(--color-primary)}

/* Chevron icon */
.mobile-nav-chevron{
  width:20px;height:20px;
  flex-shrink:0;
  stroke:var(--color-text-muted);
  transition:transform .25s ease, stroke .25s;
}
.mobile-nav-trigger:hover .mobile-nav-chevron{stroke:var(--color-primary)}

/* FIX 2: JS adds is-open to .mobile-nav-item — selectors now match */
.mobile-nav-item.is-open .mobile-nav-chevron{transform:rotate(180deg);stroke:var(--color-primary)}
.mobile-nav-item.is-open>.mobile-nav-trigger{color:var(--color-primary)}

/* FIX 3: accordion driven by is-open on parent, not .open class */
.mobile-accordion{display:none;padding:0 0 10px 0}
.mobile-nav-item.is-open>.mobile-accordion{display:block}

/* Accordion links */
.mobile-acc-link{
  display:flex;align-items:center;gap:8px;
  padding:6px 10px;
  font-size:13.5px;
  color:var(--color-text-muted);
  text-decoration:none;
  border-radius:8px;
  transition:all var(--transition);
  margin-bottom:1px;
}
.mobile-acc-link::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--color-border-dark);flex-shrink:0;transition:background var(--transition)}
.mobile-acc-link:hover{color:var(--color-primary);background:var(--color-primary-light)}
.mobile-acc-link:hover::before{background:var(--color-primary)}
.mobile-acc-link.view-all{color:var(--color-primary);font-weight:600}
.mobile-acc-link.view-all::before{display:none}

/* Footer CTA */
.mobile-nav-foot{padding-top:20px}
.mobile-nav-foot .btn-primary{display:block;width:100%;text-align:center}

/* ── MOBILE NAV HEAD — logo + CTA pill + close ── */
.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;margin-bottom:0;border-bottom:1px solid var(--color-border)}
.mobile-nav-head__right{display:flex;align-items:center;gap:10px}
.mnav-cta-pill{display:inline-flex;align-items:center;gap:4px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;padding:6px 11px;border-radius:var(--radius-full);text-decoration:none;white-space:nowrap;transition:background var(--transition)}
.mnav-cta-pill:hover{background:var(--color-primary-dark);color:#fff}

/* ── QUICK ACTION ROW — two side-by-side pills ── */
.mnav-quick-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--color-border)}
.mnav-quick-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;border:1.5px solid var(--color-border);border-radius:var(--radius-lg);font-size:13px;font-weight:600;color:var(--color-text);text-decoration:none;transition:all var(--transition);background:var(--color-white)}
.mnav-quick-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-xlight)}
.mnav-quick-btn svg{stroke:var(--color-primary);flex-shrink:0}

/* ── FEATURED TOOL CARD ── */
.mnav-featured-card{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);border-radius:var(--radius-xl);padding:16px;margin:16px 0 0}
.mnav-featured-card__icon{width:44px;height:44px;background:rgba(255,255,255,.15);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mnav-featured-card__icon svg{stroke:#fff}
.mnav-featured-card__body{flex:1;min-width:0}
.mnav-featured-card__label{display:block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.7);margin-bottom:2px}
.mnav-featured-card__name{display:block;font-size:14px;font-weight:700;color:#fff;margin-bottom:2px}
.mnav-featured-card__desc{display:block;font-size:11px;color:rgba(255,255,255,.75);line-height:1.4}
.mnav-featured-card__btn{width:34px;height:34px;background:rgba(255,255,255,.2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;text-decoration:none;transition:background var(--transition)}
.mnav-featured-card__btn:hover{background:rgba(255,255,255,.3)}
.mnav-featured-card__btn svg{stroke:#fff}

/* ── FREE TOOLS SECTION ── */
.mnav-tools{padding:16px 0 0;margin-top:16px;border-top:1px solid var(--color-border)}
.mnav-tools__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-faint);margin-bottom:10px}
.mnav-tool-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition);margin-bottom:4px}
.mnav-tool-row:hover{background:var(--color-surface-teal)}
.mnav-tool-row__icon{width:34px;height:34px;background:var(--color-primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mnav-tool-row__icon svg{stroke:var(--color-primary)}
.mnav-tool-row__body{flex:1;min-width:0}
.mnav-tool-row__name{display:block;font-size:13px;font-weight:600;color:var(--color-dark);line-height:1.2}
.mnav-tool-row__desc{display:block;font-size:11px;color:var(--color-text-muted);margin-top:1px}
.mnav-tool-row>svg:last-child{stroke:var(--color-text-faint);flex-shrink:0}
.mnav-tool-row:hover>svg:last-child{stroke:var(--color-primary)}

/* ── FOOTER CTA ── */
.mobile-nav-foot{padding:16px 0 0;margin-top:16px;border-top:1px solid var(--color-border)}
.mobile-nav-foot__btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px;width:100%;text-align:center;border-radius:var(--radius-btn)}

.mobile-cta{width:100%;text-align:center;margin-top:var(--space-3)}

/* ── 14. SEARCH OVERLAY ─────────────────────────────────────── */
/* ── SEARCH OVERLAY — Command Palette style ── */
.search-overlay{position:fixed;inset:0;z-index:1000;background:rgba(15,23,42,.65);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;opacity:0;visibility:hidden;pointer-events:none;transition:all .2s ease}
.search-overlay.is-open{opacity:1;visibility:visible;pointer-events:all}
.search-palette{background:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:680px;margin-inline:var(--space-4);box-shadow:0 24px 80px rgba(15,23,42,.25);overflow:hidden;transform:translateY(-8px);transition:transform .2s ease}
.search-overlay.is-open .search-palette{transform:translateY(0)}
.search-palette__input-wrap{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1.5px solid var(--color-border)}
.search-palette__icon{flex-shrink:0;stroke:var(--color-text-muted)}
.search-palette__input-wrap form{flex:1}
.search-palette__input-wrap input{width:100%;border:none;outline:none;font-size:var(--text-lg);font-family:var(--font-body);color:var(--color-text);background:transparent;padding:0}
.search-palette__input-wrap input::placeholder{color:var(--color-text-faint)}
.search-palette__close{display:inline-flex;align-items:center;padding:4px 10px;border:1.5px solid var(--color-border);border-radius:6px;background:var(--color-surface);cursor:pointer;transition:all var(--transition);flex-shrink:0}
.search-palette__close span{font-size:11px;font-weight:700;color:var(--color-text-muted);letter-spacing:.05em}
.search-palette__close:hover{border-color:var(--color-primary);background:var(--color-primary-xlight)}
.search-palette__close:hover span{color:var(--color-primary)}
.search-palette__body{padding:var(--space-4) var(--space-5) var(--space-5)}
.search-palette__section-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-faint);margin-bottom:var(--space-3)}
.search-palette__pills{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}
.search-palette__pill{display:inline-flex;align-items:center;padding:5px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);text-decoration:none;background:var(--color-white);transition:all var(--transition)}
.search-palette__pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-xlight)}
.search-palette__divider{height:1px;background:var(--color-border);margin:var(--space-4) 0}
.search-palette__cats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}
.search-palette__cat{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition);text-align:center}
.search-palette__cat:hover{border-color:var(--color-primary);background:var(--color-surface-teal)}
.search-palette__cat-icon{width:40px;height:40px;background:var(--color-primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}
.search-palette__cat-icon svg{stroke:var(--color-primary)}
.search-palette__cat span{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}

/* ── 15. DISCLAIMER POPUP ───────────────────────────────────── */

.disclaimer-popup{position:fixed;top:calc(var(--nav-height) + var(--space-3));right:var(--space-6);z-index:890;background:var(--color-white);border:1.5px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-4) var(--space-5);max-width:360px;display:flex;gap:var(--space-3);align-items:flex-start;transform:translateX(calc(100% + 2rem));opacity:0;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease}
.disclaimer-popup.is-visible{transform:translateX(0);opacity:1}
.disclaimer-popup__icon{width:36px;height:36px;background:var(--color-primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-primary)}
.disclaimer-popup__icon svg{width:18px;height:18px}
.disclaimer-popup__body{flex:1}
.disclaimer-popup__title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:.25rem}
.disclaimer-popup__text{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed)}
.disclaimer-popup__close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);color:var(--color-text-muted);flex-shrink:0;transition:all var(--transition)}
.disclaimer-popup__close:hover{background:var(--color-surface);color:var(--color-text)}
.disclaimer-popup__close svg{width:14px;height:14px}

/* ── 16. HERO ───────────────────────────────────────────────── */
.hero{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);padding:var(--space-16) 0 var(--space-20);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 300px;gap:var(--space-8);align-items:center}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:.375rem .875rem;border-radius:var(--radius-full);margin-bottom:var(--space-3);border:1px solid rgba(255,255,255,.2)}
.hero-h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:var(--fw-semibold);color:#fff;line-height:var(--lh-snug);letter-spacing:var(--ls-tight);margin-bottom:var(--space-4)}
.hero-h1 span{color:var(--color-accent)}
.hero-sub{font-size:var(--text-lg);color:rgba(255,255,255,.8);line-height:var(--lh-relaxed);margin-bottom:var(--space-6);max-width:500px}
.hero-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-6)}
.btn-hero-primary{background:#fff;color:var(--color-primary);padding:.75rem 1.5rem;border-radius:var(--radius-btn);font-weight:var(--fw-semibold);font-size:var(--text-base);display:inline-flex;align-items:center;gap:.5rem;transition:all var(--transition);border:2px solid #fff;text-decoration:none}
.btn-hero-primary:hover{background:var(--color-primary-xlight);color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.15)}
.btn-hero-secondary{background:rgba(255,255,255,.15);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius-btn);font-weight:var(--fw-semibold);font-size:var(--text-base);border:2px solid rgba(255,255,255,.4);display:inline-flex;align-items:center;gap:.5rem;transition:all var(--transition);text-decoration:none}
.btn-hero-secondary:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.7);color:#fff}
.hero-trust{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}
.hero-trust-item{display:flex;align-items:center;gap:.375rem;font-size:var(--text-xs);color:rgba(255,255,255,.75);font-weight:var(--fw-medium)}
.hero-trust-item svg{color:var(--color-accent);width:14px;height:14px}
.hero-trust-sep{color:rgba(255,255,255,.3)}
.hero-panel{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);padding:var(--space-4)}
.hero-panel__title{font-size:var(--text-xs);font-weight:var(--fw-bold);color:rgba(255,255,255,.9);text-transform:uppercase;letter-spacing:var(--ls-wider);margin-bottom:var(--space-3);display:flex;align-items:center;gap:.5rem}
.hero-panel__row{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;border-radius:var(--radius-md);margin-bottom:.375rem;background:rgba(255,255,255,.08);transition:background var(--transition)}
.hero-panel__row:hover{background:rgba(255,255,255,.14)}
.hero-panel__name{font-size:var(--text-sm);color:rgba(255,255,255,.9);font-weight:var(--fw-medium)}
.hero-panel__val{font-size:var(--text-xs);font-family:var(--font-mono);color:rgba(255,255,255,.7)}
.hero-panel__cta{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:var(--space-3);padding:.625rem;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-btn);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:#fff;text-decoration:none;transition:background var(--transition)}
.hero-panel__cta:hover{background:rgba(255,255,255,.25);color:#fff}

/* ── 17. HOMEPAGE SECTIONS ──────────────────────────────────── */
.stats-bar{background:var(--color-surface-teal);border-bottom:1px solid rgba(13,124,124,.12);padding:var(--space-5) 0}
.stats-inner{display:flex;align-items:center;justify-content:center;gap:var(--space-10);flex-wrap:wrap}
.stat-item{text-align:center}
.stat-num{font-size:var(--text-3xl);font-weight:var(--fw-semibold);color:var(--color-primary);letter-spacing:var(--ls-tight);display:block}
.stat-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--ls-wider);font-weight:var(--fw-medium)}
.stat-sep{width:1px;height:40px;background:rgba(13,124,124,.2)}
.categories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.category-card{background:var(--color-white);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;align-items:flex-start;gap:var(--space-4);text-decoration:none;transition:all 250ms ease}
.category-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.category-card__icon{width:52px;height:52px;flex-shrink:0;border-radius:var(--radius-lg);background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;color:var(--color-primary);transition:all var(--transition)}
.category-card:hover .category-card__icon{background:var(--color-primary);color:#fff}
.category-card__icon svg{width:24px;height:24px}
.category-card__body{flex:1}
.category-card__name{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:.25rem}
.category-card:hover .category-card__name{color:var(--color-primary)}
.category-card__desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:.5rem}
.category-card__count{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);background:var(--color-primary-light);padding:.15rem .625rem;border-radius:var(--radius-full);display:inline-block}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}
.trust-pillar{text-align:center}
.trust-pillar__icon{width:64px;height:64px;border-radius:var(--radius-xl);background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-3);color:var(--color-primary);transition:all var(--transition)}
.trust-pillar:hover .trust-pillar__icon{background:var(--color-primary);color:#fff}
.trust-pillar__icon svg{width:28px;height:28px}
.trust-pillar__title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:.375rem}
.trust-pillar__desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed)}
.reviewers-flex{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}
/* removed duplicate */
.calcs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}
/* removed duplicate */

/* ── 18. ARCHIVE / CATEGORY ─────────────────────────────────── */
.archive-hero{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-10) 0}
.archive-hero__eyebrow{font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:var(--space-2)}
.archive-hero__title{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:var(--fw-semibold);color:var(--color-dark);letter-spacing:var(--ls-tight);margin-bottom:var(--space-3)}
.archive-hero__desc{font-size:var(--text-lg);color:var(--color-text-muted);max-width:600px;line-height:var(--lh-relaxed)}
/* ── PAGINATION — full rewrite, clean numbered pills ── */

/* Screen reader utility — hides "Page" prefix text WordPress injects */
.screen-reader-text{
  position:absolute;width:1px;height:1px;
  padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Container: horizontal flex row, centred */
.pagination,
.archive-pagination,
.nav-links{
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-top:var(--space-12);
  flex-wrap:wrap;
  list-style:none;
  padding:0;
}

/* Every pill — numbers, prev, next, dots */
.pagination a,
.pagination span,
.archive-pagination a,
.archive-pagination span,
.nav-links a,
.nav-links span,
a.page-numbers,
span.page-numbers{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 14px;
  border:1.5px solid var(--color-border);
  border-radius:100px;              /* full pill */
  font-size:var(--text-sm);
  font-weight:var(--fw-semibold);
  color:var(--color-text);
  text-decoration:none;
  background:var(--color-white);
  transition:border-color 150ms ease,color 150ms ease,background 150ms ease;
  white-space:nowrap;
  cursor:pointer;
  line-height:1;
}

/* Hover */
.pagination a:hover,
.archive-pagination a:hover,
.nav-links a:hover,
a.page-numbers:hover{
  border-color:var(--color-primary);
  color:var(--color-primary);
  background:var(--color-primary-xlight,#E6F7F7);
}

/* Active / current page */
.pagination .current,
.archive-pagination .current,
.nav-links .current,
span.page-numbers.current{
  background:var(--color-primary);
  border-color:var(--color-primary);
  color:#fff;
  cursor:default;
}

/* Dots (...) */
span.page-numbers.dots{
  border-color:transparent;
  background:transparent;
  color:var(--color-text-faint);
  min-width:24px;
  padding:0 4px;
}

/* ── 19. SINGLE POST ────────────────────────────────────────── */
.reading-progress{position:fixed;top:0;left:0;z-index:1000;height:3px;background:var(--color-primary);width:0;transition:width .1s linear}
.article-layout{display:grid;grid-template-columns:220px 1fr 200px;gap:var(--space-8);align-items:start;padding:var(--space-8) 0 var(--space-16);max-width:1280px;margin:0 auto;padding-inline:var(--space-6)}
.article-toc{position:sticky;top:calc(var(--nav-height) + var(--space-4));background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4);max-height:calc(100vh - var(--nav-height) - var(--space-8));overflow-y:auto}
.article-toc__title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:var(--space-3);display:flex;align-items:center;gap:.375rem}
.toc-list{list-style:none}
.toc-item{margin-bottom:.25rem}
.toc-link{display:block;padding:.3rem .5rem;font-size:var(--text-xs);color:var(--color-text-muted);border-left:2px solid transparent;border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:all var(--transition);text-decoration:none}
.toc-link:hover,.toc-link.active{color:var(--color-primary);border-left-color:var(--color-primary);background:var(--color-primary-light);padding-left:.75rem}
.toc-item--h3 .toc-link{padding-left:1rem;font-size:.7rem}
.article-main{min-width:0;width:100%;overflow-x:hidden}
.article-cat-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);background:var(--color-primary-light);padding:.25rem .75rem;border-radius:var(--radius-full);margin-bottom:var(--space-3);text-decoration:none}
.article-title{font-size:clamp(1.875rem,3.5vw,2.75rem);font-weight:var(--fw-semibold);color:var(--color-dark);letter-spacing:var(--ls-tight);line-height:var(--lh-snug);margin-bottom:var(--space-4)}
.author-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-surface-teal);border:1px solid rgba(13,124,124,.15);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}
.author-strip__reviewer{display:flex;align-items:center;gap:var(--space-3)}
.author-strip__avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--color-primary);flex-shrink:0}
.author-strip__label{font-size:.65rem;text-transform:uppercase;letter-spacing:var(--ls-wider);font-weight:var(--fw-bold);color:var(--color-primary)}
.author-strip__name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);text-decoration:none}
.author-strip__name:hover{color:var(--color-primary)}
.author-strip__cred{font-size:var(--text-xs);color:var(--color-text-muted)}
.author-strip__dates{display:flex;gap:var(--space-4);flex-wrap:wrap}
.author-strip__date{font-size:var(--text-xs);color:var(--color-text-muted)}
.author-strip__date strong{color:var(--color-text);font-weight:var(--fw-medium)}
.article-content h2{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:var(--fw-semibold);margin:var(--space-8) 0 var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-light);scroll-margin-top:calc(var(--nav-height) + var(--space-4))}
.article-content h2:first-child{border-top:none;padding-top:0;margin-top:0}
.article-content h3{font-size:clamp(1.1rem,2vw,1.375rem);font-weight:var(--fw-medium);margin:var(--space-6) 0 var(--space-3);scroll-margin-top:calc(var(--nav-height) + var(--space-4))}
.article-content p{font-size:var(--text-base);line-height:var(--lh-loose);margin-bottom:var(--space-5);color:var(--color-text)}
.article-content ul,.article-content ol{padding-left:var(--space-6);margin-bottom:var(--space-5)}
.article-content ul{list-style:disc}
.article-content ol{list-style:decimal}
.article-content li{font-size:var(--text-base);line-height:var(--lh-relaxed);margin-bottom:var(--space-2)}
.article-content a{color:var(--color-primary);text-decoration:underline;text-decoration-color:rgba(13,124,124,.3);text-underline-offset:2px}
.article-content a:hover{text-decoration-color:var(--color-primary)}
.article-content strong{font-weight:var(--fw-semibold);color:var(--color-dark)}
.article-content blockquote{border-left:4px solid var(--color-primary);padding:var(--space-3) var(--space-5);background:var(--color-surface-teal);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:var(--space-6) 0;font-style:italic;color:var(--color-text-secondary)}
.article-content table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-size:var(--text-sm)}
.article-content th{background:var(--color-primary);color:#fff;text-align:left;padding:var(--space-3) var(--space-4);font-weight:var(--fw-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--ls-wide)}
.article-content td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}
.article-content tr:nth-child(even) td{background:var(--color-surface)}
.article-content img{border-radius:var(--radius-lg);margin:var(--space-6) 0}
.key-takeaways{background:var(--color-surface-teal);border:1.5px solid rgba(13,124,124,.2);border-radius:var(--radius-xl);padding:var(--space-5);margin:var(--space-6) 0}
.key-takeaways__title{font-size:var(--text-sm);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:var(--space-3);display:flex;align-items:center;gap:.5rem}
.key-takeaways ul{list-style:none;padding:0;margin:0}
.key-takeaways li{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-sm);color:var(--color-text);margin-bottom:var(--space-2);line-height:var(--lh-relaxed)}
.key-takeaways li svg{flex-shrink:0;margin-top:2px;color:var(--color-normal)}
.medical-disclaimer{display:flex;align-items:flex-start;gap:.75rem;background:#FFF7ED;border-left:4px solid #F59E0B;border-radius:var(--radius-sm);padding:.875rem 1rem;margin-bottom:var(--space-5)}
.medical-disclaimer svg{color:#F59E0B;flex-shrink:0;margin-top:2px}
.medical-disclaimer p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--lh-relaxed);margin:0;flex:1}
.article-sidebar{position:sticky;top:calc(var(--nav-height) + var(--space-4))}
.sidebar-cta{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);border-radius:var(--radius-xl);padding:var(--space-4);text-align:center;margin-bottom:var(--space-4)}
.sidebar-cta__title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:#fff;margin-bottom:var(--space-2)}
.sidebar-cta__desc{font-size:var(--text-xs);color:rgba(255,255,255,.8);margin-bottom:var(--space-3);line-height:var(--lh-relaxed)}
.sidebar-cta .btn{width:100%;justify-content:center;border-radius:var(--radius-btn);background:#fff;color:var(--color-primary);border-color:#fff;font-size:var(--text-xs)}
.sidebar-related__title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);margin-bottom:var(--space-3)}
.related-mini{display:flex;flex-direction:column;gap:var(--space-3)}
.related-mini-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);text-decoration:none;transition:all var(--transition);background:var(--color-white)}
.related-mini-item:hover{border-color:var(--color-primary);background:var(--color-surface-teal)}
.related-mini-cat{font-size:.65rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:.25rem}
.related-mini-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:var(--lh-snug)}
.related-mini-item:hover .related-mini-title{color:var(--color-primary)}
.author-card{display:flex;gap:var(--space-4);align-items:flex-start;background:var(--color-surface-teal);border:1.5px solid rgba(13,124,124,.2);border-radius:var(--radius-xl);padding:var(--space-5);margin-top:var(--space-8)}
.author-card__avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid var(--color-primary-light);flex-shrink:0}
.author-card__label{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);margin-bottom:.25rem}
.author-card__name{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:.25rem}
.author-card__cred{color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--fw-medium)}
.author-card__title{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}
.author-card__bio{font-size:var(--text-sm);color:var(--color-text);line-height:var(--lh-relaxed);margin-bottom:var(--space-2)}
.author-card__link{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none}
.author-card__link:hover{text-decoration:underline}
.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}
.post-nav__item{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--transition)}
.post-nav__item:hover{border-color:var(--color-primary);background:var(--color-surface-teal)}
.post-nav__item--next{text-align:right}
.post-nav__dir{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);display:flex;align-items:center;gap:.375rem}
.post-nav__item--next .post-nav__dir{justify-content:flex-end}
.post-nav__title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:var(--lh-snug)}
.post-nav__item:hover .post-nav__title{color:var(--color-primary)}
.related-posts{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}
.related-posts__title{font-size:var(--text-2xl);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:var(--space-6)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}

/* ── 20. AUTHOR PAGES ───────────────────────────────────────── */
.authors-board-hero{background:var(--color-surface-teal);border-bottom:1px solid rgba(13,124,124,.15);padding:var(--space-10) 0;text-align:center}
.authors-board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.author-board-card{background:var(--color-white);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;text-decoration:none;transition:all 250ms ease;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}
.author-board-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}
.author-board-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--color-primary-light);margin-bottom:var(--space-1);transition:border-color var(--transition)}
.author-board-card:hover .author-board-avatar{border-color:var(--color-primary)}
.author-board-name{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--color-dark)}
.author-board-card:hover .author-board-name{color:var(--color-primary)}
.author-board-cred{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary)}
.author-board-specialty{font-size:var(--text-sm);color:var(--color-text-muted)}
.author-board-count{font-size:var(--text-xs);color:var(--color-text-faint);margin-top:auto}
.author-profile-hero{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);padding:var(--space-12) 0}
.author-profile-inner{display:flex;align-items:center;gap:var(--space-8)}
.author-profile-avatar{width:140px;height:140px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.3);flex-shrink:0}
.author-profile-name{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:var(--fw-semibold);color:#fff;letter-spacing:var(--ls-tight);margin-bottom:.25rem}
.author-profile-cred{font-size:var(--text-lg);color:var(--color-accent);font-weight:var(--fw-medium);margin-bottom:var(--space-1)}
.author-profile-role{font-size:var(--text-base);color:rgba(255,255,255,.8);margin-bottom:var(--space-3)}
.author-profile-stats{display:flex;gap:var(--space-5);flex-wrap:wrap}
.author-stat{text-align:center}
.author-stat-num{font-size:var(--text-2xl);font-weight:var(--fw-semibold);color:#fff}
.author-stat-label{font-size:var(--text-xs);color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:var(--ls-wider)}

/* ── 21. FOOTER ─────────────────────────────────────────────── */
.site-footer{background:var(--color-dark);color:var(--color-text-faint)}
.footer-cta{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);padding:var(--space-12) 0;text-align:center}
.footer-cta h2{font-size:var(--text-3xl);color:#fff;font-weight:var(--fw-semibold);margin-bottom:var(--space-2)}
.footer-cta p{font-size:var(--text-lg);color:rgba(255,255,255,.8);margin-bottom:var(--space-5);max-width:500px;margin-inline:auto}
.footer-cta-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}
.btn-footer-white,.btn-footer-primary{background:#fff;color:var(--color-primary);border:2px solid #fff;padding:.625rem 1.375rem;border-radius:var(--radius-btn);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2);transition:all var(--transition)}
.btn-footer-primary:hover{background:var(--color-primary-xlight);color:var(--color-primary)}
.btn-footer-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5);padding:.625rem 1.375rem;border-radius:var(--radius-btn);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-decoration:none;display:inline-flex;align-items:center;transition:all var(--transition)}
.btn-footer-outline:hover{background:rgba(255,255,255,.15);border-color:#fff;color:#fff}
.footer-main{padding:var(--space-12) 0 var(--space-8)}
.footer-grid{display:grid;grid-template-columns:280px 1fr 1fr 1fr;gap:var(--space-8)}
.footer-logo{display:flex;align-items:center;gap:.625rem;text-decoration:none;margin-bottom:var(--space-3)}
.footer-logo img{height:36px;width:auto;filter:brightness(0) invert(1)}
.footer-logo-text{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:#fff}
.footer-brand-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-4)}
.footer-social{display:flex;gap:var(--space-2)}
.footer-col-heading{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:#fff;margin-bottom:var(--space-3)}
.footer-links{list-style:none}
.footer-links li{margin-bottom:.625rem}
.footer-links a{font-size:var(--text-sm);color:var(--color-text-muted);text-decoration:none;transition:color var(--transition)}
.footer-links a:hover{color:var(--color-primary-mid)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:var(--space-4) 0}
.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}
.footer-copyright{font-size:var(--text-sm);color:var(--color-text-faint)}
.footer-legal{display:flex;gap:var(--space-3);flex-wrap:wrap}
.footer-legal a{font-size:var(--text-sm);color:var(--color-text-faint);text-decoration:none;transition:color var(--transition)}
.footer-legal a:hover{color:var(--color-primary-mid)}
.footer-disclaimer{font-size:var(--text-xs);color:rgba(255,255,255,.3);text-align:center;padding-top:var(--space-3);line-height:var(--lh-relaxed);border-top:1px solid rgba(255,255,255,.05);margin-top:var(--space-3)}

/* ── 22. COOKIE BANNER ──────────────────────────────────────── */
#cookie-banner{position:fixed;bottom:var(--space-5);left:var(--space-5);right:var(--space-5);max-width:480px;background:var(--color-dark);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-xl);z-index:950;transform:translateY(140%);transition:transform .4s cubic-bezier(.4,0,.2,1)}
#cookie-banner.is-visible{transform:translateY(0)}
.cookie-banner__title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:#fff;margin-bottom:var(--space-1)}
.cookie-banner__text{font-size:var(--text-xs);color:rgba(255,255,255,.6);margin-bottom:var(--space-3);line-height:var(--lh-relaxed)}
.cookie-banner__actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}
.btn-cookie-accept{background:var(--color-primary);color:#fff;padding:.5rem 1.25rem;border-radius:var(--radius-btn);font-size:var(--text-sm);font-weight:var(--fw-semibold);transition:background var(--transition);border:none;cursor:pointer}
.btn-cookie-accept:hover{background:var(--color-primary-dark)}
.btn-cookie-decline{background:rgba(255,255,255,.1);color:rgba(255,255,255,.7);padding:.5rem 1rem;border-radius:var(--radius-btn);font-size:var(--text-sm);transition:background var(--transition);border:none;cursor:pointer}
.btn-cookie-decline:hover{background:rgba(255,255,255,.18)}
.cookie-banner__privacy{font-size:var(--text-xs);color:rgba(255,255,255,.4);text-decoration:none;margin-left:auto}
.cookie-banner__privacy:hover{color:var(--color-primary-mid)}

/* ── 23. STATIC PAGES ───────────────────────────────────────── */
.page-hero{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);padding:var(--space-16) 0;text-align:center}
.page-hero__eyebrow{color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);margin-bottom:var(--space-2)}
.page-hero__title{font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-semibold);color:#fff;letter-spacing:var(--ls-tight);margin-bottom:var(--space-3)}
.page-hero__desc{font-size:var(--text-lg);color:rgba(255,255,255,.8);max-width:560px;margin-inline:auto;line-height:var(--lh-relaxed)}
.contact-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--space-8);align-items:start}
.contact-form{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4)}
.form-group{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}
.form-label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark)}
.form-input,.form-textarea,.form-select{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-border);border-radius:var(--radius-btn);font-size:var(--text-sm);color:var(--color-text);background:var(--color-white);transition:border-color var(--transition),box-shadow var(--transition)}
.form-textarea{border-radius:var(--radius-lg);resize:vertical;min-height:120px}
.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}
.contact-sidebar{display:flex;flex-direction:column;gap:var(--space-4)}
.contact-info-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4)}
.contact-info-item{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-3)}
.contact-info-item__icon{width:40px;height:40px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}
.contact-info-item__label{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted)}
.contact-info-item__value{font-size:var(--text-sm);color:var(--color-text);font-weight:var(--fw-medium)}
.empty-template-notice{background:var(--color-surface-teal);border:1.5px dashed rgba(13,124,124,.3);border-radius:var(--radius-xl);padding:var(--space-12);text-align:center;margin:var(--space-12) auto;max-width:560px}

/* ── 24. 404 PAGE ───────────────────────────────────────────── */
.error-page{min-height:80vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--color-white)}
.error-bg-icons{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.error-bg-icon{position:absolute;color:var(--color-primary);opacity:.05;animation:float 8s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-20px) rotate(8deg)}66%{transform:translateY(10px) rotate(-5deg)}}
.error-content{position:relative;z-index:1;text-align:center;padding:var(--space-8);max-width:620px}
.error-code{font-size:8rem;font-weight:var(--fw-semibold);line-height:1;letter-spacing:var(--ls-tight);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-2)}
.error-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:var(--space-3)}
.error-desc{font-size:var(--text-lg);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-6)}
.error-search{display:flex;gap:var(--space-2);max-width:400px;margin:0 auto var(--space-6)}
.error-search input{flex:1;padding:.75rem 1rem;border:1.5px solid var(--color-border);border-radius:var(--radius-btn);font-size:var(--text-base)}
.error-search input:focus{outline:none;border-color:var(--color-primary)}
.error-search button{background:var(--color-primary);color:#fff;padding:.75rem 1.25rem;border-radius:var(--radius-btn);font-weight:var(--fw-semibold)}
.error-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);max-width:420px;margin-inline:auto}
.error-nav-card{padding:var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--transition);background:var(--color-white);display:block}
.error-nav-card:hover{border-color:var(--color-primary);background:var(--color-surface-teal);transform:translateY(-2px)}
.error-nav-card__icon{color:var(--color-primary);margin-bottom:var(--space-2)}
.error-nav-card__name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark)}
.error-nav-card__desc{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:.25rem}

/* ── 25. UTILITIES ──────────────────────────────────────────── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.text-center{text-align:center}
.text-primary{color:var(--color-primary)}
.text-muted{color:var(--color-text-muted)}
.font-mono{font-family:var(--font-mono)}
.hidden{display:none!important}
.section-footer{text-align:center;margin-top:var(--space-10)}

/* ── 26. RESPONSIVE ─────────────────────────────────────────── */
.footer-col__title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:#fff;margin-bottom:var(--space-3)}
.footer-col__links{display:flex;flex-direction:column;gap:var(--space-2)}
.footer-col__link{font-size:var(--text-sm);color:rgba(255,255,255,.55);text-decoration:none;transition:color var(--transition);line-height:1.5}
.footer-col__link:hover{color:#fff}
.footer-brand__desc{font-size:var(--text-sm);color:rgba(255,255,255,.5);line-height:var(--lh-relaxed);margin-bottom:var(--space-4)}
.footer-social__link{width:30px;height:30px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);transition:all var(--transition);text-decoration:none}
.footer-social__link svg{width:14px;height:14px;flex-shrink:0}
.footer-social__link:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.footer-legal-links{display:flex;gap:var(--space-3) var(--space-6);flex-wrap:wrap;align-items:center}
.footer-legal-links a{font-size:var(--text-xs);color:rgba(255,255,255,.75);text-decoration:none;transition:color var(--transition)}
.footer-legal-links a:hover{color:#fff}
.footer-cta__title{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:var(--fw-bold);color:#fff;margin-bottom:var(--space-3)}
.footer-cta__desc{font-size:var(--text-base);color:rgba(255,255,255,.85);margin-bottom:var(--space-6)}
.footer-cta__actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}
@media(max-width:1080px){
  #lml-nav{display:none}.nav-cta{display:none}.hamburger-btn{display:flex}
  .header-right{margin-left:auto}
  .header-search-btn{display:none!important}
  .hero-inner{grid-template-columns:1fr;text-align:center}
  .hero-phone-col{justify-content:center;margin-top:var(--space-6)}
  .hero-description{max-width:none;text-align:center}
  .hero-cta{justify-content:center}
  .hero-trust-badges{justify-content:center}
  .hero-sub{max-width:none}.hero-actions{justify-content:center}
  .hero-trust{justify-content:center}.hero-panel{display:none}
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .calcs-grid{grid-template-columns:repeat(2,1fr)}
  .article-layout{grid-template-columns:1fr;padding-inline:var(--space-4);padding-bottom:var(--space-8)}
  .article-toc{display:none}
  .article-sidebar{display:none}
  .author-strip{flex-wrap:wrap}
  .author-strip__dates{text-align:left}
  /* Scale phone down on tablet */
  .hero-phone{width:200px;height:400px}
}
@media(max-width:640px){
  /* Compact phone on mobile */
  .hero-phone-col{margin-top:var(--space-4)}
  .hero-phone{width:165px;height:330px;border-radius:28px}
  .hero-phone__notch{width:70px;height:18px}
  .hero-phone__screen{border-radius:26px;padding:26px 11px 11px}
}
@media(max-width:900px){
  .post-grid{grid-template-columns:repeat(2,1fr)}
  .categories-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .authors-board-grid{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .related-grid{grid-template-columns:repeat(2,1fr)}
  .author-profile-inner{flex-direction:column;text-align:center}
  .post-nav{grid-template-columns:1fr}
}
@media(max-width:640px){
  .container{padding-inline:var(--space-4)}.section-padding{padding-block:var(--space-12)}
  .article-layout{padding-inline:var(--space-3)}
  .post-nav__item--next{text-align:left}
  .post-nav__item--next .post-nav__dir{justify-content:flex-start}
  .post-grid{grid-template-columns:1fr}.categories-grid{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:1fr 1fr}.calcs-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr}.footer-bottom-inner{flex-direction:column;text-align:center}
  .disclaimer-popup{right:var(--space-4);left:var(--space-4);max-width:none}
  #cookie-banner{left:var(--space-3);right:var(--space-3)}
  .authors-board-grid{grid-template-columns:1fr}.error-nav-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}.author-card{flex-direction:column;align-items:center;text-align:center}
  .hero-h1{font-size:2rem}
}
@media(min-width:1081px){.mobile-nav-panel{display:none!important}.hamburger-btn{display:none}.mnav-header-contact{display:none!important}}

/* ── HOMEPAGE ALIASES & MISSING CLASSES ─────────────────────── */
/* Hero section */
/* ══ HERO v1.6 — 2-col: left copy + right iPhone animation ══ */
.hero-section{background:linear-gradient(135deg,#0A5E5E 0%,#0D7C7C 50%,#0E8F8F 100%);padding:var(--space-16) 0 var(--space-20);position:relative;overflow:hidden}
.hero-section::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.06) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}
/* hero-inner base defined at line 425 — do NOT redefine here, it breaks mobile cascade */
.hero-label{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:.375rem .875rem;border-radius:var(--radius-full);margin-bottom:var(--space-4);border:1px solid rgba(255,255,255,.2)}
.hero-label svg{width:14px;height:14px;flex-shrink:0}
.hero-title{font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:800;color:#fff;line-height:1.08;letter-spacing:-.02em;margin-bottom:var(--space-5)}
.hero-title span{color:#4EEAEA}
.hero-description{font-size:var(--text-base);color:rgba(255,255,255,.82);line-height:var(--lh-relaxed);margin-bottom:var(--space-7);max-width:480px}
.hero-cta{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-7)}
.hero-trust-badges{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}
.hero-trust-badge{display:flex;align-items:center;gap:.35rem;font-size:var(--text-xs);color:rgba(255,255,255,.65);font-weight:var(--fw-medium)}
.hero-trust-badge svg{width:13px;height:13px;color:#4EEAEA;flex-shrink:0}
/* ── iPhone mockup (right col) */
.hero-phone-col{display:flex;align-items:center;justify-content:center}
.hero-phone{width:240px;height:480px;background:#0A1628;border-radius:36px;border:3px solid rgba(255,255,255,.18);box-shadow:0 32px 80px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.06) inset;position:relative;overflow:hidden;flex-shrink:0}
.hero-phone__notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:90px;height:24px;background:#0A1628;border-radius:0 0 16px 16px;z-index:10}
.hero-phone__screen{position:absolute;inset:0;background:#F8FAFB;border-radius:34px;padding:32px 14px 14px;display:flex;flex-direction:column;gap:0;overflow:hidden}
.hero-phone__header{background:#0D7C7C;color:#fff;font-size:9px;font-weight:700;padding:8px 10px;border-radius:8px 8px 0 0;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;flex-shrink:0}
.hero-phone__row{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-bottom:1px solid #EEF1F3;opacity:0;transform:translateX(12px);transition:all .4s ease}
.hero-phone__row.visible{opacity:1;transform:translateX(0)}
.hero-phone__row-label{font-size:8.5px;font-weight:600;color:#1A2336;flex:1}
.hero-phone__row-val{font-size:8px;font-family:monospace;color:#4B5563;margin-right:6px}
.hero-phone__badge{font-size:7px;font-weight:700;padding:2px 5px;border-radius:3px;flex-shrink:0;white-space:nowrap}
.hero-phone__badge--normal{background:#D1FAE5;color:#065F46}
.hero-phone__badge--borderline{background:#FEF3C7;color:#92400E}
.hero-phone__badge--elevated{background:#FEE2E2;color:#991B1B}
.hero-phone__badge--low{background:#DBEAFE;color:#1E40AF}
.hero-phone__bubble{position:absolute;bottom:24px;right:12px;background:#0D7C7C;color:#fff;padding:8px 12px;border-radius:16px 16px 2px 16px;opacity:0;transform:scale(.6) translateY(10px);transition:all .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 16px rgba(13,124,124,.4);max-width:120px}
.hero-phone__bubble.visible{opacity:1;transform:scale(1) translateY(0)}
.hero-phone__bubble-emoji{font-size:18px;display:block;text-align:center}
.hero-phone__bubble-text{font-size:8.5px;font-weight:600;display:block;margin-top:2px;color:rgba(255,255,255,.9);text-align:center}
/* Section headers */
.section-label{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-primary-light);color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:.3rem .75rem;border-radius:var(--radius-full);margin-bottom:var(--space-2)}
.section-description{font-size:var(--text-base);color:var(--color-text-muted);line-height:var(--lh-relaxed);max-width:540px;margin:0 auto}
/* Range preview */
.range-preview-section{background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-6) 0}
.range-preview-inner{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}
.range-preview-label{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);white-space:nowrap}
.range-preview-items{display:flex;gap:var(--space-3);flex-wrap:wrap;flex:1}
.range-preview-item{display:flex;align-items:center;gap:var(--space-2);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.375rem .75rem;font-size:var(--text-sm)}
.range-preview-item__name{font-weight:var(--fw-medium);color:var(--color-text)}
.range-preview-item__value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted)}
.range-preview-cta{margin-left:auto;white-space:nowrap}
/* Reviewer cards */
.reviewers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
/* Vertical centered reviewer card — matches screenshot design */
.reviewer-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-5);text-decoration:none;transition:all 250ms ease}
.reviewer-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light);transform:translateY(-2px)}
.reviewer-card__avatar-wrap{width:72px;height:72px;border-radius:50%;overflow:hidden;background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1);flex-shrink:0}
.reviewer-card__avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block}
.reviewer-card__initials{font-size:1.5rem;font-weight:var(--fw-bold);color:var(--color-primary);line-height:1}
.reviewer-card__name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:1.3;margin-top:var(--space-1)}
.reviewer-card__cred{font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--fw-medium)}
.reviewer-card__specialty{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.4;margin-top:.125rem}
.reviewers-cta{text-align:center;margin-top:var(--space-6)}
/* Calculator preview */
.calc-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
/* Calculator card — matches screenshot: icon box top, large chevron, centered layout */
.calc-preview-card{background:var(--color-white);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-5);text-decoration:none;transition:all 250ms ease;display:flex;flex-direction:column;min-height:240px;position:relative;overflow:hidden}
.calc-preview-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--color-primary-light)}
.calc-preview-card__icon-box{width:52px;height:52px;background:var(--color-primary-xlight);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-bottom:var(--space-4)}
.calc-preview-card__icon-box svg{width:26px;height:26px;stroke:var(--color-primary)}
.calc-preview-card__name{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--color-dark);margin-bottom:var(--space-2);line-height:1.3}
.calc-preview-card__desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);flex:1;text-align:center}
.calc-preview-card__action{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}
.calc-preview-card__action-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);line-height:1.3}
.calc-preview-card__arrow{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);font-size:2rem;font-weight:300;line-height:1;flex-shrink:0}
.calc-preview-card:hover .calc-preview-card__arrow{color:var(--color-primary-dark)}
/* Article grid (homepage) */
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.article-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition);display:flex;flex-direction:column}
.article-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.article-card__thumb{aspect-ratio:16/9;overflow:hidden;background:var(--color-surface)}
.article-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.article-card:hover .article-card__thumb img{transform:scale(1.04)}
.article-card__body{padding:var(--space-4);display:flex;flex-direction:column;flex:1}
.article-card__category{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-primary);text-transform:uppercase;letter-spacing:var(--ls-wider);margin-bottom:var(--space-2)}
.article-card__title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-text);line-height:var(--lh-snug);margin-bottom:var(--space-2)}
.article-card__title a{text-decoration:none;color:inherit}
.article-card__title a:hover{color:var(--color-primary)}
.article-card__excerpt{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-3);flex:1}
.article-card__meta{display:flex;align-items:center;gap:var(--space-2);margin-top:auto}
.article-card__time{font-size:var(--text-xs);color:var(--color-text-faint)}
/* Filter tabs */
.article-filter-tabs{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-6)}
.filter-tab{font-size:var(--text-sm);font-weight:var(--fw-medium);padding:.4rem .875rem;border-radius:var(--radius-full);border:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-white);cursor:pointer;transition:all var(--transition)}
.filter-tab:hover,.filter-tab.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
/* Trust pillars */
.trust-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.trust-pillar{text-align:center;padding:var(--space-4)}
.trust-pillar__icon{width:52px;height:52px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin:0 auto var(--space-3)}
.trust-pillar__title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-1)}
.trust-pillar__desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed)}
/* Author card (single post bottom) */
.author-card{display:flex;gap:var(--space-5);align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);margin-top:var(--space-8)}
.author-card__avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;flex-shrink:0;border:3px solid var(--color-primary-mid)}
.author-card__label{font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);margin-bottom:.25rem}
.author-card__name{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--color-text)}
.author-card__cred{font-size:var(--text-sm);color:var(--color-primary);font-weight:var(--fw-medium)}
.author-card__title{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}
.author-card__bio{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-3)}
.author-card__count{font-size:var(--text-xs);color:var(--color-text-faint);margin-bottom:var(--space-2)}
.author-card__link{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none}
/* Author strip (top of article) */
.author-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:var(--color-primary-light);border:1px solid var(--color-primary-mid);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);margin:var(--space-4) 0;flex-wrap:wrap}
.author-strip__reviewer{display:flex;align-items:center;gap:var(--space-3)}
.author-strip__avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--color-primary-mid)}
.author-strip__label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--fw-medium)}
.author-strip__name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none;display:block}
.author-strip__name:hover{text-decoration:underline}
.author-strip__cred{font-size:var(--text-xs);color:var(--color-text-muted)}
.author-strip__dates{display:flex;flex-direction:column;gap:.25rem;text-align:right}
.author-strip__date{font-size:var(--text-xs);color:var(--color-text-muted)}
/* Article content typography */
.article-content h2{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:var(--fw-semibold);color:var(--color-text);margin:var(--space-8) 0 var(--space-3);scroll-margin-top:calc(var(--nav-height) + 1rem)}
.article-content h3{font-size:clamp(1rem,2vw,1.125rem);font-weight:var(--fw-medium);color:var(--color-text);margin:var(--space-6) 0 var(--space-2);scroll-margin-top:calc(var(--nav-height) + 1rem)}
.article-content p{font-size:var(--text-base);line-height:var(--lh-loose);color:var(--color-text-muted);margin-bottom:var(--space-4)}
.article-content ul,.article-content ol{margin:0 0 var(--space-4) var(--space-5);color:var(--color-text-muted)}
.article-content li{margin-bottom:var(--space-1);line-height:var(--lh-relaxed);font-size:var(--text-base)}
.article-content a{color:var(--color-primary);text-decoration:underline;text-decoration-color:var(--color-primary-mid)}
.article-content strong{color:var(--color-text);font-weight:var(--fw-semibold)}
.article-content table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-size:var(--text-sm);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}
.article-content th{background:var(--color-primary);color:#fff;font-weight:var(--fw-semibold);padding:.625rem var(--space-3);text-align:left}
.article-content td{padding:.5rem var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-muted)}
.article-content tr:last-child td{border-bottom:none}
.article-content tr:nth-child(even) td{background:var(--color-surface)}
.article-content blockquote{background:var(--color-primary-light);border-left:4px solid var(--color-primary);padding:var(--space-4);border-radius:0 var(--radius-lg) var(--radius-lg) 0;margin:var(--space-6) 0;font-style:italic;color:var(--color-text-muted)}
/* Medical disclaimer in article */
.medical-disclaimer{display:flex;gap:var(--space-3);align-items:flex-start;background:#fff8ed;border:1px solid #f5a623;border-left:4px solid #f5a623;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);font-size:var(--text-sm);color:#78350f}
.medical-disclaimer svg{flex-shrink:0;color:#f5a623;margin-top:2px}
.medical-disclaimer p{margin:0;line-height:var(--lh-relaxed)}
/* Article cat badge */
.article-cat-badge{display:inline-flex;align-items:center;background:var(--color-primary-light);color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:.3rem .75rem;border-radius:var(--radius-full);text-decoration:none;margin-bottom:var(--space-3)}
.article-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:var(--fw-semibold);color:var(--color-text);line-height:var(--lh-snug);margin-bottom:var(--space-5)}
/* Article main column */
.article-main{min-width:0;width:100%;overflow-x:hidden}
/* TOC sidebar */
.article-toc{position:sticky;top:calc(var(--nav-height) + 1.5rem);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4);max-height:calc(100vh - var(--nav-height) - 3rem);overflow-y:auto;z-index:10}
.article-toc__title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);margin-bottom:var(--space-3);display:flex;align-items:center;gap:.5rem}
.toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.125rem}
.toc-item{line-height:1}
.toc-item--h3{padding-left:var(--space-3)}
.toc-item a{font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:none;padding:.25rem .5rem;border-radius:var(--radius-sm);display:block;border-left:2px solid transparent;transition:all .15s ease;line-height:var(--lh-relaxed)}
.toc-item a:hover,.toc-item.is-active a{color:var(--color-primary);border-left-color:var(--color-primary);background:var(--color-primary-light)}
/* Right sidebar */
.article-sidebar{position:sticky;top:calc(var(--nav-height) + 1.5rem)}
.sidebar-cta{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:var(--radius-xl);padding:var(--space-5);margin-bottom:var(--space-4)}
.sidebar-cta__title{font-size:var(--text-sm);font-weight:var(--fw-bold);color:#fff;margin-bottom:var(--space-2)}
.sidebar-cta__desc{font-size:var(--text-xs);color:rgba(255,255,255,.8);line-height:var(--lh-relaxed);margin-bottom:var(--space-3)}
.sidebar-cta .btn{background:#fff;color:var(--color-primary);border-radius:var(--radius-btn);padding:.5rem 1rem;font-size:var(--text-xs);font-weight:var(--fw-semibold);text-decoration:none;display:inline-flex;align-items:center;gap:.375rem;transition:all var(--transition)}
.sidebar-cta .btn:hover{background:var(--color-primary-xlight)}
.sidebar-related{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4)}
.sidebar-related__title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-text-muted);margin-bottom:var(--space-3)}
.related-mini{display:flex;flex-direction:column;gap:var(--space-2)}
.related-mini-item{text-decoration:none;padding:var(--space-2);border-radius:var(--radius-md);border:1px solid transparent;transition:all var(--transition)}
.related-mini-item:hover{border-color:var(--color-border);background:var(--color-surface)}
.related-mini-cat{font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);margin-bottom:.125rem}
.related-mini-title{font-size:var(--text-xs);color:var(--color-text);font-weight:var(--fw-medium);line-height:var(--lh-snug)}
/* Post nav */
.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}
.post-nav__item{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--transition)}
.post-nav__item:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-mid);transform:translateY(-2px)}
.post-nav__item--next{text-align:right}
.post-nav__dir{font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);display:flex;align-items:center;gap:.25rem;margin-bottom:.25rem}
.post-nav__item--next .post-nav__dir{justify-content:flex-end}
.post-nav__title{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-text);line-height:var(--lh-snug)}
/* Related posts section */
.related-posts{margin-top:var(--space-10);padding-top:var(--space-8);border-top:1px solid var(--color-border)}
.related-posts__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-5)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
/* Archive hero */
.archive-hero{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);padding:var(--space-10) 0;text-align:center}
.archive-hero__eyebrow{font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:rgba(255,255,255,.7);margin-bottom:var(--space-2)}
.archive-hero__title{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:var(--fw-semibold);color:#fff;margin-bottom:var(--space-2)}
.archive-hero__desc{font-size:var(--text-base);color:rgba(255,255,255,.8);max-width:520px;margin:0 auto var(--space-3)}
.archive-hero__meta{font-size:var(--text-sm);color:rgba(255,255,255,.6)}
.archive-hero__count{display:inline-flex;align-items:center;gap:.375rem}
/* Error / 404 page */
.error-page{min-height:calc(100vh - var(--nav-height));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--color-surface);padding:var(--space-12) var(--space-4)}
.error-bg-icons{position:absolute;inset:0;pointer-events:none}
.error-bg-icon{position:absolute;color:var(--color-primary-mid);opacity:.25;animation:float linear infinite}
@keyframes float{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}100%{transform:translateY(0) rotate(0deg)}}
.error-content{position:relative;z-index:1;text-align:center;max-width:640px}
.error-code{font-size:8rem;font-weight:var(--fw-bold);line-height:1;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-3)}
.error-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-3)}
.error-desc{font-size:var(--text-base);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-6)}
.error-search{display:flex;gap:var(--space-2);max-width:420px;margin:0 auto var(--space-6)}
.error-search input{flex:1;padding:.625rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-btn);font-size:var(--text-sm);background:var(--color-white);color:var(--color-text);outline:none}
.error-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}
.error-search button{background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-btn);padding:.625rem 1rem;cursor:pointer;transition:all var(--transition);display:flex;align-items:center}
.error-search button:hover{background:var(--color-primary-dark)}
.error-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);max-width:480px;margin:0 auto}
.error-nav-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4);text-decoration:none;transition:all var(--transition);text-align:left}
.error-nav-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-mid);transform:translateY(-2px)}
.error-nav-card__icon{width:40px;height:40px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}
.error-nav-card__name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}
.error-nav-card__desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed)}
/* Empty state */
.empty-template-notice{text-align:center;padding:var(--space-16);border:2px dashed var(--color-border);border-radius:var(--radius-xl);color:var(--color-text-muted)}
.empty-template-notice svg{display:block;margin:0 auto var(--space-4);opacity:.3}
.empty-template-notice h2{font-size:var(--text-xl);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-2)}
.empty-template-notice p{font-size:var(--text-base);color:var(--color-text-muted)}
.empty-template-notice a{color:var(--color-primary);text-decoration:underline}
/* Responsive additions */
@media(max-width:1080px){.reviewers-grid{grid-template-columns:repeat(2,1fr)}.calc-preview-grid{grid-template-columns:repeat(2,1fr)}.trust-pillars{grid-template-columns:repeat(2,1fr)}.article-grid{grid-template-columns:repeat(2,1fr)}.related-grid{grid-template-columns:repeat(2,1fr)}.post-nav{grid-template-columns:1fr}.author-strip__dates{text-align:left}}
@media(max-width:640px){.reviewers-grid{grid-template-columns:1fr}.calc-preview-grid{grid-template-columns:1fr}.trust-pillars{grid-template-columns:repeat(2,1fr)}.article-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.error-nav-grid{grid-template-columns:1fr}.author-card{flex-direction:column}.author-strip{flex-direction:column}.author-strip__dates{text-align:left}.range-preview-section .container,.range-preview-inner{flex-direction:column;gap:var(--space-3)}.range-preview-items{justify-content:center}}

/* ════════════════════════════════════════════════════════════════
   ABOUT US PAGE — template-about.php
   All classes prefixed about- to prevent conflicts
   ════════════════════════════════════════════════════════════════ */

/* ── § 1 HERO */
.about-hero{background:linear-gradient(135deg,#0A5E5E 0%,#0D7C7C 60%,#0E8F8F 100%);padding:var(--space-16) 0;position:relative;overflow:hidden}
.about-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.about-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 380px;gap:var(--space-12);align-items:center}
.about-hero__eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.375rem .875rem;border-radius:var(--radius-full);margin-bottom:var(--space-4);border:1px solid rgba(255,255,255,.2)}
.about-hero__eyebrow svg{width:13px;height:13px;flex-shrink:0}
.about-hero__title{font-size:clamp(2rem,4vw,3.25rem);font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--space-5)}
.about-hero__title span{color:#4EEAEA}
.about-hero__desc{font-size:var(--text-base);color:rgba(255,255,255,.82);line-height:var(--lh-relaxed);margin-bottom:var(--space-7);max-width:500px}
.about-hero__ctas{display:flex;gap:var(--space-3);flex-wrap:wrap}
/* Stats panel */
.about-hero__stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.about-stat{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-xl);padding:var(--space-5);text-align:center}
.about-stat__num{display:block;font-size:2rem;font-weight:800;color:#fff;line-height:1;margin-bottom:.25rem}
.about-stat__label{font-size:var(--text-xs);color:rgba(255,255,255,.7);font-weight:var(--fw-medium);line-height:1.3}

/* ── § 2 MISSION */
.about-mission__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);align-items:start}
.about-mission__title{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;color:var(--color-dark);line-height:1.2;margin-bottom:var(--space-5)}
.about-mission__text p{color:var(--color-text-muted);line-height:var(--lh-relaxed);margin-bottom:var(--space-4)}
.about-mission__link{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none;margin-top:var(--space-2)}
.about-mission__link:hover{text-decoration:underline}
.about-mission__pillars{display:flex;flex-direction:column;gap:var(--space-5)}
.about-pillar{display:flex;gap:var(--space-4);align-items:flex-start;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border)}
.about-pillar__icon{width:44px;height:44px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.about-pillar__icon svg{width:22px;height:22px;stroke:var(--color-primary)}
.about-pillar__title{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-dark);margin-bottom:.25rem}
.about-pillar__desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0}

/* ── § 3 COMPLIANCE */
.about-compliance{background:var(--color-surface);padding:var(--space-16) 0}
.about-compliance__header{text-align:center;margin-bottom:var(--space-12)}
.about-compliance__title{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:var(--color-dark);margin-bottom:var(--space-3)}
.about-compliance__sub{font-size:var(--text-base);color:var(--color-text-muted);max-width:660px;margin-inline:auto;line-height:var(--lh-relaxed)}
.about-compliance__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-bottom:var(--space-10)}
.about-standard-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);transition:box-shadow 200ms ease}
.about-standard-card:hover{box-shadow:var(--shadow-md)}
.about-standard-card__icon{width:44px;height:44px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3)}
.about-standard-card__icon svg{width:22px;height:22px;stroke:var(--color-primary)}
.about-standard-card__badge{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-dark);margin-bottom:var(--space-2)}
.about-standard-card__desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0}
.about-compliance__links{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}
.about-compliance__link{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1.5px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text);text-decoration:none;transition:all 200ms ease}
.about-compliance__link:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-xlight)}
.about-compliance__link svg{flex-shrink:0;stroke:currentColor}

/* ── § 4 TEAM */
.about-team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.about-reviewer-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:all 200ms ease}
.about-reviewer-card:hover{border-color:var(--color-primary);background:var(--color-primary-xlight)}
.about-reviewer-card__avatar{width:64px;height:64px;border-radius:50%;flex-shrink:0;overflow:hidden;border:2px solid var(--color-border)}
.about-reviewer-card__avatar img{width:100%;height:100%;object-fit:cover}
.about-reviewer-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.about-reviewer-card__name{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-primary);text-decoration:none;line-height:1.2}
.about-reviewer-card__name:hover{text-decoration:underline}
.about-reviewer-card__cred{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text)}
.about-reviewer-card__specialty{font-size:var(--text-xs);color:var(--color-text-muted)}

/* ── § 5 PROCESS */
.about-process__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);margin-top:var(--space-10)}
.about-process__step{position:relative}
.about-process__step-num{font-size:2.5rem;font-weight:900;color:var(--color-primary-light);line-height:1;margin-bottom:var(--space-2)}
.about-process__step-title{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--color-dark);margin-bottom:var(--space-2)}
.about-process__step-desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0}

/* ── § 6 SCOPE */
.about-scope__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}
.about-scope__categories{display:flex;flex-direction:column;gap:var(--space-1)}
.about-scope__cat{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:all 150ms ease}
.about-scope__cat:hover{border-color:var(--color-primary);background:var(--color-primary-xlight)}
.about-scope__cat-name{flex:1;font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark)}
.about-scope__cat:hover .about-scope__cat-name{color:var(--color-primary)}
.about-scope__cat-count{font-size:var(--text-xs);color:var(--color-text-faint);white-space:nowrap}
.about-scope__cat svg{width:14px;height:14px;stroke:var(--color-text-faint);flex-shrink:0}
.about-scope__cat:hover svg{stroke:var(--color-primary)}

/* ── § 7 PROMISE */
.about-promise__inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:start}
.about-promise__list{display:flex;flex-direction:column;gap:var(--space-2)}
.about-promise__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:rgba(255,255,255,.06)}
.about-promise__badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:4px;white-space:nowrap;flex-shrink:0}
.about-promise__badge--yes{background:#D1FAE5;color:#065F46}
.about-promise__badge--no{background:#FEE2E2;color:#991B1B}
.about-promise__text{font-size:var(--text-sm);color:rgba(255,255,255,.8)}

/* ── § 8 CONTACT */
.about-contact__inner{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-12);align-items:start}
.about-contact__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.about-contact__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5)}
.about-contact__card-icon{width:44px;height:44px;background:var(--color-primary-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3)}
.about-contact__card-icon svg{width:22px;height:22px;stroke:var(--color-primary)}
.about-contact__card-title{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--color-dark);margin-bottom:var(--space-2)}
.about-contact__card-desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--lh-relaxed);margin:0}

/* ── Responsive: About page */
@media(max-width:1024px){
  .about-hero__inner{grid-template-columns:1fr}.about-hero__stats{display:none}
  .about-mission__grid{grid-template-columns:1fr;gap:var(--space-10)}
  .about-compliance__grid{grid-template-columns:repeat(2,1fr)}
  .about-team__grid{grid-template-columns:repeat(2,1fr)}
  .about-process__steps{grid-template-columns:repeat(2,1fr)}
  .about-scope__grid{grid-template-columns:1fr}
  .about-promise__inner{grid-template-columns:1fr}
  .about-contact__inner{grid-template-columns:1fr}
  .about-contact__cards{grid-template-columns:1fr}
}
@media(max-width:600px){
  .about-compliance__grid{grid-template-columns:1fr}
  .about-team__grid{grid-template-columns:1fr}
  .about-process__steps{grid-template-columns:1fr}
  .about-hero__stats{grid-template-columns:1fr 1fr;display:grid}
}

@media print{.site-header,#lml-footer,.article-toc,.article-sidebar,.post-nav,.related-posts,#cookie-banner,.disclaimer-popup{display:none!important}.article-layout{grid-template-columns:1fr!important}body{font-size:12pt;color:#000}}

/* ════════════════════════════════════════════════════════════════
   MEGA MENU GRID VARIANTS + MISSING COMPONENT CLASSES
   ════════════════════════════════════════════════════════════════ */

/* Grid variants */
.mega-inner--5col{grid-template-columns:1fr 1fr 1fr 1fr 240px}
.mega-inner--2col{grid-template-columns:1fr 1fr}
.mega-inner--4cards{grid-template-columns:repeat(4,1fr);gap:var(--space-5)}
.mega-inner--authors{grid-template-columns:repeat(3,1fr) 220px;gap:var(--space-4)}

/* Column title (header.php uses .mega-col-title not .mega-col-heading) */
.mega-col-title{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--color-primary);padding-bottom:.5rem;border-bottom:2px solid var(--color-primary-light);margin-bottom:.625rem;display:flex;align-items:center;gap:.375rem}
.mega-col-title svg{width:14px;height:14px;flex-shrink:0}

/* Calculator mega cards */
.calc-mega-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-4) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition);background:var(--color-white)}
.calc-mega-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}
.calc-mega-icon{width:44px;height:44px;background:var(--color-primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2);flex-shrink:0;color:var(--color-primary)}
.calc-mega-icon svg{width:22px;height:22px}
.calc-mega-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);margin-bottom:.25rem;line-height:1.3}
.calc-mega-card:hover .calc-mega-name{color:var(--color-primary)}
.calc-mega-desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.4}

/* Author mega items */
.author-mega-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition)}
.author-mega-item:hover{background:var(--color-primary-light)}
.author-mega-item img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--color-border)}
.author-mega-item:hover img{border-color:var(--color-primary)}
.author-mega-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-dark);line-height:1.2}
.author-mega-item:hover .author-mega-name{color:var(--color-primary)}
.author-mega-cred{font-size:var(--text-xs);color:var(--color-text-muted)}
.mega-authors-footer{padding:var(--space-3);border-top:1px solid var(--color-border)}
.mega-authors-footer a{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none}
.mega-authors-footer a:hover{text-decoration:underline}

/* Simple dropdown (Resources nav item) */
/* ── SIMPLE DROPDOWN — gap bridge so hover stays stable ── */
.simple-dropdown{
  position:absolute;
  top:100%;                /* flush to nav item bottom — no gap */
  left:50%;
  transform:translateX(-50%);
  background:var(--color-white);
  border:1.5px solid var(--color-border);
  border-radius:var(--radius-lg);
  box-shadow:0 8px 24px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06);
  padding:var(--space-1) var(--space-2) var(--space-2);
  padding-top:calc(var(--space-1) + 6px); /* visual top padding inside */
  min-width:220px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:all 200ms ease;
  z-index:860;
}
/* Invisible bridge: extends hover area up 8px above dropdown */
.simple-dropdown::before{
  content:'';
  position:absolute;
  top:-8px;
  left:0;right:0;
  height:8px;
  background:transparent;
  pointer-events:all;
}
.simple-dropdown a{display:flex;align-items:center;padding:.5rem .75rem;font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);text-decoration:none;transition:all var(--transition)}
.simple-dropdown a:hover{color:var(--color-primary);background:var(--color-primary-light)}

/* ════════════════════════════════════════════════════════════════
   ENTRY CONTENT — policy pages & default page template
   ════════════════════════════════════════════════════════════════ */
.entry-content{font-size:var(--text-base);line-height:var(--lh-loose);color:var(--color-text)}
.entry-content h2{font-size:var(--text-2xl);font-weight:var(--fw-semibold);color:var(--color-dark);margin:var(--space-8) 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-border-light)}
.entry-content h2:first-child{margin-top:0}
.entry-content h3{font-size:var(--text-xl);font-weight:var(--fw-medium);color:var(--color-dark);margin:var(--space-6) 0 var(--space-3)}
.entry-content h4{font-size:var(--text-lg);font-weight:var(--fw-medium);color:var(--color-dark);margin:var(--space-5) 0 var(--space-2)}
.entry-content p{margin-bottom:var(--space-5)}
.entry-content ul,.entry-content ol{padding-left:var(--space-6);margin-bottom:var(--space-5)}
.entry-content ul{list-style:disc}
.entry-content ol{list-style:decimal}
.entry-content li{margin-bottom:var(--space-2);line-height:var(--lh-relaxed)}
.entry-content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}
.entry-content a:hover{color:var(--color-primary-dark)}
.entry-content blockquote{border-left:4px solid var(--color-primary);padding:var(--space-4) var(--space-6);background:var(--color-primary-light);border-radius:0 var(--radius-lg) var(--radius-lg) 0;margin:var(--space-6) 0;font-style:italic;color:var(--color-text-muted)}
.entry-content strong{font-weight:var(--fw-semibold);color:var(--color-dark)}
.entry-content table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-size:var(--text-sm);border:1px solid var(--color-border);overflow:hidden}
.entry-content th{background:var(--color-primary);color:#fff;text-align:left;padding:var(--space-3) var(--space-4);font-weight:var(--fw-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}
.entry-content td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light)}
.entry-content tr:last-child td{border-bottom:none}
.entry-content tr:nth-child(even) td{background:var(--color-surface)}

/* ════════════════════════════════════════════════════════════════
   POLICY PAGE LAYOUT — matching screenshots exactly
   White header area + 2-col (TOC sidebar | content)
   ════════════════════════════════════════════════════════════════ */

/* ── Page header (white, no teal hero) */
.policy-page-header{padding:var(--space-6) 0 var(--space-5);border-bottom:1px solid var(--color-border-light);background:var(--color-white)}
.policy-page-header__title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-dark);letter-spacing:var(--ls-tight);margin:0 0 var(--space-2)}
.policy-page-header__date{font-size:var(--text-sm);color:var(--color-text-muted)}
.policy-page-header__date strong{color:var(--color-dark);font-weight:var(--fw-semibold)}

/* ── 2-column layout */
.policy-layout{display:grid;grid-template-columns:220px 1fr;gap:var(--space-10);align-items:start;padding:var(--space-10) 0 var(--space-16)}

/* ── TOC sidebar (left, sticky) — matches screenshot: card + ON THIS PAGE + teal active */
.policy-toc{
  position:sticky;
  top:calc(var(--nav-height) + var(--space-4));
  background:var(--color-white);
  border:1.5px solid var(--color-border);
  border-radius:var(--radius-xl);
  padding:var(--space-4) var(--space-3);
  box-shadow:var(--shadow-sm);
}
.policy-toc__label{
  font-size:10px;
  font-weight:var(--fw-bold);
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--color-text-faint);
  margin-bottom:var(--space-3);
  display:block;
  padding-left:var(--space-2);
}
.policy-toc__list{list-style:none}
.policy-toc__item a{
  display:block;
  padding:.45rem var(--space-3);
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  text-decoration:none;
  border-left:3px solid transparent;
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  line-height:var(--lh-snug);
  transition:all 150ms ease;
}
.policy-toc__item a:hover{
  color:var(--color-primary);
  background:var(--color-primary-xlight);
  border-left-color:rgba(13,124,124,.3);
}
.policy-toc__item.is-active a{
  color:var(--color-primary);
  font-weight:var(--fw-semibold);
  background:var(--color-primary-xlight);
  border-left-color:var(--color-primary);
}

/* ── Policy article (right column) */
.policy-article{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-10);box-shadow:var(--shadow-sm)}
.policy-article__footer{margin-top:var(--space-8);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.policy-article__updated{display:flex;align-items:center;gap:.375rem;font-size:var(--text-xs);color:var(--color-text-faint)}
.policy-article__updated svg{width:13px;height:13px;flex-shrink:0}

/* ── Scroll margin so TOC links don't hide under sticky nav */
.entry-content h2[id]{scroll-margin-top:calc(var(--nav-height) + var(--space-4))}
.entry-content h3[id]{scroll-margin-top:calc(var(--nav-height) + var(--space-4))}

/* ── Responsive */
@media(max-width:900px){
  .policy-layout{grid-template-columns:1fr}
  .policy-toc{display:none}
  .policy-article{padding:var(--space-5) var(--space-4)}
}

/* ================================================================
   LML HOMEPAGE v1.5 — Specific section CSS (lml-hp- prefix)
   All classes prefixed lml-hp- to prevent any future conflicts
   ================================================================ */

/* ── CONVERSION-READY LAB VALUE CHECKER STRIP ────────────────── */
.lml-hp-checker {
  background: linear-gradient(135deg, #0A5E5E 0%, #0D7C7C 100%);
  padding: var(--space-10) 0;
}
.lml-hp-checker__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8);
  align-items: center;
}
.lml-hp-checker__left {}
.lml-hp-checker__eyebrow {
  font-size: 11px;
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #4EEAEA;
  margin-bottom: var(--space-2);
}
.lml-hp-checker__heading {
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.15;
  margin-bottom: var(--space-3);
}
.lml-hp-checker__sub {
  font-size: var(--text-sm);
  color: rgba(255,255,255,.75);
  line-height: var(--lh-relaxed);
  margin-bottom: var(--space-5);
}
.lml-hp-checker__cta {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: #fff;
  color: var(--color-primary-dark);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  padding: .75rem 1.5rem;
  border-radius: var(--radius-full);
  text-decoration: none;
  transition: all 200ms ease;
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
}
.lml-hp-checker__cta:hover {
  background: var(--color-primary-xlight);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
.lml-hp-checker__cta svg { width: 16px; height: 16px; flex-shrink: 0; }
.lml-hp-checker__right {}
/* Clickable example cards grid */
.lml-hp-checker__examples {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
}
.lml-hp-checker__example {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: var(--radius-lg);
  padding: .625rem .875rem;
  text-decoration: none;
  transition: all 200ms ease;
  cursor: pointer;
}
.lml-hp-checker__example:hover {
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.3);
  transform: translateY(-1px);
}
.lml-hp-checker__example-left { flex: 1; min-width: 0; }
.lml-hp-checker__example-name {
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: #fff;
  display: block;
  margin-bottom: 2px;
}
.lml-hp-checker__example-val {
  font-size: 11px;
  font-family: var(--font-mono);
  color: rgba(255,255,255,.65);
}
.lml-hp-checker__example-badge {
  font-size: 9px;
  font-weight: var(--fw-bold);
  padding: 3px 7px;
  border-radius: 4px;
  white-space: nowrap;
  flex-shrink: 0;
}
.lml-hp-checker__example-badge--normal { background: #D1FAE5; color: #065F46; }
.lml-hp-checker__example-badge--borderline { background: #FEF3C7; color: #92400E; }
.lml-hp-checker__example-badge--elevated { background: #FEE2E2; color: #991B1B; }
.lml-hp-checker__example-badge--low { background: #DBEAFE; color: #1E40AF; }
.lml-hp-checker__example-arrow {
  font-size: 1rem;
  color: rgba(255,255,255,.4);
  flex-shrink: 0;
}
.lml-hp-checker__example:hover .lml-hp-checker__example-arrow {
  color: #4EEAEA;
}
@media(max-width:768px) {
  .lml-hp-checker__inner { grid-template-columns: 1fr; gap: var(--space-6); }
  .lml-hp-checker__examples { grid-template-columns: 1fr 1fr; }
}
@media(max-width:480px) {
  .lml-hp-checker__examples { grid-template-columns: 1fr; }
}

/* ── MEDICAL REVIEW BOARD GRID (Screenshot 1 match) ──────────── */
.lml-hp-reviewers { background: var(--color-white); }
.lml-hp-reviewers__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-5);
  max-width: 860px;
  margin: 0 auto;
}
.lml-hp-reviewer-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--space-6) var(--space-5) var(--space-5);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: var(--color-white);
  text-decoration: none;
  transition: all 200ms ease;
  gap: var(--space-1);
}
.lml-hp-reviewer-card:hover {
  border-color: var(--color-primary-light);
  box-shadow: 0 4px 16px rgba(13,124,124,.1);
  transform: translateY(-2px);
}
/* Avatar circle — shows initials until real photo loaded */
.lml-hp-reviewer-card__avatar-circle {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  color: #fff;
  margin-bottom: var(--space-3);
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
}
.lml-hp-reviewer-card__avatar-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
  border-radius: 50%;
}
.lml-hp-reviewer-card__initials {
  font-size: 1.375rem;
  font-weight: var(--fw-bold);
  color: #fff;
  line-height: 1;
  z-index: 1;
}
.lml-hp-reviewer-card__name {
  font-size: var(--text-sm);
  font-weight: var(--fw-semibold);
  color: var(--color-dark);
  line-height: 1.35;
  margin-top: var(--space-1);
}
.lml-hp-reviewer-card__cred {
  font-size: var(--text-xs);
  color: var(--color-primary);
  font-weight: var(--fw-medium);
  margin-top: 2px;
}
.lml-hp-reviewer-card__spacer { height: var(--space-2); }
.lml-hp-reviewer-card__specialty {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  line-height: 1.4;
}
@media(max-width:768px) {
  .lml-hp-reviewers__grid { grid-template-columns: repeat(2, 1fr); max-width: 600px; }
}
@media(max-width:480px) {
  .lml-hp-reviewers__grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-3); }
  .lml-hp-reviewer-card { padding: var(--space-4) var(--space-3); }
}

/* ── CLINICAL CALCULATORS (Screenshot 3 match) ───────────────── */
.lml-hp-calcs { background: var(--color-white); }
.lml-hp-calcs__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-4);
}
.lml-hp-calc-card {
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  text-decoration: none;
  transition: all 200ms ease;
  min-height: 260px;
}
.lml-hp-calc-card:hover {
  border-color: var(--color-primary-light);
  box-shadow: 0 6px 24px rgba(13,124,124,.12);
  transform: translateY(-3px);
}
/* Small teal icon box — matches screenshot */
.lml-hp-calc-card__icon-box {
  width: 48px;
  height: 48px;
  background: var(--color-primary-xlight);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--space-4);
  flex-shrink: 0;
  transition: background 200ms ease;
}
.lml-hp-calc-card:hover .lml-hp-calc-card__icon-box { background: rgba(13,124,124,.15); }
.lml-hp-calc-card__icon-box svg {
  width: 24px;
  height: 24px;
  stroke: var(--color-primary);
  fill: none;
}
.lml-hp-calc-card__name {
  font-size: var(--text-base);
  font-weight: var(--fw-bold);
  color: var(--color-dark);
  line-height: 1.3;
  margin-bottom: var(--space-2);
}
.lml-hp-calc-card__desc {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  line-height: var(--lh-relaxed);
  flex: 1;
  text-align: center;
}
/* Bottom action row — "Use Calculator" left + big ">" right */
.lml-hp-calc-card__action {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: var(--space-5);
  padding-top: 0;
  gap: var(--space-2);
}
.lml-hp-calc-card__action-label {
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: var(--color-primary);
  line-height: 1.25;
}
.lml-hp-calc-card__chevron {
  font-size: 2.75rem;
  line-height: 1;
  color: var(--color-primary);
  font-weight: 200;
  flex-shrink: 0;
}
@media(max-width:1080px) {
  .lml-hp-calcs__grid { grid-template-columns: repeat(2, 1fr); }
}
@media(max-width:600px) {
  .lml-hp-calcs__grid { grid-template-columns: 1fr; }
  .lml-hp-calc-card { min-height: auto; }
}

/* ── TOPICS STRIP (replaces "latest articles" – no blog signal) ─ */
.lml-hp-topics { background: var(--color-surface); border-top: 1px solid var(--color-border); }
.lml-hp-topics__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-4);
  padding: var(--space-8) 0;
}
.lml-hp-topics__left { display: flex; flex-direction: column; gap: var(--space-1); }
.lml-hp-topics__label {
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: var(--ls-wider);
  color: var(--color-primary);
}
.lml-hp-topics__heading {
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  font-weight: var(--fw-semibold);
  color: var(--color-dark);
}
.lml-hp-topics__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  flex: 1;
  justify-content: center;
}
.lml-hp-topic-pill {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  font-size: var(--text-xs);
  font-weight: var(--fw-medium);
  color: var(--color-text);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  padding: .375rem .875rem;
  text-decoration: none;
  transition: all 200ms ease;
  white-space: nowrap;
}
.lml-hp-topic-pill:hover {
  background: var(--color-primary-xlight);
  border-color: var(--color-primary-light);
  color: var(--color-primary);
}
.lml-hp-topic-pill svg {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
  stroke: currentColor;
}
.lml-hp-topics__cta {
  flex-shrink: 0;
  font-size: var(--text-sm);
  font-weight: var(--fw-semibold);
  color: var(--color-primary);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: .25rem;
  white-space: nowrap;
}
.lml-hp-topics__cta:hover { text-decoration: underline; }
@media(max-width:768px) {
  .lml-hp-topics__inner { flex-direction: column; align-items: flex-start; }
  .lml-hp-topics__list { justify-content: flex-start; }
}

/* ── PRR PLUGIN — LML-BRANDED OVERRIDE STYLES ────────────────── */
/* These override plugin's default styles to match LML teal theme */
.prr-references-section {
  background: var(--color-surface) !important;
  border-color: var(--color-border) !important;
  border-radius: var(--radius-xl) !important;
  margin-top: var(--space-8) !important;
}
.prr-references-title { color: var(--color-dark) !important; }
.prr-ref-number {
  background: var(--color-primary) !important;
  font-size: 12px !important;
}
.prr-ref-title { color: var(--color-dark) !important; font-size: 14px !important; }
.prr-ref-summary { border-left-color: var(--color-primary) !important; }
.prr-link-pubmed { color: var(--color-primary) !important; }
.prr-link-pubmed:hover { color: var(--color-primary-dark) !important; }
.prr-ev-green { background: #dcfce7 !important; color: #166534 !important; border-color: #bbf7d0 !important; }
/* Hide plugin reviewer box — theme has its own author strip */
.prr-reviewer-box { display: none !important; }

/* ── ABOUT PAGE ANIMATIONS ── */
/* Stats count-up animation */
@keyframes lml-countup{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.about-stat{opacity:0;animation:lml-countup .5s ease forwards}
.about-stat:nth-child(1){animation-delay:.1s}
.about-stat:nth-child(2){animation-delay:.2s}
.about-stat:nth-child(3){animation-delay:.3s}
.about-stat:nth-child(4){animation-delay:.4s}
/* Process steps — slide in from left on scroll */
@keyframes lml-slide-in{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}
.about-process__step{opacity:0;transition:opacity .45s ease,transform .45s ease;transform:translateX(-16px)}
.about-process__step.is-visible{opacity:1;transform:translateX(0)}
/* Promise items — fade in staggered */
.about-promise__item{opacity:0;transition:opacity .35s ease,transform .35s ease;transform:translateY(8px)}
.about-promise__item.is-visible{opacity:1;transform:translateY(0)}
/* Pillar cards — fade up */
.about-pillar{opacity:0;transition:opacity .4s ease,transform .4s ease;transform:translateY(12px)}
.about-pillar.is-visible{opacity:1;transform:translateY(0)}
/* Standard cards */
.about-standard-card{opacity:0;transition:opacity .35s ease,transform .35s ease,box-shadow .2s ease;transform:translateY(10px)}
.about-standard-card.is-visible{opacity:1;transform:translateY(0)}

/* ══════════════════════════════════════════════════════
   SITEMAP PAGE
══════════════════════════════════════════════════════ */
.sitemap-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:var(--space-8);
    align-items:start;
}
.sitemap-section{
    margin-bottom:var(--space-8);
}
.sitemap-section__title{
    font-size:var(--text-sm);
    font-weight:var(--fw-bold);
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--color-primary);
    border-bottom:2px solid var(--color-primary-xlight);
    padding-bottom:var(--space-2);
    margin-bottom:var(--space-3);
    display:flex;
    align-items:center;
    gap:var(--space-2);
}
.sitemap-section__title svg{stroke:var(--color-primary)}
.sitemap-viewall{
    margin-left:auto;
    font-size:11px;
    font-weight:var(--fw-medium);
    color:var(--color-primary);
    text-decoration:none;
    text-transform:none;
    letter-spacing:0;
}
.sitemap-viewall:hover{text-decoration:underline}
.sitemap-list{
    list-style:none;
    margin:0;padding:0;
    display:flex;flex-direction:column;gap:1px;
}
.sitemap-list li{
    font-size:var(--text-sm);
    line-height:var(--lh-snug);
}
.sitemap-list a{
    display:block;
    padding:5px var(--space-2);
    color:var(--color-text-muted);
    text-decoration:none;
    border-radius:var(--radius-sm);
    transition:all 150ms ease;
}
.sitemap-list a:hover{
    color:var(--color-primary);
    background:var(--color-primary-xlight);
    padding-left:var(--space-3);
}
.sitemap-list--sub{margin-left:var(--space-5);margin-top:2px}
.sitemap-list--sub a{font-size:12px}
.sitemap-date{
    font-size:11px;
    color:var(--color-text-faint);
    margin-left:var(--space-2);
}
.sitemap-stats{
    display:grid;grid-template-columns:1fr 1fr;
    gap:var(--space-3);
    background:var(--color-primary);
    border-radius:var(--radius-xl);
    padding:var(--space-5);
    margin-top:var(--space-6);
}
.sitemap-stat{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.sitemap-stat__num{font-size:1.75rem;font-weight:var(--fw-bold);color:#fff;line-height:1}
.sitemap-stat__label{font-size:11px;color:rgba(255,255,255,.7)}
@media(max-width:900px){.sitemap-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sitemap-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════
   RELATED ARTICLES — Single Post (rpl-*)
   Category-filtered, 3-card grid above disclaimer
══════════════════════════════════════════════════════ */
.related-posts-lml {
    padding: var(--space-12) 0;
    background: var(--color-surface);
    border-top: 1px solid var(--color-border);
    margin-top: var(--space-10);
}
.rpl-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: var(--space-8);
    flex-wrap: wrap;
    gap: var(--space-4);
}
.rpl-eyebrow {
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    color: var(--color-primary);
    margin-bottom: var(--space-2);
}
.rpl-title {
    font-size: clamp(1.4rem, 2.6vw, 1.9rem);
    font-weight: 700;
    color: var(--color-dark);
    line-height: 1.2;
    letter-spacing: -.02em;
    margin: 0;
}
.rpl-view-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--color-primary);
    color: #fff;
    border-radius: 100px;
    padding: 10px 20px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all .2s ease;
    flex-shrink: 0;
}
.rpl-view-all:hover { background: var(--color-primary-dark); transform: translateY(-1px); }
.rpl-view-all svg { stroke: #fff; }

.rpl-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-6);
}
.rpl-card {
    background: var(--color-white);
    border: 1.5px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    opacity: 0;
    transform: translateY(14px);
    animation: rplFadeIn .5s ease forwards var(--rpl-delay, 0s);
    transition: box-shadow .25s ease, transform .25s ease;
}
@keyframes rplFadeIn {
    to { opacity: 1; transform: translateY(0); }
}
.rpl-card:hover {
    box-shadow: 0 12px 40px rgba(0,0,0,.1);
    transform: translateY(-4px);
}
.rpl-thumb {
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}
.rpl-thumb img {
    width: 100%; height: 100%;
    object-fit: cover; display: block;
}
.rpl-thumb::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,.22));
}
.rpl-emoji { font-size: 44px; z-index: 1; }
.rpl-cat-tag {
    position: absolute; bottom: 10px; left: 12px; z-index: 2;
    background: rgba(255,255,255,.15);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 100px;
    padding: 4px 12px;
    font-size: 11px; font-weight: 700;
    color: #fff;
    letter-spacing: .03em;
}
.rpl-body {
    padding: var(--space-5) var(--space-6);
    flex: 1;
    display: flex;
    flex-direction: column;
}
.rpl-post-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-dark);
    line-height: 1.4;
    margin-bottom: var(--space-2);
}
.rpl-post-title a {
    color: inherit; text-decoration: none;
}
.rpl-post-title a:hover { color: var(--color-primary); }
.rpl-excerpt {
    font-size: 13px;
    color: var(--color-text-muted);
    line-height: 1.6;
    flex: 1;
    margin-bottom: var(--space-3);
}
.rpl-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: var(--space-3);
    border-top: 1px solid var(--color-border);
    margin-bottom: var(--space-3);
}
.rpl-reviewer {
    font-size: 11.5px;
    color: var(--color-text-muted);
    font-weight: 500;
}
.rpl-readtime {
    font-size: 11.5px;
    color: var(--color-primary);
    font-weight: 700;
}
.rpl-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-primary);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}
.rpl-cta svg { stroke: var(--color-primary); }
.rpl-cta:hover { text-decoration: underline; }

@media (max-width: 900px) {
    .rpl-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
    .rpl-grid { grid-template-columns: 1fr; }
    .rpl-header { flex-direction: column; align-items: flex-start; }
    .related-posts-lml { padding: var(--space-8) 0; }
}
