@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/manrope-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/manrope-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--navy:#061b2c;--navy-deep:#041724;--navy-soft:#0a2537;--blue:#006a9c;--blue-strong:#006a9c;--blue-dark:#00527d;--electric:#34b7f4;--ice:#f4f8fa;--ink:#0a2031;--muted:#62747f;--muted-dark:#9db1bd;--line:#dce5e9;--line-dark:#ffffff1f;--sans:"Manrope", system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--pad-x:8vw;--ease:cubic-bezier(.22, .61, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-weight:400}h1,h2,h3{letter-spacing:-.045em;margin:0;font-weight:500;line-height:1.04}p{margin:0}ul,ol,dl{margin:0;padding:0;list-style:none}img{max-width:100%;display:block}em{color:var(--blue);font-style:normal}.hero em,.services em{color:var(--electric)}button,a{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{text-decoration:none}:focus-visible{outline:2px solid var(--electric);outline-offset:3px;border-radius:2px}section[id]{scroll-margin-top:84px}.hero[id]{scroll-margin-top:0}section:focus{outline:none}.skip{z-index:100;color:var(--ink);background:#fff;padding:14px 20px;font-weight:600;position:absolute;top:0;left:-9999px}.skip:focus{top:12px;left:12px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kicker,.eyebrow,.intro-label,.contact-label{letter-spacing:.2em;text-transform:uppercase;font-size:11px;font-weight:700}.logo{display:block}.logo-img{width:auto;height:40px}.footer-brand .logo-img{height:50px}.logo-type>span{letter-spacing:.1em;font-size:15px;font-weight:800;line-height:1;display:block}.logo-type small{letter-spacing:.34em;color:var(--electric);margin-top:4px;font-size:9px;font-weight:600;display:block}.site-nav{z-index:30;height:92px;padding:0 var(--pad-x);color:#fff;border-bottom:1px solid var(--line-dark);transition:height .35s var(--ease), background .35s var(--ease);align-items:center;gap:30px;display:flex;position:fixed;inset:0 0 auto}.site-nav.scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#061b2cf2;height:74px}.brand{flex:none}.navlinks{gap:34px;margin:0 auto;display:flex}.navlinks a{color:#d5e4ee;border-bottom:1px solid #0000;padding:6px 0;font-size:14px;transition:color .2s,border-color .2s}.navlinks a:hover{color:#fff;border-bottom-color:var(--electric)}.navcta{background:var(--blue-strong);color:#fff;flex:none;align-items:center;gap:11px;padding:13px 20px;font-size:14px;font-weight:700;transition:background .25s;display:inline-flex}.navcta:hover{background:var(--blue-dark)}.navcta-menu{display:none}.menubtn{color:#fff;display:none}.hero{height:88vh;min-height:660px;max-height:900px;padding:100px var(--pad-x) 0;color:#fff;background:var(--navy-deep);align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg{background:radial-gradient(95% 75% at 82% 6%,#005b87 0%,#063a58 26%,#0000 62%),radial-gradient(70% 60% at 6% 92%,#0a3252 0%,#0000 58%),linear-gradient(158deg,#072238 0%,#05182a 52%,#03111e 100%);position:absolute;inset:0}.hero-bg:after{content:"";background:linear-gradient(#02101cb3 0%,#0000 22%),linear-gradient(#0000 58%,#02101ce6 100%),repeating-linear-gradient(58deg,#fff0 0 34px,#ffffff08 34px 35px);position:absolute;inset:0}.hero-grid{background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:96px 96px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000 40%,#0000 100%);mask-image:radial-gradient(120% 100% at 50% 40%,#000 40%,#0000 100%)}.hero-content{z-index:1;max-width:780px;position:relative}.eyebrow{color:#96d1f8;align-items:center;gap:13px;display:flex}.eyebrow span{background:var(--blue-strong);width:38px;height:2px}.hero h1{margin:24px 0;font-size:clamp(40px,5.2vw,72px)}.hero-lede{color:#c4d5e0;max-width:610px;font-size:clamp(16px,1.25vw,18px);line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px 30px;margin-top:42px;display:flex}.primary{background:var(--blue-strong);color:#fff;transition:background .25s, transform .25s var(--ease);align-items:center;gap:16px;padding:19px 26px;font-weight:700;display:inline-flex}.primary:hover{background:var(--blue-dark);transform:translateY(-2px)}.ghost{color:#fff;align-items:center;gap:13px;font-weight:600;display:inline-flex}.ghost>span{border:1px solid #fff5;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .25s,border-color .25s,color .25s;display:grid}.ghost:hover>span{color:var(--blue);background:#fff;border-color:#fff}.hero-number{right:var(--pad-x);z-index:2;align-items:center;gap:20px;display:flex;position:absolute;bottom:74px}.hero-number strong{letter-spacing:-.05em;font-size:62px;font-weight:500}.hero-number sup{color:var(--electric);font-size:24px}.hero-number span{color:#b6cdda;border-left:1px solid #fff4;padding-left:18px;font-size:12px;line-height:1.6}.scroll{color:#8ba6b6;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:46px;left:2.4vw}.scroll span{writing-mode:vertical-rl;letter-spacing:.25em;font-size:9px}.scroll svg{animation:nudge 2.4s var(--ease) infinite}@keyframes nudge{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.intro{padding:125px var(--pad-x);grid-template-columns:1fr 2.2fr;gap:0 40px;display:grid}.intro-label{color:var(--blue);padding-top:10px}.intro-copy h2{margin-bottom:30px;font-size:clamp(32px,4vw,54px)}.intro-copy h2 span{color:var(--blue)}.intro-copy p{max-width:660px;color:var(--muted);font-size:17px;line-height:1.8}.intro-copy p+p{margin-top:20px}.intro-copy>a{border-bottom:1px solid var(--blue);color:var(--blue);align-items:center;gap:12px;margin-top:34px;padding-bottom:7px;font-weight:700;display:inline-flex}.intro-copy>a:hover{transition:gap .25s var(--ease);gap:18px}.stats{border-top:1px solid var(--line);grid-column:2;grid-auto-columns:1fr;grid-auto-flow:column;margin-top:80px;display:grid}.stats div{border-right:1px solid var(--line);padding:35px 0}.stats div:last-child{border-right:0}.stats dt{letter-spacing:-.04em;color:var(--blue);font-size:40px;font-weight:600}.stats dd{color:var(--muted);margin:8px 0 0;font-size:12px}.stat-soa dt{letter-spacing:-.02em;padding-top:22px;font-size:22px}.section-head{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:58px;display:flex}.section-head h2{margin-top:20px;font-size:clamp(30px,3.6vw,48px)}.section-head>p{max-width:400px;line-height:1.75}.services{padding:110px var(--pad-x);background:var(--navy);color:#fff}.services .kicker{color:var(--electric)}.services .section-head>p{color:#9cb1bd}.service-grid{background:var(--line-dark);border:1px solid var(--line-dark);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.service-card{background:var(--navy);color:#fff;min-height:285px;transition:background .3s var(--ease);flex-direction:column;padding:30px 28px 32px;display:flex;position:relative}.service-card:before{content:"";background:var(--electric);transform-origin:0;height:2px;transition:transform .4s var(--ease);position:absolute;inset:0 0 auto;transform:scaleX(0)}.service-card:hover{background:var(--navy-soft)}.service-card:hover:before{transform:scaleX(1)}.service-top{justify-content:space-between;align-items:flex-start;margin-bottom:46px;display:flex}.service-n{color:#7f98a8;letter-spacing:.1em;font-size:12px;font-weight:600}.service-top svg{width:24px;height:24px;color:var(--electric)}.service-card h3{margin-bottom:12px;font-size:21px;font-weight:600}.service-card p{color:#a9bfcb;font-size:14px;line-height:1.65}.service-card--cta{background:#08283f}.service-card--cta h3{color:#fff}.service-link{color:var(--electric);align-items:center;gap:8px;margin-top:18px;font-size:14px;font-weight:700;display:inline-flex}.method{border-top:1px solid var(--blue)}.method-copy{padding:90px var(--pad-x) 80px}.method-copy .kicker{color:var(--blue)}.method-copy h2{margin:20px 0 26px;font-size:clamp(30px,3.4vw,46px)}.method-copy h2 em{color:var(--blue)}.method-copy>p{max-width:520px;color:var(--muted);line-height:1.75}.method ol{max-width:820px;padding-top:22px}.method li{border-top:1px solid var(--line);grid-template-columns:34px 1fr 24px;align-items:center;gap:18px;padding:22px 0;display:grid}.method li>b{color:var(--blue);font-size:11px;font-weight:700}.method li strong{letter-spacing:-.02em;font-size:17px;font-weight:600;display:block}.method li small{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.55;display:block}.method li svg{width:20px;color:var(--blue)}.reasons{padding:110px var(--pad-x);background:var(--ice)}.reasons .kicker{color:var(--blue)}.reasons .section-head>p{color:var(--muted)}.reason-grid{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.reason-grid li{background:var(--ice);padding:40px 32px 46px}.reason-n{letter-spacing:.12em;color:var(--blue);font-size:12px;font-weight:700}.reason-grid h3{margin:24px 0 12px;font-size:21px;font-weight:600}.reason-grid p{color:var(--muted);font-size:14px;line-height:1.7}.soa{padding:105px var(--pad-x) 110px;background:var(--ice)}.soa .kicker{color:var(--blue)}.soa .section-head>p{max-width:470px;color:var(--muted);line-height:1.75}.soa-grid{grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px;display:grid}.soa-badge{text-align:left;border:1px solid var(--line);border-left:3px solid var(--blue);transition:border-color .25s, box-shadow .25s, transform .25s var(--ease);background:#fff;flex-direction:column;align-items:flex-start;padding:34px 36px 30px;display:flex}.soa-badge:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 16px 40px #061b2c14}.soa-badge-mark{letter-spacing:.22em;color:var(--muted);font-size:11px;font-weight:700}.soa-badge-code{letter-spacing:-.04em;margin-top:12px;font-size:clamp(30px,3.2vw,40px);font-weight:600;line-height:1.05}.soa-badge-code>span{color:var(--blue)}.soa-badge-desc{max-width:32ch;color:var(--muted);margin-top:16px;font-size:15px;line-height:1.65}.soa-badge-check{letter-spacing:.08em;text-transform:uppercase;color:var(--blue);align-items:center;gap:9px;margin-top:26px;font-size:12px;font-weight:700;display:inline-flex}.soa-badge-check svg{width:16px;height:16px}.soa-overlay{z-index:60;background:#04121ecc;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.soa-modal{border-top:3px solid var(--blue);background:#fff;width:min(540px,100%);max-height:88vh;padding:44px 44px 36px;position:relative;overflow-y:auto;box-shadow:0 30px 90px #02101a5c}.soa-modal .kicker{color:var(--blue)}.soa-modal h2{margin:16px 0 0;font-size:28px;font-weight:600}.soa-modal-desc{color:var(--muted);margin-top:12px;font-size:15px;line-height:1.6}.soa-modal-cert{margin-top:10px;font-size:15px;font-weight:600}.soa-modal-how{color:var(--muted);margin-top:26px;font-size:15px;line-height:1.75}.soa-modal-code{background:var(--ice);border:1px solid var(--line);letter-spacing:.12em;-webkit-user-select:all;user-select:all;margin-top:14px;padding:16px 20px;font-size:24px;font-weight:600}.soa-modal-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.soa-modal-actions>*{white-space:nowrap;flex:auto;justify-content:center}.soa-modal-actions .primary{gap:12px;padding:15px 20px;font-size:15px}.soa-modal-actions .primary svg{width:18px;height:18px}.soa-copy{border:1px solid var(--line);color:var(--ink);align-items:center;gap:11px;padding:15px 22px;font-size:15px;font-weight:700;transition:border-color .25s,color .25s;display:inline-flex}.soa-copy:hover{border-color:var(--blue);color:var(--blue)}.soa-copy svg{width:18px;height:18px}.soa-modal-feedback{min-height:40px;color:var(--blue);margin-top:16px;font-size:14px;line-height:1.6}.soa-modal-note{border-top:1px solid var(--line);color:var(--muted);padding-top:18px;font-size:13px;line-height:1.7}.soa-doc{color:var(--blue);border-bottom:1px solid;align-items:center;gap:10px;margin-top:4px;font-size:14px;font-weight:700;display:inline-flex}.soa-doc svg{width:17px;height:17px}.soa-modal-close{width:40px;height:40px;color:var(--muted);place-items:center;display:grid;position:absolute;top:18px;right:18px}.soa-modal-close:hover{color:var(--ink)}.soa-modal-close svg{width:20px;height:20px}.soa-callout{background:var(--ice);border-left:3px solid var(--blue);gap:16px;max-width:760px;margin-top:30px;padding:22px 26px;display:flex}.soa-callout>svg{width:22px;height:22px;color:var(--blue);flex:none}.soa-callout p{font-size:15px;line-height:1.7}.soa-callout strong{color:var(--ink);font-weight:700}.soa-callout a{color:var(--blue);border-bottom:1px solid}@media (width<=900px){.soa{padding:80px var(--pad-x)}.soa-grid{grid-template-columns:1fr}}@media (width<=620px){.soa-badge{padding:28px 26px 26px}.soa-modal{padding:38px 24px 28px}.soa-modal h2{font-size:24px}.soa-modal-code{letter-spacing:.08em;font-size:20px}}.video{background:var(--navy);color:#fff;grid-template-columns:1fr 1.35fr;display:grid}.video-copy{padding:90px 4vw 90px var(--pad-x);align-self:center}.video-copy .kicker{color:var(--electric)}.video-copy h2{white-space:pre-line;margin:20px 0 22px;font-size:clamp(32px,3.4vw,52px)}.video-copy>p{color:#9cb1bd;line-height:1.75}.video-frame{background:var(--navy-deep);min-height:440px;position:relative}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-play{color:#fff;background:radial-gradient(80% 70% at 50% 45%,#00527d 0%,#0000 70%),linear-gradient(150deg,#082741 0%,#041724 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;display:flex;position:absolute;inset:0;overflow:hidden}.video-play img{object-fit:cover;filter:brightness(.6);width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;inset:0}.video-play:hover img{transform:scale(1.03)}.video-play-btn{width:82px;height:82px;color:var(--blue);transition:transform .3s var(--ease);background:#fff;border-radius:50%;place-items:center;display:grid;position:relative}.video-play-btn svg{width:28px;height:28px;margin-left:4px}.video-play:hover .video-play-btn{transform:scale(1.08)}.video-play-label{font-weight:700;position:relative}.video-play small{color:#a9c0cd;font-size:12px;position:relative}.cta{padding:90px var(--pad-x);background:var(--blue);color:#fff;justify-content:space-between;align-items:center;gap:40px;display:flex}.cta .kicker{color:#b9e3ff}.cta h2{margin:20px 0;font-size:clamp(36px,4.6vw,64px)}.cta h2 em{color:#b6e2f9}.cta-sub{color:#d5edff;font-size:15px}.circle-btn{width:158px;height:158px;color:var(--blue);text-align:center;transition:transform .3s var(--ease), box-shadow .3s var(--ease);background:#fff;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:12px;font-weight:700;display:flex}.circle-btn:hover{transform:scale(1.06);box-shadow:0 18px 44px #02243d40}.contact{padding:115px var(--pad-x)}.contact .kicker{color:var(--blue)}.contact .section-head>p{color:var(--muted)}.contact-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.contact-card{background:#fff;flex-direction:column;gap:8px;padding:38px 34px 40px;transition:background .25s;display:flex}.contact-card:hover{background:var(--ice)}.contact-card>svg{width:22px;height:22px;color:var(--blue);margin-bottom:20px}.contact-label{color:var(--muted)}.contact-card strong{letter-spacing:-.025em;font-size:20px;font-weight:600;line-height:1.4}.contact-note{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.contact-foot{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:34px;font-size:13px;display:flex}.contact-foot svg{color:var(--blue)}footer{padding:78px var(--pad-x) 40px;background:var(--navy-deep);color:#90a8b6;grid-template-columns:2fr 1.6fr 1fr 1.1fr;gap:50px;font-size:13px;display:grid}.footer-brand .logo{color:#fff}.footer-brand p{margin-top:26px;line-height:1.8}footer h2{letter-spacing:.2em;text-transform:uppercase;color:#fff;margin-bottom:22px;font-size:10px;font-weight:700}footer a{align-items:center;gap:10px;margin:13px 0;transition:color .2s;display:flex}footer a:hover{color:#fff}footer a svg{width:15px;color:var(--electric);flex:none}.foot-note{align-self:end;font-size:11px;line-height:1.9}.foot-note a{display:inline}@media (width<=1100px){.service-grid,.reason-grid{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr 1fr}}@media (width<=900px){:root{--pad-x:6vw}.site-nav{gap:16px}.navlinks{padding:22px var(--pad-x) 30px;background:var(--navy);border-bottom:1px solid var(--line-dark);flex-direction:column;gap:4px;margin:0;display:none;position:absolute;inset:100% 0 auto}.navlinks.open{display:flex}.site-nav:has(.navlinks.open){background:var(--navy);-webkit-backdrop-filter:none;backdrop-filter:none}.navlinks a{border-bottom:1px solid #ffffff12;padding:12px 0;font-size:16px}.navcta{display:none}.navlinks .navcta-menu{border-bottom:0;align-self:flex-start;margin-top:20px;padding:13px 20px;font-size:14px;display:inline-flex}.menubtn{margin-left:auto;display:block}.hero{height:auto;min-height:0;padding:140px var(--pad-x) 84px;flex-direction:column;justify-content:center;align-items:flex-start}.hero-content{width:100%;max-width:100%}.hero-number{width:100%;margin-top:52px;position:static}.scroll{display:none}.intro{padding:90px var(--pad-x);grid-template-columns:1fr}.intro-copy{margin-top:26px}.stats{grid-column:1}.method-copy{padding:80px var(--pad-x)}.contact-grid,.video{grid-template-columns:1fr}.video-copy{padding:70px var(--pad-x) 40px}.video-frame{aspect-ratio:16/9;min-height:0}.cta{flex-direction:column;align-items:flex-start}}@media (width<=620px){.site-nav{height:78px}.site-nav.scrolled{height:70px}.logo-img{height:34px}.hero{padding-top:124px}.hero h1{font-size:clamp(32px,9vw,44px)}.eyebrow{letter-spacing:.16em;align-items:flex-start;font-size:10px}.eyebrow span{flex:none;width:26px;margin-top:6px}.hero-number strong{font-size:52px}.hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.primary{justify-content:space-between;width:100%}.section-head{display:block}.section-head>p{margin-top:24px}.stats{grid-auto-flow:row}.stats div{border-right:0;border-bottom:1px solid var(--line);padding:26px 0}.stat-soa dt{padding-top:0}.service-grid,.reason-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-top{margin-bottom:30px}.experience{padding:24px 28px}.circle-btn{width:132px;height:132px;margin-top:8px}footer{grid-template-columns:1fr;gap:38px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.navlinks a.active{color:#fff;border-bottom-color:var(--electric)}.section-link,.text-link,.source-link{align-items:center;gap:10px;font-weight:700;display:inline-flex}.section-link{color:var(--electric);margin-top:34px}.page-hero{min-height:540px;padding:170px var(--pad-x) 90px;color:#fff;background:radial-gradient(80% 110% at 90% 0,#075580 0%,#0000 58%),linear-gradient(145deg,#071f33,#03121f);position:relative;overflow:hidden}.page-hero-copy{z-index:1;max-width:900px;position:relative}.page-hero h1{margin:25px 0;font-size:clamp(36px,4.2vw,56px)}.page-hero-copy>p:last-child{color:#bfd0da;max-width:650px;font-size:18px;line-height:1.7}.story{padding:110px var(--pad-x);grid-template-columns:1fr 1fr;gap:8vw;display:grid}.story .kicker,.works-list .kicker,.project-detail .kicker{color:var(--blue)}.story h2,.project-detail h2{margin-top:20px;font-size:clamp(30px,3.4vw,46px)}.story>div:last-child p,.project-detail p{color:var(--muted);font-size:17px;line-height:1.85}.story>div:last-child p+p,.project-detail p+p{margin-top:22px}.services-page{color:var(--ink);background:#fff;padding-top:110px}.services-page .kicker,.services-page .section-head h2 em{color:var(--blue)}.services-page .section-head>p{color:var(--muted)}.services-page .service-grid{grid-template-columns:repeat(2,1fr)}.services-cta{border-top:1px solid var(--line);align-items:center;gap:30px 50px;margin-top:70px;padding-top:55px;display:flex}.services-cta h2{font-size:32px}.services-cta p{max-width:420px;color:var(--muted);margin-right:auto;line-height:1.7}.works-list{padding:100px var(--pad-x) 110px}.works-list-head{margin-bottom:65px}.works-list-head h2{margin-top:18px;font-size:clamp(34px,4vw,54px)}.works-list-head h2 em{color:var(--blue)}.work-card{grid-template-columns:1.05fr 1fr;align-items:center;gap:7vw;display:grid}.work-card+.work-card{border-top:1px solid var(--line);margin-top:90px;padding-top:90px}.work-image{position:relative}.work-image .project-visual{height:650px}.work-image span{background:var(--blue);color:#fff;letter-spacing:.14em;padding:17px 22px;font-size:11px;font-weight:700;position:absolute;bottom:0;left:0}.work-card h3{letter-spacing:-.035em;margin:18px 0;font-size:clamp(30px,3.5vw,48px)}.work-card-summary{color:var(--muted);line-height:1.8}.work-card-meta{color:var(--blue);font-size:clamp(16px,1.6vw,20px);font-weight:700;line-height:1.45}.work-card-tags{flex-wrap:wrap;gap:8px;margin:20px 0 22px;display:flex}.work-card-tags li{border:1px solid var(--line);color:var(--ink);padding:8px 12px;font-size:12px;line-height:1.2}.text-link{color:var(--blue);margin-top:30px}.project-detail{padding:90px var(--pad-x) 110px}.project-detail h2{margin-bottom:30px}.project-body{grid-template-columns:1fr 1fr;gap:8vw;margin-top:70px;display:grid}.project-scope{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8vw;margin-top:80px;padding-block:55px;display:grid}.project-scope h2{margin-bottom:0}.project-scope ul{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:14px 28px;display:grid}.project-scope li{color:var(--ink);align-items:flex-start;gap:10px;font-size:15px;line-height:1.5;display:flex}.project-scope svg{width:17px;height:17px;color:var(--blue);stroke-width:2.5px;flex:none;margin-top:3px}.source-link{border-bottom:1px solid var(--blue);color:var(--blue);margin-top:35px;padding-bottom:8px}.project-facts{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.project-facts div{padding:24px 16px 24px 0}.project-facts dt{color:var(--blue);letter-spacing:-.04em;font-size:30px;font-weight:700}.project-facts dd{color:var(--muted);margin:5px 0 0;font-size:12px}.project-visual{background:linear-gradient(150deg,#0000 0 46%,#ffffff0a 46% 47%,#0000 47%),radial-gradient(circle at 18% 16%,#16a4df 0,#0876aa 18%,#0000 50%),linear-gradient(145deg,#0b3e59,#031722 72%);min-height:430px;position:relative;overflow:hidden}.project-visual:before,.project-visual:after{content:"";border:1px solid #ffffff21;border-radius:50%;position:absolute}.project-visual:before{width:420px;height:420px;top:-130px;right:-150px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}.project-visual:after{width:230px;height:230px;bottom:-80px;left:-75px}.project-building{clip-path:polygon(20% 0,100% 18%,100% 100%,0 100%,0 16%);background:linear-gradient(105deg,#092b3c,#0c506e);grid-template-columns:repeat(3,1fr);gap:9%;height:72%;padding:8% 8% 0;display:grid;position:absolute;bottom:0;left:14%;right:14%;box-shadow:0 -20px 80px #00101a88}.project-building span{background:linear-gradient(145deg,#1685ad,#072d40 75%);border:1px solid #60c7f157;align-self:end;height:62%;box-shadow:inset 0 0 22px #38bdf82b}.project-building span:nth-child(2n){height:78%}.project-building span:nth-child(3n){height:52%}.project-visual>p{z-index:2;color:#fff;position:absolute;top:8%;left:7%}.project-visual>p b{letter-spacing:.08em;font-size:clamp(24px,3vw,42px);display:block}.project-visual>p small{color:#a8d9ed;letter-spacing:.16em;text-transform:uppercase;margin-top:7px;font-size:10px;display:block}@media (width<=900px){.page-hero{min-height:470px;padding-top:145px}.story,.work-card{grid-template-columns:1fr}.project-body,.project-scope{grid-template-columns:1fr;gap:34px}.work-image .project-visual{height:500px}.services-cta{flex-direction:column;align-items:flex-start}}@media (width<=620px){.page-hero{min-height:420px;padding-top:125px}.page-hero h1{font-size:34px}.story,.works-list{padding:75px var(--pad-x)}.project-detail{padding:60px var(--pad-x) 75px}.services-page .service-grid{grid-template-columns:1fr}.work-image .project-visual{height:430px}.project-facts{grid-template-columns:1fr}.project-facts div+div{border-top:1px solid var(--line)}.project-scope{margin-top:60px;padding-block:42px}.project-scope ul{grid-template-columns:1fr}}.crumbs{letter-spacing:.04em;color:#9dbdd2;margin-bottom:26px;font-size:12px}.crumbs ol{flex-wrap:wrap;gap:8px;display:flex}.crumbs li+li:before{content:"/";color:#4d788f;margin-right:8px}.crumbs a{border-bottom:1px solid #0000}.crumbs a:hover{color:#fff;border-bottom-color:var(--electric)}.crumbs [aria-current]{color:#fff}.page-hero h1+p{margin-top:25px}.service-more{letter-spacing:.08em;text-transform:uppercase;color:var(--electric);align-items:center;gap:8px;margin-top:22px;font-size:12px;font-weight:700;display:inline-flex}.service-more svg{width:15px;height:15px}.service-card:hover .service-more{transition:gap .25s var(--ease);gap:14px}.service-detail{padding:100px var(--pad-x) 30px}.service-detail>section{padding-bottom:70px}.service-detail>section~section{border-top:1px solid var(--line);padding-top:60px}.service-detail h2{margin-bottom:34px;font-size:clamp(30px,3.4vw,46px)}.service-detail h3{margin-bottom:10px;font-size:19px;font-weight:600}.service-detail p{color:var(--muted);line-height:1.8}.detail-grid{grid-template-columns:repeat(3,1fr);gap:42px 46px;display:grid}.detail-grid p{font-size:15px}.detail-steps{grid-template-columns:repeat(2,1fr);gap:34px 60px;display:grid}.detail-steps li{gap:20px;display:flex}.detail-steps b{color:var(--blue);padding-top:4px;font-size:13px;font-weight:700}.detail-steps strong{letter-spacing:-.02em;margin-bottom:8px;font-size:18px;font-weight:600;display:block}.detail-steps p{font-size:15px}.detail-norms{max-width:760px;font-size:17px}.detail-projects li{border:1px solid var(--line)}.detail-projects a{padding:34px 36px;display:block}.detail-projects a:hover{background:var(--ice)}.detail-projects strong{letter-spacing:-.03em;margin-bottom:12px;font-size:24px;font-weight:600;display:block}.detail-projects span{color:var(--muted);line-height:1.8;display:block}.detail-projects .text-link{display:inline-flex}.detail-faq div+div{border-top:1px solid var(--line);margin-top:30px;padding-top:30px}.detail-faq dt{letter-spacing:-.02em;font-size:19px;font-weight:600}.detail-faq dd{color:var(--muted);max-width:820px;margin:12px 0 0;line-height:1.8}.detail-cta{background:var(--ice);margin:0 calc(var(--pad-x) * -1);padding:70px var(--pad-x)!important}.detail-cta p{max-width:620px}.detail-cta-actions{flex-wrap:wrap;align-items:center;gap:22px 40px;margin-top:34px;display:flex}.detail-cta-actions .text-link{color:var(--blue);margin-top:0}.detail-others h2{margin-bottom:24px;font-size:22px}.detail-others ul{flex-wrap:wrap;gap:12px;display:flex}.detail-others a{border:1px solid var(--line);padding:11px 18px;font-size:14px;display:block}.detail-others a:hover{border-color:var(--blue);color:var(--blue)}.content-figure{margin:0}.content-figure img{width:100%;height:auto;display:block}.content-figure figcaption{color:var(--muted);margin-top:14px;font-size:14px;line-height:1.6}.detail-figure{padding-bottom:70px}.detail-figure img{width:auto;max-width:100%;max-height:520px}.detail-figure-second{border-top:1px solid var(--line);padding-top:60px}.project-figure img{object-fit:cover;object-position:center;max-width:1440px;height:clamp(280px,38vw,540px);margin-inline:auto}.site-works{padding:110px var(--pad-x);background:var(--ice)}.site-works .kicker,.site-works .section-head h2 em{color:var(--blue)}.site-works .section-head>p{color:var(--muted)}.site-works>.primary{margin-top:44px}.works-sub{margin:78px 0 30px;font-size:22px;font-weight:600}.strip-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.strip-grid img{aspect-ratio:4/5;object-fit:cover;object-position:center;height:auto}.carousel{position:relative}.carousel-track{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:26px;padding-bottom:6px;scroll-padding-left:0;display:flex;overflow-x:auto}.carousel-track>li{scroll-snap-align:start;flex:1 0 min(78vw,420px)}.carousel-card{border:1px solid var(--line);height:100%;transition:border-color .3s var(--ease), transform .3s var(--ease);background:#fff;flex-direction:column;padding-bottom:28px;display:flex}.carousel-card:hover{border-color:var(--blue);transform:translateY(-3px)}.carousel-card .kicker{margin:26px 26px 0}.carousel-card h4{letter-spacing:-.03em;margin:12px 26px 0;font-size:25px;font-weight:600;line-height:1.15}.carousel-card p:not(.kicker){color:var(--muted);margin:14px 26px 0;font-size:15px;line-height:1.7}.carousel-card .text-link{color:var(--blue);margin:auto 26px 0;padding-top:22px;font-size:15px}.carousel-cover{position:relative}.carousel-cover img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto}.carousel-cover .project-visual{aspect-ratio:3/2;min-height:0}.carousel-cover span{background:var(--blue);color:#fff;letter-spacing:.14em;padding:12px 18px;font-size:10px;font-weight:700;position:absolute;bottom:0;left:0}.carousel-controls{gap:10px;margin-top:26px;display:flex}.carousel-controls button{border:1px solid var(--line);width:46px;height:46px;color:var(--blue);transition:border-color .3s var(--ease), color .3s var(--ease);background:#fff;place-items:center;display:grid}.carousel-controls button:hover:not(:disabled){border-color:var(--blue)}.carousel-controls button:disabled{color:var(--muted);opacity:.45;cursor:default}.carousel-controls svg{width:20px;height:20px}.story-figure{margin-top:40px}.story-figure img{aspect-ratio:4/3;object-fit:cover;height:auto}.project-chapter{grid-template-columns:1fr 1fr;align-items:center;gap:6vw;margin-top:80px;display:grid}.project-chapter-flip .content-figure{order:2}.project-chapter h2{margin-top:0;margin-bottom:22px;font-size:clamp(24px,2.4vw,32px)}.work-image .content-figure img{object-fit:cover;height:650px}.where{padding:105px var(--pad-x) 110px}.where .kicker{color:var(--blue)}.where .section-head>p{color:var(--muted)}.where-grid{background:var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.where-grid>div{background:#fff;padding:40px 34px 44px}.where-grid h3{margin-bottom:14px;font-size:21px;font-weight:600}.where-grid p{color:var(--muted);font-size:15px;line-height:1.75}.where-grid a{color:var(--blue);border-bottom:1px solid}.project-services{margin:70px 0 80px}.project-services h3{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;font-size:13px;font-weight:700}.project-services ul{flex-wrap:wrap;gap:10px;display:flex}.project-services a{border:1px solid var(--line);color:var(--blue);padding:10px 16px;font-size:14px;display:block}.project-services a:hover{border-color:var(--blue)}.contact-nap{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:30px 7vw;margin-top:70px;padding-top:55px;display:grid}.contact-nap h2{grid-column:1/-1;font-size:30px}.contact-nap address{font-size:17px;font-style:normal;line-height:1.9}.contact-nap address strong{font-weight:600;display:block}.contact-nap a{color:var(--blue)}.contact-nap p{color:var(--muted);line-height:1.85}.legal{max-width:820px;padding:90px var(--pad-x) 110px}.legal h2{margin:42px 0 14px;font-size:25px}.legal h2:first-child{margin-top:0}.legal p{color:var(--muted);line-height:1.85}.legal a{color:var(--blue);border-bottom:1px solid}.legal-note{border-top:1px solid var(--line);margin-top:46px;padding-top:26px;font-size:15px}.notfound{padding:90px var(--pad-x) 110px}.notfound h2{margin-bottom:30px;font-size:28px}.notfound ul{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.notfound li{background:#fff;padding:30px 28px 34px}.notfound li a{letter-spacing:-.025em;color:var(--blue);margin-bottom:10px;font-size:20px;font-weight:600;display:block}.notfound li span{color:var(--muted);font-size:14px;line-height:1.7}.notfound>p{color:var(--muted);margin-top:34px;line-height:1.8}.notfound>p a{color:var(--blue);border-bottom:1px solid}.footer-nap{margin-top:24px;font-style:normal;line-height:1.9}.footer-nap strong{color:#fff;font-weight:600;display:block}.footer-nap a{margin:0;display:inline-flex}.footer-nap a+a{margin-left:14px}@media (width<=1100px){.detail-grid,.notfound ul{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.where-grid{grid-template-columns:1fr}.service-detail{padding-top:70px}.detail-steps,.contact-nap{grid-template-columns:1fr}.strip-grid{grid-template-columns:1fr;gap:34px}.project-chapter{grid-template-columns:1fr;gap:30px;margin-top:55px}.project-chapter-flip .content-figure{order:0}.work-image .content-figure img{height:500px}}@media (width<=620px){.project-services{margin:50px 0 60px}.detail-grid,.notfound ul{grid-template-columns:1fr}.detail-cta-actions .primary{justify-content:space-between;width:100%}.detail-figure{margin:0 calc(var(--pad-x) * -1);padding-bottom:55px}.detail-figure img{width:100%;max-height:none}.detail-figure-second{padding-top:45px}.detail-figure figcaption{padding:0 var(--pad-x)}.site-works{padding:75px var(--pad-x)}.works-sub{margin-top:55px}.work-image .content-figure img{height:430px}}.works-intro{padding:100px var(--pad-x) 110px;background:#f7fafc}.works-intro-grid{background:var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:20px;display:grid}.works-intro-grid>div{background:#fff;padding:36px 32px 42px}.works-intro-grid h3{margin-bottom:12px;font-size:20px;font-weight:600}.works-intro-grid p{color:var(--muted);font-size:15px;line-height:1.75}.works-intro-grid a{color:var(--blue);border-bottom:1px solid}.works-cta{margin:0}@media (width<=900px){.works-intro{padding-top:70px}.works-intro-grid{grid-template-columns:1fr}}@media (width<=620px){.works-list{padding-top:70px}.works-list-head{margin-bottom:45px}.work-card+.work-card{margin-top:65px;padding-top:65px}.work-card-tags{margin-block:16px 20px}.works-intro{padding-bottom:75px}}
