/* GLOW DETAIL v5.1 — faithful layout reconstruction of the chosen A reference.
   The only photographic source is an excerpt of the approved visual itself.
   No text, CTA, navigation, or service-card pixels are included in that excerpt. */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');
:root{--ref-ink:#18191b;--ref-gold:#b68b4a;--ref-base:#f0ece9}
body{font-family:Montserrat,Inter,Arial,sans-serif;color:var(--ref-ink)}
.site-header{background:#f6f3f1e5;border-bottom:0}
.header-inner{height:76px;width:min(1510px,calc(100% - 96px))}
.logo{gap:0;min-width:205px;position:relative;align-self:center}
.logo-g-wrap,.logo-divider{display:none!important}
.logo-copy{display:flex;position:relative;gap:0;padding-top:15px;white-space:nowrap}
.logo-copy:before{content:'';position:absolute;top:-6px;left:10px;width:160px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='165' height='24' viewBox='0 0 165 24'%3E%3Cpath d='M2 21 C20 18 35 16 50 8 C71 -1 93 -1 112 8 C130 15 147 18 163 21' fill='none' stroke='%23242424' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;opacity:.96}
.logo-copy strong{font-size:22px;font-weight:800;letter-spacing:-1px;line-height:1.05}
.logo-copy strong em{font-style:normal;color:var(--ref-gold)}
.logo-copy small{display:none}
.menu{background:#ffffffaf;box-shadow:0 6px 22px #4235280c;padding:0 22px;gap:clamp(12px,2vw,31px);border-radius:999px}
.menu a{font-weight:700;color:#202024}
.menu a:after{background:#b88a45}
.btn-gold{background:linear-gradient(145deg,#e8bd73 0%,#b88b43 73%,#8c6935 100%);color:#fff;box-shadow:0 4px 15px #76604424}
.btn-line{border:1.3px solid #b28d59;color:#18191a;background:#ffffff9e}
.home-stage{height:500px;min-height:500px!important;background:linear-gradient(100deg,#f4efed 0%,#eee9e6 48%,#e7e1dc 100%)!important;position:relative;overflow:hidden;isolation:isolate}
.home-stage::before,.home-stage::after{display:none!important;content:none!important}
.home-hero{width:min(1510px,calc(100% - 96px));height:500px!important;min-height:500px!important;display:flex;align-items:center;text-align:left;padding:0!important;position:relative;z-index:1;overflow:visible}
.hero-copy{width:min(48%,665px);position:relative;z-index:4;flex:none;padding:0!important;transform:translateY(0)}
.hero-title,.home-hero h1.hero-title{font-family:Montserrat,Inter,Arial,sans-serif;font-size:clamp(50px,4.85vw,82px);font-weight:800;letter-spacing:-.055em;font-style:normal;white-space:nowrap;line-height:1.05;margin:0 0 13px;color:#151618}
.hero-title .gold{color:#b88b43}
.hero-subtitle,.home-hero h2.hero-subtitle{font-size:clamp(20px,1.85vw,28px);font-family:Montserrat,Inter,Arial,sans-serif;letter-spacing:-.045em;line-height:1.29;font-weight:800;margin:0 0 16px;color:#1b1c1e}
.hero-short-rule{height:2px;width:87px;background:#b88b43;margin:3px 0 17px}
.hero-description,.home-hero p.hero-description{font-size:clamp(14px,1.25vw,18px);line-height:1.55;color:#3f3e40;font-weight:500;margin:0 0 29px;max-width:535px}
.hero-actions{display:flex;justify-content:flex-start;align-items:center;gap:18px;flex-wrap:nowrap;position:relative;z-index:5}
.hero-actions .btn{min-height:51px;padding:0 25px;font-size:13px}
.hero-photo{position:absolute!important;top:0!important;bottom:0!important;left:calc((min(1510px, 100vw - 96px) - 100vw)/2)!important;width:100vw!important;height:500px!important;max-width:none!important;z-index:0;overflow:hidden!important;pointer-events:none;transform:none!important}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;max-width:none;mask-image:none!important;-webkit-mask-image:none!important}
.hero-photo::after{display:none!important;content:none!important}
.social-rail{top:50%;transform:translateY(-50%);left:max(20px,calc((100vw - 1600px)/2 + 18px));z-index:7;gap:17px;display:flex!important;padding:12px 8px;border-radius:34px;background:#ffffff44}
.social-link{font-family:Inter,sans-serif}
.social-rail .social-rule{width:1px;height:44px;background:#b88b43}
.social-rail .social-follow{font-size:10px;letter-spacing:1.8px}
.quick-services{margin:0!important;padding:0 0 12px;background:linear-gradient(#ebe5e0,#f0eae6);position:relative;z-index:2}
.quick-shell-seven{width:100%;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:13px;padding:0!important;background:none!important;border:none!important;box-shadow:none!important;border-radius:0!important}
.quick-shell-seven .quick-item,.quick-shell-seven .quick-item:nth-child(n+5){grid-column:span 3;display:flex;align-items:center;min-height:106px;gap:14px;padding:16px 20px;border-radius:22px;background:#fffcfae6;border:1px solid #fff9f4!important;box-shadow:0 14px 34px #6f564012;transition:transform .23s,box-shadow .23s;min-width:0;}
.quick-shell-seven .quick-item:nth-child(n+5){grid-column:span 4;min-height:105px}
.quick-shell-seven .quick-item:hover{transform:translateY(-3px);box-shadow:0 16px 34px #6f564021}
.quick-shell-seven .quick-item .line-icon{flex:0 0 44px;width:44px;height:44px;color:#ae8138}
.quick-shell-seven .quick-item>div{min-width:0}
.quick-shell-seven .quick-item strong{font-family:Montserrat,Inter,Arial,sans-serif;font-weight:800;color:#232223;font-size:clamp(11px,.94vw,15px);line-height:1.25;margin:0 0 6px;display:block}
.quick-shell-seven .quick-item span{color:#444144;font-size:clamp(10px,.78vw,13px);line-height:1.4;font-weight:500;display:block}
.why{background:#f7f3ef;padding:39px 0 55px}
.why-title{color:#262426}
.why-item .line-icon{color:#b68b4a}
@media(min-width:1600px){.home-hero{height:545px!important;min-height:545px!important}.home-stage{height:545px;min-height:545px!important}.hero-photo{height:545px!important}.hero-copy{transform:translateY(0)}}
@media(max-width:1250px){
 .header-inner{width:min(100% - 60px,1510px)}
 .home-hero{width:calc(100% - 100px)}
 .hero-copy{width:54%}
 .hero-title,.home-hero h1.hero-title{font-size:clamp(46px,5.6vw,68px)}
 .hero-photo{left:-50px!important}
 .quick-shell-seven{gap:10px}
 .quick-shell-seven .quick-item,.quick-shell-seven .quick-item:nth-child(n+5){padding:13px 11px;gap:11px}
 .quick-shell-seven .quick-item .line-icon{width:34px;height:34px;flex-basis:34px}
}
@media(max-width:950px){
 .header-inner{height:70px;width:calc(100% - 40px)}
 .logo-copy strong{font-size:18px}
 .logo-copy:before{width:134px;left:5px;top:-7px}
 .menu{top:70px;border-radius:0;background:#f8f6f4;padding:10px 22px 18px}
 .menu:not(.open){display:none}
 .menu.open{display:flex}
 .menu-button{display:inline-flex}
 .social-rail{display:none!important}
 .header-right>.btn{display:none}
 .home-hero{width:calc(100% - 46px)!important;height:auto!important;min-height:0!important;display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 0 0!important}
 .home-stage{height:auto;min-height:0!important}
 .hero-copy{width:100%;max-width:730px;text-align:center;padding:0!important}
 .hero-title,.home-hero h1.hero-title{font-size:clamp(46px,7.5vw,78px)}
 .hero-subtitle,.home-hero h2.hero-subtitle{font-size:clamp(20px,3.4vw,29px)}
 .hero-short-rule{margin:10px auto 16px}
 .hero-description,.home-hero p.hero-description{margin:0 auto 19px}
 .hero-actions{justify-content:center}
 .hero-photo{position:relative!important;top:auto!important;left:50%!important;bottom:auto!important;transform:translateX(-50%)!important;width:100vw!important;height:clamp(290px,47vw,490px)!important;margin:12px 0 0;align-self:center}
 .hero-photo img{object-fit:cover;object-position:72% center}
 .quick-shell-seven .quick-item,.quick-shell-seven .quick-item:nth-child(n+5){grid-column:span 6;min-height:100px;padding:13px}
 .quick-shell-seven .quick-item:last-child{grid-column:span 12}
}
@media(max-width:600px){
 .header-inner{width:calc(100% - 32px)}
 .logo{min-width:0}
 .logo-copy{padding-top:12px}
 .logo-copy strong{font-size:16px}
 .logo-copy:before{width:115px;left:0;top:-9px}
 .home-hero{width:calc(100% - 32px)!important;padding-top:23px!important}
 .hero-title,.home-hero h1.hero-title{font-size:clamp(35px,9.45vw,54px);letter-spacing:-.065em;white-space:nowrap;margin-bottom:9px}
 .hero-subtitle,.home-hero h2.hero-subtitle{font-size:clamp(16px,4vw,23px);line-height:1.24;margin-bottom:12px}
 .hero-short-rule{margin:10px auto 13px;width:57px}
 .hero-description,.home-hero p.hero-description{font-size:13px;line-height:1.48;margin-bottom:18px}
 .hero-actions{gap:8px;flex-wrap:nowrap}
 .hero-actions .btn{padding:0 13px;font-size:11px;min-height:43px;gap:7px}
 .hero-photo{height:clamp(190px,57vw,350px)!important;margin:10px 0 0}
 .hero-photo img{content:url('assets/hero-approved-mobile.webp');object-fit:contain;object-position:center bottom}
 .quick-services{padding-bottom:10px}
 .quick-shell-seven{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .quick-shell-seven .quick-item,.quick-shell-seven .quick-item:nth-child(n+5){grid-column:auto!important;min-height:109px!important;border-radius:15px!important;padding:10px 8px!important;gap:6px!important;align-items:flex-start}
 .quick-shell-seven .quick-item:last-child{grid-column:span 2!important;min-height:76px!important}
 .quick-shell-seven .quick-item .line-icon{width:26px;height:26px;flex-basis:26px;margin-top:3px}
 .quick-shell-seven .quick-item strong{font-size:10.3px;line-height:1.24;margin-bottom:4px}
 .quick-shell-seven .quick-item span{font-size:9.5px;line-height:1.31}
 .why{padding:25px 0 40px}
}
@media(max-width:355px){.hero-title,.home-hero h1.hero-title{font-size:34px}.hero-actions .btn{font-size:10px;padding:0 10px}}
@media(prefers-reduced-motion:reduce){.quick-shell-seven .quick-item:hover{transform:none}}

/* Final alignment pass: actual approved left inset; no inherited tablet column rules. */
@media(min-width:951px){
 .home-hero{flex-direction:row!important;justify-content:flex-start!important}
 .hero-copy{margin-left:clamp(45px,5.3vw,90px)!important;width:min(44%,600px)!important;max-width:600px!important;text-align:left!important}
 .hero-actions{justify-content:flex-start!important}
}
@media(max-width:950px){.hero-copy{margin-left:0!important}}
@media(max-width:600px){
 .hero-photo{height:clamp(170px,43.5vw,280px)!important; margin-top:5px!important}
 .hero-photo img{object-fit:contain;object-position:center bottom}
}

/* Medium desktop: preserve entire silhouette instead of clipping the right wheel. */
@media(min-width:951px) and (max-width:1250px){
 .hero-photo img{object-fit:contain!important;object-position:right bottom!important}
}
/* Balanced car at 951–1250px: fit it without cutting its back end. */
@media (min-width:951px) and (max-width:1250px){
 .hero-photo{display:flex!important;align-items:flex-end!important}
 .hero-photo img{height:auto!important;width:calc(100% + 180px)!important;max-width:none!important;object-fit:contain!important;transform:translateX(-130px)!important}
}
/* Tablet: full BMW and wheels visible, without a clipped rear quarter. */
@media(min-width:601px) and (max-width:950px){
 .hero-photo{display:flex!important;align-items:flex-end!important;height:clamp(245px,35vw,335px)!important}
 .hero-photo img{width:calc(100% + 80px)!important;height:auto!important;max-width:none!important;object-fit:contain!important;transform:translateX(-35px)!important}
}
/* Tablet uses a tighter, full-width composition of the approved studio photo. */
@media(min-width:601px) and (max-width:950px){
 .hero-photo{height:clamp(260px,42vw,365px)!important;display:block!important}
 .hero-photo img{content:url('assets/hero-approved-mobile.webp');width:100%!important;height:100%!important;transform:none!important;object-fit:cover!important;object-position:center center!important}
}


/* GLOW DETAIL v5.2 — only the hero image/layout is corrected.
   Constrained 1800:700 image, no 100vw overflow, no cover-cropping. */
.home-stage {background:#f3f0ed!important;overflow:hidden!important;}
.home-stage::before,.home-stage::after {display:none!important;content:none!important;}
.home-hero {
  width:min(1440px,calc(100% - 96px))!important;
  height:clamp(460px,38.9vw,560px)!important;
  min-height:0!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding:0!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  isolation:isolate;
  text-align:left!important;
}
.home-hero .hero-photo {
  position:absolute!important;inset:0!important;
  left:0!important;top:0!important;bottom:0!important;
  width:100%!important;height:100%!important;
  max-width:100%!important;
  margin:0!important;transform:none!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:0!important;
}
.home-hero .hero-photo picture {width:100%;height:100%;display:block;}
.home-hero .hero-photo img {
  display:block!important;width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center center!important;
  max-width:100%!important;max-height:100%!important;
  -webkit-mask-image:none!important;mask-image:none!important;
  filter:none!important;transform:none!important;
}
.home-hero .hero-photo::after {display:none!important;content:none!important;}
.home-hero .hero-copy {
  width:48%!important;max-width:650px!important;
  min-width:0!important;position:relative!important;z-index:2!important;
  padding:14px 0!important;
}
.home-hero h1.hero-title{font-size:clamp(43px,4.4vw,72px)!important;line-height:1.08;letter-spacing:-.05em}
.home-hero h2.hero-subtitle{font-size:clamp(19px,1.8vw,27px)!important;line-height:1.3}
.home-hero p.hero-description{max-width:440px!important}
.social-rail {left:max(16px, calc((100vw - 1560px)/2))!important;}
@media(max-width:1100px){
  .home-hero {
    width:min(100% - 48px,980px)!important;
    height:auto!important;min-height:0!important;
    display:flex!important;flex-direction:column!important;
    align-items:center!important;padding:30px 0 0!important;
    text-align:center!important;
  }
  .home-hero .hero-copy{width:100%!important;max-width:690px!important;text-align:center!important;padding:0!important;}
  .home-hero .hero-copy h1.hero-title{font-size:clamp(45px,6.6vw,68px)!important;}
  .home-hero .hero-short-rule{margin:13px auto!important;}
  .home-hero p.hero-description{margin:0 auto 18px!important;}
  .home-hero .hero-actions{justify-content:center!important;}
  .home-hero .hero-photo {
    display:block!important;position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:100%!important;height:auto!important;
    aspect-ratio:1800 / 700!important;
    margin:14px 0 0!important;overflow:hidden!important;transform:none!important;
  }
  .home-hero .hero-photo picture,.home-hero .hero-photo img{height:100%!important;width:100%!important;}
  .home-hero .hero-photo img{object-fit:contain!important;}
  .social-rail{display:none!important;}
}
@media(max-width:700px){
  .home-hero {width:calc(100% - 32px)!important;padding-top:25px!important;}
  .home-hero .hero-copy h1.hero-title{font-size:clamp(35px,10vw,52px)!important;letter-spacing:-.055em!important;}
  .home-hero .hero-copy h2.hero-subtitle{font-size:clamp(18px,4.1vw,23px)!important;}
  .home-hero .hero-photo{aspect-ratio:1185 / 565!important;width:100%!important;margin-top:17px!important;}
  .home-hero .hero-photo picture,.home-hero .hero-photo img{width:100%!important;height:100%!important;object-fit:contain!important;}
  .quick-shell-seven{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .quick-shell-seven .quick-item,.quick-shell-seven .quick-item:nth-child(n+5){grid-column:auto!important;min-width:0!important;}
  .quick-shell-seven .quick-item:last-child{grid-column:span 2!important;}
}

/* Illustrative images for three new services; maintain source framing at all sizes. */
.service-detail-photo img[src*="-illustration"] { object-fit:contain; background:#1b1c1e; }
.service-tile img[src*="-illustration"] { object-fit:cover; object-position:center; }
@media (max-width:700px) { .service-detail-photo:has(img[src*="-illustration"]) {height:auto;aspect-ratio:16/9;} }
