
:root{
 --bg:#f4f6f7;--surface:#fff;--surface2:#e9eef0;--ink:#071b25;--text:#314852;--muted:#71848c;
 --line:#d7e0e4;--blue:#0d7899;--blue2:#0a536d;--red:#d73531;--navy:#061923;--navy2:#092b3a;
 --max:1480px;--header:76px;--shadow:0 22px 70px rgba(8,28,38,.11);--ease:cubic-bezier(.2,.75,.2,1)
}
html[data-theme=dark]{--bg:#061117;--surface:#0a1a22;--surface2:#0d232d;--ink:#f2f7f8;--text:#c4d1d6;--muted:#82979f;--line:#1c3540;--blue:#45b2cf;--blue2:#76c9dc;--shadow:0 25px 80px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header);background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55;overflow-x:hidden}
body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}
.shell{width:min(calc(100% - 80px),var(--max));margin:auto}.eyebrow{font-size:10px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:var(--blue)}
.accent-line{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--red))}
.site-header{height:var(--header);position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.nav-row{height:100%;display:grid;grid-template-columns:240px 1fr auto;gap:26px;align-items:center}.brand{display:flex;align-items:center;gap:11px}.brand-plate{width:51px;height:43px;background:#fff;border:1px solid var(--line);display:grid;place-items:center}.brand-plate img{width:41px}.brand-text{display:flex;flex-direction:column}.brand-text b{font-size:14px;letter-spacing:.08em;color:var(--ink)}.brand-text small{font-size:6px;letter-spacing:.17em;color:var(--muted);font-weight:800;margin-top:4px}
.desktop-nav{height:100%;display:flex;justify-content:center;align-items:stretch;gap:30px}.desktop-nav>a,.nav-cluster>a{height:100%;display:flex;align-items:center;border-bottom:3px solid transparent;font-size:10px;text-transform:uppercase;font-weight:800;color:var(--ink)}.desktop-nav>a:hover,.nav-cluster:hover>a{color:var(--blue)}.desktop-nav a.current-page,.desktop-nav>a.active,.nav-cluster.active>a{border-bottom-color:var(--red)}
.nav-cluster{height:100%;display:flex}.nav-cluster>a i{font-style:normal;margin-left:6px}.mega{position:absolute;top:var(--header);left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.22s var(--ease)}.nav-cluster:hover .mega,.nav-cluster:focus-within .mega{opacity:1;visibility:visible;transform:none}.mega-layout{display:grid;grid-template-columns:.6fr 1.4fr;gap:70px;padding:42px 0}.mega-lead span{font-size:9px;color:var(--blue);font-weight:800}.mega-lead h2{font-size:43px;line-height:1;letter-spacing:-.045em;color:var(--ink);margin:12px 0}.mega-lead p{font-size:12px;color:var(--muted)}.mega-index{border-top:1px solid var(--line)}.mega-index a{display:grid;grid-template-columns:44px 1fr 20px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line)}.mega-index em{font-style:normal;font-size:9px;color:var(--blue);font-weight:800}.mega-index b{font-size:14px;color:var(--ink)}.mega-index a:hover{background:var(--surface2);padding-left:12px}.mega-index .mega-cta{background:var(--red);padding-left:12px}.mega-index .mega-cta *{color:#fff}
.nav-actions{display:flex;align-items:center;gap:8px}.portal{font-size:8px;font-weight:800;border:1px solid var(--line);padding:10px}.langs{display:flex;gap:6px}.langs a{font-size:8px;font-weight:900;padding:5px}.langs a.on{color:var(--red)}.theme-toggle{width:38px;height:38px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}.rfq-head{height:42px;padding:0 14px;display:flex;align-items:center;gap:20px;background:var(--red);color:#fff;font-size:8px;font-weight:900;text-transform:uppercase}.menu-button,.mobile-menu{display:none}
.button{min-height:50px;padding:0 18px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid currentColor;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;transition:.2s}.button.red{background:var(--red);border-color:var(--red);color:#fff}.button.ghost{color:#fff;border-color:rgba(255,255,255,.45);background:rgba(0,0,0,.12)}.button:hover{transform:translateY(-2px)}.text-link{display:inline-flex;gap:24px;margin-top:23px;font-size:9px;font-weight:900;text-transform:uppercase;color:var(--ink)}.text-link.light{color:#fff}
.section{padding:118px 0}.editorial-head{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end;margin-bottom:58px}.editorial-head h2,.sub-intro h2,.final-grid h2{font-size:clamp(48px,5vw,78px);line-height:.95;letter-spacing:-.055em;color:var(--ink);margin:11px 0 0}.editorial-head>p,.sub-intro>p,.final-grid p{font-size:15px;color:var(--muted);line-height:1.7}

/* hero */
.home-hero{min-height:calc(100svh - var(--header));position:relative;background:#041018;color:#fff;overflow:hidden}.home-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04) brightness(.72)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,15,22,.94),rgba(3,15,22,.6) 58%,rgba(3,15,22,.18)),linear-gradient(180deg,transparent 55%,rgba(3,15,22,.65))}.hero-grid{position:relative;z-index:2;min-height:calc(100svh - var(--header));display:grid;grid-template-columns:1fr 290px;gap:70px;align-items:end;padding-top:70px;padding-bottom:38px}.hero-copy{align-self:center;max-width:1050px}.hero-copy h1{font-size:clamp(66px,7.4vw,118px);line-height:.87;letter-spacing:-.065em;margin:14px 0 27px}.hero-copy>p{font-size:17px;max-width:760px;color:#d7e2e6}.hero-actions{display:flex;gap:9px;margin-top:29px}.hero-metrics{border-left:1px solid rgba(255,255,255,.2)}.hero-metrics>div{padding:17px 0 17px 22px;border-bottom:1px solid rgba(255,255,255,.15)}.hero-metrics b{display:block;font-size:22px}.hero-metrics span{display:block;font-size:8px;color:#aabcc3;margin-top:4px;text-transform:uppercase}
.manifest{background:var(--bg)}.domain-list{border-top:1px solid var(--line)}.domain-row{display:grid;grid-template-columns:60px 1fr 310px 30px;gap:30px;align-items:center;min-height:190px;border-bottom:1px solid var(--line)}.domain-num{font-size:9px;color:var(--blue);font-weight:900}.domain-copy h3{font-size:42px;color:var(--ink);letter-spacing:-.045em;margin:0 0 9px}.domain-copy p{font-size:12px;color:var(--muted);max-width:68ch}.domain-media{height:145px;overflow:hidden}.domain-media img{width:100%;height:100%;object-fit:cover;transition:.35s;filter:saturate(.8)}.domain-row:hover img{transform:scale(1.025);filter:saturate(1)}.domain-arrow{color:var(--blue)}
.technology-section{padding:120px 0;background:var(--navy);color:#fff}.editorial-head.light h2{color:#fff}.editorial-head.light>p{color:#afc2ca}.tech-theatre{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.55fr);gap:12px}.tech-stage{position:relative;min-height:620px;overflow:hidden;background:#0a202b}.tech-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78);transition:opacity .2s}.tech-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 32%,rgba(3,15,22,.94))}.tech-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:27px}.tech-caption span{font-size:9px;color:#83d5e7;font-weight:900}.tech-caption h3{font-size:56px;letter-spacing:-.05em;margin:5px 0}.tech-caption p{font-size:12px;color:#d0dde2}.tech-index{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.17)}.tech-index-item{flex:1;display:grid;grid-template-columns:38px 1fr 20px;align-items:center;text-align:left;border:0;border-bottom:1px solid rgba(255,255,255,.17);background:transparent;color:#fff;padding:15px;cursor:pointer}.tech-index-item span{font-size:8px;color:#7ccde0}.tech-index-item b{font-size:17px}.tech-index-item em{font-style:normal}.tech-index-item:hover,.tech-index-item.active{background:#fff;color:#071b25}.support-line{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.17);margin-top:12px}.support-item{padding:20px;border-right:1px solid rgba(255,255,255,.17)}.support-item:last-child{border-right:0}.support-item span{font-size:8px;color:#7ccde0}.support-item b{display:block;margin-top:7px}
.process-section{background:var(--surface)}.process-image{height:210px;overflow:hidden}.process-image img{width:100%;height:100%;object-fit:cover}.process-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-rail article{padding:28px 23px 34px;border-right:1px solid var(--line);min-height:250px}.process-rail article:last-child{border-right:0}.process-rail span{font-size:8px;color:var(--blue);font-weight:900}.process-rail h3{font-size:25px;color:var(--ink);margin:42px 0 10px;letter-spacing:-.03em}.process-rail p{font-size:11px;color:var(--muted)}
.proof-section{background:var(--bg)}.proof-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:12px}.proof-item{position:relative;min-height:540px;overflow:hidden;background:#09202b}.proof-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:.4s}.proof-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(3,15,22,.94))}.proof-item:hover img{transform:scale(1.025)}.proof-item>div{position:absolute;z-index:2;left:25px;right:25px;bottom:24px;color:#fff}.proof-item span{font-size:8px;color:#7cd0e3}.proof-item h3{font-size:31px;margin:6px 0}.proof-item p{font-size:10px;color:#bdced5}.proof-item em{position:absolute;right:0;bottom:0;font-style:normal}
.quality-story{padding:115px 0;background:linear-gradient(135deg,#061923,#0a3141);color:#fff}.quality-story-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:75px;align-items:center}.quality-story h2{font-size:clamp(52px,5vw,78px);line-height:.95;letter-spacing:-.055em;margin:11px 0 22px}.quality-story p{color:#b9cbd2}.quality-docs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quality-docs figure{margin:0;background:#fff;color:#071b25;display:grid;grid-template-columns:150px 1fr;min-height:225px;box-shadow:0 22px 60px rgba(0,0,0,.2)}.quality-docs img{width:100%;height:100%;object-fit:contain;padding:9px}.quality-docs figcaption{padding:19px;display:flex;flex-direction:column;justify-content:flex-end}.quality-docs b{font-size:23px}.quality-docs span{font-size:9px;color:#63767e}
.final-cta{padding:100px 0;background:#071f2a;color:#fff}.final-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end}.final-grid h2{color:#fff}.final-grid p{color:#b8cbd2}

/* subpages */
.page-hero{min-height:610px;position:relative;display:flex;align-items:flex-end;background:#041018;color:#fff;overflow:hidden}.page-image{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.78)}.page-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,15,22,.94),rgba(3,15,22,.55) 65%,rgba(3,15,22,.16)),linear-gradient(180deg,transparent 50%,rgba(3,15,22,.5))}.page-copy{position:relative;padding-bottom:55px}.crumb{display:flex;gap:7px;font-size:8px;color:#a8bbc3;margin-bottom:24px}.page-copy h1{font-size:clamp(62px,7vw,105px);line-height:.87;letter-spacing:-.06em;margin:12px 0 20px;max-width:1150px}.page-copy>p{font-size:15px;max-width:760px;color:#d2dfe3}
.sub-intro{display:grid;grid-template-columns:1fr .75fr;gap:75px;align-items:end;margin-bottom:52px}.sub-intro .eyebrow{grid-column:1/-1}.capability-list{border-top:1px solid var(--line)}.capability-row{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(390px,1.15fr) 30px;gap:34px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);min-height:290px}.cap-meta span{font-size:8px;color:var(--blue);font-weight:900}.cap-meta h2{font-size:40px;color:var(--ink);letter-spacing:-.045em;margin:8px 0}.cap-meta p{font-size:11px;color:var(--muted)}.cap-img{height:245px;overflow:hidden}.cap-img img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:.35s}.capability-row:hover img{transform:scale(1.025);filter:saturate(1)}.cap-arrow{color:var(--blue)}
.process-band,.quality-process,.map-band{padding:105px 0;background:var(--navy);color:#fff}.process-band h2,.qp-grid h2{font-size:58px;line-height:.95;letter-spacing:-.05em;margin:11px 0 42px}.process-band-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18)}.process-band-grid>div{padding:22px;border-right:1px solid rgba(255,255,255,.18)}.process-band-grid span{font-size:8px;color:#79cfe2}.process-band-grid b{display:block;margin:14px 0 8px}.process-band-grid p{font-size:10px;color:#abc0c8}
.project-stories{display:flex;flex-direction:column;gap:85px}.project-story{display:grid;grid-template-columns:1.4fr .6fr;gap:55px;align-items:end}.project-story:nth-child(even){grid-template-columns:.6fr 1.4fr}.project-story:nth-child(even) .project-image{order:2}.project-image{aspect-ratio:1.5;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:.35s}.project-story:hover img{filter:saturate(1)}.project-copy span{font-size:8px;color:var(--blue);font-weight:900}.project-copy h2{font-size:47px;line-height:.98;color:var(--ink);letter-spacing:-.045em;margin:8px 0 14px}.project-copy p{font-size:12px;color:var(--muted)}.project-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}.project-tags b{font-size:7px;padding:6px 8px;border:1px solid var(--line);color:var(--blue)}
.certificate-spread{display:grid;grid-template-columns:1fr 1fr;gap:14px}.certificate-spread article{display:grid;grid-template-columns:.72fr 1.28fr;background:var(--surface);border:1px solid var(--line)}.certificate-paper{background:#fff;min-height:430px}.certificate-paper img{width:100%;height:100%;object-fit:contain;padding:14px}.certificate-spread article>div:last-child{padding:28px;align-self:end}.certificate-spread span{font-size:8px;color:var(--blue);font-weight:900}.certificate-spread h3{font-size:28px;color:var(--ink);margin:8px 0}.certificate-spread b{font-size:9px;color:var(--red)}.certificate-spread p{font-size:11px;color:var(--muted)}
.qp-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.qp-image{aspect-ratio:1.25;overflow:hidden}.qp-image img{width:100%;height:100%;object-fit:cover}.qp-list{border-top:1px solid rgba(255,255,255,.18)}.qp-list>div{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15)}.qp-list span{font-size:8px;color:#78cde0}.qp-list p{grid-column:2;margin:0;font-size:10px;color:#b2c5cc}
.about-editorial{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center}.about-big{aspect-ratio:1.2;overflow:hidden}.about-big img{width:100%;height:100%;object-fit:cover}.about-copy h2{font-size:59px;line-height:.95;color:var(--ink);letter-spacing:-.05em;margin:11px 0 23px}.about-copy p{font-size:14px;color:var(--muted);line-height:1.75}.values-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:65px}.values-rail>div{padding:27px 21px;border-right:1px solid var(--line);min-height:200px}.values-rail span{font-size:8px;color:var(--blue)}.values-rail h3{font-size:23px;color:var(--ink);margin:37px 0 9px}.values-rail p{font-size:10px;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:75px}.contact-aside{position:sticky;top:105px;align-self:start}.contact-aside h2{font-size:56px;line-height:.95;color:var(--ink);letter-spacing:-.05em;margin:10px 0 34px}.contact-aside>div{border-top:1px solid var(--line);padding:15px 0}.contact-aside small{font-size:7px;color:var(--muted)}.contact-aside p,.contact-aside a{font-size:12px;color:var(--ink)}.rfq-form{padding:36px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.form-title h2{font-size:43px;color:var(--ink);margin:8px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{display:flex;justify-content:space-between;font-size:9px;font-weight:900;color:var(--ink)}.field label small{font-size:7px;color:var(--muted)}.field input,.field select,.field textarea{width:100%;padding:13px;border:1px solid var(--line);background:var(--bg);color:var(--text);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue)}.form-status{font-size:10px;color:var(--muted)}.map-label{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}.map-label span{font-size:8px;color:#78cfe2}.map-band iframe{width:100%;height:520px;border:1px solid rgba(255,255,255,.2)}
.legal-layout{display:grid;grid-template-columns:260px 1fr;gap:80px}.legal-layout aside{position:sticky;top:105px;align-self:start;border-top:1px solid var(--line);padding-top:16px}.legal-layout aside p,.legal-item p{font-size:12px;color:var(--text);line-height:1.75}.legal-item{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.legal-item h2{font-size:28px;color:var(--ink)}.legal-date{display:block;color:var(--muted);margin-top:20px}

/* footer + cookies */
.site-footer{padding:75px 0 22px;background:#041219;color:#bdcdd3}.footer-hero{display:flex;justify-content:space-between;align-items:end;padding-bottom:40px;border-bottom:1px solid #17303a}.footer-logo{display:inline-grid;background:#fff;padding:7px 10px}.footer-logo img{width:78px}.footer-hero h2{font-size:37px;color:#fff;line-height:.95;margin:17px 0 0}.footer-rfq{min-width:250px;padding:16px;background:var(--red);color:#fff;display:flex;justify-content:space-between;font-size:9px;font-weight:900}.footer-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:55px;padding:40px 0}.footer-cols>div{display:flex;flex-direction:column}.footer-cols small{font-size:7px;color:#718b96;margin-bottom:11px}.footer-cols a{font-size:11px;padding:8px 0;border-bottom:1px solid #172e38}.footer-cols p{font-size:10px;color:#78909a}.footer-bottom{display:flex;justify-content:space-between;padding-top:17px;border-top:1px solid #1a3540;font-size:8px;color:#718a94}.footer-bottom div{display:flex;gap:13px}.footer-bottom button{border:0;background:none;color:inherit;font:inherit;padding:0;cursor:pointer}
.cookie-center{position:fixed;z-index:3000;inset:0;background:rgba(1,9,13,.7);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.cookie-center[hidden]{display:none}.cookie-dialog{width:min(620px,100%);background:var(--surface);border:1px solid var(--line);box-shadow:0 35px 100px rgba(0,0,0,.4);padding:27px}.cookie-brand{display:flex;justify-content:space-between;align-items:center}.cookie-brand img{width:74px;background:#fff;padding:5px}.cookie-brand span{font-size:7px;color:var(--blue);font-weight:900}.cookie-dialog h2{font-size:31px;color:var(--ink)}.cookie-dialog>p{font-size:12px;color:var(--muted)}.cookie-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:13px 0}.cookie-row b{font-size:11px}.cookie-row span{display:block;font-size:8px;color:var(--muted)}.cookie-row.disabled{opacity:.5}.switch{width:38px;height:20px;border-radius:20px;background:#78878d}.switch.on{background:var(--blue)}.cookie-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.cookie-buttons a,.cookie-buttons button{min-height:44px;border:1px solid var(--line);background:none;color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900}.cookie-buttons button{background:var(--red);border-color:var(--red);color:#fff}

/* mobile */
@media(max-width:1080px){
 .shell{width:calc(100% - 42px)}.desktop-nav,.rfq-head,.nav-actions>.langs,.portal{display:none}.nav-row{grid-template-columns:1fr auto}.menu-button{display:flex;width:40px;height:40px;border:1px solid var(--line);background:var(--surface);align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-button span{width:17px;height:1px;background:var(--ink)}
 .mobile-menu{display:block;position:fixed;z-index:1200;inset:0;background:var(--bg);transform:translateX(100%);visibility:hidden;transition:.25s;overflow:auto}.mobile-menu.open{transform:none;visibility:visible}.mobile-shell{padding:20px 21px 32px}.mobile-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--line)}.mobile-close{font-size:27px;border:0;background:none;color:var(--ink)}.mobile-solutions-toggle,.mobile-link{width:100%;display:flex;justify-content:space-between;padding:17px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font-size:18px;font-weight:900}.mobile-solutions{display:none}.mobile-solutions.open{display:block}.mobile-solutions a{display:grid;grid-template-columns:32px 1fr 18px;gap:8px;padding:13px 4px;border-bottom:1px solid var(--line)}.mobile-solutions i{font-style:normal;color:var(--blue);font-size:8px}.mobile-solutions b{font-size:13px}.mobile-foot{margin-top:22px;display:grid;grid-template-columns:1fr auto;gap:10px}.mobile-foot>a{grid-column:1/-1;padding:12px;border:1px solid var(--line)}.mobile-foot>div{display:flex;gap:5px}.mobile-foot>div a{width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center;font-size:8px;font-weight:900}.mobile-foot>div a.on{background:var(--red);color:#fff}.mobile-foot button{border:1px solid var(--line);background:var(--surface)}
 .hero-grid{grid-template-columns:1fr}.hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-left:0;border-top:1px solid rgba(255,255,255,.18)}.hero-metrics>div{padding:13px;border-right:1px solid rgba(255,255,255,.15)}
 .editorial-head,.sub-intro,.final-grid,.quality-story-grid,.qp-grid,.about-editorial,.contact-layout{grid-template-columns:1fr;gap:38px}.domain-row{grid-template-columns:50px 1fr 230px 22px}.tech-theatre{grid-template-columns:1fr}.tech-index{display:grid;grid-template-columns:1fr 1fr}.support-line,.process-rail,.process-band-grid,.values-rail{grid-template-columns:1fr 1fr}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid .p1{grid-column:1/-1}.certificate-spread{grid-template-columns:1fr}.project-story,.project-story:nth-child(even){grid-template-columns:1fr;gap:22px}.project-story:nth-child(even) .project-image{order:0}.contact-aside,.legal-layout aside{position:static}.legal-layout{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
 :root{--header:64px}.shell{width:calc(100% - 28px)}.brand-plate{width:44px;height:38px}.brand-plate img{width:35px}.brand-text b{font-size:12px}.brand-text small{font-size:5px}.section{padding:78px 0}
 .home-hero{min-height:790px}.hero-grid{min-height:790px;padding:44px 0 17px}.hero-copy h1{font-size:51px;line-height:.9}.hero-copy>p{font-size:13px}.hero-actions{display:grid}.hero-actions .button{width:100%}.hero-metrics{grid-template-columns:1fr 1fr}.hero-metrics>div{min-height:72px}.hero-metrics b{font-size:18px}
 .editorial-head{gap:22px;margin-bottom:34px}.editorial-head h2,.sub-intro h2,.final-grid h2{font-size:43px}.editorial-head>p,.sub-intro>p,.final-grid p{font-size:12px}
 .domain-row{grid-template-columns:32px 1fr 18px;padding:16px 0;min-height:0}.domain-media{grid-column:2;grid-row:2;height:auto;aspect-ratio:1.55;margin-top:10px}.domain-copy h3{font-size:29px}.domain-copy p{font-size:10px}.domain-arrow{grid-column:3;grid-row:1}
 .technology-section{padding:80px 0}.tech-stage{min-height:0;aspect-ratio:.94}.tech-caption{left:17px;right:17px;bottom:16px}.tech-caption h3{font-size:38px}.tech-caption p{font-size:10px}.tech-index{grid-template-columns:1fr 1fr}.tech-index-item{min-height:72px;padding:10px;grid-template-columns:23px 1fr}.tech-index-item b{font-size:12px}.support-line{grid-template-columns:1fr}.support-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}
 .process-image{height:auto;aspect-ratio:1.5}.process-rail,.process-band-grid,.values-rail{grid-template-columns:1fr}.process-rail article,.values-rail>div{border-right:0;min-height:0}.process-rail h3{margin-top:22px}
 .proof-grid{grid-template-columns:1fr}.proof-grid .p1{grid-column:auto}.proof-item{min-height:440px}.quality-docs{grid-template-columns:1fr}.quality-docs figure{grid-template-columns:110px 1fr;min-height:170px}
 .page-hero{min-height:530px}.page-copy{padding-bottom:42px}.page-copy h1{font-size:50px}.page-copy>p{font-size:12px}
 .capability-row{grid-template-columns:1fr 20px;gap:10px;padding:18px 0;min-height:0}.cap-meta{grid-column:1}.cap-img{grid-column:1/-1;height:auto;aspect-ratio:1.5}.cap-arrow{grid-column:2;grid-row:1}.cap-meta h2{font-size:30px}.process-band h2,.qp-grid h2{font-size:42px}
 .project-copy h2{font-size:35px}.certificate-spread article{grid-template-columns:1fr}.certificate-paper{min-height:0}.certificate-paper img{height:auto;object-fit:contain}.about-copy h2,.contact-aside h2{font-size:43px}.rfq-form{padding:20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.map-band iframe{height:400px}
 .footer-hero{flex-direction:column;align-items:stretch}.footer-rfq{margin-top:22px;width:100%}.footer-cols{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px}.footer-bottom div{flex-wrap:wrap}.cookie-center{padding:0;place-items:end}.cookie-dialog{width:100%;max-height:92vh;overflow:auto}.cookie-buttons{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.technical-depth{background:var(--surface)}
.depth-head{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-bottom:52px}
.depth-head .eyebrow{grid-column:1/-1}.depth-head h2{font-size:clamp(44px,4.7vw,72px);line-height:.96;letter-spacing:-.052em;color:var(--ink);margin:8px 0 0}.depth-head>p{font-size:14px;line-height:1.75;color:var(--muted);margin:0}
.depth-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.depth-grid article{min-height:245px;padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg)}
.depth-grid article>span{font-size:8px;font-weight:900;color:var(--blue)}.depth-grid h3{font-size:23px;letter-spacing:-.03em;color:var(--ink);margin:42px 0 10px}.depth-grid p{font-size:11px;line-height:1.7;color:var(--muted);margin:0}
@media(max-width:900px){.depth-head{grid-template-columns:1fr;gap:22px}.depth-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.depth-grid{grid-template-columns:1fr}.depth-grid article{min-height:0}.depth-grid h3{margin-top:22px}}

.about-copy p{margin:0 0 18px}.about-capabilities{margin-top:90px}.about-cap-head{display:grid;grid-template-columns:.55fr 1.45fr;gap:50px;align-items:end;margin-bottom:38px}.about-cap-head h2{font-size:clamp(38px,4vw,62px);line-height:.98;letter-spacing:-.05em;color:var(--ink);margin:0}.about-cap-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.about-cap-grid article{padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px}.about-cap-grid article>span{font-size:8px;color:var(--blue);font-weight:900}.about-cap-grid h3{font-size:22px;color:var(--ink);margin:40px 0 10px}.about-cap-grid p{font-size:11px;color:var(--muted);line-height:1.7}
.projects-premium{background:var(--bg)}.projects-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:end;margin-bottom:85px}.projects-intro .eyebrow{grid-column:1/-1}.projects-intro h2{font-size:clamp(46px,5vw,76px);line-height:.95;letter-spacing:-.055em;color:var(--ink);margin:0}.projects-intro>p{font-size:14px;line-height:1.75;color:var(--muted);margin:0}.case-stack{display:flex;flex-direction:column;gap:115px}.case-study{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:58px;align-items:center}.case-study:nth-child(even){grid-template-columns:minmax(320px,.65fr) minmax(0,1.35fr)}.case-study:nth-child(even) .case-media{order:2}.case-media{position:relative;aspect-ratio:1.42;overflow:hidden;background:var(--surface2)}.case-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transition:.45s var(--ease)}.case-study:hover .case-media img{transform:scale(1.025);filter:saturate(1)}.case-number{position:absolute;left:18px;top:17px;background:rgba(4,25,35,.86);color:#fff;padding:8px 10px;font-size:9px;font-weight:900;backdrop-filter:blur(8px)}.case-body h2{font-size:clamp(38px,4vw,58px);line-height:.98;letter-spacing:-.05em;color:var(--ink);margin:10px 0 18px}.case-body>p{font-size:13px;line-height:1.75;color:var(--muted)}.case-tags{display:flex;flex-wrap:wrap;gap:6px;margin:24px 0}.case-tags b{font-size:7px;letter-spacing:.08em;color:var(--blue);border:1px solid var(--line);padding:6px 8px}.case-flow{border-top:1px solid var(--line)}.case-flow span{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:9px;font-weight:800;color:var(--text)}
@media(max-width:1000px){.about-cap-grid{grid-template-columns:1fr 1fr}.projects-intro{grid-template-columns:1fr;gap:25px}.case-study,.case-study:nth-child(even){grid-template-columns:1fr;gap:28px}.case-study:nth-child(even) .case-media{order:0}}
@media(max-width:650px){.about-capabilities{margin-top:60px}.about-cap-head{grid-template-columns:1fr;gap:15px}.about-cap-grid{grid-template-columns:1fr}.about-cap-grid article{min-height:0}.about-cap-grid h3{margin-top:20px}.projects-intro{margin-bottom:55px}.case-stack{gap:75px}.case-media{aspect-ratio:1.28}.case-body h2{font-size:36px}.case-body>p{font-size:11px}}

.photo-slot{position:relative;width:100%;height:100%;min-height:260px;background:repeating-linear-gradient(135deg,var(--surface2),var(--surface2) 14px,var(--bg) 14px,var(--bg) 28px);border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;overflow:hidden}.photo-slot-label{padding:20px;text-align:center;max-width:90%;background:var(--bg);border:1px solid var(--line)}.photo-slot-label span{display:block;font-size:7px;font-weight:900;letter-spacing:.16em;color:var(--blue);margin-bottom:8px}.photo-slot-label strong{display:block;font-size:13px;color:var(--ink);word-break:break-word}.photo-slot-label em{display:block;font-size:9px;line-height:1.5;color:var(--muted);font-style:normal;margin-top:8px}.photo-slot.has-photo{border:0}.photo-slot.has-photo .photo-slot-label{display:none}
.case-flow{margin-top:24px}.case-spec{display:grid;grid-template-columns:.42fr .58fr;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.case-spec:first-child{border-top:1px solid var(--line)}.case-spec span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.case-spec strong{font-size:10px;color:var(--ink)}
.legal-page{padding-top:150px}.legal-shell{max-width:1080px}.legal-page h1{font-size:clamp(48px,6vw,88px);line-height:.95;letter-spacing:-.055em;color:var(--ink);margin:12px 0 20px}.legal-intro{font-size:16px;line-height:1.7;color:var(--muted);max-width:720px;margin-bottom:70px}.legal-body{border-top:1px solid var(--line)}.legal-body article{display:grid;grid-template-columns:.34fr .66fr;gap:50px;padding:32px 0;border-bottom:1px solid var(--line)}.legal-body h2{font-size:17px;color:var(--ink);margin:0}.legal-body p{font-size:12px;line-height:1.8;color:var(--text);margin:0}
@media(max-width:650px){.photo-slot{min-height:220px}.case-spec{grid-template-columns:1fr;gap:5px}.legal-page{padding-top:105px}.legal-intro{margin-bottom:45px}.legal-body article{grid-template-columns:1fr;gap:10px;padding:24px 0}}

.page-hero{position:relative;isolation:isolate}
.page-hero-photo{position:absolute!important;inset:0!important;z-index:0;width:100%!important;height:100%!important;min-height:100%!important;border:0!important;background:#0a202b center/cover no-repeat!important}
.page-hero-photo:not(.has-photo){background:linear-gradient(135deg,#0b2531,#123b4b)!important}
.page-hero-photo .photo-slot-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:min(360px,82vw);background:rgba(4,25,35,.88);border-color:rgba(255,255,255,.22)}
.page-hero-photo .photo-slot-label strong{color:#fff}.page-hero-photo .photo-slot-label em{color:#bdd0d7}.page-hero-photo .photo-slot-label span{color:#7fd0e3}
.page-hero-photo.has-photo .photo-slot-label{display:none}.page-wash{z-index:1}.page-copy{z-index:2}
@media(max-width:650px){.page-hero-photo .photo-slot-label{width:calc(100% - 44px);min-width:0}}


/* V9 — FULL-BLEED HERO PHOTO FIX */
.page-hero{
    position:relative;
    min-height:clamp(560px,72vh,760px);
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    isolation:isolate;
    background:#061923;
}
.page-hero-photo{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    display:block!important;
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
}
.page-hero-photo:not(.has-photo){
    background:linear-gradient(135deg,#0a2532 0%,#123a4b 52%,#071923 100%)!important;
}
.page-hero .page-wash{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none;
    background:
      linear-gradient(90deg,rgba(3,15,22,.94) 0%,rgba(3,15,22,.72) 42%,rgba(3,15,22,.34) 72%,rgba(3,15,22,.16) 100%),
      linear-gradient(180deg,rgba(3,15,22,.06) 0%,rgba(3,15,22,.18) 55%,rgba(3,15,22,.68) 100%)!important;
}
.page-hero .page-copy{
    position:relative!important;
    z-index:2!important;
    width:100%;
    padding-top:150px;
    padding-bottom:64px;
}
.page-hero-photo .photo-slot-label{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    z-index:3!important;
    width:min(420px,calc(100% - 48px));
    min-width:0!important;
    padding:20px!important;
    text-align:center;
    background:rgba(5,24,34,.86)!important;
    border:1px solid rgba(255,255,255,.22)!important;
    backdrop-filter:blur(10px);
}
.page-hero-photo.has-photo .photo-slot-label{
    display:none!important;
}
.page-hero-photo.has-photo{
    background-color:#061923!important;
}
.page-hero .crumb,
.page-hero .eyebrow,
.page-hero h1,
.page-hero p{
    position:relative;
    z-index:2;
}
.page-hero h1{
    color:#fff!important;
    text-shadow:0 2px 22px rgba(0,0,0,.18);
}
.page-hero p{
    color:#d7e4e8!important;
}
.page-hero .crumb{
    color:#b7c8cf!important;
}
html[data-theme=light] .page-hero h1{
    color:#fff!important;
}
html[data-theme=light] .page-hero p{
    color:#d7e4e8!important;
}
html[data-theme=light] .page-hero .crumb{
    color:#b7c8cf!important;
}
html[data-theme=light] .page-hero-photo:not(.has-photo){
    background:linear-gradient(135deg,#244653 0%,#436c7a 52%,#102a35 100%)!important;
}
@media(max-width:900px){
    .page-hero{
        min-height:620px;
    }
    .page-hero .page-copy{
        padding-top:125px;
        padding-bottom:48px;
    }
    .page-hero .page-wash{
        background:
          linear-gradient(90deg,rgba(3,15,22,.90) 0%,rgba(3,15,22,.64) 62%,rgba(3,15,22,.24) 100%),
          linear-gradient(180deg,rgba(3,15,22,.10) 0%,rgba(3,15,22,.28) 58%,rgba(3,15,22,.78) 100%)!important;
    }
}
@media(max-width:650px){
    .page-hero{
        min-height:560px;
    }
    .page-hero-photo{
        background-position:center center!important;
    }
    .page-hero .page-copy{
        padding-top:108px;
        padding-bottom:38px;
    }
    .page-hero-photo .photo-slot-label{
        width:calc(100% - 34px)!important;
        padding:17px!important;
    }
}


/* V10 — HERO REAL IMAGE VISIBILITY FIX */
.page-hero-photo{
    background-color:#0a202b!important;
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
}
.page-hero-photo.has-photo{
    background-color:#061923!important;
}
/* Placeholder gradient only while the requested file does not exist. */
.page-hero-photo:not(.has-photo){
    background-image:linear-gradient(135deg,#0b2531 0%,#123b4b 52%,#071923 100%)!important;
}
/* When JS confirms the file exists, inline background-image must win. */
.page-hero-photo.has-photo[style]{
    background-image:var(--hero-image, none)!important;
}

/* V11 — REAL <img> FULL HERO, NO BACKGROUND-IMAGE LOGIC */
.page-hero{
  position:relative!important;
  min-height:clamp(570px,72vh,760px)!important;
  display:flex!important;
  align-items:flex-end!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#071923!important;
}
.hero-media-real{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#133646,#071923)!important;
}
.hero-media-img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
  display:block!important;
}
.hero-media-real.missing .hero-media-img{display:none!important}
.hero-missing{
  display:none;
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  z-index:1;
  width:min(420px,calc(100% - 40px));
  padding:18px;
  text-align:center;
  background:rgba(5,24,34,.88);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
}
.hero-media-real.missing .hero-missing{display:block}
.hero-missing span,.hero-missing strong,.hero-missing em{display:block}
.hero-missing span{font-size:7px;letter-spacing:.15em;color:#78cee1;font-weight:900}
.hero-missing strong{font-size:14px;margin-top:7px}
.hero-missing em{font-size:9px;color:#bdd0d7;font-style:normal;margin-top:7px}

.page-hero .page-wash{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:
    linear-gradient(90deg,rgba(3,15,22,.76) 0%,rgba(3,15,22,.52) 42%,rgba(3,15,22,.20) 72%,rgba(3,15,22,.08) 100%),
    linear-gradient(180deg,rgba(3,15,22,.02) 0%,rgba(3,15,22,.08) 55%,rgba(3,15,22,.54) 100%)!important;
  pointer-events:none!important;
}
.page-hero .page-copy{
  position:relative!important;
  z-index:2!important;
  padding-top:150px!important;
  padding-bottom:62px!important;
}
.page-hero h1{color:#fff!important}
.page-hero p{color:#dce7ea!important}
.page-hero .crumb{color:#c0d0d6!important}
@media(max-width:650px){
  .page-hero{min-height:560px!important}
  .hero-media-img{object-position:center center!important}
  .page-hero .page-copy{padding-top:105px!important;padding-bottom:38px!important}
  .page-hero .page-wash{
    background:
      linear-gradient(90deg,rgba(3,15,22,.70) 0%,rgba(3,15,22,.42) 68%,rgba(3,15,22,.16) 100%),
      linear-gradient(180deg,rgba(3,15,22,.02) 0%,rgba(3,15,22,.10) 50%,rgba(3,15,22,.65) 100%)!important;
  }
}

.cookie-center{
  position:fixed!important;z-index:3000!important;inset:auto 24px 24px auto!important;
  width:min(620px,calc(100vw - 48px))!important;background:transparent!important;
  backdrop-filter:none!important;padding:0!important;pointer-events:none!important;
}
.cookie-center[hidden]{display:none!important}
.cookie-dialog{position:relative;width:100%!important;max-height:82vh;overflow:auto;background:var(--surface)!important;border:1px solid var(--line)!important;box-shadow:0 28px 90px rgba(0,0,0,.28)!important;padding:28px 28px 24px!important;pointer-events:auto!important}
.cookie-close{position:absolute;right:14px;top:12px;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:24px;cursor:pointer;z-index:2}
.cookie-dialog h2{padding-right:42px}
@media(max-width:650px){
 .cookie-center{inset:auto 0 0 0!important;width:100%!important}
 .cookie-dialog{max-height:78vh!important;border-left:0!important;border-right:0!important;border-bottom:0!important;padding:24px 20px 20px!important}
 .cookie-buttons{grid-template-columns:1fr!important}
}

/* V15 FINAL — balanced mobile technology list */
.tech-follow-label{display:none}
@media(max-width:900px){
  .capability-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1px!important;
    background:var(--line)!important;
    border:1px solid var(--line)!important;
  }
  .capability-row{
    min-height:112px!important;
    padding:16px!important;
    margin:0!important;
    border:0!important;
    background:var(--surface)!important;
  }
  .capability-row .cap-meta{
    min-height:78px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  .capability-row .cap-meta>span{
    font-size:8px!important;
    margin-bottom:14px!important;
  }
  .capability-row .cap-meta h2{
    font-size:17px!important;
    line-height:1.08!important;
    margin:0!important;
  }
  .capability-row .cap-meta p{
    display:none!important;
  }
  .capability-row .cap-action{
    align-self:end!important;
  }
  .tech-follow-label{
    display:block!important;
    grid-column:1/-1!important;
    background:var(--bg)!important;
    color:var(--blue)!important;
    font-size:9px!important;
    line-height:1!important;
    letter-spacing:.14em!important;
    font-weight:900!important;
    padding:26px 0 10px!important;
    margin:-1px -1px 0!important;
  }
  .tech-follow{
    min-height:100px!important;
  }
  /* Supporting processes are informational, not interactive. */
  .tech-follow .cap-action{
    display:none!important;
  }
}
@media(max-width:380px){
  .capability-list{grid-template-columns:1fr!important}
  .tech-follow-label{grid-column:1!important}
}

/* V16 — BRAND + FOOTER HOME */
.brand-text small{
  white-space:nowrap;
  letter-spacing:.13em!important;
}
.footer-bottom .footer-home{
  color:#fff!important;
  font-weight:800!important;
}
.footer-bottom .footer-home::before{
  content:"← ";
  color:var(--blue);
}
@media(max-width:650px){
  .brand-text small{
    font-size:5px!important;
    letter-spacing:.10em!important;
  }
}

/* V17 — HOMEPAGE SUPPORT TECHNOLOGIES MOBILE BALANCE */
@media(max-width:900px){
  .technology-section .support-line-mobile-balanced{
    position:relative;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1px!important;
    margin-top:48px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.18)!important;
  }
  .technology-section .support-line-mobile-balanced::before{
    content:attr(data-label);
    position:absolute;
    left:0;
    top:-31px;
    color:#78cfe2;
    font-size:9px;
    line-height:1;
    letter-spacing:.14em;
    font-weight:900;
    text-transform:uppercase;
  }
  .technology-section .support-line-mobile-balanced .support-item{
    min-height:104px!important;
    padding:15px 16px!important;
    margin:0!important;
    border:0!important;
    background:var(--navy)!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  .technology-section .support-line-mobile-balanced .support-item span{
    font-size:8px!important;
    margin-bottom:22px!important;
    color:#78cfe2!important;
  }
  .technology-section .support-line-mobile-balanced .support-item b{
    margin:0!important;
    font-size:17px!important;
    line-height:1.1!important;
    color:#fff!important;
  }
}
@media(max-width:380px){
  .technology-section .support-line-mobile-balanced{
    grid-template-columns:1fr!important;
  }
}

/* V17 — Footer Home belongs to the INDEVO shortcut column */
.footer-cols .footer-home{
  color:inherit!important;
  font-weight:inherit!important;
}
.footer-cols .footer-home::before{
  content:none!important;
}
.footer-bottom .footer-home{display:none!important}

/* V18 — MAKE 05–08 SECONDARY AND COMPACT ON MOBILE */
@media(max-width:900px){
  .technology-section .support-line-mobile-balanced{
    margin-top:42px!important;
  }

  .technology-section .support-line-mobile-balanced::before{
    top:-26px!important;
    font-size:8px!important;
    letter-spacing:.12em!important;
  }

  .technology-section .support-line-mobile-balanced .support-item{
    min-height:74px!important;
    padding:11px 12px!important;
    justify-content:flex-start!important;
  }

  .technology-section .support-line-mobile-balanced .support-item span{
    font-size:7px!important;
    margin-bottom:12px!important;
    line-height:1!important;
  }

  .technology-section .support-line-mobile-balanced .support-item b{
    font-size:13px!important;
    line-height:1.12!important;
    font-weight:800!important;
    letter-spacing:-.01em!important;
  }
}

@media(max-width:650px){
  .technology-section .support-line-mobile-balanced .support-item{
    min-height:68px!important;
    padding:10px 11px!important;
  }

  .technology-section .support-line-mobile-balanced .support-item b{
    font-size:12px!important;
  }
}

@media(max-width:380px){
  .technology-section .support-line-mobile-balanced{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .technology-section .support-line-mobile-balanced .support-item{
    min-height:64px!important;
  }

  .technology-section .support-line-mobile-balanced .support-item b{
    font-size:11px!important;
  }
}


/* V19 — MOBILE FULL CONTENT
   Mobile keeps all meaningful technical copy visible.
   Layout may be compact, but content is not removed. */

@media(max-width:900px){

  /* Capability / technology cards */
  .capability-row .cap-meta p{
    display:block!important;
    margin:10px 0 0!important;
    font-size:10px!important;
    line-height:1.55!important;
    color:var(--muted)!important;
    max-width:100%!important;
  }

  .capability-row{
    align-items:start!important;
  }

  /* Homepage technology selector captions */
  .tech-caption p{
    display:block!important;
  }

  /* Supporting technology cards */
  .support-item p,
  .support-item small{
    display:block!important;
  }

  /* Domain / solution cards */
  .domain-copy p{
    display:block!important;
    margin-top:8px!important;
    font-size:10px!important;
    line-height:1.55!important;
  }

  /* Process cards */
  .process-rail article p,
  .process-band-grid p{
    display:block!important;
    font-size:10px!important;
    line-height:1.55!important;
  }

  /* Project / realisation cards */
  .project-copy p,
  .case-body>p{
    display:block!important;
  }

  /* Quality / certification */
  .certificate-spread p,
  .quality-docs span,
  .qp-list p{
    display:block!important;
  }

  /* About / values */
  .values-rail p,
  .about-cap-grid p,
  .about-copy p{
    display:block!important;
  }

  /* Technical-depth cards */
  .depth-grid p{
    display:block!important;
  }

  /* Footer copy must remain readable */
  .footer-cols p{
    display:block!important;
  }
}

/* Phone-specific compact sizing while preserving text */
@media(max-width:650px){

  .capability-row{
    grid-template-columns:1fr 20px!important;
    gap:10px!important;
    padding:17px 0!important;
  }

  .capability-row .cap-meta h2{
    font-size:27px!important;
    line-height:1.02!important;
  }

  .capability-row .cap-meta p{
    font-size:10px!important;
    line-height:1.5!important;
    margin-top:9px!important;
  }

  .cap-img{
    grid-column:1/-1!important;
    height:auto!important;
    aspect-ratio:1.55!important;
    margin-top:12px!important;
  }

  .domain-copy p{
    font-size:9.5px!important;
  }

  .process-rail article p,
  .process-band-grid p{
    font-size:9.5px!important;
  }

  .project-copy p,
  .case-body>p{
    font-size:10.5px!important;
    line-height:1.6!important;
  }

  .values-rail p,
  .about-cap-grid p,
  .depth-grid p{
    font-size:9.5px!important;
    line-height:1.55!important;
  }
}


/* V20 — MOBILE CARD ALIGNMENT / VISUAL RHYTHM */
@media(max-width:900px){

  /* Capability grids: equal card rhythm */
  .capability-list{
    align-items:stretch!important;
  }

  .capability-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    align-content:start!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    background:var(--surface)!important;
    border:1px solid var(--line)!important;
    overflow:hidden!important;
  }

  .capability-row .cap-meta{
    order:2!important;
    padding:18px 18px 20px!important;
    min-height:210px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    background:var(--surface)!important;
  }

  .capability-row .cap-meta>span{
    display:block!important;
    margin:0 0 15px!important;
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.08em!important;
  }

  .capability-row .cap-meta h2{
    margin:0!important;
    font-size:clamp(21px,3.8vw,29px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
    min-height:2.08em!important;
    display:flex!important;
    align-items:flex-start!important;
  }

  .capability-row .cap-meta p{
    display:block!important;
    margin:13px 0 0!important;
    font-size:10px!important;
    line-height:1.58!important;
    color:var(--muted)!important;
    max-width:100%!important;
  }

  .capability-row .cap-img{
    order:1!important;
    grid-column:1!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1.5!important;
    margin:0!important;
    overflow:hidden!important;
    background:var(--surface2)!important;
  }

  .capability-row .cap-img img,
  .capability-row .cap-img .photo-slot{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }

  .capability-row .cap-arrow{
    position:absolute!important;
    right:17px!important;
    top:calc((100% / 2) + 20px)!important;
    z-index:2!important;
  }

  .capability-row{
    position:relative!important;
  }

  /* About / technical-depth / value grids */
  .depth-grid,
  .about-cap-grid,
  .values-rail{
    align-items:stretch!important;
  }

  .depth-grid article,
  .about-cap-grid article,
  .values-rail>div{
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .depth-grid h3,
  .about-cap-grid h3,
  .values-rail h3{
    min-height:2.2em!important;
  }

  /* Project cards */
  .case-study,
  .project-story{
    align-items:stretch!important;
  }

  .case-body,
  .project-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }

  /* Certificate cards */
  .certificate-spread article{
    height:100%!important;
  }
}

@media(max-width:650px){

  /* Two-column capability cards where present */
  .capability-list{
    gap:10px!important;
    background:transparent!important;
    border:0!important;
  }

  .capability-row{
    border:1px solid var(--line)!important;
  }

  .capability-row .cap-meta{
    min-height:200px!important;
    padding:16px 15px 18px!important;
  }

  .capability-row .cap-meta h2{
    font-size:22px!important;
    min-height:2.08em!important;
  }

  .capability-row .cap-meta p{
    font-size:9.5px!important;
    line-height:1.52!important;
  }

  .capability-row .cap-img{
    aspect-ratio:1.42!important;
  }

  .capability-row .cap-arrow{
    right:14px!important;
    top:calc(41% + 16px)!important;
  }
}

/* On narrow phones, one column prevents crushed copy */
@media(max-width:470px){
  .capability-list{
    grid-template-columns:1fr!important;
  }

  .capability-row .cap-meta{
    min-height:0!important;
  }

  .capability-row .cap-meta h2{
    min-height:0!important;
  }

  .capability-row .cap-arrow{
    top:auto!important;
    bottom:20px!important;
  }
}

/* V21 — QUALITY CERTIFICATE IMAGES: never crop ISO artwork */
@media(max-width:900px){
  .certificate-spread .cert-visual,
  .certificate-spread .certificate-image,
  .certificate-spread figure{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    overflow:visible!important;
    background:#fff!important;
  }

  .certificate-spread .cert-visual img,
  .certificate-spread .certificate-image img,
  .certificate-spread figure img,
  .certificate-spread article img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  .certificate-spread article{
    overflow:hidden!important;
  }
}

/* V22 — REAL FIX FOR QUALITY ISO ARTWORK
   Quality images are loaded as .photo-slot backgrounds, not <img>.
   Therefore override the background itself. */
.certificate-paper{
  min-height:0!important;
  background:#fff!important;
}

.certificate-paper .photo-slot{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1 / 1!important;
  background-color:#fff!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  overflow:hidden!important;
}

.certificate-paper .photo-slot.has-photo{
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  border:0!important;
}

@media(max-width:900px){
  .certificate-paper .photo-slot,
  .certificate-paper .photo-slot.has-photo{
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    height:auto!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center center!important;
  }
}

@media(max-width:650px){
  .certificate-paper .photo-slot,
  .certificate-paper .photo-slot.has-photo{
    min-height:0!important;
    aspect-ratio:1 / 1!important;
  }
}


/* ===== MOBILE LANGUAGE DROPDOWN ===== */
@media (max-width: 1080px) {

  .nav-actions > .langs {
    display: flex !important;
    position: relative;
    width: 40px;
    height: 40px;
    overflow: visible;
    z-index: 2000;
  }

  .nav-actions > .langs a {
    display: none;
    width: 40px;
    height: 40px;
    place-items: center;
    padding: 0;
    font-size: 9px;
    font-weight: 900;
    background: var(--surface);
    border: 1px solid var(--line);
    color: var(--muted);
    text-decoration: none;
  }

  /* aktuálny jazyk je vždy viditeľný */
  .nav-actions > .langs a.on {
    display: grid;
    position: relative;
    z-index: 3;
    color: var(--red);
    border-color: var(--line);
  }

  /* otvorený dropdown */
  .nav-actions > .langs.open a {
    display: grid;
  }

  /* ostatné jazyky sa zobrazia pod aktuálnym */
  .nav-actions > .langs.open a:not(.on) {
    position: absolute;
    left: 0;
    z-index: 2;
  }

  /* po JS presunutí .on na prvé miesto */
  .nav-actions > .langs.open a:nth-child(2) {
    top: 40px;
  }

  .nav-actions > .langs.open a:nth-child(3) {
    top: 80px;
  }

  .nav-actions {
    display: flex;
    align-items: center;
    gap: 6px;
  }
}