@font-face { font-family:"Manrope"; src:url("../fonts/manrope-400.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:"Manrope"; src:url("../fonts/manrope-500.woff2") format("woff2"); font-weight:500; font-style:normal; font-display:swap; }
@font-face { font-family:"Manrope"; src:url("../fonts/manrope-600.woff2") format("woff2"); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:"Manrope"; src:url("../fonts/manrope-700.woff2") format("woff2"); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:"Manrope"; src:url("../fonts/manrope-800.woff2") format("woff2"); font-weight:800; font-style:normal; font-display:swap; }

:root { --blue:#009FE2; --purple:#300175; --ink:#0d1117; --paper:#f4f6f7; --line:#d8dde2; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--ink); font-family:"Manrope","Segoe UI Variable","Helvetica Neue",Arial,sans-serif; font-weight:400; }
button,input,select,textarea { font:inherit; }
a { color:inherit; text-decoration:none; }
img { display:block; width:100%; }
em { color:var(--blue); font-style:normal; }
.icon { display:inline-block; width:1em; height:1em; flex:0 0 auto; background:currentColor; vertical-align:-.12em; -webkit-mask-position:center; -webkit-mask-repeat:no-repeat; -webkit-mask-size:contain; mask-position:center; mask-repeat:no-repeat; mask-size:contain; }
.icon-arrow-up-right { -webkit-mask-image:url("../icons/arrow-up-right.svg"); mask-image:url("../icons/arrow-up-right.svg"); }
.icon-arrow-down { -webkit-mask-image:url("../icons/arrow-down.svg"); mask-image:url("../icons/arrow-down.svg"); }
.icon-arrow-up { -webkit-mask-image:url("../icons/arrow-up.svg"); mask-image:url("../icons/arrow-up.svg"); }
.icon-plus { -webkit-mask-image:url("../icons/plus.svg"); mask-image:url("../icons/plus.svg"); }
.icon-factory { -webkit-mask-image:url("../icons/factory.svg"); mask-image:url("../icons/factory.svg"); }
.icon-cog { -webkit-mask-image:url("../icons/cog.svg"); mask-image:url("../icons/cog.svg"); }
.icon-scan-line { -webkit-mask-image:url("../icons/scan-line.svg"); mask-image:url("../icons/scan-line.svg"); }
.icon-boxes { -webkit-mask-image:url("../icons/boxes.svg"); mask-image:url("../icons/boxes.svg"); }
.icon-mail { -webkit-mask-image:url("../icons/mail.svg"); mask-image:url("../icons/mail.svg"); }
.icon-globe { -webkit-mask-image:url("../icons/globe.svg"); mask-image:url("../icons/globe.svg"); }
.icon-gauge { -webkit-mask-image:url("../icons/gauge.svg"); mask-image:url("../icons/gauge.svg"); }
.icon-users { -webkit-mask-image:url("../icons/users.svg"); mask-image:url("../icons/users.svg"); }
.icon-map-pin { -webkit-mask-image:url("../icons/map-pin.svg"); mask-image:url("../icons/map-pin.svg"); }
.icon-phone { -webkit-mask-image:url("../icons/phone.svg"); mask-image:url("../icons/phone.svg"); }
.icon-message-circle { -webkit-mask-image:url("../icons/message-circle.svg"); mask-image:url("../icons/message-circle.svg"); }
.icon-shield-check { -webkit-mask-image:url("../icons/shield-check.svg"); mask-image:url("../icons/shield-check.svg"); }
.icon-database { -webkit-mask-image:url("../icons/database.svg"); mask-image:url("../icons/database.svg"); }
.icon-badge-check { -webkit-mask-image:url("../icons/badge-check.svg"); mask-image:url("../icons/badge-check.svg"); }

.site-header { height:86px; padding:0 4.5vw; display:grid; grid-template-columns:290px 1fr auto; align-items:center; gap:32px; border-bottom:1px solid rgba(255,255,255,.22); position:fixed; inset:0 0 auto; z-index:20; color:white; background:transparent; transition:background-color .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease; }
.brand { display:flex; align-items:center; width:280px; height:52px; padding:7px 12px; overflow:hidden; background:white; }
.brand img { width:100%; height:100%; object-fit:contain; }
.site-header nav { display:flex; justify-content:center; gap:clamp(14px,1.7vw,30px); font-size:12px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap; }
.site-header nav a { position:relative; }
.site-header nav a:after { content:""; position:absolute; left:0; right:0; bottom:-9px; height:2px; background:var(--blue); transform:scaleX(0); transform-origin:left center; transition:transform .25s ease; }
.site-header nav a:hover:after { transform:scaleX(1); }
.header-cta { border:1px solid rgba(255,255,255,.7); padding:13px 18px; font-size:12px; font-family:inherit; text-transform:uppercase; letter-spacing:.08em; font-weight:700; cursor:pointer; white-space:nowrap; }
.header-cta span { color:white; padding-left:12px; }
.site-header.is-scrolled { background:white; color:var(--ink); border-bottom-color:var(--line); box-shadow:0 8px 28px rgba(13,17,23,.08); }

.hero { min-height:830px; position:relative; display:grid; grid-template-columns:52% 48%; background:var(--purple); color:white; padding-top:86px; overflow:hidden; }
.hero:before { content:""; position:absolute; width:630px; height:630px; border:1px solid rgba(0,159,226,.2); border-radius:50%; left:-250px; top:100px; box-shadow:0 0 0 120px rgba(0,159,226,.04),0 0 0 240px rgba(0,159,226,.025); }
.hero-copy { padding:115px 6vw 170px; z-index:2; }
.kicker { display:flex; align-items:center; gap:16px; color:#72d7ff; font-size:12px; letter-spacing:.22em; font-weight:700; }
.kicker i { width:90px; height:1px; background:rgba(114,215,255,.5); }
.hero h1 { font-size:clamp(54px,5.4vw,72px); line-height:.98; letter-spacing:-.055em; margin:34px 0 30px; max-width:840px; }
.hero h1 em { display:inline-block; margin-top:8px; }
.hero-copy>p { max-width:610px; color:#cbd5df; font-size:17px; line-height:1.75; }
.hero-actions { display:flex; gap:30px; align-items:center; margin-top:38px; }
.button { display:inline-flex; gap:55px; align-items:center; padding:18px 22px; border:0; cursor:pointer; font-family:inherit; text-transform:uppercase; letter-spacing:.1em; font-size:12px; font-weight:700; }
.button-primary { background:var(--blue); color:white; }
.button-primary:hover { background:#4cc9ff; }
.text-link { border-bottom:1px solid rgba(255,255,255,.4); padding:10px 0; text-transform:uppercase; font-weight:700; letter-spacing:.1em; font-size:12px; }
.text-link span { padding-left:18px; color:var(--blue); }
.text-link>.icon,.showcase-copy a>.icon { margin-left:18px; color:var(--blue); }
.hero-visual { position:relative; min-height:620px; margin:40px 0 110px; overflow:hidden; }
.hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(20,3,48,.48),transparent 45%),linear-gradient(0deg,rgba(7,17,25,.55),transparent 50%); }
.hero-visual img { height:100%; object-fit:cover; filter:contrast(1.07) saturate(.86); }
.hero-label { position:absolute; z-index:2; bottom:34px; left:35px; border-left:3px solid var(--blue); padding-left:15px; display:flex; flex-direction:column; gap:7px; }
.hero-label span { font-size:12px; color:#98a9b7; letter-spacing:.2em; }
.hero-label strong { font-size:13px; letter-spacing:.15em; }
.hero-rail { position:absolute; z-index:2; top:0; right:0; bottom:0; width:50px; display:flex; align-items:center; justify-content:center; gap:34px; writing-mode:vertical-rl; background:rgba(7,12,18,.72); font-size:12px; letter-spacing:.18em; }
.hero-rail b { color:#6dd6ff; }
.proof-strip { position:absolute; z-index:3; left:0; bottom:0; width:100%; min-height:112px; display:grid; grid-template-columns:repeat(4,1fr); padding-left:6vw; background:rgba(5,12,20,.82); backdrop-filter:blur(12px); border-top:1px solid rgba(255,255,255,.12); }
.proof-strip div { display:flex; gap:18px; align-items:center; border-right:1px solid rgba(255,255,255,.12); padding:20px 3vw; }
.proof-strip strong { font-size:34px; line-height:1; }
.proof-strip sup { color:var(--blue); font-size:15px; }
.proof-strip span { color:#93a5b4; text-transform:uppercase; letter-spacing:.1em; font-size:12px; line-height:1.5; }

.section { padding:110px 6vw; }
.section-heading { display:grid; grid-template-columns:1fr 1.2fr 1fr; gap:5vw; align-items:end; margin-bottom:66px; }
.section-heading>div { align-self:start; display:flex; gap:16px; align-items:center; }
.section-no { width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); font-size:12px; color:var(--blue); }
.overline { color:#697580; font-size:12px; font-weight:700; letter-spacing:.2em; }
.section-heading h2,.capability-copy h2,.company-copy h2,.rfq h2 { margin:0; font-size:clamp(38px,4vw,62px); line-height:1.03; letter-spacing:-.045em; }
.section-heading>p { color:#68747e; line-height:1.7; margin:0; font-size:14px; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.product-card { min-height:360px; padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; transition:.25s; }
.product-card:hover { background:#f3f8fb; transform:translateY(-4px); box-shadow:0 18px 40px rgba(17,45,63,.08); }
.card-top { display:flex; justify-content:space-between; color:#75828c; font-size:12px; letter-spacing:.16em; }
.card-top b { color:#b6c0c8; font-size:13px; }
.product-card h3 { margin:80px 0 18px; font-size:25px; letter-spacing:-.03em; }
.product-card>p { color:#68747e; line-height:1.65; font-size:14px; margin:0; }
.card-bottom { margin-top:auto; display:flex; justify-content:space-between; align-items:end; color:#7c8992; font-size:12px; line-height:1.4; text-transform:uppercase; letter-spacing:.08em; }
.card-bottom a { width:38px; height:38px; display:grid; place-items:center; background:var(--ink); color:white; font-size:17px; }
.product-showcase { margin-top:72px; display:grid; grid-template-columns:1.45fr .75fr; background:var(--paper); }
.showcase-image { min-height:430px; overflow:hidden; }
.showcase-image img { height:100%; object-fit:cover; }
.showcase-copy { padding:55px 50px; display:flex; flex-direction:column; justify-content:center; }
.showcase-copy>span { color:var(--blue); font-size:12px; letter-spacing:.2em; font-weight:700; }
.showcase-copy h3 { font-size:34px; letter-spacing:-.035em; line-height:1.1; margin:20px 0; }
.showcase-copy p { color:#65717c; line-height:1.75; font-size:14px; }
.showcase-copy a { margin-top:18px; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.showcase-copy a span { color:var(--blue); padding-left:16px; }

.capabilities { display:grid; grid-template-columns:1.05fr 1fr; padding-top:110px; background:white; gap:7vw; }
.capability-image { position:relative; min-height:740px; overflow:hidden; }
.capability-slides { position:absolute; inset:0; }
.capability-slide { position:absolute; inset:0; height:100%; object-fit:cover; opacity:0; transform:scale(1.025); transition:opacity .55s ease,transform .8s ease; }
.capability-slide.active { opacity:1; transform:scale(1); }
.image-caption { position:absolute; z-index:3; left:0; right:0; bottom:0; min-height:58px; padding:12px 24px; background:rgba(9,15,22,.86); color:white; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; font-size:12px; letter-spacing:.15em; }
.image-caption>b { justify-self:end; }
.carousel-controls { display:flex; align-items:center; justify-content:center; gap:14px; }
.carousel-controls>button { width:30px; height:30px; padding:0; border:1px solid rgba(255,255,255,.35); border-radius:50%; background:transparent; color:white; cursor:pointer; display:grid; place-items:center; line-height:0; }
.carousel-controls>button:hover { background:var(--blue); border-color:var(--blue); }
.carousel-arrow { width:14px; height:14px; vertical-align:0; }
.carousel-arrow-prev { transform:rotate(90deg); }
.carousel-arrow-next { transform:rotate(-90deg); }
.carousel-dots { display:flex; gap:7px; }
.carousel-dots button { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.42); cursor:pointer; }
.carousel-dots button.active { background:white; box-shadow:0 0 0 3px rgba(255,255,255,.16); }
.capability-copy { padding:85px 2vw 60px 0; }
.section-heading.compact { display:block; margin-bottom:34px; }
.section-heading.compact>div { margin-bottom:34px; }
.capability-copy .lead { color:#63707b; font-size:16px; line-height:1.75; max-width:660px; }
.capability-list { margin-top:45px; border-top:1px solid #cfd5da; }
.capability-list>div { display:grid; grid-template-columns:54px 1fr; gap:15px; padding:21px 0; border-bottom:1px solid #cfd5da; }
.capability-list b { color:var(--blue); font-size:12px; }
.capability-list>div>.icon { width:20px; height:20px; color:var(--blue); transition:color .25s ease; }
.capability-list>div:hover>.icon { color:var(--purple); }
.capability-list span { color:#697681; font-size:13px; line-height:1.5; }
.capability-list strong { display:block; color:var(--ink); font-size:15px; margin-bottom:4px; }

.quality { background:var(--purple); color:white; padding:110px 6vw 0; display:grid; grid-template-columns:.85fr 1.15fr; column-gap:7vw; }
.overline.light { color:#67cfff; }
.quality-copy h2 { font-size:clamp(42px,4.5vw,72px); line-height:1; letter-spacing:-.05em; margin:28px 0; }
.quality-copy p { color:#b9c0cb; line-height:1.8; font-size:15px; max-width:620px; }
.quality-list { display:flex; flex-direction:column; margin-top:32px; border-top:1px solid rgba(255,255,255,.18); }
.quality-list>div { display:grid; grid-template-columns:34px 1fr; gap:15px; align-items:center; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.quality-list>div>.icon { width:20px; height:20px; color:#70d7ff; }
.quality-list span { display:flex; flex-direction:column; gap:4px; }
.quality-list strong { font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.quality-list small { color:#b9c0cb; font-size:12px; line-height:1.45; }
.quality-cta { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; margin-top:24px; padding:14px 17px; border:1px solid rgba(255,255,255,.5); color:white; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.quality-cta .icon { color:#70d7ff; }
.quality-image { align-self:center; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(255,255,255,.2); overflow:hidden; }
.quality-image figure { min-width:0; min-height:0; margin:0; overflow:hidden; display:grid; grid-template-rows:minmax(0,1fr) auto; background:#eef4f7; }
.quality-image img { min-height:0; width:100%; height:100%; padding:0; object-fit:cover; background:#eef4f7; }
.quality-image figcaption { min-height:70px; padding:13px 16px 14px; display:flex; flex-direction:column; justify-content:center; gap:4px; color:#102431; background:white; }
.quality-image figcaption strong { font-size:13px; line-height:1.25; font-weight:600; }
.quality-image figcaption span { color:#697780; font-size:12px; line-height:1.4; }
.quality-brands { grid-column:1/-1; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); align-items:center; margin-top:75px; }
.brand-item { position:relative; min-height:118px; padding:26px 20px; display:flex; align-items:center; justify-content:center; }
.brand-item:not(:last-child)::after { content:""; position:absolute; right:0; top:50%; width:1px; height:38px; background:rgba(112,215,255,.55); transform:translateY(-50%); }
.brand-item img { width:112px; max-width:88%; height:36px; object-fit:contain; filter:brightness(0) invert(1); opacity:.86; }
.brand-item:nth-child(1) img,.brand-item:nth-child(7) img { width:42px; height:42px; }
.brand-item:nth-child(5) img { width:104px; height:54px; filter:none; object-fit:contain; }

.section-heading.inline { grid-template-columns:.7fr 1.2fr; }
.company { display:grid; grid-template-columns:1.15fr .85fr; min-height:680px; }
.company-image { overflow:hidden; }
.company-image img { height:100%; object-fit:cover; }
.company-copy { background:#eef2f4; padding:100px 6vw; display:flex; flex-direction:column; justify-content:center; }
.company-copy h2 { margin:28px 0; }
.company-copy>p { color:#63717b; line-height:1.8; font-size:15px; }
.company-points { display:flex; flex-direction:column; border-top:1px solid #ccd4da; margin:22px 0 28px; }
.company-points span { padding:13px 0; border-bottom:1px solid #ccd4da; text-transform:uppercase; letter-spacing:.1em; font-size:12px; }
.text-link.dark { color:#17212a; border-color:#9ba7b0; align-self:flex-start; }

.news { background:white; }
.news-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:60px; margin-bottom:52px; }
.news-heading h2 { margin:24px 0 18px; font-size:clamp(42px,4vw,62px); line-height:1.03; letter-spacing:-.045em; }
.news-heading p { max-width:610px; margin:0; color:#68747e; font-size:14px; line-height:1.7; }
.news-heading>a { display:inline-flex; align-items:center; gap:26px; padding:14px 17px; border:1px solid #aeb7bf; text-transform:uppercase; letter-spacing:.1em; font-size:12px; font-weight:600; white-space:nowrap; }
.news-heading>a .icon { color:var(--blue); }
.news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,1.8vw,30px); }
.news-card { overflow:hidden; }
.news-image { aspect-ratio:4/3; height:auto; overflow:hidden; background:#d9dfe3; }
.news-image img { display:block; width:100%; height:100%; object-fit:cover; filter:saturate(.7); transition:transform .65s ease,filter .3s ease; }
.news-card:hover .news-image img { transform:scale(1.04); filter:saturate(.95); }
.news-copy { padding:22px 24px 0 0; }
.news-copy>span { color:#78838c; font-size:12px; letter-spacing:.14em; }
.news-copy h3 { min-height:58px; margin:15px 0 22px; font-size:22px; line-height:1.28; letter-spacing:-.025em; transition:color .25s ease; }
.news-card:hover .news-copy h3 { color:var(--blue); }
.news-copy p { display:flex; align-items:center; justify-content:space-between; margin:0; padding-top:15px; border-top:1px solid var(--line); color:#5f6b74; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.news-copy p .icon { color:var(--blue); }

.rfq { background:var(--purple); color:white; padding:100px 8vw; display:grid; grid-template-columns:1fr 1fr; gap:10vw; }
.rfq h2 { margin:28px 0; font-size:clamp(44px,5vw,72px); }
.rfq-intro>p { color:#c6bddb; line-height:1.8; max-width:620px; }
.contact-lines { display:flex; flex-direction:column; gap:12px; margin-top:36px; color:white; }
.contact-lines p { display:grid; grid-template-columns:22px minmax(0,1fr); gap:13px; align-items:start; margin:0; font-size:12px; line-height:1.55; }
.contact-lines p>.icon { width:16px; height:16px; margin-top:1px; color:#70d7ff; }
.contact-lines p>span,.contact-lines p>a { color:white; }
.contact-emails>span { display:flex; flex-wrap:wrap; gap:5px 18px; }
.rfq form { display:flex; flex-direction:column; gap:20px; }
.rfq label span { display:block; color:white; font-size:12px; letter-spacing:.14em; text-transform:uppercase; margin-bottom:7px; }
.rfq input,.rfq select,.rfq textarea { width:100%; padding:15px 0; background:transparent; border:0; border-bottom:1px solid rgba(255,255,255,.34); color:white; border-radius:0; outline:none; font:inherit; }
.rfq input:focus,.rfq select:focus,.rfq textarea:focus { border-color:#70d7ff; }
.rfq select option { color:#111; }
.rfq input::placeholder,.rfq textarea::placeholder { color:rgba(255,255,255,.72); }
.rfq button { position:relative; border:0; background:var(--blue); color:white; padding:18px 54px; display:flex; align-items:center; justify-content:center; text-align:center; text-transform:uppercase; letter-spacing:.12em; font-weight:700; cursor:pointer; }
.rfq button .icon { position:absolute; right:22px; }
.rfq button:hover { background:#64d5ff; }
.rfq small { color:white; line-height:1.5; }

footer { position:relative; isolation:isolate; overflow:hidden; padding:52px 6vw 32px; background:#0b0f14; color:white; }
footer::before { content:""; position:absolute; z-index:-1; inset:0; background:var(--lk-footer-map,none) 84% 42%/min(1120px,80vw) auto no-repeat; opacity:.075; pointer-events:none; }
.footer-brand { width:290px; height:42px; padding:0; background:transparent; }
footer>p { color:#77838e; margin:26px 0 50px; font-size:13px; }
footer>div { border-top:1px solid #262e36; padding-top:24px; display:flex; justify-content:space-between; color:#68737d; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
footer>div a { color:#7bdcff; }
footer>div a { display:inline-flex; align-items:center; gap:7px; }

.quote-modal { position:fixed; z-index:90; inset:0; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; transition:opacity .25s ease,visibility .25s ease; }
.quote-modal.is-open { opacity:1; visibility:visible; }
.quote-modal-backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(5,10,18,.72); backdrop-filter:blur(8px); cursor:pointer; }
.quote-modal-panel { position:relative; z-index:1; width:min(760px,calc(100vw - 32px)); max-height:calc(100vh - 36px); overflow:auto; padding:42px 46px 38px; background:white; color:var(--ink); box-shadow:0 30px 90px rgba(0,0,0,.32); }
.quote-modal-close { position:absolute; top:20px; right:20px; width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; background:white; color:var(--ink); cursor:pointer; }
.quote-modal-close .icon { width:17px; height:17px; transform:rotate(45deg); }
.quote-modal-panel>.overline { color:var(--purple); }
.quote-modal-panel h2 { margin:12px 0 10px; font-size:clamp(34px,3.6vw,46px); line-height:1.05; letter-spacing:-.045em; }
.quote-modal-panel>p { margin:0 0 22px; color:#626e77; line-height:1.65; }
.quote-modal-form { display:grid; grid-template-columns:1fr 1fr; gap:22px 26px; }
.quote-modal-form label:last-of-type { grid-column:1/-1; }
.quote-modal-form label>span:not(.custom-file-picker) { display:block; margin-bottom:7px; color:#5d6871; font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.quote-modal-form input,.quote-modal-form select,.quote-modal-form textarea { width:100%; padding:13px 0; border:0; border-bottom:1px solid #bfc7ce; border-radius:0; outline:none; background:transparent; color:var(--ink); }
.quote-modal-form input:focus,.quote-modal-form select:focus,.quote-modal-form textarea:focus { border-color:var(--blue); }
.custom-file-picker { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; min-height:52px; border:1px dashed #aebdc6; border-radius:2px; overflow:hidden; background:#f6f9fa; cursor:pointer; font-weight:400; letter-spacing:0; text-transform:none; transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease; }
.custom-file-picker:hover { border-color:#6faac4; background:#fafdfe; }
.custom-file-picker:focus-within { border-color:var(--blue); box-shadow:0 0 0 2px rgba(0,159,226,.13); }
.custom-file-button { grid-column:2; grid-row:1; align-self:stretch; display:flex; align-items:center; padding:0 15px; border-left:1px solid #d3dde2; background:#eaf5f9; color:#007eaf; font-size:12px; font-weight:600; letter-spacing:0; line-height:1.2; text-transform:none; white-space:nowrap; }
.custom-file-name { grid-column:1; grid-row:1; min-width:0; padding:0 14px; overflow:hidden; color:#66727c; font-size:12px; font-weight:400; letter-spacing:0; line-height:1.3; text-overflow:ellipsis; text-transform:none; white-space:nowrap; }
.quote-upload-field input[type="file"] { position:absolute; inset:0; z-index:2; width:100%; height:100%; padding:0; border:0; opacity:0; background:transparent; cursor:pointer; }
.quote-upload-field small { display:block; margin-top:6px; color:#7a858d; font-size:12px; line-height:1.4; }
.quote-modal-form textarea { resize:vertical; }
.quote-modal-form>button { grid-column:1/-1; position:relative; border:0; padding:17px 50px; background:var(--blue); color:white; text-transform:uppercase; letter-spacing:.11em; font-weight:700; cursor:pointer; }
.quote-modal-form>button .icon { position:absolute; right:22px; }

@media (max-width:1050px) {
  .site-header { grid-template-columns:230px 1fr auto; }
  .site-header nav { gap:17px; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { padding-bottom:80px; }
  .hero-visual { margin:0 6vw 110px; min-height:500px; }
  .section-heading { grid-template-columns:.65fr 1.4fr; }
  .section-heading>p { grid-column:2; }
  .product-grid { grid-template-columns:repeat(2,1fr); }
  .capabilities { grid-template-columns:1fr; }
  .capability-image { min-height:560px; }
  .capability-copy { padding:20px 3vw 70px; }
  .quality { grid-template-columns:1fr; }
  .quality-image { margin-top:50px; }
  .news-grid { grid-template-columns:repeat(2,1fr); }
  .news-card:last-child { grid-column:1/-1; }
  .company { grid-template-columns:1fr; }
  .company-image { min-height:500px; }
}

/* News & exhibitions archive */
.news-page .site-header:not(.is-scrolled) { background:#fff; color:var(--ink); border-bottom-color:var(--line); box-shadow:0 8px 28px rgba(13,17,23,.05); }
.news-page .site-header:not(.is-scrolled) .brand-logo-light { opacity:0; }
.news-page .site-header:not(.is-scrolled) .brand-logo-color { opacity:1; }
.news-page-hero { min-height:640px; padding:150px 6vw 72px; display:grid; grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr); gap:6vw; align-items:stretch; background:#fff; }
.news-page-hero-copy { display:flex; flex-direction:column; justify-content:center; }
.news-breadcrumb { display:flex; align-items:center; gap:11px; margin-bottom:64px; color:#7d8992; font-size:12px; font-weight:600; letter-spacing:.11em; text-transform:uppercase; }
.news-breadcrumb a { color:var(--ink); }
.news-breadcrumb i { font-style:normal; color:#b6bec5; }
.news-page-hero-copy>.overline { color:var(--purple); }
.news-page-hero h1 { margin:23px 0 24px; font-size:clamp(54px,5.4vw,72px); line-height:.96; letter-spacing:-.06em; }
.news-page-hero-copy>p { margin:0; color:#66737d; font-size:16px; line-height:1.75; }
.news-page-hero-copy>a { width:max-content; margin-top:38px; padding:12px 0; display:flex; gap:42px; align-items:center; border-bottom:1px solid #9ba7b0; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.news-page-hero-copy>a .icon { color:var(--blue); }
.news-page-hero-image { position:relative; min-height:410px; margin:0; overflow:hidden; background:#092035; }
.news-page-hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,19,32,.16),transparent 55%),linear-gradient(0deg,rgba(5,19,32,.74),transparent 48%); }
.news-page-hero-image img { width:100%; height:100%; object-fit:cover; }
.news-page-hero-image figcaption { position:absolute; z-index:1; left:34px; right:34px; bottom:30px; display:flex; align-items:end; justify-content:space-between; gap:30px; color:#fff; }
.news-page-hero-image figcaption span { color:#75d9ff; font-size:12px; font-weight:700; letter-spacing:.15em; }
.news-page-hero-image figcaption strong { max-width:320px; font-size:17px; line-height:1.4; text-align:right; }
.news-archive { padding:112px 6vw 128px; display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:5.5vw; background:#f4f6f7; }
.news-archive-sidebar { align-self:start; position:sticky; top:112px; }
.news-archive-sidebar>.overline { color:var(--purple); }
.news-category-list { margin-top:25px; border-top:1px solid #cfd6db; }
.news-category-list :is(a,button) { width:100%; min-height:58px; padding:0 4px; display:flex; align-items:center; justify-content:space-between; border:0; border-bottom:1px solid #cfd6db; background:transparent; color:#66737d; cursor:pointer; text-align:left; }
.news-category-list :is(a,button) span { font-size:13px; font-weight:600; }
.news-category-list :is(a,button) b { color:#a2acb4; font-size:12px; letter-spacing:.1em; }
.news-category-list :is(a,button).is-active { color:var(--blue); }
.news-category-list :is(a,button).is-active span::before { content:""; display:inline-block; width:7px; height:7px; margin-right:11px; border-radius:50%; background:var(--blue); vertical-align:1px; }
.news-archive-note { margin-top:38px; padding:28px 25px; position:relative; overflow:hidden; background:linear-gradient(145deg,#0b4169,#300175); color:#fff; }
.news-archive-note::after { content:""; position:absolute; width:150px; height:150px; top:-78px; right:-62px; border:1px solid rgba(117,217,255,.4); border-radius:50%; box-shadow:0 0 0 34px rgba(117,217,255,.09),0 0 0 68px rgba(117,217,255,.05); }
.news-archive-note span { display:block; color:#75d9ff; font-size:12px; font-weight:700; letter-spacing:.14em; }
.news-archive-note strong { display:block; margin:18px 0 35px; font-size:22px; line-height:1.18; letter-spacing:-.035em; }
.news-archive-note :is(a,button) { position:relative; z-index:1; width:100%; display:flex; align-items:center; justify-content:space-between; padding:0 0 10px; border:0; border-bottom:1px solid rgba(255,255,255,.38); color:inherit; background:transparent; cursor:pointer; font:inherit; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.news-archive-results>header { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr); gap:6vw; align-items:end; margin-bottom:54px; }
.news-archive-results>header .overline { color:var(--purple); }
.news-archive-results>header h2 { margin:18px 0 0; font-size:clamp(46px,4.2vw,70px); line-height:.98; letter-spacing:-.055em; }
.news-archive-results>header>p { margin:0; color:#6d7982; font-size:14px; line-height:1.75; }
.news-featured-card[hidden],.news-archive-card[hidden] { display:none; }
.news-featured-card>a { display:grid; grid-template-columns:minmax(0,1.26fr) minmax(330px,.74fr); min-height:440px; background:#09243a; color:#fff; }
.news-featured-image { overflow:hidden; min-height:440px; }
.news-featured-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.news-featured-copy { padding:46px 42px; display:flex; flex-direction:column; }
.news-featured-copy>div,.news-archive-copy>div { display:flex; justify-content:space-between; gap:20px; color:#72d7ff; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.news-featured-copy time,.news-archive-copy time { color:#94a6b4; }
.news-featured-copy h3 { margin:70px 0 18px; font-size:clamp(30px,2.65vw,44px); line-height:1.08; letter-spacing:-.045em; }
.news-featured-copy>p { margin:0; color:#aebbc5; font-size:14px; line-height:1.75; }
.news-featured-copy>strong,.news-archive-copy>strong { margin-top:auto; padding-top:30px; display:flex; align-items:center; justify-content:space-between; font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
.news-featured-copy>strong .icon,.news-archive-copy>strong .icon { color:var(--blue); }
.news-featured-card:hover img,.news-archive-card:hover img { transform:scale(1.04); }
.news-archive-grid { margin-top:16px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.news-archive-grid.is-single { grid-template-columns:minmax(0,1fr); }
.news-archive-card { background:#fff; }
.news-archive-card>a { height:100%; display:flex; flex-direction:column; }
.news-archive-image { aspect-ratio:4/3; overflow:hidden; background:#e7ebee; }
.news-archive-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.news-archive-copy { min-height:305px; padding:30px; display:flex; flex-direction:column; }
.news-archive-copy h3 { margin:38px 0 14px; font-size:25px; line-height:1.18; letter-spacing:-.035em; }
.news-archive-copy>p { margin:0; color:#6f7b84; font-size:13px; line-height:1.7; }
.news-contact-band { padding:76px 6vw; display:grid; grid-template-columns:1.2fr .85fr auto; gap:5vw; align-items:end; background:var(--purple); color:#fff; }
.news-contact-band h2 { margin:18px 0 0; font-size:clamp(34px,3.4vw,55px); line-height:1.05; letter-spacing:-.05em; }
.news-contact-band>p { margin:0; color:#c8badc; font-size:14px; line-height:1.75; }
.news-contact-band>button { padding:18px 22px; border:0; display:flex; gap:38px; align-items:center; background:var(--blue); color:#fff; cursor:pointer; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
@media (max-width:1050px) {
  .news-page-hero { grid-template-columns:1fr 1fr; gap:35px; }
  .news-archive { grid-template-columns:minmax(0,1fr) 200px; gap:35px; }
  .news-featured-card>a { grid-template-columns:1fr; }
  .news-featured-image { min-height:360px; }
  .news-featured-copy h3 { margin-top:42px; }
  .news-contact-band { grid-template-columns:1fr 1fr; }
  .news-contact-band>button { grid-column:1/-1; width:max-content; }
}
@media (max-width:760px) {
  .news-page-hero { min-height:0; padding:112px 22px 48px; grid-template-columns:1fr; }
  .news-breadcrumb { margin-bottom:38px; }
  .news-page-hero h1 { font-size:50px; }
  .news-page-hero-image { min-height:330px; }
  .news-page-hero-image figcaption { left:22px; right:22px; display:block; }
  .news-page-hero-image figcaption strong { display:block; margin-top:8px; text-align:left; }
  .news-archive { padding:72px 22px 82px; grid-template-columns:1fr; }
  .news-archive-sidebar { position:static; }
  .news-category-list { display:grid; grid-template-columns:repeat(2,1fr); }
  .news-category-list :is(a,button) { padding:0 12px; border:1px solid #cfd6db; margin:-1px 0 0 -1px; }
  .news-archive-note { display:none; }
  .news-archive-results>header { grid-template-columns:1fr; gap:20px; margin-bottom:38px; }
  .news-featured-card>a { min-height:0; }
  .news-featured-image { min-height:290px; }
  .news-featured-copy { padding:30px 24px; min-height:360px; }
  .news-archive-grid { grid-template-columns:1fr; }
  .news-archive-copy { min-height:285px; padding:28px 24px; }
  .news-contact-band { padding:66px 22px; grid-template-columns:1fr; gap:28px; }
  .news-contact-band>button { grid-column:auto; width:100%; justify-content:space-between; }
}

/* Product catalogue page */
.products-page { background:#fff; overflow:hidden; }

/* News archive — compact editorial index */
.news-page .site-header { background:#fff; }
.news-archive { padding:112px 6vw 128px; }
.news-archive-heading { display:block !important; margin-bottom:48px !important; padding-bottom:38px; border-bottom:1px solid #cfd6db; }
.news-archive-breadcrumb { display:flex; align-items:center; gap:11px; margin-bottom:28px; color:#84919a; font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.news-archive-breadcrumb a { color:#1d303c; }
.news-archive-breadcrumb i { color:#b1bac0; font-style:normal; }
.news-archive-heading h1 { margin:0; font-size:clamp(52px,5vw,72px); line-height:.96; letter-spacing:-.06em; }
.news-list { border-top:1px solid #cfd6db; }
.news-list-card { border-bottom:1px solid #cfd6db; }
.news-list-card[hidden] { display:none; }
.news-list-card>a { min-height:340px; padding:34px 0; display:grid; grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr); gap:clamp(34px,5vw,76px); align-items:center; }
.news-list-image { width:100%; min-height:0; aspect-ratio:16/9; overflow:hidden; background:#e4e8eb; }
.news-list-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.news-list-copy { padding:10px 0 6px; display:flex; flex-direction:column; }
.news-list-copy>div { display:flex; justify-content:space-between; gap:20px; color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.news-list-copy time { color:#7d8992; }
.news-list-copy h2 { margin:42px 0 16px; max-width:680px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font-size:clamp(29px,2.4vw,40px); line-height:1.08; letter-spacing:-.045em; }
.news-list-copy>p { margin:0; max-width:650px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; color:#697680; font-size:14px; line-height:1.75; }
.news-list-copy>strong { margin-top:auto; padding-top:28px; display:flex; align-items:center; justify-content:space-between; font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
.news-list-copy>strong .icon { color:var(--blue); }
.news-list-card:hover img { transform:scale(1.035); }
.news-pagination { margin-top:38px; display:flex; gap:8px; justify-content:flex-end; }
.news-pagination button { width:44px; height:44px; border:1px solid #ccd5db; background:transparent; color:#56646e; cursor:pointer; font-size:12px; font-weight:700; }
.news-pagination button.is-active { border-color:var(--blue); background:var(--blue); color:#fff; }
@media (max-width:1050px) {
  .news-list-card>a { grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr); gap:32px; }
}
@media (max-width:760px) {
  .news-archive { padding:112px 22px 82px; }
  .news-archive-heading { margin-bottom:30px !important; padding-bottom:28px; }
  .news-archive-heading h1 { font-size:46px; }
  .news-list-card>a { min-height:0; grid-template-columns:1fr; gap:0; padding:28px 0; }
  .news-list-image { min-height:0; aspect-ratio:16/9; }
  .news-list-copy { padding-top:24px; }
  .news-list-copy h2 { margin:28px 0 13px; font-size:29px; }
}
.products-page .site-header:not(.is-scrolled) { background:linear-gradient(180deg,rgba(4,19,33,.58),rgba(4,19,33,0)); }
.products-hero { position:relative; isolation:isolate; min-height:540px; padding:148px 6vw 78px; display:flex; align-items:flex-end; overflow:hidden; color:white; background:radial-gradient(circle at 78% 24%,rgba(0,159,226,.2),transparent 32%),linear-gradient(110deg,#061c30 0%,#082f51 58%,#071b2e 100%); }
.products-hero::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(5,24,40,.98) 0%,rgba(5,24,40,.86) 44%,rgba(5,24,40,.12) 76%),linear-gradient(0deg,rgba(5,24,40,.42),transparent 48%); }
.products-hero-product { position:absolute; z-index:-2; top:0; right:0; bottom:0; width:58%; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 26%); mask-image:linear-gradient(90deg,transparent,#000 26%); }
.products-hero-product img { width:100%; height:100%; object-fit:cover; object-position:center 52%; filter:saturate(.55) contrast(1.08) brightness(.78); }
.products-hero-copy { position:relative; z-index:1; width:min(760px,64vw); }
.products-breadcrumb { display:flex; align-items:center; gap:12px; margin-bottom:42px; color:#9fb3c2; font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
.products-breadcrumb a { color:white; }
.products-breadcrumb i { color:#5f7c91; font-style:normal; }
.products-hero h1 { margin:25px 0 22px; font-size:clamp(50px,4.8vw,72px); line-height:.98; letter-spacing:-.055em; font-weight:600; }
.products-hero-copy>p { max-width:680px; margin:0; color:#c8d4dc; font-size:15px; line-height:1.75; }
.products-hero-copy>:is(a,button) { display:inline-flex; align-items:center; gap:32px; margin-top:32px; padding:13px 0; border:0; border-bottom:1px solid rgba(255,255,255,.45); color:inherit; background:transparent; cursor:pointer; font:inherit; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.products-hero-copy>:is(a,button) .icon { color:#79d9ff; }
.products-hero-meta { position:absolute; right:5vw; bottom:62px; width:145px; padding:20px 0 0; border-top:1px solid rgba(255,255,255,.35); display:flex; align-items:flex-start; gap:14px; }
.products-hero-meta>span { color:#79d9ff; font-size:42px; line-height:.8; letter-spacing:-.06em; }
.products-hero-meta small { color:#c4d0d9; font-size:12px; line-height:1.55; letter-spacing:.13em; }

.catalog-section { padding:110px 6vw 125px; display:grid; grid-template-columns:270px minmax(0,1fr); gap:5vw; background:#fff; }
.catalog-sidebar { position:sticky; top:104px; align-self:start; }
.catalog-sidebar-search { margin-bottom:28px; display:block; grid-column:1/-1; }
.catalog-sidebar-search>span:first-child { margin-bottom:12px; display:block; color:var(--purple); font-size:12px; font-weight:700; letter-spacing:.16em; }
.catalog-sidebar-search-control { min-height:48px; display:flex; align-items:center; border-bottom:2px solid #c8d3d9; background:#f3f6f7; transition:border-color .2s ease,background-color .2s ease; }
.catalog-sidebar-search-control:focus-within { border-color:var(--blue); background:#fff; }
.catalog-sidebar-search-control>i { width:44px; flex:0 0 44px; display:grid; place-items:center; color:var(--blue); }
.catalog-sidebar-search-control svg { width:18px; height:18px; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.catalog-sidebar-search-control input { width:100%; min-width:0; min-height:46px; padding:0 12px 0 0; border:0; outline:0; color:#14212a; background:transparent; font-family:inherit; font-size:12px; }
.catalog-sidebar-search-control input::placeholder { color:#71808a; opacity:1; }
.catalog-filter-group { padding-bottom:18px; }
.catalog-filter-group>span { display:block; margin-bottom:14px; color:var(--purple); font-size:12px; font-weight:700; letter-spacing:.16em; }
.catalog-category-list { display:flex; flex-direction:column; gap:8px; }
.catalog-category-list a { min-height:50px; padding:0 14px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:0; background:#f3f6f7; color:#56636d; font-family:inherit; font-size:14px; text-align:left; cursor:pointer; transition:background .22s ease,color .22s ease; }
.catalog-category-list a::before { content:""; width:6px; height:6px; flex:0 0 auto; border-radius:50%; background:#c5d0d6; transition:background .22s ease,transform .22s ease; }
.catalog-category-list a .icon { margin-left:auto; }
.catalog-category-list a:hover,.catalog-category-list a.is-active { color:#07314f; background:#e4f5fc; }
.catalog-category-list a:hover::before,.catalog-category-list a.is-active::before { background:var(--blue); transform:scale(1.25); }
.catalog-category-list a .icon { color:#a4b0b8; font-size:12px; transition:transform .25s ease,color .25s ease; }
.catalog-category-list a:hover,.catalog-category-list a.is-active { color:var(--blue); }
.catalog-category-list a:hover .icon,.catalog-category-list a.is-active .icon { color:var(--blue); transform:translate(2px,-2px); }
.catalog-series-filter { padding-top:18px; }
.catalog-series-filter>div { display:flex; flex-wrap:wrap; gap:8px; }
.catalog-series-filter button { padding:9px 12px; border:1px solid #d7dfe4; background:#fff; color:#5e6b74; font-family:inherit; font-size:12px; cursor:pointer; transition:.22s ease; }
.catalog-series-filter button:hover,.catalog-series-filter button.is-active { border-color:var(--blue); background:var(--blue); color:white; }
.catalog-series-filter>.catalog-checkboxes { display:flex; flex-direction:column; gap:8px; }
.catalog-checkboxes label { display:grid; grid-template-columns:16px 1fr auto; align-items:center; gap:10px; color:#57646d; font-size:12px; cursor:pointer; }
.catalog-checkboxes input { width:16px; height:16px; margin:0; display:grid; place-content:center; flex:0 0 auto; appearance:none; border:1px solid #89969e; border-radius:2px; background:white; cursor:pointer; transition:border-color .18s ease,background-color .18s ease; }
.catalog-checkboxes input::before { content:""; width:4px; height:8px; margin-top:-2px; border-right:2px solid white; border-bottom:2px solid white; opacity:0; transform:rotate(45deg) scale(.7); transition:opacity .15s ease,transform .15s ease; }
.catalog-checkboxes input:checked { border-color:var(--blue); background:var(--blue); }
.catalog-checkboxes input:checked::before { opacity:1; transform:rotate(45deg) scale(1); }
.catalog-checkboxes input:focus-visible { outline:2px solid rgba(0,159,226,.3); outline-offset:2px; }
.catalog-checkboxes label:hover { color:var(--blue); }
.catalog-checkboxes b { min-width:20px; color:#98a5ad; font-size:12px; font-weight:600; text-align:right; }
.catalog-clear { margin-top:0; padding:8px 0; border:0; border-bottom:1px solid currentColor; color:var(--blue); background:transparent; font-family:inherit; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }
.catalog-clear:disabled { color:#aab4ba; cursor:default; }
.catalog-custom-cta { position:relative; isolation:isolate; width:100%; margin-top:28px; padding:26px 22px 24px; display:flex; flex-direction:column; overflow:hidden; border:0; color:white; background:linear-gradient(145deg,#300175 0%,#14265a 100%); cursor:pointer; font:inherit; text-align:left; }
.catalog-custom-cta::after { content:""; position:absolute; z-index:-1; width:150px; height:150px; right:-58px; top:-62px; border:1px solid rgba(126,218,255,.38); border-radius:50%; box-shadow:0 0 0 28px rgba(0,159,226,.07),0 0 0 55px rgba(0,159,226,.035); }
.catalog-custom-cta>span { color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.15em; }
.catalog-custom-cta>strong { max-width:210px; margin-top:20px; font-size:20px; line-height:1.18; letter-spacing:-.035em; }
.catalog-custom-cta>small { margin-top:13px; color:#c6c7dd; font-size:12px; line-height:1.6; }
.catalog-custom-cta>em { margin-top:24px; display:flex; align-items:center; justify-content:space-between; color:white; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.catalog-custom-cta>em .icon { color:#79d9ff; transition:transform .22s ease; }
.catalog-custom-cta:hover>em .icon { transform:translate(2px,-2px); }
.catalog-toolbar { min-height:38px; margin-bottom:20px; display:flex; align-items:baseline; justify-content:flex-end; gap:8px; color:#7a8790; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.catalog-toolbar strong { color:var(--blue); font-size:32px; line-height:1; letter-spacing:-.04em; }
.catalog-empty { margin:42px 0 0; padding:32px; border:1px solid var(--line); color:#697780; background:#f7f9fa; font-size:14px; text-align:center; }
.catalog-results>header { min-height:170px; margin-bottom:38px; display:flex; align-items:flex-start; justify-content:space-between; gap:30px; border-bottom:1px solid var(--line); }
.catalog-results>header h2 { margin:22px 0 34px; font-size:clamp(38px,3.7vw,58px); line-height:1.02; letter-spacing:-.05em; font-weight:600; }
.catalog-results>header h2 em,.product-category-description h2 em { color:var(--blue); }
.catalog-results>header>p { display:flex; align-items:baseline; gap:8px; margin:8px 0 0; color:#78848d; font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.catalog-results>header>p strong { color:var(--blue); font-size:32px; letter-spacing:-.04em; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.catalog-card { min-width:0; background:#f3f5f6; transition:transform .28s ease,box-shadow .28s ease; }
.catalog-card:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(7,26,43,.1); }
.catalog-card>a { display:block; height:100%; }
.catalog-card-image { position:relative; aspect-ratio:1/1; overflow:hidden; background:#e7e9eb; }
.catalog-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.catalog-card:hover .catalog-card-image img { transform:scale(1.035); }
.catalog-card-image>span { position:absolute; left:14px; top:14px; padding:7px 10px; color:white; background:rgba(7,26,43,.82); font-size:12px; font-weight:700; line-height:1; letter-spacing:.1em; }
.catalog-card-copy { min-height:174px; padding:20px 20px 18px; display:flex; flex-direction:column; }
.catalog-card-copy>small { display:none; }
.catalog-card-copy h3 { min-height:2.3em; margin:0 0 9px; display:-webkit-box; overflow:hidden; font-size:20px; line-height:1.15; letter-spacing:-.035em; overflow-wrap:anywhere; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.catalog-card-copy p { min-height:4.95em; margin:0; display:-webkit-box; overflow:hidden; color:#6e7a83; font-size:12px; line-height:1.65; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.catalog-card-copy>span { margin-top:13px; padding-top:0; display:flex; justify-content:space-between; color:#172732; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.catalog-card-copy>span .icon { color:var(--blue); }
.catalog-card[hidden] { display:none; }
.catalog-pagination { width:max-content; margin:45px 0 0 auto; display:flex; gap:7px; }
.catalog-pagination[hidden] { display:none; }
.catalog-pagination button { width:42px; height:42px; display:grid; place-items:center; border:1px solid #d5dde2; color:#263843; background:white; font-family:inherit; font-size:12px; cursor:pointer; transition:background .2s ease,border-color .2s ease,color .2s ease; }
.catalog-pagination button:hover:not(:disabled),.catalog-pagination button.is-active { border-color:var(--blue); color:white; background:var(--blue); }
.catalog-pagination button:disabled { color:#bac3c9; cursor:default; }

.product-category-detail { padding:120px 6vw; display:grid; grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr); gap:7vw; background:#f2f5f6; }
.product-category-description h2 { max-width:780px; margin:28px 0 24px; font-size:clamp(42px,4.4vw,68px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.product-category-lead { max-width:760px; margin:0 0 50px; color:#68747e; font-size:14px; line-height:1.8; }
.product-archive-editorial { margin-bottom:0; }
.product-archive-editorial h2 { margin-top:28px; }
.product-archive-editorial p,.product-archive-editorial li { max-width:760px; color:#68747e; font-size:14px; line-height:1.8; }
.product-archive-editorial p { margin:0 0 22px; }
.product-archive-editorial ul,.product-archive-editorial ol { margin:0 0 24px; padding-left:1.35em; }
.product-archive-editorial img { max-width:100%; height:auto; margin:24px 0; }
.product-category-description article { padding:32px 0; display:grid; grid-template-columns:58px 1fr; gap:22px; border-top:1px solid #ced8de; }
.product-category-description article:last-child { border-bottom:1px solid #ced8de; }
.product-category-description article>span { color:var(--blue); font-size:12px; font-weight:700; }
.product-category-description h3 { margin:0 0 13px; font-size:24px; line-height:1.2; letter-spacing:-.035em; }
.product-category-description h3 a:hover { color:var(--blue); }
.product-category-description article p { max-width:720px; margin:0; color:#67747d; font-size:13px; line-height:1.75; }
.product-category-link { width:max-content; margin-top:18px; padding-bottom:6px; display:flex; align-items:center; gap:24px; border-bottom:1px solid #9eabb3; color:#172732; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.product-category-link .icon { color:var(--blue); }
.product-inquiry-box { align-self:start; position:sticky; top:104px; padding:48px 42px; color:white; background:linear-gradient(145deg,#300175,#190b4e); box-shadow:0 28px 65px rgba(28,8,69,.18); }
.product-inquiry-box h2 { margin:26px 0 17px; font-size:38px; line-height:1.04; letter-spacing:-.045em; font-weight:600; }
.product-inquiry-box>p { margin:0 0 28px; color:#c7bddd; font-size:12px; line-height:1.7; }
.product-inquiry-box form { display:flex; flex-direction:column; }
.product-inquiry-box label { display:flex; flex-direction:column; gap:8px; padding:15px 0 10px; border-bottom:1px solid rgba(255,255,255,.26); }
.product-inquiry-box label>span { color:#9fe5ff; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.product-inquiry-box input,.product-inquiry-box select,.product-inquiry-box textarea { width:100%; padding:4px 0; border:0; outline:0; resize:vertical; color:white; background:transparent; font:inherit; font-size:13px; }
.product-inquiry-box input::placeholder,.product-inquiry-box textarea::placeholder { color:#a59bbd; }
.product-inquiry-box select option { color:#111; }
.product-inquiry-box button { min-height:52px; margin-top:24px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; border:0; color:white; background:var(--blue); font-family:inherit; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }

.taxonomy-product-results { padding:110px 6vw 125px; background:#fff; }
.taxonomy-product-results>header { margin-bottom:44px; display:flex; align-items:end; justify-content:space-between; gap:36px; border-bottom:1px solid var(--line); }
.taxonomy-product-results>header .overline { color:var(--purple); }
.taxonomy-product-results>header h2 { margin:20px 0 35px; font-size:clamp(38px,4vw,62px); line-height:1; letter-spacing:-.05em; }
.taxonomy-product-results>header>p { margin:0 0 36px; display:flex; align-items:baseline; gap:9px; color:#78848d; font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.taxonomy-product-results>header>p strong { color:var(--blue); font-size:32px; line-height:1; letter-spacing:-.04em; }
.taxonomy-editorial-section { padding:110px 6vw 125px; display:grid; grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr); gap:7vw; align-items:start; background:#f2f5f6; }
.taxonomy-editorial-content { min-width:0; color:#263843; }
.taxonomy-editorial-content>.overline { display:block; margin-bottom:28px; color:var(--purple); }
.taxonomy-editorial-content h2 { max-width:780px; margin:0 0 28px; font-size:clamp(38px,4vw,62px); line-height:1.04; letter-spacing:-.05em; }
.taxonomy-editorial-content h3 { margin:40px 0 16px; font-size:28px; line-height:1.15; letter-spacing:-.035em; }
.taxonomy-editorial-content p,.taxonomy-editorial-content li { color:#68747e; font-size:14px; line-height:1.8; }
.taxonomy-editorial-content p { max-width:820px; margin:0 0 22px; }
.taxonomy-editorial-content ul,.taxonomy-editorial-content ol { margin:0 0 24px; padding-left:1.35em; }
.taxonomy-editorial-content img { max-width:100%; height:auto; margin:24px 0; }
.article-category-editorial { grid-template-columns:minmax(0,920px); }
.taxonomy-pagination { margin-top:48px; }
.taxonomy-pagination .page-numbers { margin:0; padding:0; display:flex; justify-content:flex-end; gap:7px; list-style:none; }
.taxonomy-pagination a,.taxonomy-pagination span { min-width:42px; height:42px; padding:0 12px; display:grid; place-items:center; border:1px solid #d5dde2; color:#263843; background:#fff; font-size:12px; }
.taxonomy-pagination a:hover,.taxonomy-pagination .current { border-color:var(--blue); color:#fff; background:var(--blue); }

@media (max-width:1180px) {
  .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-category-detail { gap:4vw; }
}
@media (max-width:900px) {
  .products-hero { min-height:500px; padding:140px 28px 68px; }
  .products-hero-copy { width:78vw; }
  .products-hero-meta { display:none; }
  .products-hero-product { width:72%; opacity:.72; }
  .catalog-section { padding:85px 28px 95px; grid-template-columns:1fr; }
  .catalog-sidebar { position:relative; top:auto; display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
  .catalog-sidebar>p { grid-column:1/-1; margin-top:0; }
  .catalog-series-filter { padding-top:0; }
  .product-category-detail { padding:90px 28px; grid-template-columns:1fr; gap:70px; }
  .taxonomy-product-results { padding:90px 28px; }
  .taxonomy-editorial-section { padding:90px 28px; grid-template-columns:1fr; gap:70px; }
  .product-inquiry-box { position:relative; top:auto; }
}
@media (max-width:620px) {
  .products-hero { min-height:470px; padding:125px 22px 58px; }
  .products-hero-copy { width:100%; }
  .products-breadcrumb { margin-bottom:30px; }
  .products-hero h1 { font-size:43px; }
  .products-hero-copy>p { font-size:13px; }
  .catalog-section { padding-left:22px; padding-right:22px; }
  .catalog-sidebar { grid-template-columns:1fr; }
  .catalog-results>header { min-height:0; margin-bottom:30px; flex-direction:column; }
  .catalog-results>header h2 { font-size:38px; }
  .catalog-results>header>p { margin:-20px 0 24px; }
  .catalog-grid { grid-template-columns:1fr; }
  .catalog-toolbar { justify-content:flex-start; }
  .catalog-pagination { margin-right:auto; margin-left:auto; }
  .product-category-detail { padding-left:22px; padding-right:22px; }
  .taxonomy-product-results { padding:72px 22px 82px; }
  .taxonomy-product-results>header { align-items:flex-start; flex-direction:column; gap:0; }
  .taxonomy-product-results>header>p { margin:-18px 0 28px; }
  .taxonomy-editorial-section { padding:72px 22px 82px; }
  .taxonomy-editorial-content h2 { font-size:38px; }
  .taxonomy-pagination .page-numbers { justify-content:center; }
  .product-category-description h2 { font-size:38px; }
  .product-category-description article { grid-template-columns:36px 1fr; gap:12px; }
  .product-category-description h3 { font-size:21px; }
  .product-inquiry-box { padding:38px 24px; }
}

/* Contact page */
.contact-page { background:#fff; }
.contact-hero { position:relative; min-height:720px; padding:170px 6vw 95px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,.55fr); gap:8vw; align-items:end; overflow:hidden; background:#071a2b; color:#fff; }
.contact-hero-media,.contact-hero-shade { position:absolute; inset:0; }
.contact-hero-media img { width:100%; height:100%; object-fit:cover; object-position:center 63%; filter:saturate(.65) contrast(1.08) brightness(.75); }
.contact-hero-shade { background:linear-gradient(90deg,rgba(4,22,42,.95) 0%,rgba(5,32,58,.8) 48%,rgba(12,30,48,.35) 100%),linear-gradient(0deg,rgba(3,18,34,.78),transparent 58%); }
.contact-hero-copy { position:relative; z-index:2; max-width:900px; }
.contact-hero-copy .about-kicker { color:#79d9ff; }
.contact-hero-copy h1 { margin:30px 0 24px; font-size:clamp(58px,6.4vw,72px); line-height:.96; letter-spacing:-.06em; font-weight:600; }
.contact-hero-copy h1 em { color:#79d9ff; }
.contact-hero-copy>p { max-width:720px; color:#d0dae2; font-size:16px; line-height:1.8; }
.contact-hero-actions { display:flex; align-items:center; gap:30px; margin-top:36px; }
.contact-hero-actions .button { gap:42px; }
.contact-hero-actions>a:not(.button) { display:inline-flex; align-items:center; gap:16px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.42); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.contact-hero-actions>a:not(.button) .icon { color:#79d9ff; }
.contact-hero-card { position:relative; z-index:2; padding:38px; border:1px solid rgba(255,255,255,.22); background:rgba(7,26,43,.62); backdrop-filter:blur(16px); }
.contact-hero-card>span { color:#79d9ff; font-size:12px; letter-spacing:.18em; font-weight:700; }
.contact-hero-card>strong { display:block; margin:22px 0 34px; font-size:clamp(30px,3vw,46px); line-height:1.06; letter-spacing:-.045em; }
.contact-hero-card>a { display:flex; align-items:center; gap:13px; padding:15px 0; border-top:1px solid rgba(255,255,255,.16); font-size:13px; }
.contact-hero-card>a .icon { color:#79d9ff; }
.contact-hero-card>small { display:block; margin-top:8px; color:#9aabb8; font-size:12px; }
.contact-workspace { display:grid; grid-template-columns:.82fr 1.18fr; background:#f2f5f6; }
.contact-details { padding:125px 7vw; background:#fff; }
.contact-details>.overline,.contact-form-panel>.overline,.contact-review .overline { color:var(--purple); }
.contact-details h2 { margin:30px 0 24px; font-size:clamp(44px,4.7vw,72px); line-height:1.01; letter-spacing:-.055em; font-weight:600; }
.contact-details>p { max-width:560px; margin:0; color:#65717a; font-size:14px; line-height:1.8; }
.contact-detail-list { margin-top:54px; border-top:1px solid var(--line); }
.contact-detail-list>div { display:grid; grid-template-columns:34px 1fr; gap:16px; padding:21px 0; border-bottom:1px solid var(--line); }
.contact-detail-list>div>.icon { width:18px; height:18px; margin-top:4px; color:var(--blue); }
.contact-detail-list>div>span { min-width:0; display:flex; flex-direction:column; gap:6px; }
.contact-detail-list small { color:#7c8790; font-size:12px; font-weight:700; letter-spacing:.15em; }
.contact-detail-list strong,.contact-detail-list a { color:#16202a; font-size:13px; line-height:1.6; font-weight:500; }
.contact-inline-links { display:flex; flex-wrap:wrap; gap:8px 20px; }
.contact-form-panel { padding:125px 7vw; background:#eef3f6; scroll-margin-top:88px; }
.contact-form-panel h2 { max-width:720px; margin:30px 0 18px; font-size:clamp(40px,4vw,62px); line-height:1.04; letter-spacing:-.05em; font-weight:600; }
.contact-form-panel>p { max-width:660px; margin:0 0 44px; color:#65717a; font-size:14px; line-height:1.8; }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:24px 28px; }
.contact-form label>span:not(.custom-file-picker) { display:block; margin-bottom:8px; color:#52606a; font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.contact-form input,.contact-form select,.contact-form textarea { width:100%; padding:14px 0; border:0; border-bottom:1px solid #aebbc4; border-radius:0; background:transparent; color:#111820; outline:none; font:inherit; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:var(--blue); }
.contact-form textarea { resize:vertical; }
.contact-form-wide { grid-column:1/-1; }
.contact-form button { position:relative; border:0; padding:18px 54px; background:var(--blue); color:#fff; text-align:center; text-transform:uppercase; letter-spacing:.12em; font-weight:700; cursor:pointer; }
.contact-form button .icon { position:absolute; right:22px; }
.contact-form button:hover { background:#007fba; }
.contact-form>small { color:#6b7780; font-size:12px; line-height:1.6; }
.contact-review { padding:125px 6vw; display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; background:#fff; }
.contact-review-heading h2 { margin:30px 0 0; font-size:clamp(42px,4.3vw,66px); line-height:1.02; letter-spacing:-.05em; font-weight:600; }
.contact-review-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.contact-review-grid article { min-height:280px; padding:32px 28px; border-right:1px solid var(--line); }
.contact-review-grid article:last-child { border-right:0; }
.contact-review-grid b { color:var(--blue); font-size:12px; letter-spacing:.15em; }
.contact-review-grid h3 { margin:62px 0 14px; font-size:22px; line-height:1.2; letter-spacing:-.03em; }
.contact-review-grid p { margin:0; color:#68747e; font-size:12px; line-height:1.75; }
@media (max-width:1050px) {
  .contact-hero { grid-template-columns:1fr; gap:50px; padding-top:150px; }
  .contact-hero-card { max-width:560px; }
  .contact-workspace { grid-template-columns:1fr; }
  .contact-details,.contact-form-panel { padding:90px 6vw; }
  .contact-review { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .contact-hero { min-height:0; padding:130px 24px 72px; }
  .contact-hero-copy h1 { font-size:48px; }
  .contact-hero-copy>p { font-size:14px; }
  .contact-hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .contact-hero-card { padding:28px 24px; }
  .contact-details,.contact-form-panel { padding:80px 24px; }
  .contact-details h2,.contact-form-panel h2,.contact-review-heading h2 { font-size:38px; }
  .contact-form { grid-template-columns:1fr; }
  .contact-form-wide { grid-column:auto; }
  .contact-review { padding:80px 24px; }
  .contact-review-grid { grid-template-columns:1fr; }
  .contact-review-grid article { min-height:0; padding:28px 0; border-right:0; border-bottom:1px solid var(--line); }
  .contact-review-grid h3 { margin-top:28px; }
}

@media (max-width:720px) {
  .site-header { height:72px; padding:0 20px; grid-template-columns:1fr auto; }
  .site-header .brand { width:190px; height:42px; }
  .site-header nav { display:none; }
  .header-cta { padding:11px 12px; font-size:12px; }
  .header-cta span { display:none; }
  .hero { padding-top:72px; min-height:0; }
  .hero-copy { padding:78px 24px 55px; }
  .hero h1 { font-size:50px; }
  .hero-copy>p { font-size:15px; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:12px; }
  .hero-visual { margin:0 20px 210px; min-height:390px; }
  .proof-strip { grid-template-columns:repeat(2,1fr); padding-left:0; }
  .proof-strip div { padding:18px 20px; }
  .proof-strip strong { font-size:28px; }
  .section { padding:80px 22px; }
  .section-heading,.section-heading.inline { display:block; }
  .section-heading>div { margin-bottom:28px; }
  .section-heading h2 { margin-bottom:22px; }
  .product-grid,.news-grid { grid-template-columns:1fr; }
  .product-card { min-height:310px; }
  .product-showcase { grid-template-columns:1fr; }
  .showcase-image { min-height:290px; }
  .showcase-copy { padding:40px 26px; }
  .capabilities { padding:80px 20px 0; gap:30px; }
  .capability-image { min-height:460px; }
  .capability-copy { padding-right:0; }
  .quality { padding:80px 22px 0; }
  .quality-image { grid-auto-rows:minmax(220px,auto); }
  .quality-image figure { min-height:220px; }
  .quality-image figcaption { min-height:78px; padding:12px; }
  .quality-brands { grid-template-columns:repeat(4,1fr); margin-top:40px; }
  .brand-item { border-bottom:0; }
  .news-heading { display:block; }
  .news-heading>a { margin-top:28px; }
  .news-card:last-child { grid-column:auto; }
  .quality-brands { grid-template-columns:repeat(2,1fr); }
  .contact-lines p { grid-template-columns:22px minmax(0,1fr); }
  .company-image { min-height:360px; }
  .company-copy { padding:70px 24px; }
  .rfq { grid-template-columns:1fr; padding:80px 24px; }
  footer { padding:46px 22px 28px; }
  footer>div { flex-direction:column; gap:14px; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

/* Refined industrial editorial direction */
.loading-screen { position:fixed; inset:0; z-index:999; display:grid; place-items:center; background:var(--purple); color:white; pointer-events:none; animation:intro-out .42s cubic-bezier(.7,0,.2,1) .58s forwards; }
.loader-seen .loading-screen { display:none; }
.loader-mark { display:flex; align-items:center; justify-content:center; width:min(300px,48vw); animation:loader-rise .35s ease both; }
.loader-mark img { display:block; width:100%; height:120px; object-fit:contain; }
.loader-progress { position:absolute; left:0; bottom:0; width:100%; height:2px; background:rgba(255,255,255,.22); }
.loader-progress i { display:block; width:0; height:100%; background:white; animation:loader-progress .58s linear forwards; }
.loading-screen>b { position:absolute; right:4.5vw; bottom:28px; display:flex; justify-content:flex-end; min-width:58px; font-size:18px; font-variant-numeric:tabular-nums; }

.site-header { height:78px; padding:0 4.8vw; grid-template-columns:280px 1fr auto; border-color:rgba(255,255,255,.25); }
.site-header .brand { position:relative; width:280px; height:46px; padding:0; overflow:visible; background:transparent; }
.site-header .brand-logo { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:left center; transition:opacity .28s ease; }
.site-header .brand-logo-color { opacity:0; }
.site-header.is-scrolled .brand-logo-light { opacity:0; }
.site-header.is-scrolled .brand-logo-color { opacity:1; }
.site-header nav { gap:clamp(12px,1.5vw,26px); font-size:12px; letter-spacing:.055em; }
.site-header nav,.header-cta,.button,.text-link,.overline { font-weight:600; }
.header-cta { padding:12px 16px; background:#0079a8; border-color:rgba(255,255,255,.45); color:white; }
.header-cta:hover { background:#006b96; }

.hero { position:relative; display:block; min-height:720px; height:100svh; padding:0; background:var(--purple); overflow:hidden; }
.hero:before { content:none; }
.hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,27,66,.48) 0%,rgba(3,42,97,.25) 45%,rgba(2,30,72,.45) 100%),linear-gradient(0deg,rgba(4,25,55,.5),transparent 45%); }
.hero-media { position:absolute; inset:0; overflow:hidden; }
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.02); filter:saturate(.7) contrast(1.05) brightness(.9); }
.hero-copy { position:absolute; z-index:2; left:clamp(90px,29vw,520px); top:50%; width:min(690px,55vw); padding:0; transform:translateY(-45%); }
.hero .kicker { color:white; gap:14px; font-size:12px; letter-spacing:.18em; }
.hero .kicker i { width:65px; background:rgba(255,255,255,.6); }
.hero h1 { max-width:none; margin:24px 0 22px; font-size:clamp(46px,4.5vw,68px); line-height:1.04; letter-spacing:-.045em; }
.hero h1,.about-head h2,.section-heading h2,.capability-copy h2,.quality-copy h2,.rfq h2 { font-weight:600; }
.hero h1 em { color:white; font-weight:400; }
.hero-copy>p { max-width:560px; color:rgba(255,255,255,.82); font-size:15px; line-height:1.7; }
.hero-actions { margin-top:28px; gap:14px; }
.hero .button { gap:40px; padding:15px 20px; }
.hero .button>.icon,.hero .text-link>.icon { width:15px; height:15px; margin-left:auto; }
.hero .button-primary { background:var(--blue); color:white; border:1px solid rgba(255,255,255,.22); }
.hero .text-link { min-width:154px; padding:15px 20px; background:white; color:#111; border:0; }
.hero-side { position:absolute; z-index:3; right:0; top:0; bottom:0; width:68px; border-left:1px solid rgba(255,255,255,.28); display:flex; align-items:center; justify-content:center; gap:32px; color:rgba(255,255,255,.65); writing-mode:vertical-rl; font-size:12px; letter-spacing:.16em; }
.hero-side b { position:absolute; bottom:28px; color:white; font-size:12px; }
.scroll-cue { position:absolute; z-index:4; right:43px; bottom:72px; width:48px; height:48px; border-radius:50%; background:white; color:var(--purple); display:grid; place-items:center; isolation:isolate; }
.scroll-cue::before,.scroll-cue::after { content:""; position:absolute; inset:0; z-index:-1; border:1px solid rgba(255,255,255,.82); border-radius:50%; animation:scroll-ripple 2.4s ease-out infinite; pointer-events:none; }
.scroll-cue::after { animation-delay:1.2s; }
.scroll-cue span { position:absolute; right:-2px; bottom:63px; color:white; font-size:12px; letter-spacing:.18em; writing-mode:vertical-rl; }
.scroll-cue i { width:15px; height:15px; }

.home-about { padding:115px 6.8vw 130px; background:white; }
.about-head { display:grid; grid-template-columns:1.1fr 1.35fr; gap:7vw; align-items:start; }
.about-head .overline { display:block; margin-bottom:34px; color:var(--purple); }
.about-head h2 { margin:0; max-width:680px; font-size:clamp(34px,3.1vw,48px); line-height:1.18; letter-spacing:-.045em; }
.about-head>div:last-child { padding-top:45px; }
.about-head p { color:#555f68; font-size:14px; line-height:1.85; margin:0 0 25px; }
.about-head a { display:inline-flex; gap:36px; align-items:center; border:1px solid #a9b1b8; padding:13px 17px; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.about-head a .icon { color:var(--purple); width:16px; height:16px; }
.about-body { display:grid; grid-template-columns:.42fr 1fr; gap:5.5vw; margin-top:76px; align-items:start; }
.about-stats { border-top:1px solid #cbd2d8; }
.about-stats>div { min-height:122px; display:grid; grid-template-columns:130px 1fr 30px; align-items:center; gap:18px; border-bottom:1px solid #d8dde1; }
.about-stats strong { display:inline-flex; align-items:flex-start; gap:2px; color:var(--blue); font-size:49px; line-height:1; letter-spacing:-.05em; font-variant-numeric:tabular-nums; white-space:nowrap; transition:color .25s ease; }
.about-stats strong .stat-value { color:inherit; font:inherit; line-height:inherit; letter-spacing:inherit; text-transform:none; }
.about-stats strong sup { margin-top:.06em; font-size:18px; line-height:1; letter-spacing:0; }
.about-stats>div>.stat-label { color:#6b747c; font-size:12px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; }
.about-stats>div>.icon { width:20px; height:20px; justify-self:end; color:var(--blue); transition:color .25s ease; }
.about-stats>div:hover strong,.about-stats>div:hover>.icon { color:var(--purple); }
.about-image { margin:0; position:relative; overflow:hidden; min-height:515px; }
.about-image img { width:100%; height:515px; object-fit:cover; object-position:center; transition:transform .9s ease; }
.about-image:hover img { transform:scale(1.025); }

.products { background:#f6f7f8; padding-bottom:clamp(80px,8vw,110px); }
.product-card { background:#f6f7f8; }
.product-card:hover { background:white; }
.product-showcase { background:var(--purple); color:white; }
.showcase-image { min-height:500px; }
.showcase-image img { object-position:left center; }
.showcase-copy>span,.showcase-copy a span { color:#80d9ff; }
.showcase-copy a { display:inline-flex; align-items:center; }
.showcase-copy p { color:rgba(255,255,255,.75); }
.product-intro-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.product-intro { grid-column:span 2; min-height:500px; padding:48px 48px 48px 0; background:transparent; border:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.product-intro .overline { color:var(--purple); }
.product-intro h2 { margin:42px 0 24px; font-size:clamp(38px,3.4vw,54px); line-height:1.05; letter-spacing:-.05em; font-weight:600; }
.product-intro p { max-width:690px; margin:0; color:#626e77; font-size:14px; line-height:1.8; }
.product-intro>a { margin-top:36px; display:inline-flex; align-items:center; gap:34px; padding:14px 17px; border:1px solid #aeb7bf; text-transform:uppercase; letter-spacing:.1em; font-size:12px; font-weight:600; }
.product-intro>a .icon { width:15px; height:15px; color:var(--blue); }
.product-media-card { position:relative; min-height:500px; overflow:hidden; background:#cfd7dc; color:white; border:0; }
.product-media-card>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(1.03) brightness(.9); transition:transform .7s ease,filter .35s ease; }
.product-media-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,20,30,.04) 48%,rgba(10,20,30,.72)); }
.product-media-card:hover>img { transform:scale(1.045); filter:saturate(.94) contrast(1.04) brightness(.96); }
.product-image-starter,
.product-image-planetary,
.product-image-motor,
.product-image-gears { object-position:center; }
.product-image-robotics { object-position:center; }
.product-media-card:hover>.product-image-gears { transform:scale(1.045); }
.product-media-card:hover>.product-image-robotics { transform:scale(1.045); }
.product-card-link { position:absolute; z-index:2; inset:0; display:flex; align-items:flex-end; justify-content:center; padding:32px 24px 28px; text-align:center; }
.product-card-link h3 { margin:0; color:white; font-size:clamp(15px,1.15vw,18px); line-height:1.12; letter-spacing:-.02em; text-shadow:0 2px 18px rgba(0,0,0,.38); }
.product-lower-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:14px; }
.product-custom-card { position:relative; min-height:500px; overflow:hidden; color:white; background:#cfd7dc; border:0; }
.product-custom-card>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.55) contrast(1.04) brightness(.78); }
.product-custom-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,20,30,.18),rgba(10,20,30,.68)); }
.custom-card-content { position:relative; z-index:2; height:100%; padding:28px 25px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.custom-plus { width:66px; height:66px; border:1px solid rgba(255,255,255,.75); border-radius:50%; display:grid; place-items:center; margin:6px 0 22px; }
.custom-plus .icon { width:28px; height:28px; }
.custom-card-content small { font-size:12px; letter-spacing:.14em; color:#7bdcff; }
.custom-card-content h3 { margin:13px 0 9px; font-size:24px; line-height:1.12; }
.custom-card-content p { margin:0; color:rgba(255,255,255,.72); font-size:12px; line-height:1.55; }
.custom-card-content ul { width:100%; padding:0; margin:18px 0; list-style:none; border-top:1px solid rgba(255,255,255,.18); }
.custom-card-content li { padding:8px 0; border-bottom:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.78); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.custom-card-content>a { width:auto; min-width:170px; align-self:center; margin-top:22px; padding:12px 22px; background:var(--blue); color:white; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.custom-feature-heading { margin:88px 0 26px; display:flex; align-items:end; justify-content:space-between; gap:30px; }
.custom-feature-heading .overline { color:var(--purple); }
.custom-feature-heading p { max-width:520px; margin:0; color:#68747e; font-size:13px; line-height:1.7; text-align:right; }
.custom-feature-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.custom-feature-card { position:relative; min-height:390px; overflow:hidden; color:white; background:#17212a; border:0; }
.custom-feature-card>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.8) brightness(.9); transition:transform .75s ease; }
.custom-feature-card.robotics>img { object-position:center; }
.custom-feature-card::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,17,25,.88),rgba(7,17,25,.2) 80%); }
.custom-feature-card.robotics::after { background:linear-gradient(90deg,rgba(7,17,25,.88),rgba(7,17,25,.2) 80%); }
.custom-feature-card:hover>img { transform:scale(1.035); }
.custom-feature-card.robotics:hover>img { transform:scale(1.035); }
.custom-feature-card>div { position:relative; z-index:2; width:64%; min-height:390px; padding:48px; display:flex; flex-direction:column; justify-content:center; }
.custom-feature-card small { color:#7bdcff; font-size:12px; letter-spacing:.13em; }
.custom-feature-card h3 { margin:20px 0 16px; font-size:35px; line-height:1.04; letter-spacing:-.04em; }
.custom-feature-card p { margin:0; color:rgba(255,255,255,.74); font-size:12px; line-height:1.7; }
.custom-feature-card a { margin-top:28px; display:inline-flex; align-items:center; gap:14px; color:white; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.custom-feature-card a .icon { color:var(--blue); width:15px; height:15px; }
.capability-image { min-height:700px; }
.capability-image img { filter:saturate(.8); }

@keyframes loader-progress { to { width:100%; } }
@keyframes loader-rise { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes intro-out { 0% { opacity:1; visibility:visible; } 100% { opacity:0; visibility:hidden; } }
@keyframes scroll-ripple { 0% { transform:scale(.9); opacity:.78; } 80%,100% { transform:scale(1.85); opacity:0; } }

@media (max-width:900px) {
  .site-header { padding:0 22px; grid-template-columns:1fr auto; }
  .site-header nav { display:none; }
  .site-header .brand { width:220px; }
  .hero-copy { left:8vw; width:78vw; }
  .hero-side { width:50px; }
  .scroll-cue { right:26px; }
  .about-head,.about-body { grid-template-columns:1fr; }
  .about-head>div:last-child { padding-top:0; }
  .about-body { gap:38px; }
  .about-stats { display:grid; grid-template-columns:repeat(2,1fr); }
  .about-stats>div { grid-template-columns:110px 1fr 24px; padding-right:18px; }
  .product-intro-grid { grid-template-columns:repeat(2,1fr); }
  .product-intro { grid-column:1/-1; min-height:360px; }
  .product-lower-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:620px) {
  .site-header .brand { width:176px; height:40px; }
  .header-cta { font-size:12px; padding:10px; }
  .hero { min-height:680px; }
  .hero-media img { object-position:43% center; }
  .hero-copy { left:24px; top:49%; width:calc(100vw - 72px); }
  .hero h1 { font-size:44px; }
  .hero-side { display:none; }
  .scroll-cue { right:24px; bottom:38px; }
  .home-about { padding:82px 22px 90px; }
  .about-head h2 { font-size:34px; }
  .about-stats { grid-template-columns:1fr; }
  .about-stats>div { grid-template-columns:120px 1fr 24px; }
  .about-image,.about-image img { min-height:330px; height:330px; }
  .product-intro-grid,.product-lower-grid,.custom-feature-grid { grid-template-columns:1fr; }
  .product-intro { min-height:390px; padding:34px 28px 34px 0; }
  .product-media-card,.product-custom-card { min-height:480px; }
  .custom-feature-heading { margin-top:65px; display:block; }
  .custom-feature-heading p { margin-top:14px; text-align:left; }
  .custom-feature-card>div { width:82%; padding:36px 28px; }
  .quote-modal { padding:10px; }
  .quote-modal-panel { width:calc(100vw - 20px); padding:42px 24px 28px; }
  .quote-modal-form { grid-template-columns:1fr; }
  .quote-modal-form label:last-of-type,.quote-modal-form>button { grid-column:auto; }
}


/* Customization page */
.customization-page { background:#fff; overflow:hidden; }
.customization-page .overline.light,.customization-kicker { color:#79d9ff; }
.customization-hero { min-height:900px; position:relative; isolation:isolate; padding:190px 6vw 108px; display:flex; align-items:flex-end; color:white; background:#061523; overflow:hidden; }
.customization-hero-image { position:absolute; z-index:-3; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.customization-hero-overlay { position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,rgba(3,16,30,.98) 0%,rgba(4,23,42,.91) 36%,rgba(4,23,42,.46) 63%,rgba(3,16,30,.08) 84%),linear-gradient(0deg,rgba(2,13,25,.82),transparent 58%); }
.customization-hero-copy { width:min(1040px,72vw); position:relative; z-index:2; }
.customization-kicker { display:flex; align-items:center; gap:20px; font-size:12px; font-weight:700; letter-spacing:.22em; }
.customization-kicker::after { content:""; width:95px; height:1px; background:rgba(121,217,255,.55); }
.customization-hero h1 { max-width:1040px; margin:35px 0 28px; font-size:clamp(60px,6.5vw,72px); line-height:.93; letter-spacing:-.065em; font-weight:600; }
.customization-hero h1 em { color:#79d9ff; }
.customization-hero-copy>p { max-width:690px; margin:0; color:#c1ced8; font-size:16px; line-height:1.8; }
.customization-hero-actions { margin-top:38px; display:flex; align-items:center; gap:34px; }
.customization-hero-actions>a:last-child { display:inline-flex; align-items:center; gap:20px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,.42); font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.customization-hero-actions>a:last-child .icon { color:#79d9ff; }
.customization-hero-index { position:absolute; z-index:2; right:4.5vw; bottom:38px; min-width:250px; padding:28px; display:flex; align-items:center; gap:24px; background:rgba(4,22,39,.72); border-left:2px solid var(--blue); backdrop-filter:blur(12px); }
.customization-hero-index>.icon { width:40px; height:40px; color:#79d9ff; }
.customization-hero-index small { color:#a8bac7; font-size:12px; line-height:1.7; letter-spacing:.16em; }

.customization-entry { padding:130px 6vw 145px; display:grid; grid-template-columns:.78fr 1.22fr; align-items:stretch; }
.customization-entry-copy { padding:58px 6vw 70px 0; display:flex; flex-direction:column; justify-content:center; }
.customization-entry-copy h2,.customization-route-heading h2,.customization-programs-heading h2,.customization-manufacturing-copy h2,.customization-quality-copy h2,.customization-cta h2 { margin:28px 0 24px; font-size:clamp(44px,4.6vw,72px); line-height:1.01; letter-spacing:-.055em; font-weight:600; }
.customization-entry-copy>p,.customization-route-heading>p,.customization-programs-heading>p,.customization-manufacturing-copy>p,.customization-quality-copy>p,.customization-cta p { margin:0; color:#687680; font-size:14px; line-height:1.8; }
.customization-entry-copy>:is(a,button),.customization-program :is(a,button),.customization-starter-copy>:is(a,button),.customization-quality-copy>:is(a,button) { width:max-content; margin-top:32px; display:inline-flex; align-items:center; gap:28px; padding:12px 0; border:0; border-bottom:1px solid #8998a2; color:inherit; background:transparent; cursor:pointer; font:inherit; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.customization-entry-copy>:is(a,button) .icon,.customization-starter-copy>:is(a,button) .icon { color:var(--blue); }
.customization-entry-visual { min-height:610px; position:relative; margin:0; overflow:hidden; background:#0a1c2d; }
.customization-entry-visual img { width:100%; height:100%; object-fit:cover; }
.customization-entry-visual::after { content:""; position:absolute; inset:48% 0 0; background:linear-gradient(0deg,rgba(4,19,34,.88),transparent); }
.customization-entry-visual figcaption { position:absolute; z-index:2; left:42px; right:42px; bottom:38px; display:flex; align-items:flex-end; justify-content:space-between; gap:40px; color:white; }
.customization-entry-visual figcaption span { color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.18em; }
.customization-entry-visual figcaption strong { max-width:430px; text-align:right; font-size:20px; line-height:1.35; font-weight:500; }

.customization-route { padding:130px 6vw; display:grid; grid-template-columns:.72fr 1.28fr; gap:8vw; color:white; background:linear-gradient(135deg,#260160 0%,#300175 48%,#1c0d4d 100%); }
.customization-route-heading { align-self:center; position:relative; top:auto; }
.customization-route-heading h2 em,.customization-quality-copy h2 em { color:#79d9ff; }
.customization-route-heading>p { max-width:570px; color:#c3b8d8; }
.customization-route-leadtime { max-width:570px; margin-top:34px; padding:24px 26px; border:1px solid rgba(121,217,255,.28); background:rgba(9,4,38,.2); }
.customization-route-leadtime>span { display:block; color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.14em; }
.customization-route-leadtime>strong { display:block; margin-top:8px; color:white; font-size:28px; line-height:1.1; font-weight:600; }
.customization-route-leadtime>p { margin:10px 0 0; color:#c3b8d8; font-size:13px; line-height:1.6; }
.customization-route-leadtime>button { display:inline-flex; align-items:center; gap:24px; margin-top:18px; padding:11px 0; border:0; border-bottom:1px solid rgba(121,217,255,.62); background:transparent; color:white; font:inherit; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; cursor:pointer; }
.customization-route-leadtime>button .icon { color:#79d9ff; }
.customization-route-stage { min-height:780px; position:relative; display:grid; grid-template-columns:.72fr 1.28fr; align-items:center; gap:4vw; }
.customization-route-orbit { width:min(28vw,390px); aspect-ratio:1; position:relative; display:grid; place-items:center; border:1px solid rgba(121,217,255,.22); border-radius:50%; }
.customization-route-orbit::before,.customization-route-orbit::after { content:""; position:absolute; border:1px solid rgba(121,217,255,.15); border-radius:50%; }
.customization-route-orbit::before { inset:16%; }
.customization-route-orbit::after { inset:32%; background:radial-gradient(circle,rgba(0,159,226,.18),rgba(0,159,226,.02) 68%,transparent 70%); }
.customization-route-orbit i { position:absolute; width:10px; height:10px; border:2px solid #79d9ff; border-radius:50%; background:#300175; box-shadow:0 0 16px rgba(121,217,255,.8); }
.customization-route-orbit i:nth-child(1) { left:8%; top:31%; }
.customization-route-orbit i:nth-child(2) { right:13%; top:20%; }
.customization-route-orbit i:nth-child(3) { left:48%; bottom:-5px; }
.customization-route-orbit span { position:relative; z-index:2; text-align:center; color:#8ecce5; font-size:12px; line-height:2; letter-spacing:.17em; }
.customization-route-orbit strong { color:white; font-size:17px; letter-spacing:.04em; }
.customization-route-list { border-top:1px solid rgba(255,255,255,.2); }
.customization-route-list article { min-height:145px; padding:25px 0; display:grid; grid-template-columns:54px 1fr; gap:24px; align-items:center; border-bottom:1px solid rgba(255,255,255,.2); transition:.25s ease; }
.customization-route-list article:hover { padding-left:14px; background:rgba(255,255,255,.035); }
.customization-route-list b { color:#79d9ff; font-size:12px; }
.customization-route-list h3 { margin:0 0 8px; font-size:21px; font-weight:600; }
.customization-route-list p { max-width:480px; margin:0; color:#aa9fc5; font-size:12px; line-height:1.65; }

.customization-programs { padding:130px 6vw; background:#f5f7f8; }
.customization-programs-heading { margin-bottom:80px; display:grid; grid-template-columns:1.4fr .6fr; align-items:end; column-gap:8vw; }
.customization-programs-heading .overline { grid-column:1/-1; margin-bottom:28px; color:var(--purple); }
.customization-programs-heading h2 { margin:0; }
.customization-programs-heading>p { padding-bottom:7px; }
.customization-program { min-height:520px; position:relative; isolation:isolate; margin-bottom:18px; display:flex; align-items:center; overflow:hidden; color:white; background:#071a2b; }
.customization-program>img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
.customization-program::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(3,16,28,.97),rgba(4,22,39,.8) 42%,rgba(4,22,39,.12) 75%); }
.customization-program>div { width:min(600px,48%); padding:60px 0 60px 4.5vw; }
.customization-program>div>span,.customization-starter-copy>span { color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.18em; }
.customization-program h3,.customization-starter-copy h3 { margin:24px 0 20px; font-size:clamp(38px,4vw,60px); line-height:1.02; letter-spacing:-.05em; font-weight:600; }
.customization-program p { max-width:510px; margin:0; color:#b9c8d3; font-size:13px; line-height:1.75; }
.customization-program :is(a,button) { color:white; border-color:rgba(255,255,255,.4); }
.customization-program :is(a,button) .icon,.customization-quality-copy>:is(a,button) .icon { color:#79d9ff; }
.customization-program-robotics::after { background:linear-gradient(90deg,rgba(3,16,28,.98),rgba(4,22,39,.8) 42%,rgba(4,22,39,.08) 76%); }
.customization-program-starter { min-height:570px; margin-bottom:18px; display:grid; grid-template-columns:1fr .78fr .78fr; background:white; }
.customization-starter-copy { padding:65px 4vw; display:flex; flex-direction:column; justify-content:center; }
.customization-starter-copy>span { color:var(--purple); }
.customization-starter-copy h3 { color:#0d1117; }
.customization-starter-copy>p { margin:0; color:#687680; font-size:13px; line-height:1.75; }
.customization-starter-copy ul { margin:28px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.customization-starter-copy li { padding:12px 0; border-bottom:1px solid var(--line); color:#64727c; font-size:12px; }
.customization-program-starter figure { position:relative; min-width:0; margin:0; overflow:hidden; border-left:8px solid #f5f7f8; background:#e9ecee; }
.customization-program-starter figure img { width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.customization-program-starter figure:hover img { transform:scale(1.035); }
.customization-program-starter figcaption { position:absolute; left:26px; right:26px; bottom:24px; padding:18px 0 0; border-top:1px solid rgba(13,17,23,.3); color:#0d1117; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }

.customization-cases { padding:130px 6vw 140px; color:white; background:#071a2b; }
.customization-cases-heading { margin-bottom:68px; display:grid; grid-template-columns:1.3fr .7fr; align-items:end; column-gap:8vw; }
.customization-cases-heading>.overline { grid-column:1/-1; margin-bottom:28px; color:#79d9ff; }
.customization-cases-heading h2 { margin:0; font-size:clamp(44px,4.6vw,72px); line-height:1.01; letter-spacing:-.055em; font-weight:600; }
.customization-cases-heading h2 em { color:#79d9ff; }
.customization-cases-heading>p { max-width:620px; margin:0 0 7px; color:#9fb0bd; font-size:14px; line-height:1.8; }
.customization-case-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.customization-case-card { min-width:0; padding:0; border:0; display:flex; flex-direction:column; overflow:hidden; background:white; color:var(--ink); text-align:left; cursor:pointer; }
.customization-case-image { position:relative; aspect-ratio:4/3; display:block; overflow:hidden; background:#edf1f3; }
.customization-case-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .55s ease; }
.customization-case-card:hover .customization-case-image img { transform:scale(1.025); }
.customization-case-image>b { position:absolute; top:14px; right:14px; padding:7px 9px; background:#142b3b; color:white; font-size:12px; line-height:1; letter-spacing:.09em; }
.customization-case-copy { min-height:176px; padding:21px 20px 19px; display:flex; flex-direction:column; }
.customization-case-copy>small { color:var(--purple); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.customization-case-copy>strong { margin-top:9px; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:20px; line-height:1.25; font-weight:600; }
.customization-case-copy>i { margin-top:auto; padding-top:20px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); color:#465660; font-size:12px; font-style:normal; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.customization-case-copy>i .icon { color:var(--blue); }
.customization-case-lightbox { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:28px; }
.customization-case-lightbox[hidden] { display:none; }
.customization-case-backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(3,10,16,.88); backdrop-filter:blur(8px); cursor:pointer; }
.customization-case-dialog { position:relative; z-index:1; width:min(1440px,94vw); height:min(880px,90vh); display:grid; grid-template-columns:minmax(0,1fr) 340px; overflow:hidden; background:white; box-shadow:0 30px 100px rgba(0,0,0,.48); }
.customization-case-close { position:absolute; z-index:4; top:18px; right:18px; width:42px; height:42px; display:grid; place-items:center; border:1px solid #d3dbe0; border-radius:50%; background:white; color:var(--ink); cursor:pointer; }
.customization-case-close .icon { width:16px; height:16px; transform:rotate(45deg); }
.customization-case-stage { min-width:0; position:relative; display:grid; place-items:center; overflow:hidden; background:#e9eef1; }
.customization-case-stage>img { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:contain; }
.customization-case-prev,.customization-case-next { position:absolute; top:50%; width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:rgba(7,26,43,.78); color:white; cursor:pointer; transform:translateY(-50%); }
.customization-case-prev { left:20px; }
.customization-case-next { right:20px; }
.customization-case-prev .icon { transform:rotate(-90deg); }
.customization-case-next .icon { transform:rotate(90deg); }
.customization-case-details { min-width:0; padding:72px 28px 28px; overflow:auto; color:var(--ink); background:white; }
.customization-case-details>span { color:var(--purple); font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.customization-case-details>h3 { margin:13px 0 16px; font-size:30px; line-height:1.08; letter-spacing:-.035em; }
.customization-case-details>p { margin:0; color:#6e7b84; font-size:13px; line-height:1.65; }
.customization-case-details>b { display:block; margin:28px 0 14px; color:var(--blue); font-size:12px; letter-spacing:.12em; }
.customization-case-thumbnails { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.customization-case-thumbnails>button { aspect-ratio:1; padding:0; border:1px solid #d6dde1; overflow:hidden; background:#edf1f3; cursor:pointer; }
.customization-case-thumbnails>button.is-active { border-color:var(--blue); box-shadow:inset 0 0 0 1px var(--blue); }
.customization-case-thumbnails img { width:100%; height:100%; display:block; object-fit:cover; }
.customization-case-quote { width:100%; min-height:50px; margin-top:28px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:0; color:white; background:var(--blue); font-family:inherit; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; cursor:pointer; transition:background .2s ease; }
.customization-case-quote:hover { background:var(--purple); }
.customization-case-quote .icon { width:16px; height:16px; }

.customization-manufacturing { display:grid; grid-template-columns:1.02fr .98fr; background:white; }
.customization-manufacturing-image { min-height:760px; position:relative; overflow:hidden; }
.customization-manufacturing-image img { width:100%; height:100%; object-fit:cover; }
.customization-manufacturing-image::after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(0deg,rgba(4,19,33,.82),transparent); }
.customization-manufacturing-image>span { position:absolute; z-index:2; left:4.5vw; bottom:44px; color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.18em; }
.customization-manufacturing-copy { padding:90px 6vw; display:flex; flex-direction:column; justify-content:center; }
.customization-manufacturing-copy>.overline { color:var(--purple); }
.customization-manufacturing-copy>p { max-width:650px; }
.customization-capability-lines { margin-top:42px; border-top:1px solid var(--line); }
.customization-capability-lines>div { padding:19px 0; display:grid; grid-template-columns:48px 1fr; gap:16px; border-bottom:1px solid var(--line); }
.customization-capability-lines b { color:var(--blue); font-size:12px; }
.customization-capability-lines span { display:flex; flex-direction:column; gap:6px; }
.customization-capability-lines strong { font-size:14px; }
.customization-capability-lines small { color:#6d7982; font-size:12px; line-height:1.5; }

.customization-quality { padding:120px 6vw 145px; display:grid; grid-template-columns:.78fr 1.22fr; align-items:center; color:white; background:var(--purple); }
.customization-quality-copy { padding:50px 6vw 50px 0; display:flex; flex-direction:column; justify-content:center; }
.customization-quality-copy>p { max-width:580px; color:#c5badc; }
.customization-quality-proof-list { margin-top:34px; border-top:1px solid rgba(255,255,255,.22); }
.customization-quality-proof-list>div { padding:15px 0; display:grid; grid-template-columns:34px 1fr; gap:14px; border-bottom:1px solid rgba(255,255,255,.16); }
.customization-quality-proof-list b { color:#79d9ff; font-size:12px; letter-spacing:.16em; }
.customization-quality-proof-list span { display:flex; flex-direction:column; gap:4px; }
.customization-quality-proof-list strong { color:white; font-size:13px; font-weight:600; }
.customization-quality-proof-list small { color:#9d91bc; font-size:12px; line-height:1.5; letter-spacing:.08em; text-transform:uppercase; }
.customization-quality-images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(255,255,255,.2); }
.customization-quality-images figure { min-width:0; min-height:0; position:relative; margin:0; overflow:hidden; display:grid; grid-template-rows:minmax(0,1fr) auto; background:#eef4f7; }
.customization-quality-images img { min-height:0; width:100%; height:100%; padding:0; object-fit:cover; background:#eef4f7; }
.customization-quality-images figcaption { min-height:70px; padding:13px 16px 14px; display:flex; flex-direction:column; justify-content:center; gap:4px; color:#102431; background:white; }
.customization-quality-images figcaption strong { font-size:13px; line-height:1.25; font-weight:600; }
.customization-quality-images figcaption span { color:#697780; font-size:12px; line-height:1.4; }

.customization-cta { min-height:660px; position:relative; isolation:isolate; padding:110px 6vw; display:flex; align-items:center; color:white; background:#071a2b; overflow:hidden; }
.customization-cta>img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.65) contrast(1.08); }
.customization-cta::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(3,17,30,.97),rgba(4,22,39,.88) 53%,rgba(4,22,39,.35)); }
.customization-cta>div { max-width:850px; }
.customization-cta h2 { font-size:clamp(50px,5.4vw,84px); }
.customization-cta p { max-width:650px; color:#bdcbd4; }
.customization-cta .button { margin-top:34px; }

@media (max-width:1100px) {
  .customization-entry,.customization-route,.customization-quality { grid-template-columns:1fr 1fr; }
  .customization-route { gap:5vw; }
  .customization-route-stage { grid-template-columns:1fr; }
  .customization-route-orbit { width:330px; margin:0 auto; }
  .customization-program-starter { grid-template-columns:1fr 1fr; }
  .customization-starter-copy { grid-column:1/-1; }
  .customization-program-starter figure { min-height:480px; }
}
@media (max-width:900px) {
  .customization-hero { min-height:800px; padding:170px 28px 90px; }
  .customization-hero-copy { width:100%; }
  .customization-hero-index { right:28px; bottom:28px; }
  .customization-entry { padding:95px 28px 110px; grid-template-columns:1fr; }
  .customization-entry-copy { padding:0 0 65px; }
  .customization-entry-visual { min-height:560px; }
  .customization-route { padding:95px 28px; grid-template-columns:1fr; }
  .customization-route-heading { position:relative; top:auto; }
  .customization-route-stage { min-height:0; margin-top:45px; grid-template-columns:.7fr 1.3fr; }
  .customization-route-orbit { width:min(38vw,330px); }
  .customization-programs { padding:95px 28px; }
  .customization-programs-heading { grid-template-columns:1fr; gap:26px; }
  .customization-programs-heading>p { max-width:590px; }
  .customization-program { min-height:560px; }
  .customization-program>div { width:70%; padding-left:38px; }
  .customization-cases { padding:95px 28px 110px; }
  .customization-cases-heading { grid-template-columns:1fr; gap:26px; }
  .customization-cases-heading>p { max-width:650px; }
  .customization-case-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customization-case-dialog { grid-template-columns:1fr; grid-template-rows:minmax(50vh,1fr) auto; overflow:auto; }
  .customization-case-stage { min-height:50vh; }
  .customization-case-details { padding:32px; overflow:visible; }
  .customization-case-close { position:fixed; }
  .customization-case-thumbnails { grid-template-columns:repeat(6,minmax(58px,1fr)); }
  .customization-manufacturing { grid-template-columns:1fr; }
  .customization-manufacturing-image { min-height:620px; }
  .customization-manufacturing-copy { padding:85px 28px; }
  .customization-quality { padding:90px 28px 110px; grid-template-columns:1fr; }
  .customization-quality-copy { padding:0 0 65px; }
  .customization-cta { padding-left:28px; padding-right:28px; }
}
@media (max-width:620px) {
  .customization-page { width:100%; max-width:100vw; overflow-x:clip; }
  .customization-hero { min-width:0; min-height:730px; padding:135px 22px 78px; }
  .customization-hero-copy,.customization-entry-copy,.customization-route-heading,.customization-programs-heading { min-width:0; max-width:100%; }
  .customization-hero h1 { max-width:100%; font-size:40px; overflow-wrap:normal; }
  .customization-hero-copy>p { font-size:14px; }
  .customization-hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .customization-hero-index { display:none; }
  .customization-entry,.customization-programs,.customization-route,.customization-quality,.customization-cases { padding-left:22px; padding-right:22px; }
  .customization-entry-copy h2,.customization-route-heading h2,.customization-programs-heading h2,.customization-manufacturing-copy h2,.customization-quality-copy h2,.customization-cta h2 { max-width:100%; font-size:36px; }
  .customization-entry-visual { min-height:440px; }
  .customization-entry-visual figcaption { left:24px; right:24px; bottom:24px; align-items:flex-start; flex-direction:column; gap:10px; }
  .customization-entry-visual figcaption strong { text-align:left; font-size:16px; }
  .customization-route-stage { display:block; }
  .customization-route-orbit { width:250px; margin:10px auto 50px; }
  .customization-route-list article { min-height:0; }
  .customization-programs-heading { margin-bottom:55px; }
  .customization-program { min-height:600px; align-items:flex-end; }
  .customization-program::after,.customization-program-robotics::after { background:linear-gradient(0deg,rgba(3,16,28,.98),rgba(3,16,28,.68) 56%,rgba(3,16,28,.12)); }
  .customization-program>div { width:100%; padding:40px 26px; }
  .customization-program h3,.customization-starter-copy h3 { font-size:38px; }
  .customization-program-starter { grid-template-columns:1fr; }
  .customization-starter-copy { grid-column:auto; padding:45px 26px; }
  .customization-program-starter figure { min-height:460px; border-left:0; border-top:8px solid #f5f7f8; }
  .customization-cases-heading h2 { font-size:36px; }
  .customization-case-grid { grid-template-columns:1fr; }
  .customization-case-copy { min-height:154px; }
  .customization-case-lightbox { padding:10px; }
  .customization-case-dialog { width:100%; height:calc(100vh - 20px); }
  .customization-case-stage { min-height:56vh; }
  .customization-case-stage>img { padding:0; }
  .customization-case-prev { left:10px; }
  .customization-case-next { right:10px; }
  .customization-case-details { padding:28px 20px 24px; }
  .customization-case-details>h3 { padding-right:38px; font-size:26px; }
  .customization-case-thumbnails { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .customization-manufacturing-image { min-height:480px; }
  .customization-quality-images { grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(220px,auto); }
  .customization-quality-images figure { min-height:220px; }
  .customization-quality-images figcaption { min-height:78px; padding:12px; }
  .customization-cta { min-height:660px; }
}


@media (prefers-reduced-motion:reduce) {
  .loading-screen { display:none; }
  .hero-media img,.hero-copy,.site-header { animation:none!important; }
}

/* About page */
.about-page { --about-navy:#071a2b; background:#fff; overflow:hidden; }
.about-page .site-header:not(.is-scrolled) { background:linear-gradient(180deg,rgba(5,16,27,.64),rgba(5,16,27,0)); }
.about-hero { min-height:820px; position:relative; isolation:isolate; display:flex; align-items:flex-end; padding:170px 6vw 105px; color:white; overflow:hidden; }
.about-hero-media,.about-hero-shade { position:absolute; inset:0; z-index:-2; }
.about-hero-media img { width:100%; height:100%; object-fit:cover; object-position:center 45%; filter:saturate(.68) contrast(1.04); }
.about-hero-shade { z-index:-1; background:linear-gradient(90deg,rgba(5,18,30,.94) 0%,rgba(5,18,30,.82) 42%,rgba(5,18,30,.18) 78%),linear-gradient(0deg,rgba(5,18,30,.72),transparent 52%); }
.about-hero-copy { width:min(880px,70vw); }
.about-kicker { display:flex; align-items:center; gap:18px; color:#79d9ff; font-size:12px; font-weight:700; letter-spacing:.22em; }
.about-kicker i { width:82px; height:1px; background:rgba(121,217,255,.55); }
.about-hero h1 { margin:34px 0 28px; font-size:clamp(58px,6.2vw,72px); line-height:.95; letter-spacing:-.058em; font-weight:600; }
.about-hero h1 em { color:#79d9ff; }
.about-hero-copy>p { max-width:730px; margin:0; color:#d4dde4; font-size:16px; line-height:1.8; }
.about-hero-actions { display:flex; align-items:center; gap:34px; margin-top:38px; }
.about-hero-actions .button { gap:42px; }
.about-hero-link { display:inline-flex; align-items:center; gap:18px; padding:11px 0; border-bottom:1px solid rgba(255,255,255,.45); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.about-hero-link .icon { color:#79d9ff; }

.about-introduction { padding:125px 6vw 110px; background:white; }
.about-intro-copy { display:grid; grid-template-columns:.65fr 1.35fr 1fr; column-gap:5vw; align-items:start; }
.about-intro-copy>.overline { color:var(--purple); padding-top:10px; }
.about-intro-copy h2 { margin:0; font-size:clamp(42px,4.4vw,68px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.about-intro-text { padding-top:7px; color:#68747e; font-size:14px; line-height:1.85; }
.about-intro-text p { margin:0 0 20px; }
.about-facts { display:grid; grid-template-columns:repeat(6,1fr); margin-top:100px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.about-fact { min-width:0; min-height:180px; padding:34px clamp(16px,1.7vw,32px) 28px; display:flex; flex-direction:column; justify-content:space-between; }
.about-fact:not(:last-child) { border-right:1px solid var(--line); }
.about-fact strong { color:var(--blue); font-size:clamp(34px,3.2vw,52px); line-height:1; letter-spacing:-.055em; }
.about-fact span { max-width:130px; color:#6d7881; font-size:12px; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; }

.about-story { position:relative; isolation:isolate; overflow:hidden; padding:135px 0 130px 6vw; background:#f2f5f6; }
.about-story::before { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background:var(--lk-story-image,none) center 68%/cover no-repeat; filter:grayscale(1) saturate(0) contrast(.72) brightness(1.3); opacity:1; transform:scale(1.015); }
.about-story::after { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(242,245,246,.9),rgba(242,245,246,.78) 56%,rgba(242,245,246,.86)); }
.about-story>* { position:relative; z-index:1; }
.about-section-heading { padding-right:6vw; display:grid; grid-template-columns:1.45fr .65fr; gap:8vw; align-items:end; }
.about-section-heading .overline { display:block; margin-bottom:34px; color:var(--purple); }
.about-section-heading h2 { margin:0; font-size:clamp(42px,4.5vw,68px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.about-section-heading>p { margin:0; padding-bottom:6px; color:#68747e; font-size:14px; line-height:1.8; }
.history-track { --history-line-scale:1; position:relative; min-height:590px; margin-top:0; padding-right:6vw; display:grid; grid-template-columns:repeat(4,1fr); grid-template-rows:repeat(2,1fr); column-gap:4vw; }
.history-track::before { content:""; position:absolute; left:0; right:6vw; top:50%; height:1px; background:linear-gradient(90deg,var(--blue),#9ab7c8 38%,#9ab7c8 62%,var(--purple)); transform:scaleX(var(--history-line-scale)); transform-origin:left center; }
.history-item { position:relative; min-width:0; display:flex; flex-direction:column; gap:18px; }
.history-item:nth-child(-n+4) { justify-content:flex-end; padding:0 1vw 58px 0; }
.history-item:nth-child(n+5) { justify-content:flex-start; padding:58px 1vw 0 0; }
.history-item:nth-child(5) { grid-column:4; }
.history-item:nth-child(6) { grid-column:3; grid-row:2; }
.history-item:nth-child(7) { grid-column:2; grid-row:2; }
.history-item:nth-child(8) { grid-column:1; grid-row:2; }
.history-item b { color:var(--blue); font-size:clamp(42px,4vw,66px); line-height:.9; letter-spacing:-.06em; font-weight:600; }
.history-item:nth-child(n+5) b { color:var(--purple); }
.history-item>span { position:absolute; z-index:2; left:0; width:15px; height:15px; border:3px solid #f2f5f6; border-radius:50%; background:var(--blue); box-shadow:0 0 0 1px var(--blue); }
.history-item:nth-child(-n+4)>span { bottom:-7px; }
.history-item:nth-child(n+5)>span { top:-7px; background:var(--purple); box-shadow:0 0 0 1px var(--purple); }
.history-item p { max-width:245px; margin:0; color:#3f4a53; font-size:13px; line-height:1.7; }

.about-manufacturing { display:grid; grid-template-columns:1.03fr .97fr; min-height:820px; background:#fff; }
.about-manufacturing-media { position:relative; overflow:hidden; }
.about-manufacturing-media img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.72); }
.about-manufacturing-media::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(0deg,rgba(5,18,30,.86),transparent); }
.about-manufacturing-media>div { position:absolute; z-index:2; left:4.5vw; right:4.5vw; bottom:48px; display:flex; align-items:end; justify-content:space-between; gap:30px; color:white; }
.about-manufacturing-media span { color:#79d9ff; font-size:12px; letter-spacing:.18em; }
.about-manufacturing-media strong { max-width:360px; text-align:right; font-size:18px; font-weight:500; }
.about-manufacturing-copy { padding:100px 6vw 90px; display:flex; flex-direction:column; justify-content:center; }
.about-manufacturing-copy>.overline { color:var(--purple); }
.about-manufacturing-copy h2 { margin:30px 0 24px; font-size:clamp(42px,4.5vw,68px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.about-manufacturing-copy>p { margin:0; color:#68747e; font-size:14px; line-height:1.8; }
.about-process-list { margin-top:42px; border-top:1px solid var(--line); }
.about-process-step { display:grid; grid-template-columns:44px 1fr; gap:18px; padding:19px 0; border-bottom:1px solid var(--line); }
.about-process-step>b { color:var(--blue); font-size:12px; }
.about-process-step>span { display:flex; flex-direction:column; gap:5px; }
.about-process-step strong { font-size:14px; }
.about-process-step small { color:#6b7780; font-size:12px; line-height:1.5; }

.about-quality { padding:115px 6vw 110px; display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; background:var(--purple); color:white; }
.about-quality-copy { align-self:center; padding-bottom:65px; }
.about-quality-copy h2 { margin:30px 0 25px; font-size:clamp(44px,4.6vw,70px); line-height:1.01; letter-spacing:-.055em; font-weight:600; }
.about-quality-copy h2 em { color:#79d9ff; }
.about-quality-copy>p { max-width:620px; margin:0; color:#c5badc; font-size:14px; line-height:1.85; }
.about-quality-copy>:is(a,button) { margin-top:28px; display:inline-flex; align-items:center; gap:30px; padding:14px 17px; border:1px solid rgba(255,255,255,.45); color:white; background:transparent; cursor:pointer; font:inherit; font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.about-quality-copy>:is(a,button) .icon { color:#79d9ff; }
.about-quality-stage { position:relative; align-self:center; overflow:hidden; background:#081b31; }
.about-quality-visual { overflow:hidden; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(255,255,255,.2); }
.about-quality-visual figure { min-width:0; margin:0; overflow:hidden; display:grid; grid-template-rows:auto auto; background:#eef4f7; }
.about-quality-visual img { width:100%; aspect-ratio:16/10; object-fit:cover; background:#eef4f7; }
.about-quality-visual figcaption { min-height:70px; padding:13px 16px 14px; display:flex; flex-direction:column; justify-content:center; gap:4px; color:#102431; background:white; }
.about-quality-visual figcaption strong { font-size:13px; line-height:1.25; font-weight:600; }
.about-quality-visual figcaption span { color:#697780; font-size:12px; line-height:1.4; }
.about-quality-proofs { position:relative; z-index:3; max-width:620px; margin-top:26px; border-top:1px solid rgba(255,255,255,.22); }
.about-quality-proof { min-width:0; padding:14px 0; display:grid; grid-template-columns:34px minmax(0,1fr); gap:4px 12px; align-items:start; border-bottom:1px solid rgba(255,255,255,.16); }
.about-quality-proof b { grid-row:1/3; color:#79d9ff; font-size:12px; letter-spacing:.18em; }
.about-quality-proof strong { color:white; font-size:14px; line-height:1.3; font-weight:600; }
.about-quality-proof span { color:#91a6b5; font-size:12px; line-height:1.55; letter-spacing:.08em; text-transform:uppercase; }

.about-network { padding:135px 6vw; background:#fff; }
.network-grid { position:relative; min-height:720px; margin-top:78px; overflow:hidden; background:linear-gradient(135deg,#f4f7f8,#edf3f6); }
.network-grid::before { content:""; position:absolute; left:50%; top:43%; width:520px; height:520px; border:1px solid rgba(0,159,226,.18); border-radius:50%; transform:translate(-50%,-50%); }
.network-orbit { position:absolute; left:50%; top:43%; width:360px; height:360px; border:1px solid rgba(48,1,117,.22); border-radius:50%; transform:translate(-50%,-50%); }
.network-orbit::before,.network-orbit::after { content:""; position:absolute; left:50%; top:50%; width:1px; height:650px; background:linear-gradient(transparent,rgba(0,159,226,.3),transparent); transform-origin:center; }
.network-orbit::before { transform:translate(-50%,-50%) rotate(58deg); }
.network-orbit::after { transform:translate(-50%,-50%) rotate(-58deg); }
.network-orbit i { position:absolute; width:10px; height:10px; border:2px solid var(--blue); border-radius:50%; background:#f4f7f8; }
.network-orbit i:nth-child(1) { left:13%; top:12%; }
.network-orbit i:nth-child(2) { right:8%; top:22%; }
.network-orbit i:nth-child(3) { left:48%; bottom:-5px; }
.network-hub { position:absolute; z-index:2; left:50%; top:43%; width:240px; height:240px; padding:36px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:white; border:1px solid rgba(121,217,255,.78); border-radius:50%; background:radial-gradient(circle at 30% 22%,#0874ad 0,#074a79 34%,#082f55 66%,#210b58 118%); box-shadow:inset 0 0 0 10px rgba(255,255,255,.035),inset 0 -30px 55px rgba(48,1,117,.18),0 26px 80px rgba(7,26,43,.25),0 0 0 7px rgba(0,159,226,.07); transform:translate(-50%,-50%); }
.network-hub::before { content:""; position:absolute; inset:14px; border:1px solid rgba(255,255,255,.1); border-radius:50%; pointer-events:none; }
.network-hub::after { content:""; position:absolute; top:22px; width:24px; height:2px; border-radius:2px; background:#79d9ff; box-shadow:0 0 18px rgba(121,217,255,.65); pointer-events:none; }
.network-hub>* { position:relative; z-index:1; }
.network-hub small { margin:0 0 15px; color:#9fe5ff; font-size:12px; line-height:1.4; letter-spacing:.17em; }
.network-hub strong { margin:0 0 14px; font-size:88px; line-height:.68; letter-spacing:-.07em; }
.network-hub span { max-width:145px; color:#d5e5ee; font-size:12px; line-height:1.55; letter-spacing:.09em; text-transform:uppercase; }
.network-column { position:absolute; z-index:3; width:min(29%,360px); }
.network-column-1 { left:4.5%; top:9%; }
.network-column-2 { right:4.5%; top:10%; text-align:right; }
.network-column-3 { left:50%; bottom:5.5%; width:min(38%,440px); text-align:center; transform:translateX(-50%); }
.network-column>span { color:var(--blue); font-size:12px; letter-spacing:.14em; }
.network-column h3 { max-width:340px; margin:18px 0 16px; font-size:clamp(25px,2.2vw,36px); line-height:1.08; letter-spacing:-.04em; }
.network-column p { max-width:360px; margin:0; color:#68747e; font-size:13px; line-height:1.75; }
.network-column-2 h3,.network-column-2 p { margin-left:auto; }
.network-column-3 h3,.network-column-3 p { margin-left:auto; margin-right:auto; }

.about-values { padding:120px 6vw; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; background:var(--about-navy); color:white; }
.about-values-lead h2 { margin:30px 0 24px; font-size:clamp(42px,4.5vw,68px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.about-values-lead h2 em { color:#79d9ff; }
.about-values-lead>p { max-width:560px; color:#aebdca; font-size:14px; line-height:1.8; }
.about-values-lines { border-top:1px solid rgba(255,255,255,.2); }
.value-line { min-height:155px; padding:28px 0; display:grid; grid-template-columns:120px 1fr; gap:30px; align-items:center; border-bottom:1px solid rgba(255,255,255,.2); }
.value-line span { color:#79d9ff; font-size:12px; letter-spacing:.18em; }
.value-line strong { font-size:clamp(21px,2.1vw,32px); line-height:1.3; letter-spacing:-.025em; font-weight:500; }

.about-final-cta { min-height:650px; position:relative; isolation:isolate; padding:110px 6vw; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; color:white; background:var(--purple); overflow:hidden; }
.about-final-cta::before { content:""; position:absolute; z-index:-2; inset:0; background:var(--lk-final-image,none) center/cover no-repeat; filter:saturate(.55); }
.about-final-cta::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(7,26,43,.97),rgba(7,26,43,.82) 54%,rgba(7,26,43,.25)); }
.about-final-cta h2 { max-width:900px; margin:30px 0 24px; font-size:clamp(46px,5vw,76px); line-height:1.02; letter-spacing:-.052em; font-weight:600; }
.about-final-cta>p { max-width:670px; margin:0; color:#c4d0d9; font-size:14px; line-height:1.8; }
.about-final-cta>div { display:flex; align-items:center; gap:34px; margin-top:38px; }
.about-final-cta>div>a:last-child { display:inline-flex; align-items:center; gap:18px; padding:11px 0; border-bottom:1px solid rgba(255,255,255,.45); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.about-final-cta .button { gap:42px; }
.about-final-cta .icon { color:white; }

@media (max-width:1100px) {
  .about-intro-copy { grid-template-columns:.55fr 1.45fr; }
  .about-intro-text { grid-column:2; margin-top:28px; display:grid; grid-template-columns:repeat(2,1fr); gap:30px; }
  .about-facts { grid-template-columns:repeat(3,1fr); }
  .about-fact:nth-child(3) { border-right:0; }
  .about-fact:nth-child(-n+3) { border-bottom:1px solid var(--line); }
  .about-quality { grid-template-columns:1fr 1fr; gap:4vw; }
  .network-column { width:min(31%,340px); }
}

@media (max-width:900px) {
  .about-hero { min-height:760px; padding:150px 28px 80px; }
  .about-hero-copy { width:calc(100% - 28px); }
  .about-introduction,.about-network { padding-left:28px; padding-right:28px; }
  .about-intro-copy,.about-section-heading,.about-values { grid-template-columns:1fr; }
  .about-intro-copy>.overline { margin-bottom:28px; }
  .about-intro-text { grid-column:auto; }
  .about-story { padding-left:28px; }
  .about-section-heading { gap:30px; }
  .about-section-heading>p { max-width:560px; }
  .about-manufacturing { grid-template-columns:1fr; }
  .about-manufacturing-media { min-height:650px; }
  .about-manufacturing-copy { padding:85px 28px; }
  .about-quality { padding:90px 28px; grid-template-columns:1fr; }
  .about-quality-copy { padding-bottom:25px; }
  .about-quality-stage { min-height:0; }
  .network-grid { min-height:760px; }
  .network-grid::before { width:470px; height:470px; }
  .network-orbit { width:320px; height:320px; }
  .network-hub { width:205px; height:205px; padding:30px; }
  .network-hub strong { font-size:76px; }
  .network-column { width:32%; }
  .network-column-1 { left:3%; }
  .network-column-2 { right:3%; }
  .about-values { padding:95px 28px; gap:55px; }
  .about-final-cta { padding-left:28px; padding-right:28px; }
}

@media (max-width:620px) {
  .about-hero { min-height:700px; padding-top:130px; }
  .about-hero h1 { font-size:47px; }
  .about-hero-copy>p { font-size:14px; }
  .about-hero-actions,.about-final-cta>div { align-items:flex-start; flex-direction:column; gap:20px; }
  .about-introduction { padding-top:88px; padding-bottom:80px; }
  .about-intro-copy h2,.about-section-heading h2,.about-manufacturing-copy h2,.about-quality-copy h2,.about-values-lead h2 { font-size:38px; }
  .about-intro-text { grid-template-columns:1fr; gap:0; }
  .about-facts { grid-template-columns:repeat(2,1fr); margin-top:60px; }
  .about-fact { min-height:145px; }
  .about-fact:nth-child(3) { border-right:1px solid var(--line); }
  .about-fact:nth-child(even) { border-right:0; }
  .about-fact:nth-child(-n+4) { border-bottom:1px solid var(--line); }
  .about-story,.about-network { padding-top:90px; padding-bottom:90px; }
  .history-track { min-height:0; margin-top:0; padding-right:28px; display:grid; grid-template-columns:66px 1fr; grid-template-rows:none; gap:0; }
  .history-track::before { left:64px; right:auto; top:0; bottom:0; width:1px; height:auto; background:linear-gradient(var(--blue),#9ab7c8,var(--purple)); }
  .history-item,.history-item:nth-child(-n+4),.history-item:nth-child(n+5),.history-item:nth-child(5),.history-item:nth-child(6),.history-item:nth-child(7),.history-item:nth-child(8) { grid-column:1/-1; grid-row:auto; min-height:132px; padding:0 0 28px; display:grid; grid-template-columns:66px 1fr; align-content:start; gap:0 28px; }
  .history-item b,.history-item:nth-child(n+5) b { grid-column:1; color:var(--blue); font-size:26px; }
  .history-item p { grid-column:2; max-width:none; }
  .history-item>span,.history-item:nth-child(-n+4)>span,.history-item:nth-child(n+5)>span { left:58px; top:2px; bottom:auto; }
  .history-item p { max-width:none; }
  .about-manufacturing-media { min-height:500px; }
  .about-manufacturing-media>div { left:24px; right:24px; bottom:28px; align-items:flex-start; flex-direction:column; }
  .about-manufacturing-media strong { text-align:left; }
  .about-quality-stage { min-height:0; }
  .about-quality-visual figcaption { min-height:78px; padding:12px; }
  .about-quality-proofs { max-width:none; margin-top:24px; }
  .about-quality-proof { padding:13px 0; grid-template-columns:26px 1fr; }
  .network-grid { min-height:0; padding:44px 24px; display:flex; flex-direction:column; gap:44px; }
  .network-grid::before { width:380px; height:380px; opacity:.7; }
  .network-orbit { width:250px; height:250px; opacity:.65; }
  .network-hub,.network-column,.network-column-1,.network-column-2,.network-column-3 { position:relative; inset:auto; width:auto; text-align:left; transform:none; }
  .network-hub { left:auto; top:auto; width:185px; height:185px; padding:26px; align-self:center; text-align:center; }
  .network-column { max-width:420px; }
  .network-column-2 { align-self:flex-end; text-align:right; }
  .network-column-3 { align-self:center; text-align:center; }
  .value-line { min-height:0; grid-template-columns:1fr; gap:14px; }
  .about-final-cta { min-height:650px; }
  .about-final-cta h2 { font-size:42px; }
}

/* News article detail */
.article-page { background:#fff; color:var(--ink); }
.article-page .site-header { background:#fff; color:var(--ink); border-bottom-color:var(--line); }
.article-page .site-header .brand-logo-light { opacity:0; }
.article-page .site-header .brand-logo-color { opacity:1; }
.article-hero { min-height:720px; padding:78px 0 0 6vw; display:grid; grid-template-columns:.88fr 1.12fr; background:#f1f4f5; }
.article-hero-copy { padding:72px 5vw 78px 0; display:flex; flex-direction:column; justify-content:center; }
.article-breadcrumb { margin-bottom:55px; display:flex; align-items:center; flex-wrap:wrap; gap:10px; color:#6f7d88; font-size:12px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.article-breadcrumb a:hover { color:var(--blue); }
.article-breadcrumb i { color:#a7b2ba; font-style:normal; }
.article-meta { margin-bottom:25px; display:flex; align-items:center; gap:18px; color:#687681; font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.article-meta span { color:var(--blue); }
.article-hero h1 { max-width:740px; margin:0; font-size:clamp(42px,4.1vw,64px); line-height:1.02; letter-spacing:-.05em; }
.article-hero-copy>p { max-width:680px; margin:30px 0 0; color:#5e6d77; font-size:16px; line-height:1.75; }
.article-hero-media { position:relative; min-height:642px; margin:0; overflow:hidden; background:#dfe7ea; }
.article-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(4,22,37,.62)); pointer-events:none; }
.article-hero-media img { width:100%; height:100%; object-fit:cover; }
.article-hero-media figcaption { position:absolute; z-index:1; left:36px; right:36px; bottom:30px; display:flex; align-items:flex-end; justify-content:space-between; color:white; text-transform:uppercase; }
.article-hero-media figcaption span { color:#66d2ff; font-size:12px; font-weight:700; letter-spacing:.16em; }
.article-hero-media figcaption strong { font-size:12px; letter-spacing:.08em; }
.article-layout { padding:112px 6vw 128px; display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:clamp(54px,6vw,112px); align-items:start; }
.article-body { min-width:0; }
.article-body-simple>.article-intro { margin:0 0 56px; padding-bottom:32px; border-bottom:1px solid var(--line); color:#253643; font-size:19px; line-height:1.75; }
.article-body-simple>h2 { margin:0 0 22px; font-size:clamp(32px,3vw,46px); font-weight:600; line-height:1.08; letter-spacing:-.04em; }
.article-body-simple>h2:not(:first-of-type) { margin-top:64px; }
.article-body-simple>h3 { margin:34px 0 10px; font-size:24px; font-weight:600; line-height:1.2; letter-spacing:-.025em; }
.article-body-simple>p:not(.article-intro) { margin:0 0 20px; color:#5e6d77; font-size:16px; line-height:1.8; }
.article-inline-image { margin:54px 0; }
.article-inline-image img { width:100%; aspect-ratio:16/9; display:block; object-fit:cover; }
.article-inline-image figcaption { margin-top:12px; color:#78858d; font-size:12px; line-height:1.6; }
.article-lead { display:grid; grid-template-columns:.72fr 1.28fr; column-gap:clamp(40px,6vw,110px); row-gap:22px; padding-bottom:90px; }
.article-lead>.overline { grid-column:1; align-self:start; padding-top:9px; color:var(--purple); }
.article-lead h2 { grid-column:1; margin:0; font-size:clamp(38px,4vw,62px); line-height:1.03; letter-spacing:-.05em; }
.article-lead p { grid-column:2; margin:0; color:#596a75; font-size:16px; line-height:1.78; }
.article-lead p:first-of-type { align-self:end; }
.article-wide-image { margin:0 0 95px; }
.article-wide-image img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.article-wide-image figcaption { padding:14px 0 0; color:#73808a; font-size:12px; line-height:1.5; }
.article-section { padding:82px 0; display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(42px,6vw,100px); border-top:1px solid var(--line); }
.article-section-title { display:grid; grid-template-columns:42px 1fr; gap:12px; align-content:start; }
.article-section-title span { color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.12em; }
.article-section-title h2 { margin:0; font-size:clamp(32px,3vw,48px); line-height:1.05; letter-spacing:-.045em; }
.article-section-copy { display:grid; align-content:start; gap:22px; }
.article-section-copy p { margin:0; color:#596a75; font-size:16px; line-height:1.78; }
.article-facts { margin:0 0 95px; display:grid; grid-template-columns:repeat(4,1fr); background:#e9f7fd; }
.article-facts div { min-height:168px; padding:28px 25px; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid rgba(0,159,226,.22); }
.article-facts div:last-child { border-right:0; }
.article-facts strong { color:var(--blue); font-size:clamp(30px,3vw,48px); line-height:1; letter-spacing:-.04em; }
.article-facts span { color:#5f7280; font-size:12px; line-height:1.45; letter-spacing:.09em; text-transform:uppercase; }
.article-process { margin:0 0 95px; min-height:560px; display:grid; grid-template-columns:.92fr 1.08fr; background:#071d2d; color:white; }
.article-process-copy { padding:62px 54px; display:flex; flex-direction:column; justify-content:center; }
.article-process-copy h2 { margin:26px 0 24px; font-size:clamp(38px,4vw,58px); line-height:1; letter-spacing:-.05em; }
.article-process-copy p { margin:0 0 38px; color:#b6c4ce; font-size:15px; line-height:1.75; }
.article-process-copy a { width:max-content; padding-bottom:9px; display:inline-flex; align-items:center; gap:10px; border-bottom:1px solid #69d2ff; color:#fff; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.article-process-image { position:relative; min-height:500px; overflow:hidden; }
.article-process-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,29,45,.35),transparent 50%); }
.article-process-image img { width:100%; height:100%; object-fit:cover; }
.article-process-image span { position:absolute; z-index:1; left:26px; bottom:24px; color:white; font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.article-products { display:block; }
.article-products .article-section-title { max-width:650px; margin-bottom:48px; }
.article-product-lines { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.article-product-lines>div { min-height:230px; padding:30px 28px; border-right:1px solid var(--line); }
.article-product-lines>div:last-child { border-right:0; }
.article-product-lines b { color:var(--blue); font-size:12px; letter-spacing:.12em; }
.article-product-lines h3 { margin:48px 0 14px; font-size:24px; line-height:1.08; letter-spacing:-.035em; }
.article-product-lines p { margin:0; color:#687681; font-size:13px; line-height:1.65; }
.article-closing { margin-top:25px; padding:68px 7%; background:#f1f4f5; }
.article-closing h2 { margin:24px 0 16px; font-size:clamp(40px,4vw,58px); line-height:1; letter-spacing:-.05em; }
.article-closing p { max-width:690px; margin:0; color:#5e6d77; font-size:16px; line-height:1.75; }
.article-sidebar { position:sticky; top:102px; display:grid; gap:20px; }
.article-sidebar-card,.article-sidebar-links { padding:28px; border:1px solid var(--line); }
.article-sidebar-card>span,.article-sidebar-links>span,.article-sidebar-cta>span { color:var(--purple); font-size:12px; font-weight:700; letter-spacing:.14em; }
.article-sidebar-card dl { margin:24px 0 0; }
.article-sidebar-card dl div { padding:14px 0; display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--line); }
.article-sidebar-card dt,.article-sidebar-card dd { margin:0; font-size:12px; }
.article-sidebar-card dt { color:#77838d; }
.article-sidebar-card dd { font-weight:600; text-align:right; }
.article-sidebar-cta { padding:34px 30px; background:linear-gradient(145deg,#062238 0%,#0d4267 58%,#300175 145%); color:white; overflow:hidden; }
.article-sidebar-cta>span { color:#65d1ff; }
.article-sidebar-cta h2 { margin:28px 0 18px; font-size:31px; line-height:1.02; letter-spacing:-.045em; }
.article-sidebar-cta p { margin:0 0 28px; color:#bdccd6; font-size:13px; line-height:1.65; }
.article-sidebar-cta button { padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:16px; background:var(--blue); color:white; font-family:inherit; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.article-sidebar-links { display:grid; }
.article-sidebar-links>span { margin-bottom:18px; }
.article-sidebar-links a { padding:14px 0; display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--line); font-size:12px; font-weight:600; }
.article-related { padding:0 6vw 120px; }
.article-related-heading { margin-bottom:38px; display:flex; align-items:end; justify-content:space-between; gap:30px; }
.article-related-heading h2 { margin:15px 0 0; font-size:clamp(38px,4vw,56px); letter-spacing:-.05em; }
.article-related-heading>a { padding-bottom:8px; border-bottom:1px solid var(--line); font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.article-related-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.article-related-grid a { display:grid; grid-template-columns:45% 1fr; grid-template-rows:auto 1fr; column-gap:26px; align-items:start; background:#f1f4f5; }
.article-related-grid img { grid-row:1/3; width:100%; height:100%; min-height:250px; object-fit:cover; }
.article-related-grid span { padding:30px 26px 0 0; color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.article-related-grid h3 { padding:0 26px 30px 0; margin:20px 0 0; font-size:25px; line-height:1.08; letter-spacing:-.035em; }

@media (max-width:1100px) {
  .article-hero { grid-template-columns:1fr; padding-left:0; }
  .article-hero-copy { padding:90px 6vw 70px; }
  .article-hero-media { min-height:560px; }
  .article-layout { grid-template-columns:minmax(0,1fr) 290px; gap:45px; }
  .article-lead { grid-template-columns:1fr; }
  .article-lead>.overline,.article-lead h2,.article-lead p { grid-column:1; }
  .article-section { grid-template-columns:1fr; }
}

@media (max-width:840px) {
  .article-layout { grid-template-columns:1fr; }
  .article-sidebar { position:static; grid-template-columns:repeat(2,1fr); }
  .article-sidebar-links { grid-column:1/-1; }
  .article-process { grid-template-columns:1fr; }
  .article-product-lines { grid-template-columns:1fr; }
  .article-product-lines>div { min-height:0; border-right:0; border-bottom:1px solid var(--line); }
  .article-product-lines>div:last-child { border-bottom:0; }
  .article-related-grid { grid-template-columns:1fr; }
}

@media (max-width:620px) {
  .article-hero-copy { padding:72px 28px 58px; }
  .article-breadcrumb { margin-bottom:38px; }
  .article-hero h1 { font-size:40px; }
  .article-hero-copy>p { font-size:14px; }
  .article-hero-media { min-height:420px; }
  .article-hero-media figcaption { left:24px; right:24px; }
  .article-layout { padding:82px 28px 95px; }
  .article-body-simple>.article-intro { margin-bottom:40px; padding-bottom:24px; font-size:17px; }
  .article-body-simple>h2 { font-size:30px; }
  .article-body-simple>h2:not(:first-of-type) { margin-top:48px; }
  .article-body-simple>h3 { font-size:21px; }
  .article-inline-image { margin:40px 0; }
  .article-lead { padding-bottom:65px; }
  .article-wide-image { margin-bottom:65px; }
  .article-section { padding:62px 0; }
  .article-facts { grid-template-columns:repeat(2,1fr); margin-bottom:65px; }
  .article-facts div:nth-child(2) { border-right:0; }
  .article-facts div:nth-child(-n+2) { border-bottom:1px solid rgba(0,159,226,.22); }
  .article-process { margin-bottom:65px; }
  .article-process-copy { padding:48px 28px; }
  .article-process-image { min-height:390px; }
  .article-sidebar { grid-template-columns:1fr; }
  .article-sidebar-links { grid-column:auto; }
  .article-closing { padding:52px 28px; }
  .article-related { padding:0 28px 90px; }
  .article-related-heading { align-items:flex-start; flex-direction:column; }
  .article-related-grid a { grid-template-columns:1fr; }
  .article-related-grid img { grid-row:auto; min-height:0; aspect-ratio:16/9; }
  .article-related-grid span,.article-related-grid h3 { padding-left:22px; }
}
