/* Focused mobile-first refinement; preserve the supplied imagery and ACE palette. */
.hero-audience{font-size:1rem;color:var(--muted);margin-top:1rem}
.hero-secondary{margin-top:1rem}
.all-services{margin-top:1.5rem}
.problem-paths .capability-card h3{font-size:1.45rem}
.service-shortcuts{margin-top:1.75rem}
.service-shortcuts .eyebrow{margin-bottom:.5rem;font-size:.875rem}
.service-shortcuts>div{display:flex;flex-wrap:wrap;gap:.4rem .75rem}
.service-shortcuts a{display:inline-flex;align-items:center;min-height:44px;padding:.45rem .7rem;border:1px solid #bbcadc;text-decoration:none;color:var(--navy);font-size:.9375rem;line-height:1.4}
.service-shortcuts a:hover{background:var(--pale);border-color:var(--blue)}
.analysis-preview{max-width:820px;border-left:3px solid var(--blue);padding:1.5rem 1.75rem;margin-top:2rem;background:white}
.analysis-preview .eyebrow{margin-bottom:.65rem}
.analysis-preview p:not(.eyebrow){margin-top:1rem;color:var(--muted)}
.analysis-preview .text-link{margin-top:1rem}
.pantograph-article .prose{margin-top:1.75rem;max-width:850px}
.pantograph-article .prose h2{font-size:clamp(1.65rem,3vw,2.2rem);margin-bottom:1.25rem}
.pantograph-article .analysis-demonstration{margin:2.5rem 0;max-width:1000px}
.mobile-contact{display:none}
.mobile-contact[hidden]{display:none!important}
.contact-details .contact-actions{margin-top:1rem}
.contact-guidance .capability-resource{margin-top:1.75rem}
.stacker-scope h4{font-size:1.125rem;line-height:1.4;margin:1.5rem 0 .65rem}
.stacker-scope h4:first-child{margin-top:0}
.contact-layout .enquiry-panel>p:not(.eyebrow){font-size:1rem}
@media(min-width:1100px){
 .header-inner{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;min-height:96px;padding-block:.7rem}
 #main-nav{width:auto;flex-wrap:wrap;justify-content:flex-end;gap:.35rem 1.25rem;margin:0;padding:0;border:0}
 #main-nav a{font-size:.9375rem}
 #main-nav .nav-cta{padding:.75rem 1rem}
}
@media(max-width:900px){
 #main-nav.open{max-height:calc(100dvh - 90px);overflow-y:auto}
 .hero-grid,.visual-intro-grid{gap:1.75rem}
 .intro-figure.machinery-portrait{width:min(100%,260px)}
 .visual-intro .service-shortcuts a{justify-content:flex-start;text-align:left}
 .problem-paths{grid-template-columns:minmax(0,1fr);gap:1rem}
 .problem-paths .capability-card{padding:1.35rem 1.25rem;display:grid;grid-template-columns:44px minmax(0,1fr);gap:.55rem 1rem;align-content:start}
 .problem-paths .service-icon{grid-column:1;grid-row:1 / span 3;width:44px;height:44px;margin:0}
 .problem-paths .capability-card h3,.problem-paths .capability-card p,.problem-paths .capability-action{grid-column:2;margin:0}
 .problem-paths .capability-card h3{font-size:1.3rem}
 .problem-paths .capability-card p{font-size:1rem;line-height:1.6}
 .problem-paths .capability-action{font-size:.9375rem;padding-top:.35rem}
 .mobile-contact{position:fixed;inset:auto 0 0;z-index:15;display:block;border-top:1px solid var(--line);background:white;padding:.6rem max(18px,env(safe-area-inset-right)) calc(.6rem + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));box-shadow:0 -4px 18px #1223420c}
 .mobile-contact>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;max-width:600px;margin:auto}
 .mobile-contact .button{min-height:48px;font-size:1rem;padding:.7rem 1rem}
 body.has-mobile-contact{padding-bottom:var(--mobile-contact-space, calc(84px + env(safe-area-inset-bottom)))}
 .contact-layout{gap:1.75rem}
 .contact-details .contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
 .contact-details .contact-actions .button{width:100%;margin:0}
 .contact-details .contact-location{font-size:.9375rem;margin-top:1rem}
 .analysis-preview{padding:1.25rem;margin-top:1.75rem}
}
@media(max-width:650px){
 .hero-copy h1{font-size:clamp(1.85rem,8vw,2.3rem);line-height:1.12}
 .hero-copy .lead{font-size:1.125rem;line-height:1.55;margin-top:1.25rem}
 .hero-copy .actions{margin-top:1.25rem}
 .hero-copy .button{width:100%}
 .hero-secondary{font-size:.9375rem}
 .proof-band .wrap{gap:.9rem;padding-block:1.25rem;font-size:.9375rem}
 .proof-band .wrap>span+span{padding-top:.9rem}
 .section{padding-block:2.75rem}
 .section-head{margin-bottom:1.5rem}
 .section-head h2{font-size:1.9rem}
 .closing{padding-block:2.75rem}
 .closing .button{width:100%}
 .service-shortcuts{margin-top:1.25rem}
 .service-shortcuts>div{display:grid;grid-template-columns:1fr;gap:0}
 .service-shortcuts a{border:0;border-bottom:1px solid var(--line);padding:.6rem 0;min-height:44px}
 .contact-page .page-intro{padding:2rem 0}
 .contact-page .page-intro h1{font-size:2.15rem}
 .contact-page .page-intro .lead{font-size:1.0625rem;margin-top:1rem}
 .contact-page .contact-details h2{font-size:1.45rem}
 .contact-page .contact-details .eyebrow{margin-bottom:.75rem}
 .contact-page .contact-phone{margin-top:1rem}
 .contact-page .contact-email{overflow-wrap:anywhere}
}
@media(max-width:360px){
 .problem-paths .capability-card{grid-template-columns:32px minmax(0,1fr);gap:.5rem .75rem;padding:1.15rem 1rem}
 .problem-paths .service-icon{width:32px;height:32px}
 .mobile-contact .button{font-size:.9375rem;padding:.65rem .75rem}
}

/* Keep the supplied wide machinery photo complete on every screen. */
.hero-image.tracked-conveyors-hero img{height:auto;aspect-ratio:1367/801;object-fit:contain;object-position:center}
