/* Keep the monogram visible despite the global responsive image width. */
.header .monogram{width:56px;height:58px;flex:0 0 56px;overflow:hidden}.header .monogram img{max-width:none;width:144px;height:144px;left:-46px;top:-33px}.footer-logo img{max-width:none}
.about-slideshow{position:relative;background:var(--paper)}.about-slides{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--paper)}.about-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;pointer-events:none}.about-slide.is-active{opacity:1}.about-photo .about-slide img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center}.about-slideshow figcaption{padding:16px 80px 16px 0;min-height:64px;font-size:.875rem;line-height:1.5;color:var(--muted)}.about-slide-pause{position:absolute;bottom:12px;right:0;min-width:64px;min-height:44px;padding:8px 10px;color:var(--ink);background:transparent;border:1px solid var(--gold);font:inherit;font-size:.875rem;cursor:pointer}.about-slide-pause:hover{background:#c7ad7820}.about-slide-pause:focus-visible{outline:3px solid #82692f;outline-offset:3px}
@media(max-width:600px){.header .monogram{width:44px;height:48px;flex-basis:44px}.header .monogram img{width:118px;height:118px;left:-38px;top:-27px}}
@media(prefers-reduced-motion:reduce){.about-slide{transition:none}}

/* Compact service location and balanced About section. */
.service-callout{container-type:inline-size}.service-callout strong{white-space:nowrap;font-size:clamp(1.125rem,8cqi,1.6rem);line-height:1.35}
.about{align-items:center;row-gap:28px}.about-heading{grid-column:1/-1}.about-heading .eyebrow{margin-bottom:18px}.about-heading h2{margin-bottom:0}.about .about-slideshow{margin:0;width:100%;max-width:440px;justify-self:start}.about-copy{align-self:center}.about-copy .lead{margin-bottom:24px}.about-copy p{margin-bottom:22px}.about-copy .text-link{margin-top:4px}
@media(max-width:900px){.about{gap:28px}.about-heading{grid-column:auto}.about-copy{align-self:start}.about .about-slideshow{justify-self:center}.service-callout strong{font-size:clamp(1.125rem,6cqi,1.6rem)}}
/* Full-width footer navigation, independent of the logo's width. */
.footer-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px}.footer-top>div:first-child{grid-column:1;grid-row:1;justify-self:start}.footer-top .social-links{grid-column:2;grid-row:1;justify-self:end}.footer-top>nav.footer-links{grid-column:1/-1;grid-row:2;width:100%;justify-self:center;justify-content:center;flex-wrap:wrap;text-align:center;gap:8px 24px}
.vehicle-gallery-preview{margin-top:28px}.vehicle-gallery-preview h3{font-size:1.35rem;line-height:1.4;margin-bottom:10px}.vehicle-gallery-preview>p{color:var(--muted);font-size:.9rem;line-height:1.6;margin-bottom:18px}.vehicle-photo-placeholders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vehicle-photo-placeholders>div{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 8px;border:1px dashed var(--gold);background:#c7ad780d;text-align:center;min-width:0}.vehicle-photo-placeholders strong{font-size:.875rem;font-family:inherit;line-height:1.4}.vehicle-photo-placeholders span{font-size:.75rem;color:var(--muted);line-height:1.4}
.location-map{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.location-map p{font-size:.875rem;line-height:1.6}.location-map .button{width:100%;margin:8px 0 12px;white-space:normal;min-height:44px;padding:12px}.location-map>a{display:block;width:fit-content;margin-top:12px;font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:4px}.location-map iframe{display:block;width:100%;aspect-ratio:4/3;min-height:240px;border:0;margin-bottom:16px;background:var(--paper)}
@media(max-width:900px){.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:1;grid-row:1;justify-self:center}.footer-top>nav.footer-links{grid-column:1;grid-row:2}.footer-top .social-links{grid-column:1;grid-row:3;justify-self:center}}
@media(max-width:380px){.vehicle-photo-placeholders{grid-template-columns:1fr}.vehicle-photo-placeholders>div{aspect-ratio:3/1}.location-map iframe{min-height:200px}}
/* Inline map and accessible photo enlargement. */
.location-map iframe{aspect-ratio:1/1;min-height:320px;border:1px solid var(--line)}
.vehicle-photo-open{position:relative;display:block;color:var(--ink)}.vehicle-photo-open>span{position:absolute;right:12px;bottom:12px;padding:8px 12px;background:var(--paper);font-size:.8rem}.vehicle-photo-open:focus-visible,.vehicle-photo-placeholders button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.vehicle-photo-placeholders>button{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 8px;border:1px dashed var(--gold);background:#c7ad780d;text-align:center;min-width:0;font:inherit;color:var(--ink);cursor:pointer}.vehicle-photo-placeholders>button:hover{background:#c7ad7825}
dialog.vehicle-gallery-dialog{width:min(980px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:90dvh;margin:auto;padding:28px;border:1px solid var(--gold);background:var(--paper);color:var(--ink);overflow:auto}dialog.vehicle-gallery-dialog::backdrop{background:rgb(0 0 0/.8)}.vehicle-gallery-dialog h2{font-size:clamp(1.35rem,4vw,2rem);margin:12px 0 24px}.gallery-close{display:block;margin-left:auto;padding:10px 14px;min-height:44px;font:inherit;cursor:pointer;border:1px solid var(--gold);background:transparent;color:var(--ink)}.gallery-large-image{width:100%;max-height:65dvh;object-fit:contain}.gallery-image-note{font-size:.875rem;color:var(--muted);margin:16px 0 0}.gallery-empty{padding:40px 20px;border:1px dashed var(--gold);text-align:center}.gallery-empty p:first-child{font-family:Georgia,serif;font-size:1.6rem}.gallery-empty p{line-height:1.6}.vehicle-gallery-dialog [hidden]{display:none!important}
@media(max-width:600px){dialog.vehicle-gallery-dialog{padding:16px}.location-map iframe{min-height:260px}}@media(max-width:380px){.vehicle-photo-placeholders>button{aspect-ratio:3/1}}

/* Stack the hero links and give the slideshow caption its full width. */
.hero .hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.about-slideshow figcaption{padding-right:0;min-height:0}.vehicle-photo-open{cursor:zoom-in}

/* A gentle moving image with a quicker crossfade. */
.about-slide{transition:opacity .65s ease}.about-slideshow.is-playing .about-slide.is-active img{animation:about-image-drift 4.9s ease-out both}.about-slide:nth-child(2) img{transform-origin:50% 35%}
@keyframes about-image-drift{from{transform:scale(1)}to{transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.about-slide{transition:none}.about-slideshow.is-playing .about-slide.is-active img{animation:none;transform:none}}
