:root{--paper:#f7f6ef;--green:#283e30;--muted:#6b7267;--line:#dbddd2;--orange:#bb613f;--serif:Georgia,"Times New Roman",serif;color:var(--green);background:var(--paper);font-synthesis:none;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{object-fit:cover;max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}em{color:#6d7c5a;font-weight:400}h1{letter-spacing:-3.5px;font-size:clamp(54px,5.8vw,88px);line-height:1.06}h2{letter-spacing:-1.5px;font-size:clamp(36px,3.5vw,51px);line-height:1.16}h3{letter-spacing:-.5px;font-size:27px}p{font-size:15px;line-height:1.8}.wrap{width:min(1280px,100% - 112px);margin-inline:auto}.header{justify-content:space-between;align-items:center;gap:30px;height:116px;display:flex}.brand{flex-shrink:0;align-items:center;gap:12px;display:flex}.brand svg{width:43px;height:49px}.brand>span{font-family:var(--serif);letter-spacing:-1px;font-size:29px}.brand small{letter-spacing:1.8px;margin-top:7px;font-family:Arial,sans-serif;font-size:8px;display:block}nav{align-items:center;gap:32px;font-size:13px;display:flex}nav>a:not(.button):hover,.footer a:hover{color:var(--orange)}.button{background:var(--green);color:#fff;justify-content:space-between;align-items:center;gap:30px;padding:20px 25px;font-size:13px;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#415a42;transform:translateY(-2px)}.button span{font-size:21px}.button.small{gap:18px;padding:14px 19px;font-size:12px}.menu-toggle{display:none}.hero{grid-template-columns:1fr 1.07fr;align-items:center;gap:45px;padding-top:23px;padding-bottom:48px;display:grid}.eyebrow{letter-spacing:2px;font-family:Arial,sans-serif;font-size:10px;font-weight:500;line-height:1.6}.dot{background:var(--orange);border-radius:50%;width:7px;height:7px;margin-right:9px;display:inline-block}.hero .eyebrow{margin-bottom:26px}.hero .intro{color:var(--muted);margin:25px 0 29px;font-size:16px;line-height:1.8}.hero-location{color:var(--muted);letter-spacing:.2px;align-items:center;gap:9px;margin-top:35px;font-size:10px;display:flex}.hero-location>span{color:var(--green);font-size:23px}.hero-visual{height:580px;position:relative}.hero-visual>img{object-position:54% center;border-radius:160px 0 0;width:100%;height:100%}.hero-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000,#152a2280);position:absolute;inset:60% 0 0}.photo-caption{z-index:1;color:#fff;font-family:var(--serif);justify-content:space-between;align-items:end;font-size:25px;font-style:italic;line-height:1.25;display:flex;position:absolute;bottom:29px;left:32px;right:30px}.photo-caption>span:last-child{font-size:35px;font-style:normal}.seal{text-align:center;letter-spacing:1.4px;border:5px solid var(--paper);background:#e9ecde;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:112px;height:112px;font-size:8px;line-height:1.1;display:flex;position:absolute;top:35px;left:-48px;transform:rotate(-12deg)}.seal br{display:none}.seal svg{width:35px;height:36px;margin:6px}.values{border-block:1px solid var(--line);color:#626d60;justify-content:space-between;gap:20px;padding:25px 0;font-size:11px;display:flex}.values span:before{content:"✳";color:#748563;margin-right:13px;font-size:16px}.section{padding-top:91px;padding-bottom:76px}.section-heading{justify-content:space-between;align-items:end;gap:35px;margin-bottom:37px;display:flex}.section-heading .eyebrow,.about .eyebrow{margin-bottom:17px}.section-heading>p{color:var(--muted);font-size:13px}.service-grid{grid-template-columns:repeat(3,1fr);gap:35px 27px;display:grid}.card-photo{position:relative;overflow:hidden}.card-photo img{width:100%;height:245px;transition:transform .6s}.service-card:hover img,.project:hover img{transform:scale(1.035)}.card-number{color:#fff;text-shadow:0 1px 5px #000;font-size:10px;position:absolute;top:16px;left:17px}.circle-arrow{background:var(--paper);border-radius:50%;place-items:center;width:36px;height:36px;font-size:21px;transition:background .2s;display:grid;position:absolute;bottom:15px;right:15px}.service-card:hover .circle-arrow{background:#dce3cf}.service-card h3{margin-top:18px;font-size:26px}.service-card p{color:var(--muted);margin-top:6px;font-size:12px}.extra-service{border-top:1px solid var(--line);justify-content:space-between;gap:24px;margin-top:39px;padding-top:25px;font-size:12px;display:flex}.extra-service>span{color:var(--muted)}.extra-service strong{font-weight:400}.extra-service strong span{margin-left:24px;font-size:19px}.philosophy{text-align:center;background:#e9ecdf;overflow:hidden}.philosophy-inner{padding-block:74px;position:relative}.philosophy h2{margin:25px 0 24px;font-size:clamp(35px,3.5vw,51px)}.philosophy p:not(.eyebrow){color:#66725e;font-size:13px}.botanical{color:#d5ddc5;z-index:0;opacity:.5;pointer-events:none;font-size:340px;line-height:1;position:absolute;bottom:-71px;right:-30px;transform:rotate(20deg)}.philosophy-inner>h2,.philosophy-inner>p{z-index:1;position:relative}.muted{color:var(--muted);font-size:12px}.project-grid{grid-template-columns:repeat(3,1fr);gap:27px;display:grid}.project{overflow:hidden}.project img{width:100%;height:300px;transition:transform .6s}.project:nth-child(2){padding-top:45px}.project .eyebrow{color:var(--muted);letter-spacing:1.6px;margin-top:21px;font-size:9px}.project h3{justify-content:space-between;gap:10px;margin-top:8px;font-size:24px;display:flex}.project h3 span{font:23px Arial,sans-serif}.about{grid-template-columns:1fr 1fr;align-items:center;gap:95px;padding-top:27px;padding-bottom:104px;display:grid}.about-image{position:relative}.about-image img{object-position:40%;border-radius:0 130px 0 0;width:100%;height:480px}.about-image>span{background:var(--paper);font-family:var(--serif);padding:15px 22px 0 0;font-size:21px;font-style:italic;position:absolute;bottom:0;left:0}.about-copy h2{margin-bottom:22px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-top:15px;font-size:14px}.text-link{border-bottom:1px solid var(--green);align-items:center;gap:45px;margin-top:28px;padding-bottom:10px;font-size:13px;display:inline-flex}.text-link span{font-size:20px}.contact{background:var(--green);color:var(--paper)}.contact-inner{grid-template-columns:1.2fr 1fr;gap:65px;padding-block:76px;display:grid}.contact .eyebrow{color:#ced5c3;font-size:9px}.contact h2{margin:22px 0;font-size:56px}.contact em{color:#c4cfad}.contact p{color:#cdd4c9;font-size:13px}.contact-details{padding-top:28px}.contact-details>span{letter-spacing:1.8px;color:#c2cdbb;font-size:9px;display:block}.contact-details>a{border-bottom:1px solid #ffffff30;justify-content:space-between;gap:12px;margin-bottom:28px;padding:15px 0 19px;display:flex}.contact-places{grid-template-columns:1fr 1fr;gap:22px 28px;margin:4px 0 32px;display:grid}.contact-place>span{letter-spacing:1.8px;color:#c2cdbb;font-size:9px;display:block}.contact-place a{border-bottom:1px solid #ffffff30;justify-content:space-between;gap:10px;margin-bottom:10px;padding:10px 0 12px;display:flex}.contact-place .phone{font-size:22px}.contact-place p{line-height:1.65}.phone{font-family:var(--serif);font-size:33px}.email{font-size:19px}.contact-details a:hover{color:#d5dfbe}.contact-details p{font-size:12px}.region{margin-top:13px;font-size:10px;display:block}.footer{justify-content:space-between;align-items:center;gap:25px;padding-block:36px;display:flex}.footer-name{font:23px var(--serif);letter-spacing:-.6px}.footer-name span{letter-spacing:0;color:var(--muted);margin-top:8px;font:10px Arial,sans-serif;display:block}.footer p,.footer>div{color:var(--muted);font-size:10px}.footer>div{gap:25px;display:flex}.footer>div>a:last-child{font-size:21px}.skip-link{background:var(--green);color:#fff;z-index:100;padding:15px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--orange);outline-offset:6px}a,button{-webkit-tap-highlight-color:transparent}.detail-hero{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-block:40px 60px;display:grid}.breadcrumb{color:var(--muted);margin:25px 0;font-size:12px}.detail-hero h1{margin:24px 0;font-size:60px}.detail-hero p{color:var(--muted)}.detail-hero>img{border-radius:100px 0 0;width:100%;height:420px}.detail-hero ul{margin-block:23px;padding-left:20px;font-size:14px;line-height:2}.gallery{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px;display:grid}.gallery button{cursor:zoom-in;background:0 0;border:0;padding:0}.gallery img{width:100%;height:240px}.gallery button:hover{opacity:.85}dialog{background:var(--paper);max-width:95vw;color:var(--green);border:0;padding:18px}dialog::backdrop{background:#102015dd}dialog img{object-fit:contain;max-height:78vh}dialog button{border:1px solid var(--green);cursor:pointer;background:0 0;margin:0 0 15px auto;padding:10px 18px;display:block}.detail-contact{text-align:center;padding:60px 0 80px}.detail-contact .button{margin-top:24px}.legal{max-width:800px;padding-block:40px 80px}.legal h1{margin-bottom:35px;font-size:55px}.legal p{overflow-wrap:anywhere;margin-block:20px}.legal strong{font-weight:600}.legal a{text-decoration:underline}.legal-note{border-left:2px solid var(--orange);color:var(--muted);padding-left:20px}@media (width>=1600px){.hero-visual{height:650px}}@media (width<=1100px){.wrap{width:calc(100% - 64px)}nav{gap:20px}.brand>span{font-size:25px}.brand small{font-size:7px}.button.small{padding:12px}.hero{gap:30px}.hero-visual{height:550px}.hero-location{font-size:9px}.about{gap:45px}.card-photo img{height:210px}.project img{height:240px}.values{font-size:10px}.values span:before{margin-right:6px}.contact h2{font-size:48px}.email{font-size:16px}}@media (width<=850px){.header{z-index:10;height:95px;position:relative}.menu-toggle{border:1px solid var(--line);color:var(--green);cursor:pointer;background:0 0;align-items:center;gap:12px;padding:12px 15px;font-size:12px;display:flex}nav{background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:26px;display:none;position:absolute;top:80px;left:0;right:0;box-shadow:0 15px 20px #283e3015}nav.open{display:flex}nav>a{padding:16px 0}nav .button{margin-top:10px}.hero{gap:30px}.hero h1{letter-spacing:-2.5px;font-size:59px}.hero-visual{height:510px}.hero .intro{font-size:14px}.hero .button{gap:13px;padding:16px;font-size:11px}.hero-location{line-height:1.6}.seal{width:90px;height:90px;font-size:6px;left:-30px}.photo-caption{font-size:21px;left:22px}.values{grid-template-columns:1fr 1fr;gap:18px;display:grid}.section-heading{align-items:start}.section-heading>p{max-width:250px}.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid{gap:18px}.project h3{font-size:22px}.project img{height:200px}.about{gap:35px}.about-image img{height:440px}.contact-inner{gap:35px}.contact-places{grid-template-columns:1fr}.contact-place .phone,.phone{font-size:27px}.email{font-size:14px}.footer{flex-wrap:wrap}.detail-hero{gap:30px}.detail-hero h1{font-size:45px}.gallery{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.wrap{width:calc(100% - 40px)}.header{height:88px}.brand{gap:8px}.brand svg{width:31px;height:40px}.brand>span{font-size:23px}.brand small{letter-spacing:1.4px;font-size:6px}.menu-toggle{padding:11px 10px;font-size:11px}.hero{grid-template-columns:1fr;gap:40px;padding-top:24px;padding-bottom:30px}.hero h1{letter-spacing:-2.9px;font-size:66px;line-height:1.04}.hero .eyebrow{margin-bottom:22px;font-size:9px}.hero .intro{margin-top:24px;font-size:15px}.hero .button{gap:28px;padding:18px 21px;font-size:12px}.hero-location{margin-top:22px;font-size:9px}.hero-visual{height:420px;margin-left:13px}.hero-visual>img{border-radius:110px 0 0}.seal{width:100px;height:100px;font-size:7px;top:25px;left:-26px}.photo-caption{font-size:26px}.values{gap:15px 8px;padding:22px 0;font-size:9px}.values span:before{margin-right:5px;font-size:13px}.section{padding-top:59px;padding-bottom:50px}.section-heading{margin-bottom:29px;display:block}.section-heading>p{max-width:none;margin-top:22px}.section-heading h2{font-size:36px}.section-heading .eyebrow{letter-spacing:1.6px;font-size:8px}.service-grid{gap:28px 15px}.card-photo img{height:190px}.service-card h3{margin-top:13px;font-size:22px}.service-card p{font-size:11px;line-height:1.6}.card-number{top:12px;left:12px}.circle-arrow{width:31px;height:31px;font-size:18px;bottom:10px;right:10px}.extra-service{flex-direction:column;gap:12px;margin-top:29px;padding-top:22px;font-size:11px}.extra-service strong{justify-content:space-between;align-items:center;display:flex}.philosophy-inner{padding-block:55px}.philosophy .eyebrow{font-size:9px}.philosophy h2{letter-spacing:-1px;font-size:33px;line-height:1.25}.philosophy p:not(.eyebrow){font-size:12px}.philosophy p br{display:none}.botanical{font-size:270px;bottom:-70px;right:-90px}.section-heading .muted{margin-top:18px;display:block}.project-grid{grid-template-columns:1fr;gap:30px}.project:nth-child(2){padding-top:0}.project img{height:290px}.project h3{font-size:27px}.project .eyebrow{margin-top:17px}.about{grid-template-columns:1fr;gap:34px;padding-top:10px;padding-bottom:58px}.about-image img{height:360px}.about-image>span{font-size:19px}.about-copy h2{font-size:43px}.about .eyebrow{font-size:9px}.contact-inner{grid-template-columns:1fr;gap:22px;padding-block:52px}.contact .eyebrow{letter-spacing:1.5px;font-size:8px}.contact h2{font-size:48px}.contact-details{padding-top:15px}.phone{font-size:33px}.email{font-size:17px}.footer{gap:25px;padding-block:28px}.footer-name{width:100%}.footer p{font-size:9px}.footer>div{gap:18px}.desktop-break{display:none}.detail-hero{grid-template-columns:1fr;gap:30px;padding-top:15px}.detail-hero h1{overflow-wrap:anywhere;font-size:49px}.detail-hero>img{grid-row:2;height:320px}.gallery{gap:12px}.gallery img{height:160px}.legal h1{letter-spacing:-1px;overflow-wrap:anywhere;font-size:36px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.hero-copy,.hero-visual,.about-copy,.contact-inner>div,.detail-hero>div{min-width:0}.hero-location>span{display:inline-flex}.hero-location svg{width:16px;height:20px}@media (width>=601px) and (width<=850px){.hero h1{font-size:clamp(39px,6.4vw,54px)}}@media (width<=600px){.hero h1{letter-spacing:-2px;font-size:clamp(39px,12vw,63px)}.hero .intro{max-width:100%}.hero-location{font-size:8px}.hero-visual{margin-left:13px}.service-card{min-width:0}.service-card h3{font-size:21px}.contact-details a{overflow-wrap:anywhere}}.legal{font-size:14px;line-height:1.85}@media (width<=380px){.header{gap:8px}.brand>span{font-size:19px}.brand small{letter-spacing:1.2px;font-size:5px}.brand svg{width:26px}.menu-toggle{gap:6px;padding:10px 8px}.hero h1{font-size:39px}.phone{font-size:28px}.email{font-size:15px}.values{font-size:8px}}
