/**
 * lineboard-content.css — long-form CONTENT primitives + document globals for the generalized
 * Line-Board base. Served as a STATIC public asset and <link>ed directly by BaseLineBoard.astro.
 *
 * ⛔ STATIC ON PURPOSE — NOT an Astro import, NOT a component <style is:global>. Either of those
 * makes these rules part of Astro's CSS bundle graph, which re-chunks the shared stylesheets and
 * pulls an extra <link> onto the 51 already-built preview pages (they share chunks via PreviewNav/
 * FinalCta). A static public file participates in zero bundling, so the preview pages stay
 * byte-identical to main while content pages (BaseLineBoard) load this directly.
 *
 * Rules resolve their var(--lb-*) tokens from the `.lb` wrapper styled by preview-lineboard.css.
 *
 * ⛔ EMPHASIS = KEY-TERMS ONLY (PAGE-BUILD-STANDARDS A6). ⛔ COLOR LAW: in-prose links charcoal →
 * red (--lb-action) on hover; gold is a rule/accent, never a link/CTA color.
 */

/* ---- document globals (mirror PreviewLayout's, for pages that render through BaseLineBoard) ---- */
html { scroll-behavior: smooth; }
body { margin: 0; }
.lb-sticky-spacer { height: 72px; }
@media (min-width: 900px) {
  .lb-sticky-spacer { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* ---- article head ---- */
.lb-article { background: var(--lb-white); }

.lb-article__head {
  padding-block: var(--lb-s12) var(--lb-s8);
  border-bottom: 1px solid var(--lb-n100);
}

.lb-article__eyebrow {
  font-family: var(--lb-display);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lb-action);
  margin: 0 0 var(--lb-s3);
}

.lb-article__title {
  font-family: var(--lb-display);
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.04;
  font-size: clamp(30px, 5vw, 50px);
  color: var(--lb-ink);
  margin: 0;
  max-width: 16ch;
}

.lb-article__dek {
  margin: var(--lb-s5) 0 0;
  font-size: 20px;
  line-height: 1.5;
  color: var(--lb-n500);
  max-width: var(--lb-reading);
}

.lb-article__meta {
  margin: var(--lb-s5) 0 0;
  font-size: 14px;
  letter-spacing: 0.02em;
  color: var(--lb-n400);
}

/* The answer-first callout — the speakable answer block. The class name is the contract with
 * buildEditorialGraph's speakable cssSelector (['.lb-answer']); rename one side and the selector
 * silently resolves to nothing while the schema still validates. */
.lb-answer {
  margin: var(--lb-s8) 0 0;
  padding: var(--lb-s5) var(--lb-s6);
  background: var(--lb-paper);
  border-left: 3px solid var(--lb-gold);
  border-radius: 0 var(--lb-radius) var(--lb-radius) 0;
  font-size: 19px;
  line-height: 1.55;
  color: var(--lb-n900);
  max-width: var(--lb-reading);
}
.lb-answer strong { font-weight: 700; color: var(--lb-ink); }

/* ---- prose body ---- */
.lb-prose {
  max-width: var(--lb-reading);
  padding-block: var(--lb-s10);
  font-size: 17px;
  line-height: 1.65;
  color: var(--lb-n900);
}

.lb-prose > * + * { margin-top: var(--lb-s5); }

.lb-prose h2 {
  font-family: var(--lb-display);
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.12;
  font-size: clamp(24px, 3.4vw, 33px);
  color: var(--lb-ink);
  margin-top: var(--lb-s12);
}

.lb-prose h3 {
  font-family: var(--lb-display);
  font-weight: 700;
  line-height: 1.2;
  font-size: clamp(20px, 2.4vw, 24px);
  color: var(--lb-ink);
  margin-top: var(--lb-s8);
}

.lb-prose p { margin: 0; }

.lb-prose a {
  color: var(--lb-action);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
  transition: color var(--lb-fast) var(--lb-ease);
}
.lb-prose a:hover { color: var(--lb-action-hover); }

.lb-prose strong { font-weight: 700; color: var(--lb-ink); }

.lb-prose ul,
.lb-prose ol { margin: 0; padding-left: var(--lb-s6); }
.lb-prose li + li { margin-top: var(--lb-s2); }
.lb-prose li::marker { color: var(--lb-n400); }

.lb-prose blockquote {
  margin: var(--lb-s6) 0;
  padding: var(--lb-s4) var(--lb-s6);
  border-left: 3px solid var(--lb-gold);
  background: var(--lb-paper);
  color: var(--lb-n700);
  font-size: 18px;
}

.lb-prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}
.lb-prose th,
.lb-prose td {
  padding: var(--lb-s3) var(--lb-s4);
  border-bottom: 1px solid var(--lb-n100);
  text-align: left;
  vertical-align: top;
}
.lb-prose th {
  font-family: var(--lb-display);
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--lb-ink);
}
.lb-prose .lb-table-scroll { overflow-x: auto; }

.lb-prose hr {
  border: none;
  border-top: 1px solid var(--lb-n100);
  margin: var(--lb-s8) 0;
}

/* ---- FAQ accordion — native <details>/<summary>, no JS ---- */
.lb-faq { max-width: var(--lb-reading); }
.lb-faq__item { border-bottom: 1px solid var(--lb-n100); }
.lb-faq__item > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--lb-s4);
  padding: var(--lb-s5) 0;
  cursor: pointer;
  list-style: none;
  font-family: var(--lb-display);
  font-weight: 700;
  font-size: 19px;
  color: var(--lb-ink);
}
.lb-faq__item > summary::-webkit-details-marker { display: none; }
.lb-faq__item > summary::after {
  content: '+';
  font-size: 24px;
  color: var(--lb-action);
  transition: transform var(--lb-fast) var(--lb-ease);
}
.lb-faq__item[open] > summary::after { content: '\2212'; }
.lb-faq__answer {
  padding: 0 0 var(--lb-s5);
  color: var(--lb-n700);
  line-height: 1.6;
}

/* ---- reusable dark final-CTA band (guides / insurance / utility) ---- */
.lb-cta-band {
  background: var(--lb-charcoal);
  color: var(--lb-on-dark);
  padding-block: var(--lb-s16);
}
.lb-cta-band__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--lb-s6);
}
.lb-cta-band__eyebrow {
  font-family: var(--lb-display);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lb-gold);
  margin: 0 0 var(--lb-s3);
}
.lb-cta-band h2 {
  font-family: var(--lb-display);
  font-weight: 800;
  line-height: 1.08;
  font-size: clamp(26px, 3.4vw, 38px);
  color: #fff;
  margin: 0;
  max-width: 20ch;
}
.lb-cta-band p {
  margin: var(--lb-s3) 0 0;
  color: var(--lb-on-dark-muted);
  max-width: 46ch;
}
.lb-cta-band__btn {
  display: inline-flex;
  align-items: center;
  gap: var(--lb-s2);
  min-height: 54px;
  padding: 0 var(--lb-s8);
  background: var(--lb-action);
  color: #fff;
  font-family: var(--lb-display);
  font-size: 19px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-decoration: none;
  border-radius: var(--lb-radius);
  flex: none;
}
.lb-cta-band__btn:hover { background: var(--lb-action-hover); }
/* ================================================================ trust band
 * A slim STATIC proof strip (NOT a scrolling marquee) rendered by BaseLineBoard when showTrustBand
 * is set. Marketing content only (guides/insurance); OFF for legal/utility. Figures come from
 * previewBusiness (single source): "Serving Olathe since {founded}" (durable year anchor, never a
 * stale count) + "{vehiclesRestored}+ Vehicles Restored" + qualitative claims. No hardcoded numbers. */
.lb-trust-band { background: var(--lb-charcoal); border-bottom: 1px solid var(--lb-hairline); }
.lb-trust-band__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--lb-s2) var(--lb-s6);
  padding-block: var(--lb-s3);
}
.lb-trust-band__chip {
  display: inline-flex;
  align-items: center;
  gap: var(--lb-s2);
  font-family: var(--lb-display);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lb-on-dark);
}
.lb-trust-band__chip svg { width: 15px; height: 15px; color: var(--lb-gold); flex: none; }

/* Long-label CTA buttons must never exceed their container on narrow screens. */
.lb-cta-band__btn { max-width: 100%; text-align: center; }
@media (max-width: 560px) {
  .lb-cta-band__btn { white-space: normal; padding-inline: var(--lb-s5); height: auto; padding-block: 12px; line-height: 1.2; }
}

