@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--cream:#f7f6ef;--ink:#233e32;--muted:#626b60;--line:#d9ded1;--orange:#bc562c;--serif:'Libre Caslon Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-1.7px}h1{font-size:clamp(62px,6.4vw,98px)}h2{font-size:clamp(44px,4.1vw,64px)}h3{font-weight:500}em{font-weight:400;color:#78816b}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--ink);outline-offset:2px}.skip{position:absolute;top:-100px;z-index:10;background:white;padding:12px}.skip:focus{top:0}.topline{padding:10px 5%;background:#e9ecdf;display:flex;justify-content:space-between;font-size:9px;font-weight:600;letter-spacing:1.7px}.dot{color:var(--orange);font-size:8px;margin:0 10px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 5%;background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{font-family:Georgia,serif;font-size:44px;line-height:.9;letter-spacing:-3px;display:block;flex-shrink:0}.brand-leaf{font-size:30px;color:var(--orange);vertical-align:top;margin-left:4px}.brand small{font:8px 'DM Sans',Arial,sans-serif;letter-spacing:2px;display:block;margin-top:10px}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav>a:not(.button):hover{color:var(--orange)}.button{display:inline-flex;gap:25px;align-items:center;justify-content:space-between;background:var(--ink);color:white;padding:16px 24px;font-size:12px;border:1px solid var(--ink);transition:background .2s}.button:hover{background:#3e5945}.button span{font-size:19px;line-height:1}.button.small{padding:12px 20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.hero-copy{padding:65px 8% 40px 10%}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;margin-bottom:25px}.orange-line{display:inline-block;width:25px;height:1px;background:var(--orange);vertical-align:middle;margin-right:10px}.hero h1 em{white-space:nowrap}.intro{max-width:355px;color:var(--muted);font-size:14px;margin-top:28px}.actions{display:flex;gap:25px;align-items:center;margin-top:32px}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-block}.text-link span{margin-left:15px}.hero-note{display:flex;gap:14px;align-items:center;margin-top:45px;font-size:10px;color:var(--muted)}.round-mark{font-size:32px;color:var(--orange)}.hero-note strong{font-weight:400;color:var(--ink)}.hero-image{position:relative;margin:24px 24px 24px 0;min-height:600px;overflow:hidden;background:#233e32}.hero-image>img{height:100%;position:absolute;object-position:49% center}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,35,23,.65),transparent 55%)}.image-caption{position:absolute;bottom:24px;left:28px;right:28px;color:white;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.3px;z-index:1}.image-label{position:absolute;bottom:72px;left:28px;color:white;font-family:var(--serif);font-size:40px;line-height:1;z-index:1}.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:25px;align-items:center;justify-content:space-between;padding:25px 5%;font-size:11px}.trust>span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.trust i{height:25px;width:1px;background:var(--line)}.section{padding:95px 5%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:42px}.section-heading>p{font-size:13px;color:var(--muted);max-width:275px;padding-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-card{padding:27px 23px;position:relative;border-right:1px solid var(--line);transition:background .2s}.service-card:last-child{border:0}.service-card:hover{background:#e8ecdf}.service-num{font-size:9px;color:var(--muted)}.service-icon{font-family:Georgia,serif;display:block;font-size:45px;line-height:1;margin:20px 0;color:#78816b}.service-card h3{font:36px/1.05 var(--serif);letter-spacing:-.6px;margin-bottom:18px}.service-card p{font-size:12px;min-height:80px;color:var(--muted)}.card-link{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px;font-size:10px;padding-top:18px;margin-top:15px}.card-link b{font-size:16px;font-weight:400}.projects{background:#edf0e6}.filters{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}.filters button{border:1px solid #c7cfbd;padding:9px 19px;border-radius:30px;color:var(--ink);background:transparent;font-size:11px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px}.project-card{background:none;border:0;padding:0;text-align:left;color:var(--ink)}.project-card[hidden]{display:none}.photo{position:relative;overflow:hidden}.photo img{height:330px;transition:transform .5s}.project-card:hover img{transform:scale(1.035)}.photo>span{position:absolute;bottom:15px;right:15px;padding:8px 14px;background:var(--cream);font-size:10px}.project-title{display:flex;justify-content:space-between;margin-top:15px;align-items:center;gap:15px}.project-title h3{font-family:var(--serif);font-size:28px;line-height:1.2}.project-title>span{font-size:24px}.project-card>p{font-size:8px;letter-spacing:1.7px;color:var(--muted);margin-top:6px}.story{display:grid;grid-template-columns:1fr 1fr;background:#243e32;color:var(--cream)}.story-art{min-height:580px;position:relative}.story-art>img{height:100%;position:absolute;object-position:center}.story-tag{position:absolute;bottom:25px;left:25px;background:var(--cream);color:var(--ink);padding:18px 22px;font-size:18px}.story-tag small{font-size:8px;letter-spacing:2px}.story-copy{padding:75px 12%}.story h2{font-size:52px}.story h2 em{color:#bcc7a9}.story-copy>p:not(.eyebrow){color:#d0d7ca;font-size:13px;margin-top:25px}.story-bottom{display:flex;align-items:center;gap:18px;border-top:1px solid #526653;padding-top:20px;margin-top:35px;font-size:11px}.story-bottom .round-mark{color:#d1a66e}.learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.course{padding:38px;background:#e9eddf}.pill{border:1px solid #a3af96;border-radius:30px;padding:6px 12px;font-size:8px;letter-spacing:1px;display:inline-block}.course h3{font:44px var(--serif);margin:24px 0 18px}.course>p{font-size:13px;max-width:400px;min-height:85px}.course .text-link{margin-top:25px}.course small{display:block;font-size:9px;margin-top:10px;color:var(--muted)}.course.dark{background:#384c3d;color:var(--cream)}.course.dark small{color:#c4cebd}.faq{padding-top:0;max-width:950px;margin:auto}.faq h2{margin-bottom:35px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:14px;gap:25px}summary::-webkit-details-marker{display:none}summary span{font-size:24px}.faq details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);max-width:700px;padding-top:15px}.contact{background:#e9eddf;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:68px}.contact>div>p:not(.eyebrow){font-size:13px;margin-top:25px;color:var(--muted)}.contact-phone{display:block;font-size:21px;margin:25px 0 15px}address{font-size:12px;font-style:normal;margin-bottom:12px}form{background:var(--cream);padding:35px;align-self:start}form h3{font-family:var(--serif);font-size:32px;line-height:1.1}.form-note{font-size:11px;color:var(--muted);margin:12px 0 25px}label{display:block;font-size:10px;margin:18px 0 7px}input,textarea,select{border:1px solid #cbd2c1;border-radius:0;background:transparent;padding:12px;width:100%;min-height:46px;color:var(--ink);font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}textarea{resize:vertical}form .button{width:100%;margin-top:20px}#form-status{font-size:10px;color:var(--muted);margin-top:12px}#direct-email{display:inline-block;font-size:10px;text-decoration:underline;margin-top:10px}footer{padding:50px 5% 22px;background:#1e332a;color:var(--cream)}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:45px}.footer-top p{font:25px/1.15 var(--serif)}.footer-top>div a{display:block;font-size:11px;margin-bottom:8px}.footer-bottom{border-top:1px solid #526653;padding-top:20px;font-size:8px;color:#bcc6b7;display:flex;justify-content:space-between;gap:25px}dialog{border:0;padding:0;max-width:850px;width:90vw;background:var(--cream);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:rgba(13,30,21,.8)}dialog>img{height:350px}.dialog-copy{padding:30px}.dialog-copy h2{font-size:42px}.dialog-copy>p:not(.eyebrow){font-size:13px;margin:20px 0}.close-dialog{position:absolute;right:15px;top:15px;border:0;background:var(--cream);color:var(--ink);width:44px;height:44px;font-size:18px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero-copy{padding-top:90px}.hero{min-height:770px}}
@media(max-width:1050px){nav{gap:17px;font-size:11px}.hero-copy{padding-top:45px}.hero h1{font-size:70px}.hero{min-height:600px}.hero-image{min-height:540px}.actions{gap:15px;flex-wrap:wrap}.service-card{padding:22px 17px}.service-card h3{font-size:31px}.trust{gap:15px}.trust>span{display:none}.story-copy{padding:55px 9%}.story h2{font-size:44px}.contact{gap:6%}.contact h2{font-size:60px}.photo img{height:280px}}
@media(max-width:760px){html{scroll-padding-top:88px}.topline{font-size:7px;letter-spacing:1px;padding:9px 6%}.topline>span:last-child{display:none}header{padding:18px 6%;flex-wrap:wrap}.brand{font-size:35px}.brand small{font-size:7px}.brand-leaf{font-size:24px}.menu-toggle{display:flex;align-items:center;gap:15px;border:1px solid var(--line);padding:10px 14px;background:none;color:var(--ink);font-size:12px;min-height:44px}nav{display:none;width:100%;align-items:stretch;gap:0}nav.open{display:flex;flex-direction:column}nav>a{padding:13px 0;border-top:1px solid var(--line)}nav .button{margin-top:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 30px}.hero h1{font-size:clamp(52px,11vw,72px)}.hero h1 br:nth-of-type(1){display:block}.hero h1 em{white-space:normal}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:22px}.intro{font-size:13px;max-width:340px;margin-top:22px}.actions{gap:22px;margin-top:25px}.hero-note{margin-top:25px}.hero-image{margin:0 6% 25px;min-height:390px}.image-label{font-size:35px}.image-caption{font-size:7px;left:20px;right:20px}.trust{padding:20px 6%;flex-wrap:wrap;justify-content:center;font-size:10px;gap:12px 22px}.trust i{height:16px}.trust i:nth-of-type(2){display:none}.trust p:last-child{width:100%;text-align:center}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:340px;font-size:13px}h2{font-size:45px;letter-spacing:-1px}.service-grid{grid-template-columns:1fr 1fr}.service-card{border-bottom:1px solid var(--line);padding:22px 17px}.service-card:nth-child(2){border-right:0}.service-card:nth-child(3){border-bottom:0}.service-card h3{font-size:30px}.service-card p{font-size:11px;min-height:88px}.service-icon{font-size:37px;margin:18px 0}.card-link{font-size:9px;min-height:53px}.project-grid{grid-template-columns:1fr;gap:28px}.photo img{height:285px}.project-title h3{font-size:27px}.filters{gap:7px}.filters button{font-size:10px;padding:10px 14px;min-height:44px}.story{grid-template-columns:1fr}.story-art{min-height:380px}.story-copy{padding:50px 6%}.story h2{font-size:45px}.learning-grid{grid-template-columns:1fr}.course{padding:28px}.course h3{font-size:39px}.course>p{min-height:0}.faq{padding-top:0}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:58px}.contact h2 br:nth-of-type(2){display:block}form{padding:26px 20px}.form-row{grid-template-columns:1fr;gap:0}.footer-top{flex-wrap:wrap}.footer-top .brand{width:100%}.footer-top p{font-size:23px}.footer-bottom{flex-direction:column;gap:12px;font-size:9px}dialog>img{height:240px}.dialog-copy{padding:25px}.dialog-copy h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

