/* October client comparison. Same content and routes in both themes. */
:root{--surface:#050709;--panel:#0d141c;--ink:#f5f7f9;--muted:#bbc5d0;--border:#343e4b;--accent:#78baff}
html[data-theme=light]{--surface:#f7f8fa;--panel:#fff;--ink:#131e2b;--muted:#506173;--border:#cbd5df;--accent:#0061bb;--line:#cbd5df}
body,.dark-section,.project-gallery,.contact,.site-footer{background:var(--surface);color:var(--ink)}
.site-header{height:118px;background:#000;color:#f5f7f9;gap:28px;grid-template-columns:260px 1fr auto}
html[data-theme=light] .site-header{background:rgba(255,255,255,.97);color:#131e2b;border-bottom:1px solid #cbd5df}
html[data-theme=light] .desktop-nav a{color:#35465a}
html[data-theme=light] .desktop-nav a:hover,html[data-theme=light] .desktop-nav a[aria-current]{color:#0061bb}
html[data-theme=light] .header-phone{border-color:#cbd5df}
html[data-theme=light] .header-phone small{color:#506173}
html[data-theme=light] .menu-toggle span{background:#131e2b}
html[data-theme=light] .mobile-nav{background:#fff;color:#131e2b;border-color:#cbd5df}
html[data-theme=light] .mobile-nav a{border-color:#cbd5df}
html[data-theme=light] .mobile-nav a[aria-current]{color:#0061bb}
html[data-theme=light] .mobile-phone strong{color:#131e2b}
html[data-theme=light] .mobile-phone small{color:#506173}
.lead-image{color:#fff}
.site-header.scrolled{height:100px}
.site-header.scrolled .brand img{height:88px}
.brand{width:210px;justify-self:start}.brand img{width:100%;height:104px;object-fit:contain}
.desktop-nav{justify-content:center;gap:26px}.header-actions{gap:22px}
.hero{padding-top:118px;color:#fff;min-height:740px}
.hero-grid{top:118px}
section[id],details[id]{scroll-margin-top:126px}
.footer-top img{width:280px;height:140px;object-fit:contain;background:transparent}
.statement-top{flex-direction:column;align-items:center;gap:26px;text-align:center;padding-bottom:45px}
.statement-top .section-label{font-size:clamp(22px,3vw,38px);letter-spacing:.07em;gap:20px;color:var(--ink);justify-content:center}
.statement-top .section-label span{font-size:clamp(38px,5vw,64px);line-height:1}
.statement-intro{color:var(--muted);font-size:16px}
.industry-tags{width:var(--wrap);grid-template-columns:repeat(6,minmax(0,1fr))}
.industry-tags span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:80px;padding:20px 10px;font-size:11px;font-weight:700;color:var(--muted);line-height:1.5}
.offer-shortcuts{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;border-left:1px solid var(--border)}
.offer-shortcuts a{justify-content:center;text-align:center;min-height:72px;border:1px solid var(--border);border-left:0;background:var(--panel);color:var(--ink);padding:14px 10px;font-weight:700;line-height:1.4}
.offer-shortcuts a:hover,.offer-shortcuts a:focus-visible{background:#006bd6;color:white;border-color:#006bd6}
.offer-shortcuts a:hover span{color:#fff}
.technology-intro .section-label{width:fit-content;border-left:4px solid #006bd6;padding:12px 18px;font-size:17px;color:var(--ink);background:var(--panel);margin-bottom:30px}
.technology-intro .section-label span{font-size:24px}
.spec small{font-size:26px;line-height:1;font-weight:700;color:var(--accent);margin-bottom:4px}
.spec strong{font-size:clamp(32px,3.6vw,48px)}
.process-section{background:var(--surface);color:var(--ink)}
.process-head .section-label{color:var(--muted)}
.process-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px}
.process-controls p{font-size:12px;color:var(--muted);margin:0}
.process-toggle{border:1px solid var(--border);background:var(--panel);color:var(--ink);min-height:44px;padding:10px 16px;cursor:pointer;font-size:12px}
.process-list{margin-top:22px;border:0;gap:24px}
.process-list article{padding:0 0 28px;border:1px solid var(--border);background:var(--panel);overflow:hidden;min-width:0}
.process-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#172330;margin-bottom:26px}
.process-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s ease;filter:saturate(.9)}
.process-media img.is-active{opacity:1}
.process-list article>span,.process-list article>h3,.process-list article>p{margin-inline:26px}
.process-list article>h3{margin-top:22px;font-size:26px}
.process-list article>p{color:var(--muted)}
.department-heading{margin-bottom:42px}.department-heading>p:last-child{color:var(--muted);font-size:16px;margin-top:25px}
.contact-departments{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-bottom:90px}
.department-card{border:1px solid var(--border);border-top:3px solid #006bd6;background:var(--panel);padding:36px;min-width:0}
.department-number{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.department-card h3{font-size:32px;letter-spacing:-.04em;line-height:1.15;margin:22px 0 14px}
.department-card>p{color:var(--muted);font-size:15px;line-height:1.7}
.department-data{display:grid;gap:20px;margin-top:32px}.department-data>span{display:grid;gap:7px;min-width:0}
.department-data small{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:10px}
.department-data strong,.department-data a{font-size:clamp(18px,2vw,24px);font-weight:600;overflow-wrap:anywhere}
.department-data a{width:fit-content;min-height:44px;display:flex;align-items:center;border-bottom:1px solid #006bd6}
.department-card .placeholder-note{font-size:12px;margin:26px 0 0;padding-top:20px;border-top:1px solid var(--border);color:var(--muted)}
.contact-layout{padding-top:55px;border-top:1px solid var(--border)}
.contact-layout .section-label{display:none}
html[data-theme=light] .section-label,html[data-theme=light] .statement-copy p,html[data-theme=light] .section-heading>div>p,html[data-theme=light] .technology-intro>p,html[data-theme=light] .contact-copy>p,html[data-theme=light] .gallery-heading p:not(.section-label){color:var(--muted)}
html[data-theme=light] .statement h2 em,html[data-theme=light] .section-heading h2 em,html[data-theme=light] .technology h2 em,html[data-theme=light] .gallery-heading h2 em,html[data-theme=light] .contact h2 em{color:#647990}
html[data-theme=light] .statement-top .section-label,html[data-theme=light] .technology-intro .section-label{color:var(--ink)}
html[data-theme=light] .section-label span,html[data-theme=light] .service-no,html[data-theme=light] .gallery-hint>span{color:#0061bb}
html[data-theme=light] .service-row:hover,html[data-theme=light] .service-item[open]{background:#eaf0f6}
html[data-theme=light] .service-item{border-color:var(--border)}
html[data-theme=light] .service-row p,html[data-theme=light] .service-columns li,html[data-theme=light] .service-note,html[data-theme=light] .service-instruction{color:var(--muted)}
html[data-theme=light] .service-columns h4{color:var(--ink)}
html[data-theme=light] .service-item[open] .service-row h3{color:#0061bb}
html[data-theme=light] .service-arrow{color:#0061bb;border-color:#9fb1c5}
html[data-theme=light] .service-item[open] .service-arrow{color:#fff}
html[data-theme=light] .text-link span{color:#0061bb}
html[data-theme=light] .lead-image .text-link span,html[data-theme=light] .hydraulic-feature .text-link span{color:#78baff}
html[data-theme=light] .spec>span,html[data-theme=light] .specs-note,html[data-theme=light] .gallery-hint,html[data-theme=light] .gallery-source,html[data-theme=light] .company-photo figcaption p{color:var(--muted)}
html[data-theme=light] .gallery-item figcaption>span{color:#0061bb}
html[data-theme=light] .contact-form{background:#fff;color:var(--ink);border-color:var(--border)}
html[data-theme=light] .contact-form label>span,html[data-theme=light] .form-explainer,html[data-theme=light] .form-status,html[data-theme=light] .contact-direct small{color:var(--muted)}
html[data-theme=light] .contact-form input:not([type=checkbox]),html[data-theme=light] .contact-form textarea{background:#f7f9fc;color:var(--ink);border-color:#8ca0b6}
html[data-theme=light] .btn-submit{color:#fff}
html[data-theme=light] .footer-top>p,html[data-theme=light] .footer-grid p,html[data-theme=light] .footer-grid address,html[data-theme=light] .footer-bottom,html[data-theme=light] .site-footer small{color:var(--muted)}
.site-footer{padding-bottom:78px}
@media(max-width:1180px){.site-header{grid-template-columns:210px 1fr auto;padding-inline:28px;gap:20px}.brand{width:185px}.desktop-nav{gap:20px}.header-cta{display:none}.offer-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));border-left:0}.offer-shortcuts a{border-left:1px solid var(--border);margin:-1px 0 0 -1px}.industry-tags{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.site-header{grid-template-columns:1fr auto auto;height:100px}.site-header.scrolled{height:100px}.brand img{height:88px}.mobile-nav{top:100px}.hero{padding-top:100px}.hero-grid{top:100px}.contact-departments{gap:20px}.department-card{padding:26px}.process-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.process-list article>span,.process-list article>h3,.process-list article>p{margin-inline:18px}.process-list h3{font-size:22px}.industry-tags span{font-size:12px}}
@media(max-width:620px){.site-header,.site-header.scrolled{height:88px;padding-inline:14px;gap:8px}.brand{width:132px}.brand img{height:72px}.mobile-nav{top:88px;max-height:calc(100dvh - 88px)}.hero{padding-top:88px;min-height:700px}.hero-grid{top:88px}.header-phone strong{font-size:11px}.hero-rail{bottom:88px}.hero-content{padding-bottom:115px;height:100%}.theme-comparison{bottom:12px;left:12px}.theme-comparison>span{font-size:10px;padding:0 5px}.theme-comparison button{padding:9px 12px}.statement-top{padding-bottom:30px}.statement-top .section-label{font-size:24px}.statement-top .section-label span{font-size:46px}.statement-intro{font-size:14px}.industry-tags{grid-template-columns:repeat(2,minmax(0,1fr))}.industry-tags span{min-height:72px;font-size:11px}.offer-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-shortcuts a{font-size:13px;min-height:64px}.offer-shortcuts a:last-child{grid-column:1/-1}.technology-intro .section-label{font-size:16px}.spec{padding:24px 16px;column-gap:8px}.spec small{font-size:23px}.spec strong{font-size:30px}.process-list{grid-template-columns:1fr;gap:26px}.process-list article>span,.process-list article>h3,.process-list article>p{margin-inline:24px}.process-media{aspect-ratio:16/9}.process-controls{gap:14px;margin-top:30px}.process-toggle{font-size:11px;flex-shrink:0}.contact-departments{grid-template-columns:1fr;margin-bottom:55px}.department-card{padding:26px}.department-card h3{font-size:29px}.department-data strong,.department-data a{font-size:20px}.department-heading h2{font-size:clamp(40px,11vw,56px)}.footer-top img{width:230px;height:115px}}
@media(max-width:360px){.brand{width:108px}.header-phone strong{font-size:10px}.site-header{padding-inline:10px}.spec strong{font-size:26px}.spec small{font-size:21px}}
@media(max-width:620px){.site-header.scrolled .brand img{height:72px}}
@media(prefers-reduced-motion:reduce){.process-media img{transition:none}}
/* Decorative CAD linework travels more slowly than the content. */
html[data-theme=light] :is(.statement,.competences,.technology,.project-gallery,.process-section,.contact){position:relative;isolation:isolate}
html[data-theme=light] :is(.statement,.competences,.technology,.project-gallery,.process-section,.contact)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url('assets/technical-background.svg?v=20261014-cad');background-size:1600px 1000px;background-position:center var(--drawing-offset,0px);opacity:.24;mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.32) 35%,rgba(0,0,0,.32) 65%,#000)}
@media(max-width:620px){html[data-theme=light] :is(.statement,.competences,.technology,.project-gallery,.process-section,.contact)::before{background-size:1000px 625px;opacity:.18}}
@media(prefers-reduced-motion:reduce){html[data-theme=light] :is(.statement,.competences,.technology,.project-gallery,.process-section,.contact)::before{background-position:center 0}}
/* Finishing details: a clear reading cue and restrained blue editorial accents. */
.service-row{grid-template-columns:minmax(0,1.1fr) minmax(0,.85fr) 44px}
.service-row h3{grid-column:1;grid-row:1}.service-row p{grid-column:2;grid-row:1}.service-arrow{grid-column:3;grid-row:1}
.service-detail{padding-left:16px}
.photo-toolbar{justify-content:flex-end}
@media(max-width:980px){.service-row{grid-template-columns:minmax(0,1fr) 44px}.service-row h3{grid-column:1;grid-row:1}.service-row p{grid-column:1;grid-row:2}.service-arrow{grid-column:2;grid-row:1/3}.service-detail{padding-left:16px}}
@media(max-width:620px){.service-detail{padding-left:4px}}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:#006bd6;transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.industry-tags span{font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--ink);background:color-mix(in srgb,var(--panel) 70%,transparent)}
.offer-shortcuts a{font-size:14px;font-weight:800}
.gallery-item figcaption{border-left:2px solid #006bd6;padding-left:16px}
.spec{position:relative;transition:background .2s}
.spec::before{content:"";position:absolute;top:0;left:0;width:36px;height:2px;background:#006bd6}
.spec:hover{background:var(--panel)}
.process-list article{border-top:3px solid #006bd6;transition:border-color .2s,box-shadow .2s}
.process-list article:hover{border-color:#006bd6;box-shadow:0 8px 24px #006bd610}
.process-list article>span{font-size:14px;font-weight:800}
.department-card{box-shadow:0 8px 30px #102b4510}
@media(max-width:620px){.industry-tags span{font-size:12px}.offer-shortcuts a{font-size:14px}.gallery-item figcaption{padding-left:13px}}