/* ================================================================ LbNav (global site nav)
 * Moved here from LbNav.astro's scoped <style> ON PURPOSE. A bundled scoped <style> enters Astro's
 * CSS graph and re-partitions the shared chunks, re-hashing them on the 51 preview pages. Static
 * rules keep those pages byte-identical. LbNav.astro carries no <style> block. */
.lb-gnav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--lb-n100);
}
.lb-gnav__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--lb-s5);
  min-height: 72px;
}
.lb-gnav__brand {
  display: flex;
  align-items: center;
  gap: var(--lb-s3);
  text-decoration: none;
  flex: none;
}
.lb-gnav__mark {
  width: 38px;
  height: 38px;
  border-radius: var(--lb-radius-sm);
  background: linear-gradient(118deg, var(--lb-charcoal) 44%, var(--lb-gold) 46%, var(--lb-gold) 54%, var(--lb-charcoal) 56%);
  flex: none;
}
.lb-gnav__word strong {
  display: block;
  font-family: var(--lb-display);
  font-size: 23px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--lb-ink);
}
.lb-gnav__word small {
  display: block;
  font-size: 11px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--lb-n500);
  margin-top: 3px;
}
.lb-gnav__burger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  background: none;
  border: 1px solid var(--lb-n200);
  border-radius: var(--lb-radius-sm);
  cursor: pointer;
  color: var(--lb-ink);
}
.lb-gnav__burger-box { display: grid; gap: 5px; width: 22px; }
.lb-gnav__burger-box span {
  display: block;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform var(--lb-fast) var(--lb-ease), opacity var(--lb-fast) var(--lb-ease);
}
.lb-gnav.is-open .lb-gnav__burger-box span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.lb-gnav.is-open .lb-gnav__burger-box span:nth-child(2) { opacity: 0; }
.lb-gnav.is-open .lb-gnav__burger-box span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.lb-gnav__menu { display: none; flex-direction: column; gap: var(--lb-s2); }
.lb-gnav.is-open .lb-gnav__menu {
  display: flex;
  position: absolute;
  inset: 72px 0 auto;
  background: var(--lb-white);
  border-bottom: 1px solid var(--lb-n100);
  box-shadow: var(--lb-elev);
  padding: var(--lb-s4) max(20px, calc((100% - var(--lb-container)) / 2 + 20px)) var(--lb-s6);
  max-height: calc(100vh - 72px);
  overflow-y: auto;
}
.lb-gnav__menu > a,
.lb-gnav__dd-trigger {
  display: flex;
  align-items: center;
  gap: var(--lb-s2);
  min-height: 48px;
  font-family: var(--lb-body);
  font-size: 17px;
  font-weight: 600;
  color: var(--lb-n700);
  text-decoration: none;
  background: none;
  border: none;
  width: 100%;
  cursor: pointer;
}
.lb-gnav__menu > a:hover,
.lb-gnav__dd-trigger:hover { color: var(--lb-ink); }
.lb-gnav__caret { width: 18px; height: 18px; transition: transform var(--lb-fast) var(--lb-ease); }
.lb-gnav__dd.is-open .lb-gnav__caret { transform: rotate(180deg); }
.lb-gnav__panel { display: none; flex-direction: column; padding: 0 0 var(--lb-s3) var(--lb-s4); }
.lb-gnav__dd.is-open .lb-gnav__panel { display: flex; }
.lb-gnav__panel a {
  display: block;
  min-height: 44px;
  line-height: 44px;
  font-size: 16px;
  color: var(--lb-n500);
  text-decoration: none;
}
.lb-gnav__panel a:hover { color: var(--lb-action); }
.lb-gnav__areas-heading {
  margin: var(--lb-s2) 0 0;
  font-family: var(--lb-display);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lb-n400);
}
.lb-gnav__areas-all { font-weight: 600 !important; color: var(--lb-ink) !important; }
.lb-gnav__actions {
  display: flex;
  flex-direction: column;
  gap: var(--lb-s3);
  margin-top: var(--lb-s4);
  padding-top: var(--lb-s4);
  border-top: 1px solid var(--lb-n100);
}
.lb-gnav__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  background: var(--lb-action);
  color: #fff !important;
  font-family: var(--lb-display);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-decoration: none;
  border-radius: var(--lb-radius);
}
.lb-gnav__cta:hover { background: var(--lb-action-hover); }
.lb-gnav__call {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  min-height: 48px;
  justify-content: center;
}
.lb-gnav__call-label {
  font-size: 11px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--lb-n500);
}
.lb-gnav__call strong {
  font-family: var(--lb-display);
  font-size: 22px;
  font-weight: 800;
  color: var(--lb-action);
  line-height: 1.05;
}
@media (min-width: 960px) {
  .lb-gnav__burger { display: none; }
  .lb-gnav__menu { display: flex; flex-direction: row; align-items: center; gap: var(--lb-s6); }
  .lb-gnav__menu > a,
  .lb-gnav__dd-trigger { min-height: 40px; width: auto; font-size: 16px; font-weight: 500; color: var(--lb-n700); }
  .lb-gnav__dd { position: relative; }
  .lb-gnav__panel {
    display: flex;
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    min-width: 240px;
    padding: var(--lb-s3);
    background: var(--lb-white);
    border: 1px solid var(--lb-n100);
    border-radius: var(--lb-radius);
    box-shadow: var(--lb-elev);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition: opacity var(--lb-fast) var(--lb-ease), transform var(--lb-fast) var(--lb-ease), visibility var(--lb-fast);
  }
  .lb-gnav__dd:hover .lb-gnav__panel,
  .lb-gnav__dd:focus-within .lb-gnav__panel,
  .lb-gnav__dd.is-open .lb-gnav__panel { opacity: 1; visibility: visible; transform: translateY(0); }
  .lb-gnav__panel a { min-height: 40px; line-height: 1.3; padding: 8px 10px; }
  .lb-gnav__panel--areas { min-width: 460px; }
  .lb-gnav__areas-cols { display: grid; grid-template-columns: 1fr 1fr; gap: var(--lb-s5); }
  .lb-gnav__areas-col { display: flex; flex-direction: column; }
  .lb-gnav__areas-all { display: block; margin-top: var(--lb-s3); padding-top: var(--lb-s3); border-top: 1px solid var(--lb-n100); }
  .lb-gnav__actions { flex-direction: row; align-items: center; gap: var(--lb-s5); margin: 0; padding: 0; border: none; }
  .lb-gnav__cta { padding: 0 var(--lb-s5); }
  .lb-gnav__call { align-items: flex-end; }
}

/* ================================================================ content-page utilities
 * Shared helpers for article-style pages (breadcrumbs, head actions, figures, related cards,
 * section headings). Kept static for the same chunk-isolation reason as everything above. */
.lb-crumbs { font-size: 14px; color: var(--lb-n500); margin-bottom: var(--lb-s4); }
.lb-crumbs a { color: var(--lb-n500); text-decoration: none; }
.lb-crumbs a:hover { color: var(--lb-action); }
.lb-head-actions { display: flex; flex-wrap: wrap; gap: var(--lb-s4); align-items: center; margin-top: var(--lb-s6); }
.lb-head-call { display: inline-flex; align-items: center; min-height: 48px; font-weight: 600; color: var(--lb-ink); text-decoration: underline; text-underline-offset: 3px; }
.lb-figure { margin: var(--lb-s6) 0; }
.lb-figure img { border-radius: var(--lb-radius); border: 1px solid var(--lb-n100); }
.lb-figure figcaption { margin-top: var(--lb-s3); font-size: 14px; color: var(--lb-n500); }
.lb-section-h { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px, 3.2vw, 32px); color: var(--lb-ink); margin: 0 0 var(--lb-s6); }
.lb-related-sec { background: var(--lb-paper); }
.lb-related { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
.lb-related__card { display: block; padding: var(--lb-s6); background: var(--lb-white); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); text-decoration: none; transition: transform var(--lb-fast) var(--lb-ease), box-shadow var(--lb-fast) var(--lb-ease); }
.lb-related__card:hover { transform: translateY(-2px); box-shadow: var(--lb-elev); }
.lb-related__card h3 { font-family: var(--lb-display); font-weight: 700; font-size: 20px; color: var(--lb-ink); margin: 0 0 var(--lb-s2); }
.lb-related__card p { margin: 0; color: var(--lb-n500); font-size: 15px; line-height: 1.5; }
@media (min-width: 760px) { .lb-related { grid-template-columns: repeat(3, 1fr); } }

