
  :root{
    --charcoal:#f7f7f7;
    --charcoal-2:#ffffff;
    --charcoal-3:#ffffff;
    --steel:#E5E7EB;
    --white:#f5f6f7;
    --dim:#a8adb4;
    --red:#e0361f;
    --red-2:#ff5a36;
    --amber:#ffb020;
    --line:rgba(255,255,255,0.08);
    --radius:14px;
    --main-text: #1F2937;
    --secondary-text: #4B5563;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--charcoal);
    color:var(--white);
    font-family:'Inter',sans-serif;
    padding-bottom:72px;
    color: var(--main-text);
  }
  h1,h2,h3,.display-font{
    font-family: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
    letter-spacing:-0.01em;
    line-height:1.05;
   
  }
  .hero-h1{
    color: #fff;
  }
  .eyebrow{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    font-size:0.82rem;
    color:var(--red-2);
  }
  .label-num{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
  }
  a{color:inherit;text-decoration:none;}
  .btn-cta{
    background:linear-gradient(135deg,var(--red-2),var(--red));
    border:none;
    color:#fff;
    font-weight:700;
    padding:0.9rem 1.6rem;
    border-radius:10px;
    box-shadow:0 8px 24px rgba(224,54,31,0.35);
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .btn-cta:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(224,54,31,0.45);color:#fff;}
  .btn-outline-cta{
    background:transparent;
    border:1.5px solid rgba(255,255,255,0.28);
    color:#fff;
    font-weight:700;
    padding:0.85rem 1.55rem;
    border-radius:10px;
    transition:all .15s ease;
  }
  .btn-outline-cta:hover{border-color:var(--red-2);background:rgba(224,54,31,0.08);color:#fff;}
  .section{padding:5rem 0;}
  .section-tight{padding:3.2rem 0;}
  .card-dark{
    background:var(--charcoal-2);
    border:1px solid var(--line);
    border-radius:var(--radius);
  }
  .card-flat{
    background:var(--charcoal);
    border:1px solid var(--line);
    border-radius:var(--radius);
  }
  .text-dim{color:var(--dim);}
  .divider-line{height:1px;background:var(--line);border:none;}

  /* HEADER */
  header.site-header{
    position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--charcoal);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
  padding: 15px 0;
  }
  .brand{
    font-family: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
    font-size:1.3rem;
    letter-spacing:-0.02em;
  }
  .brand span{color:var(--red-2);}
  .nav-link-custom{
    color:var(--dim);
    font-weight:600;
    font-size:0.95rem;
    padding:0.5rem 0.9rem !important;
  }
  .nav-link-custom:hover{color:#fff;}
  .header-call-btn{
    background:var(--red);
    color:#fff;
    font-weight:700;
    padding:0.6rem 1.1rem;
    border-radius:9px;
    font-size:0.95rem;
    white-space:nowrap;
  }
  .header-call-btn:hover{background:var(--red-2);color:#fff;}

  /* MOBILE STICKY BAR */
  .mobile-sticky-cta{
    position:fixed;bottom:0;left:0;right:0;
    z-index:1050;
    display:flex;
    background:var(--charcoal-2);
    border-top:1px solid var(--line);
    box-shadow:0 -6px 20px rgba(0,0,0,0.35);
  }
  .mobile-sticky-cta a{
    flex:1;
    text-align:center;
    padding:0.95rem 0.5rem;
    font-weight:700;
    font-size:0.95rem;
  }
  .mobile-sticky-cta .call-part{
    background:var(--red);
    color:#fff;
  }
  .mobile-sticky-cta .quote-part{
    background:#100b0a;
    color:#fff;
    border-left:1px solid var(--line);
  }
  @media(min-width:992px){
    .mobile-sticky-cta{display:none;}
    body{padding-bottom:0;}
  }

  /* HERO */
  .hero-section{
    position:relative;
    background:
      radial-gradient(ellipse at 15% 15%, rgba(224,54,31,0.16), transparent 55%),
      radial-gradient(ellipse at 85% 85%, rgba(255,176,32,0.08), transparent 50%),
      linear-gradient(180deg,#101214,#181b1e);
    padding:3.5rem 0 3rem;
    overflow:hidden;
    border-bottom:1px solid var(--line);
  }
  .hero-section::before{
    content: "";
    position: absolute;
    inset: 0;
    background-image:
    repeating-linear-gradient(107deg, rgba(6, 5, 5, 0.87) 0 2px, #000000d6 2px 60px), url(images/banner.png);
    background-size: auto, cover;
    background-position: center, center;
    background-repeat: repeat, no-repeat;
    pointer-events: none;
  }
  .hero-h1{
    font-size:2.5rem;
  }
  @media(min-width:768px){.hero-h1{font-size:3.3rem;}}
  .hero-benefit-line{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:600;
    font-size:1.15rem;
    color:var(--amber);
    letter-spacing:0.01em;
  }
  .hero-visual-tag{
    position:absolute;
    background:rgba(21,23,26,0.85);
    border:1px solid var(--line);
    border-radius:10px;
    padding:0.5rem 0.9rem;
    font-size:0.85rem;
    font-weight:600;
    backdrop-filter:blur(6px);
  }

  /* FORM CARD */
  .quote-card{
    background:linear-gradient(180deg,var(--charcoal-2),var(--charcoal-3));
    border:1px solid var(--line);
    border-radius:18px;
    box-shadow:0 30px 60px rgba(0,0,0,0.45);
  }
  .step-indicator{
    display:flex;gap:0.4rem;margin-bottom:1.4rem;
  }
  .step-dot{
    flex:1;height:5px;border-radius:4px;
    background:var(--steel);
    transition:background .2s ease;
  }
  .step-dot.active{background:var(--red-2);}
  .form-control-dark, .form-select-dark{
    background:var(--charcoal);
    border:1px solid var(--steel);
    color:#fff;
    border-radius:9px;
    padding:0.65rem 0.85rem;
  }
  .form-control-dark:focus, .form-select-dark:focus{
    background:var(--charcoal);
    color:#fff;
    border-color:var(--red-2);
    box-shadow:0 0 0 3px rgba(255,90,54,0.2);
  }
  .form-control-dark::placeholder{color:#767c85;}
  .form-label-custom{
    font-weight:600;font-size:0.88rem;color:var(--dim);margin-bottom:0.35rem;
  }
  .contact-pref-btn{
    background:var(--charcoal);
    border:1px solid var(--steel);
    color:var(--dim);
    border-radius:9px;
    padding:0.5rem;
    font-weight:600;
    font-size:0.85rem;
    width:100%;
  }
  .contact-pref-btn.active{
    border-color:var(--red-2);
    color:#fff;
    background:rgba(224,54,31,0.12);
  }

  /* TRUST STRIP */
  .trust-strip{
    background:var(--charcoal-2);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    padding:1.6rem 0;
  }
  .trust-item{
    display:flex;align-items:center;gap:0.6rem;
    font-size:0.9rem;font-weight:600;color:var(--dim);
    white-space:nowrap;
  }
  .trust-item svg{flex-shrink:0;color:var(--red-2);}

  /* FEATURE CARDS */
  .feature-card{
    padding:1.8rem;height:100%;
    transition:border-color .2s ease, transform .2s ease;
    background: var(--charcoal-2);
  }
  .feature-card:hover{border-color:#E5E7EB;transform:translateY(-3px);}
  .feature-icon-wrap{
    width:52px;height:52px;border-radius:12px;
    background:linear-gradient(135deg,rgba(224,54,31,0.25),rgba(255,176,32,0.12));
    display:flex;align-items:center;justify-content:center;
    color:var(--red-2);margin-bottom:1rem;
  }

  /* VEHICLE CARDS */
  .vehicle-card{
    position:relative;
    border-radius:var(--radius);
    overflow:hidden;
    height:230px;
    border:1px solid var(--line);
    background:linear-gradient(160deg,var(--charcoal-3),var(--charcoal-2));
    display:flex;flex-direction:column;justify-content:flex-end;
    padding:1.2rem;
  }
  .vehicle-card::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 80% 10%, rgb(20, 16, 15), #0b0808e8 60%);
  }
  .vehicle-card .v-icon{
    position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  height: auto;
  opacity: .5;
  }

  /* PROCESS */
  .process-step{position:relative;padding-left:0;}
  .process-num{
    font-family: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
    font-size:3rem;
    color:transparent;
    -webkit-text-stroke:1.5px rgba(255,90,54,0.55);
    line-height:1;
  }

  .recent-activity .placeholder-card{
    background: var(--charcoal);
  }
  /* NO TITLE SECTION */
  .no-title-section{
    background:linear-gradient(135deg,#20120d,#1a1d20);
    border:1px solid rgba(224,54,31,0.3);
    border-radius:20px;
    padding:3rem;
    position:relative;
    overflow:hidden;
  }
  .no-title-section::after{
    content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;
    background:radial-gradient(circle, rgba(224,54,31,0.25), transparent 70%);
  }

  /* SERVICE AREA */
  .city-chip{
    background:var(--charcoal);
    border:1px solid var(--line);
    border-radius:11px;
    padding:1.1rem 0.8rem;
    text-align:center;
    font-weight:500;
    font-size:0.98rem;
    transition:border-color .2s ease, background .2s ease;
    display: flex;
    justify-content: center;
    gap: 10px;
  }
  .city-chip:hover{border-color:var(--red-2);background:rgba(224,54,31,0.08);}
  .city-chip .pin{color:var(--red-2);display:block;}

  /* PLACEHOLDER CARDS */
  .placeholder-card{
    border:1.5px dashed var(--steel);
    border-radius:var(--radius);
    background:var(--charcoal-2);
    min-height:220px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;color:var(--dim);
    padding:1.5rem;
  }
  .placeholder-badge{
    font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
    background:var(--charcoal-3);border:1px solid var(--line);
    padding:0.25rem 0.6rem;border-radius:20px;margin-bottom:0.7rem;color:var(--amber);
  }

  /* FAQ */
  .accordion-dark .accordion-item{
    background:var(--charcoal-2);
    border:1px solid var(--line);
    border-radius:12px !important;
    margin-bottom:0.8rem;
    overflow:hidden;
  }
  .accordion-dark .accordion-button{
    background:var(--charcoal);
    color:var(--main-text);
    font-weight:700;
    box-shadow:none !important;
  }
  .accordion-dark .accordion-button:not(.collapsed){
    /* background:var(--charcoal-3);
    color:var(--red-2); */
    border-bottom: 1px solid var(--steel);
  }
  .accordion-dark .accordion-button::after{
    filter:invert(1);
  }
  .accordion-button:not(.collapsed), .accordion-collapse.collapse.show {
  background: var(--charcoal) !important;
}
  .accordion-dark .accordion-body{
    color:var(--dim);
    font-size:0.95rem;
  }
  .junk-titme {
  text-align: center;
  z-index: 9;
  color: #fff;
}

  /* FINAL CTA */
  .final-cta-section{
    background:
      radial-gradient(ellipse at 30% 30%, rgba(224,54,31,0.22), transparent 55%),
      linear-gradient(180deg,#100b0a,#191c1f);
    border-top:1px solid var(--line);
    border-radius:0;
  }

  /* FOOTER */
  footer{
    background:#0e0f11;
    border-top:1px solid var(--line);
    padding:3rem 0 2rem;
    font-size:0.9rem;
    color:var(--dim);
  }
  footer a:hover{color:var(--red-2);}

  .fade-up{
    opacity:0;transform:translateY(16px);
    transition:opacity .5s ease, transform .5s ease;
  }
  .fade-up.in-view{opacity:1;transform:translateY(0);}

  @media(prefers-reduced-motion: reduce){
    .fade-up{opacity:1;transform:none;transition:none;}
    .btn-cta:hover, .feature-card:hover{transform:none;}
  }

  .section-heading{margin-bottom:0.6rem;}
  .section-intro{color:var(--dim);max-width:680px;}
