/* Adam's Detailing Service — static rebuild, matched to the live Elementor build.
   Kit tokens from live: Poppins; primary #1C244B; text #324A6D; accent #467FF7;
   secondary band #F3F5F8; mist band #C8D5DC; paper #F9FAFD. */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Poppins",Arial,sans-serif;color:#324A6D;background:#fff;line-height:1.55;font-size:16px;font-weight:300}
img{max-width:100%;height:auto;display:block}
a{color:#467FF7;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.wrap.narrow{max-width:900px}
.center{text-align:center}
.section{padding:72px 0}
h1,h2,h3,h4{font-family:"Poppins",sans-serif;font-weight:600;color:#1C244B;line-height:1.2}
.sec-title{font-size:34px;text-align:center;margin-bottom:14px}
.sec-sub{text-align:center;font-size:19px;max-width:820px;margin:0 auto 40px}
p{margin-bottom:16px}
strong{font-weight:500}

/* ---------- buttons (live: solid accent pills) ---------- */
.btn{display:inline-block;background:#467FF7;color:#fff;font-weight:500;font-size:16px;padding:14px 34px;border-radius:100px;border:1px solid #467FF7;transition:background .2s,color .2s}
.btn:hover{background:transparent;color:#467FF7;text-decoration:none}
.btn-cta{border-radius:50px}
.btn-outline{background:transparent;color:#467FF7}
.btn-outline:hover{background:#467FF7;color:#fff}

/* ---------- header (live: white bar, logo left, nav, outline-style call button) ---------- */
.site-header{background:#fff;position:sticky;top:0;z-index:100;border-bottom:1px solid #edf0f4}
.header-inner{max-width:1280px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:30px}
.logo img{height:176px;width:auto}
.main-nav{margin-left:auto}
.main-nav ul{list-style:none;display:flex;gap:32px}
.main-nav a{color:#1C244B;font-size:16px;font-weight:500;padding:6px 2px}
.main-nav a:hover{color:#467FF7;text-decoration:none}
.main-nav a[aria-current="page"]{color:#467FF7}
.header-call{flex:none}
.menu-toggle{display:none;margin-left:auto;background:none;border:0;color:#1C244B;font-size:30px;cursor:pointer;line-height:1}

/* ---------- heroes ---------- */
.hero-home{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:64px 0 56px}
.hero-home h1{font-size:44px;line-height:1.22;text-align:center;text-shadow:3px 3px 5px rgba(0,0,0,.35)}
.h1-phone{white-space:nowrap}
.hero-intro{font-size:19px;line-height:1.6;font-weight:400}
.hero-page{text-align:center;padding:64px 0 8px}
.hero-page h1{font-size:42px;margin-bottom:16px;text-shadow:3px 3px 5px rgba(0,0,0,.35)}
.hero-page .hero-intro{max-width:840px;margin:0 auto}

/* photo band with centered call button (Customer-19 on live) */
.call-strip{position:relative;padding:0}
.call-strip img{width:100%;height:auto;display:block}
.call-strip .btn{position:absolute;top:22px;right:26px;font-size:18px;padding:16px 42px;box-shadow:0 6px 20px rgba(28,36,75,.35)}

/* ---------- split CTA + gallery (home) ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split h2{font-size:30px;margin-bottom:16px}
.split p{font-size:16.5px}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;align-items:start}
.gallery-grid a{display:block;cursor:zoom-in}
.gallery-grid img{width:100%;height:auto;display:block}

/* ---------- cards (image-box rows) ---------- */
.card-row{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.info-card img{width:100%;height:auto;display:block;margin-bottom:16px}
.info-card h4{font-size:19px;margin-bottom:8px}
.info-card p{font-size:15.5px;margin:0}
.about-cards .info-card img{height:225px;aspect-ratio:auto}

/* ---------- why-choose card (live: white card, radius 10px, shadow 0 4px 15px rgba(0,0,0,.75)) ---------- */
.band{background:#F3F5F8}
.band-mist{background:#C8D5DC}
.why-card{background:#fff;border-radius:10px;box-shadow:0px 4px 15px 0px rgba(0,0,0,.75);padding:44px 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:34px}
.why-box h4{font-size:19px;margin-bottom:8px}
.why-box p{font-size:15.5px;margin:0}

/* ---------- testimonials ---------- */
.testi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.testi-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(28,36,75,.10);overflow:hidden}
.testi-card img{width:100%;height:auto;display:block}
.testi-body{padding:20px 22px 24px}
.testi-body p{font-size:15.5px;margin-bottom:12px}
.testi-name{font-weight:600;color:#1C244B}

/* ---------- final CTA band (photo left, content right) ---------- */
.cta-band{display:grid;grid-template-columns:1fr 1fr;min-height:360px}
.cta-photo{background-size:cover;background-position:center;min-height:300px}
.cta-content{display:flex;flex-direction:column;justify-content:center;padding:52px 56px}
.cta-content h2{font-size:30px;margin-bottom:16px}
.cta-content p{font-size:16.5px}
.cta-content .btn{align-self:flex-start}

/* ---------- image treatments (Tom's signature styling, values from live CSS) ---------- */
/* Services page photos — live post-62: border-radius:20px; box-shadow:15px 15px 10px 0 rgba(0,0,0,.5) */
.svc-img{border-radius:20px 20px 20px 20px;box-shadow:15px 15px 10px 0px rgba(0,0,0,0.5);width:100%}
/* About page hero photo — live local-58: border-radius:30px; box-shadow:7px 4px 10px 0 rgba(0,0,0,.5) */
.about-photo{border-radius:30px;box-shadow:7px 4px 10px 0px rgba(0,0,0,0.5);width:100%}
.about-photo-wrap{padding:26px 30px 6px}

/* ---------- services rows ---------- */
.svc-row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.svc-row h2{font-size:30px;margin-bottom:14px}
.svc-row p{font-size:16.5px}
.svc-img-col{padding:0 18px 18px 0}

/* ---------- contact ---------- */
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center;margin-top:34px}
.contact-box h4{font-size:20px;margin-bottom:8px}
.contact-box p{font-size:17px;margin:0;overflow-wrap:anywhere}
.photo-band img{width:100%;height:auto;display:block}

/* ---------- privacy ---------- */
.privacy-body{max-width:820px}
.privacy-body h1{font-size:34px;margin-bottom:22px}
.privacy-body p{font-size:16.5px}

/* ---------- footer (live: white, 3 columns, accent © bar) ---------- */
.site-footer{background:#fff;border-top:1px solid #edf0f4;margin-top:0}
.footer-inner{max-width:1200px;margin:0 auto;padding:54px 24px 44px;display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:44px}
.f-logo img{width:250px;height:auto;margin-bottom:14px}
.f-brand-name{font-size:20px;font-weight:600;color:#1C244B;margin-bottom:6px}
.f-brand p{font-size:15.5px;margin-bottom:6px}
.site-footer h6{font-size:16px;font-weight:600;color:#1C244B;margin-bottom:14px;font-family:"Poppins",sans-serif}
.footer-nav{list-style:none}
.footer-nav li{margin-bottom:9px}
.footer-nav a{color:#324A6D;font-weight:400}
.footer-nav a:hover{color:#467FF7;text-decoration:none}
.f-touch p{font-size:15.5px;margin-bottom:9px;overflow-wrap:anywhere}
.copyright-bar{background:#467FF7;color:#fff;text-align:center;padding:13px 20px;font-size:14.5px;font-weight:400}

/* ---------- lightbox (from the Quartz build) ---------- */
.lb-overlay{position:fixed;inset:0;background:rgba(0,0,0,.93);display:none;align-items:center;justify-content:center;z-index:1000}
.lb-overlay.open{display:flex}
.lb-img{max-width:92vw;max-height:86vh;object-fit:contain;box-shadow:0 8px 40px rgba(0,0,0,.6)}
.lb-count{position:absolute;top:16px;left:20px;color:#fff;font-family:"Poppins",Arial,sans-serif;font-size:15px;letter-spacing:.06em}
.lb-btn{position:absolute;background:none;border:0;color:#fff;cursor:pointer;line-height:1;padding:10px;opacity:.85}
.lb-btn:hover{opacity:1}
.lb-close{top:6px;right:14px;font-size:40px}
.lb-prev,.lb-next{top:50%;transform:translateY(-50%);font-size:64px}
.lb-prev{left:10px}
.lb-next{right:10px}
@media (max-width:640px){.lb-prev,.lb-next{font-size:44px;padding:6px}.lb-close{font-size:34px}}

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .card-row,.why-card,.testi-row{grid-template-columns:repeat(2,1fr)}
  .hero-home{grid-template-columns:1fr;gap:26px}
  .hero-home h1{font-size:36px}
  .split,.svc-row,.cta-band{grid-template-columns:1fr}
  .cta-content{padding:40px 28px}
  .logo img{height:120px}
}
@media (max-width:860px){
  .main-nav{display:none}
  .site-header.open .main-nav{display:block;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #edf0f4;padding:10px 24px 18px}
  .site-header{position:relative}
  .site-header.open .main-nav ul{flex-direction:column;gap:6px}
  .menu-toggle{display:block}
  .header-call{display:none}
  .footer-inner{grid-template-columns:1fr;gap:30px}
  .contact-cards{grid-template-columns:1fr}
  .photo-band{height:300px}
}
@media (max-width:560px){
  .card-row,.why-card,.testi-row{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-grid a{height:230px}
  .sec-title{font-size:28px}
  .hero-page h1{font-size:32px}
  .section{padding:52px 0}
  .about-photo-wrap{padding:16px 12px 2px}
}

/* ---------- call-button pop-up (desktop) ---------- */
.callpop-overlay{position:fixed;inset:0;background:rgba(28,36,75,.55);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}
.callpop-overlay.open{display:flex}
.callpop-card{position:relative;background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.35);max-width:430px;width:100%;padding:38px 36px 30px;text-align:center}
.callpop-card h3{font-family:"Poppins",sans-serif;font-size:24px;color:#1C244B;margin-bottom:10px}
.callpop-card p{color:#324A6D;font-size:16.5px;margin-bottom:6px}
.callpop-number{display:inline-block;font-family:"Poppins",sans-serif;font-weight:700;font-size:31px;color:#1C244B;text-decoration:none;margin:8px 0 20px}
.callpop-number:hover{color:#467FF7;text-decoration:none}
.callpop-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.callpop-text{background:#fff;color:#467FF7;border:2px solid #467FF7}
.callpop-note{font-size:13.5px;color:#7a879c;margin-top:18px}
.callpop-close{position:absolute;top:8px;right:14px;background:none;border:0;font-size:32px;line-height:1;color:#7a879c;cursor:pointer;padding:4px}
.callpop-close:hover{color:#1C244B}