/* ================================================================ LbStickyBar (mobile CTA)
 * Static CSS for LbStickyBar.astro (mirrors PreviewStickyBar; kept static for chunk isolation). */
.lb-sticky {
  position: fixed;
  z-index: 60;
  inset: auto 0 0;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--lb-s3);
  align-items: center;
  height: 72px;
  padding: 0 var(--lb-s4);
  background: rgba(22, 24, 27, 0.97);
  backdrop-filter: blur(10px);
  border-top: 1px solid var(--lb-hairline);
}
.lb-sticky__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 var(--lb-s5);
  border-radius: var(--lb-radius);
  font-family: var(--lb-display);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
  border: 2px solid transparent;
}
.lb-sticky__btn--action { background: var(--lb-action); color: #fff; }
.lb-sticky__btn--call { border-color: rgba(244, 244, 242, 0.42); color: var(--lb-on-dark); }
@media (min-width: 900px) { .lb-sticky { display: none; } }

/* ================================================================ LbFooter (site footer)
 * Static CSS for LbFooter.astro (mirrors PreviewFooter; kept static for chunk isolation). */
.lb-footer { background: var(--lb-charcoal); color: var(--lb-on-dark); }
.lb-footer__strip {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px;
  background: rgba(200, 162, 74, 0.28);
}
.lb-footer__strip img { width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.lb-footer__main { background: var(--lb-charcoal-2); padding-block: var(--lb-s16); }
.lb-footer__grid { display: grid; gap: var(--lb-s12); }
.lb-footer__word { display: block; font-family: var(--lb-display); font-size: 30px; font-weight: 800; letter-spacing: -0.02em; margin-bottom: var(--lb-s4); }
.lb-footer__about { font-size: 15px; line-height: 1.6; color: var(--lb-on-dark-muted); max-width: 54ch; }
.lb-footer__nap { margin-top: var(--lb-s6); font-style: normal; font-size: 15px; line-height: 1.7; color: var(--lb-on-dark-muted); }
.lb-footer__nap a { color: var(--lb-on-dark); font-weight: 600; text-decoration: none; }
.lb-footer__hours { margin-top: var(--lb-s5); font-size: 15px; line-height: 1.7; color: var(--lb-on-dark-muted); }
.lb-footer__hours strong { color: var(--lb-on-dark); font-weight: 600; display: inline-block; min-width: 74px; }
.lb-footer__gbp { margin-top: var(--lb-s5); font-size: 15px; }
.lb-footer__gbp a { color: var(--lb-on-dark); text-decoration: underline; text-decoration-color: var(--lb-gold); text-underline-offset: 4px; }
.lb-footer__nav { display: grid; gap: var(--lb-s8); }
.lb-footer__nav h3 { font-size: 14px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--lb-gold); margin-bottom: var(--lb-s4); }
.lb-footer__h3-gap { margin-top: var(--lb-s6); }
.lb-footer__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--lb-s6); }
.lb-footer__nav a { font-size: 15px; color: var(--lb-on-dark-muted); text-decoration: none; transition: color var(--lb-fast) var(--lb-ease); }
.lb-footer__nav a:hover { color: var(--lb-on-dark); }
.lb-footer__bar { border-top: 1px solid rgba(244, 244, 242, 0.08); padding-block: var(--lb-s5); }
.lb-footer__bar-inner { display: flex; flex-direction: column; gap: var(--lb-s2); font-size: 13px; color: var(--lb-n400); }
.lb-footer__bar-inner a { color: var(--lb-on-dark-muted); }
@media (min-width: 700px) {
  .lb-footer__strip { grid-template-columns: repeat(4, 1fr); }
  .lb-footer__nav { grid-template-columns: repeat(3, 1fr); }
  .lb-footer__bar-inner { flex-direction: row; justify-content: space-between; }
}
@media (min-width: 900px) {
  .lb-footer__grid { grid-template-columns: 0.9fr 1.1fr; gap: var(--lb-s16); }
}

/* ================================================================ utility-page helpers
 * Shared building blocks for the utility bucket (thank-you, 404, careers, reviews, sitemap …).
 * Static for the same chunk-isolation reason as everything above. */

/* Dark hero band (confirmation / 404 / careers intro). */
.lb-hero-dark {
  background: var(--lb-charcoal);
  color: var(--lb-on-dark);
  padding-block: var(--lb-s16);
  text-align: center;
}
.lb-hero-dark__eyebrow {
  font-family: var(--lb-display);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lb-action);
  margin: 0 0 var(--lb-s4);
}
.lb-hero-dark h1 {
  font-family: var(--lb-display);
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.02;
  font-size: clamp(32px, 5.4vw, 56px);
  color: #fff;
  margin: 0 auto;
  max-width: 18ch;
}
.lb-hero-dark__lead {
  margin: var(--lb-s5) auto 0;
  font-size: 19px;
  line-height: 1.55;
  color: var(--lb-on-dark-muted);
  max-width: 60ch;
}
.lb-hero-dark__check {
  width: 72px;
  height: 72px;
  margin: 0 auto var(--lb-s6);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 2px solid var(--lb-success);
  background: rgba(46, 125, 91, 0.15);
  color: var(--lb-success);
}
.lb-hero-dark__actions { display: flex; flex-wrap: wrap; gap: var(--lb-s4); justify-content: center; margin-top: var(--lb-s8); }

/* Numbered steps (what happens next). */
.lb-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--lb-s4); max-width: var(--lb-reading); }
.lb-steps li {
  display: flex;
  gap: var(--lb-s5);
  padding: var(--lb-s5) var(--lb-s6);
  background: var(--lb-paper);
  border: 1px solid var(--lb-n100);
  border-radius: var(--lb-radius);
}
.lb-steps__num {
  flex: none;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--lb-white);
  border: 2px solid var(--lb-action);
  color: var(--lb-action);
  font-family: var(--lb-display);
  font-weight: 800;
}
.lb-steps__body h3 { margin: 0 0 var(--lb-s1); font-family: var(--lb-display); font-weight: 700; font-size: 18px; color: var(--lb-ink); }
.lb-steps__body p { margin: 0; color: var(--lb-n700); line-height: 1.6; }

/* Inline notice card (phone callout). */
.lb-notice {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--lb-s5);
  margin-top: var(--lb-s8);
  padding: var(--lb-s6);
  background: var(--lb-charcoal);
  color: var(--lb-on-dark);
  border-radius: var(--lb-radius);
  max-width: var(--lb-reading);
}
.lb-notice__eyebrow { font-family: var(--lb-display); font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--lb-gold); margin: 0 0 var(--lb-s1); }
.lb-notice__phone { font-family: var(--lb-display); font-size: 26px; font-weight: 800; color: #fff; margin: 0; }
.lb-notice__hours { margin: var(--lb-s1) 0 0; font-size: 14px; color: var(--lb-on-dark-muted); }

/* Ghost button (secondary action on dark). */
.lb-btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: var(--lb-s2);
  min-height: 54px;
  padding: 0 var(--lb-s6);
  border: 2px solid rgba(244, 244, 242, 0.42);
  color: var(--lb-on-dark);
  font-family: var(--lb-display);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-decoration: none;
  border-radius: var(--lb-radius);
}

