@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--ink:#202421;--muted:#66706a;--paper:#f5f4ef;--white:#fff;--forest:#1f5c43;--forest-dark:#153d2e;--lime:#b7cb63;--line:#d9ddd6;--display:'Manrope',sans-serif;--body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{height:82px;background:rgba(245,244,239,.94);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(32,36,33,.08)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font:700 11px/1.1 var(--display);letter-spacing:.09em}.brand b{font-weight:500;color:var(--forest)}.brand-mark{width:35px;height:35px;border:1.5px solid var(--forest);display:grid;place-items:center;color:var(--forest);font:800 16px var(--display);letter-spacing:-.15em}.brand-mark span{color:var(--ink)}.desktop-nav{display:flex;gap:32px;margin-left:auto;font-size:13px;color:#58615c}.desktop-nav a:hover,.footer-bottom a:hover{color:var(--forest)}.header-actions{display:flex;align-items:center;gap:18px}.phone{font:600 13px var(--display);white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 21px;border:0;font:700 12px var(--display);letter-spacing:.02em;transition:.25s ease;cursor:pointer}.button span{font-size:17px;line-height:0}.button-small{padding:12px 16px;background:var(--forest);color:white}.button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #163e2c26}.button-light{background:var(--lime);color:var(--ink)}.button-dark{background:var(--forest);color:#fff}.button-outline{border:1px solid #a4b8ab;color:white;background:transparent}.menu-toggle{display:none;background:transparent;border:0}.mobile-menu{display:none}.section-dark{background:var(--forest-dark);color:white}.hero{min-height:665px;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;right:-11vw;top:-20%;width:56vw;height:130%;background:linear-gradient(125deg,transparent 15%,#1f5c43 15%,#1f5c43 70%,transparent 70%);opacity:.62}.hero-grain{position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.38'/%3E%3C/svg%3E")}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:665px}.eyebrow{font:600 11px var(--display);letter-spacing:.15em;text-transform:uppercase}.eyebrow-dot{width:7px;height:7px;background:var(--lime);display:inline-block;border-radius:50%;margin-right:9px}.hero h1,.why h2,.quote-inner h2{font:800 clamp(46px,6.5vw,82px)/1.02 var(--display);letter-spacing:-.065em;margin:29px 0 25px}.hero h1 em,.why h2 em,.quote-inner em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em;color:var(--lime)}.hero-intro{max-width:390px;color:#c1d0c6;font-size:17px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:35px}.text-link{font-size:12px;border-bottom:1px solid #b7cb6380;padding-bottom:6px}.text-link span{margin-left:8px;color:var(--lime)}.hero-visual{height:500px;display:flex;align-items:center;justify-content:center;position:relative}.door-art{width:255px;height:390px;border:11px solid #c8c7b8;background:#aaad96;box-shadow:28px 30px 0 #143a2c;transform:rotate(5deg);position:relative}.door-panel{position:absolute;inset:17px;border:1px solid #e5e5d6;background:linear-gradient(145deg,#9aa48d,#4e715c);display:flex;align-items:flex-end;padding:22px;color:#e8edcf;font:700 13px/1.1 var(--display);letter-spacing:.13em}.door-handle{position:absolute;right:20px;top:50%;width:10px;height:10px;border-radius:50%;background:#d9cda7;box-shadow:0 0 0 4px #26392d}.hero-stamp{position:absolute;right:5%;top:18%;width:94px;height:94px;border:1px solid var(--lime);border-radius:50%;display:grid;place-content:center;text-align:center;color:var(--lime);font:600 10px/1.2 var(--display);text-transform:uppercase;letter-spacing:.1em;transform:rotate(-13deg)}.hero-stamp strong{font-size:23px}.visual-caption{position:absolute;bottom:3%;font-size:11px;color:#9db1a3}.scroll-note{position:absolute;bottom:28px;left:calc((100% - 1160px)/2);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#a7bbae}.scroll-note span{color:var(--lime);font-size:18px;margin-left:10px}.section-light{padding:120px 0}.intro-grid{display:grid;grid-template-columns:1fr 2fr;gap:40px}.section-label{display:flex;gap:14px;align-items:center;font:700 11px var(--display);letter-spacing:.14em;text-transform:uppercase}.section-label span{color:var(--forest);font-size:12px}.intro h2,.section-heading h2,.contact h2{font:800 clamp(40px,5vw,64px)/1.04 var(--display);letter-spacing:-.06em;margin:0}.intro h2 em,.section-heading h2 em,.contact h2 em{font:400 .98em Georgia,serif;color:var(--forest)}.lead{max-width:650px;font-size:21px;line-height:1.48;color:#56615a;margin:31px 0 52px}.stat-row{border-top:1px solid var(--line);display:flex;padding-top:24px;gap:70px}.stat-row strong{display:block;font:800 30px var(--display);color:var(--forest)}.stat-row span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.manifesto{padding:112px 0;background:#dfe6d6;text-align:center;color:var(--forest-dark)}.manifesto .eyebrow{color:var(--forest)}.manifesto blockquote{font:400 clamp(34px,5vw,58px)/1.12 Georgia,serif;letter-spacing:-.05em;margin:24px auto 34px}.manifesto blockquote em{color:var(--forest);font-style:italic}.manifesto .line{width:58px;height:2px;background:var(--forest);margin:0 auto 18px}.manifesto-inner>p:last-child{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.services{padding-bottom:140px}.section-heading{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:30px;align-items:end;margin-bottom:55px}.section-heading h2{grid-column:2}.section-heading>p{color:var(--muted);font-size:14px;margin:0}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.service-card{min-height:390px;padding:34px;background:#ebece5;position:relative;overflow:hidden}.service-card-accent{background:var(--forest);color:#fff}.card-number{position:absolute;right:32px;top:30px;color:#9ca99f;font:700 12px var(--display)}.service-card-accent .card-number{color:#91ac9b}.service-icon{font-size:41px;font-weight:300;color:var(--forest);margin:35px 0 25px}.service-card-accent .service-icon{color:var(--lime)}.service-card h3{font:700 34px/1.02 var(--display);letter-spacing:-.05em;margin:0 0 18px}.service-card p{max-width:360px;color:#66716a;font-size:14px}.service-card-accent p{color:#c8d5cc}.arrow-link{display:inline-flex;gap:23px;margin-top:23px;font:700 12px var(--display);border-bottom:1px solid currentColor;padding-bottom:7px}.arrow-link span{font-size:16px}.why{padding:120px 0}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.why h2{font-size:64px;margin:28px 0}.why-text{color:#bfd0c4;max-width:360px;font-size:16px;margin-bottom:35px}.reasons{border-top:1px solid #517665}.reasons>div{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid #517665}.reasons b{color:var(--lime);font:700 12px var(--display)}.reasons strong,.reasons small{display:block}.reasons strong{font:700 16px var(--display)}.reasons small{color:#b3c7b9;font-size:13px;margin-top:6px}.gallery{padding-bottom:135px}.gallery-heading{grid-template-columns:1fr 1fr}.gallery-heading h2{grid-column:auto;margin-top:22px}.gallery-heading>p{align-self:end}.gallery-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px}.gallery-item small{display:block;font-size:11px;color:var(--muted);margin-top:12px}.placeholder{height:300px;display:grid;place-items:center;position:relative;overflow:hidden}.placeholder span{font:600 13px/1.4 var(--display);letter-spacing:.18em;text-align:center;color:#eef1de}.placeholder b{font-size:21px}.door-placeholder{height:440px;background:linear-gradient(120deg,#3b4d41,#9b9d87 70%)}.door-placeholder:before{content:'';width:47%;height:83%;border:10px solid #d4d0b4;background:#58705a;box-shadow:15px 14px #1e4936;transform:rotate(-5deg)}.door-placeholder span{position:absolute;z-index:1;text-shadow:0 2px 8px #152d20}.window-placeholder{background:linear-gradient(135deg,#a7bfba,#4b726e)}.window-placeholder:before{content:' ';width:66%;height:60%;border:13px solid #edeada;background:linear-gradient(120deg,#94b6b7,#e9e3c9)}.window-placeholder span,.detail-placeholder span{position:absolute;z-index:1;text-shadow:0 2px 6px #193d39}.detail-placeholder{background:linear-gradient(135deg,#bd9e76,#604f40)}.quote-section{background:var(--forest);color:white;text-align:center;padding:105px 0}.quote-inner h2{font-size:60px;margin:16px 0 31px}.contact{padding:125px 0}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.contact h2{margin:27px 0}.contact-copy>p{max-width:370px;color:var(--muted);font-size:16px}.contact-details{margin-top:55px;display:flex;flex-direction:column;gap:19px}.contact-details a{font:600 17px var(--display);color:var(--forest)}.contact-details span{display:block;color:var(--muted);font:11px var(--body);text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}.quote-form{background:#fff;padding:39px 40px;box-shadow:0 15px 45px #1c33210d}.quote-form label{display:block;font:700 11px var(--display);text-transform:uppercase;letter-spacing:.09em;margin-bottom:21px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #cfd5cd;background:transparent;padding:11px 0;color:var(--ink);outline:none;font:400 15px var(--body);text-transform:none;letter-spacing:0}input:focus,select:focus,textarea:focus{border-color:var(--forest)}textarea{resize:vertical}.quote-form .button{margin-top:8px}.form-status{font-size:13px;min-height:20px;color:var(--forest)}.form-note{display:block;color:#89918c;font-size:10px;margin-top:9px}.site-footer{background:#152c22;color:white;padding:55px 0 23px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:55px}.brand-footer{color:white}.brand-footer b{color:var(--lime)}.footer-top>p{font:italic 23px/1.2 Georgia,serif;color:#c4d1c5;margin:0}.footer-bottom{border-top:1px solid #355142;padding-top:18px;display:flex;justify-content:space-between;color:#9bb1a1;font-size:11px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}@media(max-width:800px){.container{width:min(100% - 32px,600px)}.site-header{height:72px}.desktop-nav,.phone{display:none}.header-actions{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;gap:5px;margin-left:4px}.menu-toggle i{display:block;width:22px;height:1px;background:var(--ink)}.mobile-menu{position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:19px 16px 25px;display:none;flex-direction:column;gap:18px;border-bottom:1px solid var(--line);font:600 14px var(--display)}.mobile-menu.open{display:flex}.hero,.hero-grid{min-height:700px}.hero-grid{display:block;padding-top:80px}.hero h1{font-size:56px}.hero-visual{height:295px;margin-top:15px;justify-content:flex-start;padding-left:18%}.door-art{width:160px;height:245px;border-width:8px}.door-panel{inset:10px;padding:12px;font-size:9px}.hero-stamp{right:10%;top:25%;width:75px;height:75px}.scroll-note{left:16px}.section-light,.contact{padding:80px 0}.intro-grid,.why-grid,.contact-grid{display:block}.intro-content{margin-top:38px}.lead{font-size:18px;margin-bottom:35px}.stat-row{gap:18px;justify-content:space-between}.stat-row strong{font-size:24px}.stat-row span{font-size:10px}.manifesto{padding:80px 0}.services{padding-bottom:80px}.section-heading{display:block;margin-bottom:38px}.section-heading h2{margin:23px 0}.service-grid,.gallery-grid{grid-template-columns:1fr}.service-card{min-height:350px}.why{padding:80px 0}.why h2{font-size:55px}.reasons{margin-top:65px}.gallery-heading>p{margin-top:20px}.door-placeholder{height:350px}.quote-section{padding:80px 0}.quote-inner h2{font-size:47px}.contact h2{margin:24px 0}.contact-details{margin:35px 0 50px}.quote-form{padding:27px 20px}.form-row{display:block}.footer-top{display:block}.footer-top>p{margin:30px 0}.footer-bottom{display:block;line-height:1.8}.footer-bottom span+span{display:block;margin-top:8px}}
