:root{--blue:#006697;--ink:#22353e;--muted:#61717a;--paper:#f6f7f7;--line:#d9dfe2;--ease:cubic-bezier(.2,.75,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #00b6f0;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.04;letter-spacing:-.055em}p{color:var(--muted)}header{height:94px;padding:0 4.5vw;display:flex;align-items:center;gap:40px;background:#fff;position:relative;z-index:20;border-bottom:1px solid #eee}.brand{width:120px;height:85px;overflow:hidden;display:flex;align-items:center;justify-content:center}.brand img{width:150px;height:150px;object-fit:contain;max-width:none}nav{display:flex;gap:32px;margin-left:auto;font-size:14px}nav a:hover{color:var(--blue)}.header-cta{background:var(--blue);color:white;padding:13px 20px;font-size:14px;display:flex;gap:28px;align-items:center}.header-cta span{font-size:24px;line-height:1}.menu{display:none}.skip{position:absolute;left:20px;top:-100px;background:#fff;padding:16px;z-index:200}.skip:focus{top:10px}.progress{height:3px;background:#009ada;position:fixed;top:0;left:0;width:0;z-index:100}.hero{height:min(850px,calc(100svh - 94px));min-height:650px;position:relative;overflow:hidden;color:#fff;background:#26373c}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;animation:drift 24s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,rgba(8,22,30,.75),rgba(8,22,30,.12)),linear-gradient(0deg,rgba(8,22,30,.65),transparent 40%)}.hero-content{position:relative;padding:75px 6vw 110px;height:100%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.17em;display:flex;align-items:center;gap:12px;margin-bottom:35px}.eyebrow span{width:26px;height:1px;background:#fff}h1{font-size:clamp(70px,8vw,126px);max-width:1000px;animation:enter 1s var(--ease) both}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}h1 em{color:#fff}h1:after{content:"";display:inline-block;background:#0091c9;width:14px;height:14px;margin-left:14px}.hero-bottom{display:flex;gap:60px;align-items:center;margin-top:45px}.hero-bottom p{color:#e1e7e9;font-size:18px;line-height:1.6}.button{display:inline-flex;gap:40px;align-items:center;padding:17px 25px;line-height:1.3;font-size:15px;transition:transform .25s,background .25s}.button span{font-size:26px}.button:hover{transform:translateY(-4px)}.light{background:white;color:var(--ink)}.blue{background:var(--blue);color:white}.hero-foot{position:absolute;bottom:28px;left:6vw;right:6vw;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.12em}.motion-toggle{background:transparent;border:0;border-bottom:1px solid #ffffff88;color:#fff;font-size:12px;padding:4px}.image-note{position:absolute;right:12px;top:50%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.07em;opacity:.8}.wrap{padding:115px 6vw}.section-label{font-size:12px;letter-spacing:.15em;color:var(--blue);margin-bottom:48px}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw}h2{font-size:clamp(45px,4.5vw,73px)}h2 span{color:var(--blue)}.intro-copy p{margin-bottom:24px}.large{font-size:23px;line-height:1.45;color:var(--ink);letter-spacing:-.025em}.text-link{display:inline-flex;gap:24px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--blue);font-size:15px;color:var(--blue)}.text-link span{font-size:24px}.values{display:grid;grid-template-columns:repeat(3,1fr);margin-top:85px;padding-top:28px;border-top:1px solid var(--line);gap:30px}.values strong{font-size:23px;display:block;letter-spacing:-.035em;font-weight:400}.values span{font-size:14px;color:var(--muted)}.expertise{background:var(--paper)}.section-head{display:flex;align-items:flex-end;gap:12vw;justify-content:space-between;margin-bottom:65px}.section-head h2{flex:1.3}.section-head p{flex:1;max-width:380px}.services{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;padding:30px 0;list-style:none;gap:45px}summary::-webkit-details-marker{display:none}.number{font-size:13px;color:var(--blue)}summary h3{font-size:clamp(28px,3vw,44px)}.plus{margin-left:auto;font-size:32px;font-weight:300;color:var(--blue);transition:transform .3s}details[open] .plus{transform:rotate(45deg)}.details-body{padding:0 70px 35px;display:flex;gap:8vw}.details-body p{max-width:590px}.tags{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;max-width:340px}.tags span{font-size:12px;border:1px solid #cbd5da;padding:5px 12px;border-radius:30px;white-space:nowrap}.scene{height:620px;position:relative;overflow:hidden;background:#253944;color:#fff}.scene>img{width:100%;height:100%;object-fit:cover;transition:opacity .2s,transform 1.3s var(--ease)}.scene:hover>img{transform:scale(1.035)}.scene-gradient{position:absolute;inset:0;background:linear-gradient(0deg,#081820aa,transparent 55%,#08182044)}.scene-top,.scene-bottom{position:absolute;left:35px;right:35px;display:flex;justify-content:space-between;align-items:center}.scene-top{top:25px;font-size:12px;letter-spacing:.12em}.scene-top button{background:#ffffffee;color:var(--ink);padding:8px 15px;border:0;font-size:13px}.scene-bottom{bottom:35px;align-items:flex-end;gap:25px}.scene-bottom span{font-size:11px;letter-spacing:.15em}.scene-bottom h3{font-size:42px;margin-top:12px}.scene-controls{display:flex;gap:6px}.scene-controls button{border:1px solid #ffffff88;background:#13263088;color:#fff;padding:11px 15px;font-size:13px}.scene-controls button.active{background:white;color:var(--ink)}.caption{font-size:12px;margin-top:12px}.visual-text{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:5vw;align-items:start;margin-top:50px}.visual-text h3{font-size:30px;line-height:1.12}.visual-text .text-link{justify-self:end}.process{background:#20333c;color:#fff}.process .section-label{color:#88bfda}.process h2 span{color:#80c5e9}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:75px}.steps article{border-top:1px solid #6c7c85;padding-top:25px}.steps article>span{font-size:11px;letter-spacing:.09em;color:#9fc4d7}.steps h3{font-size:25px;line-height:1.2;margin:30px 0 20px;letter-spacing:-.035em}.steps p{color:#becbd1;font-size:15px}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:8vw}.contact h2{font-size:clamp(75px,8vw,120px);margin-bottom:35px}.contact h2 em{color:var(--blue)}.contact .button{margin-top:35px}.contact-details{padding-top:10px}.contact-details>div{border-bottom:1px solid var(--line);padding:20px 0}.contact-details>div>span{display:block;font-size:11px;letter-spacing:.12em;margin-bottom:8px;color:var(--muted)}.contact-details a{font-size:clamp(20px,2.3vw,34px);letter-spacing:-.04em}.contact-details a:hover{color:var(--blue)}.contact-details p{color:var(--ink)}.contact-hint{font-size:14px;margin-top:24px;max-width:360px}footer{background:var(--paper);padding:40px 6vw 24px}.footer-top{display:flex;align-items:center;gap:45px;border-bottom:1px solid var(--line);padding-bottom:30px}.footer-wordmark{font-size:68px;line-height:1;font-weight:800;letter-spacing:-.065em}.footer-wordmark span{color:var(--blue)}.footer-top>a{margin-left:auto;font-size:13px}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;margin-top:24px;color:var(--muted);gap:20px}.footer-bottom div{display:flex;gap:25px}.reveal{opacity:1;transform:none}.js-motion .reveal:not(.visible){opacity:0;transform:translateY(22px)}.reveal{transition:opacity .8s var(--ease),transform .8s var(--ease)}.paused *, .paused *:before,.paused *:after{animation-play-state:paused!important}.paused .reveal{opacity:1!important;transform:none!important}.paused{scroll-behavior:auto}dialog{border:0;padding:20px;background:#13232b;color:#fff;width:min(1200px,95vw);max-height:95svh}dialog::backdrop{background:#07141cea}dialog img{width:100%;max-height:75svh;object-fit:contain}dialog button{display:block;margin:0 0 15px auto;color:#fff;background:none;border:1px solid #ffffff66;padding:8px 18px}dialog p{color:#b8c7cf;font-size:12px}.legal{max-width:900px;margin:auto;min-height:65vh}.legal h1{font-size:54px;margin-bottom:35px}.legal h1:after{display:none}.legal h2{font-size:26px;letter-spacing:-.03em;margin:30px 0 12px}.legal p{margin:15px 0}.legal a{text-decoration:underline}@keyframes drift{from{transform:scale(1)}to{transform:scale(1.09)}}@keyframes enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.wrap{padding-left:max(6vw,calc((100vw - 1440px)/2));padding-right:max(6vw,calc((100vw - 1440px)/2))}}@media(max-width:950px){header{gap:15px;padding:0 4vw}nav{gap:18px}.header-cta{gap:12px}.hero{min-height:620px}.hero-content{padding-left:6vw}.intro-grid{gap:6vw}.details-body{gap:30px}.steps{grid-template-columns:repeat(2,1fr);gap:45px}.visual-text{grid-template-columns:1fr 1fr}.visual-text .text-link{justify-self:start}.scene{height:520px}.scene-bottom{align-items:flex-start;flex-direction:column}.hero-foot>span:nth-child(2){display:none}}@media(max-width:650px){header{height:78px;justify-content:space-between}.brand{height:74px;width:93px}.brand img{width:130px;height:130px}.header-cta{font-size:12px;padding:10px 12px;margin-left:auto}.header-cta span{display:none}.menu{display:block;border:0;background:none;font-size:13px;padding:8px}nav{display:none;position:absolute;left:0;right:0;top:78px;background:white;padding:25px 6vw;flex-direction:column;box-shadow:0 15px 25px #0001}nav.open{display:flex}.hero{height:calc(100svh - 78px);min-height:620px;max-height:850px}.hero-content{justify-content:center;padding:45px 6vw 100px}.eyebrow{font-size:10px;letter-spacing:.08em;max-width:300px;line-height:1.7;margin-bottom:30px}.eyebrow span{display:none}h1{font-size:clamp(55px,12.6vw,82px)}h1:after{width:8px;height:8px;margin-left:9px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:25px;margin-top:30px}.hero-bottom p{font-size:16px}.button{padding:14px 20px;font-size:14px}.hero-foot{font-size:10px;bottom:23px}.wrap{padding:75px 6vw}.section-label{margin-bottom:30px;font-size:11px}.intro-grid{grid-template-columns:1fr;gap:35px}h2{font-size:43px}.large{font-size:21px}.values{grid-template-columns:1fr;gap:20px;margin-top:40px}.values>div{display:flex;flex-direction:column}.values strong{font-size:22px}.section-head{display:block;margin-bottom:35px}.section-head p{margin-top:25px}summary{gap:20px;padding:25px 0}summary h3{font-size:28px;letter-spacing:-.045em}.details-body{padding:0 0 28px 34px;display:block}.tags{margin-top:20px}.scene{height:530px;margin:0 -6.82%}.scene-top,.scene-bottom{left:6vw;right:6vw}.scene-bottom h3{font-size:36px}.scene-bottom{bottom:25px}.scene-controls button{font-size:12px;padding:10px 12px}.visual-text{grid-template-columns:1fr;gap:23px;margin-top:35px}.steps{grid-template-columns:1fr;gap:35px;margin-top:45px}.steps h3{margin:18px 0 12px;font-size:27px}.steps p{font-size:16px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact h2{font-size:80px}.contact-details a{font-size:27px}.footer-top{gap:20px;flex-wrap:wrap}.footer-wordmark{font-size:50px}.footer-top p{font-size:13px}.footer-top>a{margin-left:0;width:100%;font-size:13px}.footer-bottom{flex-wrap:wrap;font-size:12px}.footer-bottom>span:nth-child(2){display:none}.legal h1{font-size:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.visible){opacity:1;transform:none}}
.contact-form{display:grid;grid-template-columns:1fr 1.5fr;gap:7vw;margin-top:80px;padding-top:60px;border-top:1px solid var(--line)}.form-heading .section-label{display:block;font-size:11px;margin-bottom:22px}.form-heading h3{font-size:32px;line-height:1.15}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-fields label{display:block;font-size:14px;margin-bottom:20px}.form-fields input,.form-fields select,.form-fields textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:#f6f7f7;border:1px solid #ced7dc;border-radius:0;padding:14px;margin-top:8px}.form-fields textarea{resize:vertical}.form-fields input:focus,.form-fields select:focus,.form-fields textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.form-fields .button{border:0;margin-top:22px;cursor:pointer}.form-privacy,.form-note{font-size:13px;line-height:1.6}.form-privacy a{text-decoration:underline}.form-note{margin-top:12px}.form-fields #form-status{font-size:14px;margin-top:15px;color:var(--ink)}#copy-message{background:transparent;border:1px solid var(--blue);color:var(--blue);padding:10px 15px;margin-top:10px}@media(max-width:800px){.contact-form{grid-template-columns:1fr;gap:30px}}@media(max-width:500px){.form-row{grid-template-columns:1fr;gap:0}.contact-form{margin-top:50px;padding-top:40px}}
/* Equal emphasis: foundation, coordination, character. */
.hero h1{font-size:clamp(62px,7.5vw,112px)}.eyebrow{font-size:14px;letter-spacing:.1em}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:0;gap:0}.service-card{padding:32px 30px 22px 0;border-top:2px solid var(--blue)}.service-card+.service-card{border-left:1px solid var(--line);padding-left:30px}.service-card .number{font-size:12px;letter-spacing:.06em}.service-card h3{font-size:clamp(28px,2.7vw,42px);line-height:1.12;margin:32px 0 24px}.service-card p{font-size:16px;line-height:1.7}.service-card ul{padding:0;list-style:none;margin:28px 0 0}.service-card li{border-top:1px solid var(--line);padding:11px 0;font-size:14px}.values b{font-size:52px;font-weight:400;color:var(--blue);letter-spacing:-.06em}.values strong{line-height:1.3}.values>div:last-child strong{font-size:25px;max-width:260px}.experience-block{margin-top:85px;padding-top:50px;border-top:1px solid var(--line)}.experience-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 7vw}.experience-heading .section-label{grid-column:1/-1;margin:0}.experience-heading h3{font-size:36px;line-height:1.16}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.fields article{border-top:1px solid var(--line);padding-top:20px}.fields article>span{font-size:13px;color:var(--blue)}.fields h4{font-size:22px;font-weight:400;letter-spacing:-.03em;margin:14px 0}.fields p{font-size:16px}.partner-note{font-size:14px;margin-top:35px;max-width:900px}.process-intro{font-size:20px;color:#becbd1;max-width:650px;margin-top:30px}.drawing-layer{position:absolute;inset:0;clip-path:inset(0 0 0 var(--room-reveal,45%));pointer-events:none}.drawing-layer img{width:100%;height:100%;object-fit:cover}.drawing-seam{position:absolute;top:0;bottom:0;left:var(--room-reveal,45%);width:2px;background:#70c8ef;pointer-events:none}.scene:hover>img{transform:none}.drawing-control{display:flex;align-items:center;gap:22px;padding:22px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.drawing-control label{font-size:15px;color:var(--ink)}.drawing-control input{flex:1;min-width:140px;accent-color:var(--blue);cursor:ew-resize}.drawing-control span{font-size:13px;min-width:120px}.drawing-control button{border:1px solid var(--blue);background:white;color:var(--blue);font-size:14px;padding:9px 14px}.scene:not(.drawing-active) .drawing-layer,.scene:not(.drawing-active) .drawing-seam{display:none}.scene-top>span{background:#17333ed9;padding:8px 12px}.scene-gradient{background:linear-gradient(0deg,#081820d9,transparent 60%)}.tags span,.section-label{font-size:13px}.paused .scene>img{transition:none}.paused .button{transition:none}@media(max-width:950px){.service-card{padding-right:18px}.service-card+.service-card{padding-left:18px}.service-card h3{font-size:29px}.experience-heading{gap:25px}.fields{gap:22px}}@media(max-width:650px){.hero h1{font-size:clamp(46px,10.8vw,70px)}.eyebrow{font-size:12px;max-width:340px}.services,.fields,.experience-heading{grid-template-columns:1fr}.service-card,.service-card+.service-card{padding:27px 0;border-left:0}.service-card h3{font-size:35px;margin:22px 0}.service-card h3 br{display:none}.service-card ul{margin-top:20px}.experience-block{margin-top:45px;padding-top:35px}.experience-heading h3{font-size:32px}.fields{gap:30px;margin-top:30px}.values{gap:25px}.values strong{font-size:24px}.values>div:last-child strong{max-width:none}.drawing-control{gap:12px}.drawing-control label{width:100%}.drawing-control input{min-width:120px}.drawing-control button{width:100%}.process-intro{font-size:18px}.scene-bottom h3{font-size:32px}}
.drawing-control[hidden]{display:none}input[type=range]:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
