:root{--ink:#172e36;--muted:#536267;--teal:#326c68;--paper:#f8f6f0;--line:#d9ddd5;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ad6829;outline-offset:6px}::selection{background:#d8e8dd}img{max-width:100%;display:block}p,h1,h2,h3{margin:0}p+p{margin-top:18px}.container{width:min(1180px,calc(100% - 100px));margin-inline:auto}.skip{position:fixed;z-index:100;top:-100px;left:20px;background:var(--ink);color:white;padding:10px 20px}.skip:focus{top:10px}.site-header{background:rgba(248,246,240,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-inner{height:100px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--serif);font-size:30px;letter-spacing:-1px}.brand-dot{color:var(--teal)}.brand-sub{font-size:10px;letter-spacing:3.6px;margin-top:9px;font-weight:600}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a:hover,.text-link:hover{color:var(--teal)}.nav-contact{border:1px solid #bfc9c0;padding:11px 18px}.nav-contact span{margin-left:16px}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:64px;padding-top:66px;padding-bottom:70px;align-items:center}.eyebrow{font-size:11px;font-weight:650;letter-spacing:2px;color:var(--teal);line-height:1.6}h1{font-family:var(--serif);font-size:clamp(52px,5.1vw,72px);font-weight:400;line-height:1.06;letter-spacing:-2.5px;margin-top:26px}em{font-weight:400;color:var(--teal)}.hero-intro{font-size:18px;line-height:1.65;margin-top:28px;max-width:470px}.hero-detail{font-size:14px;color:var(--muted);margin-top:18px;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:16px 22px;font-size:14px;font-weight:600;transition:background .15s}.button-dark{background:var(--ink);color:white;margin-top:30px}.button-dark:hover{background:var(--teal)}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid #b6c7be;padding-bottom:5px}.text-link span{margin-left:12px}.hero-secondary{display:table;margin-top:20px}.hero-visual{position:relative;padding-right:15px}.portrait-frame{background:#e3e8e1;position:relative}.portrait-frame:before{content:'';position:absolute;inset:-14px 14px 14px -14px;border:1px solid #b9c9bf;z-index:-1}.portrait-frame img{width:100%;height:510px;object-fit:cover;object-position:center 35%}.portrait-caption{display:flex;align-items:center;gap:15px;margin-top:20px}.portrait-caption strong{font-family:var(--serif);font-size:22px;font-weight:400}.portrait-caption div>span{display:block;font-size:11px;color:var(--muted);margin-top:2px}.portrait-aside{position:absolute;right:-18px;top:0;writing-mode:vertical-rl;letter-spacing:2px;font-size:9px;color:var(--muted)}.experience-strip{background:#e9ede5;border-block:1px solid #d7dfd3}.strip-inner{display:flex;align-items:center;justify-content:space-between;padding-block:23px;gap:28px}.strip-inner>p{font-family:var(--serif);font-size:22px}.strip-inner>div{display:flex;gap:29px;font-size:12px;color:#43574e}.strip-inner>div span+span{border-left:1px solid #c5cec2;padding-left:29px}.section{padding-top:100px;padding-bottom:100px}h2{font-family:var(--serif);font-size:clamp(34px,3.4vw,46px);font-weight:400;line-height:1.16;letter-spacing:-1.1px;margin-top:18px}.situations{display:grid;grid-template-columns:1fr 1fr;gap:95px}.section-intro>p:last-child{color:var(--muted);max-width:430px;margin-top:25px;font-size:15px}.situation-list{padding-top:4px}.situation-list>div{display:flex;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.situation-list>div:first-child{border-top:1px solid var(--line)}.list-number{font-size:11px;color:var(--teal);padding-top:4px}.situation-list p{font-size:16px}.services{background:#edf0e9}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.section-heading>p{color:var(--muted);max-width:345px;font-size:14px;line-height:1.8;padding-bottom:3px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid #bdc9bc}.service{padding:30px 28px 0 0;display:flex;flex-direction:column}.service+.service{border-left:1px solid #c9d2c6;padding-left:28px}.service-number{font-size:10px;font-weight:600;letter-spacing:1.8px;color:var(--teal)}h3{font-family:var(--serif);font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.3px}.service h3{margin-top:22px}.service>p{font-size:14px;color:var(--muted);margin-top:20px}.service ul{list-style:none;padding:0;margin:25px 0 28px;font-size:13px;line-height:1.75}.service li{padding:6px 0;border-bottom:1px solid #d9dfd5}.service li:before{content:'â†³';color:var(--teal);margin-right:10px}.service>a{font-size:12px;font-weight:600;margin-top:auto;padding-top:12px}.service>a:hover{text-decoration:underline}.service>a span{margin-left:6px}.career-rows{margin-top:45px;border-top:1px solid var(--line)}.career-rows article{display:grid;grid-template-columns:1fr 1.7fr;gap:55px;padding:32px 0;border-bottom:1px solid var(--line)}.career-label{font-size:10px;font-weight:600;letter-spacing:1.4px;color:var(--teal);padding-top:5px}.career-label span{display:block;color:var(--muted);letter-spacing:0;font-size:13px;font-weight:400;margin-top:9px}.career-rows h3{font-size:25px}.career-rows p{font-size:14px;color:var(--muted);margin-top:12px;max-width:650px}.career-note{font-size:11px;color:var(--muted);margin-top:22px}.approach{background:var(--ink);color:var(--paper)}.approach-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:95px}.approach .eyebrow{color:#b4ccc1}.approach em,.contact em{color:#b4ccc1}.approach h2{font-size:40px}.approach-intro{font-size:14px;color:#c4ceca;margin-top:25px;max-width:380px}.steps{padding:0;margin:0;list-style:none}.steps li{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid #46575b}.steps li:first-child{padding-top:0}.steps li>span{font-size:11px;color:#b4ccc1;padding-top:5px}.steps h3{font-size:23px}.steps p{font-size:14px;color:#c4ceca;margin-top:8px}.about{display:grid;grid-template-columns:1fr 1.6fr;gap:100px;align-items:center}.about-mark{font-family:var(--serif);font-size:150px;line-height:1;letter-spacing:-10px;width:290px;height:290px;border:1px solid #c5cec2;border-radius:50%;display:flex;justify-content:center;align-items:center;background:#edf0e9}.about-mark span{color:var(--teal)}.about-lead{margin-top:26px;font-size:18px}.about p:not(.eyebrow):not(.about-lead){font-size:15px;color:var(--muted)}.about .text-link{display:inline-block;margin-top:25px}.contact{background:var(--ink);color:var(--paper);padding:80px 0}.contact-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:center}.contact .eyebrow{color:#b4ccc1}.contact h2{font-size:58px}.contact h2+p{font-size:15px;color:#c4ceca;margin-top:24px}.button-light{background:var(--paper);color:var(--ink);margin-top:29px}.button-light:hover{background:#d9e5d8}.contact-details{border-left:1px solid #46575b;padding-left:48px}.contact-details>span{font-size:10px;letter-spacing:2px;color:#b4ccc1}.contact-details>a{display:block;padding:18px 0;border-bottom:1px solid #46575b;font-size:16px}.contact-details>a span{float:right}.contact-details>a:hover{color:#c0dbcb}.contact-details p{font-size:12px;color:#c4ceca;margin-top:25px}.footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:27px;font-size:11px;color:var(--muted)}.footer-name{font-family:var(--serif);font-size:18px;color:var(--ink)}
@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:90px}.portrait-frame img{height:550px}}@media(max-width:1050px){.container{width:calc(100% - 64px)}.hero{gap:38px}.portrait-frame img{height:470px}h1{font-size:57px}.strip-inner>div{gap:14px}.strip-inner>div span+span{padding-left:14px}.situations,.approach-inner{gap:50px}.about{gap:50px}.about-mark{width:240px;height:240px;font-size:125px}.contact-inner{gap:50px}.contact-details{padding-left:30px}}@media(max-width:760px){html{scroll-padding-top:125px}.container{width:calc(100% - 40px)}.header-inner{height:auto;min-height:105px;padding-block:15px;gap:14px;flex-wrap:wrap}.brand-name{font-size:26px}.brand-sub{font-size:8px;letter-spacing:3px}nav{gap:18px;font-size:12px}.nav-contact{padding:7px 10px}.nav-contact span{margin-left:5px}nav a:nth-child(3){display:none}.hero{grid-template-columns:1fr;gap:48px;padding-top:38px;padding-bottom:40px}h1{font-size:clamp(48px,10vw,68px);letter-spacing:-1.8px}.hero-intro{font-size:17px;max-width:500px}.hero-visual{width:min(100% - 14px,440px);margin:0 auto;padding:0}.portrait-frame img{height:auto;aspect-ratio:1/1.07;object-fit:cover}.portrait-aside{right:-20px;font-size:8px}.strip-inner{flex-direction:column;align-items:flex-start;gap:10px;padding-block:22px}.strip-inner>p{font-size:20px}.strip-inner>div{flex-wrap:wrap;gap:8px 16px;font-size:11px}.strip-inner>div span+span{padding-left:0;border:0}.section{padding-block:62px}.situations,.about,.approach-inner,.contact-inner{grid-template-columns:1fr;gap:35px}h2{font-size:36px}.section-heading{display:block}.section-heading>p{margin-top:22px;max-width:450px}.service-grid{grid-template-columns:1fr;margin-top:30px}.service,.service+.service{padding:27px 0 32px;border-left:0;border-bottom:1px solid #bdc9bc}.service:last-child{padding-bottom:0;border-bottom:0}.service h3{margin-top:16px}.service h3 br{display:none}.service ul{margin-block:18px}.career-rows{margin-top:30px}.career-rows article{grid-template-columns:1fr;gap:16px;padding-block:26px}.career-label span{margin-top:4px}.career-rows h3{font-size:24px}.approach h2{font-size:35px}.steps li:first-child{padding-top:10px}.about-mark{width:110px;height:110px;font-size:60px;letter-spacing:-4px}.about-lead{font-size:17px}.contact{padding-block:60px}.contact h2{font-size:48px}.contact-details{border-left:0;border-top:1px solid #46575b;padding:28px 0 0}.footer{flex-wrap:wrap;gap:12px}.footer p{order:3;flex-basis:100%}.footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
