@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/fonts/manrope-latin.woff2)format("woff2-variations")}:root{color:#183437;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fbfdfd;font-family:Manrope Variable,Avenir Next,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100dvh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%}::selection{color:#123b40;background:#9dd8d8}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--ink:#183437;--ink-soft:#4d6668;--paper:#fbfdfd;--paper-soft:#eef7f7;--line:#c7dddd;--brand-blue:#9dd8d8;--brand:#34777d;--brand-deep:#245c62;--brand-dark:#123b40;--white:#fbfdfd;--radius:16px;--header-height:76px;--shadow:0 24px 70px #123b4024}body{color:var(--ink);background:var(--paper);overflow-x:clip}a{color:inherit;text-decoration:none}p{color:var(--ink-soft);line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}h1,h2{letter-spacing:-.052em;line-height:1.02}h3{letter-spacing:-.025em}.shell{width:min(100% - 48px,1320px);margin-inline:auto}.section{padding-block:clamp(88px,9vw,144px)}.skip-link{z-index:100;color:var(--white);background:var(--brand-dark);border-radius:999px;padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.button{min-height:52px;color:var(--white);background:var(--brand-deep);border:1px solid var(--brand-deep);white-space:nowrap;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0 25px;font-weight:760;line-height:1;transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s,background .24s,border-color .24s,color .24s;display:inline-flex}.button:hover{color:var(--white);background:var(--brand-dark);border-color:var(--brand-dark);transform:translateY(-3px);box-shadow:0 14px 32px #061b1d29}.button:active{transform:translateY(0)scale(.98)}.button:disabled{cursor:wait;opacity:.7}.button--compact{min-height:44px;padding-inline:20px;font-size:.79rem}.button--light{color:var(--brand-deep);background:var(--white);border-color:var(--white)}.button--light:hover{color:var(--brand-deep);background:#e4f3f3;border-color:#e4f3f3}.text-link{color:var(--brand-deep);text-decoration:underline;-webkit-text-decoration-color:var(--brand-blue);text-decoration-color:var(--brand-blue);text-underline-offset:5px;font-weight:760;transition:transform .22s cubic-bezier(.16,1,.3,1),letter-spacing .24s cubic-bezier(.16,1,.3,1);display:inline-flex}.text-link:hover{letter-spacing:.025em;transform:translate(3px)}.site-header{height:var(--header-height);z-index:40}.site-header--overlay{color:var(--white);border-bottom:1px solid #fff3;position:absolute;inset:0 0 auto}.site-header--solid{color:var(--ink);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfdfdf0;position:sticky;top:0}.nav-shell{align-items:center;gap:26px;height:100%;display:flex}.brand{color:var(--brand-deep);flex:none;align-items:center;gap:11px;line-height:1;display:inline-flex}.brand--light{color:var(--white)}.brand__mark{object-fit:cover;border-radius:50%;flex:none;width:48px;height:48px;box-shadow:0 4px 18px #123b4029}.brand__type{flex-direction:column;display:flex}.brand strong{letter-spacing:.16em;font-size:.93rem;font-weight:800}.brand__type>span{letter-spacing:.23em;margin-top:6px;font-size:.49rem;font-weight:740}.desktop-nav{align-items:center;gap:25px;margin-left:auto;font-size:.8rem;font-weight:700;display:flex}.desktop-nav a{opacity:.84;padding-block:28px;transition:color .18s,opacity .18s;position:relative}.desktop-nav a:after{content:"";transform-origin:100%;background:currentColor;height:2px;transition:transform .26s cubic-bezier(.16,1,.3,1);position:absolute;bottom:20px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover,.desktop-nav a.active{opacity:1}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.nav-phone{color:var(--brand-deep);opacity:.84;font-size:.76rem;font-weight:760;transition:opacity .18s}.nav-phone--light{color:var(--white)}.nav-phone:hover{opacity:1}.menu-toggle,.mobile-nav{display:none}.hero{min-height:100dvh;color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.hero__image,.hero__scrim{width:100%;height:100%;position:absolute;inset:0}.hero__image{object-fit:cover;animation:1.4s cubic-bezier(.16,1,.3,1) both hero-image-settle}.hero__scrim{background:linear-gradient(90deg,#0a2a2ef7,#0a2a2eba 43%,#0a2a2e14 76%)}.hero__content{z-index:1;padding-top:var(--header-height);position:relative}.hero h1{letter-spacing:-.067em;max-width:760px;margin-bottom:28px;font-size:clamp(3.4rem,7vw,7rem);font-weight:500;animation:.9s cubic-bezier(.16,1,.3,1) .1s both hero-title-in}.hero__lede{color:#ffffffdb;max-width:600px;margin-bottom:34px;font-size:clamp(1.08rem,1.7vw,1.36rem);line-height:1.55;animation:.76s cubic-bezier(.16,1,.3,1) .28s both hero-detail-in}.hero__content>.button{animation:.7s cubic-bezier(.16,1,.3,1) .41s both hero-detail-in}@keyframes hero-image-settle{0%{opacity:.72;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes hero-title-in{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}@keyframes hero-detail-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.statement-section,.approach-section,.principles-section{background:var(--paper)}.statement-copy{max-width:980px;margin-left:auto}.statement-copy h2,.section-heading h2,.approach-copy h2,.principles-intro h2,.faq-intro h2,.closing-cta h2,.about-copy h2,.contact-aside h2{font-size:clamp(2.8rem,5vw,5.6rem);font-weight:560}.statement-copy>p{max-width:690px;margin-top:30px;font-size:1.1rem}.expertise-section,.faq-section,.values-section{background:var(--paper-soft)}.section-heading{max-width:780px;margin-bottom:72px}.section-heading p{max-width:650px;font-size:1.08rem}.service-list,.service-detail-list{border-top:1px solid var(--line);margin-bottom:40px}.service-row{border-bottom:1px solid var(--line);grid-template-columns:72px minmax(220px,.8fr) minmax(280px,1fr);align-items:center;gap:28px;min-height:124px;transition:transform .26s cubic-bezier(.16,1,.3,1),background-color .26s;display:grid}.service-row:hover{background:#ffffff75;transform:translate(4px)}.service-index,.service-detail-row>span,.approach-page-copy article>span{color:var(--brand);font-size:.74rem;font-weight:800}.service-row h3{margin:0;font-size:clamp(1.55rem,2.8vw,2.65rem);font-weight:570}.service-row p{margin:0}.approach-grid{grid-template-columns:.82fr 1.18fr;align-items:center;gap:clamp(52px,8vw,118px);display:grid}.approach-image,.approach-page-image,.about-image{border-radius:var(--radius);overflow:hidden}.approach-image img,.approach-page-image img,.about-image img{object-fit:cover;border-radius:var(--radius);width:100%;height:100%;min-height:560px;transition:transform 1s cubic-bezier(.16,1,.3,1)}.approach-image:hover img,.approach-page-image:hover img,.about-image:hover img{transform:scale(1.018)}.approach-copy>p{max-width:650px;margin:28px 0 46px;font-size:1.07rem}.approach-steps{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 32px;margin-bottom:34px;display:grid}.approach-steps>div{border-bottom:1px solid var(--line);padding:26px 0}.approach-steps h3{margin-bottom:9px;font-size:1.15rem}.approach-steps p{margin:0;font-size:.94rem}.image-section{min-height:min(74vw,820px);color:var(--white);background:var(--brand-dark);position:relative;overflow:hidden}.image-section:after{content:"";background:linear-gradient(#061b1d0a 30%,#061b1dd1);position:absolute;inset:0}.image-section>img{object-fit:cover;width:100%;height:100%;transition:transform 1s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.image-section:hover>img{transform:scale(1.012)}.image-section__caption{z-index:1;position:absolute;bottom:clamp(48px,7vw,100px);left:0;right:0}.image-section__caption h2{max-width:900px;margin:0;font-size:clamp(3rem,6vw,6.6rem);font-weight:520}.principles-grid,.faq-grid{grid-template-columns:.9fr 1.1fr;gap:clamp(60px,9vw,140px);display:grid}.faq-grid{grid-template-columns:.72fr 1.28fr}.principles-list{border-top:1px solid var(--line)}.principles-list article{border-bottom:1px solid var(--line);grid-template-columns:52px 150px 1fr;gap:26px;padding:34px 0;display:grid}.principles-list strong{color:var(--brand);font-size:.74rem}.principles-list h3,.principles-list p{margin:0}.faq-list{max-width:980px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:30px;min-height:92px;font-size:clamp(1.15rem,2vw,1.55rem);font-weight:720;list-style:none;transition:color .2s,padding-left .26s cubic-bezier(.16,1,.3,1);display:flex}.faq-list summary:hover{color:var(--brand);padding-left:8px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--brand);font-size:2rem;font-weight:400;transition:transform .24s cubic-bezier(.16,1,.3,1)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:730px;padding:0 60px 28px 0}.closing-cta{color:var(--white);background:var(--brand-deep)}.closing-cta__inner{justify-content:space-between;align-items:end;gap:60px;display:flex}.closing-cta h2{max-width:760px;margin-bottom:20px}.closing-cta p{color:#ffffffbd;margin:0}.page-hero{background:var(--paper-soft);padding:clamp(90px,12vw,170px) 0 clamp(74px,8vw,120px)}.page-hero__inner{grid-template-columns:1.5fr .8fr;align-items:end;gap:70px;display:grid}.page-hero h1{max-width:850px;margin:0;font-size:clamp(3.3rem,7.6vw,7.6rem);font-weight:500}.page-hero__inner>p{max-width:550px;margin:0;font-size:1.12rem}.service-detail-row{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(240px,.85fr) minmax(300px,1fr);align-items:start;gap:30px;padding:48px 0;display:grid}.service-detail-row h2{margin:0;font-size:clamp(2rem,4vw,4rem);font-weight:540}.service-detail-row p{margin:0}.approach-page-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(60px,9vw,140px);display:grid}.approach-page-image{position:sticky;top:112px}.approach-page-copy article{border-bottom:1px solid var(--line);margin-bottom:44px;padding:0 0 44px 60px}.approach-page-copy h2{margin:12px 0 18px;font-size:clamp(2.1rem,4vw,4.1rem);font-weight:540}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(60px,9vw,140px);display:grid}.about-copy p{font-size:1.07rem}.values-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.values-grid article{background:var(--paper-soft);min-height:310px;padding:clamp(30px,4vw,54px);transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s}.values-grid article:hover{position:relative;transform:translateY(-5px);box-shadow:0 24px 60px #0d30341f}.values-grid h2{font-size:clamp(2rem,3vw,3.2rem);font-weight:560}.contact-grid{grid-template-columns:1.25fr .75fr;align-items:start;gap:clamp(60px,9vw,140px);display:grid}.contact-form{gap:24px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{gap:9px;display:grid}.contact-form label>span{color:var(--ink);font-size:.9rem;font-weight:760}.contact-form input,.contact-form textarea{width:100%;min-height:52px;color:var(--ink);background:var(--white);border:1px solid #9ebbbb;border-radius:10px;padding:13px 15px;font-size:1rem}.contact-form textarea{resize:vertical}.form-notice,.form-success,.form-error{border-radius:10px;margin:0;padding:18px;font-size:.9rem;line-height:1.55}.form-notice{color:var(--ink);background:#dceeee}.form-success{color:#17512a;background:#e4f5e8}.form-error{color:#6f1d1d;background:#fff0f0}.contact-aside{padding-top:30px}.contact-aside>a{color:var(--brand-deep);margin:12px 0 24px;font-size:clamp(1.6rem,3vw,2.5rem);font-weight:800;display:inline-block}.legal-copy{max-width:860px}.legal-copy h2{margin-top:52px;font-size:2rem;font-weight:560}.not-found{background:var(--paper-soft);min-height:56vh;padding-block:clamp(120px,18vw,230px)}.not-found h1{max-width:850px;font-size:clamp(3.3rem,7.6vw,7.6rem);font-weight:500}.not-found p{max-width:540px;margin-bottom:34px;font-size:1.12rem}.site-footer{color:var(--white);background:#0d3034;padding-top:clamp(80px,10vw,130px)}.footer-main{grid-template-columns:1fr 1.2fr;gap:80px;padding-bottom:90px;display:grid}.footer-lead h2{max-width:500px;margin:50px 0 18px;font-size:clamp(2.5rem,5vw,4.6rem);font-weight:500}.footer-lead p{color:#ffffff9e}.footer-links{grid-template-columns:repeat(3,1fr);gap:36px;display:grid}.footer-links>div{flex-direction:column;gap:16px;display:flex}.footer-links h3{color:var(--brand-blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 15px;font-size:.72rem}.footer-links a{color:#ffffffc2;font-size:.88rem;line-height:1.6}.footer-links a:hover{color:var(--white)}.footer-bottom{color:#ffffff8a;border-top:1px solid #ffffff26;justify-content:space-between;padding-block:24px;font-size:.77rem;display:flex}@media (width<=1120px){.desktop-nav,.nav-phone,.nav-shell>.button{display:none}.menu-toggle{min-width:54px;min-height:44px;color:var(--brand-deep);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;font-weight:760;display:inline-flex}.menu-toggle--light{color:var(--white);border-color:#ffffff80}.mobile-nav{top:var(--header-height);color:var(--ink);background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:4px;padding:18px;display:flex;position:absolute;left:24px;right:24px}.mobile-nav>a:not(.button){border-bottom:1px solid var(--line);padding:14px 10px;font-weight:720}.mobile-nav .button{margin-top:10px}}@media (width<=820px){.shell{width:min(100% - 32px,1320px)}.section{padding-block:78px}.hero{min-height:88dvh}.hero__image{object-position:62% center}.hero__scrim{background:linear-gradient(90deg,#0a2a2ef5,#0a2a2eba 70%,#0a2a2e66)}.hero__content{padding-top:calc(var(--header-height) + 42px);padding-bottom:54px}.approach-grid,.principles-grid,.faq-grid,.approach-page-grid,.about-grid,.contact-grid,.page-hero__inner,.footer-main{grid-template-columns:1fr}.approach-page-image{position:static}.values-grid{grid-template-columns:1fr}.closing-cta__inner{flex-direction:column;align-items:start}.footer-main{gap:64px}}@media (width<=600px){:root{--header-height:68px}.shell{width:min(100% - 28px,1320px)}.brand__mark{width:42px;height:42px}.brand strong{font-size:.78rem}.brand__type>span{font-size:.42rem}.hero{min-height:86dvh}.hero__image{object-position:67% center}.hero h1{margin-bottom:20px;font-size:clamp(2.35rem,9.6vw,2.75rem)}.hero__lede{max-width:24rem;margin-bottom:26px;font-size:1.02rem}.service-row,.service-detail-row{padding:30px 0;display:block}.service-row h3,.service-detail-row h2{margin:10px 0 14px}.service-row p,.service-detail-row p{width:100%}.approach-steps,.form-row{grid-template-columns:1fr}.principles-list article{grid-template-columns:38px 1fr}.principles-list article p{grid-column:2}.approach-page-copy article{padding-left:0}.faq-list details p{padding-right:0}.page-hero{padding-block:78px}.page-hero__inner{gap:28px}.page-hero h1{font-size:clamp(2.9rem,14vw,4.7rem)}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:8px}}@media (prefers-reduced-motion:reduce){.hero__image,.hero h1,.hero__lede,.hero__content>.button{animation:none}.button,.text-link,.service-row,.values-grid article,.faq-list summary,.approach-image img,.approach-page-image img,.about-image img,.image-section>img{transition:none}.button:hover,.button:active,.service-row:hover,.values-grid article:hover,.approach-image:hover img,.approach-page-image:hover img,.about-image:hover img,.image-section:hover>img{transform:none}}.site-header{transition:color .22s,background-color .26s,border-color .26s,box-shadow .26s}.site-header--overlay{margin-bottom:calc(var(--header-height) * -1);background:0 0;position:sticky;top:0}.site-header--overlay.is-scrolled{color:var(--ink);border-bottom-color:var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfdfdf0;box-shadow:0 10px 28px #0d303414}.brand,.nav-phone,.menu-toggle{transition:color .22s,border-color .22s,background-color .22s}@media (prefers-reduced-motion:reduce){.site-header,.brand,.nav-phone,.menu-toggle{transition:none}}
