/* Operator-authored contact study. The existing blue seam is the organizing line. */
.navigation{border-radius:2px;box-shadow:none;background:rgba(247,248,244,.89);border-color:#ffffff80;padding-inline:26px}
.navigation.scrolled{background:rgba(247,248,244,.93)}
.navigation .logo img{max-height:52px;object-fit:contain;object-position:left center}
.navigation.scrolled .logo img{max-height:48px}
.nav-link{font-size:14px}
.nav-call{background:var(--blue);color:white;border:0;padding:16px 19px;gap:13px;font-size:14px;min-height:48px;transition:background .3s}
.nav-call>i:first-child{color:inherit}
.nav-call:hover{color:white;background:#096a9b}
.nav-call .call-arrow{margin-left:4px;transition:translate .4s var(--ease)}
.nav-call:hover .call-arrow{translate:2px -2px}
.work-dropdown{border-radius:2px}
.closing-image{height:540px}
.closing-image:before{content:"";position:absolute;bottom:0;left:0;right:0;height:28px;background:#23282b;clip-path:polygon(0 0,calc(41% - 28px) 0,41% 100%,0 100%);pointer-events:none}
.closing-image:after{background:linear-gradient(0deg,#23282bd9,transparent 85%),linear-gradient(90deg,#14232a55,transparent)}
.closing-image>div{bottom:85px}
.closing-image p{font-size:clamp(48px,5.5vw,88px)}
.closing-image .round-button{border-radius:0;border-width:0 0 1px;transition:color .4s,background .4s}
.contact{--footer-shift:0px;padding-top:100px;overflow:hidden;isolation:isolate}
.contact-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:#91cce5}
.contact-route .route-spine{fill:none;stroke:white;stroke-width:10;stroke-linecap:butt;stroke-dasharray:1;stroke-dashoffset:var(--route-offset,1)}
.contact-route .route-ink{fill:currentColor;stroke:none}
.dot-baseline{display:inline-block;width:0;height:0;padding:0;vertical-align:baseline}
.js .contact-heading.reveal{opacity:1;transform:none;transition:none}
.contact-heading{margin-top:68px;display:block}
.contact h2{font-size:clamp(62px,8.9vw,148px);letter-spacing:-.065em;line-height:1.08}
.contact h2>span{display:block}
.contact h2>span+span{padding-left:7vw}
.contact h2 em{font-size:1.12em;white-space:nowrap}
.contact-action{padding:52px 0 64px;align-items:flex-end}
.contact-kicker{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#a9b5ba;margin-bottom:18px}
.phone-number{display:inline-flex;align-items:center;gap:30px;font-size:clamp(34px,4.1vw,65px)}
.phone-number i{width:40px;height:40px;color:#91cce5;transition:translate .5s var(--ease)}
.phone-number:hover i{translate:6px -6px}
.contact-action>p{margin:0 0 5px;max-width:310px}
.footer-grid{padding-bottom:55px}
.footer-signature{padding:42px 0 55px;border-top:1px solid #ffffff25;font-size:clamp(76px,14vw,235px);line-height:.94;letter-spacing:-.055em;color:#e3e8e4;user-select:none}
.footer-signature>span{display:block;white-space:nowrap;transform:translateX(var(--footer-shift));will-change:transform}
.footer-signature>span+span{padding-left:15%;transform:translateX(calc(-1 * var(--footer-shift)))}
.footer-signature em{color:#91cce5;font-size:1.13em}
.footer-signature .small-cross{display:inline-block;margin-left:4vw;vertical-align:middle;width:34px;height:34px;transform:rotate(0deg);transition:transform .8s var(--ease)}
.footer-signature .small-cross:before{width:34px;top:16px}
.footer-signature .small-cross:after{height:34px;left:16px}
.contact:hover .footer-signature .small-cross{transform:rotate(90deg)}
.footer-bottom{padding-top:22px;min-height:70px}
@media(min-width:761px) and (max-width:1050px){.nav-call{padding:0}.navigation{padding-inline:18px}.desktop-nav{gap:24px}}
@media(max-width:760px){
 .navigation{padding:8px 14px;border-radius:2px}.nav-call{padding:0;min-height:44px;width:44px}
 .closing-image{height:440px}.closing-image>div{bottom:64px}.closing-image .round-button{position:absolute;right:0;bottom:0;margin:0}
 .closing-image p{font-size:clamp(36px,8.4vw,58px);max-width:90%}
 .contact{padding-top:76px}
 .contact>.section-index{font-size:9px;letter-spacing:.03em}
 .contact-heading{margin-top:40px}.contact h2{font-size:clamp(40px,9vw,68px);line-height:1.16}
 .contact h2>span+span{padding-left:0}.contact h2 em{display:block;padding-left:19vw;font-size:1.4em}
 .contact-action{padding:35px 0 36px}.contact-kicker{font-size:11px;margin-bottom:12px}
 .phone-number{font-size:clamp(31px,8.7vw,60px);gap:18px}.phone-number i{width:29px;height:29px}
 .contact-action>p{margin-top:22px;font-size:14px;max-width:330px}.footer-grid{padding-bottom:32px}
 .footer-signature{font-size:clamp(57px,14.1vw,110px);padding:30px 0 36px;line-height:1.03}
 .footer-signature>span+span{padding-left:7%}.footer-signature .small-cross{display:none}
}
/* All header contents share the shell's timing and keep their own hit areas. */
.navigation{--nav-duration:500ms;transition:top var(--nav-duration) var(--ease),height var(--nav-duration) var(--ease),background var(--nav-duration) var(--ease);align-items:center}
.navigation .logo{display:flex;align-items:center;align-self:center;transition:width var(--nav-duration) var(--ease)}
.navigation .logo img{display:block;transition:max-height var(--nav-duration) var(--ease)}
.navigation .nav-link{transition:font-size var(--nav-duration) var(--ease),padding var(--nav-duration) var(--ease)}
.navigation .nav-call{height:52px;padding-block:0;min-height:44px;align-self:center;transition:height var(--nav-duration) var(--ease),padding var(--nav-duration) var(--ease),font-size var(--nav-duration) var(--ease),background .3s}
.navigation .desktop-nav{align-self:center}
.navigation .nav-link i,.navigation .nav-call i{transition:width var(--nav-duration) var(--ease),height var(--nav-duration) var(--ease),transform .3s,translate .4s}
@media(min-width:761px){
 .navigation.scrolled .logo{width:116px}
 .navigation.scrolled .logo img{max-height:44px}
 .navigation.scrolled .nav-link{font-size:13px;padding-block:12px}
 .navigation.scrolled .nav-call{height:44px;font-size:13px;padding-inline:16px}
 .navigation.scrolled .nav-link i{width:12px;height:12px}
 .navigation.scrolled .nav-call>i:first-child{width:14px;height:14px}
 .navigation.scrolled .nav-call .call-arrow{width:13px;height:13px}
}
@media(min-width:761px) and (max-width:1050px){.navigation.scrolled .nav-call{padding:0}}
@media(max-width:760px){
 .navigation .nav-call{height:44px}
 .navigation .menu-toggle{flex-shrink:0;align-self:center}
 .navigation.scrolled .logo{width:99px}
 .navigation .nav-call>i:first-child{transition:width var(--nav-duration) var(--ease),height var(--nav-duration) var(--ease)}
 .navigation.scrolled .nav-call>i:first-child{width:17px;height:17px}
}
@media(prefers-reduced-motion:reduce){.footer-signature>span{transform:none;will-change:auto}.contact-route .route-spine{stroke-dashoffset:0}}

.site-credit{display:inline-flex;align-items:center;min-height:44px;color:#bac4c8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}