/* Reviews grid + card. */
.lb-reviews { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
.lb-review {
  padding: var(--lb-s6);
  background: var(--lb-white);
  border: 1px solid var(--lb-n100);
  border-radius: var(--lb-radius);
}
.lb-review__stars { color: var(--lb-gold); letter-spacing: 2px; font-size: 16px; }
.lb-review__text { margin: var(--lb-s3) 0; color: var(--lb-n900); line-height: 1.6; }
.lb-review__meta { margin: 0; font-size: 14px; color: var(--lb-n500); }
.lb-review__meta strong { color: var(--lb-ink); }
@media (min-width: 700px) { .lb-reviews { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .lb-reviews { grid-template-columns: repeat(3, 1fr); } }

/* Simple sitemap / link columns. */
.lb-linkcols { display: grid; gap: var(--lb-s8); grid-template-columns: 1fr; }
.lb-linkcols h2 { font-family: var(--lb-display); font-weight: 800; font-size: 20px; color: var(--lb-ink); margin: 0 0 var(--lb-s4); padding-bottom: var(--lb-s2); border-bottom: 2px solid var(--lb-gold); }
.lb-linkcols ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--lb-s3); }
.lb-linkcols a { color: var(--lb-n700); text-decoration: none; font-size: 15px; }
.lb-linkcols a:hover { color: var(--lb-action); }
@media (min-width: 700px) { .lb-linkcols { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .lb-linkcols { grid-template-columns: repeat(3, 1fr); } }
.lb-linkcols__count { font-weight: 400; color: var(--lb-n400); font-size: 0.75em; }

/* ================================================================ utility-page part 2
 * hero-split, marquee tape, location map + business card, stat row, contact/careers forms,
 * contact aside cards, reviews. All static (STEP-0 discipline). Form CSS is retargeted from the
 * redesign tokens to .lb tokens; the FORM MARKUP + inline scripts are ported verbatim (names, ids,
 * hidden fields, action/target unchanged). */

/* Split hero (dark) with optional image. */
.lb-hero-split { background: var(--lb-charcoal); color: var(--lb-on-dark); padding-block: var(--lb-s16); }
.lb-hero-split__grid { display: grid; gap: var(--lb-s10); align-items: center; }
.lb-hero-split h1 { font-family: var(--lb-display); font-weight: 800; letter-spacing: -0.01em; line-height: 1.03; font-size: clamp(30px, 5vw, 52px); color: #fff; margin: 0; }
.lb-hero-split__lead { margin: var(--lb-s5) 0 0; font-size: 19px; line-height: 1.55; color: var(--lb-on-dark-muted); max-width: 56ch; }
.lb-hero-split__note { margin: var(--lb-s6) 0 0; font-size: 14px; color: var(--lb-n400); }
.lb-hero-split__actions { display: flex; flex-wrap: wrap; gap: var(--lb-s4); margin-top: var(--lb-s8); }
.lb-hero-split__img { width: 100%; height: auto; border-radius: var(--lb-radius); border: 1px solid var(--lb-hairline); }
@media (min-width: 900px) { .lb-hero-split__grid { grid-template-columns: 1.1fr 0.9fr; } }

/* Marquee trust tape. */
.lb-tape { background: var(--lb-charcoal-2); border-block: 1px solid var(--lb-hairline); overflow: hidden; padding-block: var(--lb-s4); }
.lb-tape__track { display: flex; gap: var(--lb-s5); white-space: nowrap; align-items: center; animation: lb-tape 34s linear infinite; }
.lb-tape__track span { font-family: var(--lb-display); font-weight: 700; font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--lb-on-dark); }
.lb-tape__track em { color: var(--lb-gold); font-style: normal; }
@keyframes lb-tape { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .lb-tape__track { animation: none; flex-wrap: wrap; white-space: normal; } }

/* Stat row. */
.lb-stats { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
.lb-stat { padding: var(--lb-s6); background: var(--lb-charcoal-2); border: 1px solid var(--lb-hairline); border-radius: var(--lb-radius); }
.lb-stat__num { font-family: var(--lb-display); font-weight: 800; font-size: 40px; line-height: 1; color: var(--lb-gold); }
.lb-stat__label { margin: var(--lb-s3) 0 0; color: var(--lb-on-dark-muted); font-size: 15px; line-height: 1.5; }
@media (min-width: 760px) { .lb-stats { grid-template-columns: repeat(3, 1fr); } }

/* Card grid (about/careers/how-it-works "why" cards). */
.lb-cardgrid { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
.lb-cardgrid > * { padding: var(--lb-s6); background: var(--lb-white); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); }
.lb-cardgrid h3 { margin: 0 0 var(--lb-s2); font-family: var(--lb-display); font-weight: 700; font-size: 20px; color: var(--lb-ink); }
.lb-cardgrid p { margin: 0; color: var(--lb-n700); line-height: 1.6; }
@media (min-width: 760px) { .lb-cardgrid--2 { grid-template-columns: repeat(2, 1fr); } .lb-cardgrid--3 { grid-template-columns: repeat(3, 1fr); } }

/* Blockquote accent (Bryan quote). */
.lb-quote { max-width: var(--lb-reading); padding: var(--lb-s6) var(--lb-s8); border-left: 4px solid var(--lb-gold); background: var(--lb-paper); }
.lb-quote p { margin: 0; }
.lb-quote__text { font-family: var(--lb-display); font-weight: 700; font-size: clamp(20px, 2.6vw, 26px); line-height: 1.4; color: var(--lb-ink); }
.lb-quote__cite { margin-top: var(--lb-s3) !important; color: var(--lb-n500); font-weight: 600; }

/* Location: map + business card. */
.lb-locsec { padding-block: var(--lb-section-y); }
.lb-loc-h { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px, 3.4vw, 34px); color: var(--lb-ink); margin: 0 0 var(--lb-s3); }
.lb-loc-lead { color: var(--lb-n700); max-width: 62ch; margin: 0 0 var(--lb-s8); }
.lb-locgrid { display: grid; gap: var(--lb-s6); grid-template-columns: 1fr; align-items: stretch; }
.lb-locmap { border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); min-height: 320px; }
.lb-locmap iframe { width: 100%; height: 100%; min-height: 320px; border: 0; display: block; }
.lb-bizcard { background: var(--lb-charcoal); color: var(--lb-on-dark); border-radius: var(--lb-radius); padding: var(--lb-s8); }
.lb-bizcard__nm { font-family: var(--lb-display); font-weight: 800; font-size: 26px; color: #fff; }
.lb-bizcard__google { margin: var(--lb-s2) 0 var(--lb-s5); }
.lb-bizcard__google a { color: var(--lb-gold); text-decoration: none; font-weight: 600; }
.lb-bizrow { display: flex; gap: var(--lb-s3); align-items: flex-start; padding: var(--lb-s3) 0; border-top: 1px solid rgba(244,244,242,0.1); color: var(--lb-on-dark-muted); line-height: 1.5; }
.lb-bizrow svg { width: 22px; height: 22px; flex: none; color: var(--lb-gold); }
.lb-bizrow b { color: var(--lb-on-dark); }
.lb-bizrow a { color: var(--lb-on-dark); }
.lb-bizcard__btns { display: grid; gap: var(--lb-s3); margin-top: var(--lb-s5); }
.lb-bizbtn { display: flex; align-items: center; justify-content: center; min-height: 50px; border-radius: var(--lb-radius); font-family: var(--lb-display); font-weight: 700; text-transform: uppercase; letter-spacing: 0.02em; text-decoration: none; }
.lb-bizbtn--red { background: var(--lb-action); color: #fff; }
.lb-bizbtn--ghost { border: 2px solid rgba(244,244,242,0.42); color: var(--lb-on-dark); }
@media (min-width: 900px) { .lb-locgrid { grid-template-columns: 1.2fr 0.8fr; } }

/* ---- shared form styling (contact + careers markup kept verbatim; CSS retargeted to .lb) ---- */
.lb-form-grid { display: grid; grid-template-columns: 1.25fr 0.9fr; gap: var(--lb-s8); align-items: start; }
@media (max-width: 1000px) { .lb-form-grid { grid-template-columns: 1fr; } }

.contact-form-card, .careers-form { }
.contact-form-card { background: var(--lb-paper); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); padding: var(--lb-s8); }
.contact-form-card h3 { color: var(--lb-ink); font-family: var(--lb-display); font-size: 24px; margin-bottom: var(--lb-s2); }
.contact-form-sub { color: var(--lb-n700); line-height: 1.58; margin: 0 0 var(--lb-s5); }
.contact-form-sub strong { color: var(--lb-ink); }
.contact-form { display: grid; gap: var(--lb-s4); }
.contact-row, .careers-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--lb-s4); }
.contact-field, .careers-field { display: block; }
.contact-label, .careers-field > span { display: block; font-family: var(--lb-display); font-weight: 700; font-size: 13.5px; color: var(--lb-ink); margin-bottom: 6px; }
.contact-req, .careers-field em { color: var(--lb-action); font-style: normal; }
.contact-input, .careers-field input, .careers-field select, .careers-field textarea {
  width: 100%; box-sizing: border-box; border: 1px solid var(--lb-n200); border-radius: var(--lb-radius);
  padding: 12px 14px; font-size: 16px; font-family: var(--lb-body); color: var(--lb-ink); background: #fff;
  transition: border-color 0.16s ease, box-shadow 0.16s ease;
}
.contact-input:focus, .careers-field input:focus, .careers-field select:focus, .careers-field textarea:focus {
  outline: none; border-color: var(--lb-action); box-shadow: 0 0 0 3px var(--lb-action-ring);
}
.contact-textarea, .careers-field textarea { resize: vertical; min-height: 120px; line-height: 1.55; }
.contact-hp, .careers-hp { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }
.contact-alert, .careers-msg { border-radius: var(--lb-radius); padding: 12px 14px; font-size: 14.5px; line-height: 1.5; }
.contact-alert[hidden], .careers-msg[hidden] { display: none; }
.contact-alert-error, .careers-msg-err { background: #fef2f2; border: 1px solid #fca5a5; color: #991b1b; }
.contact-alert-ok, .careers-msg-ok { background: rgba(46,125,91,.1); border: 1px solid rgba(46,125,91,.45); color: #15803d; }
.contact-submit, .careers-submit { min-height: 54px; }
.contact-form-foot { font-size: 13.5px; color: var(--lb-n500); text-align: center; margin: var(--lb-s1) 0 0; }
.careers-form { display: grid; gap: var(--lb-s4); }

/* Contact aside cards. */
.contact-aside { display: grid; gap: var(--lb-s4); }
.contact-card { background: #fff; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); padding: var(--lb-s6); }
.contact-card-dark { background: var(--lb-charcoal); border-color: var(--lb-hairline); color: var(--lb-on-dark); }
.contact-card-soft { background: var(--lb-n50); }
.contact-kicker { font-family: var(--lb-display); font-weight: 800; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--lb-action); margin: 0 0 var(--lb-s2); }
.contact-phone { display: inline-block; font-family: var(--lb-display); font-weight: 800; font-size: 30px; letter-spacing: -.02em; color: #fff; margin-bottom: var(--lb-s2); }
.contact-card-dark .contact-card-note { color: var(--lb-on-dark-muted); margin: 0; line-height: 1.55; font-size: 14.5px; }
.contact-card-note { color: var(--lb-n700); margin: var(--lb-s2) 0 0; line-height: 1.55; font-size: 14.5px; }
.contact-email { font-family: var(--lb-display); font-weight: 700; font-size: 18px; color: var(--lb-ink); word-break: break-all; }
.contact-addr { color: var(--lb-ink); margin: 0; line-height: 1.5; }
.contact-maplink { display: inline-block; margin-top: var(--lb-s3); font-family: var(--lb-display); font-weight: 800; font-size: 14px; color: var(--lb-action); text-decoration: none; }

/* Careers roles. */
.careers-roles { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
.careers-role { padding: var(--lb-s6); background: var(--lb-white); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); }
.careers-role-head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--lb-s3); flex-wrap: wrap; }
.careers-role-head h3 { margin: 0; font-family: var(--lb-display); font-weight: 700; font-size: 21px; color: var(--lb-ink); }
.careers-role-level { font-family: var(--lb-display); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--lb-action); }
.careers-role p { color: var(--lb-n700); line-height: 1.6; }
.careers-want-label { font-family: var(--lb-display); font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: var(--lb-n500); margin-top: var(--lb-s4) !important; }
.careers-want { list-style: none; margin: var(--lb-s2) 0 0; padding: 0; display: grid; gap: var(--lb-s2); }
.careers-want li { display: flex; gap: var(--lb-s2); align-items: flex-start; color: var(--lb-n700); font-size: 15px; }
.careers-want svg { width: 20px; height: 20px; flex: none; color: var(--lb-success); }
.careers-apply { display: grid; gap: var(--lb-s8); grid-template-columns: 1fr; }
.careers-apply-intro h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px,3.2vw,32px); color: var(--lb-ink); margin: var(--lb-s2) 0; }
.careers-apply-intro p { color: var(--lb-n700); line-height: 1.6; }
.careers-apply-intro a { color: var(--lb-action); }
@media (min-width: 900px) { .careers-apply { grid-template-columns: 0.9fr 1.1fr; align-items: start; } .careers-roles { grid-template-columns: repeat(3, 1fr); } }

