/* Perfomax: motorsport identity and clear routes from interest to products. */
.company-page { color:#17191b; background:#fff; }
.company-wrap { width:100%; max-width:1240px; margin-inline:auto; padding-inline:clamp(22px,4vw,60px); }
.company-page h1,.company-page h2,.company-page h3,.company-page h4,.company-page p,.company-page figure { margin:0; }
.company-page a:focus-visible,.company-page button:focus-visible { outline:3px solid #c18b00; outline-offset:5px; }
.company-page [hidden] { display:none!important; }
.company-eyebrow { font-size:12px; font-weight:800; letter-spacing:.12em; line-height:1.6; }
.company-page h2 { font-size:clamp(30px,3.5vw,45px); line-height:1.16; letter-spacing:-.05em; font-weight:800; }
.company-link { display:inline-flex; align-items:center; padding-block:10px; border-bottom:1px solid currentColor; font-size:14px; font-weight:700; text-decoration:none; color:inherit; }
.company-link:hover { color:#8b6200; }
.company-intro { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:#111416; }
.company-photo { position:absolute; z-index:-1; inset:0; }
.company-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:62% center; }
.company-photo::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#080c10ed 0%,#080c10bb 34%,#080c1022 70%),linear-gradient(0deg,#080c1080,transparent 35%); pointer-events:none; }
.company-photo figcaption { position:absolute; z-index:1; bottom:22px; right:clamp(22px,4vw,60px); color:#e1e4e6; font-size:12px; line-height:1.6; }
.company-photo figcaption span { color:#ffcd22; margin-inline:7px; }
.company-hero-layout { display:flex; align-items:center; min-height:calc(100vh - var(--company-header-height,84px)); min-height:calc(100dvh - var(--company-header-height,84px)); padding-block:60px 76px; }
.company-hero-content { max-width:680px; }
.company-intro h1 { font-size:clamp(64px,7.4vw,92px); letter-spacing:-.065em; line-height:1; font-weight:800; }
.company-intro h1 span { display:block; color:#ffcd22; font-size:.82em; letter-spacing:-.055em; margin-top:6px; }
.company-intro .company-hero-lead { max-width:410px; margin-top:28px; font-size:16px; line-height:1.8; color:#e1e4e6; }
.company-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px 26px; margin-top:30px; }
.company-hero-advice { display:inline-flex; align-items:center; gap:10px; padding-block:14px; color:#fff; font-size:13px; font-weight:600; line-height:1.5; text-decoration:none; }
.company-hero-advice:hover { color:#ffcd22; text-decoration:underline; text-underline-offset:5px; }
@keyframes company-intro-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
.company-hero-content h1 { animation:company-intro-enter .45s ease-out both; }
.company-hero-lead { animation:company-intro-enter .45s .07s ease-out both; }
.company-hero-actions { animation:company-intro-enter .45s .14s ease-out both; }
.company-team { padding-block:clamp(55px,6vw,80px); scroll-margin-top:100px; }
.company-team { border-top:1px solid #ddd; }
.company-team-head { display:grid; grid-template-columns:1.3fr 1fr; align-items:end; gap:35px; margin-bottom:32px; }
.company-team-head h2 { color:#17191b; font-size:clamp(38px,5.3vw,68px); line-height:1.03; }
.company-team-head h2 span { color:#b91325; }
.company-team-head .company-eyebrow { display:flex; flex-wrap:wrap; align-items:center; gap:12px; text-transform:none; font-size:14px; letter-spacing:-.01em; }
.company-team-head .company-eyebrow span { color:#b91325; }
.company-team-head .company-eyebrow,.company-range-head .company-eyebrow { margin-bottom:16px; }
.company-team-head > p { font-size:16px; line-height:1.7; color:#62666b; max-width:390px; padding-bottom:3px; }
.company-film { display:grid; grid-template-columns:1.45fr 1fr; background:#f3f3ef; }
.company-film-screen { aspect-ratio:16/9; background:#111416; position:relative; align-self:center; }
.company-film-screen iframe { width:100%; height:100%; position:absolute; inset:0; border:0; }
.company-film-play { position:relative; display:block; width:100%; height:100%; padding:0; border:0; background:#111416; color:#fff; cursor:pointer; overflow:hidden; }
.company-film-play > img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.company-film-play::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 50%); }
.company-film-play:hover > img { transform:scale(1.035); }
.company-play-icon { position:absolute; z-index:1; top:50%; left:50%; transform:translate(-50%,-50%); width:64px; height:64px; display:grid; place-items:center; border-radius:50%; color:#111416; background:#ffc107; box-shadow:0 4px 24px #0006; }
.company-film-label { position:absolute; z-index:1; bottom:24px; left:24px; right:24px; display:flex; justify-content:space-between; gap:16px; font-size:14px; font-weight:700; }
.company-film-label span { font-variant-numeric:tabular-nums; }
.company-film-copy { padding:clamp(24px,3vw,40px); align-self:center; }
.company-film-copy .company-eyebrow { color:#62666b; margin-bottom:16px; }
.company-film-copy h3 { font-size:clamp(24px,2.7vw,33px); line-height:1.15; letter-spacing:-.04em; font-weight:800; margin-bottom:16px; }
.company-film-copy > p:not(.company-eyebrow) { font-size:16px; line-height:1.75; }
.company-film-copy .company-video-consent { font-size:12px!important; color:#62666b; margin-top:20px; }
.company-film-copy .company-link { margin-top:8px; }
.company-film-stop { display:block; background:none; border:0; padding:12px 0 0; font:600 14px 'Montserrat',sans-serif; text-decoration:underline; cursor:pointer; }
.company-results { margin-top:44px; }
.company-results-head { display:flex; gap:18px; align-items:center; justify-content:space-between; margin-bottom:24px; }
.company-results-head h3 { font-size:22px; font-weight:700; letter-spacing:-.04em; }
.company-results-head > span { font-size:clamp(32px,4vw,48px); line-height:1; font-weight:800; letter-spacing:-.06em; color:#b91325; }
.company-results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.company-results-grid article { padding:26px 24px; background:#f5f5f2; border-top:3px solid #b91325; display:flex; flex-direction:column; }
.company-result-event { display:flex; align-items:center; gap:9px; color:#555b60; font-size:12px; font-weight:700; margin-bottom:24px; }
.company-result-event img { width:24px; height:16px; object-fit:cover; }
.company-results h4 { font-size:clamp(23px,2.7vw,32px); line-height:1.15; letter-spacing:-.045em; font-weight:800; }
.company-results-grid p { font-size:14px; line-height:1.8; color:#62666b; margin-top:12px; }
.company-results-grid a { display:inline-block; font-size:12px; color:#303438; text-underline-offset:4px; margin-top:auto; padding-top:24px; line-height:1.7; }
.company-range { padding-block:44px; scroll-margin-top:100px; }
.company-range-head { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-bottom:24px; }
.company-range-head h2 { font-size:clamp(25px,3vw,36px); line-height:1.15; }
.company-range-head .company-link { font-size:13px; gap:12px; flex-shrink:0; min-height:44px; }
.company-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.company-product-card { min-width:0; }
.company-product { display:block; height:100%; color:inherit; text-decoration:none; }
.company-product-image { display:grid; place-items:center; height:200px; background:radial-gradient(ellipse 34% 27% at 50% 78%,#fff4c9 0%,#fff9e8 52%,#fdfcf8 100%); border-radius:3px; }
.company-product-image img { display:block; width:100%; height:100%; object-fit:contain; padding:16px 24px; filter:drop-shadow(0 9px 7px #17191b15); transition:transform .4s cubic-bezier(.22,1,.36,1),filter .4s ease; }
.company-product-copy { padding-top:16px; }
.company-product-category { display:flex; align-items:center; justify-content:space-between; gap:6px; color:#62666b; font-size:12px; font-weight:500; line-height:1.6; }
.company-product-category span { display:grid; place-items:center; flex:0 0 24px; height:24px; border-radius:50%; background:#ffcc00; color:#17191b; font-size:14px; transition:transform .3s ease; }
.company-product-copy h3 { font-size:20px; line-height:1.3; font-weight:700; letter-spacing:-.035em; margin-top:5px; }
.company-product-description { color:#3b3e41; font-size:13px; font-weight:500; line-height:1.7; margin-top:8px!important; }
.company-swipe-hint { display:none; }
.company-product:focus-visible { outline-offset:7px!important; }
@media(hover:hover) and (pointer:fine) {
 .company-product:hover img { transform:translateY(-5px); filter:drop-shadow(0 14px 9px #17191b20); }
 .company-product:hover .company-product-category span { transform:translate(2px,-2px); }
}
.company-vp { padding-block:clamp(60px,7vw,100px); background:#111416; color:#fff; scroll-margin-top:100px; }
.company-vp-grid { display:grid; grid-template-columns:.85fr 1.3fr; gap:45px 70px; align-items:center; }
.company-vp-logo { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.company-vp-logo img { display:block; width:min(100%,320px); height:auto; }
.company-vp-logo > span { color:#fff; font-size:16px; font-weight:800; font-style:italic; letter-spacing:.15em; margin-top:-34px; }
.company-vp-copy .company-eyebrow { color:#ffcd22; margin-bottom:22px; }
.company-vp-copy > p:not(.company-eyebrow) { color:#c0c2c5; max-width:540px; font-size:16px; line-height:1.85; margin-top:25px; }
.company-vp-copy .company-link { margin-top:20px; color:#eee; font-size:12px; }
.company-vp-copy .company-link:hover { color:#ffcd22; }
.company-region { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.35fr; align-items:center; gap:40px; padding-top:48px; border-top:1px solid #ffffff30; margin-top:20px; }
.company-region-copy .company-eyebrow { color:#9ea6ab; margin-bottom:20px; }
.company-region h3 { font-size:clamp(26px,3vw,36px); font-weight:800; letter-spacing:-.045em; line-height:1.2; }
.company-region-copy > p:not(.company-eyebrow) { margin-top:20px; font-size:16px; line-height:1.75; color:#c0c2c5; }
.company-countries { display:flex; flex-wrap:wrap; gap:14px 24px; list-style:none; padding:0; margin:28px 0 0; font-size:14px; font-weight:600; }
.company-countries li { display:flex; align-items:center; gap:9px; }
.company-countries img { object-fit:cover; width:24px; height:16px; border-radius:1px; }
.company-region-map img { display:block; width:100%; height:auto; }
.company-process { background:#ffcd22; padding-top:clamp(55px,6vw,85px); }
.company-offer-grid { display:grid; grid-template-columns:1.25fr 1fr; gap:70px; align-items:center; }
.company-offer-intro .company-eyebrow { margin-bottom:22px; }
.company-offer-intro h2 { font-size:clamp(38px,4.5vw,58px); line-height:1.07; }
.company-offer-intro > p:last-of-type { max-width:380px; font-size:16px; line-height:1.7; margin-top:25px; }
.company-offer-actions { display:flex; gap:20px; align-items:center; flex-wrap:wrap; margin-top:28px; }
.company-offer-actions .btn-cta { background:#17191b; color:#fff; border-color:#17191b; }
.company-offer-actions .btn-cta:hover { background:#333; }
.company-offer-details { padding-left:38px; border-left:1px solid #17191b40; }
.company-offer-time { font-size:14px; display:flex; gap:14px; align-items:baseline; }
.company-offer-time strong { font-size:clamp(46px,5vw,65px); letter-spacing:-.06em; line-height:1; }
.company-offer-promise { font-size:26px; font-weight:800; letter-spacing:-.04em; line-height:1.2; margin-top:20px!important; }
.company-steps { list-style:none; padding:0; margin:25px 0; }
.company-steps li { display:flex; align-items:center; gap:14px; padding:13px 0; border-bottom:1px solid #17191b26; }
.company-steps li > span { display:grid; place-items:center; flex-shrink:0; width:30px; height:30px; border:1px solid #17191b55; border-radius:50%; font-size:11px; font-weight:700; }
.company-steps h3 { font-size:14px; font-weight:600; line-height:1.5; }
.company-offer-note { max-width:365px; font-size:12px; line-height:1.7; }
.company-contact-line { display:flex; gap:16px 28px; flex-wrap:wrap; align-items:center; padding-block:24px; margin-top:55px; border-top:1px solid #17191b35; font-size:14px; }
.company-contact-line > span { margin-right:auto; }
.company-contact-line a { color:inherit; font-weight:700; text-decoration:none; }
.company-reveal.motion-ready { opacity:0; transform:translateY(14px); transition:opacity .65s ease,transform .65s ease; }
.company-reveal.motion-ready.is-visible,.company-reveal:focus-within { opacity:1; transform:none; }
@media(max-width:900px) {
 .company-intro h1 { font-size:clamp(56px,8vw,72px); }
 .company-intro .company-hero-lead { max-width:360px; font-size:15px; }
 .company-products { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:224px; gap:20px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x mandatory; padding:8px 7px 18px; margin-inline:-7px; scrollbar-width:thin; scrollbar-color:#b6b5ac #f3f3ef; }
 .company-product-card { scroll-snap-align:start; }
 .company-swipe-hint { display:block; font-size:12px; line-height:1.6; color:#62666b; padding-top:10px; }
 .company-swipe-hint span { margin-inline:6px; }
 .company-team-head { gap:24px; }
 .company-film { grid-template-columns:1.2fr 1fr; }
 .company-vp-grid { gap:40px; }
 .company-region { grid-template-columns:1fr 1fr; gap:22px; }
 .company-results-grid article { padding:24px 18px; }
 .company-offer-grid { gap:35px; }
 .company-offer-details { padding-left:28px; }
}
@media(max-width:600px) {
 .company-hero-layout { padding-block:48px 78px; }
 .company-photo img { object-position:63% center; }
 .company-photo::after { background:linear-gradient(90deg,#080c10da,#080c1066),linear-gradient(0deg,#080c10cc,transparent 60%); }
 .company-photo figcaption { bottom:20px; font-size:11px; }
 .company-intro h1 { font-size:clamp(49px,12vw,68px); }
 .company-intro h1 span { font-size:.8em; max-width:340px; line-height:1.04; }
 .company-intro .company-hero-lead { max-width:330px; margin-top:22px; font-size:14px; }
 .company-hero-actions { gap:6px 20px; margin-top:24px; }
 .company-range { padding-block:32px; }
 .company-range-head { align-items:flex-start; gap:14px; flex-direction:column; margin-bottom:20px; }
 .company-range-head h2 { font-size:28px; }
 .company-range-head .company-link { padding-block:6px; }
 .company-products { grid-auto-columns:min(224px,82vw); }
 .company-product-image { height:190px; }
 .company-team-head { grid-template-columns:1fr; gap:18px; }
 .company-team-head h2 { font-size:38px; }
 .company-team-head > p { font-size:14px; }
 .company-film,.company-vp-grid,.company-region,.company-offer-grid { grid-template-columns:1fr; }
 .company-film-copy { padding:28px 24px; }
 .company-results-head h3 { font-size:21px; }
 .company-results-grid { grid-template-columns:1fr; }
 .company-results-grid article { padding:24px; }
 .company-result-event { margin-bottom:18px; }
 .company-results-grid a { margin-top:12px; }
 .company-vp-logo { align-items:flex-start; }
 .company-vp-logo img { width:245px; }
 .company-vp-logo > span { margin-top:-24px; margin-left:20px; font-size:14px; }
 .company-region { margin-top:0; gap:24px; }
 .company-offer-details { padding:28px 0 0; border-left:0; border-top:1px solid #17191b40; }
 .company-offer-grid { gap:32px; }
 .company-offer-intro h2 { font-size:38px; }
 .company-offer-time { align-items:center; }
 .company-contact-line { margin-top:35px; gap:14px; }
 .company-contact-line > span { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
 .company-hero-content h1,.company-hero-lead,.company-hero-actions { animation:none; }
 .company-reveal.motion-ready { opacity:1; transform:none; transition:none; }
 .company-film-play > img,.company-product-image img,.company-product-category span { transition:none; }
 .company-film-play:hover > img,.company-product:hover img,.company-product:hover .company-product-category span { transform:none; }
 .company-products { scroll-behavior:auto; }
}
