/* Next Coat shared styles */

/* Quote box inside the hero on service pages */
.nc-hq{box-sizing:border-box;min-width:0;display:flex;flex-direction:column;gap:14px;background:rgba(255,255,255,.04);border:1px solid #2A364B;border-radius:18px;padding:28px 24px;scroll-margin-top:96px}
main section .nc-hq h2{margin:0!important;font-weight:500!important;font-size:clamp(28px,2.6vw,38px)!important;line-height:1.05!important;letter-spacing:-0.035em!important}
.nc-hq .nc-hq-s{margin:0;color:#C7CDD8;font-size:16px}
.nc-hq form{flex:none!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
.nc-hq form label{color:#FFFFFF}
@media (max-width:1023px){
  .nc-svh.nc-svh-q>div[style*="flex-wrap"]>div:first-child{min-height:0!important;padding:36px 0 32px!important}
  .nc-svh-q .nc-hq{margin-bottom:40px}
}
@media (min-width:1024px){
  .nc-svh.nc-svh-q>div[style*="flex-wrap"]{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(390px,500px);column-gap:56px;align-items:center}
  .nc-svh.nc-svh-q>div[style*="flex-wrap"]>div:first-child{grid-column:1;grid-row:1;max-width:none!important}
  .nc-svh.nc-svh-q>div[style*="flex-wrap"]>.nc-hq{grid-column:2;grid-row:1;align-self:center;padding:32px 30px}
  .nc-svh.nc-svh-q>div[style*="flex-wrap"]>.nc-svh-photo,.nc-svh.nc-svh-q>div[style*="flex-wrap"]>.nc-xwrap{grid-column:1 / -1;grid-row:2}
}

/* Space between Google review cards (one shared style) */
section[aria-label="Customer review"] .nc-rvc+.nc-rvc{margin-top:16px!important}
.nc-rvrow,.nc-rvtrack{gap:16px!important}
@keyframes nc-rvs{to{transform:translateX(calc(-50% - 8px))}}
@media (min-width:768px){
  section[aria-label="Customer review"] .nc-rvc+.nc-rvc{margin-top:24px!important}
  .nc-rvrow,.nc-rvtrack{gap:24px!important}
  @keyframes nc-rvs{to{transform:translateX(calc(-50% - 12px))}}
}

/* Areas map: keep its real proportions */
.nc-svh-photo.nc-map img{object-fit:contain}

/* decorative footer watermark */
.nc-wm::before{content:attr(data-t)}

@media(min-width:1024px){main section.nc-svh-q h1#sv-h1.nc-xh1{font-size:clamp(40px,4.6vw,66px)!important;white-space:normal!important}}

:where(img){height:auto}

@media(min-width:1024px){.nc-svh.nc-svh-q>div[style*="flex-wrap"]>.nc-svh-photo.nc-map{max-width:760px;width:100%;justify-self:center}}
.nc-maphero.nc-svh-q .nc-hq{margin-bottom:8px}
/* phone: big page photos keep their real shape instead of a tall crop */
@media(max-width:760px){
main .nc-svh .nc-svh-photo:not(.nc-map) img,.nc-svh .nc-svh-photo:not(.nc-map) img{height:auto!important;max-height:80svh;aspect-ratio:auto}
}
@media(max-width:760px){img.nc-por{height:auto!important;aspect-ratio:3/4;max-height:80svh;object-fit:cover;width:100%}}
@media(max-width:760px){
img.nc-por:not(.nc-gal-item):not([style*="aspect-ratio: 7 / 9"]){aspect-ratio:3/4!important}
main img[style*="object-fit: cover"][style*="width: 100%"]:not(.nc-por):not(.nc-gal-item):not([style*="aspect-ratio"]){height:auto!important;max-height:80svh}
}
/* team photos: smaller on desktop */
@media(min-width:1024px){img[style*="aspect-ratio: 7 / 9"]{max-width:250px!important;margin-left:0!important;margin-right:auto!important}}
