
:root{--bg:#0c0d0c;--panel:#151615;--text:#f8f8f7;--muted:#bfc1bd;--gold:#d8b85d;--gold-soft:#f3df9c;--border:#2f312d;--max:1140px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3{line-height:1.16;letter-spacing:-.025em}h1{font-size:clamp(2.3rem,5vw,4.5rem);margin:.6rem 0 1.2rem}h2{font-size:clamp(1.75rem,3vw,2.65rem);margin:.6rem 0 1rem}h3{font-size:1.2rem;margin:.1rem 0 .6rem}p{margin:.45rem 0 1rem}.container{width:min(var(--max),calc(100% - 2.5rem));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(10,11,10,.98);border-bottom:1px solid var(--border)}.header-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.7rem;min-width:0;text-decoration:none}.brand img{width:48px;height:48px;object-fit:contain}.brand-text{display:grid;line-height:1.2}.brand-text strong{font-size:1rem}.brand-text small{color:var(--muted);font-size:.8rem;margin-top:.25rem}.nav{display:flex;align-items:center;gap:1.15rem}.nav a{font-size:.89rem;font-weight:650;text-decoration:none;white-space:nowrap}.nav a:hover,.text-link:hover{color:var(--gold-soft)}.nav .cta-mini{padding:.63rem .9rem;background:var(--gold);color:#171717;border-radius:12px}.mobile-toggle{display:none}
.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800;color:var(--gold-soft)}.hero{position:relative;min-height:580px;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:url('../images/gallery-1.jpg') center center/cover no-repeat}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.91),rgba(0,0,0,.7) 52%,rgba(0,0,0,.2))}.hero-content{padding:5.5rem 0}.hero h1{max-width:750px}.hero p{max-width:650px;color:#e4e4e2;font-size:1.08rem}.hero-footnote{margin-top:2rem;font-size:.88rem!important;color:var(--muted)!important}.hero-actions,.submit-row{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;margin-top:1.35rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:.7rem 1.25rem;border-radius:11px;font-weight:750;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:filter .2s}.btn:hover{filter:brightness(1.1)}.btn-primary{color:#171717;background:var(--gold)}.btn-secondary{color:white;background:#1b1c1a;border-color:#555850}.page-hero{padding:4.2rem 0 2.6rem;background:linear-gradient(180deg,#1b1b17,var(--bg));border-bottom:1px solid var(--border)}.page-hero h1{max-width:900px}.page-hero p{color:var(--muted);max-width:760px}
.section{padding:4.2rem 0}.section-split{background:#111211;border-top:1px solid rgba(255,255,255,.035);border-bottom:1px solid rgba(255,255,255,.035)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.section-heading p{max-width:340px;color:var(--muted)}.section-intro{max-width:720px;color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:15px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{padding:1.5rem}.service-card p{color:var(--muted)}.service-card .price,.price{display:block;color:var(--gold-soft);font-weight:750;margin-top:.9rem}.card-link{margin:1rem 0 0!important}.card-link a,.text-link{color:var(--gold-soft);font-weight:750;text-decoration:none}.split-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3rem}.feature-image{width:100%;height:360px;object-fit:cover;border-radius:15px;border:1px solid var(--border)}.membership-bar{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.2rem 2.5rem;background:#211e14;border:1px solid #554b2f;border-radius:16px}.membership-bar p{color:#ddd4b8;max-width:650px}.membership-bar .btn{flex-shrink:0}.addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.addon-item{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:1px solid var(--border);padding:.8rem 0}.addon-item strong{color:var(--gold-soft);text-align:right}.offer-note{margin:1.25rem 0}.specialty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.specialty-card{border:1px solid var(--border);border-radius:15px;overflow:hidden;background:var(--panel)}.specialty-card img{height:190px;width:100%;object-fit:cover}.specialty-card>div{padding:1.15rem}.specialty-card p{color:var(--muted)}.bottom-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:1.8rem}.bottom-cta.panel{padding:2rem;margin:0 auto}.bottom-cta p{color:var(--muted)}.fleet-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.fleet-photo-grid img{height:230px;width:100%;object-fit:cover;border-radius:12px}.simple-proof{padding:1.4rem;margin-top:1.4rem}.simple-proof p{max-width:850px}.checklist{display:grid;gap:.6rem;margin:1rem 0}.check{padding:.65rem 0;border-bottom:1px solid var(--border);color:var(--muted)}.check b{color:var(--gold-soft)}
.form-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.9fr);gap:1.25rem;align-items:start}.form-card,.info-card{padding:1.6rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}.field-full{grid-column:1/-1}label{display:block;margin-bottom:.35rem;color:#e4e4e2;font-size:.9rem;font-weight:600}input,select,textarea{display:block;width:100%;background:#101110;border:1px solid #555851;color:#fff;border-radius:9px;padding:.82rem .9rem;min-height:46px}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.fleet-fields-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem;padding:1.1rem;border:1px solid #675b3a;border-radius:12px;background:rgba(216,184,93,.06)}.privacy-note{margin:1.2rem 0}.privacy-note a{color:var(--gold-soft)}.info-card p,.info-card a{overflow-wrap:anywhere}.info-card a{color:var(--gold-soft)}[hidden]{display:none!important}.honey-field{position:absolute!important;left:-10000px!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.simple-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.gallery-tile{margin:0;border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--panel)}.gallery-tile img{width:100%;height:245px;object-fit:cover}.gallery-tile figcaption{padding:.7rem .85rem;color:#d4d4d1;font-size:.9rem}
.site-footer{padding:2.5rem 0;background:#090a09;border-top:1px solid var(--border);font-size:.94rem}.site-footer p{color:var(--muted)}.site-footer a{color:#d8dacd;text-decoration:none}.site-footer a:hover{color:var(--gold-soft)}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem}.footer-links{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem}.micro{font-size:.82rem;color:var(--muted)}
.privacy-page{padding:3rem 0}.privacy-content{max-width:850px;line-height:1.75}.privacy-content h2{font-size:1.35rem;margin:2rem 0 .6rem;color:var(--gold-soft)}.privacy-content a{color:var(--gold-soft)}.privacy-content li{margin-bottom:.5rem}.privacy-content ul{padding-left:1.3rem}
@media(max-width:1000px){.nav{gap:.65rem}.nav a{font-size:.8rem}.brand-text small{display:none}.brand img{width:42px;height:42px}.split-layout{gap:1.5rem}.fleet-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.container{width:min(var(--max),calc(100% - 2rem))}.header-inner{min-height:68px}.brand-text strong{font-size:.95rem}.mobile-toggle{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:9px;color:#fff;background:#1b1d1a;border:1px solid #40413e;cursor:pointer}.nav{display:none;position:absolute;top:68px;right:1rem;left:1rem;flex-direction:column;align-items:stretch;gap:0;padding:.55rem;background:#151615;border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #000c;max-height:calc(100dvh - 82px);overflow:auto}.nav.open{display:flex}.nav a{padding:.75rem .9rem;font-size:1rem}.nav .cta-mini{text-align:center;margin:.3rem}.hero{min-height:520px}.hero:before{background-position:60% center}.hero-content{padding:4rem 0}.hero h1{font-size:clamp(2.3rem,9vw,3.35rem)}.hero p{font-size:1rem}.section{padding:3rem 0}.page-hero{padding:2.8rem 0 2rem}.grid-3,.specialty-grid,.form-shell,.split-layout{grid-template-columns:1fr}.split-layout{gap:1.5rem}.membership-bar,.bottom-cta{flex-direction:column;align-items:flex-start}.membership-bar{padding:1.5rem}.feature-image{height:270px}.section-heading{display:block}.section-heading p{max-width:100%}.simple-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-tile img{height:210px}.form-card{padding:1.2rem}.footer-grid{grid-template-columns:1fr}.fleet-photo-grid img{height:180px}}
@media(max-width:500px){h1{font-size:2.25rem}.hero-actions .btn,.submit-row .btn{flex:1 1 100%}.addon-grid,.form-grid,.fleet-fields-inner,.simple-gallery{grid-template-columns:1fr}.gallery-tile img{height:250px}.fleet-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-photo-grid img{height:150px}.brand img{width:40px;height:40px}.brand-text strong{font-size:.84rem}.container{width:calc(100% - 1.5rem)}.hero-content{padding:3.4rem 0}.hero{min-height:490px}.service-card{padding:1.2rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Balanced redesign: premium but restrained on desktop, quick to scan on phones. */
body{font-size:16px}
.section{padding:4.35rem 0}
.section-heading{margin-bottom:1.65rem}
.panel{box-shadow:0 10px 34px rgba(0,0,0,.06)}
.service-overview .service-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.service-card-image{width:100%;height:175px;object-fit:cover}
.service-card-body{padding:1.4rem 1.45rem 1.5rem;display:flex;flex-direction:column;flex:1}
.service-card-body h3{font-size:1.26rem}
.service-card-body .card-link{margin-top:auto!important;padding-top:.5rem}
.more-detail{font-size:.93rem;line-height:1.7;color:#bec0b8!important}
.hero-highlights{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.hero-highlights span{font-size:.84rem;color:#f6efd9;padding:.4rem .7rem;border:1px solid rgba(255,255,255,.32);background:rgba(0,0,0,.27);border-radius:999px}
.hero-footnote{margin-top:1.25rem}
.results-visual{display:grid;gap:.7rem}
.results-visual .feature-image{height:280px}
.mini-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.mini-photo-grid img{height:126px;width:100%;object-fit:cover;border-radius:12px;border:1px solid var(--border)}
.desktop-trust-section{padding:3.4rem 0}
.trust-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:4rem;align-items:center}
.trust-layout p{color:var(--muted)}
.trust-points{display:grid;gap:1rem}
.trust-points>div{padding:.15rem 0 .75rem 1rem;border-left:2px solid #a78d46}
.trust-points strong{color:var(--gold-soft)}
.trust-points p{font-size:.93rem;margin:.3rem 0 0}
.location-photo{height:350px}
.process-card{padding:1.5rem}
.process-card>span{display:block;color:var(--gold-soft);font-size:.86rem;font-weight:800;margin-bottom:.8rem}
.process-card p{color:var(--muted)}
.section-outro,.service-footnote{margin-top:1.5rem}
.section-outro a{margin-left:.2rem}
#memberships .grid-3 .service-card{min-height:180px}
#memberships .grid-3 .service-card p{margin-bottom:.4rem}
.mobile-actions{display:none}
:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}
@media(max-width:900px){.trust-layout{gap:2rem}}
@media(max-width:820px){
 .section{padding:2.8rem 0}
 .hero{min-height:460px}
 .hero-content{padding:3.5rem 0}
 .results-visual .feature-image{height:300px}
 .service-overview .service-card{padding:1.2rem 1.3rem}
 .service-card-body{padding:0}
 .service-card-body p{margin:.35rem 0 .55rem}
 .service-card-body .card-link{padding-top:0}
 .desktop-detail,.desktop-trust-section,.desktop-extra{display:none!important}
 .feature-image{height:260px}
 .trust-layout{grid-template-columns:1fr}
 .membership-bar{gap:1.1rem}
 .location-section .split-layout{gap:0}
 .location-section .hero-actions{margin-top:1rem}
 .grid-3{gap:.7rem}
 #memberships .grid-3 .service-card{min-height:auto}
 #memberships .grid-3 .service-card p{margin-bottom:0}
 .bottom-cta.panel{gap:.8rem}
}
@media(max-width:500px){
 .hero{min-height:410px}
 .hero:before{background-position:70% center}
 .hero:after{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.65))}
 .hero h1{font-size:clamp(2.15rem,10.5vw,3.05rem);margin:.5rem 0 .85rem}
 .hero p{font-size:.97rem;line-height:1.58}
 .hero-footnote{margin:1rem 0 0;font-size:.79rem!important}
 .section{padding:2.45rem 0}
 h2{font-size:1.7rem}
 .service-overview .section-heading{margin-bottom:1rem}
 .service-overview .service-card p{font-size:.91rem}
 .service-overview .service-card h3{font-size:1.13rem}
 .service-overview .service-card .card-link{margin-top:.3rem!important}
 .results-visual .feature-image{height:230px}
 .membership-bar{padding:1.4rem}
 .membership-bar .btn{width:100%}
 .location-section .hero-actions .btn{flex:1 1 calc(50% - .5rem)}
 .hero-content .hero-actions .btn{flex:1 1 calc(50% - .5rem);font-size:.93rem;padding:.65rem .55rem;min-height:48px}
 .hero-content .hero-actions{gap:.55rem}
 .site-footer{padding-bottom:6.5rem}
 .mobile-actions{position:fixed;z-index:49;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem;padding:.62rem max(.8rem,env(safe-area-inset-right)) calc(.62rem + env(safe-area-inset-bottom));background:rgba(11,12,11,.96);border-top:1px solid #444536;box-shadow:0 -4px 22px rgba(0,0,0,.34);backdrop-filter:blur(12px)}
 .mobile-actions .btn{min-height:46px;font-size:.92rem;padding:.6rem .45rem}
}


/* Targeted image framing updates */
.tesla-photo{object-fit:cover;object-position:center center;}
.truck-setup-photo{object-position:center 14%;}
.mini-photo-grid img:first-child{object-position:center 50%;}
.simple-gallery .truck-setup-photo{object-position:center 16%;}

/* Unified quote form: compact location prompt and clear fleet detail grouping. */
.field-hint{color:var(--muted);font-size:.78rem;line-height:1.45;margin:.4rem 0 0}
.fleet-group-heading{grid-column:1/-1;color:var(--gold-soft);font-size:.82rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}

/* Quote form submission feedback */
.form-feedback{margin:1rem 0 .35rem;padding:.85rem 1rem;border:1px solid #aa7245;border-radius:10px;background:rgba(194,110,54,.11);color:#ffe0c1;font-size:.93rem;line-height:1.5}
.form-feedback--sending{border-color:#8d793a;background:rgba(212,175,97,.12);color:#f7e7b9}
.form-input-error{border-color:#d7825c!important;box-shadow:0 0 0 1px #d7825c!important}
.submit-row button:disabled{opacity:.8;cursor:wait}


/* Phone-only refinement. Desktop layout and presentation above 640px are unchanged. */
@media (max-width:640px) {
  html {scroll-padding-top:76px;}
  body {font-size:15.5px;line-height:1.53;}
  .container {width:calc(100% - 2rem);}
  .site-header .header-inner {min-height:66px;gap:.7rem;}
  .brand {gap:.55rem;}
  .brand img {width:42px;height:42px;}
  .brand-text strong {font-size:.9rem;line-height:1.17;}
  .mobile-toggle {width:44px;height:44px;flex-shrink:0;font-size:1.15rem;}
  .nav {top:66px;left:.7rem;right:.7rem;padding:.55rem;max-height:calc(100dvh - 84px);}
  .nav a {font-size:1rem;min-height:45px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.065);}
  .nav a:last-child {border-bottom:0;justify-content:center;}
  .section {padding:2rem 0;}
  .section-heading {margin-bottom:1rem;}
  .section-heading h2, h2 {font-size:clamp(1.55rem,6.1vw,1.85rem);line-height:1.14;}
  .eyebrow {font-size:.68rem;letter-spacing:.135em;}
  .page-hero {padding:1.8rem 0 1.4rem;}
  .page-hero h1 {font-size:clamp(1.9rem,7.7vw,2.38rem);margin:.55rem 0 .8rem;}
  .page-hero p {font-size:.94rem;line-height:1.58;margin-bottom:.35rem;}
  .page-hero .hero-actions {margin-top:1rem;}
  .btn {min-height:47px;border-radius:10px;}
  .hero {display:block;min-height:0;padding-top:clamp(176px,51vw,228px);background:var(--bg);}
  .hero:before {inset:0 0 auto;height:clamp(190px,54vw,242px);background-position:center 51%;background-size:cover;}
  .hero:after {inset:0 0 auto;height:clamp(190px,54vw,242px);background:linear-gradient(to bottom,rgba(12,13,12,.08) 5%,rgba(12,13,12,.03) 55%,var(--bg) 100%);}
  .hero-content {padding:.75rem 0 1.65rem;}
  .hero h1 {font-size:clamp(2.05rem,8.25vw,2.6rem);line-height:1.04;letter-spacing:-.035em;margin:.45rem 0 .75rem;}
  .hero p {font-size:.94rem;line-height:1.55;}
  .hero .hero-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:1.15rem;}
  .hero .hero-actions .btn {font-size:.92rem;min-height:48px;padding:.6rem .4rem;}
  .hero-footnote {margin:.9rem 0 0;font-size:.78rem!important;}

  /* Homepage: keep three real photos visible in compact image-and-text cards. */
  .service-overview .featured-services {gap:.65rem;}
  .service-overview .featured-services .service-card {display:grid;grid-template-columns:110px minmax(0,1fr);align-items:stretch;padding:0!important;overflow:hidden;min-height:128px;}
  .service-overview .featured-services .service-card-image.desktop-detail {display:block!important;grid-column:1;width:110px;height:100%;min-height:128px;object-fit:cover;}
  .service-overview .featured-services .service-card-image.tesla-photo {object-fit:contain;background:#1c1b19;}
  .service-overview .featured-services .service-card-body {padding:.85rem .85rem .75rem;min-width:0;display:flex;flex-direction:column;justify-content:center;}
  .service-overview .featured-services .service-card h3 {font-size:1.04rem;margin:0 0 .3rem;line-height:1.18;}
  .service-overview .featured-services .service-card-body > p:not(.card-link) {font-size:.86rem;line-height:1.4;margin:.15rem 0 .45rem;}
  .service-overview .featured-services .card-link {margin:.2rem 0 0!important;padding-top:0;line-height:1.2;}
  .service-overview .featured-services .card-link a {font-size:.86rem;}
  .results-split .results-visual .feature-image {height:205px;}
  .results-split {gap:1.2rem;}
  .results-split p {font-size:.92rem;}
  .membership-bar {padding:1.3rem;gap:.9rem;}
  .membership-bar h2 {font-size:1.58rem;}
  .membership-bar p {font-size:.91rem;line-height:1.5;}
  .membership-bar .btn {width:100%;}
  .location-section .split-layout {gap:0;}
  .location-section p {font-size:.93rem;}
  .location-section .hero-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;}
  .location-section .hero-actions .btn {font-size:.9rem;padding:.6rem .3rem;}

  /* Service catalog: compact rows, two-column add-on tiles, concise memberships. */
  .services-page .core-services .grid-3 {grid-template-columns:1fr;gap:.65rem;}
  .services-page .core-services .service-card {padding:.85rem 1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.6rem;align-items:start;}
  .services-page .core-services .service-card h3 {grid-column:1;grid-row:1;font-size:1.01rem;line-height:1.2;margin:0;}
  .services-page .core-services .service-card .price {grid-column:2;grid-row:1;margin:0;white-space:nowrap;font-size:.91rem;text-align:right;}
  .services-page .core-services .service-card > p:not(.desktop-detail) {grid-column:1/-1;margin:.45rem 0 0;font-size:.87rem;line-height:1.4;}
  .services-page .core-services .service-card .card-link {grid-column:1/-1;font-size:.88rem;margin:.38rem 0 0!important;}
  .services-page .service-footnote {font-size:.79rem;margin-top:1rem;}
  .services-page .add-on-services .grid-3 {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;}
  .services-page .add-on-services .service-card {display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:.92rem .85rem;min-height:110px;}
  .services-page .add-on-services .service-card h3 {font-size:.96rem;line-height:1.27;margin:0;}
  .services-page .add-on-services .service-card p {display:none;}
  .services-page .add-on-services .service-card .price {font-size:.9rem;margin-top:.75rem;}
  .services-page #memberships .grid-3 {gap:.6rem;}
  .services-page #memberships .service-card {min-height:0;padding:.92rem 1rem;}
  .services-page #memberships .service-card h3 {font-size:1.06rem;margin:0 0 .25rem;}
  .services-page #memberships .service-card p:not(.desktop-detail) {font-size:.87rem;margin:0;}
  .services-page #memberships .section-intro {font-size:.9rem;}
  .services-page #memberships > .container > .btn {width:100%;margin-top:.6rem;}
  .specialty-grid {grid-template-columns:1fr;gap:.65rem;}
  .specialty-card {display:grid;grid-template-columns:115px minmax(0,1fr);min-height:120px;align-items:stretch;}
  .specialty-card img {width:115px;height:100%;min-height:120px;object-fit:cover;}
  .specialty-card > div {padding:1rem .85rem;align-self:center;}
  .specialty-card h3 {font-size:1rem;margin:0 0 .2rem;}
  .specialty-card p {font-size:.87rem;margin:0;line-height:1.35;}
  .bottom-cta {gap:.75rem;margin-top:1rem;}
  .bottom-cta p {font-size:.9rem;}
  .bottom-cta .btn {width:100%;}
  .bottom-cta.panel {padding:1.15rem;}

  /* Photos: show more work without an endless single-column stream. */
  .simple-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;}
  .simple-gallery .gallery-tile {border-radius:10px;}
  .simple-gallery .gallery-tile img {width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;}
  .gallery-page .simple-gallery .gallery-tile img {cursor:zoom-in;}
  .gallery-page .simple-gallery .gallery-tile:focus-within {outline:2px solid var(--gold);outline-offset:2px;}
  .gallery-page .section {padding-top:1.1rem;}
  .fleet-photo-grid {gap:.55rem;}
  .fleet-photo-grid img {height:auto;aspect-ratio:4/5;object-fit:cover;}
  .simple-proof {padding:1rem;margin-top:1rem;}
  .simple-proof p {font-size:.89rem;}
  .feature-image {height:245px;object-fit:cover;}
  .ceramic-page .feature-image.tesla-photo {height:auto;aspect-ratio:3/2;object-fit:contain;background:#181916;}

  /* Form: easier thumb taps, no iPhone input zoom, less wasted space. */
  .contact-page .form-shell {gap:1rem;}
  .form-card,.info-card {padding:1rem;}
  .form-card h2,.info-card h2 {font-size:1.48rem;}
  .form-grid,.fleet-fields-inner {gap:.75rem;}
  .fleet-fields-inner {padding:.85rem;}
  .form-card label {font-size:.9rem;}
  input,select,textarea {font-size:16px;min-height:48px;padding:.78rem .82rem;}
  textarea {min-height:112px;}
  .field-hint {font-size:.78rem;}
  #quote-form {scroll-margin-top:77px;}
  .contact-page .submit-row .btn {width:100%;}
  .contact-page .mobile-actions {display:none;}
  .contact-page .site-footer {padding-bottom:1.8rem;}
  .info-card p {font-size:.92rem;}

  /* Thumb-friendly bottom actions and compact footer. */
  .mobile-actions {gap:.55rem;padding:.55rem max(1rem,env(safe-area-inset-right)) calc(.55rem + env(safe-area-inset-bottom));}
  .mobile-actions .btn {min-height:49px;font-size:.92rem;}
  .site-footer {padding:1.9rem 0 calc(6rem + env(safe-area-inset-bottom));}
  .footer-grid {gap:1rem;}
  .site-footer p,.site-footer a {font-size:.87rem;}
  .footer-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem .7rem;}
  .footer-links a {display:flex;align-items:center;min-height:35px;overflow-wrap:anywhere;}
  .privacy-page {padding:1.5rem 0;}
  .privacy-content h2 {font-size:1.18rem;}
}
@media (max-width:360px) {
  .container {width:calc(100% - 1.5rem);}
  .brand-text strong {font-size:.82rem;}
  .service-overview .featured-services .service-card {grid-template-columns:89px minmax(0,1fr);}
  .service-overview .featured-services .service-card-image.desktop-detail {width:89px;}
  .service-overview .featured-services .service-card-body {padding:.75rem;}
  .service-overview .featured-services .service-card h3 {font-size:.99rem;}
  .services-page .core-services .service-card {padding:.8rem .75rem;}
  .services-page .core-services .service-card h3 {font-size:.96rem;}
  .services-page .core-services .service-card .price {font-size:.85rem;}
  .specialty-card {grid-template-columns:100px minmax(0,1fr);}
  .specialty-card img {width:100px;}
  .specialty-card > div {padding:.7rem;}
}
/* Mobile full-photo viewer; invisible and unused on desktop. */
.photo-viewer {padding:0;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;border:0;background:rgba(9,10,9,.97);color:#fff;}
.photo-viewer::backdrop {background:rgba(0,0,0,.92);}
.photo-viewer-inner {position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:70px 10px 64px;}
.photo-viewer img {width:100%;height:100%;object-fit:contain;}
.photo-viewer-close {position:absolute;top:max(12px,env(safe-area-inset-top));right:14px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#222;color:white;border:1px solid #555;font-size:1.35rem;cursor:pointer;}
.photo-viewer-caption {position:absolute;bottom:max(18px,env(safe-area-inset-bottom));left:15px;right:15px;text-align:center;font-size:.88rem;color:#eee;}

/* Avoid duplicate booking buttons while the page's main calls to action are visible. */
@media(max-width:640px) {
  .mobile-actions {transition:transform .2s ease,opacity .2s ease,visibility .2s ease;}
  .mobile-actions.hide-when-cta-visible {opacity:0;visibility:hidden;pointer-events:none;transform:translateY(110%);}
}
@media(prefers-reduced-motion:reduce) { .mobile-actions {transition:none!important;} }


/* PHONE READABILITY FIX — 2026-10-20
   Keep desktop appearance intact; size phone text/controls for the actual CSS viewport. */
@media screen and (max-width:640px) {
  html {font-size:16px; width:100%; max-width:100%; scroll-padding-top:76px;}
  body {width:100%;max-width:100%;margin:0;font-size:17px;line-height:1.55;overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
  main, .site-header, .site-footer {max-width:100%;min-width:0;}
  .container {width:calc(100% - 1.35rem);max-width:100%;}
  .page-hero .container,.hero-content {max-width:100%;}
  .brand-text strong {font-size:15.5px;}
  .brand-text small {font-size:13px;}
  .section {padding:2.15rem 0;}
  h2,.section-heading h2 {font-size:clamp(27px,7vw,33px);line-height:1.14;}
  h3,.service-card h3 {font-size:18px;}
  .page-hero h1 {font-size:clamp(32px,8.5vw,40px);line-height:1.12;}
  .hero h1 {font-size:clamp(34px,8.8vw,43px);line-height:1.08;}
  .eyebrow {font-size:12px;letter-spacing:.10em;line-height:1.45;}
  .hero p, .page-hero p, .section-intro, .section-heading p,
  .section p:not(.micro):not(.price):not(.card-link),
  .results-split p,.membership-bar p,.location-section p,.privacy-content p,
  .contact-page .info-card p {font-size:16.5px;line-height:1.55;}
  .btn,.hero .hero-actions .btn,.hero-content .hero-actions .btn,
  .location-section .hero-actions .btn, .mobile-actions .btn {font-size:16px;line-height:1.25;min-height:52px;padding:.72rem .6rem;}
  .nav a {font-size:17px;min-height:48px;}
  .service-overview .featured-services {gap:.75rem;}
  .service-overview .featured-services .service-card {grid-template-columns:112px minmax(0,1fr);min-height:146px;}
  .service-overview .featured-services .service-card-image.desktop-detail {width:112px;min-height:146px;}
  .service-overview .featured-services .service-card-body {padding:1rem .88rem;}
  .service-overview .featured-services .service-card h3 {font-size:18px;line-height:1.2;}
  .service-overview .featured-services .service-card-body > p:not(.card-link) {font-size:15.5px;line-height:1.43;}
  .service-overview .featured-services .card-link a {font-size:15.5px;}
  .services-page .core-services .service-card h3 {font-size:17px;}
  .services-page .core-services .service-card .price {font-size:16px;}
  .services-page .core-services .service-card > p:not(.desktop-detail) {font-size:15.5px;line-height:1.45;}
  .services-page .core-services .service-card .card-link {font-size:15.5px;}
  .services-page .add-on-services .service-card h3 {font-size:16px;}
  .services-page .add-on-services .service-card .price {font-size:15.5px;}
  .services-page #memberships .service-card h3 {font-size:18px;}
  .services-page #memberships .service-card p:not(.desktop-detail),
  .services-page #memberships .section-intro {font-size:16px;line-height:1.5;}
  .specialty-card h3 {font-size:17.5px;}
  .specialty-card p {font-size:15.5px;}
  .section .check {font-size:16px;line-height:1.5;}
  .form-card label {font-size:16px;}
  .form-card input,.form-card select,.form-card textarea {font-size:16px;min-height:52px;}
  .field-hint,.micro.privacy-note {font-size:14px;}
  .contact-page .form-card h2,.contact-page .info-card h2 {font-size:29px;}
  .contact-page .info-card p {overflow-wrap:anywhere;}
  .site-footer p,.site-footer a {font-size:15px;}
  .footer-links a {min-height:39px;}
  /* Prevent narrow flex/grid children and links from expanding the CSS viewport. */
  .split-layout >*,.grid-3 >*,.form-shell >*,.service-card-body,
  .specialty-card >div,.form-grid >div,.footer-grid >div {min-width:0;max-width:100%;}
  img,video,iframe {max-width:100%;}
}
@media screen and (max-width:360px) {
  .container {width:calc(100% - 1.15rem);}
  .service-overview .featured-services .service-card {grid-template-columns:94px minmax(0,1fr);}
  .service-overview .featured-services .service-card-image.desktop-detail {width:94px;}
  .service-overview .featured-services .service-card-body {padding:.82rem .65rem;}
  .service-overview .featured-services .service-card h3 {font-size:17px;}
  .service-overview .featured-services .service-card-body > p:not(.card-link) {font-size:15px;}
  .services-page .core-services .service-card .price {white-space:normal;}
  .services-page .add-on-services .grid-3 {grid-template-columns:1fr;}
}
