/* The brand eyebrow follows the existing headline entrance without moving layout. */
@keyframes falconBrandSettle{from{opacity:.45;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.home-hero .hero-kicker{animation:falconBrandSettle 1.25s ease both}
@media(prefers-reduced-motion:reduce){.home-hero .hero-kicker{animation:none!important;opacity:1;transform:none}}
/* Desktop photo panels are filled edge to edge, using individually inspected
   originals and focal points. No filters, invented image detail, or image-byte
   changes. Text lives in its own dark column. Mobile hero rules stay untouched. */
@media(min-width:801px){
 .desktop-nav .services-menu>summary{gap:3px}
 .desktop-nav .services-menu>summary>span{margin:0;font-size:.9em;line-height:1}
 /* Restore the approved v19 Home typography; text width and placement inherit unchanged. */
 .home-hero h1{max-width:650px}

 .hero.inner-hero{--hero-panel-start:50%;background:#101010;display:flex;align-items:center;padding:150px 6% 80px;min-height:clamp(660px,43.75vw,840px)}
 .hero.inner-hero::before{left:var(--hero-panel-start);right:0;width:calc(100% - var(--hero-panel-start));background-size:cover;background-position:var(--desktop-hero-position,50% 55%);background-repeat:no-repeat;filter:none;transform:none}
 body .hero.inner-hero::after{background:linear-gradient(90deg,#101010 0%,#101010 calc(var(--hero-panel-start) - 2%),#10101000 calc(var(--hero-panel-start) + 6%)),linear-gradient(180deg,#0004 0%,transparent 28%,#0001 100%)}
 .hero.inner-hero .hero-content{width:100%;max-width:41vw;margin:0}
 .hero.inner-hero .hero-kicker{margin-bottom:22px}
 .hero.inner-hero h1{max-width:100%;font-size:clamp(38px,3.7vw,62px);line-height:1.12;text-wrap:balance}
 body .hero.inner-hero .hero-description{max-width:480px;font-size:15px;line-height:1.75}
 .hero.inner-hero .actions{gap:12px;margin-top:28px}
 .hero.inner-hero .actions .button{flex:1 1 170px;width:auto;max-width:240px;min-height:60px}

 /* Square source: truck, mirrors and tires remain in frame at wide sizes. */
 body[data-page="services"] .inner-hero{--desktop-hero-position:50% 54%}
 body[data-page="services"] .inner-hero::before{background-image:url('assets/owner-black-gmc.jpg')}
 body[data-page="mobile-detailing"] .inner-hero{--desktop-hero-position:50% 64%}
 body[data-page="mobile-detailing"] .inner-hero::before{background-image:url('assets/owner-silver-chevrolet.jpg')}
 body[data-page="interior-restoration"] .inner-hero{--desktop-hero-position:50% 56%}
 body[data-page="interior-restoration"] .inner-hero::before{background-image:url('assets/owner-cadillac-rear-cabin.jpeg')}
 body[data-page="paint-correction"] .inner-hero{--desktop-hero-position:53% 49%}
 body[data-page="paint-correction"] .inner-hero::before{background-image:url('assets/owner-machine-polishing-tool-cleaned.png')}

 /* This closer portrait needs a narrower, taller panel to retain roof and wheel. */
 body[data-page="ceramic-coating"] .inner-hero{--hero-panel-start:56%;--desktop-hero-position:50% 74%;min-height:clamp(720px,46vw,900px)}
 body[data-page="ceramic-coating"] .inner-hero .hero-content{max-width:47vw}
 body[data-page="ceramic-coating"] .inner-hero::before{background-image:url('assets/owner-lexus-gloss.jpg')}
 /* The PPF truck fills the right half; extra driveway and roofline are cropped. */
 body[data-page="paint-protection-film"] .inner-hero{--desktop-hero-position:50% 53%}
 body[data-page="paint-protection-film"] .inner-hero::before{background-image:url('assets/owner-green-nissan-ppf.jpeg')}
 body[data-page="luxury-fleet"] .inner-hero{--desktop-hero-position:72% 55%}
 body[data-page="luxury-fleet"] .inner-hero::before{background-image:url('assets/owner-audi-sedan-detail.jpg')}
 body[data-page="gallery"] .inner-hero{--desktop-hero-position:50% 52%}
 body[data-page="gallery"] .inner-hero::before{background-image:url('assets/owner-rv-wide-original.jpeg')}
 body[data-page="about"] .inner-hero{--desktop-hero-position:50% 65%}
 body[data-page="about"] .inner-hero::before{background-image:url('assets/owner-hyundai-palisade-detail.jpg')}
 body[data-page="contact"] .inner-hero{--desktop-hero-position:55% 49%}
 body[data-page="contact"] .inner-hero::before{background-image:url('assets/owner-cream-interior.jpg')}
 body[data-page="contact"] .inner-hero::after{
  background:radial-gradient(ellipse at 78% 31%,#fff7df12 0%,transparent 34%),linear-gradient(90deg,#101010 0%,#101010 calc(var(--hero-panel-start) - 2%),#10101000 calc(var(--hero-panel-start) + 6%)),linear-gradient(180deg,#0004 0%,transparent 28%,#0001 100%);
 }
 body[data-page="faq"] .inner-hero{--desktop-hero-position:51% 51%}
 body[data-page="faq"] .inner-hero::before{background-image:url('assets/owner-audi-headlight.jpg')}
}
/* Narrow desktop: shorter copy and a wider photo panel avoid the very tall
   text column that otherwise over-crops the square originals. Phones are intact. */
@media(min-width:801px) and (max-width:1100px){
 .hero.inner-hero{--hero-panel-start:42%;padding-top:132px;padding-bottom:60px;min-height:640px}
 .hero.inner-hero .hero-content{max-width:33vw}
 body[data-page="services"] .inner-hero{--desktop-hero-position:100% 54%}
 body[data-page="mobile-detailing"] .inner-hero{--desktop-hero-position:50% 64%}
 .hero.inner-hero .hero-kicker{font-size:12px;line-height:1.5;margin-bottom:16px}
 .hero.inner-hero h1{font-size:clamp(30px,3vw,34px);line-height:1.12}
 body .hero.inner-hero .hero-description{font-size:13px;line-height:1.65;margin-top:18px}
 .hero.inner-hero .actions{gap:10px;margin-top:22px}
 .hero.inner-hero .actions .button{flex-basis:140px;max-width:210px;min-height:52px;padding:14px 10px;font-size:11px}
 body[data-page="ceramic-coating"] .inner-hero{--hero-panel-start:50%;min-height:700px}
 body[data-page="ceramic-coating"] .inner-hero .hero-content{max-width:41vw}
}
/* Two documented coating projects, not a claim about every gallery vehicle. */
.ceramic-projects{padding:76px 6%;background:#111;border-top:1px solid #ffffff20}
.ceramic-projects>header{max-width:1320px;margin:0 auto 30px;display:flex;justify-content:space-between;align-items:end;gap:32px}
.ceramic-projects .eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#b8bfba;margin:0 0 14px}
.ceramic-projects h2{font-size:clamp(32px,3.8vw,52px);line-height:1.12;letter-spacing:-.035em;margin:0;text-transform:none}
.ceramic-projects>header>p{max-width:380px;color:#bcc2be;font-size:13px;line-height:1.8;margin:0}
.ceramic-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;max-width:1320px;margin:auto}
.ceramic-project-grid figure{min-width:0;margin:0}
.ceramic-project-grid a{display:block;position:relative;aspect-ratio:4/3;border-radius:4px;overflow:hidden}
.ceramic-project-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;filter:none}
.ceramic-project-grid figcaption{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;font-size:12px;line-height:1.7;color:#ddd;padding-top:14px}
.ceramic-project-grid figcaption span+span{color:#aeb8b1}
.ceramic-project-grid a:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:700px){.ceramic-projects{padding:48px 22px}.ceramic-projects>header{display:block;margin-bottom:24px}.ceramic-projects>header>p{margin-top:18px}.ceramic-project-grid{grid-template-columns:minmax(0,1fr);gap:25px}}

.footer-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 28px;padding:20px 6%;font-size:12px;line-height:1.7}.footer-legal a{color:#bcbcbc}.footer-legal a:focus-visible{outline:2px solid #fff;outline-offset:5px}

/* Mobile Detailing's final photograph is currently the black Kia, not a white
   car. Preserve that source and give its roof, mirrors and bumper enough height.
   This is the only mobile photo-frame change outside the requested sliders. */
body[data-page="mobile-detailing"] .photo-cta{max-width:1440px;margin-inline:auto}
body[data-page="mobile-detailing"] .photo-cta>.cta-photo{min-height:0;aspect-ratio:1/1}
body[data-page="mobile-detailing"] .photo-cta>.cta-photo img{object-fit:cover;object-position:50% 50%;filter:none;transform:none}

/* Contact-only edge vignette: keep the original cabin center crisp and untinted. */
body[data-page="contact"] .inner-hero::before{box-shadow:inset 0 0 clamp(36px,6vw,110px) clamp(12px,2vw,34px) #000a}

/* The genuine square BMW original already includes the whole tire and roof. */
body[data-page="luxury-fleet"] .fleet-bmw-frame{min-height:0;max-height:none;aspect-ratio:1/1;align-self:center}
body[data-page="luxury-fleet"] .fleet-bmw-frame img{object-fit:contain;object-position:center;filter:none}

/* v23 About only: closer framing of the untouched owner photograph.
   Keep the genuine vehicle, finish, wheels and results unchanged. */
@media(min-width:801px){
 body[data-page="about"] .inner-hero{min-height:max(660px,43.75vw)}
 body[data-page="about"] .inner-hero::before{background-size:112% auto;background-position:50% 63%;filter:none;transform:none}
}
@media(min-width:801px) and (max-width:1100px){
 body[data-page="about"] .inner-hero{min-height:640px}
}
/* The covered steering wheel, seat and floor stay in natural proportions. */
body[data-page="about"] .intro-split .about-interior-photo img{object-fit:cover;object-position:50% 55%;filter:none;transform:none}
@media(max-width:800px){
 body[data-page="about"] .intro-split .about-interior-photo{min-height:0;aspect-ratio:4/5;max-height:680px}
}
