/* OEM pages retain the existing KEMI white, blue and red identity. */
.oem-home{padding-block:34px;background:#e7eef6;border-block:1px solid var(--line)}
.oem-home-inner{display:flex;align-items:center;justify-content:space-between;gap:45px}
.oem-home-inner>div{max-width:760px}.oem-home h2{font-size:clamp(26px,2.5vw,36px);line-height:1.5;margin-block:8px}
.oem-home p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.9}.oem-home .button{flex-shrink:0}
.oem-page section[id]{scroll-margin-top:112px}.oem-hero{padding-top:150px;padding-bottom:66px}
.oem-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.oem-hero .eyebrow{color:var(--accent);font-size:11px;letter-spacing:1px}
.oem-hero h1{font-size:clamp(35px,4vw,56px);line-height:1.4;font-weight:500;letter-spacing:-1px;margin-block:18px 24px}
.oem-lead{font-size:17px;line-height:2;color:var(--muted)}.oem-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}
.oem-hero-image{--photo-max-height:350px;width:min(100%,calc(var(--photo-max-height)*var(--image-ratio)));max-width:100%;justify-self:center;background:#e7eef6;border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:0}
.oem-hero-image img{display:block;width:100%;height:auto;aspect-ratio:var(--image-ratio);object-fit:contain;background:#fff;padding:0}
.oem-hero-image figcaption{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--muted);padding:18px 22px;border-top:1px solid var(--line)}
.oem-hero-image figcaption>span{font:10px var(--latin);color:var(--accent);letter-spacing:1px}
.oem-section{padding-block:65px}.oem-section-heading{max-width:800px;margin-bottom:38px}.oem-section-heading .eyebrow{color:var(--accent);margin-bottom:16px}
.oem-section-heading h2,.oem-enquiry h2{font-size:clamp(29px,3vw,41px);font-weight:500;line-height:1.45;letter-spacing:-.6px}
.oem-section-heading>p:not(.eyebrow){font-size:16px;line-height:1.95;color:var(--muted);margin-top:17px}
.oem-routes{border-top:1px solid var(--line)}.oem-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.oem-route-grid article{padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;align-items:flex-start}
.oem-number{font:12px var(--latin);letter-spacing:1px;color:var(--accent)}
.oem-route-grid h3{font-size:23px;font-weight:500;line-height:1.5;margin-block:23px 15px}.oem-route-grid p{font-size:15px;color:var(--muted);line-height:1.95;margin-bottom:25px}
.oem-route-grid a{margin-top:auto;font-size:13px;color:var(--accent);border-bottom:1px solid var(--line);padding-block:8px}
.oem-projects{padding-top:35px}.oem-story{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-block:45px;border-top:1px solid var(--line);align-items:center}
.oem-story figure{--photo-max-height:400px;width:min(100%,calc(var(--photo-max-height)*var(--image-ratio)));max-width:100%;justify-self:center;margin:0;min-width:0}.oem-story figure>a{display:block;background:#e7eef6;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.oem-story img{display:block;width:100%;height:auto;aspect-ratio:var(--image-ratio);object-fit:contain}.oem-story figcaption{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}
.oem-story:nth-of-type(even) figure{order:2}.oem-story-copy .eyebrow{color:var(--accent);margin-bottom:16px}
.oem-story h3{font-size:clamp(25px,2.5vw,34px);font-weight:500;line-height:1.5;margin-bottom:23px}
.oem-story dl>div{margin-block:18px}.oem-story dt{font-size:13px;font-weight:600;color:var(--accent);margin-bottom:6px}.oem-story dd{margin:0;font-size:15px;line-height:1.95;color:var(--muted)}
.oem-story .underlined-link{margin-top:15px}.oem-process-wrap{background:#122e46;color:#fff}
.oem-process-wrap .eyebrow,.oem-process-wrap .oem-number{color:#b6d7f1}.oem-process-wrap .oem-section-heading>p:not(.eyebrow){color:#c6d7e5}
.oem-process-list{list-style:none;padding:0;margin:0}.oem-process-list li{display:grid;grid-template-columns:35px 1.35fr 1fr;gap:30px;padding-block:26px;border-top:1px solid #ffffff30;align-items:start}
.oem-process-list .oem-number{padding-top:8px}.oem-process-list h3{font-size:23px;font-weight:500;line-height:1.6;margin-bottom:8px}
.oem-process-list p{font-size:15px;line-height:1.95;color:#c6d7e5}.oem-process-list .oem-output{color:#dfedf7;border-inline-start:2px solid #79abd1;padding-inline-start:22px;font-size:14px;margin-top:5px}
.oem-capability-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-bottom:26px}
.oem-capability-grid article{border-top:1px solid var(--line);padding-block:25px}.oem-capability-grid h3,.oem-delivery h3{font-size:23px;font-weight:500;margin-bottom:12px}
.oem-capability-grid p,.oem-delivery p{font-size:15px;color:var(--muted);line-height:1.95}.oem-delivery{margin-top:42px;padding:30px;background:#e7eef6;border-inline-start:3px solid var(--accent);border-radius:12px}
.oem-enquiry{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;border-top:1px solid var(--line);align-items:start;padding-bottom:80px}
.oem-enquiry-intro{position:sticky;top:130px}.oem-enquiry-intro>.eyebrow{color:var(--accent);margin-bottom:20px}.oem-enquiry-intro>p:not(.eyebrow){font-size:16px;line-height:1.95;color:var(--muted);margin-block:20px}
.oem-enquiry-intro>a{display:inline-block;font-size:20px;color:var(--accent);border-bottom:1px solid var(--line);padding-bottom:8px}.oem-enquiry-intro>p.oem-enquiry-note{font-size:13px}
.oem-enquiry .project-form{min-width:0}.oem-enquiry .field-row{grid-template-columns:1fr 1fr}.oem-enquiry .technical-fields{margin-bottom:30px}.oem-enquiry .technical-fields input{font-size:14px}
.oem-enquiry .project-form label{line-height:1.75}.oem-enquiry .project-form .form-note{font-size:13px;line-height:1.9}
.oem-page #oem-copy-status{font-size:13px;margin-top:15px;color:var(--accent)}.oem-page .request-actions{flex-wrap:wrap}
.oem-page .request-dialog{max-height:90dvh;overflow-y:auto}.oem-page .request-dialog .dialog-close{inset-inline-end:19px;inset-inline-start:auto}
.oem-page a:focus-visible,.oem-page button:focus-visible{outline:3px solid #245c87;outline-offset:5px}.oem-process-wrap a:focus-visible{outline-color:#fff}
@media(max-width:1000px){.oem-hero-grid{gap:30px}.oem-route-grid{gap:15px}.oem-route-grid article{padding:22px}.oem-route-grid h3{font-size:21px}.oem-story{gap:5%}.oem-story figure{--photo-max-height:350px}.oem-home-inner{gap:25px}.oem-enquiry{gap:5%}}
@media(max-width:800px){.oem-hero{padding-top:125px}.oem-hero-grid{grid-template-columns:1fr}.oem-hero-grid>div{max-width:650px}.oem-hero-image{--photo-max-height:320px}.oem-section{padding-block:48px}.oem-route-grid{grid-template-columns:1fr}.oem-route-grid article{display:grid;grid-template-columns:35px 1fr;gap:10px 18px}.oem-route-grid h3{margin:0}.oem-route-grid p,.oem-route-grid a{grid-column:2}.oem-route-grid p{margin-bottom:0}.oem-route-grid .oem-number{padding-top:7px}.oem-route-grid a{justify-self:start}.oem-story{grid-template-columns:1fr;gap:28px}.oem-story:nth-of-type(even) figure{order:0}.oem-story figure{--photo-max-height:360px}.oem-process-list li{grid-template-columns:30px 1fr;gap:12px 20px}.oem-process-list .oem-output{grid-column:2}.oem-enquiry{grid-template-columns:1fr;gap:32px}.oem-enquiry-intro{position:static}.oem-home-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.oem-home{padding-block:28px}.oem-hero{padding-bottom:38px}.oem-hero h1{font-size:34px}.oem-lead{font-size:16px}.oem-actions{gap:20px}.oem-hero-image{--photo-max-height:230px}.oem-hero-image figcaption{padding:15px}.oem-section-heading h2,.oem-enquiry h2{font-size:29px}.oem-section-heading{margin-bottom:28px}.oem-story{padding-block:32px}.oem-story figure{--photo-max-height:300px}.oem-story h3{font-size:26px}.oem-process-list h3{font-size:21px}.oem-process-list li{column-gap:13px}.oem-capability-grid{grid-template-columns:1fr}.oem-delivery{padding:22px}.oem-enquiry .field-row,.oem-enquiry .technical-fields-grid{grid-template-columns:1fr}.oem-route-grid article{padding:22px 18px;column-gap:10px}.oem-page .dialog-inner pre{max-height:43dvh;overflow:auto}.oem-page .request-actions{gap:15px}}
