:root{--bg:#050607;--panel:#0d0f12;--line:#252a31;--blue:#0b67e8;--blue2:#1b82ff;--white:#f7f8fa;--muted:#aeb4be}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:Inter,sans-serif;line-height:1.5}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input{font:inherit}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:32px;padding:10px 3vw;background:rgba(4,5,6,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.logo-wrap{width:190px}.logo-wrap img{width:100%}.nav{display:flex;gap:24px;margin-left:auto}.nav a{font-size:.9rem}.nav a:hover{color:var(--blue2)}.header-meta{display:flex;align-items:center;gap:18px;font-size:.85rem}.menu{display:none;background:none;color:white;border:1px solid var(--line);padding:8px 12px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 22px;border:1px solid var(--blue);border-radius:5px;background:#0b0d10;color:white;text-transform:uppercase;font-weight:700;font-size:.78rem;letter-spacing:.04em;cursor:pointer}.button.primary{background:linear-gradient(135deg,var(--blue),var(--blue2));border-color:transparent}.button.secondary{border-color:#68717f;background:rgba(0,0,0,.35)}.button.small{min-height:40px;padding:0 14px;font-size:.7rem}.button.disabled{opacity:.75}.hero{position:relative;min-height:720px;overflow:hidden;border-bottom:1px solid var(--line)}.hero-photo{position:absolute;inset:0;background:url('assets/hero-honda.jpg') center 58%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.86) 38%,rgba(0,0,0,.25) 70%,rgba(0,0,0,.35)),linear-gradient(0deg,#050607,transparent 30%)}.hero-content{position:relative;z-index:2;padding:115px 5vw 180px;max-width:760px}.kicker{text-transform:uppercase;color:var(--blue2);font-weight:700;letter-spacing:.13em;font-size:.8rem}.hero h1,.heading h2,.work-copy h2,.booking h2,.help h2{font-family:Oswald,sans-serif;text-transform:uppercase;line-height:1.05}.hero h1{font-size:clamp(3.5rem,7vw,7rem);margin:.15em 0}.hero h1 span{color:var(--blue2)}.hero-content>p:not(.kicker,.quick-contact){font-size:1.12rem;color:#d3d6dc;max-width:590px}.actions{display:flex;gap:14px;margin:28px 0 16px}.quick-contact a{color:var(--blue2)}.trust{position:absolute;z-index:3;left:4vw;right:4vw;bottom:28px;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(7,9,12,.86);border:1px solid var(--line);backdrop-filter:blur(10px)}.trust div{padding:20px 28px;border-right:1px solid var(--line)}.trust div:last-child{border:0}.trust strong,.trust span{display:block}.trust span{color:var(--muted);font-size:.83rem}.benefits{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#080a0c}.benefits article{padding:25px 3vw;border-right:1px solid var(--line)}.benefits strong,.benefits span{display:block}.benefits strong{font-size:.82rem;text-transform:uppercase}.benefits span{font-size:.82rem;color:var(--muted);margin-top:5px}.section{padding:85px 4vw}.section.dark{background:#090b0e}.heading{text-align:center;max-width:760px;margin:0 auto 42px}.heading h2{font-size:clamp(2.3rem,4vw,4rem);margin:.15em 0}.heading>p:last-child{color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.service img{width:100%;height:240px;object-fit:cover}.service-body{padding:23px}.service h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:1.5rem;margin:0 0 8px}.price{color:var(--muted);text-transform:uppercase;font-size:.75rem}.price b{display:block;color:var(--blue2);font-size:1.65rem}.service p{color:var(--muted);min-height:72px}.service .button{width:100%}.service.featured{border-color:var(--blue)}.badge{position:absolute;z-index:2;top:0;left:50%;transform:translateX(-50%);background:var(--blue);padding:7px 18px;border-radius:0 0 6px 6px;text-transform:uppercase;font-size:.7rem;font-weight:700}.featured-work{display:grid;grid-template-columns:1.35fr .65fr;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.before-after{position:relative;min-height:530px;overflow:hidden}.before-after img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.after-img{clip-path:inset(0 0 0 50%)}.before-after input{position:absolute;z-index:3;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}.before-after:after{content:"";position:absolute;z-index:2;top:0;bottom:0;left:50%;width:2px;background:white}.label{position:absolute;z-index:4;top:18px;padding:7px 12px;background:rgba(0,0,0,.75);text-transform:uppercase;font-size:.7rem}.label.before{left:18px}.label.after{right:18px;background:var(--blue)}.work-copy{display:flex;flex-direction:column;justify-content:center;padding:50px;background:#0b0d10}.work-copy h2{font-size:3.4rem;margin:.2em 0}.work-copy p:not(.kicker){color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.gallery img{width:100%;height:280px;object-fit:cover;border:1px solid var(--line);border-radius:6px}.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.videos button{position:relative;padding:0;background:none;border:1px solid var(--line);border-radius:6px;overflow:hidden;cursor:pointer}.videos img{width:100%;height:220px;object-fit:cover}.videos span{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:white;font-weight:700}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reviews blockquote{margin:0;padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.stars{color:#ffc332;letter-spacing:.12em}.reviews p{font-size:1.02rem}.reviews cite{color:var(--muted);font-style:normal}.review-actions{display:flex;justify-content:center;gap:14px;margin-top:28px}.booking{display:grid;grid-template-columns:1fr auto;align-items:center;gap:50px;padding:65px 5vw;background:linear-gradient(110deg,#0a3f92,#080a0d 65%)}.booking h2{font-size:3rem;margin:.15em 0}.booking p{max-width:850px}.steps{display:flex;gap:24px;flex-wrap:wrap;margin-top:20px}.steps span{font-size:.78rem;text-transform:uppercase}.help{display:grid;grid-template-columns:1fr .65fr;gap:40px}.help h2{font-size:3.8rem;margin:.2em 0}.help>div>p:not(.kicker){color:var(--muted)}.contact-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.location-card{padding:35px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.location-card h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:2rem}.footer{display:grid;grid-template-columns:220px 1fr 1fr 1fr;align-items:center;gap:35px;padding:35px 4vw;border-top:1px solid var(--line);background:#040506;color:var(--muted);font-size:.83rem}.footer img{width:210px}.footer div{display:flex;flex-direction:column;gap:7px}.modal{display:none;position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.9);padding:5vw;align-items:center;justify-content:center}.modal.open{display:flex}.modal video{max-width:1100px;max-height:80vh;width:100%;background:black}.modal-close{position:absolute;top:24px;right:30px;background:none;border:0;color:white;font-size:3rem;cursor:pointer}.chooser-card{width:min(700px,100%);background:#0b0d10;border:1px solid var(--line);padding:45px;border-radius:10px}.chooser-card h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:3rem}.chooser-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chooser-options button{padding:22px;background:#12151a;border:1px solid var(--blue);color:white;cursor:pointer}.chooser-options button:hover{background:var(--blue)}#chooser-result{font-size:1.2rem;color:var(--blue2);font-weight:700}
@media(max-width:1100px){.header{flex-wrap:wrap}.nav{display:none;order:4;width:100%;flex-direction:column}.nav.open{display:flex}.menu{display:block;margin-left:auto}.header-meta{display:none}.services{grid-template-columns:repeat(2,1fr)}.featured-work{grid-template-columns:1fr}.before-after{min-height:480px}.benefits{grid-template-columns:repeat(2,1fr)}.footer{grid-template-columns:1fr 1fr}.logo-wrap{width:160px}}
@media(max-width:700px){.hero{min-height:780px}.hero-photo{background-position:62% center}.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,.9) 55%,#050607)}.hero-content{padding:90px 22px 260px}.hero h1{font-size:3.4rem}.actions,.review-actions{flex-direction:column}.trust{grid-template-columns:1fr;bottom:15px}.trust div{padding:12px 18px;border-right:0;border-bottom:1px solid var(--line)}.benefits,.services,.gallery,.videos,.reviews,.help,.footer{grid-template-columns:1fr}.section{padding:65px 20px}.service img{height:220px}.featured-work{display:block}.before-after{min-height:380px}.work-copy{padding:30px}.gallery img{height:240px}.booking{grid-template-columns:1fr;padding:55px 22px}.chooser-options{grid-template-columns:1fr}.footer{padding:30px 22px}.footer img{width:180px}}


/* Final natural-hero and portfolio refinements */
.natural-hero .hero-photo{
  background-image:url('assets/hero-honda.jpg');
  background-position:center 55%;
  filter:saturate(1.03) contrast(1.02);
}
.section-divider{
  display:flex;align-items:center;gap:18px;justify-content:center;
  margin:0 auto 46px;max-width:980px;color:#d7dbe2;text-transform:uppercase;
  letter-spacing:.12em;font-size:.78rem
}
.section-divider:before,.section-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--blue),transparent)}
.portfolio-grid{display:grid;grid-template-columns:2fr repeat(2,1fr);gap:14px;margin-bottom:24px}
.detail-card{position:relative;min-height:300px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#090b0e}
.detail-card-feature{grid-row:span 2;min-height:614px}
.detail-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.detail-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px;background:linear-gradient(transparent,rgba(0,0,0,.96))}
.detail-overlay h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:1.5rem;margin:6px 0}
.detail-overlay p{margin:0;color:#c4c9d1;font-size:.84rem}
.detail-tag{display:inline-block;padding:5px 9px;border-radius:4px;background:var(--blue);font-size:.68rem;text-transform:uppercase;font-weight:700}
.mini-before-after{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr}
.mini-before-after img{position:static;width:100%;height:100%;object-fit:cover}
.compact-reviews{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:stretch;padding-top:52px;padding-bottom:52px}
.review-badge{display:flex;flex-direction:column;justify-content:center;padding:28px;background:#0b0d10;border:1px solid var(--line);border-radius:8px}
.review-badge strong{font-family:Oswald,sans-serif;font-size:4rem;line-height:1}
.review-badge .stars{font-size:1.2rem;margin:10px 0}
.review-badge small{color:var(--muted)}
.live-review-shell{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:28px;background:#0b0d10;border:1px solid var(--line);border-radius:8px}
.live-review-placeholder{max-width:760px}
.google-label{color:var(--blue2);text-transform:uppercase;font-weight:700;letter-spacing:.08em}
.live-review-placeholder p{font-size:1.05rem;margin:.6em 0}
.live-review-placeholder small{color:var(--muted)}
.live-review-shell .review-actions{margin:0;flex-direction:column;min-width:220px}
.mobile-book{display:none}
@media(max-width:1000px){
  .portfolio-grid{grid-template-columns:1fr 1fr}
  .detail-card-feature{grid-column:1/-1;grid-row:auto;min-height:480px}
  .compact-reviews{grid-template-columns:1fr}
  .live-review-shell{grid-template-columns:1fr}
  .live-review-shell .review-actions{flex-direction:row;min-width:0}
}
@media(max-width:700px){
  body{padding-bottom:64px}
  .natural-hero .hero-photo{background-position:58% center}
  .portfolio-grid{grid-template-columns:1fr}
  .detail-card,.detail-card-feature{min-height:360px}
  .compact-reviews{padding:45px 20px}
  .live-review-shell .review-actions{flex-direction:column}
  .mobile-book{
    display:flex;position:fixed;z-index:90;left:0;right:0;bottom:0;
    min-height:58px;align-items:center;justify-content:center;
    background:linear-gradient(135deg,var(--blue),var(--blue2));color:white;
    text-transform:uppercase;font-weight:800;letter-spacing:.06em;
    box-shadow:0 -8px 30px rgba(0,0,0,.45)
  }
}


.photo-proof{display:block;margin-top:20px;color:var(--muted);font-size:.9rem}
.review-carousel{position:relative;min-height:190px;padding:12px 52px}
.review-slide{display:none}
.review-slide.active{display:block}
.review-slide p{font-size:1.12rem;line-height:1.7;margin:.7em 0}
.review-slide small{color:var(--muted)}
.review-controls{display:flex;align-items:center;justify-content:space-between;margin-top:18px}
.review-controls>button{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#11151a;color:white;font-size:1.5rem;cursor:pointer}
.review-dots{display:flex;gap:8px}
.review-dots button{width:8px;height:8px;border:0;border-radius:50%;background:#4a4f58;padding:0}
.review-dots button.active{background:var(--blue2)}
.review-side{min-width:250px}
.integration-note{color:var(--muted);font-size:.85rem;max-width:300px}
.booking-demo{display:block}
.booking-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:30px;padding:28px;background:#0b0d10;border:1px solid var(--line);border-radius:8px}
.booking-form label{display:flex;flex-direction:column;gap:8px;font-size:.78rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em}
.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:13px;background:#12161c;border:1px solid #36404e;color:white;border-radius:5px}
.booking-wide{grid-column:1/-1}
.deposit-note{padding:16px;background:#0e223f;border:1px solid #215cad;border-radius:5px;color:#dce9fb;font-size:.9rem}
.booking-confirmation{margin-top:20px;padding:24px;background:#0b2d1d;border:1px solid #1e7c4c;border-radius:8px}
.photo-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1200px;width:100%}
.photo-modal-grid img{width:100%;max-height:78vh;object-fit:contain;background:black}
@media(max-width:700px){
  .review-carousel{padding:8px}
  .booking-form{grid-template-columns:1fr;padding:20px}
  .booking-wide{grid-column:auto}
  .photo-modal-grid{grid-template-columns:1fr}
}


.service-video{
  display:block;width:100%;height:240px;object-fit:cover;background:#050607
}
.all-reviews-card{
  width:min(900px,100%);max-height:84vh;overflow:auto;
  background:#0b0d10;border:1px solid var(--line);border-radius:10px;padding:38px
}
.all-reviews-card h2{
  font-family:Oswald,sans-serif;text-transform:uppercase;font-size:3rem;margin:.15em 0
}
.all-reviews-card article{
  padding:24px 0;border-top:1px solid var(--line)
}
.all-reviews-card article p{font-size:1.05rem;line-height:1.7}
.all-reviews-card small,.reviews-status{color:var(--muted)}
.all-reviews-card .review-actions{justify-content:flex-start}
@media(max-width:700px){
  .service-video{height:220px}
  .all-reviews-card{padding:25px}
}


.live-google-reviews{
  background:#07090b;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.google-review-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  max-width:1180px;
  margin:0 auto 24px;
  padding:22px 26px;
  background:#0b0d10;
  border:1px solid var(--line);
  border-radius:8px;
}
.google-review-summary>div{
  display:flex;
  align-items:center;
  gap:14px;
}
.google-review-summary strong{
  font-family:Oswald,sans-serif;
  font-size:2.8rem;
  line-height:1;
}
.google-review-summary small{
  color:var(--muted);
}
.elfsight-wrap{
  max-width:1180px;
  margin:0 auto;
  min-height:260px;
  padding:20px;
  background:#0b0d10;
  border:1px solid var(--line);
  border-radius:8px;
  overflow:hidden;
}
.review-footer-actions{
  display:flex;
  justify-content:center;
  gap:14px;
  margin-top:24px;
}
@media(max-width:700px){
  .google-review-summary{
    align-items:flex-start;
    flex-direction:column;
  }
  .google-review-summary>div{
    flex-wrap:wrap;
  }
  .review-footer-actions{
    flex-direction:column;
  }
  .elfsight-wrap{
    padding:10px;
  }
}


.service-media-button,
.detail-video-button{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  border:0;
  background:#050607;
  color:white;
  cursor:pointer;
  overflow:hidden;
}
.service-media-button{
  height:240px;
}
.service-media-button img,
.detail-video-button img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease, filter .35s ease;
}
.service-media-button:hover img,
.detail-video-button:hover img{
  transform:scale(1.025);
  filter:brightness(.78);
}
.media-play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:rgba(11,103,232,.92);
  border:2px solid rgba(255,255,255,.9);
  box-shadow:0 10px 30px rgba(0,0,0,.45);
  font-size:1.25rem;
  padding-left:4px;
}
.media-caption{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  padding:9px 12px;
  border-radius:4px;
  background:rgba(0,0,0,.72);
  font-size:.7rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.detail-video-button{
  position:absolute;
  inset:0;
  height:100%;
}
.detail-video-button + .detail-overlay{
  pointer-events:none;
}
@media(max-width:700px){
  .service-media-button{height:220px}
}


/* Launch candidate refinements */
.launch-services .services{max-width:1320px;margin:0 auto}
.launch-services .service-body{padding:20px}
.launch-services .service p{min-height:54px;font-size:.9rem}
.launch-services .service h3{font-size:1.35rem}
.launch-services .price b{font-size:1.45rem}
.launch-services .service img,
.launch-services .service-media-button{height:215px}

.featured-results{padding-top:78px;padding-bottom:78px}
.featured-results-grid{
  display:grid;
  grid-template-columns:1fr 1.15fr 1fr;
  gap:16px;
  max-width:1320px;
  margin:0 auto;
}
.result-card{
  position:relative;
  min-height:460px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:9px;
  background:#090b0e;
  cursor:pointer;
}
.result-card>img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease, filter .45s ease;
}
.result-card:hover>img,
.result-card:focus>img{
  transform:scale(1.025);
  filter:brightness(.84);
}
.result-card:focus{outline:2px solid var(--blue2);outline-offset:3px}
.result-feature{min-height:510px}
.result-overlay{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:27px;
  background:linear-gradient(transparent,rgba(0,0,0,.96) 43%);
}
.result-overlay h3,.result-copy h3{
  margin:7px 0 5px;
  font-family:Oswald,sans-serif;
  font-size:1.85rem;
  text-transform:uppercase;
}
.result-overlay p,.result-copy p{margin:0;color:#c5cad2;font-size:.88rem}
.result-action{
  display:block;
  margin-top:16px;
  color:var(--blue2);
  font-size:.76rem;
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:.04em;
}
.correction-card{display:flex;flex-direction:column;cursor:default}
.compact-slider{min-height:330px;flex:1}
.result-copy{padding:23px;background:#0b0d10;border-top:1px solid var(--line)}

.compact-live-reviews{padding-top:58px;padding-bottom:58px}
.compact-live-reviews .heading{margin-bottom:24px}
.compact-live-reviews .google-review-summary{padding:16px 22px;margin-bottom:14px}
.compact-live-reviews .google-review-summary strong{font-size:2.2rem}
.compact-live-reviews .elfsight-wrap{min-height:190px;padding:12px}
.compact-live-reviews .review-footer-actions{margin-top:16px}

.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .65s ease, transform .65s ease;
}
.reveal.visible{
  opacity:1;
  transform:none;
}
.service,.result-card,.button{
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, filter .25s ease;
}
.service:hover{
  transform:translateY(-5px);
  border-color:#3a79c9;
  box-shadow:0 18px 45px rgba(0,0,0,.26);
}
.button:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(11,103,232,.22);
}
@media(max-width:1050px){
  .featured-results-grid{grid-template-columns:1fr 1fr}
  .result-feature{grid-column:span 1}
  .correction-card{grid-column:1/-1;display:grid;grid-template-columns:1.3fr .7fr}
}
@media(max-width:700px){
  .launch-services .service img,
  .launch-services .service-media-button{height:205px}
  .featured-results-grid{grid-template-columns:1fr}
  .result-card,.result-feature{min-height:390px}
  .correction-card{display:flex}
  .compact-slider{min-height:330px}
}


/* Pricing page */
.active-link{color:var(--blue2)}
.pricing-hero{
  position:relative;
  min-height:470px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:url('assets/mazda-full-detail.jpg') center 55%/cover no-repeat;
  border-bottom:1px solid var(--line)
}
.pricing-hero-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.78) 48%,rgba(0,0,0,.28)),
             linear-gradient(0deg,#050607,transparent 45%)
}
.pricing-hero-content{
  position:relative;z-index:2;
  max-width:760px;
  padding:90px 5vw
}
.pricing-hero h1{
  margin:.15em 0;
  font-family:Oswald,sans-serif;
  font-size:clamp(3rem,6vw,6rem);
  line-height:1;
  text-transform:uppercase
}
.pricing-hero-content>p:not(.kicker){max-width:680px;color:#d4d8df;font-size:1.05rem}
.pricing-intro{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:1180px;
  margin:-42px auto 0;
  position:relative;z-index:3;
  background:#0b0d10;
  border:1px solid var(--line);
  border-radius:8px;
  overflow:hidden
}
.pricing-intro article{padding:24px 30px;border-right:1px solid var(--line)}
.pricing-intro article:last-child{border-right:0}
.pricing-intro strong,.pricing-intro span{display:block}
.pricing-intro strong{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:1.35rem;color:var(--blue2)}
.pricing-intro span{color:var(--muted);font-size:.85rem;margin-top:5px}
.pricing-section{padding-top:95px}
.pricing-table-wrap{
  max-width:1280px;
  margin:0 auto;
  overflow:auto;
  border:1px solid var(--line);
  border-radius:9px;
  background:#0b0d10
}
.pricing-table{
  width:100%;
  min-width:900px;
  border-collapse:collapse
}
.pricing-table th,.pricing-table td{
  padding:22px 20px;
  text-align:left;
  border-bottom:1px solid var(--line);
  vertical-align:middle
}
.pricing-table th{
  background:#101319;
  color:var(--blue2);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.75rem
}
.pricing-table td:not(:first-child){font-family:Oswald,sans-serif;font-size:1.25rem}
.pricing-table td:first-child{width:34%}
.pricing-table td strong,.pricing-table td span{display:block}
.pricing-table td strong{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:1.35rem}
.pricing-table td span{margin-top:5px;color:var(--muted);font-family:Inter,sans-serif;font-size:.8rem}
.pricing-table tbody tr:last-child td{border-bottom:0}
.pricing-table tbody tr:hover{background:#0e131a}
.popular-row{background:rgba(11,103,232,.08)}
.pricing-badge{
  display:inline-block!important;
  width:max-content;
  margin:0 0 8px!important;
  padding:5px 8px;
  border-radius:4px;
  background:var(--blue);
  color:white!important;
  text-transform:uppercase;
  font-size:.63rem!important;
  font-weight:800
}
.pricing-note-card{
  max-width:1000px;
  margin:24px auto 0;
  padding:24px 28px;
  background:#0d1725;
  border:1px solid #214a7e;
  border-radius:8px
}
.pricing-note-card h3{
  margin:0 0 8px;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:1.45rem
}
.pricing-note-card p{margin:0;color:#cbd5e2}
.custom-services{background:#080a0d}
.custom-service-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  max-width:1180px;
  margin:0 auto
}
.custom-price-card{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  min-height:350px;
  overflow:hidden;
  background:#0b0d10;
  border:1px solid var(--line);
  border-radius:9px
}
.custom-price-card img{width:100%;height:100%;object-fit:cover}
.custom-price-card>div{display:flex;flex-direction:column;justify-content:center;padding:30px}
.custom-price-card h3{
  margin:.15em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:2rem
}
.custom-price-card p:not(.kicker){color:var(--muted)}
.custom-price-card .button{align-self:flex-start;margin-top:12px}
.includes-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  max-width:1180px;
  margin:0 auto
}
.includes-grid article{
  padding:25px;
  background:#0b0d10;
  border:1px solid var(--line);
  border-radius:8px
}
.includes-grid strong,.includes-grid span{display:block}
.includes-grid strong{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:1.2rem}
.includes-grid span{margin-top:7px;color:var(--muted);font-size:.85rem}
.pricing-cta{
  display:grid;
  grid-template-columns:1fr auto;
  gap:40px;
  align-items:center;
  padding:65px 5vw;
  background:linear-gradient(110deg,#0a3f92,#080a0d 65%)
}
.pricing-cta h2{
  margin:.2em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:clamp(2.2rem,4vw,4rem)
}
.pricing-cta p:not(.kicker){max-width:850px}
.pricing-cta-actions{display:flex;gap:12px}
@media(max-width:1000px){
  .custom-service-grid{grid-template-columns:1fr}
  .includes-grid{grid-template-columns:1fr 1fr}
  .pricing-cta{grid-template-columns:1fr}
}
@media(max-width:700px){
  .pricing-hero{min-height:600px;background-position:64% center}
  .pricing-hero-content{padding:95px 22px 90px}
  .pricing-intro{grid-template-columns:1fr;margin:-20px 20px 0}
  .pricing-intro article{border-right:0;border-bottom:1px solid var(--line)}
  .pricing-intro article:last-child{border-bottom:0}
  .pricing-section{padding-top:65px}
  .custom-price-card{grid-template-columns:1fr}
  .custom-price-card img{height:240px}
  .includes-grid{grid-template-columns:1fr}
  .pricing-cta{padding:55px 22px}
  .pricing-cta-actions{flex-direction:column}
}

.addons-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1180px;margin:0 auto}
.addons-columns h3{font-family:Oswald,sans-serif;text-transform:uppercase;margin-bottom:16px}
.addon-card{background:#0b0d10;border:1px solid var(--line);border-radius:8px;padding:18px;margin-bottom:14px}
.addon-card strong,.addon-card span{display:block}
.addon-card strong{font-family:Oswald,sans-serif;font-size:1.2rem}
.addon-card span{margin:6px 0;color:#9fd0ff}
.addon-card p{margin:0;color:#bfc7d1;font-size:.9rem}
@media(max-width:800px){.addons-columns{grid-template-columns:1fr}}

.includes-btn{margin-top:10px}
.includes-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.includes-list div{background:#11151a;padding:10px 12px;border:1px solid var(--line);border-radius:6px}
.includes-card{max-width:760px}
@media(max-width:700px){.includes-list{grid-template-columns:1fr}}


/* ===========================
   FINAL POLISH PASS
   =========================== */
:root{
  --blue-glow:rgba(27,130,255,.22);
  --soft-shadow:0 18px 50px rgba(0,0,0,.28);
  --card-radius:10px;
}

/* More restrained accents */
.kicker{color:#8abfff}
.detail-tag,.badge,.pricing-badge{background:#0b67e8}
.service,.result-card,.addon-card,.custom-price-card,.location-card,
.booking-form,.pricing-note-card,.all-reviews-card,.elfsight-wrap,
.google-review-summary,.pricing-table-wrap{border-color:#262c34}

/* Typography */
h1,h2,h3{letter-spacing:.01em}
.hero h1{letter-spacing:-.015em}
.hero-content>p:not(.kicker,.quick-contact){max-width:610px}
.heading{max-width:820px}
.heading h2{letter-spacing:-.01em}
.heading>p:last-child{max-width:680px;margin-left:auto;margin-right:auto}

/* Premium buttons */
.button{
  position:relative;
  overflow:hidden;
  border-radius:6px;
  min-height:50px;
  padding:0 23px;
}
.button:after{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-110%);
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.13),transparent);
  transition:transform .55s ease;
}
.button:hover:after{transform:translateX(110%)}
.button.primary{
  background:#0b67e8;
  box-shadow:0 8px 22px rgba(11,103,232,.18);
}
.button.primary:hover{
  background:#1779f5;
  box-shadow:0 13px 32px rgba(11,103,232,.27);
}
.button.secondary:hover{border-color:#8b96a5;background:#10141a}

/* Header polish */
.header{
  transition:padding .28s ease, background .28s ease, box-shadow .28s ease;
}
.header.header-scrolled{
  padding-top:7px;
  padding-bottom:7px;
  background:rgba(4,5,6,.985);
  box-shadow:0 10px 35px rgba(0,0,0,.26);
}
.nav a{position:relative;padding:9px 0}
.nav a:after{
  content:"";
  position:absolute;
  left:0;right:100%;bottom:1px;
  height:2px;background:#0b67e8;
  transition:right .25s ease;
}
.nav a:hover:after,.nav .active-link:after{right:0}

/* Hero entrance and slow motion */
.natural-hero .hero-photo{
  animation:heroSlowZoom 22s ease-in-out infinite alternate;
}
.hero-animate .kicker,
.hero-animate h1,
.hero-animate>p,
.hero-animate .actions,
.hero-animate .quick-contact{
  opacity:0;
  transform:translateY(20px);
  animation:heroLineIn .7s ease forwards;
}
.hero-animate h1{animation-delay:.10s}
.hero-animate>p{animation-delay:.20s}
.hero-animate .actions{animation-delay:.30s}
.hero-animate .quick-contact{animation-delay:.40s}
.hero-trust{
  opacity:0;
  transform:translateY(16px);
  animation:heroTrustIn .7s ease .5s forwards;
}
@keyframes heroSlowZoom{
  from{transform:scale(1)}
  to{transform:scale(1.025)}
}
@keyframes heroLineIn{
  to{opacity:1;transform:none}
}
@keyframes heroTrustIn{
  to{opacity:1;transform:none}
}

/* Cards */
.service,.result-card,.addon-card,.custom-price-card{
  border-radius:var(--card-radius);
}
.service:hover,.result-card:hover,.addon-card:hover,.custom-price-card:hover{
  box-shadow:var(--soft-shadow);
}
.media-play{
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.service-media-button:hover .media-play,
.result-card:hover .media-play,
.detail-video-button:hover .media-play{
  transform:translate(-50%,-50%) scale(1.06);
  background:#1779f5;
  box-shadow:0 0 0 7px rgba(11,103,232,.15),0 14px 34px rgba(0,0,0,.45);
}

/* Before/after slider polish */
.before-after:after{
  box-shadow:0 0 16px rgba(27,130,255,.65);
}
.before-after:before{
  content:"↔";
  position:absolute;
  z-index:5;
  left:var(--split,50%);
  top:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  width:42px;height:42px;
  border-radius:50%;
  background:#0b67e8;
  border:2px solid white;
  box-shadow:0 0 0 7px rgba(11,103,232,.15),0 9px 25px rgba(0,0,0,.45);
  font-size:1rem;
  pointer-events:none;
}

/* Includes modal */
.includes-card{
  width:min(760px,100%);
  background:linear-gradient(180deg,#101319,#090b0e);
  box-shadow:0 30px 90px rgba(0,0,0,.55);
}
.includes-card h2{
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:3rem;
  margin:.15em 0 .2em;
}
.includes-modal-intro{
  color:var(--muted);
  margin-bottom:18px;
}
.includes-list{
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.includes-item{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:52px;
  background:#11151a;
  border:1px solid #29313c;
  border-radius:7px;
  padding:12px 14px;
}
.includes-check{
  display:grid;
  place-items:center;
  flex:0 0 24px;
  width:24px;height:24px;
  border-radius:50%;
  background:#0b67e8;
  color:white;
  font-weight:800;
}

/* Booking */
.booking-form{
  box-shadow:var(--soft-shadow);
}
.booking-form input:focus,
.booking-form select:focus,
.booking-form textarea:focus{
  outline:none;
  border-color:#0b67e8;
  box-shadow:0 0 0 3px rgba(11,103,232,.12);
}
.booking-success-icon{
  display:grid;
  place-items:center;
  width:68px;height:68px;
  margin:0 0 16px;
  border-radius:50%;
  background:#178e59;
  color:white;
  font-size:2rem;
  font-weight:800;
  box-shadow:0 0 0 8px rgba(23,142,89,.13);
}
.booking-confirmation h3{
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:2rem;
  margin:.2em 0;
}

/* Loading intro */
.brand-loader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:#050607;
  transition:opacity .45s ease, visibility .45s ease;
}
.brand-loader.hidden{
  opacity:0;
  visibility:hidden;
}
.brand-loader-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
.brand-loader-inner img{
  width:min(260px,72vw);
  animation:loaderPulse 1.2s ease-in-out infinite alternate;
}
.brand-loader-inner span{
  color:#89919d;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.68rem;
}
@keyframes loaderPulse{
  from{opacity:.72;transform:scale(.985)}
  to{opacity:1;transform:scale(1)}
}

/* Mobile polish */
@media(max-width:700px){
  .hero-content{padding-top:96px}
  .hero h1{font-size:3.15rem}
  .button{min-height:52px}
  .menu{min-height:44px;min-width:70px}
  .nav a{font-size:1rem;padding:12px 0}
  .includes-list{grid-template-columns:1fr}
  .modal{padding:18px}
  .modal-close{top:10px;right:14px;font-size:2.6rem}
  .all-reviews-card,.includes-card{padding:24px;margin-top:30px}
}

/* Respect reduced-motion preferences */
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
  .natural-hero .hero-photo{transform:none!important}
}


/* Contact-first scheduling section */
.schedule-contact{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
  padding:72px 5vw;
  background:linear-gradient(110deg,#0a3f92,#080a0d 68%);
}
.schedule-copy h2{
  margin:.15em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:clamp(2.6rem,5vw,5rem);
  line-height:1.02;
}
.schedule-copy>p:not(.kicker){
  max-width:760px;
  color:#d7dde5;
}
.schedule-methods{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:28px;
}
.schedule-method{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:88px;
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(5,7,10,.72);
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.schedule-method:hover{
  transform:translateY(-3px);
  border-color:#7eb9ff;
  background:rgba(8,15,25,.9);
}
.schedule-method.primary-method{
  border-color:#86bdff;
}
.schedule-icon{
  display:grid;
  place-items:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#0b67e8;
  font-weight:800;
}
.schedule-method strong,
.schedule-method small{
  display:block;
}
.schedule-method strong{
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:1.2rem;
}
.schedule-method small{
  margin-top:3px;
  color:#b8c1cc;
  font-size:.76rem;
}
.schedule-note{
  margin-top:18px;
  padding:15px 17px;
  border-left:3px solid #7eb9ff;
  background:rgba(4,7,11,.45);
  color:#d4dce6;
  font-size:.88rem;
}
.schedule-policy-card{
  align-self:center;
  padding:30px;
  background:#0b0d10;
  border:1px solid #2a3440;
  border-radius:10px;
  box-shadow:0 24px 60px rgba(0,0,0,.28);
}
.schedule-policy-card h3{
  margin:.2em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:2rem;
}
.schedule-policy-card p,
.schedule-policy-card li{
  color:#bfc7d1;
}
.schedule-policy-card ul{
  margin:18px 0 0;
  padding-left:20px;
}
.schedule-policy-card li+li{
  margin-top:8px;
}
@media(max-width:1000px){
  .schedule-contact{grid-template-columns:1fr}
}
@media(max-width:700px){
  .schedule-contact{padding:58px 20px}
  .schedule-methods{grid-template-columns:1fr}
  .schedule-method{min-height:76px}
}


/* Appointment request form */
.request-booking{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:32px;
  align-items:start;
  padding:76px 5vw;
  background:linear-gradient(125deg,#092e68,#07090c 58%);
}
.request-intro{
  position:sticky;
  top:105px;
  padding:12px 0;
}
.request-intro h2{
  margin:.15em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:clamp(2.7rem,5vw,5rem);
  line-height:1.02;
}
.request-intro>p:not(.kicker){color:#d3dae4;max-width:620px}
.request-warning{
  margin:24px 0;
  padding:17px 18px;
  border-left:3px solid #83bcff;
  background:rgba(5,10,17,.56);
  color:#dce5ef;
}
.request-warning strong{display:block;margin-bottom:5px}
.request-contact{
  display:grid;
  gap:10px;
}
.request-contact a{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:15px 17px;
  background:rgba(6,9,14,.68);
  border:1px solid rgba(255,255,255,.16);
  border-radius:7px;
}
.request-contact a:hover{border-color:#76b4ff}
.request-contact strong{font-family:Oswald,sans-serif;text-transform:uppercase}
.request-contact span{color:#c4ccd7;font-size:.84rem;text-align:right}

.appointment-request-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  padding:30px;
  background:#0b0d10;
  border:1px solid #2a313a;
  border-radius:10px;
  box-shadow:0 28px 70px rgba(0,0,0,.34);
}
.appointment-request-form>label{
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#e9edf2;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:.045em;
  font-size:.74rem;
}
.appointment-request-form input,
.appointment-request-form select,
.appointment-request-form textarea{
  width:100%;
  min-height:49px;
  padding:13px 14px;
  border:1px solid #343d49;
  border-radius:6px;
  background:#12161c;
  color:white;
  text-transform:none;
  font-weight:400;
  letter-spacing:normal;
}
.appointment-request-form textarea{resize:vertical}
.appointment-request-form input:focus,
.appointment-request-form select:focus,
.appointment-request-form textarea:focus{
  outline:0;
  border-color:#1477ed;
  box-shadow:0 0 0 3px rgba(20,119,237,.13);
}
.request-wide{grid-column:1/-1}
.request-addons{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 16px;
  margin:2px 0;
  padding:18px;
  border:1px solid #303945;
  border-radius:7px;
}
.request-addons legend{
  padding:0 8px;
  color:#8ec4ff;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.request-addons label{
  display:flex;
  align-items:center;
  gap:9px;
  color:#d2d8e0;
  font-size:.86rem;
}
.request-addons input,
.request-consent input{
  width:18px;
  height:18px;
  min-height:0;
  accent-color:#0b67e8;
}
.request-consent{
  flex-direction:row!important;
  align-items:flex-start;
  text-transform:none!important;
  font-weight:400!important;
  letter-spacing:normal!important;
  color:#c9d0da!important;
}
.request-policy{
  padding:17px 18px;
  background:#0d1d31;
  border:1px solid #244d7e;
  border-radius:7px;
}
.request-policy strong{font-family:Oswald,sans-serif;text-transform:uppercase}
.request-policy p{margin:5px 0 0;color:#c8d3df;font-size:.86rem}
.form-delivery-note{
  margin:0;
  text-align:center;
  color:#8d97a4;
  font-size:.78rem;
}
.form-honeypot{
  position:absolute!important;
  left:-9999px!important;
  opacity:0!important;
  pointer-events:none!important;
}
@media(max-width:1000px){
  .request-booking{grid-template-columns:1fr}
  .request-intro{position:static}
}
@media(max-width:700px){
  .request-booking{padding:58px 20px}
  .appointment-request-form{grid-template-columns:1fr;padding:21px}
  .request-wide{grid-column:auto}
  .request-addons{grid-column:auto;grid-template-columns:1fr}
  .request-contact a{flex-direction:column;gap:3px}
  .request-contact span{text-align:left}
}


.form-origin-warning{
  padding:16px 18px;
  border:1px solid #bb7632;
  border-radius:7px;
  background:#2a1b0d;
  color:#ffd9ad;
  line-height:1.55;
}
.request-success{
  padding:22px;
  border:1px solid #238b59;
  border-radius:8px;
  background:#0b2d1d;
}
.request-success h3{
  margin:.2em 0;
  font-family:Oswald,sans-serif;
  text-transform:uppercase;
  font-size:2rem;
}
.request-success p{margin-bottom:0;color:#d4e9dc}
