:root{--cream:#f5f3ee;--paper:#fbfaf7;--dark:#202925;--dark2:#2c3530;--ink:#242924;--sage:#6d7d68;--sage2:#aeb9a3;--muted:#66716b;--line:#d8dbd3;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #9db4a0;outline-offset:4px}.skip{position:absolute;left:16px;top:-100px;background:#fff;z-index:1000;padding:10px}.skip:focus{top:16px}.layout{max-width:1250px;margin:0 auto;padding:0 56px}.site-header{position:relative;z-index:50;border-bottom:1px solid #dfdfd8;background:rgba(251,250,247,.97)}.nav-inner{display:flex;align-items:center;justify-content:space-between;min-height:91px;gap:36px}.brand{display:flex;flex-direction:column;white-space:nowrap;gap:5px}.brand-name{font-family:var(--serif);font-weight:400;font-size:19px;letter-spacing:2.25px}.brand-name b{font-weight:400}.brand small{text-transform:uppercase;letter-spacing:1.6px;font-size:8px;color:var(--sage)}.navlinks{display:flex;align-items:center;gap:34px;font-size:11px;letter-spacing:.1px}.navlinks>a:not(.contact-pill){position:relative;padding:9px 0;color:#555d56}.navlinks>a.active,.navlinks>a:hover{color:#1d3024}.navlinks>a.active:after{position:absolute;content:'';height:1px;bottom:-12px;left:0;right:0;background:#344e3b}.contact-pill{display:inline-flex;align-items:center;gap:22px;background:#242d27;padding:16px 18px;color:#fff!important;font-weight:600}.contact-pill span{font-size:17px;font-weight:400}.contact-pill:hover{background:#405646}.menu-btn{display:none}.eyebrow{font-size:10px;letter-spacing:2.15px;text-transform:uppercase;font-weight:750;color:#536c58;line-height:1.5;margin:0}.eyeline{display:inline-block;vertical-align:middle;width:28px;height:1px;background:#9cb49f;margin-right:9px}.eyebrow.light{color:#b8c8b8}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-2px}h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.home-hero{background:var(--cream);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:56px;align-items:stretch;padding-top:62px;padding-bottom:40px}.hero-type{padding:76px 0 52px}.hero-type h1{font-size:clamp(48px,4.45vw,64px);letter-spacing:-3.1px;line-height:1.09;margin:33px 0 28px;max-width:750px}.hero-type h1 em{color:#59735f}.hero-lead{font-size:18px;line-height:1.65;color:#29352d;max-width:560px;margin:0 0 15px;letter-spacing:-.2px}.hero-sub{font-size:14px;line-height:1.8;color:#737973;max-width:500px;margin-bottom:33px}.hero-actions{display:flex;gap:27px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 20px;font-size:12px;font-weight:650;white-space:nowrap;transition:background .18s,transform .18s;border:1px solid var(--ink)}.button span{font-size:19px;font-weight:400;line-height:1}.button:hover{transform:translateY(-2px)}.button.solid,.button.dark{background:#27332b;color:#fff}.button.solid:hover,.button.dark:hover{background:#3f5846}.text-button{display:inline-flex;align-items:center;gap:22px;font-size:12px;font-weight:650;border-bottom:1px solid #91a18e;padding:15px 0}.text-button span{font-size:18px;font-weight:400;color:#728f75}.hero-photo{min-width:0;position:relative;align-self:stretch;min-height:570px;background:#d8d3c6;overflow:hidden}.hero-photo:before{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(to top,rgba(17,30,23,.65),transparent 26%);pointer-events:none}.hero-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% 50%;filter:saturate(.75)}.photo-caption{position:absolute;z-index:2;bottom:20px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff;font-size:9px;letter-spacing:1.5px}.photo-caption span:last-child{opacity:.8}.hero-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:23px;padding-bottom:24px;border-top:1px solid #d6d9d0;color:#879084;font-size:9px;letter-spacing:1.45px;gap:20px}.hero-bottom-right{text-align:right}.section-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px;padding-bottom:21px;color:#819087;font-size:10px;letter-spacing:1.25px}.principles-block{padding:100px 0 110px}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin:44px 0 65px}.intro-grid h2,.preview-grid h2,.exp-two h2,.personal h2,.about-essay h2,.about-method h2{font-size:clamp(43px,5vw,65px);line-height:1.14;letter-spacing:-2.2px;margin:0}.intro-grid h2 em,.preview-grid h2 em,.exp-two h2 em,.personal h2 em,.about-essay h2 em,.about-method h2 em{color:#687c66}.intro-grid>p{font-size:15px;line-height:1.9;color:#6b776e;max-width:470px;margin:0}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.capability{padding:30px 29px 31px 0;display:flex;flex-direction:column;min-height:270px;transition:background .2s}.capability+.capability{border-left:1px solid var(--line);padding-left:30px}.capability:hover{background:#f4f7f1}.cap-top{font-size:11px;color:#749079;display:flex;justify-content:space-between;margin-bottom:36px}.cap-top span{font-size:21px}.capability h3{font-size:24px;font-family:var(--serif);font-weight:400;letter-spacing:-.7px;margin:0 0 13px}.capability p{font-size:13px;line-height:1.8;color:#6b786f;margin-bottom:auto}.cap-tag{font-size:9px;letter-spacing:1.3px;margin-top:30px;color:#6e846f;font-weight:750}.dark-feature{background:#222e27;color:#f7f7f1;padding:100px 0 108px}.dark-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.feature-label{display:flex;flex-direction:column;justify-content:space-between}.fine-mark{font-family:var(--serif);font-size:77px;letter-spacing:-12px;color:#4f6655;line-height:1;white-space:nowrap}.fine-mark span{font-family:var(--sans);font-size:30px;letter-spacing:0;vertical-align:top;padding-left:12px}.dark-grid h2{font-size:clamp(47px,5.1vw,70px);line-height:1.15;margin:0 0 26px}.dark-grid h2 em{color:#c9d4bb}.dark-grid p{font-size:16px;color:#bfc8bd;line-height:1.85;max-width:610px;margin:0 0 23px}.inline-light{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid #6e8a74;padding:12px 0;color:#f2f3ed;font-size:12px;font-weight:650}.inline-light span{font-size:18px;color:#c2d8bc}.work-preview{padding:96px 0 113px;background:#f3f3ee}.all-link{display:inline-flex;gap:15px;font-size:11px;color:#586d5b;white-space:nowrap}.all-link span{font-size:16px}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;padding-top:50px}.index-label{font-size:10px;letter-spacing:1.8px;color:#7f9580;margin-bottom:28px}.preview-grid h2{font-size:clamp(48px,5.4vw,72px)}.preview-text{border-left:1px solid #ccd5ca;padding:10px 0 12px 45px}.preview-text p{font-size:17px;line-height:1.75;color:#5f6b62;max-width:420px;margin-bottom:28px}.contact-band{background:#26322a;color:#f7f6f0;padding:87px 0 91px;border-top:1px solid #405246}.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.contact-layout h2{font-size:clamp(56px,6vw,82px);letter-spacing:-2.2px;line-height:1.07;font-weight:450;margin:28px 0 0}.contact-layout h2 em{color:#bfd0b4}.contact-side{padding-bottom:9px}.contact-side p{font-size:15px;line-height:1.8;color:#bdc7bb;margin-bottom:27px;max-width:430px}.mail-link{font-size:15px;display:inline-flex;align-items:center;gap:26px;border-bottom:1px solid #91ad93;padding-bottom:13px}.mail-link span{color:#c4d4bb;font-size:20px}.footer{background:#171f1a;color:#a4b2a4}.foot-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:28px;padding-bottom:29px;font-size:10px;letter-spacing:1.1px}.foot-inner a{color:#d5e1d3}.page-head{padding:105px 0 94px}.page-head.pale{background:#f5f3ee;border-bottom:1px solid #e1e3dc}.page-head h1,.about-hero h1{font-size:clamp(54px,6.5vw,89px);line-height:1.08;letter-spacing:-3px;margin:27px 0 27px;font-weight:500}.page-head h1 em,.about-hero h1 em{color:#667e69}.page-lede{font-size:18px;line-height:1.75;color:#657268;max-width:700px;margin:0}.case-section{padding:102px 0 112px;background:#fcfbf7;border-bottom:1px solid #e1e5dd}.case-section.tinted{background:#f2f3ed}.case-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:92px}.case-number{font-size:10px;letter-spacing:1.7px;color:#718c76;font-weight:750;margin-bottom:30px}.case-left h2{font-size:clamp(43px,4.7vw,65px);line-height:1.14;letter-spacing:-2px;margin:0}.case-left h2 em{color:#667b65}.case-underline{width:45px;height:2px;background:#839782;margin:33px 0 23px}.case-theme{color:#7c877d;font-size:12px;line-height:1.9;max-width:315px}.case-right{padding-top:23px}.case-right h3{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:1.6px;font-weight:750;margin:0 0 12px;color:#415347}.case-right p{font-size:15px;line-height:1.95;color:#68746a;margin-bottom:28px}.result-line{border-top:1px solid #cbd5ca;display:grid;gap:13px;margin-top:33px;padding-top:25px}.result-line span{font-size:10px;letter-spacing:1.8px;font-weight:750;color:#718e71}.result-line strong{font-family:var(--serif);font-size:24px;line-height:1.4;letter-spacing:-.5px;font-weight:400}.closing-note{padding:53px 0 55px;background:#f6f6f2}.closing-note-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px}.closing-note p:last-child{line-height:1.8;color:#788378;max-width:700px;margin:0}.experience-main{padding:45px 0 101px}.timeline{border-top:1px solid var(--line)}.job{display:grid;grid-template-columns:250px 1fr;gap:66px;padding:37px 0 44px;border-bottom:1px solid var(--line)}.job-date{font-size:12px;letter-spacing:1.1px;color:#788c7b;font-weight:700;padding-top:16px}.job-category{font-size:10px;letter-spacing:1.8px;font-weight:750;color:#79907b;margin-bottom:12px}.job-detail h2{font-family:var(--serif);font-size:35px;font-weight:400;letter-spacing:-.8px;margin:0 0 13px}.job-detail p:not(.job-category){line-height:1.8;color:#68756b;max-width:720px;margin:0 0 11px;font-size:14px}.exp-bottom{background:#eef0e8;padding:93px 0}.exp-two{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:end}.exp-two h2{margin-top:24px}.exp-two>div:last-child>p{color:#66756a;line-height:1.9;font-size:16px}.exp-two .small-note{font-size:12px!important;margin-top:22px;margin-bottom:25px;color:#839084!important}.about-top{background:#f5f3ee;padding:70px 0 75px;border-bottom:1px solid var(--line)}.about-hero{display:grid;grid-template-columns:1.13fr .87fr;gap:74px;align-items:center}.about-hero h1{font-size:clamp(49px,5.6vw,76px)}.about-hero .page-lede{max-width:580px}.about-pic{height:515px;background:#e2d8c7;position:relative;overflow:hidden}.about-pic img{height:100%;width:100%;object-fit:cover;object-position:50% 44%;filter:saturate(.75)}.about-essay{padding:106px 0 107px}.essay-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:92px}.essay-grid h2{margin-top:25px}.essay-content{padding-top:8px}.essay-content p{font-size:16px;color:#68756b;line-height:1.92;margin-bottom:25px}.about-method{background:#f1f3ec;padding:88px 0 100px}.about-method>div>h2{margin:42px 0 56px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #cfd9ce}.method-grid>div{padding-top:27px}.method-no{font-size:11px;color:#779279}.method-grid h3{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.6px;margin:28px 0 15px}.method-grid p{font-size:13px;line-height:1.9;color:#6c786d}.personal{padding:100px 0}.personal-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.personal h2{margin-top:26px}.personal-grid>div:last-child{padding-top:39px}.personal-grid>div:last-child p{font-size:15px;line-height:1.95;color:#68756c;margin-bottom:21px}
@media(max-width:1100px){.layout{padding-left:36px;padding-right:36px}.hero-grid{gap:35px}.hero-type{padding-top:48px}.hero-type h1{font-size:clamp(49px,5.7vw,65px)}.hero-photo{min-height:525px}.navlinks{gap:21px}.case-layout{gap:55px}}
@media(max-width:850px){.nav-inner{min-height:76px}.menu-btn{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;background:transparent;border:1px solid #b4bcb1;padding:9px;cursor:pointer}.menu-btn span{display:block;height:2px;background:#243429}.navlinks{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--paper);box-shadow:0 18px 25px #1b2c1b18;padding:18px 36px 29px;gap:0}.navlinks.show{display:flex}.navlinks>a:not(.contact-pill){padding:15px 0;border-bottom:1px solid #e0e5da}.navlinks>a.active:after{display:none}.navlinks>.contact-pill{margin-top:20px;justify-content:space-between}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:52px}.hero-type{padding:15px 0 50px}.hero-type h1{font-size:clamp(52px,8vw,75px);max-width:760px}.hero-photo{height:520px;min-height:0}.intro-grid,.dark-grid,.preview-grid,.contact-layout,.essay-grid,.personal-grid,.exp-two{gap:34px}.case-layout{grid-template-columns:1fr;gap:26px}.case-right{padding-top:0}.about-hero{grid-template-columns:1fr 1fr;gap:30px}.about-pic{height:430px}.about-hero h1{font-size:53px}.job{grid-template-columns:180px 1fr;gap:25px}.hero-bottom-right{display:none}}
@media(max-width:620px){.layout{padding-left:22px;padding-right:22px}.brand-name{font-size:17px}.brand small{font-size:7px}.navlinks{padding-left:22px;padding-right:22px}.hero-grid{padding-top:34px;padding-bottom:24px}.hero-type{padding:23px 0 39px}.hero-type h1{font-size:clamp(45px,12vw,65px);letter-spacing:-2.5px;margin:25px 0}.hero-lead{font-size:16px}.hero-sub{font-size:13px}.hero-actions{gap:15px}.hero-photo{height:400px}.photo-caption{font-size:8px;left:15px;right:15px}.hero-bottom{font-size:8px;padding-top:17px;padding-bottom:17px}.principles-block,.work-preview,.about-essay,.personal{padding:69px 0 78px}.intro-grid,.preview-grid,.contact-layout,.dark-grid,.essay-grid,.personal-grid,.exp-two{grid-template-columns:1fr;gap:24px}.intro-grid{margin:30px 0 44px}.intro-grid h2,.preview-grid h2,.exp-two h2,.personal h2,.about-essay h2,.about-method h2{font-size:clamp(43px,10vw,58px)}.intro-grid>p{font-size:14px}.three-grid{grid-template-columns:1fr}.capability{padding:25px 0!important;min-height:0}.capability+.capability{border-left:0;border-top:1px solid var(--line)}.capability h3{font-size:26px}.capability p{font-size:13px;margin-bottom:0}.cap-top{margin-bottom:12px}.cap-tag{margin-top:18px}.dark-feature{padding:68px 0 77px}.dark-grid h2{font-size:clamp(44px,10vw,59px)}.dark-grid p{font-size:14px}.feature-label .fine-mark{display:none}.preview-grid{padding-top:32px}.preview-text{padding-left:20px}.preview-text p{font-size:15px}.contact-band{padding:65px 0 73px}.contact-layout h2{font-size:clamp(51px,12vw,70px)}.contact-side p{font-size:14px}.mail-link{font-size:13px}.foot-inner{flex-direction:column;align-items:flex-start;gap:10px}.page-head{padding:68px 0 71px}.page-head h1,.about-hero h1{font-size:clamp(46px,11vw,67px);letter-spacing:-2px}.page-lede{font-size:16px}.case-section{padding:68px 0 76px}.case-left h2{font-size:clamp(42px,10vw,58px)}.case-right p{font-size:14px}.closing-note-grid{grid-template-columns:1fr;gap:15px}.experience-main{padding-top:5px;padding-bottom:70px}.job{grid-template-columns:1fr;gap:13px;padding:30px 0}.job-date{padding-top:0}.job-detail h2{font-size:29px}.exp-bottom{padding:67px 0}.about-top{padding:54px 0}.about-hero{grid-template-columns:1fr;gap:36px}.about-hero h1{font-size:clamp(44px,10.7vw,64px)}.about-pic{height:340px}.essay-content{padding-top:4px}.essay-content p{font-size:14px}.about-method{padding:69px 0 80px}.about-method>div>h2{margin:30px 0 38px}.method-grid{grid-template-columns:1fr;gap:0}.method-grid>div{padding:24px 0;border-bottom:1px solid #d0dace}.method-grid h3{margin:16px 0 10px}.personal-grid>div:last-child{padding-top:0}.personal-grid>div:last-child p{font-size:14px}.section-top{align-items:flex-start}.all-link{font-size:10px}.result-line strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
