@charset "UTF-8";
:root{--cream:#f6f4ea;--paper:#eeeee2;--green:#193c2d;--ink:#203b30;--muted:#637065;--line:#d5d9ca;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}svg{display:block}p,h1,h2,h3{margin:0}a:focus-visible,button:focus-visible{outline:3px solid #ae632c;outline-offset:6px}.wrap{width:min(1304px,calc(100% - 104px));margin-inline:auto}.skip-link{position:absolute;z-index:50;top:8px;left:12px;padding:12px;background:white;transform:translateY(-150%)}.skip-link:focus{transform:none}.demo-bar{min-height:34px;display:flex;align-items:center;justify-content:space-between;padding:8px 52px;background:var(--green);color:#f8f6ea;font-size:11px;letter-spacing:.025em}.demo-bar>span{display:flex;align-items:center;gap:8px}.demo-bar i{width:6px;height:6px;border:1px solid #c7d9b5;border-radius:50%}.demo-bar a{border-bottom:1px solid #ffffff50;padding-bottom:1px}.demo-bar a span{margin-left:12px}.site-header{background:var(--cream);position:relative;z-index:20}.header-inner{height:119px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;white-space:nowrap}.brand-symbol{width:34px;height:44px}.brand>span{font-family:var(--serif);font-size:29px;letter-spacing:-1.2px}.brand em{font-style:italic;font-size:27px}.brand small{display:block;font-family:var(--sans);font-size:8px;font-weight:500;letter-spacing:2.25px;margin-top:5px;margin-left:2px}.navigation{display:flex;align-items:center;gap:33px;font-size:12px}.navigation>a:not(.nav-contact){padding-block:8px}.navigation>a:hover,.text-link:hover{color:#738264}.nav-contact{padding:15px 18px;border:1px solid #9ca995;border-radius:2px}.nav-contact span{margin-left:14px}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1fr 1.06fr;column-gap:64px;padding-top:19px}.hero-copy{padding:31px 0 0}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:600;letter-spacing:2px;line-height:1.6}.eyebrow>span{display:inline-block;width:25px;height:1px;background:currentColor}h1{font-family:var(--serif);font-weight:400;font-size:clamp(64px,6.8vw,104px);letter-spacing:-5px;line-height:.99;margin-top:23px}h1 em,h2 em{font-weight:400;color:#5a7252}h1 em{font-style:italic}.hero-intro{font-size:16px;line-height:1.7;margin-top:26px;color:#546354}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:55px;padding:17px 22px;border-radius:2px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button span{font-size:20px;font-weight:400;line-height:.6}.button-green{background:var(--green);color:var(--cream);margin-top:28px}.button-green:hover{background:#2f553a;transform:translateY(-2px)}.hero-detail{font-size:10px;letter-spacing:.25px;margin-top:13px;color:#6c7769}.hero-visual{position:relative;margin-right:22px;min-height:565px}.hero-image{height:100%;position:absolute;inset:0;object-position:51% 50%;border-radius:100px 3px 3px 3px}.image-caption{position:absolute;right:-22px;bottom:29px;width:210px;background:#e7ecdb;padding:24px 25px 26px;box-shadow:0 12px 30px #10281b08}.caption-label{font-size:8px;letter-spacing:1.65px}.image-caption p{font-family:var(--serif);font-size:32px;line-height:1.05;margin-top:13px;letter-spacing:-.8px}.image-caption p em{font-weight:400}.image-caption svg{width:29px;position:absolute;right:22px;bottom:29px;fill:none;stroke:currentColor;stroke-width:1}.vertical-note{font-size:7px;letter-spacing:1.8px;writing-mode:vertical-rl;position:absolute;right:-22px;top:24px}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;gap:23px;padding:27px 0;border-bottom:1px solid var(--line);margin-top:29px;color:#59694f;font-size:11px}.tiny-star{font-size:15px;color:#89966c}.hero-bottom>a{margin-left:auto;display:flex;align-items:center;justify-content:center;border:1px solid #bfc8b4;border-radius:50%;width:30px;height:30px;font-size:16px}.section-space{padding-block:103px}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:28px;align-items:start;margin-bottom:52px}.section-heading>.eyebrow{margin-top:10px}h2{font-family:var(--serif);font-size:clamp(40px,4vw,60px);font-weight:400;letter-spacing:-2.5px;line-height:1.07}.section-heading>div>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:448px;margin-top:22px}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:.45fr 1.4fr 1.5fr 40px;gap:25px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}.service-no{font-family:var(--serif);font-size:17px;color:#8d9b7b}.service h3{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.7px;line-height:1.15}.service p{font-size:13px;line-height:1.8;color:var(--muted);max-width:355px}.service-mark{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);font-size:20px}.philosophy{background:var(--paper);padding-block:84px}.philosophy-grid{display:grid;grid-template-columns:.95fr 1fr;gap:100px;align-items:center}.philosophy-photo{position:relative;min-height:550px}.philosophy-photo>img{height:550px;object-position:15% 50%;border-radius:3px 100px 3px 3px;filter:saturate(.85)}.photo-tag{position:absolute;bottom:25px;left:25px;padding:17px 20px;background:#f6f4eaed;font-family:var(--serif);font-size:20px;line-height:1.25;font-style:italic}.philosophy-copy h2{margin-top:22px}.philosophy-copy .lead{font-family:var(--serif);font-size:23px;line-height:1.4;color:var(--ink);margin-top:26px;max-width:400px}.philosophy-copy>p:not(.eyebrow):not(.lead){font-size:13px;line-height:1.85;color:var(--muted);margin-top:18px;max-width:410px}.text-link{display:inline-flex;gap:32px;align-items:center;font-size:12px;border-bottom:1px solid #a1af92;padding-bottom:8px;margin-top:27px}.text-link span{font-size:18px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.process-grid article{border-top:1px solid #a6b198;padding-top:24px}.process-grid article>span{font-family:var(--serif);font-size:36px;font-style:italic;color:#899674}.process-grid h3{font-family:var(--serif);font-size:25px;font-weight:400;letter-spacing:-.5px;margin-top:30px;line-height:1.15}.process-grid p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:15px;max-width:310px}.contact{position:relative;overflow:hidden;background:var(--green);color:var(--cream);padding:87px 0 79px;text-align:center}.contact-inner{position:relative;z-index:1}.contact .eyebrow{justify-content:center;color:#b9c8a8}.contact h2{font-size:clamp(40px,4.6vw,68px);margin-top:24px}.contact h2 em{color:#c9d4b7}.contact h2+p{font-size:14px;color:#d0d7c6;margin-top:25px}.demo-contact{max-width:490px;margin:42px auto 0;border-top:1px solid #ffffff25;padding-top:27px}.demo-label{font-size:8px;letter-spacing:1.8px;color:#c5d0b6}.demo-contact p{font-size:12px;line-height:1.85;color:#c9d3c2;margin-top:12px}.button-cream{background:var(--cream);color:var(--green);margin-top:22px}.button-cream:hover{background:#dce5cf;transform:translateY(-2px)}.contact-back{display:block;width:fit-content;margin:20px auto 0;font-size:10px;color:#d0d7c6;border-bottom:1px solid #c9d3c250;padding-bottom:3px}.contact-leaf{position:absolute;width:320px;height:450px;right:-20px;bottom:-55px;transform:rotate(20deg);opacity:.12}.contact-leaf svg{width:100%;fill:none;stroke:#e2ead7;stroke-width:1}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:31px}.footer-brand{font-family:var(--serif);font-size:25px;letter-spacing:-.8px}.site-footer p{font-size:10px;line-height:1.8;text-align:center}.site-footer p a{border-bottom:1px solid #a9b69b}.site-footer p span{font-size:9px;color:#78816f}.footer-up{border:1px solid var(--line);display:grid;place-items:center;height:31px;width:31px;border-radius:50%}@media(min-width:1600px){.hero{column-gap:90px}.hero-visual{min-height:600px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.demo-bar{padding-inline:32px}.navigation{gap:20px;font-size:11px}.brand>span{font-size:26px}.brand-symbol{width:30px}.nav-contact{padding:13px}.hero{gap:30px}.hero-copy{padding-top:27px}h1{font-size:clamp(62px,7.3vw,90px);letter-spacing:-3.5px}.hero-visual{min-height:510px}.hero-intro{font-size:14px}.button{font-size:11px;gap:17px;padding:17px 18px}.image-caption{width:185px}.philosophy-grid{gap:55px}.philosophy-photo,.philosophy-photo>img{min-height:510px;height:510px}.section-space{padding-block:80px}.service{grid-template-columns:.35fr 1.4fr 1.5fr 34px;gap:18px}.service h3{font-size:27px}.process-grid{gap:30px}.process-grid h3{font-size:23px}}@media(max-width:820px){html{scroll-padding-top:22px}.wrap{width:calc(100% - 44px)}.demo-bar{padding-inline:22px}.header-inner{height:100px}.navigation{gap:19px}.navigation>a:not(.nav-contact){display:none}.hero{grid-template-columns:1fr .97fr;gap:23px;padding-top:8px}.hero-copy{padding-top:16px}.eyebrow{font-size:8px;letter-spacing:1.3px}h1{font-size:66px;letter-spacing:-3.8px;margin-top:24px}.hero-visual{min-height:510px;margin-right:14px}.hero-image{border-top-left-radius:70px}.hero-intro{margin-top:23px;font-size:13px}.hero-copy .button{max-width:255px;line-height:1.5;padding:14px}.hero-detail{font-size:8px}.image-caption{right:-14px;width:165px;padding:18px}.image-caption p{font-size:29px}.image-caption svg{width:23px;right:17px;bottom:23px}.caption-label{font-size:7px}.vertical-note{right:-17px;font-size:6px}.hero-bottom{gap:18px;margin-top:20px;font-size:10px}.section-heading{grid-template-columns:.75fr 1.8fr}.service{grid-template-columns:35px 1fr 1.2fr 30px;gap:15px}.service h3{font-size:25px}.service p{font-size:12px}.philosophy-grid{grid-template-columns:.9fr 1fr;gap:35px}.philosophy-photo,.philosophy-photo>img{height:560px;min-height:560px}.philosophy-copy .lead{font-size:21px}.photo-tag{bottom:18px;left:18px;font-size:17px;padding:14px}.philosophy-copy>p:not(.eyebrow):not(.lead){font-size:12px}.process-grid{gap:24px}.process-grid h3{font-size:23px}.process-grid p{font-size:12px}.section-heading h2{font-size:43px}.site-footer{gap:15px}.footer-brand{font-size:23px}}@media(max-width:620px){.wrap{width:calc(100% - 40px)}.demo-bar{font-size:9px;padding:10px 20px;gap:10px}.demo-bar a span{margin-left:4px}.header-inner{height:89px}.brand>span{font-size:25px}.brand-symbol{width:29px;height:39px}.brand{gap:9px}.brand small{font-size:6.5px;letter-spacing:1.8px}.menu-toggle{border:0;display:flex;gap:10px;align-items:center;background:transparent;color:var(--ink);padding:10px 0 10px 10px;font-size:11px}.menu-toggle svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.4;fill:none}.navigation{display:none;position:absolute;inset:89px 0 auto;padding:20px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 20px 20px #1e40240b;align-items:stretch}.navigation.is-open{display:flex;flex-direction:column;gap:14px}.navigation>a:not(.nav-contact){display:block;font-size:14px}.nav-contact{font-size:12px;display:flex;justify-content:space-between}.hero{display:flex;flex-direction:column;gap:0;padding-top:9px}.hero-copy{padding-top:12px}.eyebrow{font-size:8px;letter-spacing:1.6px}h1{font-size:clamp(66px,17.1vw,100px);line-height:.98;letter-spacing:-4.2px;margin-top:22px}h1 br:last-of-type{display:none}h1 br:last-of-type::after{content:" "}.hero-intro{font-size:14px;margin-top:23px;line-height:1.65}.hero-copy .button{max-width:none;margin-top:23px;padding:16px 18px;min-height:53px;font-size:11px}.hero-detail{font-size:9px;margin-top:11px}.hero-visual{height:390px;min-height:0;margin-top:32px;margin-right:15px}.hero-image{border-radius:70px 2px 2px 2px;object-position:50% 50%}.vertical-note{right:-18px;font-size:6px}.image-caption{width:172px;bottom:24px;right:-15px;padding:21px}.image-caption p{font-size:31px}.image-caption svg{width:25px;right:18px;bottom:23px}.hero-bottom{gap:10px;flex-wrap:wrap;font-size:9px;margin-top:20px;padding:20px 0;row-gap:13px}.tiny-star{font-size:11px}.hero-bottom>a{width:27px;height:27px}.section-space{padding-block:65px}.section-heading{display:block;margin-bottom:34px}.section-heading>.eyebrow{margin-bottom:20px;margin-top:0}h2,.section-heading h2{font-size:43px;letter-spacing:-1.9px}.section-heading>div>p{font-size:13px;margin-top:20px}.service{grid-template-columns:28px 1fr 27px;gap:12px;padding:25px 0;align-items:start}.service-no{padding-top:4px;font-size:14px}.service h3{font-size:27px}.service h3 br{display:none}.service p{grid-column:2;grid-row:2;font-size:12px;max-width:340px;margin-top:0}.service-mark{grid-column:3;grid-row:1;width:27px;height:27px;font-size:17px}.philosophy{padding-block:55px}.philosophy-grid{display:flex;flex-direction:column;gap:35px;align-items:stretch}.philosophy-photo,.philosophy-photo>img{height:375px;min-height:0}.philosophy-photo>img{border-top-right-radius:70px;object-position:22% 50%}.photo-tag{font-size:20px;bottom:20px;left:20px}.philosophy-copy h2{margin-top:19px}.philosophy-copy .lead{font-size:24px;max-width:350px;margin-top:22px}.philosophy-copy>p:not(.eyebrow):not(.lead){font-size:13px;margin-top:18px}.text-link{margin-top:24px}.process-grid{display:block}.process-grid article{padding:22px 0 26px;display:grid;grid-template-columns:43px 1fr;column-gap:16px}.process-grid article>span{font-size:30px;grid-row:1/3}.process-grid h3{font-size:25px;margin-top:5px}.process-grid p{font-size:12px;margin-top:11px;max-width:100%}.contact{padding-block:63px 55px}.contact h2{font-size:42px;margin-top:21px}.contact h2+p{font-size:12px;line-height:1.7;margin-top:20px}.demo-contact{margin-top:30px;padding-top:24px}.demo-contact p{font-size:11px}.button-cream{width:100%;font-size:11px;gap:12px;text-align:left;padding:17px;line-height:1.4}.contact-leaf{width:250px;right:-100px}.site-footer{padding-block:24px;flex-wrap:wrap}.footer-brand{font-size:25px}.site-footer p{order:3;text-align:left;width:100%;font-size:9px}.footer-up{margin-left:auto}.site-footer p span{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

@media(max-width:620px){h1{font-size:clamp(51px,16vw,100px)}h1 br:last-of-type{display:initial}h1 br:last-of-type::after{content:none}}

/* Grid content must shrink on narrow screens without merging service names. */
.hero>*,.section-heading>*,.service>*,.philosophy-grid>*,.process-grid>*{min-width:0}
.service h3{overflow-wrap:anywhere;hyphens:auto}
.contact{overflow:clip}
.contact-leaf{pointer-events:none}
@media(max-width:620px){
  .service{grid-template-columns:28px minmax(0,1fr) 27px}
}