/* Reviews: rating summary, profile links, result thumbs. */
.lb-rev-summary { display: grid; gap: var(--lb-s6); grid-template-columns: 1fr; align-items: center; }
.lb-rev-score { display: grid; gap: var(--lb-s1); }
.lb-rev-score__num { font-family: var(--lb-display); font-weight: 800; font-size: 46px; line-height: 1; color: var(--lb-ink); }
.lb-rev-score__stars { color: var(--lb-gold); font-size: 24px; letter-spacing: 2px; }
.lb-rev-score__sub { color: var(--lb-n500); font-weight: 600; }
.lb-plinks { display: grid; gap: var(--lb-s4); grid-template-columns: repeat(3, 1fr); }
.lb-plink { display: flex; flex-direction: column; gap: var(--lb-s1); padding: var(--lb-s5); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); background: #fff; text-decoration: none; }
.lb-plink:hover { border-color: var(--lb-action); }
.lb-plink__name { font-family: var(--lb-display); font-weight: 800; font-size: 18px; color: var(--lb-ink); }
.lb-plink__go { font-family: var(--lb-display); font-weight: 700; font-size: 13.5px; color: var(--lb-action); }
.lb-rev-thumbs { display: grid; gap: var(--lb-s4); grid-template-columns: repeat(2, 1fr); }
.lb-rev-thumb { display: block; border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); background: #fff; text-decoration: none; }
.lb-rev-thumb img { width: 100%; height: 120px; object-fit: cover; display: block; }
.lb-rev-thumb span { display: block; padding: var(--lb-s3); font-size: 13px; font-weight: 600; color: var(--lb-n500); }
@media (min-width: 700px) { .lb-rev-summary { grid-template-columns: auto 1fr; gap: var(--lb-s10); } .lb-rev-thumbs { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 560px) { .lb-plinks { grid-template-columns: 1fr; } }

/* ================================================================ results (B5)
 * The `.lb` equivalents of the results-post structural classes. These are containers the FROZEN
 * post content renders into — design-only: the copy/images/links/schema they wrap are byte-identical
 * to main. Static (no page-scoped <style>), so the 51 stay frozen. Line-Board aesthetic: dark
 * editorial header, gold accents, red on CTAs only. Buttons reuse the theme system
 * (.lb-btn / .lb-btn--action / .lb-btn--ghost) — never redefined here. */

/* editorial hero (dark) */
.lb-res-hero { background: var(--lb-charcoal); color: var(--lb-on-dark); padding: var(--lb-s16) 0 var(--lb-s12); }
.lb-res-hero .lb-crumbs { color: var(--lb-on-dark-muted); margin-bottom: var(--lb-s5); }
.lb-res-hero .lb-crumbs a { color: var(--lb-on-dark-muted); }
.lb-res-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--lb-s2); font-family: var(--lb-display); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--lb-on-dark-muted); margin-bottom: var(--lb-s4); }
.lb-res-hero__color { color: var(--lb-gold); }
.lb-res-hero__h1 { color: #fff; max-width: 900px; font-family: var(--lb-display); font-weight: 800; letter-spacing: -0.01em; font-size: clamp(30px, 4vw, 50px); line-height: 1.04; margin: 0 0 var(--lb-s4); }
.lb-res-hero__by { color: var(--lb-on-dark-muted); font-size: 15px; margin: 0; }

/* article column + lead photo */
.lb-res-article { max-width: 820px; padding-block: var(--lb-s12); }
.lb-res-photo { margin: 0 0 var(--lb-s10); border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); box-shadow: var(--lb-elev); }
/* height:auto overrides Astro's width/height presentational-hint attributes so aspect-ratio governs */
.lb-res-photo img { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; display: block; }

/* prose (extends .lb-prose) + woven before/after float figures */
.lb-res-prose { max-width: none; padding-block: 0; }
.lb-res-ba { width: 42%; border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); box-shadow: var(--lb-elev); clear: both; margin: 0; }
.lb-res-ba img { width: 100%; height: auto; display: block; }
.lb-res-ba--right { float: right; margin: .25rem 0 1.6rem 2rem; }
.lb-res-ba--left { float: left; margin: .25rem 2rem 1.6rem 0; }
@media (max-width: 640px) { .lb-res-ba { width: 100%; float: none !important; margin: 1.6rem 0 !important; } }

