/* Shared category pages and mobile refinements. */
html{-webkit-text-size-adjust:100%}
body{overflow-wrap:break-word}
.button{justify-content:center;text-align:center}
.hero__actions{flex-wrap:wrap}
.discipline-line span::before{content:'';width:9px;height:2px;background:var(--yellow);flex:none}
.brand-tabs a{justify-content:center}
.site-nav a[aria-current=page],.nav-dropdown.is-current>summary{color:var(--yellow)}
.nav-dropdown{position:relative}
.nav-dropdown>summary{font-size:14px;font-weight:600;cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;min-height:44px}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary::after{content:'';width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.nav-dropdown[open]>summary::after{transform:rotate(225deg);margin-top:3px}
.nav-dropdown__links{position:absolute;left:-20px;top:calc(100% + 12px);width:300px;display:grid;background:var(--surface);border:1px solid #3a3f43;padding:10px;box-shadow:0 16px 40px #0007}
.nav-dropdown__links a{font-size:14px;padding:12px;line-height:1.5;border-bottom:1px solid var(--line)}
.nav-dropdown__links a:last-child{border-bottom:0}
.nav-dropdown__links a:hover{background:var(--steel);color:var(--yellow)}
.nav-dropdown__links a::after{display:none}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:9px 24px;font-size:14px;line-height:1.6}
.footer-links a:hover{color:var(--yellow)}
.category-section{background:var(--surface)}
.category-section__heading{margin-bottom:45px}
.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
.category-link{display:flex;gap:22px;align-items:flex-start;padding:28px 0;border-top:1px solid #4a5056;min-width:0;transition:border-color .25s}
.category-link:hover{border-color:var(--yellow)}
.category-link:hover h3{color:var(--yellow)}
.category-link__number{font-size:12px;color:var(--yellow);padding-top:4px;flex:none}
.category-link h3{font:600 20px/1.4 Inter,sans-serif;transition:color .25s}
.category-link p{font-size:16px;line-height:1.7;color:var(--muted);margin-top:9px;max-width:43ch}
.category-link:last-child,.category-link:nth-last-child(2){border-bottom:1px solid var(--line)}
.page-intro{padding-top:160px;padding-bottom:75px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:35px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#555e66}
.breadcrumbs a:hover{color:var(--yellow)}
.page-intro .eyebrow{font-size:12px;color:var(--yellow);margin-bottom:20px}
.page-intro h1{font-size:clamp(70px,7.7vw,116px);line-height:.97;max-width:100%;overflow-wrap:normal}
.page-intro__copy{font-size:18px;line-height:1.7;max-width:55ch;margin-top:28px;color:#bbc2c8}
.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}
.coverage{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--surface)}
.coverage h2{font-size:clamp(58px,6vw,88px)}
.coverage-list{list-style:none;padding:0;margin:0}
.coverage-list li{padding-block:22px;border-top:1px solid var(--line)}
.coverage-list h3{font:600 18px/1.5 Inter,sans-serif;margin-bottom:10px}
.coverage-list p{font-size:16px;line-height:1.75;color:var(--muted)}
.page-cta{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;border-top:1px solid var(--line)}
.page-cta .eyebrow{color:var(--yellow);margin-bottom:22px}
.page-cta h2{font-size:clamp(60px,6vw,90px)}
.page-cta p{font-size:16px;line-height:1.75;color:var(--muted);max-width:46ch}
.page-cta p.eyebrow{font-size:12px;color:var(--yellow)}
.related-link{padding-top:30px;padding-bottom:45px}
.contact--page{margin-top:100px;min-height:650px}
.contact h1{font-size:clamp(88px,10.2vw,152px);line-height:.9}
.contact h1>span{color:var(--yellow)}
.page-performance .performance{padding-top:30px}
.page-engine-repairs .engine{padding-top:20px}
.page-services .category-section{padding-top:55px;padding-bottom:65px;background:var(--black)}
.page-services .services{padding-top:75px}
.service__body .inline-link{display:block;width:max-content;max-width:100%}
.hero__foot p{font-size:14px}
.scroll-cue{border-bottom:1px solid #535b60;padding-bottom:4px}

@media(max-width:1100px){
 .site-nav{gap:24px}
 .site-footer{flex-wrap:wrap;gap:35px}
 .footer-meta{max-width:100%;flex-basis:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;text-align:left}
 .footer-meta>div{margin-block:0}
 .footer-meta .copyright{flex-basis:100%}
 .coverage,.page-cta{gap:45px}
}
@media(max-width:700px){
 :root{--header-height:72px;--gutter:24px}
 .site-header,.site-header.is-scrolled{height:72px}
 .brand img{width:112px}
 .section-shell{padding-block:52px}
 h2,.intro h2,.services__heading h2,.engine h2,.platforms h2,.performance h2,.coverage h2,.page-cta h2{font-size:clamp(44px,12vw,62px);line-height:1.05;overflow-wrap:normal}
 .section-label{margin-bottom:20px;letter-spacing:.1em}
 .hero{display:flex;flex-direction:column;height:auto;min-height:0;background:var(--black)}
 .hero__content{order:1;width:100%;padding:110px var(--gutter) 0;margin:0;z-index:2}
 .hero .eyebrow{font-size:12px;letter-spacing:.055em;line-height:1.5;margin-bottom:22px}
 .hero h1{font-size:clamp(84px,24vw,120px);line-height:.9;letter-spacing:0;max-width:100%}
 .hero__copy{font-size:16px;line-height:1.65;max-width:36ch;margin-top:22px}
 .hero__actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch;margin-top:26px}
 .hero__actions .button,.hero__actions .text-link{width:100%;min-width:0;min-height:50px;font-size:14px;line-height:1.5;justify-content:center;text-align:center;padding:13px 12px}
 .hero__media{order:2;position:relative;inset:auto;width:100%;height:auto;aspect-ratio:2/1;margin-top:18px;overflow:hidden;z-index:1}
 .hero__media img{position:static;width:100%;max-width:100%;height:100%;right:auto;bottom:auto;object-fit:contain;transform:none!important;filter:none}
 .hero__shade{display:none}
 .hero__foot{order:3;position:relative;left:auto;right:auto;bottom:auto;padding:19px var(--gutter) 24px;display:flex;flex-wrap:wrap;gap:12px 20px;z-index:2;background:var(--black)}
 .hero__foot p{font-size:12px;line-height:1.5}
 .scroll-cue{font-size:12px;line-height:1.5}
 .hero__foot-note{display:none}
 .intro{padding-bottom:45px}
 .intro>.section-label{padding-bottom:18px;margin-bottom:20px}
 .intro__body{padding-top:0;gap:24px}
 .intro__copy p,.intro__copy p+p{font-size:16px;line-height:1.7}
 .intro__copy p+p{margin-top:16px}
 .discipline-line{margin-top:25px;gap:12px;padding-bottom:20px}
 .discipline-line span{font-size:12px;letter-spacing:.06em;line-height:1.5}
 .category-section__heading{margin-bottom:30px}
 .category-grid{grid-template-columns:1fr;gap:0}
 .category-link{padding:23px 0;gap:16px}
 .category-link h3{font-size:18px;line-height:1.45}
 .category-link p{font-size:16px;line-height:1.65;margin-top:7px}
 .category-link:nth-last-child(2){border-bottom:0}
 .platforms__heading{gap:24px;margin-bottom:25px}
 .brand-tabs a{min-width:115px;justify-content:center;font-size:25px;padding:14px 20px}
 .platform-panel__content{padding:28px 24px 32px}
 .platform-panel h3{font-size:clamp(44px,12vw,60px);line-height:1.03}
 .contact__top{gap:15px;padding-bottom:22px}
 .contact__body{padding-top:30px;gap:28px}
 .contact h1,.contact h2{font-size:clamp(70px,21vw,104px);line-height:.94;overflow-wrap:normal}
 .contact__copy>.button{min-height:50px}
 .contact__status{font-size:14px;letter-spacing:.02em}
 .contact__email{font-size:14px;overflow-wrap:anywhere}
 .contact--page{margin-top:72px;min-height:0;padding-top:35px}
 .site-nav{top:72px;height:calc(100dvh - 72px);padding-top:22px;padding-bottom:calc(28px + env(safe-area-inset-bottom));gap:0}
 .site-nav>a,.nav-dropdown>summary{font:400 30px/1.2 Bebas,sans-serif;padding:17px 0;border-bottom:1px solid var(--line)}
 .nav-dropdown>summary{justify-content:space-between;min-height:68px}
 .nav-dropdown__links{position:static;width:100%;border:0;border-left:2px solid var(--yellow);margin:15px 0 6px;padding:0 0 0 16px;background:none;box-shadow:none}
 .nav-dropdown__links a{font:400 16px/1.5 Inter,sans-serif;padding:12px 4px;border-bottom:1px solid var(--line)}
 .site-nav .nav-contact{font:600 16px/1.5 Inter,sans-serif;padding:14px 18px;margin-top:24px;justify-content:center}
 .page-intro{padding-top:110px;padding-bottom:45px}
 .breadcrumbs{font-size:14px;gap:7px;margin-bottom:28px}
 .page-intro h1{font-size:clamp(44px,13.5vw,72px);line-height:1.02}
 .page-intro__copy{font-size:16px;line-height:1.7;margin-top:24px}
 .page-actions{gap:18px;margin-top:25px}
 .page-actions .button{min-height:50px;padding-inline:20px}
 .coverage,.page-cta{grid-template-columns:1fr;gap:30px}
 .coverage-list li{padding-block:20px}
 .coverage-list h3{font-size:18px}
 .coverage-list p{font-size:16px}
 .page-cta .eyebrow{margin-bottom:18px}
 .page-services .category-section{padding-top:15px;padding-bottom:45px}
 .page-services .services{padding-top:50px}
 .page-engine-repairs .engine{padding-top:10px;gap:32px}
 .page-performance .performance{padding-top:10px}
 .timing{padding-block:52px}
 .timing h2{font-size:clamp(52px,14vw,72px);line-height:1.02}
 .timing__points span{font-size:14px;line-height:1.5}
 .process-list li{gap:16px}
 .footer-links{margin-top:28px;gap:10px 25px;font-size:14px}
 .footer-meta{display:block;margin-top:27px}
 .footer-meta>div{margin-block:18px}
 .site-footer{padding-block:35px}
 body:not(.js-ready) .site-nav{height:auto;padding:0}
 body:not(.js-ready) .site-nav>a{font:600 14px/1.5 Inter,sans-serif;padding:0}
 body:not(.js-ready) .site-header{height:auto}
 body:not(.js-ready) .nav-dropdown>summary{font:600 14px/1.5 Inter,sans-serif;padding:0;min-height:0;border:0}
 body:not(.js-ready) .nav-dropdown__links{position:absolute;width:240px;background:var(--surface);border:1px solid var(--line);padding:12px;z-index:1}
}
@media(max-width:374px){
 :root{--gutter:20px}
 .hero__content{padding-top:105px;padding-bottom:0}
 .hero h1{font-size:84px}
 .hero__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .hero__actions .button{min-width:0}
 .hero__media img{width:100%;right:auto;bottom:auto}
 .hero__foot{left:auto;right:auto;padding-inline:20px}
 .intro h2,.platforms h2,.services__heading h2,.performance h2{font-size:44px}
 .contact h1,.contact h2{font-size:70px}
 .brand-tabs a{min-width:105px}
}
@media(prefers-reduced-motion:reduce){.nav-dropdown__links a,.category-link,.category-link h3{transition:none}}
