/* Homepage system, shipped 2026-09-17. Shared tokens/pills/buttons first, then the
   homepage rules. Everything is class-scoped; the Tailwind bundle still styles the
   site nav and footer around it. */
:root{
  --preview-orange:#ff6b00;--preview-burnt:#a04100;
  --preview-ink:#1b1512;--preview-ink-2:#5a4f48;--preview-ink-3:#8a7d74;
  --preview-paper:#fff8f6;--preview-paper-2:#f7ece7;--preview-peach:#ffe9db;
  --preview-rule:#e3d3cb;--preview-rule-2:#f0e4dd;
  --preview-teal:#006879;--preview-teal-soft:#e4f2f3;
  --preview-r:14px;--preview-r-lg:20px;--preview-pill:999px;
  --preview-shadow:0 18px 50px -20px rgba(27,21,18,.28),0 2px 6px rgba(27,21,18,.05);
}

/* --- pills (shared) ------------------------------------------------------- */
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 14px;border-radius:var(--preview-pill);font-family:'Lexend',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.09em!important;text-transform:uppercase;white-space:nowrap;background:var(--preview-paper-2);color:var(--preview-burnt)}
.pill.teal{background:var(--preview-teal-soft);color:var(--preview-teal)}
.pill svg{width:14px;height:14px}

