@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--paper:#f3f0e8;--ink:#28352c;--deep:#243e30;--sage:#dfe5d9;--rule:#c6c9bb;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ac6c36;outline-offset:4px}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.98}.shell{width:min(1320px,calc(100% - 96px));margin:auto}.skip{position:fixed;top:8px;left:8px;padding:10px;background:white;transform:translateY(-150%);z-index:100}.skip:focus{transform:none}.demo-bar{background:#111;color:#fff;font-size:11px}.demo-bar .shell{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px}.demo-bar a{text-decoration:underline;text-underline-offset:3px}.header{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:flex;flex-direction:column;font:32px/.8 var(--serif);white-space:nowrap}.logo i{font-weight:400;color:#93775b}.logo small{font:700 9px/1 var(--sans);letter-spacing:.33em;margin-top:11px}.header nav{display:flex;align-items:center;gap:clamp(18px,3vw,43px);font-size:13px;font-weight:600}.header nav a{min-height:44px;display:inline-flex;align-items:center}.header nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.header .inquiry-link{border-bottom:1px solid currentColor;gap:15px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:52px;padding:13px 18px;background:var(--deep);color:#fff;font-size:13px;font-weight:700}.button:hover{background:#3c6148}.text-link{display:inline-flex;gap:22px;border-bottom:1px solid;padding-bottom:9px;font-size:13px;font-weight:700}.hero{display:grid;grid-template-columns:43% 1fr;gap:5%;padding-block:38px 80px;align-items:center}.hero-copy{padding-block:40px}.hero h1{font-size:clamp(82px,9.4vw,143px);letter-spacing:-.06em;margin:28px 0 28px}.hero h1 em{font-weight:400}.hero-copy>p:not(.eyebrow){max-width:480px;color:#4c584d;font-size:18px}.hero .button{margin-top:29px}.hero-image{height:615px;position:relative}.hero-image figcaption{position:absolute;bottom:0;left:0;padding:11px 16px;background:var(--paper);font-size:10px;font-weight:700;letter-spacing:.12em}.split{display:grid;grid-template-columns:38% 1fr;gap:8%;padding-block:110px}.split h2,.page-title h1,.section-title{font-size:clamp(57px,6.3vw,99px);letter-spacing:-.045em}.split p:not(.eyebrow){font-size:18px;max-width:610px;color:#4c584d}.split .text-link{margin-top:30px}.sage{background:var(--sage)}.section{padding-block:100px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:37px}.section-heading h2{font-size:clamp(54px,6vw,94px);letter-spacing:-.05em;margin-top:18px}.section-heading p:last-child{max-width:390px;color:#516052;font-size:14px}.service-rows{border-top:1px solid var(--rule)}.service-rows article{display:grid;grid-template-columns:70px 1fr minmax(230px,38%);gap:25px;padding:27px 0;border-bottom:1px solid var(--rule)}.service-rows article>span{font-size:12px;font-weight:700}.service-rows h3{font-size:clamp(32px,3vw,48px)}.service-rows p{font-size:14px;color:#59635a}.photo-band{height:520px;position:relative;background:#304536;color:#fff}.photo-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#13241a91,transparent 70%)}.photo-band strong{position:absolute;left:max(48px,calc((100vw - 1320px)/2));bottom:50px;z-index:1;font:italic clamp(48px,6vw,85px)/.95 var(--serif);font-weight:400}.caption{font-size:12px;color:#647065;margin-top:14px}.photo-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:23px}.photo-grid figure:first-child{grid-row:span 2}.photo-grid figure img{height:320px}.photo-grid figure:first-child img{height:690px}.photo-grid figcaption{font-size:11px;color:#647065;margin-top:9px}.callout{background:var(--deep);color:#f1f0e7;padding-block:100px}.callout h2{font-size:clamp(54px,6vw,94px);letter-spacing:-.05em;max-width:900px;margin:22px 0}.callout p{max-width:540px;color:#d2dbd1}.callout .button{background:#f3f0e8;color:var(--ink);margin-top:26px}.callout .button:hover{background:#dfe5d9}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:115px;font-size:12px}.footer a:not(.logo){text-decoration:underline}.page-title{padding-block:85px 95px;border-top:1px solid var(--rule)}.page-title h1{margin-top:21px;max-width:900px}.page-title p:last-child{max-width:600px;margin-top:27px;color:#526154;font-size:18px}.detail-grid{display:grid;grid-template-columns:40% 1fr;gap:8%;align-items:center;padding-block:90px}.detail-grid.reverse{grid-template-columns:1fr 40%}.detail-grid.reverse figure{order:2}.detail-grid figure{height:460px}.detail-grid h2{font-size:clamp(48px,5vw,79px);letter-spacing:-.04em;margin:15px 0 24px}.detail-grid p:not(.eyebrow){max-width:570px;color:#536056}.detail-grid ul{padding-left:19px;line-height:2;margin:20px 0;color:#465249}.detail-grid .text-link{margin-top:17px}.gallery-intro{padding:65px 0 33px}.gallery-intro p{color:#526154;max-width:690px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 24px;padding-bottom:110px}.gallery figure img{height:420px}.gallery figure:nth-child(3){grid-column:1/-1}.gallery figure:nth-child(3) img{height:590px}.gallery figcaption{margin-top:13px}.gallery h2{font-size:30px}.gallery p{font-size:13px;color:#5c685e}.inquiry-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:70px 0 130px}.inquiry-layout h2{font-size:clamp(42px,5vw,75px);margin-bottom:23px}.inquiry-layout p{color:#536056}.inquiry-steps{border-top:1px solid var(--rule)}.inquiry-steps>div{border-bottom:1px solid var(--rule);padding:22px 0;display:grid;grid-template-columns:40px 1fr;gap:12px}.inquiry-steps strong{font-size:12px}.inquiry-steps p{font-size:14px}.inquiry-layout .button{margin-top:25px}.form-preview{border:1px solid var(--rule);padding:30px;background:#faf9f4}.form-preview .eyebrow{color:#657268}.form-preview h3{font-size:45px;margin:13px 0 26px}.field{border-bottom:1px solid #acb4a7;padding:15px 0;color:#727d72;font-size:13px}.form-preview p{font-size:12px;margin-top:25px}
@media(max-width:900px){.shell{width:calc(100% - 52px)}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(70px,10vw,100px)}.hero-image{height:520px}.service-rows article{grid-template-columns:45px 1fr}.service-rows p{grid-column:2}.detail-grid,.detail-grid.reverse{gap:5%}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.header{min-height:76px}.logo{font-size:26px}.header nav{gap:10px}.header nav a:not(.inquiry-link){display:none}.header .inquiry-link{font-size:12px;gap:6px}.hero{display:block;padding:35px 0 0}.hero-copy{padding:0 0 40px}.hero h1{font-size:clamp(66px,14vw,100px);margin:20px 0}.hero-image{height:410px;margin:0 -18px}.split,.detail-grid,.detail-grid.reverse,.inquiry-layout{display:block;padding-block:70px}.split h2{margin:20px 0}.section{padding-block:70px}.section-heading{display:block}.section-heading p:last-child{margin-top:20px}.photo-band{height:360px}.photo-band strong{left:18px;bottom:30px}.photo-grid{display:block}.photo-grid figure{margin-bottom:24px}.photo-grid figure img,.photo-grid figure:first-child img{height:330px}.page-title{padding-block:55px}.detail-grid figure,.detail-grid.reverse figure{height:300px;margin-bottom:30px}.detail-grid.reverse figure{margin-top:30px}.gallery{grid-template-columns:1fr;gap:35px;padding-bottom:70px}.gallery figure:nth-child(3){grid-column:auto}.gallery figure img,.gallery figure:nth-child(3) img{height:310px}.inquiry-layout .form-preview{margin-top:45px}.callout{padding-block:70px}.footer{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:30px}}
@media(max-width:380px){.logo{font-size:23px}.header .inquiry-link{font-size:11px}.hero h1{font-size:61px}.demo-bar .shell{font-size:10px;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.form-preview label{display:block;margin-top:20px;font-size:13px;font-weight:700}.form-preview input,.form-preview select,.form-preview textarea{display:block;width:100%;margin-top:7px;border:1px solid #acb4a7;border-radius:0;background:#fff;color:var(--ink);padding:11px;font:inherit;font-size:15px}.form-preview .button{border:0;cursor:pointer}.form-status{border-left:3px solid var(--deep);padding-left:12px;color:var(--ink)!important}
/* Work and ideas */
.work-lead{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:end;padding-block:90px 85px;border-top:1px solid var(--rule)}.work-lead h1{margin:23px 0 0}.work-lead-copy{max-width:470px}.work-lead-copy>p:first-child{font-size:19px;line-height:1.6}.work-disclosure{font-size:12px;color:#59665b;border-top:1px solid var(--rule);margin-top:25px;padding-top:16px}.work-feature{display:grid;grid-template-columns:1.18fr .82fr;gap:7%;align-items:center;padding-block:55px;border-top:1px solid var(--rule)}.work-feature.alternate{grid-template-columns:.82fr 1.18fr}.work-feature.alternate figure{order:2}.work-feature figure{margin:0;min-width:0}.work-feature img{width:100%;height:600px;object-fit:cover}.work-feature figcaption,.work-details figcaption{font-size:11px;color:#687468;margin-top:9px}.work-feature-copy h2{font-size:clamp(51px,5.6vw,90px);line-height:.93;margin:23px 0}.work-feature-copy p{max-width:470px;line-height:1.7;color:#465249}.work-feature-copy ul{margin:25px 0 15px;padding-left:19px;line-height:2;color:#465249}.work-details{background:#dce3d6;padding:90px 0}.work-details .shell{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.work-details h2{font-size:clamp(46px,4vw,68px);line-height:.95;margin:24px 0}.work-details p{color:#475449;max-width:300px}.work-details figure{margin:0;min-width:0}.work-details img{width:100%;height:360px;object-fit:cover}@media(max-width:800px){.work-lead,.work-feature,.work-feature.alternate{grid-template-columns:1fr;gap:30px}.work-feature.alternate figure{order:0}.work-feature img{height:420px}.work-details .shell{grid-template-columns:1fr 1fr}.work-details .shell>div{grid-column:1/-1}}@media(max-width:550px){.work-lead{padding-block:55px}.work-feature{padding-block:35px 55px}.work-feature img{height:310px}.work-feature-copy h2{font-size:55px}.work-details{padding-block:60px}.work-details .shell{grid-template-columns:1fr}.work-details .shell>div{grid-column:auto}.work-details img{height:260px}}
.mobile-menu{display:none}@media(max-width:700px){.header{position:relative}.header>nav{display:none}.mobile-menu{display:block;margin-left:auto;z-index:30}.mobile-menu summary{list-style:none;cursor:pointer;min-width:64px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #8b9689;padding:0 10px;font-size:13px;font-weight:700}.mobile-menu summary::-webkit-details-marker{display:none}.header .mobile-menu nav{position:absolute;top:calc(100% - 4px);right:0;width:min(280px,calc(100vw - 36px));display:flex;flex-direction:column;align-items:stretch;gap:0;background:#f5f2e9;border:1px solid #b8c3b5;padding:8px;box-shadow:0 16px 30px #0003}.header .mobile-menu nav a,.header .mobile-menu nav a:not(.inquiry-link){display:flex;align-items:center;min-height:48px;padding:9px 12px;font-size:14px;border:0}.header .mobile-menu nav a:hover{background:#e4e8df}}
.mobile-call{display:none}@media(max-width:700px){.header>nav{display:none}.mobile-call{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 13px;margin-left:auto;background:#31533b;color:#fff;font:700 12px/1 'DM Sans',Arial,sans-serif;white-space:nowrap}.mobile-call:hover{background:#4c7154}}
