/* GLOW DETAIL v5.4 — stable full-car hero and high-resolution, uncropped service photos.
   Source pages, typography, original work photos and functional JS remain unchanged. */
:root{--v54-cream:#f4f1ee;--v54-gold:#b88b43}
html{overflow-x:clip}
body,.site{overflow-x:clip}
/* Hero: explicitly assign one photo column, not an expanding 100vw absolute layer. */
.home-stage{
  height:auto!important;min-height:0!important;
  background:linear-gradient(90deg,#f5f2ef 0%,#f3f0ed 38%,#eeeae6 100%)!important;
  overflow:hidden!important;isolation:isolate;
}
.home-stage::before,.home-stage::after{content:none!important;display:none!important}
.home-hero{
  width:min(1660px,calc(100% - 112px))!important;
  max-width:1660px!important;margin:0 auto!important;
  min-height:0!important;height:auto!important;
  display:grid!important;grid-template-columns:minmax(0,45%) minmax(0,55%)!important;
  align-items:center!important;justify-content:stretch!important;
  padding:26px 0 30px!important;gap:0!important;overflow:visible!important;
  text-align:left!important;position:relative!important;
}
.home-hero .hero-copy{
  grid-column:1!important;grid-row:1!important;
  position:relative!important;z-index:2!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:14px 0 14px 22px!important;
  text-align:left!important;transform:none!important;
}
.home-hero h1.hero-title{font-size:clamp(48px,4.6vw,79px)!important;white-space:nowrap!important}
.home-hero h2.hero-subtitle{font-size:clamp(20px,1.85vw,30px)!important}
.home-hero .hero-short-rule{margin:7px 0 18px!important}
.home-hero p.hero-description{margin:0 0 24px!important;max-width:540px!important}
.home-hero .hero-actions{justify-content:flex-start!important;flex-wrap:wrap!important}
.home-hero .hero-photo{
  grid-column:2!important;grid-row:1!important;
  display:block!important;position:relative!important;
  inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
  z-index:1!important;margin:0!important;padding:0!important;
  transform:none!important;width:100%!important;max-width:none!important;
  height:auto!important;min-height:0!important;
  overflow:visible!important;aspect-ratio:auto!important;
  align-self:end!important;pointer-events:none!important;
}
.home-hero .hero-photo picture{display:block!important;width:100%!important;height:auto!important}
.home-hero .hero-photo img{
  display:block!important;width:100%!important;height:auto!important;
  max-width:100%!important;max-height:none!important;
  object-fit:contain!important;object-position:center bottom!important;
  transform:none!important;filter:none!important;content:normal;
  -webkit-mask-image:none!important;mask-image:none!important;
}
.home-hero .hero-photo::after{content:none!important;display:none!important}
@media(min-width:1101px) and (max-width:1450px){
 .home-hero{width:calc(100% - 82px)!important;grid-template-columns:minmax(0,44%) minmax(0,56%)!important}
 .home-hero .hero-copy{padding-left:24px!important}
 .home-hero h1.hero-title{font-size:clamp(40px,4.45vw,65px)!important}
 .home-hero h2.hero-subtitle{font-size:clamp(20px,1.9vw,27px)!important}
 .home-hero p.hero-description{font-size:clamp(14px,1.25vw,17px)!important}
}
@media(max-width:1100px){
 .home-hero{
  width:calc(100% - 46px)!important;height:auto!important;min-height:0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
  padding:30px 0 18px!important;text-align:center!important;
 }
 .home-hero .hero-copy{order:0!important;width:100%!important;max-width:760px!important;text-align:center!important;padding:0!important}
 .home-hero h1.hero-title{font-size:clamp(44px,7.2vw,72px)!important}
 .home-hero h2.hero-subtitle{font-size:clamp(19px,3vw,28px)!important}
 .home-hero .hero-short-rule{margin:10px auto 15px!important}
 .home-hero p.hero-description{margin:0 auto 17px!important}
 .home-hero .hero-actions{justify-content:center!important}
 .home-hero .hero-photo{order:1!important;width:min(100%,860px)!important;margin:12px auto 0!important;position:relative!important;left:auto!important;transform:none!important}
 .social-rail{display:none!important}
}
@media(max-width:700px){
 .home-hero{width:calc(100% - 28px)!important;padding:22px 0 15px!important}
 .home-hero .hero-copy{max-width:100%!important}
 .home-hero h1.hero-title{font-size:clamp(35px,9.35vw,52px)!important;letter-spacing:-.06em!important}
 .home-hero h2.hero-subtitle{font-size:clamp(17px,4.25vw,23px)!important}
 .home-hero p.hero-description{font-size:13px!important;line-height:1.45!important}
 .home-hero .hero-actions{gap:9px!important;flex-wrap:nowrap!important}
 .home-hero .hero-actions .btn{font-size:10px!important;min-height:42px!important;padding:0 12px!important}
 .home-hero .hero-photo{width:100%!important;margin:14px auto 0!important;aspect-ratio:auto!important;height:auto!important}
 .home-hero .hero-photo img{width:100%!important;height:auto!important;object-fit:contain!important}
 .quick-services{margin:0!important}
}
/* Service pages: naturally sized editorial photography, not tiny background-esque cropped blocks. */
.service-detail-hero{padding:clamp(42px,4.7vw,78px) 0 clamp(52px,5vw,85px)!important}
.service-detail-layout{
 display:grid!important;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)!important;
 gap:clamp(28px,4.2vw,72px)!important;align-items:center!important;
}
.service-detail-copy{min-width:0!important}
.service-detail-copy h1{font-size:clamp(39px,4.4vw,70px)!important;overflow-wrap:normal}
.service-detail-photo{
 width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
 aspect-ratio:auto!important;display:block!important;
 overflow:hidden!important;border-radius:22px!important;
 box-shadow:0 20px 46px rgba(48,39,30,.12)!important;
 background:#e8e4e0!important;
}
.service-detail-photo img,.service-detail-photo img[src*='-illustration']{
 display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 filter:none!important;transform:none!important;image-rendering:auto!important;
}
@media(max-width:920px){
 .service-detail-layout{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}
 .service-detail-hero{padding:38px 0 45px!important}
 .service-detail-photo{width:100%!important;max-width:850px!important;margin:0 auto!important}
 .service-detail-copy h1{font-size:clamp(37px,6.5vw,57px)!important}
}
@media(max-width:560px){
 .service-detail-hero{padding:30px 0 36px!important}
 .service-detail-layout{gap:22px!important}
 .service-detail-copy h1{font-size:clamp(32px,8.4vw,43px)!important;letter-spacing:-1.5px!important}
 .service-detail-copy h2{font-size:20px!important;margin-bottom:15px!important}
 .service-detail-photo{border-radius:16px!important}
 .detail-hero-actions{gap:8px!important}
}
/* Softly connect the photographic bay to the ivory page; no rectangular photo edges. */
@media(min-width:1101px){
 .home-hero .hero-photo::after{
  content:''!important;display:block!important;position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;
  background:
   linear-gradient(to right,#f3f0ed 0%,rgba(243,240,237,.55) 4%,transparent 12%,transparent 98%,#eeeae6 100%),
   linear-gradient(to bottom,#f2efec 0%,transparent 10%,transparent 96%,#f0ece8 100%)!important;
 }
}
@media(min-width:701px) and (max-width:1100px){
 .home-hero .hero-photo::after{
  content:''!important;display:block!important;position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;
  background:linear-gradient(to bottom,#f2efec 0%,transparent 12%,transparent 89%,#f0ece8 100%)!important;
 }
}
/* Hero full-scene variant: keep whole original 1800×700 photo in a matching ratio.
   The title lives over the intentionally light left part; no photo-card seam. */
@media(min-width:1101px){
 .home-hero{width:min(1800px,100%)!important;max-width:1800px!important;aspect-ratio:18/7!important;height:auto!important;min-height:0!important;display:block!important;padding:0!important;}
 .home-hero .hero-copy{position:absolute!important;left:clamp(64px,7.7vw,148px)!important;top:50%!important;transform:translateY(-50%)!important;width:min(45%,650px)!important;max-width:650px!important;z-index:3!important;padding:0!important;}
 .home-hero .hero-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:0!important;display:block!important;}
 .home-hero .hero-photo picture{width:100%!important;height:100%!important;display:block!important;}
 .home-hero .hero-photo img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;}
 .home-hero .hero-photo::after{background:linear-gradient(to right,rgba(243,240,237,.24),transparent 29%,transparent 98%,#eeeae6),linear-gradient(to bottom,#f2efec 0%,transparent 5%,transparent 97%,#f0ece8 100%)!important}
}
