/* Readability and procurement navigation, shared by all public pages. */
/* Six production bases: readable type without changing the approved grid. */
#main .factory .factory__list li{background:#102533;border-color:#405365}
#main .factory .factory__list h3{font-family:var(--font-body,Arial,sans-serif);font-size:1.65rem;font-weight:700;line-height:1.3;letter-spacing:0;text-transform:none;color:#fff;margin-top:.5rem}
#main .factory .factory__list small{display:block;font-family:var(--font-body,Arial,sans-serif);font-size:.9375rem;line-height:1.5;font-weight:600;letter-spacing:.015em;text-transform:none;color:#dbe5eb}
#main .factory .factory__list p{font-family:var(--font-body,Arial,sans-serif);font-size:1.0625rem;line-height:1.65;color:#e3ebf0;margin-top:.5rem}
#main .factory .factory__list strong{font-family:var(--font-body,Arial,sans-serif);font-size:.9375rem;line-height:1.6;font-weight:600;color:#ffc4c8;margin-top:.75rem}
#main .factory .factory__foot p{font-size:.9375rem;line-height:1.6;color:#cfdae2}
#main .factory .factory__media figcaption{font-size:.875rem;line-height:1.5;letter-spacing:.04em;color:#fff;background:#071522;padding:.5rem .75rem;right:1rem;left:1rem;bottom:1rem}
/* Application engineering: reclaim the removed index column and balance copy. */
body .process .process__layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:start}
body .process .process__head{position:static;min-width:0}
body .process.section .process__head h2{max-width:18ch;margin-block:1rem 1.25rem}
body .process .process__head .lede{max-width:44ch;font-size:1.05rem;line-height:1.65}
body .process .process__head>a{margin-top:1.5rem;min-height:44px;align-items:center;gap:1rem}
body .process .process__steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;border:0;margin:0;padding:0;list-style:none}
body .process.section .process__steps>li{display:block;min-width:0;min-height:0;padding:1.5rem;border:1px solid var(--line-strong,#bcc5ca);background:rgba(255,255,255,.5)}
body .process .process__steps>li>div{min-width:0}
body .process.section .process__steps h3{font-family:var(--font-body,Arial,sans-serif);font-size:clamp(1.25rem,1.7vw,1.6rem);line-height:1.25;letter-spacing:-.015em;text-transform:none;margin-top:.65rem}
body .process.section .process__steps p{max-width:none;margin-top:.75rem;font-size:1rem;line-height:1.6}
@media(max-width:1000px){body .process .process__layout{grid-template-columns:minmax(0,1fr);gap:2rem}body .process.section .process__head h2{max-width:24ch}}
@media(max-width:560px){body .process .process__steps{grid-template-columns:minmax(0,1fr)}body .process.section .process__steps>li{padding:1.25rem}body .process.section .process__head h2{max-width:19ch}}
/* Decorative indexes removed: reclaim their dedicated layout columns. */
body .validation-card,body .factory-gallery__item figcaption{grid-template-columns:minmax(0,1fr)!important}
body .reference__table-head{grid-template-columns:minmax(0,1fr) auto!important}
@media(max-width:640px){body .reference__table-head{grid-template-columns:minmax(0,1fr)!important}body .reference__table-meta{grid-column:1!important}}
:root body main h2{font-family:var(--font-body,Arial,sans-serif)!important;font-size:clamp(1.65rem,3vw,2.6rem)!important;line-height:1.18!important;letter-spacing:-.025em!important;text-transform:none!important}
:root body main .hero h1{max-width:19ch!important;font-size:clamp(2.5rem,4.4vw,4.25rem)!important;line-height:1.08!important;margin-top:1.5rem!important}
:root body main .hero__lede{font-size:1.05rem!important;line-height:1.55!important;max-width:55ch!important;margin-top:1.4rem!important}
:root body .hero__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important}
:root body .hero__copy{padding-block:2.5rem!important}
body .section{padding-block:clamp(2.5rem,5vw,4.5rem)}
body main p,body main .solution-card p{font-size:max(1rem,1em);line-height:1.6}
body .solution-card h4{font-family:var(--font-body,Arial,sans-serif);font-size:1.05rem;line-height:1.3;text-transform:none}
body .solution-card__media img{object-fit:contain}
body .proof__logo-frame img{filter:none;opacity:1}
body .proof__cell{aspect-ratio:auto;min-height:7rem}
body .proof__stats{margin-top:1.3rem}
body .proof__stats>div{padding:1rem}
body .factory__head{margin-bottom:2rem}
body .factory__list{gap:0}
body .factory__list li{padding-block:1rem}
body .cert-summary{background:var(--paper,#f7f6f2);border-block:1px solid var(--line,#ddd)}
body .cert-summary p{max-width:75ch;margin-block:1rem}
:root body .analytics-consent{left:1rem;right:1rem;bottom:1rem;width:auto;max-width:68rem;margin-inline:auto;display:flex;align-items:center;gap:1.25rem;padding:.8rem 1rem;font-size:.9rem;line-height:1.4}
:root body .analytics-consent[hidden]{display:none}
:root body .analytics-consent p{margin:0;flex:1}
body .analytics-consent button{min-height:44px;white-space:nowrap}
body:has(.site-header.is-open) .analytics-consent{visibility:hidden;pointer-events:none}
body .mobile-group__toggle{width:44px;height:44px;border:1px solid var(--line,#ddd);background:transparent;float:right;margin-left:1rem;font-size:1.3rem}
:root body .mobile-group__title{font-size:1.5rem;min-height:44px;align-items:center}
body .mobile-group ul[hidden]{display:none!important}
body .rfq-intro{margin:1rem 0 2rem;padding:1rem;border-left:3px solid var(--accent-500,#c82938);background:var(--paper,#f7f6f2);color:var(--ink,#152c40)}
body form.rfq .field{min-width:0}
body form.rfq select{width:100%;min-width:0;max-width:100%}
@media(max-width:760px){
 :root body .analytics-consent{display:block;bottom:4.5rem;max-height:35dvh;overflow:auto}
 body .analytics-consent div{margin-top:.5rem}
 :root body main .hero h1{font-size:clamp(2.2rem,8vw,3.2rem)!important;max-width:19ch!important}
 :root body .hero__grid{grid-template-columns:1fr!important}
 :root body .hero__copy{padding-block:1.5rem!important}
 body .hero__assurance{font-size:.9rem}
 body .proof__wall{grid-template-columns:repeat(2,minmax(0,1fr))}
 body .proof__stats{grid-template-columns:repeat(3,minmax(0,1fr))}
 body .proof__stats dt{font-size:1.8rem}
 body .proof__stats dd{font-size:.75rem}
 body .mobile-menu .btn{position:sticky;bottom:0;z-index:1;background:var(--accent-500,#c82938)}
 body .hero__qualification-grid{gap:1rem}
}
