@font-face{font-family:Inter;src:url('assets/inter.woff2') format('woff2');font-weight:100 900;font-display:swap} :root{--navy:#0a1f3d;--blue:#2e68ff;--mineral:#a7b1bd;--paper:#f4f2ec;--graphite:#252827;--line:rgba(10,31,61,.19);--serif:'Tiempos Headline','Times New Roman',Times,serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h2{font-size:clamp(38px,4.2vw,67px);line-height:1.02}em{font-weight:400}p{line-height:1.8}::selection{background:var(--blue);color:white}:focus-visible{outline:2px solid var(--blue);outline-offset:6px}.skip{position:fixed;top:-70px;left:20px;z-index:100;background:var(--paper);padding:16px}.skip:focus{top:15px}.reading-progress{position:fixed;top:0;left:0;height:2px;background:var(--blue);width:0;z-index:60}.header{height:115px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;top:0;left:0;width:100%;z-index:20;gap:35px}.brand{width:145px;flex-shrink:0}.brand img{width:100%;height:auto;filter:brightness(0) saturate(100%)}nav{display:flex;gap:35px;margin-left:auto}nav a,.header-cta{font-size:11px;letter-spacing:.11em;text-transform:uppercase}.header-cta{border-bottom:1px solid;padding:12px 0;margin-left:25px}.header-cta span{padding-left:25px;font-size:21px}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;bottom:-8px;height:1px;width:0;background:currentColor;transition:width .3s}nav a:hover:after{width:100%}.menu-toggle{display:none}.hero{min-height:820px;height:min(900px,100svh);position:relative;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;right:0;top:0;width:69%;height:100%;z-index:-3;background:var(--navy)}.hero-photo>img{width:100%;height:100%;object-position:59% center;filter:saturate(.65);animation:photo-in 1.7s ease-out both}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,242,236,.12),transparent 35%,rgba(6,20,35,.35))}.photo-note{position:absolute;bottom:80px;right:7%;z-index:1;color:white;font-size:9px;letter-spacing:.22em;line-height:2.2}.photo-note span{display:block;opacity:.7}.hero-paper{position:absolute;inset:0;background:var(--paper);clip-path:polygon(0 0,72% 0,40% 100%,0 100%);z-index:-2}.hero-content{padding:190px 0 90px 5%;width:66%;position:relative;z-index:2}.eyebrow{font-family:var(--sans);font-size:10px;line-height:1.5;letter-spacing:.19em;text-transform:uppercase;font-weight:500}.line:before{content:'';display:block;width:30px;height:1px;background:currentColor;margin-bottom:19px}.hero h1{font-size:clamp(60px,5.9vw,92px);line-height:.98;margin-top:28px;letter-spacing:-.055em}.hero h1 em{white-space:nowrap}.hero-description{max-width:425px;font-size:14px;line-height:1.9;margin-top:28px;color:#505967}.hero-actions{display:flex;gap:27px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:19px 25px;background:var(--navy);border:1px solid var(--navy);color:var(--paper);font-size:10px;text-transform:uppercase;letter-spacing:.12em;min-height:57px;transition:background .25s,transform .25s}.button span{font-size:24px;line-height:.7;transition:transform .25s}.button:hover{background:var(--blue);border-color:var(--blue)}.button:hover span{transform:translate(3px,-3px)}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:10px;letter-spacing:.07em;border-bottom:1px solid;padding:10px 0;line-height:1.4}.text-link span{font-size:21px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-2px)}.hero-curves{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;z-index:1;fill:none;stroke-width:1.2}.blue-curve{stroke:var(--blue)}.white-curve{stroke:#f4f2ec}.hero-curves path{stroke-dasharray:1600;stroke-dashoffset:1600;animation:draw 2.4s .5s ease forwards}.hero-bottom{position:absolute;bottom:30px;left:5%;display:flex;gap:75px;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.hero-bottom a{display:flex;gap:22px}.section{padding:105px 7%}.section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:55px}.quiet{opacity:.58}.intro-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:10%;align-items:end}.intro-grid>p{max-width:410px;color:#5a6067;font-size:14px}.services{margin-top:60px;border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line)}.service summary{list-style:none;display:flex;align-items:center;gap:35px;padding:29px 0;cursor:pointer}.service summary::-webkit-details-marker{display:none}.service-number{font-size:10px;align-self:flex-start;margin-top:12px;opacity:.6}.service-title{font-family:var(--serif);font-size:clamp(28px,3.1vw,46px);letter-spacing:-.04em}.amp{color:#6b7480}.service-symbol{margin-left:auto;font-size:34px;font-weight:300;transition:transform .25s}.service[open] .service-symbol{transform:rotate(90deg);color:var(--blue)}.service-body{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:0 0 38px 50px}.service-promise{font-family:var(--serif);font-size:28px;line-height:1.2;max-width:310px}.service-body>div>p{color:#5a6067;font-size:13px}.tags{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.tags li{font-size:10px;border:1px solid var(--line);padding:7px 10px}.about{display:grid;grid-template-columns:1fr 1fr;min-height:730px;background:#e8e7e2}.about-photo{position:relative;overflow:hidden;min-height:600px}.about-photo img{position:absolute;inset:0;width:100%;height:100%;filter:saturate(.3)}.image-caption{position:absolute;bottom:35px;left:40px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:white;background:rgba(10,31,61,.65);padding:10px}.about-copy{padding:80px 13% 75px}.about-copy h2{margin:30px 0;font-size:clamp(40px,4.2vw,64px)}.about-copy>p:not(.eyebrow){font-size:13px;color:#535b66;margin:18px 0}.about-copy .text-link{margin-top:12px}.method{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;padding-bottom:85px}.method .section-label{margin-bottom:45px}.method h2{font-size:clamp(45px,5.2vw,78px);position:relative;z-index:1}.method-bridge{position:absolute;top:80px;right:-180px;width:80%;height:280px;fill:none;stroke:#2e68ff;stroke-width:.8;opacity:.7;pointer-events:none}.method-bridge path:first-child{stroke:#a7b1bd}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8%;margin-top:90px;position:relative}.method-grid article{border-top:1px solid #617080;padding-top:18px}.step{display:flex;justify-content:space-between;font-size:10px;color:#b9c4d0}.step>span{font-size:23px}.method-grid h3{font-size:64px;margin:30px 0 15px}.method-grid p{color:#b6c0cb;font-size:13px;max-width:280px;min-height:90px}.method-grid .eyebrow{display:block;margin-top:25px;color:#a7b1bd}.experience-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px;gap:50px}.experience-heading>p{max-width:320px;font-size:14px;color:#5a6067}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.case{padding:29px 35px 24px;background:#e9e9e4;position:relative;overflow:hidden;transition:background .3s}.case:nth-child(2),.case:nth-child(3){background:#e2e5e5}.case:hover{background:#dce3e9}.case-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.case-top>span:last-child{font-size:10px;opacity:.5}.case h3{font-size:36px;margin:15px 0}.case>p{font-size:13px;max-width:350px;min-height:46px;color:#5a6067}.case-link{display:flex;justify-content:space-between;align-items:center;background:none;border:0;border-top:1px solid var(--line);width:100%;padding:18px 0 0;margin-top:25px;text-align:left;font-size:10px;letter-spacing:.06em}.case-link span{font-size:25px}.case-graphic{height:130px;position:relative;overflow:hidden;margin:15px 0}.case-graphic i{position:absolute;display:block;border:1px solid var(--blue);transition:transform .6s}.waves i{height:100px;width:80%;border-radius:50%;transform:rotate(-12deg);top:10px;left:10%}.waves i:nth-child(2){top:26px}.waves i:nth-child(3){top:42px}.waves i:nth-child(4){top:58px}.waves i:nth-child(5){top:74px}.blocks i{width:75px;height:90px;top:20px;left:30%;transform:skewY(-15deg)}.blocks i:nth-child(2){left:45%;top:8px}.blocks i:nth-child(3){left:60%;top:30px}.orbit i{border-radius:50%;height:110px;width:110px;left:calc(50% - 80px);top:10px}.orbit i:nth-child(2){left:calc(50% - 40px)}.orbit i:nth-child(3){left:calc(50% - 20px);width:1px;border-color:var(--navy)}.network{background-image:linear-gradient(90deg,transparent 49.8%,#a7b1bd 50%,transparent 50.2%),linear-gradient(transparent 49.7%,#a7b1bd 50%,transparent 50.3%);background-size:60px 60px;mask-image:linear-gradient(90deg,transparent,black 20%,black 80%,transparent)}.network i{width:9px;height:9px;background:var(--blue);border-radius:50%;left:50%;top:50%}.network i:nth-child(2){left:30%;top:25%}.network i:nth-child(3){left:70%;top:75%}.network i:nth-child(4){left:40%;top:80%}.network i:nth-child(5){left:80%;top:20%}.case:hover .case-graphic{filter:drop-shadow(0 0 8px #2e68ff30)}.sectors{padding-top:30px}.sectors-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;margin-top:35px}.sectors h2{font-size:clamp(37px,3.7vw,57px)}.sectors ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.sectors li{padding:18px 0;border-bottom:1px solid var(--line);font-size:11px;display:flex;justify-content:space-between;gap:10px}.sectors li span{color:var(--blue)}.perspectives{background:#e8e7e2;text-align:center;position:relative;overflow:hidden}.perspectives blockquote{font:400 clamp(36px,4.4vw,68px)/1.1 var(--serif);letter-spacing:-.04em;margin:38px 0 25px;position:relative}.perspectives>p:not(.eyebrow){font-size:13px;color:#535b66}.perspectives .text-link{margin-top:24px}.perspective-line{position:absolute;border:1px solid #a7b1bd;border-radius:50%;width:140%;height:600px;left:-20%;top:70px;transform:rotate(-8deg);opacity:.4;pointer-events:none}.contact{background:var(--navy);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:100px;padding-bottom:100px}.contact h2{font-size:clamp(43px,4.7vw,72px);margin:30px 0}.contact h2 em{color:#a7b1bd}.contact-copy>p:not(.eyebrow){color:#aebbc9;max-width:365px;font-size:13px}.contact-location{margin-top:40px;font-size:11px;position:relative;padding-left:18px}.contact-location>span:last-child{display:block;font-size:9px;color:#a7b1bd;margin-top:10px}.location-dot{position:absolute;width:5px;height:5px;left:0;top:4px;background:var(--blue);border-radius:50%}.form-title{font-family:var(--serif);font-size:26px;line-height:1.3;margin-bottom:35px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:10px;letter-spacing:.03em;margin-bottom:28px;color:#d3dae1}input,textarea{width:100%;border:0;border-bottom:1px solid #607084;border-radius:0;background:transparent;color:white;padding:14px 0;font-size:12px;outline-offset:4px;resize:vertical}input::placeholder,textarea::placeholder{color:#a3afbf;opacity:1}input:focus,textarea:focus{border-bottom-color:var(--blue)}.optional{float:right;color:#a7b1bd;font-size:9px}.form-note{font-size:10px;color:#a7b1bd;margin:-5px 0 22px}.light{background:var(--paper);color:var(--navy);border-color:var(--paper);width:100%}.light:hover{color:white}#form-status{font-size:12px;margin-top:15px;color:#e0e8f0}#form-status:empty{display:none}.footer{background:#07182e;color:var(--paper);padding:55px 7% 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:50px;gap:25px}.footer-top img{width:160px;height:auto}.footer-top p{font-family:var(--serif);font-size:28px;line-height:1.15}.back-top{font-size:10px}.back-top span{margin-left:25px;font-size:20px}.footer-bottom{border-top:1px solid #344358;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#a7b1bd}.footer-bottom button{background:none;border:0;padding:0;font-size:9px;color:inherit}dialog{background:var(--paper);color:var(--navy);border:0;padding:60px;max-width:650px;width:calc(100% - 40px);max-height:85svh}dialog::backdrop{background:#07182ebd;backdrop-filter:blur(6px)}dialog h2{font-size:48px;margin:25px 0}dialog>p:not(.eyebrow){font-size:14px;line-height:1.9}dialog .button{margin-top:30px}.dialog-close{position:absolute;top:15px;right:20px;background:none;border:0;font-size:32px;width:44px;height:44px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@keyframes draw{to{stroke-dashoffset:0}}@keyframes photo-in{from{transform:scale(1.05)}to{transform:scale(1)}}
@media(min-width:1600px){.header{padding-left:7%;padding-right:7%}.hero-content{padding-left:7%}.hero-bottom{left:7%}.hero{height:900px}.hero-content{padding-top:205px}}
@media(max-width:1100px){.header{gap:20px}nav{gap:21px}.header-cta{margin-left:8px}.hero{min-height:780px}.hero-content{padding-top:190px;width:73%}.hero h1{font-size:70px}.hero-description{max-width:350px}.hero-actions{gap:15px}.button{padding:19px 18px;gap:20px}.hero-paper{clip-path:polygon(0 0,77% 0,44% 100%,0 100%)}.hero-bottom{gap:30px}.intro-grid{gap:7%}.section{padding:80px 6%}.about-copy{padding:65px 11%}.contact{gap:7%}.service-title{font-size:34px}}
@media(max-width:900px){html{scroll-padding-top:30px}.header{height:95px;padding:0 6%;gap:20px}.brand{width:120px}.header-cta{margin-left:auto;font-size:9px}.header-cta span{padding-left:10px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:40px;height:44px;background:none;border:0;padding:8px}.menu-toggle span{height:1px;width:24px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;top:95px;left:0;width:100%;background:var(--paper);padding:25px 6% 35px;box-shadow:0 15px 15px #0a1f3d12}nav.open{display:flex;flex-direction:column;gap:0}nav a{padding:17px 0}.hero{height:auto;min-height:0;padding-bottom:0}.hero-paper{display:none}.hero-content{padding:145px 6% 50px;width:100%;background:var(--paper)}.hero h1{font-size:clamp(52px,9.2vw,69px);line-height:1;letter-spacing:-.055em}.hero .eyebrow{font-size:9px}.hero-description{max-width:410px;font-size:13px;margin-top:25px}.hero-actions{margin-top:26px;gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:9px;padding:18px 20px}.hero-actions .text-link{font-size:9px}.hero-photo{position:relative;width:100%;height:390px;z-index:0}.hero-photo>img{object-position:50% 45%}.photo-note{right:6%;bottom:25px}.hero-curves{top:auto;bottom:0;height:450px;z-index:1}.hero-bottom{position:relative;bottom:auto;left:auto;padding:23px 6%;justify-content:space-between;gap:15px;font-size:7px}.hero-bottom a{gap:8px}.section{padding:65px 6%}.section-label{margin-bottom:32px;gap:20px}.section-label .quiet{font-size:7px;max-width:110px;text-align:right}.intro-grid{grid-template-columns:1fr;gap:25px}.intro h2{font-size:clamp(34px,6.6vw,48px)}.intro-grid>p{font-size:13px;max-width:none}.services{margin-top:35px}.service summary{gap:18px;padding:25px 0}.service-number{margin-top:7px;font-size:9px}.service-title{font-size:28px;line-height:1.05}.service-symbol{font-size:27px}.service-body{padding:0 0 28px 30px;grid-template-columns:1fr;gap:20px}.service-promise{font-size:24px}.service-body>div>p{font-size:12px}.tags li{font-size:9px}.about{grid-template-columns:1fr}.about-photo{min-height:420px;max-height:500px}.about-photo img{object-position:center 47%}.about-copy{padding:55px 6%}.about-copy h2{font-size:50px}.method h2{font-size:42px}.method-bridge{top:110px;right:-50%;width:150%;opacity:.45}.method-grid{grid-template-columns:1fr;gap:30px;margin-top:55px}.method-grid article{display:grid;grid-template-columns:90px 1fr;gap:10px 20px}.step{grid-column:1/-1}.method-grid h3{font-size:38px;margin:10px 0}.method-grid p{min-height:0;font-size:12px;margin-top:10px}.method-grid .eyebrow{grid-column:2;margin:0 0 5px;font-size:9px}.experience-heading{display:block;margin-bottom:35px}.experience-heading p{margin-top:25px;font-size:13px}.case-grid{grid-template-columns:1fr;gap:15px}.case{padding:25px}.case:nth-child(3){background:#e9e9e4}.case:nth-child(4){background:#e2e5e5}.case-graphic{height:110px}.case h3{font-size:34px}.case>p{min-height:0}.sectors{padding-top:0}.sectors-grid{grid-template-columns:1fr;gap:30px}.sectors h2{font-size:41px}.sectors ul{gap:0 20px}.sectors li{font-size:10px}.perspectives blockquote{font-size:37px}.perspectives>p:not(.eyebrow){font-size:12px}.contact{grid-template-columns:1fr;gap:55px}.contact h2{font-size:58px}.contact-copy>p:not(.eyebrow){max-width:440px}.contact-location{margin-top:25px}.form-row{gap:20px}.form-title{font-size:25px}.footer{padding:40px 6% 25px}.footer-top{flex-wrap:wrap;gap:25px;padding-bottom:35px}.footer-top img{width:135px}.footer-top p{font-size:23px}.back-top{width:100%}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:20px}.footer-bottom span:first-child{width:100%}dialog{padding:50px 25px 30px}dialog h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.hero-curves path{stroke-dashoffset:0}}
/* Keep navigation on the paper plane and the action legible over photography. */
@media(min-width:901px){.brand{width:180px}nav{margin-left:35px;margin-right:auto;gap:27px}.header-cta{color:var(--paper);margin-left:0}.header{gap:15px}}
@media(min-width:901px) and (max-width:1000px){.brand{width:145px}nav{margin-left:10px;gap:18px}nav a,.header-cta{font-size:9px}.header-cta span{padding-left:12px}.hero h1{font-size:62px}.hero-content{padding-top:180px}}
@media(max-width:900px){.hero{display:flex;flex-direction:column}.hero-content{order:1}.hero-photo{order:2}.hero-bottom{order:3}.hero-curves{bottom:55px}.header .brand{width:145px}.header{gap:12px}}

.header-cta{display:inline-flex;align-items:center;white-space:nowrap}.header-cta span{line-height:1}.case-link{min-height:48px}.footer-bottom button{min-height:28px}
@media(max-width:420px){.header .brand{width:120px}.header-cta{font-size:8px}.header-cta span{font-size:19px;padding-left:10px}.header{gap:8px}}

/* Motion direction — the bridge becomes the navigation language. */
body{overflow-x:clip}.preloader{position:fixed;inset:0;z-index:999;display:grid;place-items:center;pointer-events:none;animation:loader-away .01s 2.55s forwards}.preloader-panel{position:absolute;inset-block:0;width:50%;background:var(--navy);will-change:transform}.preloader-left{left:0;animation:loader-left .9s 1.65s cubic-bezier(.77,0,.18,1) forwards}.preloader-right{right:0;animation:loader-right .9s 1.65s cubic-bezier(.77,0,.18,1) forwards}.preloader-core{position:relative;z-index:2;color:var(--paper);width:min(290px,62vw);text-align:center;animation:loader-core-out .5s 1.48s ease forwards}.preloader-core img{width:130px;height:auto;margin:0 auto 38px}.preloader-track{height:1px;background:#5b6877;overflow:hidden}.preloader-track i{display:block;height:100%;width:100%;background:var(--blue);transform-origin:left;animation:loader-track 1.45s cubic-bezier(.65,0,.35,1) forwards}.preloader-core>span{display:flex;justify-content:flex-end;margin-top:12px;font-size:9px;letter-spacing:.18em}.preloader-core b{font-weight:400;margin-right:5px}.cursor{position:fixed;left:0;top:0;width:54px;height:54px;border:1px solid rgba(46,104,255,.7);border-radius:50%;z-index:90;pointer-events:none;transform:translate(-50%,-50%);opacity:0;transition:width .35s,height .35s,background .35s,border-color .35s,opacity .2s;mix-blend-mode:difference}.cursor:after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;background:white;border-radius:50%;transform:translate(-50%,-50%)}.cursor.active{width:82px;height:82px;background:rgba(255,255,255,.12);border-color:white}.cursor.active span:after{content:'ABRIR';position:absolute;inset:0;display:grid;place-items:center;color:white;font:500 7px/1 var(--sans);letter-spacing:.18em}.cursor.active:after{opacity:0}.header{animation:header-enter .9s 2.2s both cubic-bezier(.22,1,.36,1)}.hero-photo{clip-path:inset(0 0 0 100%);animation:hero-wipe 1.25s 1.95s forwards cubic-bezier(.77,0,.18,1)}.hero-photo>img{animation:photo-in 2s 1.9s ease-out both;transform:translate3d(0,var(--photo-y,0),0) scale(1.035);will-change:transform}.hero-paper{transform:translateX(-4%);opacity:0;animation:paper-enter 1.2s 2s forwards cubic-bezier(.16,1,.3,1)}.hero-kicker,.hero-description,.hero-actions,.hero-bottom{opacity:0;animation:fade-rise .85s forwards cubic-bezier(.16,1,.3,1)}.hero-kicker{animation-delay:2.45s}.hero-description{animation-delay:2.92s}.hero-actions{animation-delay:3.04s}.hero-bottom{animation-delay:3.2s}.hero h1 span{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.07em;margin-bottom:-.07em}.hero h1 span>i{display:inline-block;font:inherit;letter-spacing:inherit;transform:translateY(115%);animation:title-rise .95s forwards cubic-bezier(.16,1,.3,1)}.hero h1 span:nth-child(1)>i{animation-delay:2.45s}.hero h1 span:nth-child(3)>i{animation-delay:2.57s}.hero h1 span:nth-child(5)>i{animation-delay:2.69s}.hero h1 em{font-style:italic}.hero-curves{transform:translate3d(0,var(--curve-y,0),0)}.hero-curves path{animation-delay:2.3s}.signal-strip{height:62px;background:var(--blue);color:white;overflow:hidden;display:flex;align-items:center;position:relative;z-index:3}.signal-track{display:flex;width:max-content;animation:ticker 28s linear infinite}.signal-track span{white-space:nowrap;text-transform:uppercase;font-size:10px;letter-spacing:.2em;padding-right:42px}.signal-track i{font-style:normal;font-size:20px;vertical-align:-2px;margin:0 32px}.intro{position:relative}.intro:before{content:'01';position:absolute;right:4%;top:55px;font:400 clamp(100px,18vw,270px)/1 var(--serif);color:rgba(10,31,61,.025);pointer-events:none}.intro-grid h2,.experience-heading h2,.sectors h2,.contact h2{background:linear-gradient(90deg,var(--navy) 0 50%,rgba(10,31,61,.18) 50% 100%);background-size:200% 100%;background-position:100% 0;background-clip:text;-webkit-background-clip:text;color:transparent;transition:background-position 1.25s cubic-bezier(.22,1,.36,1)}.intro-grid.visible h2,.experience-heading.visible h2,.sectors-grid.visible h2,.contact-copy.visible h2{background-position:0 0}.service{position:relative;transition:color .5s}.service:before{content:'';position:absolute;inset:0 -7vw;background:var(--navy);transform:scaleY(0);transform-origin:bottom;transition:transform .55s cubic-bezier(.77,0,.18,1);z-index:-1}.service:hover,.service[open]{color:var(--navy)}.service:not([open]):hover{color:var(--paper)}.service:not([open]):hover:before{transform:scaleY(1)}.service:not([open]):hover .amp,.service:not([open]):hover .service-number{color:var(--mineral)}.service summary{position:relative}.service-title{transition:transform .55s cubic-bezier(.16,1,.3,1)}.service:hover .service-title{transform:translateX(18px)}.service-body{overflow:hidden;animation:service-open .55s cubic-bezier(.16,1,.3,1) both}.bridge-scene{height:185vh;background:var(--navy);color:var(--paper);position:relative}.bridge-sticky{height:100svh;position:sticky;top:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:8vh 7%;isolation:isolate}.bridge-sticky:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--bridge-x,50%) 58%,rgba(46,104,255,.22),transparent 27%);z-index:-2}.bridge-index{position:absolute;inset:35px 7% auto;display:flex;justify-content:space-between;color:var(--mineral);font-size:8px;letter-spacing:.22em}.bridge-overline{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--mineral);margin-bottom:22px}.bridge-word{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--bridge-scale,1));opacity:var(--bridge-opacity,.06);font:400 clamp(150px,30vw,480px)/.8 var(--serif);letter-spacing:-.1em;white-space:nowrap;color:#fff;z-index:-1}.bridge-word span{font-size:.35em;vertical-align:top;margin-right:.12em}.bridge-word strong{font-weight:400}.bridge-sticky h2{font-size:clamp(55px,7vw,108px);max-width:1100px;position:relative;z-index:2;transform:translate3d(0,var(--bridge-title-y,0),0)}.bridge-sticky h2 em{color:var(--mineral)}.bridge-sticky svg{position:absolute;left:0;bottom:0;width:100%;height:78%;fill:none;stroke-width:1.2;z-index:1;pointer-events:none}.bridge-base{stroke:var(--mineral);stroke-dasharray:2000;stroke-dashoffset:var(--bridge-dash,2000)}.bridge-rise{stroke:var(--blue);stroke-dasharray:2200;stroke-dashoffset:var(--bridge-rise-dash,2200)}.bridge-pulse{position:absolute;right:7%;bottom:45px;display:flex;align-items:center;gap:15px;color:var(--mineral);font-size:8px;letter-spacing:.18em;text-transform:uppercase}.bridge-pulse i{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 0 rgba(46,104,255,.7);animation:pulse 1.8s infinite}.about{overflow:hidden}.about-photo{clip-path:inset(8%);transition:clip-path 1.1s cubic-bezier(.16,1,.3,1)}.about.in-view .about-photo{clip-path:inset(0)}.about-photo img{transform:scale(1.12) translate3d(0,var(--about-y,0),0);will-change:transform}.about-copy h2 span,.method h2 span{display:block}.method{min-height:100svh;display:flex;flex-direction:column;justify-content:center}.method-bridge path{stroke-dasharray:1800;stroke-dashoffset:var(--method-dash,1800)}.method-grid article{transition:transform .7s cubic-bezier(.16,1,.3,1),background .4s,color .4s;padding:22px}.method-grid article:hover{transform:translateY(-18px);background:var(--paper);color:var(--navy)}.method-grid article:hover p,.method-grid article:hover .eyebrow{color:#586273}.method-grid article:nth-child(2){transition-delay:.08s}.method-grid article:nth-child(3){transition-delay:.16s}.case{transform-style:preserve-3d;will-change:transform;transition:transform .2s ease-out,background .3s}.case>*{transform:translateZ(25px)}.case-graphic i{will-change:transform}.case:hover .waves i:nth-child(odd){transform:rotate(-7deg) translateX(22px)}.case:hover .waves i:nth-child(even){transform:rotate(-17deg) translateX(-14px)}.case:hover .blocks i:nth-child(1){transform:skewY(-15deg) translate(-18px,8px)}.case:hover .blocks i:nth-child(3){transform:skewY(-15deg) translate(18px,-8px)}.case:hover .orbit i:nth-child(1){transform:translateX(-22px)}.case:hover .orbit i:nth-child(2){transform:translateX(22px)}.network i{animation:network-blink 2.2s infinite alternate}.network i:nth-child(2){animation-delay:.3s}.network i:nth-child(3){animation-delay:.8s}.network i:nth-child(4){animation-delay:1.2s}.sectors li{position:relative;overflow:hidden;transition:padding .35s,color .35s}.sectors li:before{content:'';position:absolute;left:0;top:0;height:100%;width:3px;background:var(--blue);transform:translateY(110%);transition:transform .35s}.sectors li:hover{padding-left:18px;color:var(--blue)}.sectors li:hover:before{transform:none}.perspective-line{transform:rotate(calc(-8deg + var(--perspective-rotate,0deg))) scale(var(--perspective-scale,1));will-change:transform}.perspectives blockquote{transform:translate3d(0,var(--perspective-y,0),0)}.contact{position:relative;overflow:hidden}.contact:before{content:'';position:absolute;width:70vw;height:70vw;border:1px solid rgba(46,104,255,.22);border-radius:50%;left:-34vw;bottom:-50vw}.contact .contact-copy h2{background-image:linear-gradient(90deg,var(--paper) 0 50%,rgba(244,242,236,.16) 50% 100%)}.contact form{position:relative}.contact form:before{content:'';position:absolute;inset:-35px -35px;background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 50%);border:1px solid rgba(167,177,189,.16);pointer-events:none}.button.magnetic{will-change:transform}.footer-top img{transition:transform .6s cubic-bezier(.16,1,.3,1)}.footer-top a:hover img{transform:translateY(-8px)}
@keyframes loader-track{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes loader-core-out{to{opacity:0;transform:translateY(-15px)}}@keyframes loader-left{to{transform:translateX(-101%)}}@keyframes loader-right{to{transform:translateX(101%)}}@keyframes loader-away{to{visibility:hidden}}@keyframes header-enter{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@keyframes hero-wipe{to{clip-path:inset(0 0 0 0)}}@keyframes paper-enter{to{opacity:1;transform:none}}@keyframes title-rise{to{transform:none}}@keyframes fade-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes service-open{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:none}}@keyframes pulse{70%{box-shadow:0 0 0 15px rgba(46,104,255,0)}to{box-shadow:0 0 0 0 rgba(46,104,255,0)}}@keyframes network-blink{to{opacity:.22;transform:scale(.55)}}
@media(max-width:900px){.preloader-core img{width:100px}.cursor{display:none}.signal-strip{height:52px}.bridge-scene{height:145vh}.bridge-sticky{padding-inline:6%}.bridge-sticky h2{font-size:clamp(48px,11vw,76px)}.bridge-word{font-size:42vw}.bridge-sticky svg{height:62%}.service:not([open]):hover{color:var(--navy)}.service:not([open]):hover:before{transform:scaleY(0)}.service:hover .service-title{transform:none}.about-photo{clip-path:inset(5%)}.method{min-height:auto}.method-grid article{padding:16px 0}.contact form:before{inset:-22px -12px}.hero-photo{animation-delay:1.85s}.hero-paper{animation:none}.hero h1 span:nth-child(1)>i{animation-delay:2.25s}.hero h1 span:nth-child(3)>i{animation-delay:2.37s}.hero h1 span:nth-child(5)>i{animation-delay:2.49s}.hero-kicker{animation-delay:2.15s}.hero-description{animation-delay:2.7s}.hero-actions{animation-delay:2.82s}.hero-bottom{animation-delay:2.95s}}
@media(hover:none){.cursor{display:none}.case{transform:none!important}.method-grid article:hover{transform:none;background:transparent;color:inherit}.method-grid article:hover p,.method-grid article:hover .eyebrow{color:#b6c0cb}}
@media(prefers-reduced-motion:reduce){.preloader{display:none}.signal-track,.bridge-pulse i,.network i{animation:none!important}.hero-photo{clip-path:none}.hero-paper,.hero-kicker,.hero-description,.hero-actions,.hero-bottom,.hero h1 span>i,.header{opacity:1;transform:none;animation:none}.bridge-base,.bridge-rise,.method-bridge path{stroke-dashoffset:0}.about-photo{clip-path:none}.about-photo img{transform:none}.intro-grid h2,.experience-heading h2,.sectors h2,.contact h2{background:none;color:inherit}.contact .contact-copy h2{color:var(--paper)}}

.header{position:fixed;transition:height .5s cubic-bezier(.16,1,.3,1),background .4s,box-shadow .4s,backdrop-filter .4s}.header.is-scrolled{height:76px;background:rgba(244,242,236,.9);box-shadow:0 1px 0 rgba(10,31,61,.1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.header.is-scrolled .header-cta{color:var(--navy)}.header.is-scrolled .brand{width:135px}.reveal{transition-delay:var(--reveal-delay,0ms)}dialog[open]{animation:dialog-in .5s cubic-bezier(.16,1,.3,1)}dialog[open]::backdrop{animation:backdrop-in .35s ease}.cursor.active span:after{content:'VER'}
@keyframes dialog-in{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
.signal-track{animation-duration:84s;will-change:transform}.signal-sequence{display:flex;flex:none}.signal-track span{display:block;flex:none;padding-right:0}
@media(max-width:900px){.header.is-scrolled{height:72px}.header.is-scrolled nav{top:72px}.header.is-scrolled .brand{width:112px}}

/* National intelligence scene */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.network-scene{height:235vh;background:#041326;color:var(--paper);position:relative}.network-sticky{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 78% 44%,#0b3155 0,#061b34 27%,#041326 62%)}#network-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:0;transition:opacity 1s ease}.network-sticky.network-ready #network-canvas{opacity:1}.network-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,38,.99) 0%,rgba(4,19,38,.94) 25%,rgba(4,19,38,.58) 43%,rgba(4,19,38,.08) 66%,rgba(4,19,38,.02) 100%),linear-gradient(180deg,rgba(4,19,38,.5),transparent 27%,transparent 70%,rgba(4,19,38,.72));z-index:1;pointer-events:none}.network-shade:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 76% 49%,rgba(46,104,255,.16),transparent 31%);opacity:var(--network-glow,.2);mix-blend-mode:screen}.network-copy{position:absolute;left:7%;top:52%;width:min(520px,38vw);transform:translateY(calc(-50% + var(--network-copy-y,0px)));z-index:3}.network-copy h2{font-size:clamp(52px,5.4vw,84px);line-height:.95;margin:30px 0 26px;letter-spacing:-.055em}.network-copy h2 em{color:var(--mineral)}.network-copy>p:last-child{width:min(390px,100%);font-size:13px;color:#b3bfcc}.network-stage{position:absolute;top:35px;left:7%;right:7%;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:4vw;color:#7f8fa1;font-size:8px;letter-spacing:.18em;text-transform:uppercase}.network-stage span{border-top:1px solid rgba(167,177,189,.28);padding-top:13px;transition:color .4s,border-color .4s}.network-stage span.active{color:var(--paper);border-color:var(--blue)}.network-status{position:absolute;right:7%;bottom:42px;z-index:3;display:grid;grid-template-columns:auto auto auto;align-items:center;gap:14px;color:#aab7c5;font-size:8px;letter-spacing:.18em;text-transform:uppercase}.network-status i{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 16px 4px rgba(46,104,255,.45);animation:pulse 1.8s infinite}.network-status b{font-weight:400;color:var(--paper);min-width:36px;text-align:right}.network-scene:before{content:'BR';position:absolute;right:3%;top:8%;font:400 42vw/.7 var(--serif);color:rgba(255,255,255,.012);z-index:1;pointer-events:none}
@media(max-width:900px){.network-scene{height:205vh}.network-shade{background:linear-gradient(180deg,rgba(4,19,38,.98) 0%,rgba(4,19,38,.88) 31%,rgba(4,19,38,.14) 54%,rgba(4,19,38,.46) 78%,rgba(4,19,38,.82) 100%)}.network-copy{top:19%;left:6%;width:88%;transform:translateY(var(--network-copy-y,0px))}.network-copy h2{font-size:clamp(43px,11vw,72px);max-width:680px;margin:22px 0 18px}.network-copy>p:last-child{font-size:12px;max-width:440px}.network-stage{left:6%;right:6%;top:25px;gap:10px}.network-stage span{font-size:6px;letter-spacing:.08em}.network-status{right:6%;bottom:28px}.network-status span{display:none}}
@media(max-width:460px){.network-copy{top:18%}.network-copy h2{font-size:43px}.network-stage{grid-template-columns:repeat(2,1fr);row-gap:8px}.network-stage span{padding-top:7px}.network-status{font-size:7px}}
@media(prefers-reduced-motion:reduce){.network-scene{height:auto}.network-sticky{height:min(860px,100svh);position:relative}.network-status i{animation:none}#network-canvas{opacity:1}}

/* Strong split composition: editorial copy left, WebGL map right. */
.network-scene:before{display:none}#network-canvas{z-index:4;filter:saturate(1.2) brightness(1.18) contrast(1.08)}.network-stage,.network-status{z-index:5}
@media(min-width:901px){.network-copy{left:6%;width:min(470px,31vw);z-index:3}}
@media(min-width:561px) and (max-width:900px){.network-copy{left:5%;top:51%;width:43%;transform:translateY(calc(-50% + var(--network-copy-y,0px)))}.network-copy h2{font-size:clamp(38px,6.6vw,56px);line-height:.94;margin:24px 0 22px}.network-copy>p:last-child{max-width:290px;font-size:11px;line-height:1.65}.network-shade{background:linear-gradient(90deg,rgba(4,19,38,.98) 0%,rgba(4,19,38,.86) 37%,rgba(4,19,38,.08) 58%,transparent 100%),linear-gradient(180deg,rgba(4,19,38,.32),transparent 30%,transparent 76%,rgba(4,19,38,.58))}}

.header{transition:height .5s cubic-bezier(.16,1,.3,1),background .4s,box-shadow .4s,backdrop-filter .4s,transform .55s cubic-bezier(.77,0,.18,1),opacity .32s ease}.header.has-entered,.header.is-network-hidden{animation:none}.header.is-network-hidden{transform:translate3d(0,-110%,0);opacity:0;pointer-events:none}.network-status{display:none!important}
.service.is-animating{clip-path:inset(0 -7vw)}.service-body{animation:none;will-change:opacity,transform}.service.is-closing .service-symbol{transform:rotate(0);color:inherit}
.network-copy>p{width:min(390px,100%);font-size:13px;color:#b3bfcc}.network-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-width:238px;margin-top:30px;padding:16px 18px;border:1px solid rgba(244,242,236,.58);background:rgba(4,19,38,.34);color:var(--paper);font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;backdrop-filter:blur(8px);transition:background .35s,border-color .35s,transform .35s}.network-cta span{font-size:21px;line-height:.7;transition:transform .35s}.network-cta:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-3px)}.network-cta:hover span{transform:translate(3px,-3px)}
@media(max-width:900px){.network-copy>p{font-size:12px;max-width:440px}.network-cta{min-width:218px;margin-top:22px;padding:14px 16px}}
@media(min-width:561px) and (max-width:900px){.network-copy>p{max-width:290px;font-size:11px;line-height:1.65}.network-cta{margin-top:18px}}
.about-socials{display:flex;gap:10px;margin:27px 0 4px}.about-socials a{display:grid;place-items:center;width:43px;height:43px;border:1px solid rgba(10,31,61,.28);border-radius:50%;color:var(--navy);transition:color .3s,background .3s,border-color .3s,transform .3s}.about-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.about-socials .social-dot,.about-socials .social-fill{fill:currentColor;stroke:none}.about-socials a:hover{color:white;background:var(--blue);border-color:var(--blue);transform:translateY(-3px)}.about-socials a:focus-visible{outline-offset:3px}

/* Header logo sizing follows the taller aspect ratio of the approved asset. */
.header{padding-inline:5%}
.header .brand{display:flex;align-items:center;width:110px;padding-block:8px;transition:width .45s cubic-bezier(.16,1,.3,1),padding .45s cubic-bezier(.16,1,.3,1)}
.header .brand img{display:block;width:100%;height:auto}
.header.is-scrolled .brand{width:82px;padding-block:7px}
@media(min-width:1600px){.header{padding-inline:7%}}
@media(max-width:900px){.header{padding-inline:6%}.header .brand{width:96px;padding-block:7px}.header.is-scrolled .brand{width:74px;padding-block:7px}}
@media(max-width:420px){.header .brand{width:88px}.header.is-scrolled .brand{width:70px}}

/* The form uses its underline as the focus indicator instead of a browser box. */
#contact-form label{transition:color .25s ease}
#contact-form label:focus-within{color:#fff}
#contact-form input,#contact-form textarea{transition:border-color .25s ease,box-shadow .25s ease}
#contact-form input:focus,#contact-form textarea:focus,#contact-form input:focus-visible,#contact-form textarea:focus-visible{outline:0;border-bottom-color:#f4f2ec;box-shadow:0 1px 0 rgba(244,242,236,.36)}

.lgpd-consent{display:flex;align-items:flex-start;gap:12px;margin:-2px 0 24px;color:#a7b1bd;font-size:10px;line-height:1.65;letter-spacing:0;cursor:pointer}
#contact-form .lgpd-consent input{appearance:auto;width:16px;height:16px;min-width:16px;margin:2px 0 0;padding:0;border:0;box-shadow:none;accent-color:#f4f2ec;cursor:pointer}
#contact-form .lgpd-consent input:focus,#contact-form .lgpd-consent input:focus-visible{outline:1px solid #f4f2ec;outline-offset:3px;box-shadow:none}
.lgpd-consent span{display:block}
.lgpd-consent button{display:inline;padding:0;border:0;border-bottom:1px solid currentColor;background:none;color:#dce3ea;font:inherit;cursor:pointer;transition:color .25s ease}
.lgpd-consent button:hover{color:#fff}

/* Keep the form card sized to its contents inside the two-column contact grid. */
.contact form{align-self:center}
@media(max-width:900px){.contact form{align-self:start}}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.light:disabled{cursor:wait;opacity:.62}.light[aria-busy=true] span{animation:pulse-arrow .8s ease-in-out infinite alternate}#form-status.is-success{color:#c6f4dc}#form-status.is-error{color:#ffb8b8}@keyframes pulse-arrow{to{transform:translate(6px,-3px)}}

.case-media{height:130px;margin:15px 0;overflow:hidden;background:var(--navy)}
.case-media img,.case-media video{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .5s}
.case:hover .case-media img,.case:hover .case-media video{transform:scale(1.045);filter:saturate(1.08)}
.case-empty{min-height:230px;display:grid;place-items:center;border:1px solid var(--line);color:#788391;font:italic 32px/1.2 var(--serif)}
.dialog-media{height:min(330px,38svh);margin:-60px -60px 35px;overflow:hidden;background:var(--navy)}
.dialog-media img,.dialog-media video,.dialog-media iframe{display:block;width:100%;height:100%;border:0;object-fit:cover}
@media(max-width:900px){.case-media{height:110px}.dialog-media{margin:-50px -25px 28px;height:230px}}

/* Compact the mobile hero transition after the removed kicker. */
@media(max-width:560px){.hero-content{padding-top:112px}.hero h1{margin-top:0}}

/* Mobile map composition: the map becomes the scene behind the editorial copy. */
@media(max-width:560px){.network-copy{top:14%;z-index:6;isolation:isolate}.network-copy:before{content:'';position:absolute;z-index:-1;inset:-22px -7vw -38px;background:linear-gradient(180deg,rgba(4,19,38,.9) 0%,rgba(4,19,38,.74) 62%,rgba(4,19,38,0) 100%);pointer-events:none}.network-copy h2,.network-copy>p,.network-cta{position:relative;z-index:1}.network-copy h2{text-shadow:0 3px 24px rgba(4,19,38,.72)}}

/* Give the method steps a stable editorial grid on narrow screens. */
@media(max-width:560px){.method-grid{gap:36px}.method-grid article{grid-template-columns:minmax(0,40%) minmax(0,1fr);column-gap:24px;row-gap:20px;align-items:start;padding:22px 0 30px}.method-grid h3{font-size:clamp(32px,10vw,40px);line-height:1;margin:0}.method-grid p{font-size:12px;line-height:1.75;margin:0}.method-grid .eyebrow{grid-column:2;margin:0 0 8px}}