/* --- buttons -------------------------------------------------------------- */
.preview-button{
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  min-height:56px;padding:15px 26px;border:2px solid var(--preview-orange);border-radius:var(--preview-r);
  background:var(--preview-orange);color:#1a0f07;
  font-family:'Lexend',sans-serif;font-size:15.5px;font-weight:700;line-height:1.35;
  text-align:center;text-decoration:none;box-shadow:0 10px 24px -10px rgba(255,107,0,.55);
  transition:background .16s,border-color .16s,transform .16s,box-shadow .16s;
}
.preview-button:hover{background:#f06200;border-color:#f06200;color:#1a0f07;transform:translateY(-1px);box-shadow:0 14px 28px -10px rgba(255,107,0,.6)}
.preview-button svg{width:18px;height:18px}
.preview-button.secondary{background:#fff;border-color:var(--preview-rule);color:var(--preview-ink);box-shadow:none}
.preview-button.secondary:hover{border-color:var(--preview-ink);background:#fff;transform:none;box-shadow:none}

.site-container{max-width:1180px;margin:auto;padding:0 24px}
.section-eyebrow{font-size:12px;color:var(--preview-burnt);font-weight:700;text-transform:uppercase;letter-spacing:.14em!important;margin-bottom:12px}

/* ==========================================================================
   Drive Auto Body — homepage. Production stylesheet for the homepage, shipped 2026-09-17 from the approved preview.

   Same language as the live site and the claim-help page: warm paper, bold
   uppercase Lexend display with the key phrase in orange, pills, 14/20px
   radius, photographs shown as photographs. Light throughout.
   ========================================================================== */

:root{
  --d-ink:#1b1512;--d-ink-2:#5a4f48;--d-ink-3:#8a7d74;
  --d-paper:#fff8f6;--d-paper-2:#f7ece7;--d-peach:#ffe9db;
  --d-rule:#e3d3cb;--d-rule-2:#f0e4dd;
  --d-orange:#ff6b00;--d-burnt:#a04100;--d-teal:#006879;--d-teal-soft:#e4f2f3;
  --d-r:14px;--d-r-lg:20px;--d-pill:999px;
  --d-ease:cubic-bezier(.22,.61,.36,1);
  --d-shadow:0 18px 50px -20px rgba(27,21,18,.28),0 2px 6px rgba(27,21,18,.05);
}
body.home-2026{background:var(--d-paper)}
body.home-2026 .accent{color:#e85d00}

/* --- hero ---------------------------------------------------------------- */
.home-hero{position:relative;overflow:hidden;background:var(--d-paper)}
.home-hero::before{content:"";position:absolute;right:-12%;top:-30%;width:62%;height:160%;pointer-events:none;background:radial-gradient(closest-side,rgba(255,138,51,.22),rgba(255,138,51,.08) 55%,transparent 75%)}
.home-hero-inner{position:relative;display:grid;grid-template-columns:1.18fr .82fr;gap:52px;align-items:center;padding-top:60px;padding-bottom:58px}
.home-hero-copy{max-width:680px}
.home-eyebrow{font-family:'Lexend',sans-serif;font-size:clamp(17px,1.6vw,21px);font-weight:600;letter-spacing:.02em;color:var(--d-ink-2);margin:22px 0 0}
.home-hero h1{
  font-family:'Lexend',sans-serif;font-size:clamp(34px,4.5vw,56px);font-weight:800;
  line-height:1.02;letter-spacing:-.02em;text-transform:uppercase;color:var(--d-ink);margin:8px 0 0;
}
.home-hero h1 .home-kicker{display:block;font-size:12.5px;font-weight:800;letter-spacing:.12em;color:var(--d-burnt);margin-bottom:12px;text-transform:uppercase;line-height:1.5}
.home-hero-lead{font-size:18px;line-height:1.6;color:var(--d-ink-2);max-width:52ch;margin:22px 0 0}
.home-hero .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px;padding:0}
.home-hero-trust{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:24px;font-size:14px;color:var(--d-ink-2)}
.home-hero-trust .review-stars{color:var(--d-orange);font-size:16px;letter-spacing:.06em}
.home-hero-trust strong{color:var(--d-ink);font-weight:700}
.home-hero-trust a{color:var(--d-ink);font-weight:600}
.home-hero-trust .sep{width:4px;height:4px;border-radius:50%;background:var(--d-rule)}

.home-hero-photo{position:relative;margin:0}
.home-hero-photo img{width:100%;aspect-ratio:4/4.3;object-fit:cover;object-position:60% 55%;border-radius:var(--d-r-lg);border:1px solid var(--d-rule);box-shadow:var(--d-shadow);display:block}
.home-hero-badge{
  position:absolute;left:-18px;bottom:26px;background:#fff;border:1px solid var(--d-rule);border-radius:var(--d-r);
  padding:12px 16px;box-shadow:var(--d-shadow);max-width:280px;
}
.home-hero-badge .badge-label{display:block;font-family:'Lexend',sans-serif;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--d-burnt)}
.home-hero-badge strong{display:block;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700;margin-top:3px;color:var(--d-ink)}

.home-hero-copy>*,.home-hero-photo{animation:d-rise 520ms var(--d-ease) both}
.home-hero-copy>*:nth-child(2){animation-delay:60ms}
.home-hero-copy>*:nth-child(3){animation-delay:120ms}
.home-hero-copy>*:nth-child(4){animation-delay:180ms}
.home-hero-copy>*:nth-child(5){animation-delay:240ms}
.home-hero-copy>*:nth-child(6){animation-delay:300ms}
.home-hero-photo{animation-delay:160ms}
@keyframes d-rise{from{transform:translateY(12px)}to{transform:none}}

/* --- shared section rhythm ---------------------------------------------- */
body.home-2026 .home-section{padding:clamp(56px,7vw,88px) 0}
.home-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:38px}
body.home-2026 .section-eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--d-burnt);margin:0 0 14px;display:flex;align-items:center;gap:10px}
body.home-2026 .section-eyebrow::before{content:"";width:28px;height:3px;border-radius:var(--d-pill);background:var(--d-orange);flex:none}
body.home-2026 .home-section h2{
  font-family:'Lexend',sans-serif;font-size:clamp(28px,3.4vw,42px);font-weight:800;line-height:1.06;
  letter-spacing:-.015em;text-transform:uppercase;margin:0;position:relative;padding-bottom:18px;color:var(--d-ink);
}
body.home-2026 .home-section h2::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:5px;border-radius:var(--d-pill);background:var(--d-orange)}
.home-text-link{display:inline-flex;align-items:center;gap:7px;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700;text-decoration:none;color:var(--d-burnt);border-bottom:2px solid var(--d-rule);padding-bottom:2px}
.home-text-link svg{width:16px;height:16px}
.home-text-link:hover{border-color:var(--d-orange)}

