:is(.home-v2,.site-v2,:where(body:has(>.site-header))){--bg:#faf9f6;--text:#243831;--muted:#64716a;--accent:#264b3f;--accent-strong:#193b30;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif}
:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h1,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h2,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h3{font-family:Manrope,sans-serif;letter-spacing:-.045em;line-height:1.12;color:var(--text);margin:0}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h1{font-size:clamp(2.8rem,4.9vw,4.7rem);font-weight:500}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h2{font-size:clamp(2rem,3.2vw,3.15rem);font-weight:500}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h3{font-size:1.3rem;font-weight:600;letter-spacing:-.025em}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) p{line-height:1.7;color:var(--muted)}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .container{width:min(1240px,90%)}
:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-header{background:#faf9f6f5;border-bottom:1px solid #dddcd5;box-shadow:none}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-wrap{min-height:90px;gap:20px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .brand img{width:150px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav{gap:18px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav a{font-size:.82rem;color:#3e4c44;font-weight:500}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-actions .btn{border-radius:4px;background:#264b3f;box-shadow:none;font-size:.8rem;padding:.8rem 1rem}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .lang-switch{box-shadow:none;background:transparent;border:1px solid #d7dad4;border-radius:4px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .lang-btn{border-radius:2px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .lang-btn.active{background:#264b3f;color:#fff}
.v2-skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:1rem}.v2-skip:focus{top:10px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) a:focus-visible,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) button:focus-visible,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) summary:focus-visible{outline:3px solid #aa6b3b;outline-offset:5px}.v2-hero{padding:50px 0 70px}.v2-hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:6%;align-items:center}.v2-kicker{font-size:.72rem!important;font-weight:600;letter-spacing:.17em;color:#6a7166!important;margin:0 0 24px;text-transform:uppercase}.v2-hero-copy .v2-lead{font-size:1.06rem;max-width:510px;margin:28px 0}.v2-actions{display:flex;gap:12px;flex-wrap:wrap}.v2-button{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:17px 22px;background:#264b3f;color:#fff;border:1px solid #264b3f;border-radius:4px;font-size:.88rem;font-weight:600;transition:background .2s}.v2-button:hover{background:#193b30;color:#fff}.v2-button-outline{background:transparent;color:#264b3f}.v2-button-outline:hover{background:#e8ede5;color:#264b3f}.v2-hero-note{font-size:.78rem;margin-top:34px!important}.v2-hero-photo{margin:0;position:relative;overflow:hidden;border-radius:6px;min-width:0}.v2-hero-photo>img{width:100%;height:610px;object-fit:cover;display:block}.v2-hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:48px 27px 25px;background:linear-gradient(transparent,#172720dd);color:white;display:grid;gap:8px}.v2-hero-photo figcaption>span{font-size:.64rem;letter-spacing:.14em}.v2-hero-photo figcaption strong{font-size:1.05rem;font-weight:500}.v2-hero-photo .text-link{font-size:.78rem;color:white;justify-self:start}
.v2-section{padding:90px 0;border-top:1px solid #e4e2db}.v2-section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:45px}.v2-section-heading>div{max-width:690px}.v2-section-heading>p{max-width:360px;font-size:.95rem;margin:0}.text-link{color:#264b3f;display:inline-flex;gap:24px;align-items:center;font-weight:600;font-size:.9rem;padding-bottom:7px;border-bottom:1px solid #9ba69a}.text-link:hover{color:#91633f}.v2-services{display:grid;grid-template-columns:repeat(6,1fr);gap:0 36px}.v2-service{grid-column:span 2;display:flex;align-items:start;gap:20px;padding:30px 0;border-top:1px solid #d9dcd3;color:#243831}.v2-service:nth-last-child(-n+2){grid-column:span 3}.v2-number{font-size:.72rem;color:#8a9187;padding-top:4px}.v2-service p{font-size:.9rem;margin:12px 0 0}.v2-service>span:last-child{margin-left:auto}.v2-warm{background:#eeeee7}.v2-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.v2-project{min-width:0;color:#243831}.v2-project-image{position:relative;overflow:hidden;border-radius:4px}.v2-project-image img{display:block;aspect-ratio:4/5;width:100%;height:auto;object-fit:cover;transition:transform .35s}.v2-project:hover img{transform:scale(1.035)}.v2-project-image>span{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:40px;height:40px;background:#faf9f6;border-radius:50%}.v2-project-location{font-size:.7rem!important;letter-spacing:.08em;text-transform:uppercase;margin:23px 0 10px}.v2-project>p:last-child{font-size:.9rem;margin:12px 0 0}.v2-process{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:45px}.v2-process article{border-top:1px solid #bac2b7;padding-top:22px}.v2-process article>span{font-size:.8rem;color:#7a8879;display:block;margin-bottom:30px}.v2-process h3{font-size:1.1rem}.v2-process p{font-size:.9rem}
.v2-team{background:#e0e5db}.v2-team-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12%;align-items:center}.v2-team-grid p:not(.v2-kicker){max-width:640px;margin:25px 0}.v2-monogram{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b7c1b0;border-radius:50%;font-family:Manrope,sans-serif;font-size:clamp(5rem,10vw,10rem);font-weight:500;letter-spacing:-.09em;line-height:1}.v2-monogram span{font-family:'DM Sans',sans-serif;font-size:.62rem;letter-spacing:.24em;margin-top:25px}.v2-planning{display:grid;grid-template-columns:1.25fr 1fr;gap:12%;align-items:center}.v2-planning-links{display:grid;gap:25px}.v2-planning-links .text-link{justify-content:space-between;padding-bottom:20px}.v2-faq-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:12%}.v2-area{font-size:.82rem;max-width:330px;margin-top:28px}.v2-faq details{border-bottom:1px solid #cbd1c6;padding:21px 0}.v2-faq details:first-child{padding-top:0}.v2-faq summary{font-size:1rem;cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none}.v2-faq summary::-webkit-details-marker{display:none}.v2-faq summary:after{content:'+';font-size:1.3rem}.v2-faq details[open] summary:after{content:'âˆ’'}.v2-faq details p{font-size:.91rem;margin:15px 0 0}.v2-final{background:#264b3f;padding:85px 0}.v2-final h2{color:#fff;max-width:750px;font-size:clamp(2.7rem,4.5vw,4.2rem)}.v2-final p{color:#e0e8dc}.v2-final .v2-kicker{color:#c5d2be!important}.v2-final .v2-button{background:#faf9f6;border-color:#faf9f6;color:#264b3f}.v2-final .v2-button-outline{background:transparent;color:#fff;border-color:#839888}.v2-final .v2-actions{margin-top:30px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-footer{background:#faf9f6;border-top:0;color:#243831;padding-top:35px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid p,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid a{font-size:.76rem;color:#64716a}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .admin-link-wrap{margin-top:10px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .mobile-contact-bar{border-radius:5px;box-shadow:0 2px 20px #17272020}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .mobile-contact-btn{border-radius:3px;background:#edf0e9;padding:.85rem .3rem}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .mobile-contact-btn-primary{background:#264b3f;color:#fff}
@media(min-width:840px) and (max-width:1100px){:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-wrap{flex-wrap:wrap;padding:15px 0;gap:15px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav{order:3;width:100%;justify-content:center}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-actions{margin-left:auto}.v2-hero-photo>img{height:550px}}
@media(max-width:839px){:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-wrap{min-height:78px;gap:12px;flex-wrap:wrap;padding:12px 0}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .brand img{width:126px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-actions{margin-left:auto}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-actions>.btn{display:none}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .menu-toggle{order:3;border-radius:3px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav{order:4;width:100%;padding:15px 0}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-open .site-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}.v2-hero{padding:35px 0 50px}.v2-hero-grid{grid-template-columns:1fr;gap:35px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) h1{font-size:clamp(2.8rem,8vw,4.6rem)}.v2-hero-copy .v2-lead{max-width:620px}.v2-hero-photo>img{height:570px}.v2-section{padding:60px 0}.v2-section-heading{gap:25px;align-items:start;flex-direction:column;margin-bottom:30px}.v2-section-heading>p{max-width:620px}.v2-services{grid-template-columns:1fr 1fr;gap:0 25px}.v2-service,.v2-service:nth-last-child(-n+2){grid-column:span 1}.v2-service:last-child{grid-column:span 2}.v2-project-grid{gap:18px}.v2-project h3{font-size:1.12rem}.v2-process{grid-template-columns:1fr 1fr;gap:25px}.v2-team-grid{gap:7%;grid-template-columns:.65fr 1fr}.v2-monogram span{font-size:.5rem;letter-spacing:.1em}.v2-planning,.v2-faq-grid{grid-template-columns:1fr;gap:30px}.v2-final{padding:60px 0}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid{flex-wrap:wrap}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid p{margin:0}}
@media(max-width:560px){.v2-hero-photo>img{height:440px}.v2-hero-photo figcaption{padding:40px 20px 20px}.v2-hero-copy .v2-lead{font-size:1rem;margin:22px 0}.v2-actions{gap:10px}.v2-button{padding:15px 17px;gap:18px;font-size:.82rem}.v2-hero-note{margin-top:25px!important;font-size:.72rem}.v2-kicker{margin-bottom:18px}.v2-services{grid-template-columns:1fr}.v2-service,.v2-service:nth-last-child(-n+2),.v2-service:last-child{grid-column:span 1;padding:23px 0}.v2-project-grid{grid-template-columns:1fr;gap:38px}.v2-project-image img{aspect-ratio:5/4}.v2-project h3{font-size:1.3rem}.v2-project-location{margin-top:18px}.v2-team-grid{grid-template-columns:1fr;gap:35px}.v2-monogram{width:190px;font-size:5.5rem}.v2-monogram span{font-size:.5rem;margin-top:15px}.v2-team-grid h2{font-size:2.15rem}.v2-process{gap:25px 18px}.v2-process article>span{margin-bottom:22px}.v2-process h3{font-size:1rem}.v2-final .v2-actions{display:grid;justify-content:start}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .footer-grid{display:grid;gap:12px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-footer{padding-bottom:110px}}
@media(prefers-reduced-motion:reduce){:is(.home-v2,.site-v2,:where(body:has(>.site-header))) *{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:839px){:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav{position:static;top:auto;background:transparent;border:0}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav a{padding:.5rem}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-open .site-nav{flex-direction:row}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-wrap{justify-content:initial}}

:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .brand img{width:100px;height:76px;object-fit:contain;filter:none}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav a{padding:.6rem .35rem}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav a:hover,:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .site-nav a.active{background:#e9ede5}
@media(max-width:839px){:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .brand img{width:85px;height:58px}:is(.home-v2,.site-v2,:where(body:has(>.site-header))) .nav-wrap{min-height:78px}}
