/*
Theme Name: Acotrans
Theme URI: https://acotrans.cl
Author: Acotrans
Author URI: https://acotrans.cl
Description: Tema a medida para Acotrans, empresa de transporte de carga en Chile. Incluye portada con foto, secciones de servicios de flota, logistica integral, y formulario de cotizacion.
Version: 1.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: acotrans
*/


  :root{
    --navy-950:#0a1526;
    --navy-800:#14213d;
    --navy-700:#1c2e52;
    --blue-600:#1207c4;
    --blue-500:#3d4bff;
    --blue-100:#e9e9fc;
    --gray-600:#5c6b7a;
    --gray-300:#c7d1db;
    --gray-100:#f4f6f8;
    --line:#3fb768;
    --white:#ffffff;
    --shadow: 0 20px 50px -20px rgba(5,7,12,0.4);
    --green-500:#17d65a;
    --green-600:#10b84c;
    --ink:#0a0a0d;
    --logo-white: url('assets/images/logo-white.png');
    --hero-photo: url('assets/images/hero-photo.jpg');
    --logo-color: url('assets/images/logo-color.png');
  }

  *{margin:0;padding:0;box-sizing:border-box;}

  html{scroll-behavior:smooth;}

  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
  }

  body{
    font-family:'Inter',sans-serif;
    color:var(--navy-800);
    background:var(--gray-100);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }

  h1,h2,h3,.display{
    font-family:'Big Shoulders Display',sans-serif;
    font-weight:700;
    letter-spacing:0.01em;
    line-height:1.02;
    text-transform:uppercase;
    color:var(--navy-800);
  }

  .mono{
    font-family:'IBM Plex Mono',monospace;
  }

  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  button{font-family:inherit;cursor:pointer;border:none;}
  .container{max-width:1180px;margin:0 auto;padding:0 28px;}
  section{position:relative;}

  /* ---------- visually-hidden ---------- */
  .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

  /* ---------- focus ---------- */
  a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
    outline:2px solid var(--blue-500);
    outline-offset:3px;
    border-radius:2px;
  }

  /* ================= HEADER ================= */
  header{
    position:fixed; top:0; left:0; right:0; z-index:100;
    background:var(--white);
    box-shadow:0 2px 20px -8px rgba(10,10,13,0.12);
    transition:box-shadow 0.35s ease, padding 0.35s ease;
    padding:18px 0;
  }
  header.scrolled{
    box-shadow:0 8px 30px -12px rgba(10,10,13,0.18);
    padding:12px 0;
  }
  header .container{display:flex;align-items:center;justify-content:space-between;}
  .logo{
    display:flex;align-items:center;
  }
  .brand-logo{
    display:block;
    background-image:var(--logo-color);
    background-repeat:no-repeat;
    background-position:left center;
    background-size:contain;
    width:172px;
    height:52px;
  }
  .brand-logo-white{background-image:var(--logo-white);}
  .brand-logo-panel{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--white);
    border-radius:10px;
    padding:12px 18px;
  }
  /* brand bar: mirrors the green-blue-green stripe from the Acotrans mark */
  .brand-bar{display:inline-flex;align-items:center;gap:3px;margin-right:10px;flex-shrink:0;}
  .brand-bar i{display:block;height:2px;border-radius:1px;}
  .brand-bar i:nth-child(1),.brand-bar i:nth-child(3){width:8px;background:var(--green-500);}
  .brand-bar i:nth-child(2){width:15px;background:var(--blue-600);}
  nav.mainnav{display:flex;align-items:center;gap:32px;}
  nav.mainnav ul,
  nav.mainnav li{list-style:none !important;list-style-type:none !important;margin:0;padding:0;}
  nav.mainnav a{
    color:var(--navy-800);
    font-size:14px;
    font-weight:600;
    letter-spacing:0.03em;
    text-transform:uppercase;
    position:relative;
    padding:4px 0;
    transition:color 0.25s;
  }
  nav.mainnav a:not(.nav-cta):hover{color:var(--blue-600);}
  nav.mainnav a:not(.nav-cta)::after{
    content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--blue-600);
    transition:width 0.25s ease;
  }
  nav.mainnav a:not(.nav-cta):hover::after{width:100%;}
  .nav-cta{
    background:var(--blue-600);
    color:var(--white) !important;
    padding:11px 22px !important;
    border-radius:6px;
    box-shadow:0 8px 22px -8px rgba(18,7,196,0.55);
    animation:navCtaPulse 2.4s ease-in-out infinite;
  }
  .nav-cta::after{display:none;}
  .nav-cta:hover{
    color:var(--white) !important;
    background:var(--blue-500);
    animation-play-state:paused;
    transform:scale(1.08);
  }
  @keyframes navCtaPulse{
    0%, 100%{transform:scale(1);}
    50%{transform:scale(1.06);}
  }
  @media (prefers-reduced-motion: reduce){
    .nav-cta{animation:none;}
  }
  .header-cta{
    display:flex;align-items:center;gap:18px;
  }
  .phone-pill{
    display:flex;align-items:center;gap:8px;
    color:var(--navy-800);
    font-family:'IBM Plex Mono',monospace;
    font-size:13.5px;
    border:1px solid var(--gray-300);
    padding:8px 14px;
    border-radius:100px;
    transition:border-color 0.25s, background 0.25s;
  }
  .phone-pill:hover{border-color:var(--blue-500);background:var(--blue-100);}
  .burger{
    display:none;
    width:40px;height:40px;
    align-items:center;justify-content:center;
    flex-direction:column;
    gap:5px;
    background:transparent;
    border:none;
    cursor:pointer;
    flex-shrink:0;
  }
  .burger span{
    display:block;
    width:22px;height:2px;
    background:var(--navy-800);
    border-radius:2px;
    transition:transform 0.3s ease, opacity 0.3s ease;
  }
  header.nav-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  header.nav-open .burger span:nth-child(2){opacity:0;}
  header.nav-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  /* ================= HERO ================= */
  .hero{
    background:var(--ink);
    padding:168px 0 130px;
    position:relative;
    overflow:hidden;
  }
  .hero-photo{
    position:absolute; inset:0;
    background: var(--hero-photo) center 38%/cover no-repeat;
    background-image: -webkit-image-set(
      url('assets/images/hero-photo.webp') type('image/webp') 1x
    );
    background-image: image-set(
      url('assets/images/hero-photo.webp') type('image/webp') 1x,
      url('assets/images/hero-photo.jpg') type('image/jpeg') 1x
    );
    background-position: center 38%;
    background-size: cover;
    background-repeat: no-repeat;
    z-index:0;
  }
  .hero::before{
    content:"";
    position:absolute; inset:0;
    z-index:1;
    background-image:
      linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
    background-size:64px 64px;
    mask-image:linear-gradient(180deg, black, transparent 85%);
  }
  .hero .container{position:relative;z-index:2;}
  .hero-content{
    max-width:620px;
    background:rgba(8,8,11,0.72);
    backdrop-filter:blur(6px);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:12px;
    padding:44px 46px;
  }
  .hero-stats{
    display:flex;align-items:center;gap:26px;
    margin-top:38px;
    padding-top:26px;
    border-top:1px solid rgba(255,255,255,0.16);
  }
  .hero-stat .n{
    font-family:'Big Shoulders Display',sans-serif;
    font-weight:700;
    font-size:27px;
    color:var(--white);
    line-height:1;
  }
  .hero-stat .l{
    font-family:'IBM Plex Mono',monospace;
    font-size:10.5px;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--gray-300);
    margin-top:4px;
  }
  .hero-stat-divider{width:1px;height:34px;background:rgba(255,255,255,0.18);}
  .eyebrow{
    font-family:'IBM Plex Mono',monospace;
    font-size:12.5px;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--blue-500);
    display:flex;align-items:center;
    margin-bottom:22px;
  }
  .hero h1{
    color:var(--white);
    font-size:clamp(42px,6vw,68px);
    margin-bottom:24px;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--blue-500);
  }
  .hero p.lead{
    color:var(--gray-300);
    font-size:17px;
    max-width:480px;
    margin-bottom:36px;
  }
  .hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;}

  .btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 30px;
    font-size:14px;
    font-weight:600;
    letter-spacing:0.03em;
    text-transform:uppercase;
    border-radius:4px;
    transition:transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
  }
  .btn-primary{
    background:var(--blue-500);
    color:var(--white);
    box-shadow:0 12px 30px -10px rgba(61,132,204,0.6);
  }
  .btn-primary:hover{background:var(--blue-600); transform:translateY(-2px);}
  .btn-ghost{
    color:var(--white);
    border-bottom:1px solid rgba(255,255,255,0.4);
    padding:15px 2px;
    font-weight:500;
  }
  .btn-ghost:hover{border-color:var(--white);}

  /* ================= SERVICES ================= */
  .services{
    padding:130px 0 110px;
    background:var(--gray-100);
  }
  .section-head{
    max-width:600px;
    margin-bottom:64px;
  }
  .section-head .eyebrow{color:var(--blue-600);}
  .section-head h2{
    font-size:clamp(32px,4vw,46px);
    color:var(--navy-800);
  }
  .section-head p{
    color:var(--gray-600);
    font-size:16px;
    margin-top:16px;
    max-width:480px;
  }

  .stops{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
  }
  .stop{
    background:var(--white);
    border-radius:16px;
    padding:38px 32px 34px;
    position:relative;
    overflow:hidden;
    box-shadow:0 2px 16px -6px rgba(10,10,13,0.1);
    opacity:0;
    transform:translateY(24px);
    transition:opacity 0.7s ease, transform 0.35s ease, box-shadow 0.35s ease;
  }
  .stop.in-view{opacity:1; transform:translateY(0);}
  .stop::before{
    content:"";
    position:absolute; top:0; left:0; right:0; height:4px;
    background:linear-gradient(90deg, var(--blue-600), var(--green-500));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.4s ease;
  }
  .stop::after{
    content:"";
    position:absolute;
    width:180px;height:180px;
    border-radius:50%;
    right:-70px; top:-70px;
    background:radial-gradient(circle, var(--blue-100) 0%, transparent 70%);
    opacity:0;
    transition:opacity 0.4s ease, transform 0.5s ease;
    transform:scale(0.8);
  }
  .stop:hover{
    transform:translateY(-8px);
    box-shadow:0 24px 40px -18px rgba(10,10,13,0.22);
  }
  .stop:hover::before{transform:scaleX(1);}
  .stop:hover::after{opacity:1; transform:scale(1);}
  .stop:nth-child(2)::after{background:radial-gradient(circle, #e3faec 0%, transparent 70%);}

  .stop-top{position:relative;z-index:1;margin-bottom:26px;}
  .stop-icon-badge{
    width:64px;height:64px;
    border-radius:16px;
    display:flex;align-items:center;justify-content:center;
    background:var(--blue-100);
    transition:transform 0.4s ease, background 0.3s ease;
  }
  .stop:hover .stop-icon-badge{transform:rotate(-6deg) scale(1.08);}
  .stop:nth-child(2) .stop-icon-badge{background:#e3faec;}
  .stop:nth-child(2) .stop-icon{color:var(--green-600);}
  .stop-icon{width:32px;height:32px;color:var(--blue-600);}
  .stop h3{font-size:23px;margin-bottom:12px;color:var(--ink);position:relative;z-index:1;}
  .stop p{color:var(--gray-600);font-size:15px;max-width:340px;position:relative;z-index:1;}

  .stop-wide{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:44px;
    align-items:center;
  }
  .stop-wide .stop-icon-badge{background:linear-gradient(135deg, var(--blue-100), #e3faec);}
  .stop-wide .stop-top{margin-bottom:22px;}
  .stop-wide p{max-width:400px;}
  .stop-sublist{
    list-style:none;
    padding:26px 0 26px 28px;
    margin:0;
    display:flex;
    flex-direction:column;
    gap:16px;
    border-left:1px solid var(--gray-300);
    position:relative;z-index:1;
  }
  .stop-sublist li{
    position:relative;
    font-size:14.5px;
    color:var(--navy-800);
    font-weight:500;
    line-height:1.4;
  }
  .stop-sublist li::before{
    content:"";
    position:absolute;
    left:-28px; top:6px;
    width:8px; height:8px;
    background:var(--green-500);
    border-radius:2px;
  }

  /* ================= WHY / MANIFEST ================= */
  .why{
    padding:110px 0;
    background:var(--blue-600);
    position:relative;
    overflow:hidden;
  }
  .why::after{
    content:"";
    position:absolute; right:-120px; top:-120px;
    width:420px;height:420px;
    border:1px solid rgba(255,255,255,0.06);
    border-radius:50%;
  }
  .why-grid{
    display:grid;
    grid-template-columns:0.9fr 1.1fr;
    gap:70px;
    align-items:start;
    position:relative;z-index:2;
  }
  .why .section-head{margin-bottom:0;}
  .why .section-head h2, .why .eyebrow{color:var(--white);}
  .why .eyebrow{color:var(--green-500);}
  .why .brand-bar i:nth-child(2){background:var(--white);}
  .why .section-head p{color:var(--gray-300);}

  .manifest{
    border:1px solid rgba(255,255,255,0.14);
    border-radius:10px;
    overflow:hidden;
  }
  .manifest-item{
    display:grid;
    grid-template-columns:48px 1fr;
    gap:20px;
    align-items:start;
    padding:26px 28px;
    border-bottom:1px solid rgba(255,255,255,0.1);
    opacity:0;
    transform:translateX(48px) scale(0.94);
    transition:opacity 0.7s cubic-bezier(.22,1,.36,1), transform 0.7s cubic-bezier(.22,1,.36,1), background 0.3s ease;
  }
  .manifest-item.in-view{opacity:1;transform:translateX(0) scale(1);}
  .manifest-item:nth-child(1){transition-delay:0s;}
  .manifest-item:nth-child(2){transition-delay:0.1s;}
  .manifest-item:nth-child(3){transition-delay:0.2s;}
  .manifest-item:nth-child(4){transition-delay:0.3s;}
  .manifest-item:last-child{border-bottom:none;}

  /* generic scroll-reveal utility, used across the page for extra sections */
  .reveal{
    opacity:0;
    transform:translateY(32px);
    transition:opacity 0.8s cubic-bezier(.22,1,.36,1), transform 0.8s cubic-bezier(.22,1,.36,1);
  }
  .reveal.in-view{opacity:1;transform:translateY(0);}
  .coverage-item.reveal:nth-child(1){transition-delay:0s;}
  .coverage-item.reveal:nth-child(2){transition-delay:0.1s;}
  .coverage-item.reveal:nth-child(3){transition-delay:0.2s;}
  .coverage-item.reveal:nth-child(4){transition-delay:0.3s;}
  .manifest-item:hover{background:rgba(255,255,255,0.05);}
  .manifest-item:hover .manifest-num{
    transform:scale(1.15) rotate(-6deg);
    background:var(--green-500);
    color:var(--navy-800);
    border-color:var(--green-500);
  }
  .manifest-num{
    display:flex;align-items:center;justify-content:center;
    width:44px;height:44px;
    border-radius:50%;
    background:rgba(255,255,255,0.12);
    border:1px solid rgba(255,255,255,0.2);
    font-family:'Big Shoulders Display',sans-serif;
    font-weight:700;
    font-size:16px;
    color:var(--green-500);
    transition:transform 0.35s ease, background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
  }
  .manifest-item h4{
    color:var(--white);
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:16.5px;
    margin-bottom:6px;
    margin-top:6px;
    text-transform:none;
  }
  .manifest-item p{color:var(--gray-300);font-size:14.5px;}

  /* ================= COVERAGE STRIP ================= */
  .coverage{
    background:var(--white);
    padding:64px 0;
    border-bottom:1px solid var(--gray-300);
  }
  .coverage .container{
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:36px;
  }
  .coverage-item{display:flex;flex-direction:column;gap:6px;}
  .coverage-note{
    margin-top:30px;
    padding-top:26px;
    border-top:1px solid var(--gray-300);
    font-size:14px;
    color:var(--gray-600);
    max-width:640px;
  }
  .coverage-item .num{
    font-family:'Big Shoulders Display',sans-serif;
    font-weight:700;
    font-size:38px;
    color:var(--blue-600);
  }
  .coverage-item .lab{
    font-family:'IBM Plex Mono',monospace;
    font-size:11.5px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--gray-600);
  }

  /* ================= QUOTE FORM ================= */
  .quote{
    padding:130px 0;
    background:var(--gray-100);
  }
  .quote-grid{
    display:grid;
    grid-template-columns:0.85fr 1.15fr;
    gap:0;
    background:var(--white);
    border-radius:14px;
    overflow:hidden;
    box-shadow:var(--shadow);
  }
  .quote-info{
    background:var(--blue-600);
    padding:56px 46px;
    color:var(--white);
    position:relative;
  }
  .quote-info h2{color:var(--white);font-size:32px;margin-bottom:18px;}
  .quote-info p{color:var(--gray-300);font-size:15px;margin-bottom:40px;}
  .contact-row{
    display:flex;align-items:center;gap:14px;
    padding:16px 0;
    border-top:1px solid rgba(255,255,255,0.12);
  }
  .contact-row:last-of-type{border-bottom:1px solid rgba(255,255,255,0.12);}
  .contact-row svg{width:19px;height:19px;color:var(--green-500);flex-shrink:0;}
  .contact-row .lab{font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--gray-300);font-family:'IBM Plex Mono',monospace;}
  .contact-row .val{font-size:14.5px;color:var(--white);font-weight:500;}
  .hours-box{
    margin-top:32px;
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:16px;
    color:var(--green-500);
    letter-spacing:0.01em;
  }

  .quote-form{padding:56px 46px;}
  .quote-form .form-eyebrow{
    font-family:'IBM Plex Mono',monospace;
    font-size:12px;color:var(--gray-600);letter-spacing:0.1em;text-transform:uppercase;
    margin-bottom:8px;
  }
  .quote-form h3{font-size:24px;margin-bottom:30px;color:var(--navy-800);}
  .field{margin-bottom:22px;}
  .field label{
    display:block;font-size:12.5px;font-weight:600;color:var(--navy-800);
    text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px;
  }
  .field input, .field textarea{
    width:100%;
    border:1px solid var(--gray-300);
    background:var(--gray-100);
    padding:13px 15px;
    font-family:'Inter',sans-serif;
    font-size:14.5px;
    color:var(--navy-800);
    border-radius:5px;
    transition:border-color 0.2s, background 0.2s;
  }
  .field input:focus, .field textarea:focus{
    border-color:var(--blue-500);
    background:var(--white);
    outline:none;
  }
  .field textarea{resize:vertical; min-height:96px;}
  .form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .submit-btn{
    width:100%;
    background:var(--ink);
    color:var(--white);
    padding:16px;
    font-size:14px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;
    border-radius:5px;
    display:flex;align-items:center;justify-content:center;gap:10px;
    transition:background 0.25s;
  }
  .submit-btn:hover{background:var(--blue-600);}
  .form-note{font-size:12.5px;color:var(--gray-600);margin-top:14px;text-align:center;}

  /* ================= FOOTER ================= */
  footer{
    background:var(--ink);
    color:var(--gray-300);
    padding:64px 0 30px;
  }
  .footer-grid{
    display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;
    padding-bottom:44px;
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  footer .logo{margin-bottom:14px;}
  footer .footer-desc{font-size:14px;color:var(--gray-300);max-width:280px;}
  footer h5{
    font-family:'Inter',sans-serif;
    font-weight:700;
    font-size:16px;letter-spacing:0.03em;text-transform:uppercase;
    color:var(--white);margin-bottom:20px;
  }
  footer .flinks{display:flex;flex-direction:column;gap:12px;}
  footer .flinks a{font-size:14px;color:var(--gray-300);transition:color 0.2s;}
  footer .flinks a:hover{color:var(--white);}
  .footer-bottom{
    padding-top:26px;
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
    font-size:12.5px;color:rgba(255,255,255,0.4);
  }

  /* ================= WHATSAPP FLOAT ================= */
  .wa-float{
    position:fixed;
    bottom:26px; right:26px;
    z-index:200;
    width:58px;height:58px;
    background:#25D366;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 26px -6px rgba(0,0,0,0.4);
    transition:transform 0.25s ease;
  }
  .wa-float:hover{transform:scale(1.08);}
  .wa-float svg{width:28px;height:28px;fill:var(--white);}

  /* ================= RESPONSIVE ================= */
  @media (max-width:1080px){
    .stops{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:900px){
    .burger{display:flex;}
    nav.mainnav{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      gap:0;
      position:absolute;
      top:100%;
      left:0;
      right:0;
      background:var(--white);
      box-shadow:0 16px 30px -10px rgba(10,10,13,0.18);
      padding:8px 24px 20px;
      max-height:0;
      overflow:hidden;
      opacity:0;
      transition:max-height 0.35s ease, opacity 0.25s ease, padding 0.35s ease;
    }
    header.nav-open nav.mainnav{
      max-height:400px;
      opacity:1;
      padding:14px 24px 26px;
    }
    nav.mainnav a{
      width:100%;
      padding:14px 0;
      border-bottom:1px solid var(--gray-300);
      font-size:15px;
    }
    nav.mainnav a:last-child{border-bottom:none;}
    nav.mainnav a.nav-cta{
      display:block;
      margin-top:12px;
      text-align:center;
      border-bottom:none;
      animation:none !important;
      transform:none !important;
      box-shadow:none;
    }
    nav.mainnav a.nav-cta:hover{transform:none !important;}
    .hero-content{max-width:100%;padding:32px 26px;}
    .stops{grid-template-columns:1fr;}
    .stop-wide{grid-template-columns:1fr;}
    .stop-sublist{border-left:none;border-top:1px solid var(--gray-300);padding:22px 0 0;}
    .stop-sublist li::before{left:0;}
    .stop-sublist li{padding-left:20px;}
    .why-grid{grid-template-columns:1fr;gap:44px;}
    .quote-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr;gap:36px;}
    .coverage .container{justify-content:flex-start;gap:44px;}
  }
  @media (max-width:560px){
    .hero{padding:140px 0 90px;}
    .form-grid-2{grid-template-columns:1fr;}
    .quote-info, .quote-form{padding:40px 26px;}
    .stop{padding:32px 24px;}
    .services{padding:80px 0 70px;}
    .why{padding:70px 0;}
    .quote{padding:80px 0;}
    .coverage{padding:44px 0;}
    .hero-actions{flex-direction:column;align-items:stretch;gap:14px;}
    .hero-actions .btn{justify-content:center;width:100%;}
    .hero-actions .btn-ghost{border-bottom:none;padding:12px 2px;}
    .hero-stats{flex-wrap:wrap;gap:22px 30px;}
    .section-head{margin-bottom:44px;}
    .submit-btn{padding:17px;}
  }
  @media (max-width:480px){
    .phone-pill{display:none;}
    .header-cta{gap:0;}
  }
