:root{--brand-primary:#009EDC;--brand-secondary:#1C759A;--surface-dark:#102438;--surface-light:#F5F7FA;--accent:#94C9A9;--text-primary:#102438;--text-muted:#506374;--border-subtle:#cad5df;--focus-ring:#1C759A}
.nav{position:sticky;top:calc(-1 * var(--nav-height,108px) - 20px);z-index:30;background:#F5F7FA;width:100%;margin-inline:auto;transition:top 180ms ease,box-shadow 180ms ease}.nav.nav-floating{top:12px;width:calc(100% - 32px);border:1px solid #cad5df;border-radius:8px;box-shadow:0 8px 30px #10243824}.nav.nav-floating nav.open{border-radius:0 0 8px 8px;box-shadow:0 14px 22px #10243818}
.nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px;color:#102438}
footer{font-size:0.875rem;gap:24px}footer>a{display:inline-flex;align-items:center;min-height:44px}footer>span{font-size:0.875rem}
.tab-design{display:flex;gap:20px;flex-wrap:wrap}.tab-design button{font:inherit;color:#c4d2dc;background:transparent;border:0;border-bottom:2px solid transparent;padding:12px 0;min-height:44px;cursor:pointer}.tab-design button.active{color:#94C9A9;border-color:#94C9A9}.tab-design button:focus-visible{outline-color:#F5F7FA}
.machine-stage[data-machine=injection] .hotspot.h1{left:76%;top:45%}.machine-stage[data-machine=injection] .hotspot-popup{left:41%;top:59%}.machine-stage[data-machine=injection]>img{object-fit:contain;padding:20px}
.equipment :focus-visible,.hero :focus-visible,.contact :focus-visible,.work-opening :focus-visible{outline-color:#94C9A9}
.machine-markers .hotspot{transform:translate(-50%,-50%);z-index:1}.machine-explorers{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;flex:1}.machine-explorers p{font-size:0.9375rem;line-height:1.55;color:#c4d2dc;max-width:340px;margin-top:13px}.equipment-bottom{flex-wrap:wrap;gap:24px}.equipment-bottom>.micro{flex-basis:100%}.machine-explorers .feeder-list{width:100%;text-align:left}.machine-stage .hotspot-popup{left:25%;top:58%;max-width:65%;pointer-events:none}
.work-teaser{background:#102438;color:#F5F7FA}.work-teaser>.eyebrow{color:#94C9A9}.work-teaser>div{display:grid;grid-template-columns:1.25fr 1fr auto;gap:40px;align-items:center;margin-top:36px}.work-teaser h2{font-size:3.625rem}.work-teaser p{font-size:1.125rem;color:#c4d2dc;max-width:420px}.work-teaser .button{background:#94C9A9;color:#102438;white-space:nowrap}.work-teaser .button:hover{background:#F5F7FA}
.products>.textlink{margin-top:35px;display:inline-flex}.service-grid .service-bottom:focus-visible{outline-offset:-3px}.process-grid article{transition:border-color 200ms ease}.process-grid article.in-view{border-top-color:#1C759A}.process-grid article.in-view>span{color:#1C759A}
.product-title h2{font-size:1.6875rem;line-height:1.2;letter-spacing:-.6px}.work-contact :focus-visible{outline-color:#F5F7FA}
.capability-image{width:130px;height:130px;object-fit:contain;display:block}.email-dialog{width:520px;max-width:calc(100vw - 32px);max-height:90svh;overflow:auto;background:#F5F7FA;color:#102438;border:1px solid #cad5df;padding:35px;border-radius:8px}.email-dialog::backdrop{background:#102438bd}.email-dialog .eyebrow{font-size:0.8125rem;padding-right:90px}.email-dialog h2{font-size:2.375rem;letter-spacing:-1px;margin-top:30px}.email-recipient{font-size:1.25rem;overflow-wrap:anywhere;margin:20px 0}.email-options{display:flex;flex-direction:column;gap:13px}.email-options .button{font:inherit;justify-content:center;min-height:50px;cursor:pointer}.email-close{position:absolute;top:20px;right:20px;padding:10px 14px;background:transparent;border:1px solid #cad5df;color:#102438;cursor:pointer;font:inherit;min-height:44px}.email-status{font-size:0.9375rem;margin-top:20px;color:#506374}
.hero-copy>p{font-size:1.25rem;line-height:1.6;max-width:470px}.hero .actions{align-items:stretch}.hero .actions>a{align-self:stretch;display:inline-flex;align-items:center;min-height:54px;line-height:20px;font-size:1rem}.hero .actions>.textlink{border:0;padding:17px 0;text-decoration:underline;text-decoration-color:#94c9a96b;text-underline-offset:8px}.hero .actions>.button{padding-top:17px;padding-bottom:17px}.enquiry-context{font-size:1.1875rem;line-height:1.5;color:#94C9A9;margin-top:32px;max-width:650px}.enquiry-context[hidden]{display:none}.image-label{text-transform:none}
.machine-markers .hotspot.h1{background:rgba(16,36,56,.48);color:#F5F7FA;text-shadow:0 1px 3px #102438;box-shadow:0 0 0 5px #94c9a917;transition:background-color 180ms ease,box-shadow 180ms ease}.machine-markers .hotspot.h1:hover,.machine-markers .hotspot.h1:focus-visible,.machine-markers .hotspot.h1[aria-expanded=true]{background:rgba(148,201,169,.5);color:#102438;text-shadow:0 1px 2px #f5f7fa99;box-shadow:0 0 0 6px #94c9a92b}
.machine-stage .hotspot-popup{width:270px;max-width:calc(100% - 24px);z-index:3;border-left:0;border-top:2px solid #94C9A9;padding:16px;box-shadow:0 8px 30px #0003}.hotspot-popup::before{content:"";position:absolute;width:10px;height:10px;background:#F5F7FA;transform:rotate(45deg)}.hotspot-popup[data-side=right]::before{left:-5px;top:calc(var(--pointer-y) - 5px)}.hotspot-popup[data-side=left]::before{right:-5px;top:calc(var(--pointer-y) - 5px)}.hotspot-popup[data-side=below]::before{top:-5px;left:calc(var(--pointer-x) - 5px)}.hotspot-popup[data-side=above]::before{bottom:-5px;left:calc(var(--pointer-x) - 5px)}
.work-opening>div{grid-template-columns:1fr}.inspect-image:focus-visible{outline-offset:-5px}.work-photo img{color:#102438}.work-lightbox:focus-visible{outline-color:#1C759A}
@media(max-width:1100px){.work-teaser>div{grid-template-columns:1fr 1fr}.work-teaser .button{justify-self:start}.work-teaser h2{font-size:3rem}}
@media(max-width:800px){.work-teaser>div{grid-template-columns:1fr;gap:25px}.work-teaser h2{font-size:2.6875rem}.machine-stage[data-machine=injection] .hotspot-popup{left:12%;top:59%}.nav a[aria-current=page]{background:#94c9a925;padding-left:12px}.work-index{gap:10px 24px}}
@media(max-width:800px){.machine-explorers{grid-template-columns:1fr;gap:20px}.machine-explorers p{max-width:none}.machine-stage .hotspot-popup{left:10%;top:56%;max-width:80%}.machine-stage[data-machine=injection]>img{padding:0}}
@media(max-width:540px){.hero-copy>p{font-size:1.0625rem;max-width:330px}.hero .actions{gap:14px 18px;flex-wrap:wrap}.hero .actions>a{font-size:0.875rem;min-height:52px}.hero .actions>.button{padding:16px 18px;gap:20px}.hero .actions>.textlink{padding:16px 0}.enquiry-context{font-size:1.0625rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.process-grid article{transition:none}*,*::before,*::after{animation-duration:0s!important;transition-duration:0s!important}}
