/* Estimate-led contact section. Retains the existing ivory, charcoal and yellow palette. */
.estimate-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.estimate-intro h2{font-style:italic;font-size:clamp(44px,5vw,65px);margin-bottom:22px}
.estimate-intro>p:not(.eyebrow){max-width:425px;color:#d1d2d5;line-height:1.8;font-size:15px}
.estimate-phone{display:block;color:var(--accent);font-family:var(--head);font-weight:800;font-style:italic;font-size:clamp(35px,4vw,52px);line-height:1.3;margin:23px 0 16px}
.estimate-phone:hover{color:#ffd15b}
.estimate-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.estimate-actions .button{font-size:13px}
.estimate-text-link{font-size:13px;text-decoration:underline;text-underline-offset:5px}
.estimate-intro>small{display:block;margin-top:20px;font-size:11px;line-height:1.7;color:#bfc1c6}
.estimate-details{padding:30px;border:1px solid #ffffff30;border-top:3px solid var(--accent);background:var(--secondary-light)}
.estimate-details>.eyebrow{color:var(--accent);font-size:9px}
.estimate-details ul{list-style:none;padding:0;margin:22px 0 0}
.estimate-details li{display:flex;gap:18px;padding:18px 0;border-top:1px solid #ffffff20}
.estimate-details li>span{font-family:var(--head);font-size:23px;font-style:italic;color:var(--accent)}
.estimate-details h3{font-size:24px;line-height:1.2;margin:0 0 8px}
.estimate-details p{color:#d1d2d5;font-size:13px;line-height:1.75;margin:0}
.estimate-discount{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;padding:20px 0;margin-top:44px}
.estimate-discount p{font-size:12px;line-height:1.8;margin:0;color:#d1d2d5}
.estimate-discount strong{display:block;font-size:16px;color:var(--dominant)}
.estimate-discount a{font-size:12px;color:var(--accent);text-decoration:underline;text-underline-offset:4px;flex-shrink:0}
.race-estimate-link{text-align:right;color:var(--accent)}
.race-art-bottomline .race-estimate-link b{font-size:23px;color:var(--accent);line-height:1.2}
.race-art-bottomline .race-estimate-link small{font-size:8px}
.service-estimate-panel h2{margin-bottom:22px}
.service-estimate-panel .panel-text-link{display:block;text-align:center;font-size:12px;margin:15px 0 22px;text-decoration:underline;text-underline-offset:4px;color:var(--accent)}
.service-estimate-panel .panel-discount{padding-top:16px;border-top:1px solid #ffffff30}
@media(max-width:900px){.estimate-layout{gap:35px}.estimate-details{padding:25px}.estimate-actions{gap:20px}}
@media(max-width:600px){.estimate-layout{grid-template-columns:1fr;gap:32px}.estimate-intro h2{font-size:48px}.estimate-phone{font-size:43px}.estimate-details{padding:24px}.estimate-discount{align-items:flex-start;flex-direction:column;gap:12px;margin-top:30px}.race-art-bottomline .race-estimate-link b{font-size:17px;max-width:145px}.race-art-bottomline .race-estimate-link small{font-size:7px}.hero-actions{flex-wrap:wrap;row-gap:16px}.hero-actions .button{gap:10px}.estimate-actions .button{padding:16px 18px}.service-estimate-panel h2{font-size:36px}}

/* Review cleanup: useful contacts, consistent footer and resilient narrow layouts. */
html{overflow-x:clip}
.hero::after{right:0;width:35%}
.service-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:24px}
.service-hero-actions .button{font-size:13px;padding:15px 18px}
.service-hero-actions .text-link{font-size:13px}
.subpage-footer .footer-service-area{grid-column:1/-1;margin:0;font-size:12px;line-height:1.7;color:var(--muted)}
.subpage-footer nav a{display:inline-flex;align-items:center;min-height:44px}
.faqs details>div a{text-decoration:underline;text-underline-offset:3px}
.estimate-layout>*,.estimate-details li>div{min-width:0}
.service-description p,.service-summary,.compact-coverage p{overflow-wrap:break-word}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}
@media(max-width:600px){
  .service-hero-actions{gap:16px}
  .announcement{padding:7px 16px;line-height:1.6;flex-wrap:wrap;row-gap:2px}
  .estimate-phone{font-size:clamp(34px,10.8vw,43px)}
  .final-contact>a{font-size:clamp(30px,9.5vw,38px);gap:12px}
  .footer-bottom{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
  .mobile-call{bottom:calc(14px + env(safe-area-inset-bottom,0px))}
}

/* A clear starting offer for single-item pickups. */
.hero-copy .pickup-starting,.estimate-intro>p.pickup-starting,.service-estimate-panel .pickup-starting{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:0 6px;max-width:100%;margin:0 0 20px;padding:10px 14px;border-radius:4px;background:var(--accent);color:#17191d;font-size:14px;font-weight:600;line-height:1.5}
.pickup-starting strong{white-space:nowrap;font-size:23px;font-weight:800;line-height:1.2}

/* Visible, descriptive main headings with concise local coverage. */
.heading-location{display:block;font-size:.56em;font-style:normal;font-weight:700;line-height:1.15;letter-spacing:-.1px;margin-top:.2em}
.hero h1{font-size:clamp(60px,6vw,88px);line-height:.98}
.hero h1 .heading-location{color:var(--accent)}

/* Keep navigation available at every responsive breakpoint and enlarge key touch targets. */
@media(max-width:800px){
  .menu-toggle{display:flex;flex-shrink:0;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;margin-left:0;background:none;border:0;color:var(--dominant)}
  .menu-toggle>span{height:2px;width:22px;background:var(--dominant);transition:transform .2s}
  .menu-toggle[aria-expanded="true"]>span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"]>span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .mobile-nav:not([hidden]){display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;padding:10px 25px 25px;background:var(--secondary);color:var(--dominant);border-bottom:1px solid #ffffff26;box-shadow:0 12px 15px #0002}
  .mobile-nav a{display:flex;align-items:center;min-height:44px;padding:13px 0;font-size:14px;border-bottom:1px solid #ffffff26}
  .hero-actions .text-link,.service-hero-actions .text-link,.estimate-text-link{min-height:44px;display:inline-flex;align-items:center}
}
@media(max-width:600px){.header-call{width:44px;height:44px;flex-shrink:0}.site-header{gap:8px}}
