/* V99 – cleaner homepage hierarchy, integrated model search and stronger trust */
:root{
  --v99-red:#ed1b2f;
  --v99-red-dark:#c81025;
  --v99-ink:#0d0d11;
  --v99-muted:#6d6b72;
  --v99-soft:#f6f4f1;
  --v99-line:#e7e2dd;
}

.home-page{background:#fff;color:var(--v99-ink)}
.home-page .v58-shell{max-width:1180px}

/* Header */
.home-page .site-header{background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(15,15,18,.08);backdrop-filter:blur(18px)}
.home-page .top-strip{height:3px;background:linear-gradient(90deg,#0f0f12 0 58%,var(--v99-red) 58% 100%)}
.home-page .header-inner{min-height:76px}
.home-page .brand img{max-height:49px;width:auto}
.home-page .main-nav{gap:4px}
.home-page .main-nav>a{padding:11px 12px;border-radius:11px;font-size:.72rem;letter-spacing:-.01em}
.home-page .main-nav>a:not(.nav-cta):hover{background:#f5f3f1;color:#111}
.home-page .main-nav .nav-buy-highlight{border:0;background:transparent;color:#17171a}
.home-page .main-nav .nav-cta{padding:12px 20px;border-radius:12px;background:var(--v99-red);box-shadow:0 10px 24px rgba(237,27,47,.2)}
.home-page .main-nav .nav-cta:hover{background:var(--v99-red-dark)}

/* Hero */
.v99-hero{position:relative;min-height:690px;overflow:hidden;background:#070709}
.v99-hero .v80-hero-bg{
  opacity:1;
  background:
    radial-gradient(circle at 63% 42%,rgba(237,27,47,.14),transparent 34%),
    linear-gradient(90deg,rgba(4,4,6,.99) 0%,rgba(4,4,6,.96) 39%,rgba(4,4,6,.66) 59%,rgba(4,4,6,.18) 82%),
    linear-gradient(0deg,rgba(4,4,6,.52),transparent 50%),
    url("logo-home.jpg") center/cover no-repeat;
  filter:saturate(.92) contrast(1.03);
}
.v99-hero-grid{position:relative;z-index:1;min-height:690px;padding:62px 0 58px;display:grid;grid-template-columns:minmax(0,760px) minmax(250px,1fr);gap:clamp(48px,7vw,96px);align-items:center}
.v99-hero-copy{max-width:760px}
.v99-hero .v58-eyebrow{margin:0 0 12px;color:rgba(255,255,255,.72);font-size:.66rem;letter-spacing:.13em}
.v99-hero .v58-eyebrow span{background:var(--v99-red)}
.v99-review-badge{margin-bottom:18px}
.v99-hero h1{max-width:700px;margin:0;color:#fff;font-size:clamp(3.25rem,5vw,4.6rem);line-height:.94;letter-spacing:-.055em}
.v99-hero h1 em{display:block;color:var(--v99-red);font-style:normal}
.v99-hero .v80-lead{max-width:640px;margin:18px 0 0;color:rgba(255,255,255,.72);font-size:1rem;line-height:1.65}

.v99-search-card{position:relative;margin-top:28px;padding:15px;border:1px solid rgba(255,255,255,.18);border-radius:21px;background:rgba(255,255,255,.96);box-shadow:0 26px 70px rgba(0,0,0,.38);backdrop-filter:blur(18px)}
.v99-search-card>label{display:block;margin:0 0 9px 4px;color:#26252a;font:800 .7rem/1.2 Poppins,Arial,sans-serif}
.v99-search-card .repair-search-field{min-height:62px;padding:5px 5px 5px 13px;display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:4px;border:1px solid #ddd8d3;border-radius:15px;background:#fff;box-shadow:inset 0 1px 2px rgba(20,20,24,.03)}
.v99-search-card .repair-search-field svg{width:21px;height:21px;fill:none;stroke:#8a878e;stroke-width:1.9}
.v99-search-card .repair-search-field input{min-width:0;height:50px;padding:0 8px;border:0;outline:0;color:#19191d;background:transparent;font:600 .84rem/1 Poppins,Arial,sans-serif}
.v99-search-card .repair-search-field input::placeholder{color:#96939a}
.v99-search-card .repair-search-field button{height:50px;padding:0 19px;border:0;border-radius:11px;color:#fff;background:var(--v99-red);font:800 .67rem/1 Poppins,Arial,sans-serif;cursor:pointer;box-shadow:0 10px 24px rgba(237,27,47,.18);transition:.18s}
.v99-search-card .repair-search-field button:hover{background:var(--v99-red-dark);transform:translateY(-1px)}
.v99-search-card .repair-search-results{position:absolute;z-index:20;right:15px;left:15px;margin-top:8px;border:1px solid #e4dfdb;border-radius:14px;background:#fff;box-shadow:0 20px 50px rgba(0,0,0,.18);overflow:hidden}
.v99-search-card .repair-price-preview{margin-top:12px}
.v99-search-footer{margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.v99-popular-models{display:flex;flex-wrap:wrap;gap:6px}
.v99-popular-models button{min-height:29px;padding:0 10px;border:1px solid #ded9d5;border-radius:999px;color:#4c4a50;background:#fff;font:700 .56rem/1 Poppins,Arial,sans-serif;cursor:pointer}
.v99-popular-models button:hover{border-color:#ef9da7;color:#b91224;background:#fff7f8}
.v99-search-help{margin:0!important;color:#77747b!important;font-size:.56rem!important;line-height:1.35!important;text-align:right}
.v99-search-help a{color:#b71124!important;font-weight:800!important}
.v99-search-card .repair-search-live{display:none}

.v99-hero-actions{margin-top:17px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.v99-book-btn{min-height:48px;padding:0 17px;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.16);border-radius:12px;color:#fff;background:rgba(255,255,255,.09);font:800 .69rem/1 Poppins,Arial,sans-serif;text-decoration:none;backdrop-filter:blur(12px)}
.v99-book-btn:hover{background:#fff;color:#111}
.v99-inline-link{min-height:48px;padding:0 3px;display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.84);font:700 .66rem/1 Poppins,Arial,sans-serif;text-decoration:none}
.v99-inline-link strong{color:#fff}
.v99-inline-link:hover{color:#fff}
.v99-trust-chips{margin-top:16px!important;gap:9px 18px!important;color:rgba(255,255,255,.68)!important}
.v99-trust-chips span{font-size:.62rem}

.v99-hero-side{align-self:center;justify-self:end;width:min(100%,310px)}
.v99-location-card{padding:24px;border:1px solid rgba(255,255,255,.15);border-radius:22px;color:#fff;background:linear-gradient(145deg,rgba(18,18,22,.88),rgba(18,18,22,.62));box-shadow:0 30px 70px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
.v99-location-status{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.64);font-size:.6rem;font-weight:700}
.v99-location-status i{width:9px;height:9px;border-radius:50%;background:#38c987;box-shadow:0 0 0 5px rgba(56,201,135,.09)}
.v99-location-card h2{margin:18px 0 8px;color:#fff;font-size:1.55rem;line-height:1.05;letter-spacing:-.035em}
.v99-location-card p{margin:0;color:rgba(255,255,255,.62);font-size:.67rem;line-height:1.55}
.v99-location-card address{margin:22px 0 0;padding:14px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);color:#fff;font:700 .68rem/1.5 Poppins,Arial,sans-serif;font-style:normal}
.v99-location-links{margin-top:14px;display:grid;gap:8px}
.v99-location-links a{min-height:43px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;border-radius:11px;color:#fff;background:rgba(255,255,255,.08);font:800 .62rem/1 Poppins,Arial,sans-serif;text-decoration:none}
.v99-location-links a:first-child{color:#111;background:#fff}
.v99-location-links a:hover{transform:translateY(-1px)}

/* Stronger proof strip */
.v99-proofbar{border:0;background:#111115}
.v99-proofbar>.v58-shell{max-width:1180px;grid-template-columns:repeat(4,1fr)}
.v99-proofbar .v58-shell>div,.v99-proofbar .v58-shell>a{min-height:106px;padding:22px 22px;border-color:rgba(255,255,255,.08)}
.v99-proofbar b{width:34px;height:34px}
.v99-proofbar strong{font-size:.75rem;line-height:1.3}
.v99-proofbar small{margin-top:3px;font-size:.57rem;line-height:1.35}

/* Section rhythm */
.home-page .v58-section{padding:86px 0}
.home-page .v58-heading{margin-bottom:30px}
.home-page .v58-heading p,.home-page .v58-kicker{color:#be1023;letter-spacing:.14em}
.home-page .v58-heading h2,.home-page .v58-trust-copy h2,.home-page .v58-faq h2{letter-spacing:-.045em}

/* Repair cards */
.home-page .v58-repairs{background:#fbfaf8}
.home-page .v58-repair-grid{gap:14px}
.home-page .v58-repair-grid>a{position:relative;min-height:245px;padding:25px;border:1px solid #e8e3de;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(29,23,19,.045);overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
.home-page .v58-repair-grid>a:hover{transform:translateY(-4px);border-color:#d9d2cc;box-shadow:0 22px 50px rgba(29,23,19,.09)}
.home-page .v58-repair-grid>a>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#be1023;background:#fff1f3;font-size:.66rem;font-weight:900}
.home-page .v58-repair-grid h3{margin-top:35px;font-size:1.25rem;letter-spacing:-.035em}
.home-page .v58-repair-grid p{max-width:230px;color:#77747b;font-size:.72rem;line-height:1.55}
.home-page .v58-repair-grid b{color:#be1023;font-size:.65rem}

/* Model shortcuts */
.home-page .v58-models{background:#fff}
.home-page .v58-model-grid{gap:10px}
.home-page .v58-model-grid>a{min-height:88px;padding:0 18px;border:1px solid #ebe6e1;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(20,20,24,.035);transition:.18s}
.home-page .v58-model-grid>a:hover{border-color:#e9a1aa;background:#fff8f9;transform:translateY(-2px)}
.home-page .v58-model-grid span{font-size:.76rem}
.home-page .v58-model-grid b{color:#be1023;font-size:.59rem}

/* Local SEO / context block */
.v99-local{padding:84px 0;background:#0e0e12;color:#fff}
.v99-local-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(50px,8vw,110px);align-items:start}
.v99-local-kicker{margin:0 0 13px;color:#ff5768;font:800 .61rem/1 Poppins,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.v99-local h2{max-width:560px;margin:0;color:#fff;font-size:clamp(2.2rem,3.7vw,3.35rem);line-height:1.02;letter-spacing:-.05em}
.v99-local-copy p{margin:0;color:rgba(255,255,255,.66);font-size:.82rem;line-height:1.8}
.v99-local-copy p+p{margin-top:14px}
.v99-local-links{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px}
.v99-local-links a{min-height:41px;padding:0 13px;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.14);border-radius:10px;color:#fff;background:rgba(255,255,255,.055);font:800 .6rem/1 Poppins,Arial,sans-serif;text-decoration:none}
.v99-local-links a:hover{background:#fff;color:#111}

/* Process */
.home-page .v58-process{background:#f5f2ee;color:#111}
.home-page .v58-process .v58-heading.is-light h2{color:#111}
.home-page .v58-process .v58-heading.is-light p{color:#be1023}
.home-page .v58-process-grid{gap:14px}
.home-page .v58-process-grid article{min-height:210px;padding:26px;border:1px solid #e3ddd7;border-radius:20px;background:#fff;color:#111}
.home-page .v58-process-grid article>b{color:#fff;background:#111}
.home-page .v58-process-grid h3{color:#111}
.home-page .v58-process-grid p{color:#77747b}

/* Store trust */
.home-page .v58-trust{background:#fff}
.home-page .v58-trust-grid{gap:70px;align-items:center}
.home-page .v58-store-media{border-radius:26px;overflow:hidden;box-shadow:0 25px 60px rgba(22,22,26,.12)}
.home-page .v58-trust-copy>p:not(.v58-kicker){color:#6f6c73;line-height:1.75}
.home-page .v58-trust-copy dl{border-color:#ebe6e1}
.home-page .v58-trust-copy dl>div{border-color:#ebe6e1}
.home-page .v58-primary{border-radius:12px;background:var(--v99-red)!important}
.home-page .v58-secondary.dark{border-radius:12px}

/* More / FAQ */
.home-page .v58-more{background:#f8f6f3}
.home-page .v58-more-grid{gap:14px}
.home-page .v58-more-grid>a{border-radius:21px}
.home-page .v58-faq{background:#fff}
.home-page .v58-faq details{border-color:#e9e4df}

/* The older second trust block duplicated the store section */
.home-page + .customer-proof-section{display:none}

@media(max-width:1050px){
  .v99-hero-grid{grid-template-columns:minmax(0,720px);justify-content:start}
  .v99-hero-side{display:none}
  .v99-hero .v80-hero-bg{background-position:64% center}
  .home-page .main-nav>a{padding-inline:9px;font-size:.66rem}
}

@media(max-width:760px){
  .home-page .header-inner{min-height:67px}
  .home-page .brand img{max-height:43px}
  .v99-hero{min-height:auto}
  .v99-hero .v80-hero-bg{
    background:
      linear-gradient(180deg,rgba(4,4,6,.82),rgba(4,4,6,.97) 68%),
      linear-gradient(90deg,rgba(4,4,6,.7),rgba(4,4,6,.25)),
      url("logo-home.jpg") 67% center/cover no-repeat;
  }
  .v99-hero-grid{min-height:auto;padding:38px 0 42px;display:block}
  .v99-hero h1{max-width:430px;font-size:clamp(2.65rem,12vw,3.55rem)}
  .v99-hero .v80-lead{margin-top:14px;font-size:.78rem;line-height:1.6}
  .v99-review-badge{margin-bottom:15px}
  .v99-search-card{margin-top:22px;padding:11px;border-radius:17px}
  .v99-search-card>label{font-size:.63rem}
  .v99-search-card .repair-search-field{min-height:56px;padding:4px 4px 4px 9px;grid-template-columns:23px minmax(0,1fr) auto;border-radius:13px}
  .v99-search-card .repair-search-field svg{width:18px;height:18px}
  .v99-search-card .repair-search-field input{height:46px;padding:0 4px;font-size:.72rem}
  .v99-search-card .repair-search-field button{height:46px;padding:0 12px;border-radius:10px;font-size:.59rem}
  .v99-search-footer{align-items:flex-start;flex-direction:column;gap:8px}
  .v99-search-help{text-align:left}
  .v99-popular-models button{min-height:28px;font-size:.53rem}
  .v99-hero-actions{margin-top:13px}
  .v99-book-btn,.v99-inline-link{min-height:43px;font-size:.61rem}
  .v99-trust-chips span:nth-child(3){display:none}
  .v99-proofbar>.v58-shell{grid-template-columns:1fr 1fr}
  .v99-proofbar .v58-shell>div,.v99-proofbar .v58-shell>a{min-height:91px;padding:16px}
  .home-page .v58-section{padding:58px 0}
  .home-page .v58-repair-grid>a{min-height:205px;padding:21px}
  .home-page .v58-repair-grid h3{margin-top:25px}
  .v99-local{padding:58px 0}
  .v99-local-grid{grid-template-columns:1fr;gap:28px}
  .v99-local h2{font-size:2.25rem}
  .home-page .v58-trust-grid{gap:34px}
}

@media(max-width:430px){
  .v99-search-card .search-label-desktop{display:none}
  .v99-search-card .search-label-mobile{display:inline}
  .v99-search-card .repair-search-field button{min-width:76px}
  .v99-trust-chips span:nth-child(2){display:none}
  .v99-proofbar strong{font-size:.64rem}
  .v99-proofbar small{font-size:.51rem}
}

/* V100 mobile search layout fix – keep autocomplete inside the document flow
   so it pushes the booking CTA down instead of covering it. */
@media(max-width:760px){
  .v99-search-card .repair-search-results{
    position:relative;
    z-index:2;
    left:auto;
    right:auto;
    width:100%;
    max-height:270px;
    margin:10px 0 0;
    overflow-y:auto;
    overscroll-behavior:contain;
    border-radius:12px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
  }
  .v99-search-card .repair-search-results[hidden]{display:none!important}
  .v99-search-card .repair-price-preview{position:relative;z-index:1}
  .v99-hero-actions{position:relative;z-index:1}
}

@media(max-width:430px){
  .v99-search-card .repair-search-results{max-height:235px}
}
