@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter.woff2') format('woff2')}
:root{--ink:#080f1c;--navy:#101e30;--paper:#edf3f4;--cyan:#8de8ee;--orange:#ffab73;--muted:#a9b8c8;--line:#ffffff24;--gutter:clamp(22px,5vw,80px)}
*{box-sizing:border-box}html{scroll-padding-top:104px}body{margin:0}a{text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}::selection{background:var(--cyan);color:var(--ink)}h1,h2,h3,p{margin-top:0}p{margin-bottom:1.15rem}h1,h2,h3{text-wrap:balance;overflow-wrap:anywhere}h1{font-size:clamp(3.5rem,5.4vw,5.7rem);line-height:1.04;letter-spacing:-.065em}h2{font-size:clamp(2.3rem,3.7vw,4rem)}h3{font-size:1.55rem}em{color:var(--cyan);font-style:normal}.section-wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}.eyebrow,.sector-strip,.footer-bottom{font:500 .72rem/1.5 Inter,'Segoe UI',sans-serif;letter-spacing:.1em}.eyebrow{color:var(--cyan);margin-bottom:26px}.muted,.caption{color:var(--muted)}.section-copy{max-width:560px;color:var(--muted);font-size:1.125rem}.text-link a{text-decoration:none;display:inline-flex;align-items:center;gap:18px;min-height:44px}.text-link a:hover{color:var(--cyan)}.wp-block-buttons{gap:12px}.wp-element-button{transition:background .2s,color .2s;min-height:50px}.wp-element-button:hover{background:white;color:var(--ink)}.wp-block-button.is-style-outline>.wp-block-button__link{color:var(--paper);border:1px solid #698594;background:transparent;padding:14px 22px}.wp-block-button.is-style-outline>.wp-block-button__link:hover{background:var(--navy);color:white}
.site-header{position:relative;z-index:20;background:var(--ink);border-bottom:1px solid var(--line)}.header-inner{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{margin:0;line-height:1}.brand a{display:flex;flex-direction:column;justify-content:center;min-height:64px;color:var(--paper);text-decoration:none;position:relative;padding-left:72px}.brand-mark{position:absolute;left:0;top:50%;width:64px;height:64px;transform:translateY(-50%);object-fit:contain;mix-blend-mode:screen}.brand strong{font-size:1.65rem;font-weight:550;letter-spacing:-.07em}.brand span{font-size:.5rem;letter-spacing:.31em;margin-top:7px}.main-nav{font-size:.875rem}.main-nav .wp-block-navigation__container{gap:38px}.main-nav .wp-block-navigation-item__content{padding:12px 0;text-decoration:none}.main-nav .nav-contact .wp-block-navigation-item__content{border:1px solid #506576;padding:11px 18px;border-radius:4px}.main-nav .wp-block-navigation-item__content:hover{color:var(--cyan)}.wp-block-navigation__responsive-container.is-menu-open{background:var(--ink)!important;color:var(--paper)!important;padding:32px!important}.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;align-items:center;justify-content:center}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:1.5rem;padding:14px!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:12px}
.light-section{background:var(--paper);color:var(--ink)}.light-section a:focus-visible,.light-section button:focus-visible{outline-color:#175b70}.light-section .eyebrow{color:#326775}.light-section .section-copy{color:#3d5664}.light-section .text-link a:hover{color:#256772}.intro-section{padding-block:90px 40px}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}.intro-grid h2{font-size:clamp(2.15rem,3.5vw,3.6rem);margin:0}.intro-grid .section-copy{font-size:1.12rem}.sector-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;border-top:1px solid #1736452b;padding-top:28px;margin-top:65px;color:#425b67;font-size:.64rem}.sector-strip p{margin:0}.capabilities-section{padding-block:108px}.section-heading{display:flex;flex-direction:column;padding-bottom:50px}.section-heading h2{margin-bottom:0}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.capability-card{border:1px solid #304252;background:#0d1827;padding:26px 26px 16px;border-radius:6px}.capability-card>.capability-art{margin:-26px -26px 30px;background:linear-gradient(140deg,#102d3b,#0b1524);height:210px;overflow:hidden;border-radius:6px 6px 0 0}.capability-art img{width:100%;height:100%;object-fit:contain}.capability-card .eyebrow{font-size:.72rem;margin-bottom:18px}.capability-card h3{font-size:1.6rem;letter-spacing:-.035em;margin-bottom:18px}.capability-card>p:not(.eyebrow):not(.text-link){font-size:1rem;color:var(--muted);min-height:3.2em}.capability-card .text-link{font-size:.875rem;border-top:1px solid var(--line);padding-top:15px}.capability-links{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;margin-top:35px}.capability-links p{margin:0;font-size:.875rem}.capability-links .eyebrow{margin-right:auto;font-size:.72rem;color:var(--muted)}.approach-section{padding-block:100px;background:#101d2d;border-block:1px solid var(--line)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach-copy h2{margin-bottom:30px}.approach-copy .section-copy{font-size:1rem}.approach-step{border-top:1px solid #405362;padding:25px 0 16px;display:grid;grid-template-columns:78px 1fr;column-gap:20px}.approach-step h3{font-size:1.4rem;margin-bottom:14px}.approach-step .eyebrow{margin:4px 0 0;font-size:.72rem}.approach-step>p:last-child{grid-column:2;color:var(--muted);font-size:1rem}.contact-cta{padding-block:100px;background:radial-gradient(ellipse at 80% 100%,#265a6645,transparent 60%)}.cta-inner{position:relative}.contact-cta h2{font-size:clamp(3rem,5vw,5rem);margin-bottom:25px}.contact-cta .wp-block-buttons{position:absolute;right:var(--gutter);top:50%}.contact-cta .section-copy{font-size:1rem}.site-footer{border-top:1px solid var(--line);padding-top:65px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:60px}.footer-brand>.muted{font-size:.875rem;margin:25px 0 40px}.footer-heading{font-size:.8rem;letter-spacing:0;margin:8px 0 20px;font-weight:600}.footer-links p{font-size:.83rem;margin:0}.footer-links a{display:inline-flex;min-height:44px;align-items:center;text-decoration:none}.footer-links a:hover{color:var(--cyan)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:22px;margin-top:40px;color:var(--muted);font-size:.64rem;letter-spacing:0}.footer-bottom p{margin:0}
.page-hero{padding-block:100px 85px;background:radial-gradient(ellipse at 90% 30%,#20495f48,transparent 50%)}.page-hero h1{font-size:clamp(3rem,6.4vw,6.5rem);margin-bottom:35px}.page-hero .section-copy{max-width:650px}.service-jump-links{display:flex;flex-wrap:wrap;gap:6px 35px;margin-top:50px}.service-jump-links p{margin:0;font-size:.8rem}.service-jump-links a{border-bottom:1px solid #698191}.service-row{padding-block:65px;display:grid;grid-template-columns:1.1fr 1fr;gap:95px;border-bottom:1px solid #1736452b;scroll-margin-top:25px}.service-row:last-child{border:0}.service-title h2{font-size:clamp(2rem,3.4vw,3.4rem);margin-bottom:25px}.service-subtitle{max-width:360px;color:#43616e;font-size:1rem}.service-detail{font-size:1rem}.service-detail ul{padding-left:21px;margin:25px 0}.service-detail li{margin:10px 0}.service-detail li::marker{color:#2c7c8b}.service-detail .text-link{font-size:.85rem;font-weight:600}.about-section{padding-block:80px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-copy h2{font-size:clamp(2rem,3.3vw,3.5rem);margin-bottom:28px}.about-copy p{font-size:1rem;color:#3d5664}.about-art{border-radius:5px;background:#0b1726;margin:0;aspect-ratio:1}.about-art img{width:100%;height:100%;object-fit:contain}.caption{font-size:.7rem;margin-top:16px;color:#435d69}.engagement-section{padding-block:95px}.engagement-section h2{margin-bottom:45px}.engagement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.engagement-card{border-top:1px solid #527080;padding-top:26px}.engagement-card .eyebrow{font-size:.65rem}.engagement-card h3{font-size:1.5rem}.engagement-card>p:last-child{font-size:1rem;color:var(--muted)}.contact-hero{padding-bottom:90px}.contact-email{font-size:clamp(1.75rem,4.2vw,4.5rem);letter-spacing:-.05em;margin-block:45px 15px}.contact-email a{text-decoration:none;border-bottom:1px solid #668798;display:inline-block;max-width:100%;overflow-wrap:anywhere}.contact-email span{color:var(--cyan);margin-left:15px}.contact-hero>.muted{font-size:.8rem}.contact-info{padding-block:85px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact-grid h2{margin-bottom:25px}.contact-details{border-left:1px solid #8aa4ae;padding:25px 0 25px 60px}.contact-details h3{font-size:1.5rem}.contact-details p{font-size:1rem}.contact-guidance .section-copy{font-size:1rem}.standard-page{padding-block:95px;min-height:65vh}.standard-page .wp-block-post-title{margin-bottom:40px}.standard-page .wp-block-post{padding-bottom:40px}.editor-styles-wrapper .wp-block{max-width:none}.editor-styles-wrapper .wp-block-navigation{min-height:44px}

@media(max-width:1100px){.main-nav .wp-block-navigation__container{gap:25px}.intro-grid{gap:45px}.capability-card{padding:20px}.capability-card>.capability-art{margin:-20px -20px 25px}.capability-card h3{font-size:1.35rem}.approach-grid{gap:55px}.service-row{gap:45px}.footer-grid{gap:35px}.about-grid{gap:45px}}
@media(max-width:800px){.intro-section{padding-block:70px 35px}.intro-grid{grid-template-columns:1fr;gap:26px}.sector-strip{margin-top:35px;justify-content:flex-start;column-gap:35px}.capabilities-section{padding-block:70px}.capability-grid{grid-template-columns:1fr;gap:22px}.capability-card{display:grid;grid-template-columns:1fr 1.3fr;column-gap:25px;padding:28px}.capability-card>.capability-art{grid-row:1/5;height:100%;margin:-28px 0 -28px -28px}.capability-card .eyebrow{margin-bottom:12px}.capability-card h3{font-size:1.7rem}.capability-card p{min-height:0!important}.capability-card .text-link{grid-column:2;margin-bottom:0}.capability-links{gap:12px 30px}.capability-links .eyebrow{width:100%}.approach-section{padding-block:70px}.approach-grid{grid-template-columns:1fr;gap:30px}.contact-cta{padding-block:70px}.contact-cta .wp-block-buttons{position:static;margin-top:32px}.footer-grid{grid-template-columns:1.5fr 1fr;gap:30px}.footer-links:last-child{grid-column:1/3}.footer-bottom{margin-top:35px}.page-hero{padding-block:65px}.service-row{grid-template-columns:1fr;gap:10px;padding-block:50px}.service-subtitle{max-width:none}.service-detail{max-width:620px}.about-grid{grid-template-columns:1fr}.about-visual{max-width:520px}.engagement-grid{grid-template-columns:1fr;gap:20px}.engagement-card{padding-top:24px}.engagement-card .eyebrow{margin-bottom:15px}.engagement-card h3{margin-bottom:15px}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-details{border-left:0;border-top:1px solid #8aa4ae;padding:35px 0 0}}
@media(max-width:599px){.header-inner{min-height:82px}.brand strong{font-size:1.5rem}.brand a{padding-left:64px}.brand-mark{width:56px;height:56px}.intro-grid h2{font-size:2.1rem}.intro-grid .section-copy{font-size:1rem}.sector-strip{font-size:.7rem;gap:18px 25px}.capability-card{display:block;padding:25px}.capability-card>.capability-art{height:185px;margin:-25px -25px 25px}.capability-card h3{font-size:1.55rem}.capability-card .text-link{margin-top:24px}.capability-links{display:block}.capability-links .eyebrow{margin-bottom:12px}.approach-step{grid-template-columns:64px 1fr;gap:15px}.approach-step h3{font-size:1.2rem}.approach-step>p:last-child{font-size:1rem}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/3}.footer-brand>.muted{margin-bottom:10px}.footer-links:last-child{grid-column:auto}.footer-links p{font-size:.75rem;overflow-wrap:anywhere}.footer-heading{font-size:.7rem}.footer-bottom{flex-direction:column;gap:8px}.page-hero h1{font-size:clamp(2.65rem,11vw,4.2rem)}.page-hero .section-copy{font-size:1rem}.service-jump-links{gap:2px 25px;margin-top:30px}.service-jump-links p{font-size:.875rem}.service-row h2{font-size:2.25rem}.contact-email{font-size:clamp(1.5rem,7vw,2.7rem)}.contact-email span{margin-left:4px}.contact-info,.about-section{padding-block:60px}.engagement-section{padding-block:65px}}




.hero-story{position:relative;background:#080f1c;--reveal:0;--spread:0;--copy:0;overflow:clip}
.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 74% 48%,#12394a66,transparent 50%),radial-gradient(ellipse at 70% 85%,#27203b44,transparent 48%)}
.hero-film{position:absolute;inset:0;height:620px;z-index:-1;background:#080f1c}
.hero-film video{width:100%;height:100%;object-fit:cover;visibility:hidden}
.hero-film:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#040b1855,#040b186b 40%,#080f1cef);pointer-events:none}
.hero-opening{position:relative;text-align:center;padding-block:130px 100px;z-index:2;text-shadow:0 1px 4px var(--ink),0 0 12px var(--ink)}
.hero-opening h1{max-width:1100px;margin:0 auto;font-size:clamp(3.1rem,6.7vw,7rem);line-height:1.07;letter-spacing:-.062em;text-shadow:0 1px 3px var(--ink),0 0 28px var(--ink)}
.hero-opening .eyebrow{color:#d4faf9;font-size:.72rem;letter-spacing:.19em;margin-bottom:28px}
.hero-opening em{color:#b6f5f5}
.hero-visual{position:relative;height:600px;width:100%;pointer-events:none}
.hero-visual canvas{position:absolute;inset:0;width:100%;height:100%}
.scene-fallback{margin:0;width:100%;height:100%}.scene-fallback img{width:100%;height:100%;object-fit:contain}.is-rendered .scene-fallback{visibility:hidden}
.hero-copy{position:relative;padding-block:30px 120px;z-index:3}
.hero-copy h2{font-size:clamp(2.8rem,4.8vw,5.2rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:25px}
.hero-copy .eyebrow{font-size:.68rem;margin-bottom:22px}
.hero-description{max-width:420px;font-size:1rem;line-height:1.7;color:#bed0dc;margin-bottom:22px}
.hero-disciplines{color:#98bdc9;font-size:.73rem;line-height:1.9;max-width:440px;margin-bottom:28px}
.hero-copy .wp-block-buttons{max-width:510px;gap:12px}.hero-copy .wp-element-button{font-size:.8rem;padding:14px 18px}.hero-copy .wp-block-button.is-style-outline>.wp-block-button__link{padding:13px 18px}
.hero-interface{position:absolute;inset:auto var(--gutter) 24px;z-index:5;display:flex;align-items:center;gap:20px;border-top:1px solid #c5e9fa30;padding-top:14px;color:#d1e1e9;font-size:.66rem;letter-spacing:.04em}
.hero-skip{color:inherit;text-decoration:none;min-height:44px;display:flex;align-items:center;gap:14px}.hero-skip:hover{color:var(--cyan)}
.motion-control{position:relative;z-index:6;flex:none;display:grid;place-items:center;width:24px;height:24px;min-height:24px;padding:0;border:0;background:transparent;color:#b9cbd5;opacity:.65;cursor:pointer}.motion-control:after{content:"";position:absolute;inset:-10px}.motion-control:hover,.motion-control:focus-visible{opacity:1;color:#edf3f4}.motion-control:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.motion-control:before{content:"";display:block;width:7px;height:9px;border-inline:2px solid currentColor}.motion-control[aria-pressed=true]:before{width:9px;border:0;background:currentColor;clip-path:polygon(12% 0,100% 50%,12% 100%)}.motion-control[hidden]{display:none}
.hero-chapters{display:none;gap:26px;margin:auto}.hero-chapters span{opacity:.45}.hero-chapters b{font-weight:500;margin-left:9px}.hero-scroll{display:none}
.scene-active:not(.reduced-motion){height:340svh;min-height:1900px}
.scene-active:not(.reduced-motion) .hero{height:100svh;position:sticky;top:0;min-height:520px}
.scene-active:not(.reduced-motion) .hero-film{height:100%;opacity:calc(1 - var(--scene));will-change:opacity}
.scene-active:not(.reduced-motion) .hero-opening{position:absolute;left:50%;top:50%;width:100%;padding-block:0;transform:translate(-50%,calc(-50% - var(--reveal)*60px));opacity:calc(1 - var(--reveal)*1.8);pointer-events:none}
.scene-active:not(.reduced-motion) .hero-visual{position:absolute;inset:0;width:100%;height:100%;transform:translate(calc(var(--spread)*21%),calc(var(--reveal)*-4%)) scale(calc(1 - var(--spread)*.08));will-change:transform}
.scene-active:not(.reduced-motion) .hero-copy{position:absolute;left:0;top:48%;padding-block:0;transform:translateY(calc(-40% + (1 - var(--copy))*35px));opacity:var(--copy);visibility:hidden;pointer-events:none}
.scene-active[data-phase=layers]:not(.reduced-motion) .hero-copy{visibility:visible;pointer-events:auto}
.scene-active:not(.reduced-motion) .hero-copy>*{max-width:min(37vw,490px)}
.scene-active .hero-chapters,.scene-active .hero-scroll{display:flex}
.hero-story[data-phase=landscape] .hero-chapters span:nth-child(1),.hero-story[data-phase=terrain] .hero-chapters span:nth-child(2),.hero-story[data-phase=layers] .hero-chapters span:nth-child(3){opacity:1;color:#b6f5f5}
.scene-active .hero-scroll{opacity:calc(1 - var(--copy))}
.reduced-motion .hero-opening{padding-block:130px 40px}.reduced-motion .hero-visual{height:560px}.reduced-motion .hero-film video{visibility:hidden}.reduced-motion .hero-chapters,.reduced-motion .hero-scroll{display:none}
.editor-styles-wrapper .hero-film{display:none}.editor-styles-wrapper .hero-opening{padding-block:60px}.editor-styles-wrapper .hero-interface{position:relative}.editor-styles-wrapper .hero-copy{padding-block:40px}.editor-styles-wrapper .hero-visual{height:450px}
@media(min-width:1600px){.scene-active:not(.reduced-motion) .hero-copy{left:max(0px,calc((100% - 1440px)/2));width:1440px}.hero-opening h1{font-size:7rem}}
@media(max-width:1100px){.hero-chapters{gap:16px}.hero-copy .wp-block-buttons{gap:8px}.hero-copy .wp-element-button{font-size:.73rem;padding:12px 14px}.hero-copy .wp-block-button.is-style-outline>.wp-block-button__link{padding:11px 14px}.hero-copy h2{font-size:3.5rem}.hero-description{font-size:.92rem}}
@media(max-width:800px){.hero-opening{padding-block:110px 70px}.hero-opening h1{font-size:clamp(2.8rem,8.5vw,5.3rem)}.hero-opening .eyebrow{font-size:.6rem;letter-spacing:.1em}.hero-visual{height:470px}.hero-copy{padding-bottom:110px}.hero-interface{inset-inline:22px;bottom:16px;gap:12px}.hero-chapters{font-size:.56rem;gap:13px}.hero-chapters b{display:none}.hero-skip{font-size:.68rem}.scene-active:not(.reduced-motion){height:310svh;min-height:1700px}.scene-active:not(.reduced-motion) .hero-visual{transform:translateY(calc(var(--spread)*-22%)) scale(calc(1 - var(--spread)*.08))}.scene-active:not(.reduced-motion) .hero-copy{top:auto;bottom:86px;transform:translateY(calc((1 - var(--copy))*25px))}.scene-active:not(.reduced-motion) .hero-copy>*{max-width:520px}.hero-copy h2{font-size:clamp(2.2rem,6.5vw,3.4rem);margin-bottom:14px}.hero-copy .eyebrow{margin-bottom:12px}.hero-description{font-size:1rem;line-height:1.6;margin-bottom:14px}.hero-disciplines{font-size:.66rem;margin-bottom:18px}.hero-copy .wp-element-button{font-size:.7rem;min-height:46px}.reduced-motion .hero-visual{height:430px}}
@media(max-width:380px){.hero-copy .eyebrow{font-size:.6rem}.hero-copy h2{font-size:2.2rem}.hero-description{font-size:1rem}.hero-disciplines{font-size:.62rem}.hero-copy .wp-block-buttons{gap:7px}.hero-copy .wp-element-button{padding:12px 10px;font-size:.65rem}.hero-copy .wp-block-button.is-style-outline>.wp-block-button__link{padding:11px 10px}}
@media(max-height:650px) and (min-width:801px){.hero-copy h2{font-size:2.7rem}.hero-copy .eyebrow{margin-bottom:12px}.hero-description{font-size:.8rem;margin-bottom:12px}.hero-disciplines{margin-bottom:12px}.hero-opening h1{font-size:4.7rem}}
@media(max-height:700px) and (max-width:800px){.scene-active:not(.reduced-motion) .hero-visual{transform:translateY(calc(var(--spread)*-21%)) scale(calc(1 - var(--spread)*.52))}.hero-copy .eyebrow{display:none}.hero-copy h2{font-size:2rem}.hero-disciplines{display:none}.hero-copy .wp-block-buttons{margin-top:10px}.hero-copy{bottom:78px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}


.home .site-header{position:absolute;inset:0 0 auto;background:var(--ink);border-bottom:1px solid var(--line)}


@media(max-height:519px){.reduced-motion .hero-visual{height:470px}.reduced-motion .hero-interface{position:relative;inset:auto;margin:0 var(--gutter) 24px}.reduced-motion .hero-copy{bottom:auto!important;padding-block:25px 40px}.reduced-motion .hero-copy h2{font-size:3rem}.reduced-motion .hero-description{font-size:1rem}.reduced-motion .hero-copy>*{max-width:600px}}

@media(max-width:800px){.scene-active .hero-scroll{display:none}}