/* --- router paths -------------------------------------------------------- */
body.home-2026 .intent-paths{background:#fff}
body.home-2026 .path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0;counter-reset:path}
body.home-2026 .path-grid article{
  position:relative;border:1px solid var(--d-rule-2);border-radius:var(--d-r-lg);background:var(--d-paper);
  padding:28px 26px 26px;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;
  transition:transform 160ms var(--d-ease),box-shadow 160ms var(--d-ease),border-color 160ms var(--d-ease);
}
body.home-2026 .path-grid article:hover{transform:translateY(-2px);box-shadow:var(--d-shadow);border-color:var(--d-rule)}
body.home-2026 .path-grid article::before{
  counter-increment:path;content:counter(path,decimal-leading-zero);
  position:absolute;right:18px;top:8px;font-family:'Lexend',sans-serif;font-size:64px;font-weight:800;line-height:1;color:#ffd6bd;letter-spacing:-.04em;
}
body.home-2026 .path-grid h3{position:relative;font-family:'Lexend',sans-serif;font-size:21px;font-weight:700;line-height:1.3;letter-spacing:-.01em;margin:0 0 10px}
body.home-2026 .path-grid p{position:relative;font-size:15px;line-height:1.7;color:var(--d-ink-2);margin:0 0 20px}
body.home-2026 .path-grid a{
  position:relative;display:inline-flex;align-items:center;gap:8px;margin-top:auto;
  font-family:'Lexend',sans-serif;color:var(--d-burnt);font-size:14px;font-weight:700;text-decoration:none;
  border-bottom:2px solid var(--d-rule);padding:0 0 3px;min-height:0;
}
body.home-2026 .path-grid a:hover{border-color:var(--d-orange)}
body.home-2026 .path-grid a svg{width:16px;height:16px}

/* --- proof --------------------------------------------------------------- */
body.home-2026 .early-proof{background:var(--d-paper)}
.repair-showcase{display:grid;grid-template-columns:1.42fr 1fr;gap:26px;align-items:start}
.repair-comparison{position:relative;aspect-ratio:1/1;border-radius:var(--d-r-lg);overflow:hidden;background:var(--d-paper-2);border:1px solid var(--d-rule);box-shadow:var(--d-shadow)}
.repair-comparison>img{width:100%;height:100%;object-fit:cover;display:block}
.repair-before{position:absolute;inset:0;clip-path:inset(0 50% 0 0)}
.repair-before>img{width:100%;height:100%;object-fit:cover;display:block}
.repair-label{position:absolute;top:16px;border-radius:var(--d-pill);background:#fff;color:var(--d-ink);padding:6px 13px;font-family:'Lexend',sans-serif;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;pointer-events:none;box-shadow:0 2px 8px rgba(27,21,18,.15)}
.label-before{left:16px}
.label-after{right:16px;background:var(--d-orange);color:#1a0f07}
.repair-handle{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;pointer-events:none;box-shadow:0 0 0 1px rgba(27,21,18,.08)}
.repair-handle>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(27,21,18,.25);color:var(--d-orange)}
.repair-handle svg{width:22px;height:22px}
.repair-composite{width:100%;border-radius:var(--d-r-lg);border:1px solid var(--d-rule);box-shadow:var(--d-shadow);display:block}
.repair-panel{margin:0}
.repair-panel figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700}
.repair-panel figcaption span{font-family:'Inter',sans-serif;font-weight:400;font-size:13px;color:var(--d-ink-2)}
.repair-selector{display:flex;flex-direction:column;gap:10px}
.repair-selector button{
  display:flex;align-items:center;gap:14px;width:100%;text-align:left;
  background:#fff;border:1.5px solid var(--d-rule-2);border-radius:var(--d-r);padding:10px;
  color:var(--d-ink-2);cursor:pointer;transition:border-color 140ms,box-shadow 140ms,transform 140ms;
}
.repair-selector button:hover{border-color:var(--d-rule);transform:translateY(-1px)}
.repair-selector button[aria-selected="true"]{border-color:var(--d-orange);color:var(--d-ink);box-shadow:0 0 0 3px rgba(255,107,0,.14)}
.repair-selector button img{width:64px;height:64px;object-fit:cover;border-radius:10px;flex:none}
.repair-selector button>span{display:flex;flex-direction:column;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700;line-height:1.35}
.repair-selector button small{font-family:'Inter',sans-serif;font-size:12.5px;font-weight:400;color:var(--d-ink-2);margin-top:2px}

/* --- reviews ------------------------------------------------------------- */
body.home-2026 .early-reviews{background:#fff}
.home-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.home-review-grid figure{display:flex;flex-direction:column;margin:0;background:var(--d-paper);border:1px solid var(--d-rule-2);border-radius:var(--d-r-lg);padding:26px 26px 24px}
.review-topic{display:inline-flex;align-self:flex-start;font-family:'Lexend',sans-serif;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--d-burnt);background:var(--d-paper-2);border-radius:var(--d-pill);padding:5px 11px;margin-bottom:12px}
.home-review-grid .review-stars{color:var(--d-orange);font-size:17px;letter-spacing:.08em}
.home-review-grid blockquote{font-family:'Lexend',sans-serif;font-size:19px;line-height:1.45;font-weight:600;letter-spacing:-.01em;margin:14px 0 22px;color:var(--d-ink)}
.home-review-grid figcaption{margin-top:auto}
.home-review-grid figcaption strong{display:block;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700}
.home-review-grid figcaption span{font-size:12px;color:var(--d-ink-2)}

