@layer base{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--white);font-synthesis:none}body{min-width:320px;color:var(--ink);background:var(--white);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.6}img{max-width:100%;display:block}figure,p{margin:0}a{color:inherit}h1{color:var(--navy-deep);font-family:var(--font);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2.75rem,6.1vw,6rem);font-weight:700;line-height:1.07}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.skip-link{z-index:9999;opacity:0;color:var(--white);background:var(--navy-deep);pointer-events:none;border-radius:8px;padding:10px 14px;font-weight:600;text-decoration:none;transition:transform .14s,opacity .14s;position:fixed;top:0;left:16px;transform:translateY(-160%)}.skip-link:focus,.skip-link:focus-visible{opacity:1;pointer-events:auto;transform:translateY(16px)}.container{width:min(calc(100% - var(--gutter) - var(--gutter)), var(--max));margin-inline:auto}.section-title{color:var(--green);font-family:var(--font-display);letter-spacing:.075em;text-transform:uppercase;margin:0;font-size:clamp(1.08rem,1.12vw,1.2rem);font-weight:500;line-height:1.2}.section-title--gold{color:var(--gold)}.button-row{flex-wrap:wrap;gap:12px;display:flex}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:12px 21px;font-weight:600;text-decoration:none;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{color:var(--white);background:var(--green)}.button--primary:hover{background:var(--green-hover)}.brand-lockup{width:min(100%,13.25rem);color:var(--muted);flex-direction:column;flex:none;align-items:center;gap:.42rem;text-decoration:none;display:flex}.brand-lockup img{width:100%;height:auto}.brand-lockup span{width:max-content;max-width:100%;font-family:var(--font-display);letter-spacing:.025em;text-align:center;white-space:nowrap;font-size:clamp(.48rem,.58vw,.66rem);font-weight:600;line-height:1}.brand-lockup--compact{width:clamp(9rem,13vw,11.5rem)}.site-header{z-index:100;backdrop-filter:blur(14px);background:#fffffff7;border-bottom:1px solid #022c5c17;position:sticky;top:0}.header-inner{justify-content:flex-start;align-items:center;gap:24px;min-height:5.75rem;display:flex}.desktop-nav{align-items:center;gap:clamp(17px,2.2vw,31px);font-size:.875rem;font-weight:600;display:flex}.desktop-language{flex:none;margin-left:auto}.desktop-nav a{color:var(--navy-deep);letter-spacing:.035em;text-transform:uppercase;text-decoration:none;position:relative}.desktop-nav>a:after{background:var(--gold);content:"";height:2px;transition:right .16s;position:absolute;bottom:-9px;left:0;right:100%}.desktop-nav>a:hover:after,.desktop-nav>a.active:after{right:0}.language-pill{border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:.875rem;font-weight:600}.mobile-menu{display:none}.mobile-menu summary{cursor:pointer;align-content:center;gap:5px;width:46px;height:46px;padding:11px;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{background:var(--navy);height:2px;transition:transform .16s;display:block}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.72}strong{color:var(--navy-deep);font-weight:600}h2,h3{color:var(--navy-deep);font-family:var(--font);text-wrap:balance;margin:0;line-height:1.07}h2{letter-spacing:-.035em;font-size:clamp(2.05rem,4vw,3.75rem);font-weight:700}h3{letter-spacing:-.02em;font-size:clamp(1.25rem,2vw,1.65rem);font-weight:600}.section{padding:clamp(76px,9vw,126px) 0}.section--soft{background:var(--surface)}.section--navy{color:var(--white);background:var(--navy-deep)}.eyebrow{color:var(--green);letter-spacing:.15em;text-transform:uppercase;margin:0 0 13px;font-size:.76rem;font-weight:600}.eyebrow--gold{color:#f2bd57}.section-subtitle{max-width:38ch;color:var(--navy-deep);font-family:var(--font);letter-spacing:-.022em;margin-top:10px;font-size:clamp(1.9rem,2.25vw,2.25rem);font-weight:500;line-height:1.2}.subsection-title{color:var(--navy-deep);margin:0 0 24px;font-size:clamp(1.55rem,2vw,2rem);line-height:1.15}.section-heading{grid-template-columns:minmax(0,1.08fr) minmax(360px,.62fr);align-items:start;gap:54px;margin-bottom:46px;display:grid}.section-heading>p{max-width:58ch;color:var(--muted);align-self:start;margin-top:34px;font-size:1.05rem;font-weight:400;line-height:1.65}.long-copy{color:var(--muted);gap:20px;font-size:1.06rem;display:grid}.button--outline-dark{color:var(--navy);background:var(--white);border-color:#022c5c3d}.button--light{color:var(--navy-deep);background:var(--white)}.text-link{color:var(--navy);align-items:center;gap:9px;font-weight:600;text-decoration:none;display:inline-flex}.text-link span{transition:transform .15s}a:hover .text-link span,.text-link:hover span{transform:translate(3px)}.text-link--muted{color:var(--muted)}.mobile-menu nav a{color:var(--navy-deep);letter-spacing:.035em;text-transform:uppercase;text-decoration:none;position:relative}.mobile-menu nav{border-bottom:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);padding:15px 22px 24px;display:grid;position:absolute;top:74px;left:0;right:0}.mobile-menu nav a{border-bottom:1px solid var(--line);padding:14px 4px;font-weight:600}.mobile-menu nav a:last-child{text-align:center;border-bottom:0;margin-top:12px}.site-footer{border-top:1px solid var(--line);background:#fbfcfd;padding:58px 0 22px}.footer-grid{grid-template-columns:minmax(250px,1.45fr) repeat(3,minmax(125px,.55fr));align-items:start;gap:clamp(34px,4.5vw,70px);display:grid}.footer-brand{justify-items:start;width:auto;max-width:23rem;display:grid}.footer-brand .brand-lockup{width:min(100%,13.5rem)}.footer-column{align-content:start;gap:15px;display:grid}.footer-column h2{color:var(--navy-deep);font-family:var(--font-display);letter-spacing:.095em;text-transform:uppercase;font-size:.76rem;font-weight:600;line-height:1.3}.footer-column a{color:var(--navy-deep);font-size:.9rem;font-weight:500;line-height:1.45;text-decoration:none}.footer-column a:hover{color:var(--green-hover)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:38px;padding-top:20px;font-size:.8125rem;line-height:1.5;display:flex}.page-hero{background:var(--white);padding:clamp(68px,7vw,104px) 0 clamp(52px,4vw,64px)}.page-hero__grid{grid-template-columns:minmax(0,1fr) minmax(300px,.68fr);align-items:center;gap:65px;display:grid}.page-hero__headline{letter-spacing:-.025em;max-width:21ch;margin-top:14px;font-size:clamp(2.25rem,3.9vw,3.75rem);font-weight:600;line-height:1.08}.page-hero__intro{max-width:52ch;color:var(--muted);font-size:1.125rem;line-height:1.58}.breadcrumbs{color:var(--muted);margin-bottom:clamp(1.5rem,3vw,2.4rem);font-size:.78rem}.breadcrumbs ol{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{color:var(--gold);content:"/";margin-left:.5rem}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:var(--green-hover)}.project-detail-hero .breadcrumbs,.project-detail-plain .breadcrumbs{color:#ffffffb8}.project-detail-hero .breadcrumbs a,.project-detail-plain .breadcrumbs a{color:inherit}.contact-cta{color:var(--white);background:var(--navy);padding:clamp(52px,5.5vw,72px) 0}.contact-cta__inner{grid-template-columns:1fr auto;align-items:end;gap:48px;display:grid}.contact-cta h2{max-width:850px;color:var(--white)}.contact-cta__label{margin-bottom:14px}.contact-cta__description{color:#ffffffc2;margin-top:15px;font-size:1.02rem}.not-found{text-align:center;place-items:center;min-height:70vh;display:grid}.not-found__inner{max-width:680px}.not-found__inner .brand-lockup{margin:0 auto 3rem}.not-found__inner h1 span{color:var(--muted);font-size:.7em}.not-found p{color:var(--muted);margin:18px 0 26px}.not-found__inner .button-row{justify-content:center}}@layer page{.corporate-copy{max-width:72rem;display:grid}.corporate-section{border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,.55fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding:clamp(2rem,4vw,3.5rem) 0;display:grid}.corporate-section:first-child{padding-top:0}.corporate-section h2{font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.2}.corporate-section__content{color:var(--muted);gap:1rem;font-size:1.02rem;line-height:1.7;display:grid}.corporate-section__content p,.corporate-section__content address{margin:0}.corporate-section__content address{color:var(--navy-deep);font-style:normal;font-weight:600}.corporate-email{width:fit-content;color:var(--green);text-underline-offset:.25em;font-weight:600}.corporate-email:hover{color:var(--green-hover)}.corporate-updated{color:var(--muted);margin:2rem 0 0;font-size:.875rem}}@layer responsive{@media (width<=61.25rem){.desktop-nav,.desktop-language{display:none}.mobile-menu{margin-left:auto;display:block}.header-inner{min-height:5rem}.brand-lockup--compact{width:9.5rem}}@media (width<=45rem){.container{width:min(calc(100% - 40px), var(--max))}.section-title{font-size:1.02rem}.home-hero{min-height:calc(100svh - 92px)}.home-hero__picture img{object-position:55% 50%}.home-hero:before{background:linear-gradient(#011d3e3b 0%,#011d3eba 40%,#011d3ef5 100%)}.home-hero__content{padding:clamp(108px,16svh,138px) 0 58px}.home-hero__caption{display:none}.home-hero h1{max-width:12ch}.button-row,.button-row .button{width:100%}.brand-lockup--compact{width:8.8rem}}.process-section+.section{padding-top:clamp(60px,5vw,88px)}.about-hero__grid .page-hero__headline{margin-top:0}@media (width<=61.25rem){.section-heading,.page-hero__grid,.ceo-grid,.solution-detail-hero__grid,.dual-list-grid,.solution-proof-grid,.project-scope-grid,.market-intro-grid,.contact-grid{grid-template-columns:1fr}.corporate-section{grid-template-columns:1fr;gap:1.25rem}.section-heading>p{margin-top:0}.page-hero__grid{gap:28px}.page-hero__headline{max-width:22ch}.process-grid{grid-template-columns:1fr}.process-step{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:27px 0}.process-step:last-child{border-bottom:0}.project-card--featured{grid-template-rows:minmax(430px,1fr) auto;grid-template-columns:1fr}.project-list-item{grid-template-columns:minmax(280px,.72fr) minmax(0,1fr)}.project-list-item__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.project-list-item__facts>:last-child{grid-column:1/-1}.project-meta-grid{grid-template-columns:repeat(2,1fr)}.project-meta-item:nth-child(2){border-right:0}.project-meta-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:minmax(240px,1.2fr) repeat(2,minmax(140px,.7fr))}.footer-language{grid-column:2/-1}.ceo-photo{justify-self:start}.product-groups-grid,.market-capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supply-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 0}.solution-detail-hero__media{max-width:46rem}}@media (width<=45rem){.section{padding:68px 0}.section.process-section{padding-top:32px;padding-bottom:0}.section-subtitle{font-size:clamp(1.65rem,8vw,2rem)}.page-hero{padding:58px 0 52px}.page-hero__grid{gap:24px}.page-hero__headline{margin-top:12px}.page-hero__intro{font-size:1.0625rem}.about-hero__label{margin-bottom:1.25rem}.about-intro{gap:14px}.ceo-photo{justify-self:center;width:min(100%,14rem)}.solutions-grid--overview,.projects-layout,.product-groups-grid,.market-capabilities-grid,.related-links--horizontal,.gallery-grid,.form-grid{grid-template-columns:1fr}.solution-overview-card__media,.solution-detail-hero__media{aspect-ratio:4/3}.solution-detail-hero__grid{gap:2rem}.supply-process-grid{grid-template-columns:1fr}.supply-process-grid li+li{border-left:0;padding-left:0}.project-card--featured{grid-column:auto;grid-template-rows:minmax(310px,1fr) auto}.project-card--featured .project-card__media{aspect-ratio:4/3;min-height:0}.project-card__media{min-height:290px}.project-card__location--full{display:none}.project-card__location--short{display:inline}.project-list-item{grid-template-columns:1fr;min-height:0}.project-list-item__media{aspect-ratio:4/3;min-height:0}.project-list-item__content{padding:28px 24px 32px}.project-list-item__meta{gap:5px;display:grid}.project-list-item__facts{margin-top:24px;padding-top:20px}.project-meta-grid{grid-template-columns:1fr}.project-meta-item,.project-meta-item:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}.project-meta-item:last-child{border-bottom:0}.gallery-item,.gallery-item--wide{aspect-ratio:4/3;grid-column:auto;min-height:0}.contact-cta__inner{grid-template-columns:1fr;align-items:start}.contact-cta__inner .button{width:fit-content}.contact-form{padding:22px}.form-field--full{grid-column:auto}.site-footer{padding-top:46px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px}.footer-brand,.footer-language{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.site-header,.site-footer,.contact-cta,.button,.mobile-menu{display:none!important}body{color:#000;background:#fff}}}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/inter-latin-400-700-rc12.woff2)format("woff2-variations")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500 600;font-display:swap;src:url(/assets/fonts/montserrat-latin-500-600-rc12.woff2)format("woff2-variations")}:root{--navy:#022c5c;--navy-deep:#011d3e;--green:#0a7f4e;--green-hover:#087747;--gold:#df9e26;--ink:#142033;--muted:#647184;--surface:#f4f6f8;--surface-2:#eaf0f4;--line:#dce2e8;--white:#fff;--max:1480px;--gutter:clamp(20px, 3vw, 40px);--radius:18px;--radius-lg:28px;--shadow:0 24px 70px #022c5c24;--font:"Inter", "Segoe UI", Arial, Helvetica, sans-serif;--font-display:"Montserrat", "Inter", "Segoe UI", Arial, Helvetica, sans-serif}
