:root{font-family:Arial,Helvetica,sans-serif;color:#25211b;background:#f8f5ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}header{max-width:1240px;margin:auto;padding:28px 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5dfd3}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:1.8px;margin-top:6px}.ace{font-family:Georgia;font-size:26px;border:1px solid #25211b;border-radius:6px;padding:9px 8px}nav{display:flex;align-items:center;gap:28px;font-size:13px}.call{display:flex;align-items:center;gap:8px;border:1px solid #d1ba88;border-radius:25px;padding:12px 17px}main{max-width:1240px;margin:auto}.hero{padding:80px 55px 70px;display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#766c5a;margin:0 0 22px}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5.7vw,76px);line-height:1.08;letter-spacing:-3px;margin:0 0 25px}em{font-family:Georgia,serif;font-weight:400;color:#a47a25}.intro{max-width:410px;font-size:16px;line-height:1.8;color:#6e665a}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;border:0;background:#25211b;color:white;padding:17px 23px;border-radius:6px;font-size:14px;cursor:pointer;font-weight:600;margin-top:15px}.button:disabled{opacity:.6}.subtle{font-size:11px;color:#7c7363;line-height:1.6}.illustration{position:relative;background:#e6eadc;border-radius:160px 160px 18px 18px;height:360px;display:flex;align-items:center;justify-content:center}.house{position:relative;width:210px;height:185px;background:#f4f1e6;border:2px solid #80916c;margin-top:55px;box-shadow:13px 13px #cbd5bb}.roof{position:absolute;width:151px;height:151px;border-left:3px solid #64775a;border-top:3px solid #64775a;transform:rotate(45deg);left:27px;top:-78px;background:#e6eadc}.window{position:absolute;top:35px;left:26px;border:2px solid #718364;width:55px;height:58px;background:#d6dfc7;color:#718364;font-size:58px;text-align:center;line-height:48px}.door{position:absolute;bottom:0;right:28px;width:56px;height:120px;background:#839570;border:2px solid #63775a}.plant{position:absolute;bottom:-8px;left:-35px;font-size:95px;color:#768d5c}.tag{position:absolute;right:-10px;bottom:40px;background:#fffdf7;box-shadow:0 8px 25px #24392f12;display:flex;align-items:center;gap:12px;padding:18px;border-radius:8px;font-size:12px;line-height:1.7;transform:rotate(-4deg)}.sketch-label{position:absolute;bottom:17px;left:25px;font-size:8px;letter-spacing:1.5px}.services{border-top:0;padding:50px 55px 65px}.section-heading{display:flex;justify-content:space-between;align-items:start;gap:40px}.section-heading h2{font-size:26px;font-family:Georgia;font-weight:400;max-width:420px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:38px}.service-grid article{border-top:1px solid #ddceb2;padding-top:19px}.service-grid article>span{font-size:11px;color:#9b7a39}.service-grid h3{font-size:15px;margin:22px 0 12px}.service-grid p{font-size:13px;line-height:1.8;color:#766c5a}.quote{padding:65px 55px;background:#94a880;border-radius:12px;display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;margin:0 25px 65px}.quote h2{font-family:Georgia;font-weight:400;font-size:43px;line-height:1.2;letter-spacing:-1px;margin:0 0 26px}.quote aside>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#6e665a}.tip{display:flex;gap:15px;margin:35px 0;font-size:12px;line-height:1.7}.tip svg{flex-shrink:0}.tip p{color:#766c5a;margin:7px 0}.quote aside>a{font-size:12px;text-decoration:underline}.form-card{background:#f8f5ed;border:1px solid #e5dfd3;border-radius:10px;padding:30px}form h3{font-family:Georgia;font-size:26px;font-weight:400;margin:0}label{display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:8px;margin:17px 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,select,textarea{font:inherit;font-size:14px;color:#25211b;background:white;border:1px solid #dcd4c5;border-radius:5px;padding:12px;width:100%}input:focus,textarea:focus,select:focus{outline:2px solid #b18b3b;outline-offset:2px}.upload{background:#faf7ef;border:1px dashed #c7ad76;padding:22px;text-align:center;align-items:center;border-radius:6px}.upload span{font-weight:400;font-size:10px;color:#766c5a}.upload input{font-size:11px;background:transparent;padding:8px}.consent{flex-direction:row;align-items:start;font-size:10px;line-height:1.6;font-weight:400}.consent input{width:15px;margin-top:2px}.file-list div{font-size:11px;display:flex;justify-content:space-between;padding:6px}.file-list button{border:0;background:none;cursor:pointer;font-size:18px}.success{padding:35px 0;line-height:1.7}.success button{padding:12px;cursor:pointer}footer{max-width:1240px;margin:auto;padding:25px 55px 40px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#766c5a}footer .brand{font-size:12px}.dash{max-width:1100px;margin:40px auto;padding:25px}.record{padding:25px;background:white;border:1px solid #dcd4c5;border-radius:10px;margin:20px 0}.photos{display:flex;flex-wrap:wrap;gap:12px}.photos img{width:150px;height:120px;object-fit:cover;border-radius:5px}.record textarea{margin-top:10px}.record button{margin:10px 0}.dash h1{font-size:40px}.dash select{max-width:200px}@media(max-width:760px){header{padding:20px}.brand{font-size:13px}nav>a:not(.call){display:none}nav{gap:0}.call{font-size:11px;padding:10px}.hero{padding:45px 25px;grid-template-columns:1fr;gap:30px}h1{letter-spacing:-2px}.illustration{height:290px;margin:10px 20px}.house{transform:scale(.8)}.services{padding:35px 25px}.section-heading{display:block}.service-grid{grid-template-columns:1fr 1fr;gap:20px}.quote{grid-template-columns:1fr;padding:30px 20px;margin:0 12px 30px;gap:30px}.quote h2{font-size:37px}.form-card{padding:20px}.two{grid-template-columns:1fr;gap:0}.two label{margin:10px 0}footer{padding:20px;flex-wrap:wrap}.dash{margin:10px}.tag{right:-10px}}

.original-brand{gap:8px;background:#050403;padding:9px 12px;border-radius:7px}.original-card{position:relative;display:block;width:44px;height:62px;overflow:hidden}.original-card img{position:absolute;width:182px;max-width:none;height:auto;left:-21px;top:-27px}.original-wordmark{position:relative;display:block;width:215px;height:45px;overflow:hidden}.original-wordmark img{position:absolute;width:405px;max-width:none;height:auto;left:-148px;top:-83px}@media(max-width:760px){.original-brand{padding:7px;gap:6px}.original-card{width:33px;height:46px}.original-card img{width:136px;left:-16px;top:-20px}.original-wordmark{width:130px;height:28px}.original-wordmark img{width:246px;left:-90px;top:-50px}header{gap:8px;padding:14px}.call{padding:8px;font-size:10px;gap:4px}}

/* White background with black and gold accents. */
header{background:#f8f5ed}.button{background:linear-gradient(135deg,#e6c77d,#c99f47);color:#241c0c}.button:hover{filter:brightness(1.05)}.call{color:#3a2b14}.service-grid h3,form h3{color:#332819}.quote{border:1px solid #e6dac1}.form-card{box-shadow:0 8px 24px #30240f07}input,select,textarea{background:#fff;color:#25211b;color-scheme:light}input::placeholder,textarea::placeholder{color:#8a8172}input[type=checkbox]{accent-color:#a47a25}.file-list button{color:#554321}.success button{background:#dfb957;color:#19140b;border:0;border-radius:5px}.upload input::file-selector-button{background:#ead29a;color:#32270f;border:0;border-radius:4px;padding:8px 12px;margin-right:8px;cursor:pointer}.record{background:#fff}.tag{color:#f1dfb7;border:1px solid #806638}.tip svg,.success svg{color:#a47a25}a:focus-visible,button:focus-visible{outline:2px solid #b18b3b;outline-offset:4px}.original-brand{background:#050403}
.photo-hero{height:430px;border-radius:14px;isolation:isolate;background:#211c13;box-shadow:0 18px 50px #0005}.photo-hero>img{width:100%;height:100%;object-fit:cover;border-radius:13px}.photo-hero .tag{right:-12px;bottom:25px;transform:rotate(-3deg);background:#15120eef;backdrop-filter:blur(8px)}@media(max-width:760px){.photo-hero{height:340px;margin:5px 0 10px}.photo-hero .tag{right:10px;bottom:20px}}

.quote aside>p:not(.eyebrow),.quote aside .eyebrow,.quote .tip p{color:#293523}.quote aside em{color:#493916}.quote .tip svg{color:#493916}

/* Larger, darker type for navigation and supporting copy. */
nav>a:not(.call){font-size:18px;font-weight:750;color:#000}nav>a:not(.call):hover{color:#000;text-decoration:underline;text-underline-offset:5px}.intro{font-size:18px;font-weight:500;color:#111}.eyebrow{font-size:12px;font-weight:750;color:#111}.service-grid h3{font-size:17px;font-weight:750;color:#000}.service-grid p{font-size:15px;font-weight:500;color:#111}.subtle{font-size:12px;font-weight:500;color:#333}.quote aside>p:not(.eyebrow){font-size:16px;font-weight:500;color:#111}.quote aside .eyebrow{color:#111}.tip{font-size:14px;color:#111}.tip p,.quote .tip p{font-size:14px;font-weight:500;color:#111}.quote aside>a{font-size:14px;font-weight:650;color:#000}label{font-size:13px;font-weight:650;color:#111}input,select,textarea{font-size:15px}.upload span{font-size:12px;color:#333;font-weight:500}.consent{font-size:12px;font-weight:500;color:#222}.file-list div{font-size:13px;color:#111}.button{font-size:15px;font-weight:750}.section-heading h2,form h3{color:#111}footer{font-size:12px;font-weight:500;color:#333}.sketch-label{font-size:10px}
@media(max-width:760px){header{flex-wrap:wrap;justify-content:center;gap:16px}nav{width:100%;justify-content:center;gap:20px;flex-wrap:wrap}nav>a:not(.call){display:block;font-size:16px;font-weight:750;color:#000}.call{font-size:12px}.intro{font-size:17px}.service-grid p{font-size:14px}}

.call{background:#94a880;border-color:#7c9169;color:#000;font-size:15px;font-weight:800}.call:hover{background:#879d72;color:#000}.call svg{stroke-width:2.5}@media(max-width:760px){.call{font-size:14px;font-weight:800;padding:10px 14px}}

.services .service-grid{margin-top:0}

/* Match the existing green accents and bring services nearer the photo. */
.photo-hero .tag{background:#94a880;border-color:#7c9169;color:#111;backdrop-filter:none}
.original-brand{background:#94a880}
.original-brand img{mix-blend-mode:screen}
footer .brand{color:#536a43}
.hero{padding-bottom:30px}
.services{padding-top:20px}
@media(max-width:760px){.hero{padding-bottom:20px}.services{padding-top:10px}}

/* Keep the playing card monochrome and ACE black on the green logo. */
.original-card img{mix-blend-mode:normal;filter:grayscale(1)}
.original-ace{position:absolute;left:0;top:0;width:77px;height:40px;overflow:hidden;mix-blend-mode:multiply}
.original-ace img{filter:grayscale(1) invert(1);mix-blend-mode:normal}
@media(max-width:760px){.original-ace{width:47px;height:25px}}

/* Apply the quote button gold through the original TRADES lettering. */
.original-trades{position:absolute;left:96px;top:4px;width:119px;height:37px;background:linear-gradient(135deg,#e6c77d,#c99f47);mix-blend-mode:multiply;mask-image:url('/ace-original.png');mask-mode:luminance;mask-size:405px auto;mask-position:-244px -87px;mask-repeat:no-repeat}
@media(max-width:760px){.original-trades{left:58px;top:3px;width:72px;height:23px;mask-size:246px auto;mask-position:-148px -53px}}

.hero-quote-action{display:inline-flex;flex-direction:column;align-items:stretch}.hero-quote-action .subtle{text-align:center}

.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.camera{width:25px;height:25px}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.form-message{color:#8b1e1e;font-size:13px;font-weight:650;min-height:1.2em}.check{color:#a47a25;font-size:42px;line-height:1}.success[hidden],form[hidden]{display:none!important}

/* Cleaning service and completed-project gallery. */
.service-grid{grid-template-columns:repeat(5,1fr);gap:24px}
.projects{background:#fff;padding:68px 55px 74px;border-top:1px solid #e5dfd3}
.projects-heading{align-items:end;margin-bottom:34px}
.projects-heading h2{font-size:40px;line-height:1.15;max-width:560px}
.projects-heading>p{max-width:470px;font-size:15px;line-height:1.75;color:#5f584d;margin:0}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.project-grid figure{margin:0;background:#f8f5ed;border:1px solid #e5dfd3;border-radius:11px;overflow:hidden}
.project-grid img{display:block;width:100%;height:330px;object-fit:cover}
.project-grid figcaption{display:flex;flex-direction:column;gap:8px;padding:19px 21px 22px}
.project-grid figcaption b{font-size:17px;color:#111}
.project-grid figcaption span{font-size:14px;line-height:1.55;color:#5f584d}
.quote{margin-top:65px}
@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid img{height:270px}}
@media(max-width:760px){.projects{padding:48px 20px 54px}.projects-heading h2{font-size:34px}.projects-heading>p{margin-top:18px}.project-grid{grid-template-columns:1fr;gap:18px}.project-grid img{height:260px}.quote{margin-top:30px}}

/* Keep the same entrance visible in both comparison photos. */
.door-comparison{grid-column:1/-1}
.comparison-photos{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#e5dfd3}
.comparison-photos>div{position:relative;background:#eee9df}
.project-grid .comparison-photos img{height:auto;aspect-ratio:4/3;object-fit:contain}
.photo-label{position:absolute;top:14px;left:14px;z-index:1;padding:7px 12px;border-radius:5px;background:#173c2d;color:#fff;font-size:14px;font-weight:700}
@media(max-width:600px){.comparison-photos{grid-template-columns:1fr}.photo-label{top:10px;left:10px}}
