@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--green:#46671e;--brand:#8ac53b;--bright:#b8dc89;--ink:#202822;--muted:#687067;--cream:#f7f9f2;--line:#dce1d6;--white:#fff;--font:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;background:white}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}button:focus-visible,a:focus-visible{outline:3px solid #83b759;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid #507943;outline-offset:2px}.wrap{max-width:1280px;margin:auto;width:calc(100% - 112px)}.topbar{background:var(--green);color:#f2f4ea;font-size:12px;letter-spacing:.25px;padding:10px 0}.topbar .wrap{display:flex;justify-content:space-between}.topbar a{font-weight:600}.topbar a span{margin-left:14px}header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e7e9e2}.nav{height:104px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand img{width:164px;height:91px;object-fit:contain}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:550}nav>a:not(.button):hover{color:#58833b}.button{background:var(--green);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 24px;font-size:14px;font-weight:600;border:1px solid var(--green);border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:#385a43;transform:translateY(-2px)}.button.small{padding:12px 20px}.menu-toggle{display:none}.hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;min-height:680px;align-items:center;gap:35px;padding:48px 0 56px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;margin:0 0 22px;color:#547044}.dot{display:inline-block;border-radius:50%;width:7px;height:7px;background:#83ae5e;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.1;letter-spacing:-1.7px;font-weight:600}h1{font-size:clamp(56px,5.7vw,82px);line-height:1.06;letter-spacing:-4.3px;margin:0 0 25px}em{font-style:normal;color:#628d2e}h1 em{position:relative}h1 em:after{content:'';position:absolute;left:2px;right:2px;bottom:-4px;height:4px;background:#b4d58e;border-radius:50%}.lead{font-size:17px;line-height:1.75;color:#5d665e;max-width:470px}.actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid #99a790;padding-bottom:6px}.text-link span{margin-left:15px}.hero-note{display:flex;align-items:center;gap:11px;font-size:11px;color:#687365;margin-top:28px}.hero-note span{font-size:14px;color:#567344;margin-left:12px}.hero-note span:first-child{margin-left:0}.hero-visual{position:relative;align-self:stretch;min-height:560px;padding-bottom:28px;padding-top:12px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:42% center;border-radius:5px}.photo-caption{position:absolute;bottom:3px;left:-26px;background:var(--green);color:white;padding:27px 32px;width:320px;box-shadow:0 15px 30px #102b2115;border-radius:3px}.photo-caption>span{color:#c0d8a8;font-size:9px;letter-spacing:1.8px}.photo-caption p{font-family:Manrope,sans-serif;font-size:25px;line-height:1.35;letter-spacing:-.6px;margin:12px 0 0}.photo-caption a{position:absolute;right:25px;bottom:28px;color:#c7dfb0;font-size:25px}.photo-label{position:absolute;top:25px;right:12px;background:#ffffffed;font-size:9px;padding:6px 10px;border-radius:2px}.service-strip{border-bottom:1px solid var(--line);padding:25px 0}.service-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;font-weight:600;letter-spacing:1.5px}.separator{color:#8ac53b;font-size:20px!important}.section{padding-top:100px;padding-bottom:100px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:48px}.section-head h2{margin:0;font-size:46px;line-height:1.15;letter-spacing:-2px}.section-head>p,.section-head>div:nth-child(2){max-width:365px;color:var(--muted);font-size:15px;margin-bottom:3px}.section-head>div:nth-child(2)>p{margin-bottom:18px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.service{padding:28px 26px 0;border-right:1px solid var(--line);display:flex;flex-direction:column}.service:first-child{padding-left:0}.service:last-child{border:0;padding-right:0}.service-num{font-size:11px;color:#648e2d;font-weight:600}.service h3{font-size:24px;line-height:1.25;letter-spacing:-.8px;margin:24px 0 16px}.service p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:30px}.service a{display:flex;justify-content:space-between;gap:10px;font-size:12px;font-weight:600;margin-top:auto;padding-top:8px}.service a:hover{color:#72964b}.work-section{background:var(--cream)}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #d2d9c9;border-radius:30px;padding:7px 14px;background:transparent;font-size:11px;color:var(--green)}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:38px 28px}.project{grid-column:span 2;text-align:left;background:none;border:0;padding:0;color:var(--ink);min-width:0}.project-wide{grid-column:span 3}.project[hidden]{display:none}.project-img{position:relative;overflow:hidden;border-radius:3px;background:#e7e9e0}.project img{width:100%;height:335px;object-fit:contain;transition:transform .5s}.project:hover img{transform:scale(1.035)}.view{position:absolute;bottom:15px;right:15px;background:white;padding:8px 13px;font-size:11px;border-radius:2px;box-shadow:0 2px 12px #0001}.project-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:17px}.project-meta h3{font-size:18px;letter-spacing:-.5px;margin:0}.project-meta>span{font-size:8px;letter-spacing:.9px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-art{position:relative;padding-bottom:35px}.about-art>img{height:470px;width:100%;object-fit:contain;background:var(--cream);border-radius:3px}.about-tag{position:absolute;bottom:0;right:-25px;background:#e9f3dc;padding:24px 36px;font-family:Manrope,sans-serif;font-size:22px;line-height:1.5;letter-spacing:-.6px}.about-tag em{color:var(--green)}.about-copy h2{font-size:48px;margin-bottom:25px}.about-copy p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.85}.about-copy p.lead{color:#343f35;font-size:19px}.about-copy .text-link{display:inline-block;margin-top:15px}.process{background:var(--green);color:white}.process .eyebrow{color:#b8d598}.process .section-head>p{color:#c1ccbf}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid #6c7d683b;padding-top:35px}.steps article>span{color:#b3d28c;font-size:14px}.steps h3{font-size:23px;margin:23px 0 15px;letter-spacing:-.7px}.steps p{font-size:14px;color:#c7d1c4;max-width:320px;line-height:1.8;margin:0}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.reviews figure{margin:0;padding:27px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column}.quote-mark{font-family:Georgia,serif;font-size:58px;line-height:1;color:#8ac53b}.reviews blockquote{margin:0 0 30px;font-size:17px;line-height:1.8;color:#435042}.reviews figcaption{display:flex;flex-direction:column;margin-top:auto;font-size:12px}.reviews figcaption strong{font-weight:650}.reviews figcaption span{font-size:11px;color:var(--muted);margin-top:3px}.contact{background:#eef5e4}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.contact h2{font-size:70px;letter-spacing:-3px;margin:0 0 20px}.contact .lead{margin-bottom:30px}.contact-links{display:flex;flex-direction:column;gap:22px}.contact-links a{display:block;font-size:19px;position:relative;width:fit-content;max-width:100%;overflow-wrap:anywhere}.contact-links small{display:block;font-size:9px;font-weight:650;letter-spacing:1.3px;color:#6f7b65;margin-bottom:4px}.contact-links span{margin-left:15px;color:#7b9365}.area{font-size:12px;color:var(--muted);margin:30px 0 0}form{background:white;padding:35px;border-radius:4px;box-shadow:0 12px 40px #26382006}form h3{font-size:23px;letter-spacing:-.7px;margin-bottom:5px}form>p{font-size:12px;color:var(--muted);margin-bottom:26px}label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;margin-bottom:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{border:1px solid #dfe3d9;padding:12px;width:100%;border-radius:2px;background:white;font-size:13px;color:var(--ink);font-weight:400;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#8b9187}form>.button{width:100%}form .form-note{font-size:10px;line-height:1.7;margin:15px 0 0;color:#798172}.form-note button{font-size:inherit;background:none;border:0;text-decoration:underline;padding:0;color:var(--green)}.form-status{margin:8px 0 0;font-size:11px;color:var(--green)}footer{background:#fff}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:33px 0}.footer-main p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.footer-main>a:last-child{font-size:13px;font-weight:600}.footer-bottom{border-top:1px solid var(--line);padding:20px 0;display:flex;gap:25px;justify-content:space-between;font-size:10px;color:var(--muted)}.footer-bottom button{border:0;background:none;padding:0;color:inherit;font-size:inherit}.skip{position:fixed;top:-100px;left:20px;background:white;padding:15px;z-index:99}.skip:focus{top:15px}dialog{border:0;border-radius:5px;padding:48px 28px 25px;max-width:1000px;width:calc(100% - 40px);background:#f7f7f0;color:var(--ink)}dialog::backdrop{background:#102018dc;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:16px;top:7px;border:0;background:none;color:var(--green);font-size:30px}#lightbox img{max-height:72vh;object-fit:contain;margin:auto}#lightbox p{font-size:14px;margin:15px 0 0;text-align:center}#privacy{max-width:640px;padding:50px 35px 25px}#privacy h2{font-size:32px}#privacy p{font-size:14px;color:var(--muted)}#privacy a{text-decoration:underline}
@media(min-width:1500px){.hero-grid{min-height:730px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}nav{gap:20px;font-size:12px}.hero-grid{gap:25px;min-height:610px}.hero-visual{min-height:500px}h1{font-size:65px}.hero-copy .lead{font-size:15px}.hero .actions{gap:18px}.hero .button{font-size:12px;padding:15px 17px}.hero .text-link{font-size:12px}.hero-note{font-size:10px;gap:8px}.hero-note span{margin-left:4px}.section{padding:80px 0}.about,.contact-grid{gap:55px}.service{padding-right:20px;padding-left:20px}.service h3{font-size:21px}.project-meta{flex-direction:column;align-items:start}.project img{height:290px}.section-head h2,.about-copy h2{font-size:40px}.section-head{gap:40px}.section-head>p,.section-head>div:nth-child(2){max-width:320px}.contact h2{font-size:60px}form{padding:28px}.contact-links a{font-size:16px}}
@media(max-width:760px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}.topbar{font-size:10px;padding:8px 0}.topbar .wrap>span{max-width:170px}.topbar a{align-self:center}.nav{height:81px}.brand img{width:135px;height:77px}.menu-toggle{display:flex;gap:12px;align-items:center;background:none;border:1px solid var(--line);padding:8px 12px;font-size:12px;color:var(--green)}nav{display:none;position:absolute;top:81px;left:0;right:0;padding:20px;background:white;box-shadow:0 20px 25px #0001;align-items:stretch;gap:0}nav.open{display:flex;flex-direction:column}nav>a{padding:13px 8px;font-size:14px}nav .button{margin-top:10px}.hero-grid{grid-template-columns:1fr;padding:38px 0 35px;gap:32px;min-height:0}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:19px}h1{font-size:60px;line-height:1.06;letter-spacing:-3px}h1 br:nth-child(2){display:none}.hero-copy .lead{font-size:15px;max-width:470px}.hero .actions{margin-top:23px;gap:22px}.hero .button{font-size:12px}.hero-note{margin-top:22px}.hero-visual{min-height:0;height:365px;padding:0 0 23px 10px;margin-left:0}.hero-visual>img{object-position:50% center}.photo-caption{left:0;padding:18px 24px;width:250px}.photo-caption p{font-size:21px;margin-top:7px}.photo-caption>span{font-size:8px}.photo-label{top:12px;font-size:8px}.service-strip{padding:18px 0}.service-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:8px;letter-spacing:1px;text-align:center}.separator{display:none}.section{padding:60px 0}.section-head{flex-direction:column;align-items:start;gap:20px;margin-bottom:30px}.section-head h2,.about-copy h2{font-size:36px;letter-spacing:-1.7px}.section-head>p,.section-head>div:nth-child(2){max-width:100%;font-size:14px}.services-grid{grid-template-columns:1fr 1fr}.service{padding:24px 18px 24px 0;border-bottom:1px solid var(--line)}.service:nth-child(2){padding:24px 0 24px 20px;border-right:0}.service:nth-child(3){padding:24px 18px 0 0;border-bottom:0}.service:nth-child(4){padding:24px 0 0 20px}.service h3{font-size:21px;margin:17px 0 12px}.service p{font-size:12px;margin-bottom:20px}.service a{font-size:10px}.gallery{grid-template-columns:1fr;gap:28px}.project,.project-wide{grid-column:auto}.project img{height:300px}.project-meta{flex-direction:row;align-items:center}.project-meta h3{font-size:16px}.project-meta>span{font-size:7px}.about{grid-template-columns:1fr;gap:40px}.about-art>img{height:330px}.about-art{margin-right:20px}.about-tag{font-size:20px;padding:17px 25px;right:-20px}.about-copy p.lead{font-size:18px}.about-copy p:not(.eyebrow){font-size:14px}.steps{grid-template-columns:1fr;gap:28px}.steps article{display:grid;grid-template-columns:35px 1fr;column-gap:15px}.steps h3{margin:0 0 10px;font-size:21px}.steps p{grid-column:2;max-width:none;font-size:13px}.reviews{grid-template-columns:1fr;gap:28px}.reviews figure{padding-top:20px}.quote-mark{font-size:48px}.reviews blockquote{font-size:16px;margin-bottom:20px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:56px}.contact .lead{font-size:16px}.contact-links a{font-size:17px}.area{font-size:11px}form{padding:25px}.form-row{gap:12px}.footer-main{flex-wrap:wrap;padding:25px 0;gap:20px}.footer-main p{font-size:12px}.footer-main>a:last-child{width:100%;font-size:12px}.footer-bottom{font-size:9px;gap:12px;flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}#lightbox{padding:43px 12px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.hero h1{font-size:clamp(48px,4.7vw,68px);letter-spacing:-3px}.commercial-gallery{grid-template-columns:repeat(3,1fr)}.commercial-gallery .project{grid-column:auto}.commercial-gallery .project-meta{flex-direction:column;align-items:flex-start}#approach .reviews h3{font-size:22px;letter-spacing:-.5px}#approach .reviews p{font-size:14px;color:var(--muted)}@media(max-width:760px){.hero h1{font-size:49px;letter-spacing:-2.5px}.commercial-gallery{grid-template-columns:1fr}.commercial-gallery .project-meta{flex-direction:row;align-items:center}}

.commercial-gallery{grid-template-columns:repeat(2,1fr)}.hero-visual>img{object-fit:cover;object-position:34% center}.about-art>img{object-fit:contain}@media(max-width:760px){.commercial-gallery{grid-template-columns:1fr}.hero-visual>img{object-position:35% center}}

/* Logo green: sampled from the original Capital Decorators logo. */
.topbar,.button,.photo-caption,.process,.filters button.active{background:var(--brand);color:#203014}.button{border-color:var(--brand)}.button:hover{background:#9bd54a;border-color:#9bd54a}.topbar{color:#203014}.photo-caption>span,.photo-caption a,.process .eyebrow,.process .section-head>p,.steps article>span,.steps p{color:#2e4519}.steps{border-top-color:#54772b66}.hero-note span,.dot{color:#527b20}.dot{background:var(--brand)}.separator{color:var(--brand)}.filters button.active{border-color:var(--brand)}.hero h1{font-size:clamp(48px,4.7vw,68px);line-height:1.12}.about-tag{background:#e2f0cf}.photo-caption{box-shadow:0 15px 30px #42602115}::selection{background:#c8e5a3;color:#203014}@media(max-width:760px){.hero h1{font-size:46px;letter-spacing:-2px}}

.whatsapp-widget{position:fixed;right:24px;bottom:24px;z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.whatsapp-prompt{position:relative;width:310px;max-width:calc(100vw - 40px);padding:23px;background:#fff;border:1px solid #dce5d3;border-top:4px solid #8ac53b;border-radius:10px;box-shadow:0 8px 35px #13230d26}.whatsapp-prompt[hidden]{display:none}.whatsapp-title{font-weight:700;font-size:15px;margin:0 20px 10px 0}.whatsapp-prompt>p:not(.whatsapp-title){font-size:13px;line-height:1.65;color:#5d665e;margin-bottom:18px}.whatsapp-dismiss{position:absolute;top:10px;right:12px;border:0;background:none;font-size:24px;line-height:1;color:#65735c;padding:4px}.whatsapp-start{display:flex;align-items:center;justify-content:space-between;background:#8ac53b;border-radius:4px;padding:12px 15px;font-size:13px;font-weight:650;color:#203014}.whatsapp-start:hover{background:#9bd54a}.whatsapp-toggle{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;border:0;background:#25d366;color:#102e19;box-shadow:0 4px 18px #18352233}.whatsapp-toggle:hover{background:#4bdf82}.whatsapp-toggle:focus-visible{outline-offset:4px}@media(max-width:760px){.whatsapp-widget{right:16px;bottom:16px}.whatsapp-prompt{width:285px;padding:20px}.whatsapp-toggle{width:54px;height:54px}}

.customer-banner{padding:30px 0 34px;background:#f0f6e8;border-bottom:1px solid #e1e9d7;overflow:hidden}.customer-banner-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.customer-banner h2{font-family:var(--font);font-size:11px;line-height:1.5;letter-spacing:1.6px;text-transform:uppercase;font-weight:650;color:#4b642f;margin:0}.customer-banner-head button{border:0;background:none;color:#4b642f;padding:5px;font-size:11px;display:flex;gap:9px;align-items:center}.customer-window{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.customer-track{display:flex;width:max-content;animation:customer-scroll 65s linear infinite}.customer-list{display:flex;list-style:none;gap:0;padding:0;margin:0;align-items:center;flex:none}.customer-list li{width:235px;flex:none;text-align:center;font-family:Manrope,sans-serif;font-size:19px;letter-spacing:-.45px;font-weight:650;line-height:1.4;color:#2e3c25;padding:12px 28px;border-right:1px solid #d2dfc4}.customer-banner.paused .customer-track,.customer-banner:hover .customer-track,.customer-banner:focus-within .customer-track{animation-play-state:paused}@keyframes customer-scroll{to{transform:translateX(-50%)}}.service h3{margin-top:8px}.steps article h3{margin-top:0}@media(max-width:760px){.customer-banner{padding:23px 0}.customer-banner h2{font-size:9px;letter-spacing:1px}.customer-list li{width:195px;font-size:17px;padding:10px 22px}.steps article{display:block}.steps article p{margin-top:10px}.customer-banner-head button{font-size:10px}.service h3{margin-top:2px}}@media(prefers-reduced-motion:reduce){.customer-track{animation:none}.customer-window{overflow-x:auto;mask-image:none}.customer-list[aria-hidden="true"]{display:none}.customer-banner-head button{display:none}}

.commercial-reviews figure{padding:28px;border:1px solid #dfe7d6;border-radius:5px;background:#f8faf4}.commercial-reviews h3{font-size:21px;letter-spacing:-.6px;line-height:1.3;margin:4px 0 22px}.commercial-reviews blockquote{font-size:15px}.commercial-reviews .quote-mark{color:#8ac53b}.commercial-reviews figcaption{border-top:1px solid #e0e7d8;padding-top:20px}.commercial-reviews{gap:24px}.work-section .project-img{background:#e9eee1}.gallery-note{font-size:12px;color:#687067;margin:25px 0 0}@media(max-width:760px){.commercial-reviews figure{padding:23px}.commercial-reviews h3{font-size:20px}.commercial-reviews blockquote{font-size:15px}}

.commercial-gallery{grid-template-columns:repeat(3,1fr)}@media(max-width:1000px) and (min-width:761px){.commercial-gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.commercial-gallery{grid-template-columns:1fr}}