/* --- about --------------------------------------------------------------- */
body.home-2026 .home-about{background:var(--d-paper)}
.home-about-layout{display:grid;grid-template-columns:1.02fr 1fr;gap:58px;align-items:center}
.home-about-layout figure{margin:0}
.home-about-layout figure img{width:100%;border-radius:var(--d-r-lg);border:1px solid var(--d-rule);box-shadow:var(--d-shadow);aspect-ratio:1.45;object-fit:cover;display:block}
.home-about-layout figcaption{font-size:13px;color:var(--d-ink-2);margin-top:12px}
.home-benefits{margin:24px 0}
.home-benefits>div{display:grid;grid-template-columns:24px 1fr;gap:4px 14px;padding:14px 0;border-bottom:1px solid var(--d-rule)}
.home-benefits>div:first-child{border-top:1px solid var(--d-rule)}
.home-benefits>div::before{content:"\2713";grid-row:1/3;font-weight:800;color:var(--d-teal);width:24px;height:24px;border-radius:50%;background:var(--d-teal-soft);display:grid;place-content:center;font-size:12px;margin-top:1px}
.home-benefits h3{font-family:'Lexend',sans-serif;font-size:16px;font-weight:700;margin:0;letter-spacing:-.005em}
.home-benefits p{font-size:14.5px;line-height:1.6;color:var(--d-ink-2);margin:0;grid-column:2}

