/* ===== V41: back to the original full-width photo heroes (like the Financing page) =====
   The photo spans edge to edge on every screen size; a dark wash on the left keeps the text
   readable; the photo starts just under the navigation so heads stay clear of the menu. */
@media (min-width:768px){
  .v28-hero-img,.v32-img,section#top .v26-hero-img{
    left:0 !important;right:auto !important;width:100% !important;max-width:none !important;min-width:0 !important;
    aspect-ratio:auto !important;object-fit:cover !important;transform:none !important;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 100px) !important;
            mask-image:linear-gradient(to bottom,transparent 0,#000 100px) !important}
  .v28-hero-img{top:70px !important;height:calc(100% - 70px) !important}
  .v32-img{top:0 !important;height:100% !important}
  section#top .v26-hero-img{top:96px !important;height:calc(100% - 96px) !important}

  /* subjects that sit near the middle of their photo: widen the photo so they land right of the text */
  .v28-about-img,.v34-el-img,
  .v32-img[src*="ac-repair"],.v32-img[src*="indoor-air-quality"]{transform:translateX(18%) !important}
  .v32-img[src*="ac-replacement"]{transform:translateX(26%) !important}
  .v28-areas-img{transform:translateX(8%) !important}
  .v28-about-img,.v34-el-img,.v28-areas-img,
  .v32-img[src*="ac-repair"],.v32-img[src*="indoor-air-quality"],.v32-img[src*="ac-replacement"]{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 28%),linear-gradient(to bottom,transparent 0,#000 100px) !important;
    -webkit-mask-composite:source-in !important;
            mask-image:linear-gradient(to right,transparent 0,#000 28%),linear-gradient(to bottom,transparent 0,#000 100px) !important;
            mask-composite:intersect !important}

  .v28-hero{min-height:clamp(520px,40vw,780px) !important}
  .v32-hero{min-height:clamp(480px,36vw,720px) !important}
  section#top{min-height:min(92vh,980px) !important}

  .v28-shade,.v32-shade{background:
    linear-gradient(to bottom,#070b15 0,rgba(7,11,21,.55) 120px,rgba(7,11,21,0) 240px),
    linear-gradient(to top,#0a0f1c 0,rgba(10,15,28,0) 110px),
    linear-gradient(90deg,rgba(7,11,21,.92) 0%,rgba(7,11,21,.78) 28%,rgba(7,11,21,.3) 52%,rgba(7,11,21,0) 68%) !important}
}
/* vertical framing: keep faces in view */
@media (min-width:768px){
  .v28-contact-img{object-position:center 18% !important}
  .v28-about-img{object-position:center 30% !important}
  .v28-areas-img{object-position:center 45% !important}
  .v34-el-img{object-position:center 8% !important}
  .v32-city{object-position:center 30% !important}
  .v32-svc{object-position:center 35% !important}
  section#top .v26-hero-img{object-position:center 25% !important}
}
.v40-pm{text-align:center;max-width:42rem;margin:22px auto 0;font-size:14px;color:rgba(255,255,255,.7)}

/* Housecall Pro "Book online" buttons */
.v41-book-bar{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-weight:700;font-size:14px;color:#fff;background:linear-gradient(90deg,#dc2626,#ef4444);padding:0 18px;height:40px;white-space:nowrap;box-shadow:0 6px 18px rgba(220,38,38,.35);cursor:pointer;border:0}
.v41-book-bar svg{width:16px;height:16px}
@media (max-width:767px){.v41-book-bar{padding:0 12px;font-size:13px}}
.v41-book-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:16px 18px;border-radius:14px;background:linear-gradient(90deg,rgba(220,38,38,.14),rgba(220,38,38,.04));border:1px solid rgba(239,68,68,.35)}
.v41-book-card b{display:block;color:#fff;font-size:15px}
.v41-book-card span{color:rgba(255,255,255,.7);font-size:13px}
.v41-book-card button{display:inline-flex;align-items:center;gap:8px;background:#dc2626;color:#fff;border:0;border-radius:8px;padding:11px 16px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.v41-book-card button svg{width:16px;height:16px;flex-shrink:0}
.v33-contact-es svg{width:16px;height:16px;flex-shrink:0}
@media (max-width:520px){.v41-book-bar{padding:0;width:44px;flex:0 0 44px}.v41-book-bar span{display:none}}

/* v42: pulsing "Now serving" dot */
.v26-area-badge i{position:relative;animation:v42-dot 2s ease-out infinite}
@keyframes v42-dot{0%{box-shadow:0 0 0 0 rgba(52,211,153,.6)}70%{box-shadow:0 0 0 9px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
@media (prefers-reduced-motion:reduce){.v26-area-badge i{animation:none;box-shadow:0 0 0 4px rgba(52,211,153,.2)}}
