@import url('barlow-semi.css');
/* Automotive display lettering, paired with the existing readable body face. */
:root{--display:'Barlow Semi Condensed','Arial Narrow',Arial,sans-serif}
h1,h2,h3,.hero h1,.services-section h2,.visit-location-heading h2,.intro-grid h2,.faq-grid h2,.feature-copy h2,.contact-grid h2,.page-heading h1,.detail-copy h1,.details-grid h2,.quote-form h3{font-family:var(--display);font-weight:700;letter-spacing:-.015em;line-height:1.06}
.hero h1{font-size:clamp(64px,6.5vw,92px);font-weight:700;line-height:1.01;letter-spacing:-.015em}
h2,.services-section h2,.visit-location-heading h2,.intro-grid h2,.faq-grid h2,.feature-copy h2,.contact-grid h2{font-size:clamp(42px,4.6vw,62px)}
.page-heading h1{font-size:clamp(60px,6.5vw,90px);max-width:900px}
.page-heading{padding-block:66px 42px}
.page-heading .lead{font-size:18px;max-width:680px}
.page-heading .eyebrow{margin-bottom:17px}
.detail-copy h1{font-size:clamp(54px,5.3vw,74px)}
#home-services .visual-service h3{font-family:var(--display);font-size:31px;letter-spacing:-.01em;font-weight:700;line-height:1.1}
.quote-form h3{font-size:34px}.visit-location-copy h3{font-size:36px}.review-band h2{font-size:35px;letter-spacing:-.01em}
.header-call{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 16px;border:1px solid #ffffff70;border-radius:7px;color:#fff;font-size:13px;font-weight:700;white-space:nowrap}
.header-call:hover{background:#ffffff12;color:#ffd43b}
.phone-icon{width:20px;height:20px;display:inline-block;flex:0 0 20px;vertical-align:middle}
nav{gap:21px}nav .language{padding-left:18px!important}
.hero-actions .hero-call{font-size:14px;min-height:55px;padding:16px 20px;border:1px solid #ffffff8c;border-radius:7px;gap:12px;background:#11121565;color:white;box-shadow:none}
.hero-actions .hero-call:hover{background:#ffffff16;color:#fff}
.hero .hero-actions .btn.text{border:0;padding:12px 0;background:none;min-height:45px;font-size:13px}
.hero .hero-actions{gap:12px 17px}
.contact-grid .big-phone{font-family:var(--font);font-size:30px;letter-spacing:-.5px;margin-bottom:24px}
.contact-action-row{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 26px}
.contact-action-row .btn{min-height:54px;font-size:14px;gap:13px}
.contact-action-row .contact-call{background:#e51b2b;color:#fff;border-color:#e51b2b;box-shadow:0 7px 20px #e51b2b21}
.visit-action-row{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.visit-action-row .visit-directions{flex:1;white-space:nowrap;font-size:13px;gap:15px}
.visit-action-row .visit-call-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:16px 19px;font-size:14px;font-weight:700;border:1px solid #ffffff80;border-radius:7px;color:white;white-space:nowrap}
.visit-action-row .visit-call-btn:hover{background:#ffffff12}
.visit-first-dock a.dock-call{background:#f5f4ef;color:#16171a;border-color:#f5f4ef;gap:9px;flex:1.25}
.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.gallery-item{position:relative;display:block;aspect-ratio:4/3;min-height:0;border:1px solid #ffffff1a;border-radius:12px;background:#16171a;isolation:isolate;box-shadow:0 9px 24px #00000017;transition:transform .25s,box-shadow .25s}
.gallery-item::after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#08090b18 20%,#08090be8 100%);z-index:1;pointer-events:none}
.gallery-item img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:contrast(1.025) saturate(1.04);transition:transform .35s}
.gallery-item span{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px;color:#fff;z-index:2;font-family:var(--display);font-size:25px;font-weight:600;letter-spacing:.1px;line-height:1.2;text-shadow:0 2px 8px #0007}
.gallery-item b{display:grid;place-items:center;background:#e51b2b;color:white;border:1px solid #ffffff5c;border-radius:6px;width:33px;height:33px;flex:0 0 33px;font:500 23px Arial;text-shadow:none}
.gallery-item:hover{transform:translateY(-3px);box-shadow:0 14px 30px #0003}.gallery-item:hover img{transform:scale(1.03)}
.gallery-filters{gap:9px;margin-bottom:30px}.gallery-filters button{font-size:14px;min-height:45px;padding:11px 19px}.gallery-filters button[aria-pressed=true]{background:#e51b2b;border-color:#e51b2b;color:white}
.gallery-item[data-category=interior] img{object-position:50% 55%}
.gallery-item[data-category=engine] img{object-position:50% 60%}
.teaser-gallery img{box-shadow:0 10px 25px #00000015;border-color:#bdbcb5}
@media(max-width:1100px) and (min-width:801px){nav{gap:12px;font-size:12px}.header-call{font-size:12px;padding-inline:12px}header .brand,header .brand img{width:205px}nav .btn.small{font-size:12px;padding-inline:12px}nav .language{padding-left:12px!important}}
@media(max-width:800px){
 .hero h1{font-size:clamp(49px,13.4vw,66px);line-height:1.02;letter-spacing:-.01em}.hero-copy{max-width:560px}.hero-copy>p:not(.eyebrow):not(.hero-visit){font-size:16px}
 h2,.services-section h2,.visit-location-heading h2,.intro-grid h2,.faq-grid h2,.feature-copy h2,.contact-grid h2{font-size:clamp(39px,10.7vw,49px);line-height:1.08;letter-spacing:-.01em}
 .page-heading h1{font-size:clamp(47px,13vw,64px);line-height:1.04}.detail-copy h1{font-size:clamp(46px,12.7vw,60px);line-height:1.06}.page-heading .lead{font-size:17px}
 .hero .hero-actions{gap:10px}.hero .hero-actions .btn.primary,.hero-actions .hero-call{flex:1;min-height:51px;max-width:none;font-size:14px;padding:14px 15px;gap:10px;white-space:nowrap}.hero .hero-actions .btn.text{flex:0 0 100%;max-width:none;padding:5px 0 0;min-height:32px;justify-content:flex-start;font-size:13px;border:0;background:none}
 #home-services .visual-service h3{font-size:32px;line-height:1.1;letter-spacing:-.01em}.quote-form h3{font-size:31px;line-height:1.1}.visit-location-copy h3{font-size:33px}.review-band h2{font-size:30px}
 nav{gap:0}.header-call{margin-block:6px;min-height:48px;font-size:15px}nav>a.header-call{padding:12px 16px}
 .contact-grid .big-phone{font-size:26px}.contact-action-row{gap:10px;margin-bottom:25px}.contact-action-row .btn{flex:1;padding:14px 15px;font-size:13px;gap:10px;white-space:nowrap}
 .visit-action-row{gap:10px}.visit-action-row .visit-directions{min-height:54px;white-space:normal;font-size:13px;padding:14px 15px;gap:12px}.visit-action-row .visit-call-btn{min-height:54px;font-size:14px;padding:14px 16px}
 .gallery-grid{grid-template-columns:1fr;gap:18px}.gallery-item,.gallery-item:first-child{grid-column:auto;aspect-ratio:4/3}.gallery-item img,.gallery-item:first-child img{height:100%;width:100%}.gallery-item span{padding:20px;font-size:24px;line-height:1.15}.gallery-item b{width:32px;height:32px;flex-basis:32px}.gallery-filters{gap:8px;margin-bottom:25px}.gallery-filters button{padding:10px 14px;font-size:13px;min-height:44px}
 .visit-first-dock a.dock-call{font-size:14px;gap:8px}.visit-first-dock a.dock-directions{flex:1.7}
}
@media(max-width:370px){.hero h1{font-size:47px}.hero .hero-actions .btn.primary,.hero-actions .hero-call{padding-inline:13px;font-size:13px}.contact-action-row .btn{font-size:12px;padding-inline:12px}.visit-action-row .visit-call-btn{padding-inline:13px}.gallery-item span{padding:18px;font-size:23px}}
@media(prefers-reduced-motion:reduce){.gallery-item,.gallery-item img{transition:none}}

nav>a.header-call{padding:11px 16px;min-width:112px}
@media(max-width:1100px) and (min-width:801px){nav>a.header-call{padding-inline:12px;min-width:100px}}

@media(min-width:801px) and (max-width:1050px){.menu-toggle{display:block;color:white;border:1px solid #ffffff70;border-radius:6px;font-size:13px;padding:11px 15px}.header-inner{height:86px}nav{display:none;position:absolute;top:86px;left:0;right:0;background:#101114;padding:18px 28px;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a:not(.btn){padding:16px 0;border-bottom:1px solid #ffffff20}nav>a.header-call{margin:8px 0;padding:13px 16px}nav .language{border-left:0;padding-left:0!important}nav .btn.small{margin-top:12px}body:has(nav.open){overflow:hidden}}
