/* Shared production footer, matching the main website. */
.global-footer{display:block;margin:0;padding:0;border:0;font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.5;letter-spacing:normal;text-align:left}
.global-footer,.global-footer *{box-sizing:border-box}
footer:where(.global-footer)>div{display:block;width:auto;gap:normal;flex-direction:initial;border:0;padding:0}
:where(.global-footer) nav{display:block;height:auto;gap:normal;border:0;align-items:normal}
.global-footer svg{flex-shrink:0}
#motion-toggle{display:none!important}
body.shared-footer-visible :is(#back-to-top,#back-top){visibility:hidden!important;pointer-events:none!important}
.global-footer--compact .global-footer-scene{min-height:0;padding:0}
.global-footer--compact .global-footer-intro{grid-template-columns:220px 1fr;align-items:center;gap:10px 38px;min-height:0;padding-top:28px;padding-bottom:28px;display:grid}
.global-footer--compact .global-footer-logo{grid-row:span 2;width:205px;margin:0}
.global-footer--compact .global-footer-tagline{color:#dcf4fa;margin:0;font-size:20px;line-height:1.4}
.global-footer--compact .global-footer-lead{max-width:none;margin:0;font-size:13px;line-height:1.6}
.global-footer--compact .global-footer-panorama{opacity:.22}
.global-footer--compact .global-footer-directory{padding-top:32px;padding-bottom:32px}
.global-footer--compact .global-footer-nav a{min-height:36px;font-size:14px;line-height:1.5}
.global-footer--compact .global-footer-email{font-size:clamp(16px,1.6vw,24px)}
.global-footer--compact .global-footer-phone{font-size:16px}
.global-footer--compact .global-footer-contact{min-height:44px;font-size:13px}
.global-footer--compact .global-footer-bottom-inner{min-height:76px;padding-block:18px}
@media (width<=780px){.global-footer--compact .global-footer-intro{grid-template-columns:1fr;gap:14px}
.global-footer--compact .global-footer-logo{grid-row:auto;width:185px}
.global-footer--compact .global-footer-tagline{font-size:19px}
.global-footer--compact .global-footer-directory{row-gap:30px}
.global-footer--compact .global-footer-bottom-inner{min-height:0}}
.global-footer{--footer-cyan:#17cff0;--footer-line:#256071;isolation:isolate;color:#e7eff5;background:#001923;position:relative;overflow:hidden}
.global-footer a{color:inherit;text-decoration:none}
.global-footer a:hover{color:var(--footer-cyan)}
.global-footer a:focus-visible{outline-offset:5px;outline:2px solid #8eeeff}
.global-footer-wrap{width:min(1760px,91%);margin-inline:auto}
.global-footer-scene{isolation:isolate;border-bottom:1px solid #14b5d3;min-height:clamp(390px,29.5vw,570px);position:relative}
.global-footer-panorama{z-index:-2;pointer-events:none;position:absolute;inset:0 0 0 38%}
.global-footer-panorama img{object-fit:cover;object-position:center 45%;width:100%;height:100%}
.global-footer-scene:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#001923 0% 35%,#001923e0 48%,#00192338 72%,#0019231a);position:absolute;inset:0}
.global-footer-intro{padding-top:clamp(35px,2.8vw,56px);padding-bottom:42px;position:relative}
.global-footer-logo{width:clamp(235px,21vw,340px);display:block}
.global-footer-logo img{width:100%;height:auto}
.global-footer-kicker{color:#d2e3ec;letter-spacing:.3em;text-transform:uppercase;margin:clamp(25px,2.1vw,42px) 0 25px;font-size:clamp(9px,.72vw,13px);font-weight:650;line-height:1.6}
.global-footer-intro h2{color:#f5f8fa;letter-spacing:-.035em;width:max-content;max-width:60%;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,4.8vw,88px);font-weight:400;line-height:1.04;position:relative}
.global-footer-intro h2 span{color:var(--footer-cyan);display:block}
.global-footer-lead{color:#b4c8d7;max-width:48%;margin:22px 0 0;font-size:clamp(14px,1.12vw,20px);line-height:1.55}
.global-footer-disciplines{color:#e1ecf7;letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:18px;margin:0;font-size:clamp(9px,.7vw,12px);font-weight:500;display:flex;position:absolute;top:45px;right:0}
.global-footer-disciplines i{color:var(--footer-cyan);font-style:normal}
.global-footer-directory{grid-template-columns:34% 25% 21% 20%;padding-block:clamp(32px,2.9vw,55px) 24px;display:grid}
.global-footer-directory h2{color:var(--footer-cyan);letter-spacing:.3em;text-transform:uppercase;margin:0 0 22px;font-size:clamp(11px,.86vw,15px);font-weight:650;line-height:1.4}
.global-footer-connect{min-width:0;padding-right:32px}
.global-footer-connect address{font-style:normal}
.global-footer-email{letter-spacing:-.04em;align-items:center;gap:12px;font-size:clamp(16px,1.52vw,27px);font-weight:500;line-height:1.55;display:flex}
.global-footer-email span{overflow-wrap:anywhere;min-width:0}
.global-footer-email svg{width:25px;height:25px;color:var(--footer-cyan);flex-shrink:0}
.global-footer-phone{align-items:center;gap:14px;margin-top:22px;font-size:clamp(15px,1.15vw,20px);line-height:1.5;display:flex}
.global-footer-phone svg{flex-shrink:0;width:26px;height:26px}
.global-footer-contact{border:1px solid var(--footer-cyan);border-radius:3px;justify-content:center;align-items:center;gap:17px;min-height:49px;margin-top:26px;padding:10px 25px;font-size:clamp(13px,1vw,17px);line-height:1.4;transition:background .2s,color .2s;display:inline-flex}
.global-footer-contact svg{width:18px;height:18px}
.global-footer-contact:hover{background:#063443}
.global-footer-nav{border-left:1px solid var(--footer-line);min-width:0;padding-left:clamp(26px,4vw,76px)}
.global-footer-nav ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}
.global-footer-nav a{color:#dce8ef;font-size:clamp(13px,1.05vw,18px);line-height:1.5;display:inline-block}
.global-footer-bottom{border-top:1px solid var(--footer-line)}
.global-footer-bottom-inner{color:#a9c3d4;align-items:center;gap:35px;min-height:78px;padding-block:16px;font-size:clamp(11px,.83vw,14px);line-height:1.5;display:flex}
.global-footer-bottom-inner p{margin:0 auto 0 0}
.global-footer-bottom-inner nav{align-items:center;gap:24px;display:flex}
.global-footer-bottom-inner nav a+a{border-left:1px solid var(--footer-line);padding-left:24px}
.global-footer-top{border:1px solid #9abdd0;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}
.global-footer-top svg{width:20px;height:20px}
.global-footer-top:hover{border-color:var(--footer-cyan);background:#063443}
@media (width>=1950px){.global-footer-scene{min-height:590px}
.global-footer-intro{padding-top:65px}
.global-footer-kicker{margin-top:50px}
.global-footer-intro h2{font-size:90px}}
@media (width<=1100px){.global-footer-wrap{width:calc(100% - 64px)}
.global-footer-scene{min-height:395px}
.global-footer-intro h2{max-width:68%;font-size:clamp(45px,5.4vw,60px)}
.global-footer-lead{max-width:60%;font-size:14px}
.global-footer-directory{grid-template-columns:1fr 1fr 1fr;gap:30px 0}
.global-footer-connect{border-bottom:1px solid var(--footer-line);grid-column:1/-1;grid-template-columns:1fr auto;gap:0 24px;padding-bottom:27px;padding-right:0;display:grid}
.global-footer-connect h2{grid-column:1/-1;margin-bottom:15px}
.global-footer-contact{grid-area:2/2/4;align-self:center;margin:0}
.global-footer-phone{margin-top:13px;font-size:15px}
.global-footer-email{font-size:22px}
.global-footer-nav{padding-left:32px}
.global-footer-nav:nth-child(2){border-left:0;padding-left:0}
.global-footer-nav a{min-height:25px;font-size:14px}
.global-footer-disciplines{gap:10px;font-size:8px}
.global-footer-kicker{max-width:55%;font-size:9px}}
@media (width<=700px){.global-footer-wrap{width:calc(100% - 40px)}
.global-footer-scene{min-height:570px}
.global-footer-intro{padding-top:30px;padding-bottom:230px}
.global-footer-logo{width:235px}
.global-footer-kicker{letter-spacing:.24em;max-width:100%;margin:30px 0 20px;font-size:8px}
.global-footer-intro h2{letter-spacing:-.035em;max-width:100%;font-size:clamp(37px,8.5vw,57px);line-height:1.08}
.global-footer-lead{max-width:340px;margin-top:18px;font-size:14px}
.global-footer-panorama{height:285px;top:auto;bottom:0;left:0}
.global-footer-panorama img{object-position:center 45%}
.global-footer-scene:after{background:linear-gradient(#001923 0% 45%,#001923cc 58%,#0000 82%)}
.global-footer-disciplines{display:none}
.global-footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px;padding-top:30px}
.global-footer-connect{padding-bottom:28px;display:block}
.global-footer-email{gap:8px;font-size:clamp(17px,4.9vw,24px)}
.global-footer-email svg{width:22px;height:22px}
.global-footer-phone{margin-top:17px;font-size:16px}
.global-footer-contact{min-height:48px;margin-top:23px;font-size:14px}
.global-footer-directory h2{letter-spacing:.26em;margin-bottom:15px;font-size:11px}
.global-footer-nav{padding-left:18px}
.global-footer-nav ul{gap:2px}
.global-footer-nav a{align-items:center;min-height:40px;font-size:13px;line-height:1.4;display:flex}
.global-footer-nav:last-child{border-left:0;border-top:1px solid var(--footer-line);grid-column:1/-1;padding:23px 0 0}
.global-footer-nav:last-child ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 18px}
.global-footer-bottom-inner{flex-wrap:wrap;gap:12px 24px;min-height:100px;padding-block:20px;font-size:11px}
.global-footer-bottom-inner p{order:2;width:100%}
.global-footer-bottom-inner nav{gap:18px}
.global-footer-bottom-inner nav a+a{padding-left:18px}
.global-footer-top{margin-left:auto}}
@media (width<=360px){.global-footer-wrap{width:calc(100% - 32px)}
.global-footer-intro h2{font-size:35px}
.global-footer-logo{width:215px}
.global-footer-email{font-size:16px}
.global-footer-nav{padding-left:12px}
.global-footer-nav a{font-size:12px}
.global-footer-directory{column-gap:12px}}
@media (prefers-reduced-motion:reduce){html:has(.global-footer){scroll-behavior:auto}
.global-footer *{transition:none!important}}
.global-footer-cookie-settings{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:0}
.global-footer-cookie-settings:hover{text-decoration:underline}
.global-footer-cookie-settings:focus-visible{outline:2px solid var(--cyan,#00aeef);outline-offset:4px}