/* GBP card (styles the injected .gbp-card / .gbp-details HTML) */
.lb-res-gbp { margin-top: var(--lb-s16); }
.lb-res-gbp h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px, 2.6vw, 32px); color: var(--lb-ink); letter-spacing: -0.01em; margin: 0 0 var(--lb-s5); }
.lb-res-gbp .gbp-card { display: grid; grid-template-columns: 1fr; gap: 0; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); overflow: hidden; background: #fff; box-shadow: var(--lb-elev); }
@media (min-width: 640px) { .lb-res-gbp .gbp-card { grid-template-columns: 1fr 1fr; } }
.lb-res-gbp .gbp-card iframe { width: 100%; height: 260px; border: 0; display: block; }
.lb-res-gbp .gbp-details { padding: var(--lb-s6) var(--lb-s6); font-size: 15px; line-height: 1.7; color: var(--lb-n700); }
.lb-res-gbp .gbp-details strong { display: block; font-family: var(--lb-display); font-size: 18px; color: var(--lb-ink); margin-bottom: var(--lb-s1); }
.lb-res-gbp .gbp-details a { color: var(--lb-action); font-weight: 700; }

/* command-center card (styles injected .resource-item content) */
.lb-res-cc { margin-top: var(--lb-s16); padding: var(--lb-s8) var(--lb-s6); background: var(--lb-paper); border: 1px solid var(--lb-n100); border-left: 4px solid var(--lb-gold); border-radius: var(--lb-radius); box-shadow: var(--lb-elev); }
@media (min-width: 640px) { .lb-res-cc { padding: var(--lb-s10) var(--lb-s8); } }
.lb-res-cc__header { display: flex; align-items: center; gap: var(--lb-s3); margin-bottom: var(--lb-s2); }
.lb-res-cc__icon { color: var(--lb-action); flex-shrink: 0; }
.lb-res-cc__header h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(22px, 2.4vw, 28px); color: var(--lb-ink); margin: 0; letter-spacing: -0.01em; }
.lb-res-cc__intro { color: var(--lb-n500); font-size: 16px; line-height: 1.6; margin-bottom: var(--lb-s6); }
.lb-res-cc__grid { display: grid; grid-template-columns: 1fr; gap: var(--lb-s3); margin-bottom: var(--lb-s6); }
@media (min-width: 640px) { .lb-res-cc__grid { grid-template-columns: 1fr 1fr; } }
.lb-res-cc__item { padding: var(--lb-s5); background: #fff; border-radius: var(--lb-radius); border: 1px solid var(--lb-n100); }
.lb-res-cc__item p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--lb-n700); }
.lb-res-cc__item strong { display: block; color: var(--lb-ink); font-family: var(--lb-display); font-weight: 700; margin-bottom: var(--lb-s1); font-size: 15px; }
.lb-res-cc__item a { color: var(--lb-action); font-weight: 700; }
.lb-res-cc__actions { display: flex; flex-direction: column; gap: var(--lb-s3); }
@media (min-width: 640px) { .lb-res-cc__actions { flex-direction: row; } .lb-res-cc__actions .lb-btn { flex: 1; } }

/* related results grid + section head + bottom CTA */
.lb-res-sec-head { margin-bottom: var(--lb-s6); }
.lb-res-sec-head h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px, 3.2vw, 32px); color: var(--lb-ink); margin: 0; }
.lb-res-related { display: grid; gap: var(--lb-s5); grid-template-columns: 1fr; }
@media (min-width: 640px) { .lb-res-related { grid-template-columns: repeat(3, 1fr); } }
.lb-res-related__card { display: block; overflow: hidden; text-decoration: none; background: #fff; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); transition: transform var(--lb-fast) var(--lb-ease), box-shadow var(--lb-fast) var(--lb-ease); }
.lb-res-related__card:hover { transform: translateY(-2px); box-shadow: var(--lb-elev); }
.lb-res-related__photo { overflow: hidden; }
.lb-res-related__img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; display: block; transition: transform var(--lb-slow) var(--lb-ease); }
.lb-res-related__card:hover .lb-res-related__img { transform: scale(1.03); }
.lb-res-related__body { padding: var(--lb-s5) var(--lb-s6); }
.lb-res-related__body h3 { font-family: var(--lb-display); font-weight: 800; color: var(--lb-ink); line-height: 1.12; letter-spacing: -0.01em; margin: 0 0 var(--lb-s1); }
.lb-res-related__color { color: var(--lb-action); font-family: var(--lb-display); font-size: 12px; font-weight: 800; margin: 0 0 var(--lb-s1); }
.lb-res-related__loc { color: var(--lb-n500); font-size: 15px; margin: 0; }
.lb-res-related__all { margin-top: var(--lb-s10); text-align: center; }
.lb-res-related__all-link { display: inline-flex; align-items: center; gap: var(--lb-s2); color: var(--lb-action); font-family: var(--lb-display); font-weight: 800; font-size: 15px; text-decoration: none; }
.lb-res-related__all-link:hover { color: var(--lb-action-hover); }
.lb-res-cta-actions { display: flex; flex-wrap: wrap; gap: var(--lb-s3); }

/* bottom CTA (light panel — heading/text left, wizard + call right) */
.lb-res-final-cta {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--lb-s6);
  align-items: center;
  padding: var(--lb-s8) var(--lb-s6);
  background: var(--lb-paper);
  border: 1px solid var(--lb-n100);
  border-radius: var(--lb-radius);
  box-shadow: var(--lb-elev);
}
@media (min-width: 860px) { .lb-res-final-cta { grid-template-columns: 1.4fr 1fr; padding: var(--lb-s10) var(--lb-s8); } }
.lb-res-final-cta h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(24px, 2.8vw, 34px); color: var(--lb-ink); letter-spacing: -0.01em; margin: 0 0 var(--lb-s3); }
.lb-res-final-cta p { color: var(--lb-n500); font-size: 16px; line-height: 1.6; margin: 0; }