/* --- services ------------------------------------------------------------ */
body.home-2026 .home-services{background:#fff}
.home-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.home-services-grid a{
  position:relative;display:block;text-decoration:none;color:var(--d-ink);
  background:var(--d-paper);border:1px solid var(--d-rule-2);border-radius:var(--d-r-lg);padding:26px 56px 26px 24px;
  transition:transform 160ms var(--d-ease),box-shadow 160ms var(--d-ease),border-color 160ms var(--d-ease);
}
.home-services-grid a:hover{transform:translateY(-2px);box-shadow:var(--d-shadow);border-color:var(--d-rule)}
.home-services-grid h3{font-family:'Lexend',sans-serif;font-size:18px;font-weight:700;margin:0 0 8px;letter-spacing:-.01em}
.home-services-grid p{font-size:14.5px;line-height:1.65;color:var(--d-ink-2);margin:0}
.service-go{position:absolute;top:22px;right:20px;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--d-rule);display:grid;place-content:center;color:var(--d-orange);transition:background 140ms,color 140ms}
.service-go svg{width:16px;height:16px}
.home-services-grid a:hover .service-go{background:var(--d-orange);color:#fff;border-color:var(--d-orange)}

/* --- next step ----------------------------------------------------------- */
body.home-2026 .home-next-step{background:linear-gradient(180deg,#fff 0%,var(--d-peach) 100%)}
body.home-2026 .home-next-step .site-container{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
body.home-2026 .home-next-step p{font-size:17px;line-height:1.65;color:var(--d-ink-2);margin:16px 0 0;max-width:50ch}
body.home-2026 .home-next-step .action-row{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 18px}
.home-call{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--d-ink);background:#fff;border:1px solid var(--d-rule);border-radius:var(--d-r-lg);padding:22px 24px;box-shadow:var(--d-shadow)}
.home-call svg{width:30px;height:30px;color:var(--d-orange);flex:none}
.home-call small{display:block;font-size:12px;color:var(--d-ink-2);letter-spacing:.05em}
.home-call strong{font-family:'Lexend',sans-serif;font-size:27px;font-weight:800;letter-spacing:-.015em;display:block;line-height:1.2;margin:2px 0}

/* --- FAQ ----------------------------------------------------------------- */
body.home-2026 .home-faq{background:#fff}
.home-faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:64px;align-items:start}
.home-faq-list details{border-bottom:1px solid var(--d-rule)}
.home-faq-list details:first-child{border-top:1px solid var(--d-rule)}
.home-faq-list summary{cursor:pointer;list-style:none;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:21px 0;font-family:'Lexend',sans-serif;font-size:16.5px;font-weight:600;line-height:1.5}
.home-faq-list summary::-webkit-details-marker{display:none}
.home-faq-list summary svg{color:var(--d-orange);transition:transform 160ms;width:22px;height:22px;flex:none;background:var(--d-paper-2);border-radius:50%;padding:3px}
.home-faq-list details[open] summary{color:var(--d-burnt)}
.home-faq-list details[open] summary svg{transform:rotate(45deg)}
.home-faq-list details>p{padding:0 44px 22px 0;font-size:15.5px;line-height:1.75;color:var(--d-ink-2);margin:0}
.home-faq-list a{text-decoration:underline;text-underline-offset:3px;font-weight:600;color:var(--d-burnt)}

.home-mobile-actions{display:none}

@media(max-width:1080px){
  .home-hero-inner{gap:36px}
  .repair-showcase{grid-template-columns:1fr;gap:24px}
  .repair-selector{flex-direction:row;flex-wrap:wrap}
  .repair-selector button{flex:1 1 200px}
  .home-about-layout{grid-template-columns:1fr;gap:30px}
  .home-faq-layout{grid-template-columns:1fr;gap:16px}
  body.home-2026 .home-next-step .site-container{grid-template-columns:1fr;gap:30px}
  .home-services-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
  .home-hero-inner{grid-template-columns:1fr;gap:34px;padding-top:44px;padding-bottom:48px}
  .home-hero-photo{max-width:560px}
  .home-hero-badge{left:14px;bottom:14px}
}

@media(max-width:820px){
  body.home-2026 .path-grid{grid-template-columns:1fr;gap:12px}
  .home-review-grid{grid-template-columns:1fr;gap:14px}
}

@media(max-width:700px){
  .home-hero::before{right:-40%;top:-10%;width:120%;height:70%}
  .home-hero-inner{padding-top:32px;padding-bottom:40px;gap:26px}
  .home-hero h1{margin-top:18px}
  .home-hero-lead{font-size:16px;margin-top:16px}
  .home-hero .hero-actions{flex-direction:column;margin-top:24px}
  .home-hero .hero-actions .preview-button{width:100%}
  .home-hero-trust{font-size:13px;gap:6px 12px;margin-top:20px}
  .home-hero-trust .sep{display:none}
  .home-hero-badge{max-width:240px;padding:10px 12px}

  body.home-2026 .home-section{padding:48px 0}
  .home-section-heading{display:block;margin-bottom:26px}
  .home-section-heading .home-text-link{margin-top:14px}
  body.home-2026 .home-section h2{padding-bottom:14px}
  body.home-2026 .home-section h2::after{width:56px;height:4px}

  body.home-2026 .path-grid article{padding:22px 20px;border-radius:var(--d-r)}
  body.home-2026 .path-grid article::before{font-size:48px}
  .repair-selector button img{width:52px;height:52px}
  .home-review-grid figure{padding:22px}
  .home-review-grid blockquote{font-size:17.5px;margin:12px 0 18px}
  .home-services-grid{grid-template-columns:1fr;gap:12px}
  .home-services-grid a{padding:20px 56px 20px 20px;border-radius:var(--d-r)}
  .service-go{top:18px}
  body.home-2026 .home-next-step .action-row{flex-direction:column}
  .home-call{padding:18px 20px}
  .home-call strong{font-size:23px}
  .home-faq-list summary{font-size:15.5px;padding:19px 0}
  .home-faq-list details>p{font-size:14.5px;padding-right:0}

  .home-mobile-actions{
    display:flex;align-items:center;gap:10px;position:fixed;z-index:60;
    bottom:0;left:0;right:0;background:#fff;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));
    border-top:1px solid var(--d-rule);box-shadow:0 -8px 30px rgba(27,21,18,.08);
  }
  .home-mobile-actions>a:first-child{
    display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;flex:0 0 100px;
    color:var(--d-ink);text-decoration:none;font-family:'Lexend',sans-serif;font-size:14px;font-weight:700;
    border:1.5px solid var(--d-rule);border-radius:12px;background:#fff;
  }
  .home-mobile-actions>a:first-child svg{width:17px;height:17px;color:var(--d-orange)}
  .home-mobile-actions .preview-button{flex:1;min-height:50px;padding:12px 14px;font-size:14.5px;border-radius:12px}
  body.home-2026 footer{padding-bottom:96px}
}

@media(max-width:360px){
  .home-mobile-actions{gap:8px;padding-inline:12px}
  .home-mobile-actions>a:first-child{flex-basis:88px}
}

/* Room under the site's fixed nav + announcement banner (both Tailwind, fixed). */
body.home-2026 .home-hero-inner{padding-top:168px}
@media(max-width:700px){body.home-2026 .home-hero-inner{padding-top:150px}}
