/* Shared light/dark theme and immersive reference cards. */
.theme-toggle{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid #d8e2e9;border-radius:50%;color:#143653;background:#f5f8fb;cursor:pointer;padding:10px}
.theme-toggle svg{width:22px;height:22px}.theme-toggle .sun-icon{display:none}
[data-theme=dark] .theme-toggle .moon-icon{display:none}[data-theme=dark] .theme-toggle .sun-icon{display:block}
.theme-toggle:hover{border-color:#4c99cd}.theme-toggle:focus-visible{outline:2px solid #69b8ef}
.team{grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin-inline:auto;gap:32px}
.person .portrait.irem img{object-fit:cover;object-position:50% 50%}
.references-stage{background:radial-gradient(ellipse at 15% 10%,#153d55 0,transparent 55%),#06131f;padding-top:35px}
.reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;perspective:1600px}
.reference-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:330px;padding:28px;border:1px solid #53738b66;border-radius:14px;background:linear-gradient(140deg,#173a50cc,#091c2c);color:#eff7fe;transform-style:preserve-3d;transition:transform .25s ease-out,box-shadow .3s,border-color .3s;box-shadow:0 24px 50px #0003}
.reference-card:first-child{grid-column:1/-1;min-height:350px}
.reference-card:hover,.reference-card:focus-visible{border-color:#7bbbdf;box-shadow:0 28px 65px #0005;z-index:1}
.reference-topline{display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;letter-spacing:.15em;color:#a2bbcd;transform:translateZ(16px)}
.reference-topline>span:last-child{font-size:1.4rem;letter-spacing:0}
.reference-logo{align-self:center;width:min(330px,90%);min-height:135px;padding:30px 34px;margin:24px 0 34px;background:#fff;border-radius:9px;display:flex;align-items:center;justify-content:center;transform:translateZ(45px);box-shadow:0 14px 0 #34556c77,0 30px 40px #0004}
.reference-logo img{width:auto;max-width:100%;height:auto;max-height:74px;object-fit:contain}
.reference-logo strong{color:#103151;font-size:1.65rem;text-align:center;line-height:1.15;letter-spacing:-.035em}
.reference-card:first-child .reference-logo{width:min(450px,90%);min-height:145px}
.reference-caption{margin-top:auto;padding-top:24px;border-top:1px solid #7596ab40;transform:translateZ(20px);display:flex;justify-content:space-between;align-items:end;gap:20px}
.reference-caption h2{font-size:1.4rem;line-height:1.3;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere}
.reference-caption>span{font-size:.875rem;color:#adc5d6;line-height:1.4}
[data-theme=dark]{color-scheme:dark;--navy:#e0edf7;--blue:#83bae0;--paper:#0b1d2c;--line:#284459}
[data-theme=dark] body{background:#081824;color:#e0edf7}
[data-theme=dark] header,[data-theme=dark] .mobile-nav{background:#0b1e2e;color:#d9ebf7}
[data-theme=dark] .langs{color:#dceefb;background:#0b1e2e}
[data-theme=dark] .theme-toggle{color:#cbe9fc;background:#16344b;border-color:#315269}
[data-theme=dark] header .brand{background:#fff;border-radius:3px}
[data-theme=dark] .desktopnav a.active,[data-theme=dark] .desktopnav a:hover{color:#8ac7f2}
[data-theme=dark] .mobile-nav a{border-color:#233e52}
[data-theme=dark] .soft,[data-theme=dark] .product-section,[data-theme=dark] .market-section{background:#0b1e2e}
[data-theme=dark] .process-section{background:#081824}
[data-theme=dark] .product,[data-theme=dark] .product-body,[data-theme=dark] .spec,[data-theme=dark] .person{background:#112a3d;border-color:#31516a}
[data-theme=dark] .product .image-wrap{background:linear-gradient(130deg,#203e54,#122b3f)}
[data-theme=dark] .product-tags span{background:#1c3d56;color:#c3e4fc;border-color:#315773}
[data-theme=dark] .product-number,[data-theme=dark] .eyebrow{color:#8ebcd9}
[data-theme=dark] p,[data-theme=dark] .product p,[data-theme=dark] .person-info p,[data-theme=dark] .step p{color:#b6ccdc}
[data-theme=dark] .role,[data-theme=dark] .contact-line,[data-theme=dark] .expertise,[data-theme=dark] .bio-source{color:#a6cce7}
[data-theme=dark] .product .text-link,[data-theme=dark] .expertise,[data-theme=dark] .fact,[data-theme=dark] .step{border-color:#31516a}
[data-theme=dark] .market-card{background:#112b40;border-color:#33556c}
[data-theme=dark] .market-card:hover{background:#193a53}
[data-theme=dark] .market-card p,[data-theme=dark] .market-card>div,[data-theme=dark] .section-head>p{color:#b4ccdd}
[data-theme=dark] .market-card>div{border-color:#35566d}
[data-theme=dark] .spec h3{color:#b1dbfa}
[data-theme=dark] .product-detail-photo{background:#16364d;border-color:#345974}
[data-theme=dark] .form-grid input,[data-theme=dark] .form-grid select,[data-theme=dark] .form-grid textarea{background:#102c41;color:#e1eef8;border-color:#45647b}
[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#99b2c5}
[data-theme=dark] .form-result{background:#103c42;border-color:#387079}
[data-theme=dark] #rfq-error{background:#3f2029;color:#ffdce1;border-color:#975967}
[data-theme=dark] .btn{background:#a6d6f5;color:#092a41;border-color:#a6d6f5}
[data-theme=dark] .btn.outline{background:transparent;color:#daeeff;border-color:#95bdd9}
[data-theme=dark] .year{color:#8bbadb}
[data-theme=dark] .skip{background:#17384f;color:#e6f4fd}
@media(max-width:1400px){.header .desktopnav{display:none!important}.header .menu-toggle{display:block!important}.mobile-nav.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:calc(100dvh - 92px);overflow-y:auto;padding:12px 28px 24px}.mobile-nav a{padding:12px;min-height:44px}}
@media(min-width:1401px){.mobile-nav.open{display:none}}
@media(max-width:760px){
 .header{grid-template-columns:minmax(0,1fr) 52px 40px 40px;gap:4px}
 .header .langs{width:52px;max-width:52px}.header .theme-toggle,.header .menu-toggle{width:40px;height:44px;min-width:0;padding:9px}
 .header .brand{max-width:200px}.header .brand-image{width:100%}
 .mobile-nav.open{max-height:calc(100dvh - 76px);padding:10px 18px 20px}
 .team{grid-template-columns:minmax(0,1fr);gap:26px}
 .references-stage{padding:20px 0 60px}.reference-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .reference-card,.reference-card:first-child{min-height:315px;padding:23px;grid-column:auto}
 .reference-caption{display:block}.reference-caption h2{font-size:1.3rem;margin-bottom:8px}
 .reference-logo,.reference-card:first-child .reference-logo{min-height:120px;padding:25px;margin-top:25px;width:90%}
}
@media(max-width:360px){.header{grid-template-columns:minmax(0,1fr) 49px 38px 38px;gap:2px}.header .langs{width:49px}.header .theme-toggle,.header .menu-toggle{width:38px}.mobile-nav.open{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.reference-card{transform:none!important;transition:none}.reference-logo,.reference-topline,.reference-caption{transform:none}}

/* Brand and usability audit: exact supplied transparent PNGs, no raster edits. */
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.header .brand{width:265px;max-width:100%;flex-shrink:0;background:transparent;border-radius:0}
.brand-window{position:relative;display:block;width:100%;aspect-ratio:1386/351;overflow:hidden}
.brand .brand-window .brand-image{position:absolute;width:110.82251082%;max-width:none;height:auto;aspect-ratio:auto;left:-5.91630592%;top:-92.02279202%;object-fit:initial;object-position:initial}
header{border-bottom:1px solid #d9e4ed;box-shadow:0 5px 25px #0b2d5805}
.header{min-height:94px;gap:18px}
footer .brand{width:270px;max-width:100%;padding:15px 18px;background:#edf4fa;border-radius:9px}
[data-theme=dark] .header .brand{padding:9px 12px;background:#e8f1f8;border-radius:8px}
[data-theme=dark] header{border-color:#29465b}
.mobile-nav a[aria-current=page]{background:#e8f1f8;color:#0a3658;border-radius:5px;font-weight:600}
[data-theme=dark] .mobile-nav a[aria-current=page]{background:#224761;color:#eef8ff}
.mobile-nav a:focus-visible,.desktopnav a:focus-visible{outline:2px solid #69b8ef;outline-offset:2px}
.product-actions{display:flex;gap:20px;align-items:center;border-top:1px solid #dbe5ed;padding-top:17px;margin-top:24px}
.product .product-actions .text-link{border:0;padding:8px 0;margin:0;flex:1;line-height:1.4;white-space:normal}
.product-rfq{display:inline-flex;align-items:center;gap:20px;border-radius:5px;border:1px solid #bad0e0;padding:9px 14px;min-height:44px;font-size:.875rem;color:#184e73;flex-shrink:0;background:#f0f6fb}
.product-rfq:hover{background:#dfeef8;border-color:#77a6c7}
.product .product-body{padding:28px 30px}.product .product-body p{margin-bottom:0}
.product .image-wrap{padding:24px}.product .image-wrap img{padding:10px}
.reference-card:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,30%),#9cd9ff20,transparent 58%);opacity:0;transition:opacity .35s}
.reference-card:hover:before,.reference-card:focus-visible:before{opacity:1}
.reference-logo{transition:box-shadow .3s}
.reference-card:hover .reference-logo{box-shadow:0 14px 0 #486e8977,0 35px 48px #0005}
.rfq-group{margin:0 0 30px;padding:26px;border:1px solid #d0dfe9;border-radius:10px;min-width:0;background:#fff}
.rfq-group legend{font-size:.875rem;font-weight:600;letter-spacing:.06em;color:#285779;padding:0 10px}
.form-grid .field>span{font-size:.9375rem;line-height:1.45}
.form-grid input,.form-grid textarea,.form-grid select{border-radius:6px;min-height:48px;line-height:1.5}
.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{outline-offset:2px;outline-color:#408fc4}
.form-grid textarea{min-height:135px}.form-foot{margin-top:0}
.form-foot p{line-height:1.7}.form-foot .btn{min-height:52px}
.rfq-aside{padding:30px;border:1px solid #31546e;background:linear-gradient(145deg,#153951,#081e31);box-shadow:0 20px 40px #0615260c}
.rfq-aside a{display:inline-block;min-height:44px;padding-block:6px;color:#c8e8fd}
.form-result{border-radius:8px}.form-result h3{line-height:1.4}
.globe-stage[data-ready=false] canvas{pointer-events:none;visibility:hidden}
.route-note{color:#829eB4}.globe-help{color:#9bb5c9}
.hero-baseline{color:#9ab1c2}.globe-origin span,.globe-origin small{color:#89a9c0}
.market-readout .eyebrow{color:#91bbd7}.market-hubs{color:#97b5ca}
.page-intro .breadcrumb{color:#92abc0}.page-intro .eyebrow{color:#94b5ce}
.footer-grid>div:first-child p{color:#a0b8ca}.footer-grid a:not(.brand){color:#aec8db}.footer-bottom{color:#8eaabc}
.footer-grid h3{font-size:1rem}.footer-grid a:not(.brand){line-height:1.6}
.large-copy,.prose p{line-height:1.85}
[data-theme=dark] .rfq-group{background:#0e2639;border-color:#34546b}
[data-theme=dark] .rfq-group legend{color:#b8dcf5}
[data-theme=dark] .product-actions{border-color:#34546b}
[data-theme=dark] .product-rfq{color:#c9eaff;background:#214861;border-color:#456c85}
[data-theme=dark] .product-rfq:hover{background:#2e5c79}
[data-theme=dark] .rfq-aside p{color:#bbd2e2}
@media(min-width:1000px){.rfq-aside{position:sticky;top:120px}}
@media(max-width:1400px){.header{min-height:88px}.mobile-nav.open{border-top:1px solid #dce7ef;box-shadow:0 20px 30px #06152612}.mobile-nav a{line-height:1.5}}
@media(max-width:760px){
 .header{min-height:80px;gap:5px;grid-template-columns:minmax(0,1fr) 52px 40px 40px}
 .header .brand{width:100%;max-width:230px;min-width:0;margin:0}
 [data-theme=dark] .header .brand{padding:6px 7px}
 .mobile-nav.open{max-height:calc(100dvh - 80px)}
 .rfq-group{padding:20px 16px;margin-bottom:22px}.form-grid{gap:18px}
 .rfq-aside{padding:24px}.product .product-body{padding:23px}
 .product .image-wrap{padding:20px}.product-actions{gap:14px;margin-top:20px}
 .product .product-actions .text-link{font-size:.9375rem}.product-rfq{gap:12px;padding:9px 12px}
 .page-intro{padding-top:40px}.hero-copy>p{max-width:100%}
 .reference-caption{padding-top:20px}.reference-logo{margin-bottom:30px}
 footer .brand{width:270px;padding:14px 17px}
}
@media(max-width:360px){.header{grid-template-columns:minmax(0,1fr) 47px 36px 36px;gap:2px}.header .langs{width:47px}.header .theme-toggle,.header .menu-toggle{width:36px;padding:7px}.product .product-body{padding:20px}.product-rfq{padding:9px 10px;gap:8px}}
@media(hover:none){.reference-card:before{display:none}}
@media(prefers-reduced-motion:reduce){.reference-card:before,.reference-logo{transition:none}}

/* Evidence-led values: native keyboard/touch disclosure with shallow 3D opening. */
.values-accordion{display:grid;gap:12px;perspective:1300px}
.value-card{border:1px solid #cbdce8;background:linear-gradient(125deg,#fff,#edf4f9);border-radius:10px;box-shadow:0 6px 18px #0b2d5805;transition:border-color .25s,box-shadow .25s;min-width:0}
.value-card summary{list-style:none;display:flex;align-items:center;gap:18px;padding:23px 25px;min-height:82px;cursor:pointer;border-radius:10px}
.value-card summary::-webkit-details-marker{display:none}
.value-card summary::marker{content:''}
.value-number{font-size:.875rem;color:#52758e;font-variant-numeric:tabular-nums;letter-spacing:.06em;flex-shrink:0}
.value-card h3{margin:0;flex:1;font-size:1.16rem;line-height:1.4;letter-spacing:-.025em;overflow-wrap:anywhere}
.value-toggle{position:relative;width:28px;height:28px;border:1px solid #a8c1d3;border-radius:50%;flex:0 0 28px}
.value-toggle:before,.value-toggle:after{content:'';position:absolute;background:#315c7a;left:8px;right:8px;height:1px;top:13px}
.value-toggle:after{transform:rotate(90deg);transition:transform .25s}
.value-card[open] .value-toggle:after{transform:rotate(0deg)}
.value-card[open]{border-color:#6b9dbf;box-shadow:0 18px 36px #0b2d5815}
.value-card[open] summary{color:#0b4166}
.value-card summary:focus-visible{outline:2px solid #4799d0;outline-offset:3px}
.value-explanation{padding:0 25px 25px 64px;transform-origin:50% 0;animation:unfold-value .38s ease-out both}
.value-explanation p{font-size:1rem;line-height:1.8;color:#496578;margin-bottom:18px}
.value-explanation .text-link{font-size:.9375rem;white-space:normal;min-height:44px}
@keyframes unfold-value{from{opacity:0;transform:perspective(800px) rotateX(-9deg) translateY(-8px)}to{opacity:1;transform:perspective(800px) rotateX(0) translateY(0)}}
[data-theme=dark] .value-card{background:linear-gradient(125deg,#17354a,#102638);border-color:#35566d}
[data-theme=dark] .value-card[open]{border-color:#6eacd3;box-shadow:0 20px 35px #0003}
[data-theme=dark] .value-card[open] summary{color:#c7e8fe}
[data-theme=dark] .value-number{color:#a2c4dc}
[data-theme=dark] .value-explanation p{color:#bdd3e2}
[data-theme=dark] .value-toggle{border-color:#739cb8}
[data-theme=dark] .value-toggle:before,[data-theme=dark] .value-toggle:after{background:#b5d9f1}
/* Display the latest original transparent wordmark directly on the dark surface. */
[data-theme=dark] .header .brand,[data-theme=dark] footer .brand{background:transparent;padding:0;border-radius:0;box-shadow:none}
@media(max-width:760px){.value-card summary{padding:20px;gap:14px;min-height:76px}.value-card h3{font-size:1.125rem}.value-explanation{padding:0 20px 22px}.value-explanation p{font-size:1rem}.values-accordion{gap:12px}}
@media(prefers-reduced-motion:reduce){.value-explanation{animation:none}.value-card,.value-toggle:after{transition:none}}
/* User-requested unbacked PNG wordmark in both themes and all placements. */
.header .brand,footer .brand,[data-theme=dark] .header .brand,[data-theme=dark] footer .brand{background:none;padding:0;border:0;border-radius:0;box-shadow:none}
.brand-window,.brand .brand-window .brand-image{background:none;filter:none;box-shadow:none}