/* results index (hub) — grid of result cards + merged shop gallery */
.lb-reslist { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--lb-s5); }
@media (max-width: 1000px) { .lb-reslist { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .lb-reslist { grid-template-columns: 1fr; } }
.lb-reslist__card { display: block; overflow: hidden; text-decoration: none; background: #fff; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); transition: transform var(--lb-fast) var(--lb-ease), box-shadow var(--lb-fast) var(--lb-ease); }
.lb-reslist__card:hover { transform: translateY(-2px); box-shadow: var(--lb-elev); }
.lb-reslist__media { overflow: hidden; }
.lb-reslist__media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; display: block; transition: transform var(--lb-slow) var(--lb-ease); }
.lb-reslist__card:hover .lb-reslist__media img { transform: scale(1.03); }
.lb-reslist__empty { aspect-ratio: 3 / 2; background: var(--lb-n50); display: flex; align-items: center; justify-content: center; }
.lb-reslist__empty span { color: var(--lb-n500); font-size: 14px; }
.lb-reslist__body { padding: var(--lb-s5) var(--lb-s6); }
.lb-reslist__title { font-family: var(--lb-display); font-weight: 800; font-size: 19px; line-height: 1.15; letter-spacing: -0.01em; color: var(--lb-ink); margin: 0 0 var(--lb-s1); }
.lb-reslist__color { font-family: var(--lb-display); font-size: 12px; font-weight: 800; letter-spacing: 0.02em; text-transform: uppercase; color: var(--lb-action); margin: 0 0 var(--lb-s1); }
.lb-reslist__loc { font-size: 15px; color: var(--lb-n500); margin: 0; }

.lb-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--lb-s5); }
@media (max-width: 1000px) { .lb-gallery { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .lb-gallery { grid-template-columns: 1fr; } }
.lb-gallery__item { margin: 0; background: #fff; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); overflow: hidden; box-shadow: var(--lb-elev); }
.lb-gallery__item img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.lb-gallery__item figcaption { padding: var(--lb-s4) var(--lb-s5); font-size: 14px; line-height: 1.5; color: var(--lb-n500); }

/* ================================================================ how-supplements-work widgets (B5 ride-along)
 * The `.lb` rebuild of the three visual anchors + the sticky CTA aside that the B4 migration dropped
 * (they had no Line-Board primitive). Every figure/claim they carry already survives verbatim in the
 * page's prose — this restores the presentation only. Static (no page-scoped <style>). */

/* two-zone layout: readable main column + sticky aside */
.lb-edu-layout { display: grid; grid-template-columns: minmax(0, 700px) minmax(288px, 332px); justify-content: space-between; gap: var(--lb-s10); align-items: start; }
.lb-edu-main { min-width: 0; }
.lb-edu-aside { position: sticky; top: 100px; align-self: start; display: grid; gap: var(--lb-s5); }
@media (max-width: 1000px) {
  .lb-edu-layout { grid-template-columns: 1fr; gap: var(--lb-s8); }
  .lb-edu-aside { position: static; top: auto; order: 2; }
}

/* sticky aside — dark CTA card */
.lb-edu-cta-card { background: linear-gradient(160deg, var(--lb-charcoal-2) 0%, var(--lb-charcoal) 100%); border-radius: var(--lb-radius); padding: var(--lb-s6); box-shadow: var(--lb-elev); }
.lb-edu-cta-card__eyebrow { font-family: var(--lb-display); font-weight: 800; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--lb-gold); margin: 0 0 var(--lb-s3); }
.lb-edu-cta-card__title { font-family: var(--lb-display); font-weight: 800; letter-spacing: -0.01em; font-size: 21px; line-height: 1.1; color: #fff; margin: 0 0 var(--lb-s2); }
.lb-edu-cta-card__sub { font-size: 14px; line-height: 1.5; color: var(--lb-on-dark-muted); margin: 0 0 var(--lb-s4); }
.lb-edu-cta-card__btn { width: 100%; }
.lb-edu-cta-card__phone { display: flex; align-items: center; justify-content: center; min-height: 48px; margin-top: var(--lb-s3); color: #fff; font-weight: 700; font-size: 15px; text-decoration: none; border: 1px solid rgba(244, 244, 242, 0.22); border-radius: var(--lb-radius-sm); transition: background var(--lb-fast) var(--lb-ease); }
.lb-edu-cta-card__phone:hover { background: rgba(244, 244, 242, 0.08); }

/* sticky aside — facts card + trust line */
.lb-edu-facts { background: var(--lb-paper); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); padding: var(--lb-s5) var(--lb-s5); box-shadow: var(--lb-elev); }
.lb-edu-facts__head { font-family: var(--lb-display); font-weight: 700; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--lb-n500); margin: 0 0 var(--lb-s3); }
.lb-edu-facts ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.lb-edu-facts li { font-size: 14.5px; color: var(--lb-n700); line-height: 1.4; }
.lb-edu-facts strong { color: var(--lb-ink); font-weight: 800; }
.lb-edu-aside-trust { font-size: 13.5px; line-height: 1.5; color: var(--lb-n500); margin: 0; padding: 0 2px; }

/* visual anchor 1 — first-estimate vs documented comparison (bar chart) */
.lb-edu-compare { margin: var(--lb-s6) 0; padding: var(--lb-s5) var(--lb-s6); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); background: #fff; box-shadow: var(--lb-elev); }
.lb-edu-compare__cap { font-family: var(--lb-display); font-weight: 700; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--lb-n500); margin: 0 0 var(--lb-s4); }
.lb-edu-compare__row { display: grid; gap: 6px; margin-bottom: var(--lb-s3); max-width: none; }
.lb-edu-compare__label { font-family: var(--lb-display); font-size: 13.5px; font-weight: 700; color: var(--lb-ink); }
.lb-edu-compare__track { height: 30px; border-radius: var(--lb-radius-sm); background: var(--lb-n50); overflow: hidden; }
.lb-edu-compare__fill { height: 100%; display: flex; align-items: center; padding: 0 12px; border-radius: var(--lb-radius-sm); font-size: 12.5px; font-weight: 700; color: #fff; white-space: nowrap; }
.lb-edu-compare__fill.is-low { background: var(--lb-n400); }
.lb-edu-compare__fill.is-full { background: var(--lb-action); }
.lb-edu-compare__note { margin: 6px 0 0; font-size: 15px; color: var(--lb-n700); }
.lb-edu-compare__note strong { color: var(--lb-action); }

/* visual anchor 2 — the compliance boundary (do / keep columns) */
.lb-edu-boundary { display: grid; grid-template-columns: 1fr 1fr; gap: var(--lb-s4); margin: var(--lb-s6) 0; }
.lb-edu-boundary__col { padding: var(--lb-s5); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); background: #fff; box-shadow: var(--lb-elev); }
.lb-edu-boundary__col.is-do { border-top: 4px solid var(--lb-action); }
.lb-edu-boundary__col.is-keep { border-top: 4px solid var(--lb-success); }
.lb-edu-boundary__col h3 { margin: 0 0 var(--lb-s3); font-size: 15px; color: var(--lb-ink); }
.lb-edu-boundary__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.lb-edu-boundary__col li { font-size: 14.5px; line-height: 1.45; color: var(--lb-n700); padding-left: 20px; position: relative; }
.lb-edu-boundary__col li::before { content: ""; position: absolute; left: 2px; top: 0.55em; width: 7px; height: 7px; border-radius: 50%; }
.lb-edu-boundary__col.is-do li::before { background: var(--lb-action); }
.lb-edu-boundary__col.is-keep li::before { background: var(--lb-success); }

/* visual anchor 3 — stat callout */
.lb-edu-stat { display: grid; grid-template-columns: 1fr 1fr; gap: var(--lb-s4); margin: var(--lb-s6) 0; }
.lb-edu-stat__item { padding: var(--lb-s5); border: 1px solid var(--lb-n100); border-left: 5px solid var(--lb-action); border-radius: var(--lb-radius); background: var(--lb-paper); box-shadow: var(--lb-elev); }
.lb-edu-stat__item strong { display: block; font-family: var(--lb-display); font-weight: 800; font-size: 32px; line-height: 1; color: var(--lb-ink); letter-spacing: -0.02em; }
.lb-edu-stat__item span { display: block; margin-top: 6px; font-size: 13.5px; color: var(--lb-n500); line-height: 1.4; }

/* main-column media — full column width, stacked */
.lb-edu-main-media { margin: var(--lb-s6) 0; border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); box-shadow: var(--lb-elev); }
.lb-edu-main-media img { width: 100%; height: auto; display: block; aspect-ratio: 4 / 3; object-fit: cover; }
.lb-edu-main-media figcaption { padding: 10px 14px; font-size: 13.5px; color: var(--lb-n500); background: #fff; font-style: italic; }

@media (max-width: 560px) {
  .lb-edu-boundary, .lb-edu-stat { grid-template-columns: 1fr; }
}

/* ================================================================ areas-we-serve + claims (B6 special)
 * The `.lb` chrome for the final two page-types. The /claims/ WIZARD stays byte-frozen and keeps its
 * own styling from claim-chrome.css (loaded on that page); these are the MARKETING scaffold around it
 * plus the /areas-we-serve/ directory. Static (no page-scoped <style>). */

/* dark business card — shared by /areas-we-serve/ + /claims/ */
.lb-bizcard { background: var(--lb-charcoal); border-radius: var(--lb-radius); padding: var(--lb-s8) var(--lb-s6); color: var(--lb-on-dark); display: flex; flex-direction: column; }
.lb-bizcard__nm { font-family: var(--lb-display); font-weight: 800; font-size: 24px; letter-spacing: -0.01em; color: #fff; }
.lb-bizcard__google { margin: var(--lb-s2) 0 var(--lb-s5); }
.lb-bizcard__google a { color: var(--lb-on-dark-muted); text-decoration: none; font-size: 14px; font-weight: 600; }
.lb-bizcard__google a:hover { color: #fff; }
.lb-bizcard__row { display: flex; gap: 13px; padding: 13px 0; border-top: 1px solid rgba(244,244,242,0.12); font-size: 15.5px; color: var(--lb-on-dark-muted); }
.lb-bizcard__row svg { width: 19px; height: 19px; stroke: var(--lb-action); fill: none; flex-shrink: 0; margin-top: 2px; }
.lb-bizcard__row b { color: #fff; font-weight: 600; }
.lb-bizcard__row a { color: #fff; }
.lb-bizcard__btns { margin-top: auto; padding-top: var(--lb-s6); display: flex; flex-direction: column; gap: var(--lb-s2); }
.lb-bizcard__btn { display: block; text-align: center; padding: 14px; border-radius: var(--lb-radius-sm); font-family: var(--lb-display); font-weight: 700; font-size: 15.5px; text-decoration: none; transition: background var(--lb-fast) var(--lb-ease), color var(--lb-fast) var(--lb-ease); }
.lb-bizcard__btn--red { background: var(--lb-action); color: #fff; }
.lb-bizcard__btn--red:hover { background: #fff; color: var(--lb-action); }
.lb-bizcard__btn--ghost { border: 1px solid rgba(244,244,242,0.28); color: #fff; }
.lb-bizcard__btn--ghost:hover { background: rgba(244,244,242,0.08); }

/* rating + social proof row — shared */
.lb-proof { display: flex; align-items: center; justify-content: space-between; gap: var(--lb-s5); flex-wrap: wrap; padding: var(--lb-s5) var(--lb-s6); border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); background: #fff; box-shadow: var(--lb-elev); }
.lb-rating { display: flex; align-items: center; gap: 11px; flex-wrap: wrap; font-family: var(--lb-display); }
.lb-rating__stars { color: var(--lb-gold); font-size: 21px; letter-spacing: 1.5px; }
.lb-rating strong { font-size: 21px; color: var(--lb-ink); }
.lb-rating__text { color: var(--lb-n500); font-weight: 600; font-size: 15px; }
.lb-social { display: flex; gap: var(--lb-s2); flex-wrap: wrap; }
.lb-social a { display: inline-flex; align-items: center; padding: 9px 15px; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius-sm); font-family: var(--lb-display); font-weight: 700; font-size: 14px; color: var(--lb-ink); text-decoration: none; transition: border-color var(--lb-fast) var(--lb-ease), color var(--lb-fast) var(--lb-ease), transform var(--lb-fast) var(--lb-ease); }
.lb-social a:hover { border-color: var(--lb-action); color: var(--lb-action); transform: translateY(-2px); }

/* areas-we-serve: metro map + city directory grid */
.lb-areas-map { margin: var(--lb-s2) 0 var(--lb-s10); border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); box-shadow: var(--lb-elev); background: var(--lb-n50); }
.lb-areas-map iframe { width: 100%; height: 440px; border: 0; display: block; }
.lb-areas-cols { display: grid; grid-template-columns: 1fr 1fr; gap: var(--lb-s8); }
@media (max-width: 800px) { .lb-areas-cols { grid-template-columns: 1fr; } }
.lb-areas-statehead { font-family: var(--lb-display); font-weight: 800; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--lb-n500); margin: 0 0 var(--lb-s4); }
.lb-citygrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: var(--lb-s2); }
.lb-citycard { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: var(--lb-s5) var(--lb-s6); text-decoration: none; background: #fff; border: 1px solid var(--lb-n100); border-radius: var(--lb-radius); transition: transform var(--lb-fast) var(--lb-ease), box-shadow var(--lb-fast) var(--lb-ease), border-color var(--lb-fast) var(--lb-ease); }
.lb-citycard:hover { transform: translateY(-2px); border-color: var(--lb-action); box-shadow: var(--lb-elev); }
.lb-citycard__name { font-family: var(--lb-display); font-weight: 700; font-size: 15px; color: var(--lb-ink); letter-spacing: -0.01em; }
.lb-citycard__go { color: var(--lb-action); font-family: var(--lb-display); font-weight: 800; font-size: 15px; }
.lb-outside-note { margin-top: var(--lb-s8); padding: var(--lb-s6); border: 1px solid var(--lb-n100); border-left: 4px solid var(--lb-gold); border-radius: var(--lb-radius); background: var(--lb-paper); }
.lb-outside-note h3 { margin: 0 0 var(--lb-s2); font-family: var(--lb-display); color: var(--lb-ink); }
.lb-outside-note p { margin: 0; color: var(--lb-n700); }

/* areas-we-serve: "one shop" location section (map + bizcard) */
.lb-locgrid { display: grid; grid-template-columns: 1fr; gap: var(--lb-s6); margin-top: var(--lb-s6); }
@media (min-width: 800px) { .lb-locgrid { grid-template-columns: 1.15fr 0.85fr; align-items: stretch; } }
.lb-locmap { border-radius: var(--lb-radius); overflow: hidden; border: 1px solid var(--lb-n100); box-shadow: var(--lb-elev); min-height: 340px; }
.lb-locmap iframe { width: 100%; height: 100%; min-height: 340px; border: 0; display: block; }

@media (max-width: 700px) {
  .lb-areas-map iframe { height: 340px; }
  .lb-proof { flex-direction: column; align-items: flex-start; }
}

/* claims: marketing scaffold around the frozen wizard */
.lb-claims-stage { padding-block: var(--lb-s12) var(--lb-s8); }
.lb-claims-stage__inner { display: grid; grid-template-columns: 1fr; gap: var(--lb-s8); }
@media (min-width: 900px) { .lb-claims-stage__inner { grid-template-columns: 0.72fr 1.28fr; gap: var(--lb-s10); align-items: start; } .lb-claims-pitch { position: sticky; top: 96px; } }
.lb-claims-pitch__h1 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.05; letter-spacing: -0.01em; color: var(--lb-ink); margin: 0 0 var(--lb-s4); }
.lb-claims-pitch__lead { font-size: 17px; line-height: 1.6; color: var(--lb-n500); margin: 0 0 var(--lb-s5); }
.lb-claims-pitch__list { list-style: none; margin: 0 0 var(--lb-s5); padding: 0; display: grid; gap: var(--lb-s2); }
.lb-claims-pitch__list li { position: relative; padding-left: 28px; font-size: 15px; line-height: 1.45; color: var(--lb-ink); font-weight: 600; }
.lb-claims-pitch__list li::before { content: "\2713"; position: absolute; left: 0; top: 0; color: var(--lb-action); font-weight: 800; }
.lb-claims-pitch__phone { font-size: 15px; color: var(--lb-n500); margin: 0 0 var(--lb-s5); }
.lb-claims-pitch__phone a { color: var(--lb-action); font-weight: 700; }
.lb-claims-pitch__creds { list-style: none; margin: 0; padding: var(--lb-s5) 0 0; border-top: 1px solid var(--lb-n100); display: flex; flex-wrap: wrap; gap: var(--lb-s2) var(--lb-s5); font-family: var(--lb-display); font-size: 14px; font-weight: 700; color: var(--lb-n700); }
.lb-claims-pitch__star { color: var(--lb-gold); }
.lb-claims-authority__head { max-width: 760px; margin-bottom: var(--lb-s8); }
.lb-claims-authority__eyebrow { font-family: var(--lb-display); font-size: 12px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--lb-action); margin: 0 0 var(--lb-s3); }
.lb-claims-authority__h2 { font-family: var(--lb-display); font-weight: 800; font-size: clamp(26px, 3.2vw, 40px); color: var(--lb-ink); line-height: 1.04; letter-spacing: -0.01em; margin: 0 0 var(--lb-s3); }
.lb-claims-authority__sub { font-size: 17px; color: var(--lb-n500); line-height: 1.6; margin: 0; }
.lb-claims-authority__grid { display: grid; grid-template-columns: 1fr; gap: var(--lb-s6); align-items: stretch; }
@media (min-width: 900px) { .lb-claims-authority__grid { grid-template-columns: 0.85fr 1.15fr; gap: var(--lb-s8); } }
.lb-claims-authority__proof { display: flex; flex-direction: column; gap: var(--lb-s5); }
.lb-claims-results__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--lb-s4); margin-bottom: var(--lb-s4); }
.lb-claims-results__head strong { font-family: var(--lb-display); font-size: 16px; color: var(--lb-ink); }
.lb-claims-results__head a { font-family: var(--lb-display); font-weight: 700; font-size: 14px; color: var(--lb-action); text-decoration: none; white-space: nowrap; }
.lb-claims-results__head a:hover { text-decoration: underline; }
.lb-claims-results__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--lb-s3); }
@media (min-width: 560px) { .lb-claims-results__grid { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 900px) { .lb-claims-results__grid { grid-template-columns: repeat(5, 1fr); } }
.lb-claims-result { display: block; border-radius: var(--lb-radius-sm); overflow: hidden; border: 1px solid var(--lb-n100); background: #fff; text-decoration: none; box-shadow: var(--lb-elev); transition: transform var(--lb-fast) var(--lb-ease), border-color var(--lb-fast) var(--lb-ease); }
.lb-claims-result:hover { transform: translateY(-3px); border-color: var(--lb-action); }
.lb-claims-result__img { display: block; width: 100%; height: 92px; object-fit: cover; }
.lb-claims-result__label { display: block; padding: var(--lb-s2) var(--lb-s3); font-size: 11.5px; font-weight: 600; color: var(--lb-n500); line-height: 1.3; }
.lb-claims-pitch, .lb-claims-form { min-width: 0; }
