@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202421;--dark:#171d1b;--gold:#d6b271;--paper:#f8f8f5;--muted:#676c67}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}header{height:106px;background:var(--dark);display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:#fff;gap:30px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:80px;height:70px;object-fit:contain}.brand>span{font:700 21px 'Manrope',sans-serif;letter-spacing:3px}.brand small{display:block;font-size:10px;letter-spacing:4px;margin-top:4px}nav{display:flex;gap:34px;font-size:14px}nav a:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--gold);color:#1e241f;padding:17px 25px;font-weight:600;font-size:15px;transition:background .2s}.button:hover{background:#edce95}.button span{font-size:22px;line-height:1}.button.small{font-size:13px;padding:14px 19px;gap:22px}.menu{display:none}.hero{min-height:680px;height:calc(100svh - 155px);max-height:850px;position:relative;background:var(--dark);color:white;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,21,17,.9) 0%,rgba(12,23,18,.68) 38%,rgba(12,23,18,.12) 78%),url('assets/kitchen.jpg') center 55%/cover}.hero-content{z-index:1;padding:60px 7%;width:100%}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;margin:0 0 25px;color:#877045}.hero .eyebrow{color:#e5c588;display:flex;align-items:center;gap:14px}.hero .eyebrow:before{content:'';height:1px;width:30px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-family:'Manrope',sans-serif;font-size:clamp(48px,5.7vw,86px);line-height:1.1;font-weight:500;letter-spacing:-4px;margin-bottom:28px}em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.intro{font-size:18px;line-height:1.8;color:#e1e4df;margin-bottom:35px}.hero-foot{display:flex;gap:32px;font-size:10px;letter-spacing:2px;margin-top:65px;color:#d7ddd5}.photo-note{position:absolute;right:35px;bottom:28px;font-size:9px;letter-spacing:2px;color:white;z-index:1}.scroll{position:absolute;right:6%;top:50%;border:1px solid #ffffff80;border-radius:50%;width:46px;height:46px;text-align:center;line-height:44px}.service-strip{display:flex;align-items:center;justify-content:space-around;padding:23px 5%;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid #dfe1da;background:#fff}.service-strip i{color:#b18a45;font-style:normal}.section{padding:105px 7%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:56px}h2{font-family:'Manrope',sans-serif;font-size:clamp(36px,3.6vw,53px);line-height:1.17;letter-spacing:-2px;font-weight:500;margin-bottom:0}.section-heading>p{max-width:370px;color:var(--muted);font-size:15px;margin-bottom:5px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d9dcd4}.services article{padding:32px 35px 32px 0;border-bottom:1px solid #d9dcd4}.services article:not(:nth-child(3n+1)){padding-left:35px;border-left:1px solid #d9dcd4}.number{font-size:12px;color:#91723e;letter-spacing:1px}h3{font-family:'Manrope',sans-serif;font-weight:600;font-size:21px;margin:16px 0 13px}.services p{font-size:15px;color:var(--muted);margin-bottom:0}.inspiration{background:#eaede7}.gallery{display:grid;grid-template-columns:1.25fr 1fr;gap:28px}figure{margin:0}figure img{width:100%;height:430px;object-fit:cover;display:block}figcaption{display:flex;flex-direction:column;padding-top:20px;font-size:19px}figcaption small{font-size:10px;letter-spacing:1.7px;color:var(--muted);margin-top:7px}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.logo-panel{background:var(--dark);padding:55px 35px 30px;text-align:center}.logo-panel img{width:100%;max-width:370px}.logo-panel p{color:var(--gold);font-size:10px;letter-spacing:3px;margin:30px 0 0}.about h2{margin-bottom:28px}.about>div>p:not(.eyebrow){color:var(--muted);font-size:15px}.text-link{display:inline-flex;gap:55px;border-bottom:1px solid #bda578;padding:10px 0;font-size:14px;font-weight:600}.contact{background:var(--dark);text-align:center;color:white}.contact .eyebrow{color:var(--gold)}.contact h2{font-size:clamp(48px,5vw,76px)}.contact>p:not(.eyebrow){color:#bfc7bd;margin:30px 0}.contact-details{border-top:1px solid #444b42;max-width:470px;padding-top:30px;margin:35px auto 0}.contact-details strong,.contact-details span{display:block}.contact-details span{font-size:14px;color:#bfc7bd}.contact-details p{font-size:14px;color:var(--gold);margin:15px 0 0}footer{padding:45px 7% 24px;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:20px;font-size:12px}.footer-brand{font-weight:800;font-size:18px;letter-spacing:2px}.footer-brand span{display:block;font-size:9px;letter-spacing:3px}.fineprint{width:100%;border-top:1px solid #ddd;padding-top:20px;margin-top:15px;font-size:12px;color:var(--muted);display:flex;gap:6px}.fineprint>span:last-child{margin-left:auto}a:focus-visible,button:focus-visible{outline:3px solid #bf924c;outline-offset:5px}@media(min-width:1600px){.section{padding-left:max(7%,calc((100% - 1370px)/2));padding-right:max(7%,calc((100% - 1370px)/2))}}@media(max-width:900px){header{height:90px}nav{gap:18px}header>.button{display:none}.hero{height:720px;min-height:600px}.section{padding:75px 6%}.section-heading{gap:30px}.about{gap:40px}.services{grid-template-columns:repeat(2,1fr)}.services article:not(:nth-child(3n+1)){padding-left:0;border-left:0}.services article:nth-child(even){padding-left:25px;border-left:1px solid #d9dcd4}figure img{height:340px}.hero-photo{background-position:60% center}}@media(max-width:600px){header{padding:0 6%;height:84px}.brand img{width:58px;height:55px}.brand>span{font-size:17px}.brand small{font-size:8px}.menu{display:block;background:none;border:0;color:white;font-size:24px;padding:10px}nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--dark);padding:22px 7%;z-index:5;flex-direction:column}nav.open{display:flex}.hero{min-height:620px;height:calc(100svh - 84px);max-height:800px}.hero-content{padding:48px 7%}h1{font-size:49px;letter-spacing:-2.4px}.hero-photo{background-image:linear-gradient(90deg,rgba(10,21,17,.86),rgba(10,21,17,.45)),url('assets/kitchen.jpg')}.intro{font-size:16px}.hero-foot{font-size:9px;gap:20px;margin-top:55px}.scroll{display:none}.photo-note{right:7%;font-size:8px;bottom:17px}.service-strip{display:grid;grid-template-columns:1fr 1fr;gap:14px;text-align:center;font-size:10px}.service-strip i{display:none}.section{padding:62px 7%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.eyebrow{font-size:10px;margin-bottom:20px}.services{grid-template-columns:1fr}.services article,.services article:nth-child(even){border-left:0;padding:25px 0}.gallery,.about{grid-template-columns:1fr;gap:38px}figure img{height:340px}.about{gap:42px}.logo-panel{padding:35px}.logo-panel img{max-width:280px}.contact>p:not(.eyebrow){font-size:15px}.fineprint{display:block}.fineprint>span:last-child{display:block;margin-top:8px}footer>span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Bay Area demo refinement */
:root{--muted:#5c645e}.topbar{background:#0e1512;color:#cbd3ca;font-size:12px;display:flex;justify-content:space-between;gap:16px;padding:8px 5%;letter-spacing:.4px}.topbar>span:first-child{font-size:11px;letter-spacing:1.7px}header{height:98px}nav{gap:25px}header .button.small{font-size:14px}.hero{height:690px;min-height:650px}.hero h1{font-size:clamp(46px,5.2vw,78px);letter-spacing:-3px}.hero h1 em{font-size:1.02em}.hero-actions{display:flex;gap:30px;align-items:center}.ghost-link{font-size:14px;border-bottom:1px solid #b3bcb0;padding:10px 0}.hero-foot{font-size:12px;letter-spacing:1.5px}.photo-note{font-size:12px;letter-spacing:1px}.trust-strip{display:grid;grid-template-columns:1fr 1fr 1.3fr;padding:30px 7%;background:#fff;border-bottom:1px solid #e1e3dc}.trust-strip>div{display:flex;flex-direction:column;justify-content:center;padding:0 35px;border-left:1px solid #e1e3dc}.trust-strip>div:first-child{padding-left:0;border:0}.trust-strip strong{font:500 28px 'Manrope',sans-serif;letter-spacing:-1px}.trust-strip span{font-size:14px;color:var(--muted);margin-top:5px}.eyebrow{font-size:12px;letter-spacing:2px}.section-heading>div:last-child:not(:first-child){max-width:360px;color:var(--muted);font-size:16px}.services p,.about>div>p:not(.eyebrow){font-size:16px}.service-quote{display:inline-block;margin-top:18px;font-size:14px;font-weight:600;border-bottom:1px solid #c7b48e}.services article{transition:background .2s}.services article:hover{background:#eef0e9}.number{font-size:14px}figcaption small{font-size:12px;letter-spacing:1.4px}.logo-panel p{font-size:12px!important}.process{background:#e8ede7}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.process-grid article{border-top:1px solid #aeb8aa;padding-top:24px}.process-grid article>span{font:400 36px Georgia,serif;color:#7a6237}.process-grid p{color:var(--muted);font-size:16px}.area-feature{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center}.area-feature h2{margin-bottom:26px}.area-feature p:not(.eyebrow){color:var(--muted)}.area-feature .area-caption{font-size:14px}.area-feature img{height:400px;object-position:center 65%}.area-feature figcaption{font-size:12px;color:var(--muted);padding-top:10px}.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:60px}.region-grid h3{font-size:17px;line-height:1.5;min-height:50px}.region-grid p{font-size:14px;line-height:2;color:var(--muted)}.city-directory{border-block:1px solid #c9d0c4;margin-top:30px}.city-directory summary{display:flex;justify-content:space-between;align-items:center;padding:22px 0;font-size:16px;font-weight:600;cursor:pointer;list-style:none}.city-directory summary::-webkit-details-marker{display:none}.city-directory summary>span{font-size:25px;color:#8a6b39}.city-directory[open] summary>span{transform:rotate(45deg)}.directory-inner{padding-bottom:28px}.directory-inner>p{font-size:14px;max-width:800px;color:var(--muted)}.directory-inner label{display:block;font-size:14px;font-weight:600}.directory-inner input{max-width:480px}.city-list{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:20px 0;padding:0;gap:6px 20px;font-size:14px}.source-note a{text-decoration:underline}.quote-section{background:var(--dark);color:white;display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start;scroll-margin-top:0}.quote-intro{padding-top:15px}.quote-intro>.eyebrow{color:var(--gold)}.quote-intro h2{font-size:clamp(45px,4.5vw,66px)}.quote-intro>p:not(.eyebrow){color:#cbd4c8;margin:28px 0;max-width:390px}.quote-contact{padding:26px 0;border-block:1px solid #414a42}.quote-contact strong,.quote-contact span{display:block}.quote-contact strong{font-size:22px}.quote-contact span{color:#cbd4c8;font-size:14px}.quote-contact p{font-size:21px;margin:17px 0 8px;line-height:1.8;overflow-wrap:anywhere}.quote-contact small{font-size:12px;color:#dfbe80}.quote-assurance{display:flex;flex-direction:column;gap:12px;margin-top:30px;font-size:14px;color:#d9dfd5}.quote-assurance span:before{content:'✓';color:var(--gold);margin-right:12px}.quote-panel{background:#fff;color:var(--ink);padding:38px}.quote-panel h3{font-size:25px;margin:0 0 10px}.form-note{font-size:13px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}label{font-size:14px;font-weight:500}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #bec7bb;border-radius:0;background:#fff;color:var(--ink);padding:12px;font:400 16px 'DM Sans',sans-serif;margin-top:7px;min-height:48px}input:focus,select:focus,textarea:focus{outline:2px solid #ad833f;outline-offset:2px}textarea{resize:vertical}fieldset{padding:0;border:0;margin:24px 0}legend{font-size:14px;font-weight:500;margin-bottom:12px}.service-options{display:flex;flex-wrap:wrap;gap:9px}.service-options label{position:relative;cursor:pointer}.service-options input{position:absolute;opacity:0;width:1px;height:1px}.service-options span{display:block;padding:9px 12px;border:1px solid #cbd2c6;font-size:13px}.service-options input:checked+span{background:#e8ddc6;border-color:#9c783a;color:#332a18}.service-options input:focus-visible+span{outline:2px solid #9c783a;outline-offset:2px}.demo-notice{font-size:13px;line-height:1.7;padding:14px;background:#f1f2ed;color:#5d655a;margin-top:22px}.button[type=submit]{border:0;cursor:pointer;width:100%}.field-error{color:#a52920;font-size:14px;margin:8px 0 0}#quote-review{outline:none}#quote-preview{font:400 14px/1.8 'DM Sans',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f5f0;padding:20px;border:1px solid #d7dcd1;max-height:490px;overflow:auto}.review-actions{display:flex;flex-wrap:wrap;gap:12px}.outline-button,.text-button{font:500 14px 'DM Sans',sans-serif;cursor:pointer;padding:13px 18px;background:white;border:1px solid #adb6a7;color:var(--ink)}.text-button{border:0;text-decoration:underline}#copy-status{font-size:14px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq details{border-bottom:1px solid #cbd2c5;padding:20px 0}.faq details:first-child{border-top:1px solid #cbd2c5}.faq summary{font-size:17px;font-weight:500;cursor:pointer}.faq details p{margin:18px 0 0;font-size:16px;color:var(--muted)}.footer-links{display:flex;gap:30px;width:100%;margin-top:15px;font-size:14px}.mobile-quote{display:none}.portfolio-hero{background:var(--dark);color:white;padding-block:85px 60px}.portfolio-hero .eyebrow{color:var(--gold)}.portfolio-hero h1{font-size:clamp(50px,5.5vw,80px)}.portfolio-hero>p:not(.eyebrow){color:#ccd4c9;font-size:18px}.portfolio-disclosure{padding:20px 24px;border-left:2px solid var(--gold);background:#253029;max-width:740px;color:#d7dfd3;font-size:14px}.portfolio-disclosure strong{color:#fff}.portfolio-section{padding-top:40px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters button{padding:12px 18px;background:transparent;color:var(--ink);border:1px solid #aeb9aa;cursor:pointer;font-size:14px}.filters button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:var(--gold)}.filters button:hover{background:#e0e5d9}.filters button[aria-pressed=true]:hover{background:#28352c}.results-count{margin:23px 0;font-size:14px;color:var(--muted)}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 30px}.portfolio-card{border-bottom:1px solid #c9d0c2;padding-bottom:25px}.portfolio-card>img{width:100%;height:370px;object-fit:cover;display:block}.portfolio-card>div{padding-top:20px}.portfolio-card .eyebrow{font-size:12px}.portfolio-card h3{font-size:25px;margin:9px 0}.portfolio-card p{color:var(--muted);margin-bottom:8px}.portfolio-card .text-link{gap:22px}#portfolio-empty{padding:70px 30px;background:#e9ede4;text-align:center}#portfolio-empty h2{font-size:38px;margin-bottom:20px}#portfolio-empty p{max-width:530px;margin:0 auto 28px;color:var(--muted)}.portfolio-bottom{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid #c7cec0;padding-top:65px;margin-top:75px}.portfolio-bottom h2{font-size:38px}[hidden]{display:none!important}
@media(max-width:1050px){.quote-section{gap:35px;grid-template-columns:.8fr 1.2fr}.quote-panel{padding:25px}.area-feature{gap:35px}.region-grid{grid-template-columns:1fr 1fr}.region-grid h3{min-height:0}.hero h1{font-size:60px}.hero h1 em{font-size:.95em}header nav{gap:18px}.faq{gap:35px}}
@media(max-width:750px){.topbar{justify-content:center;font-size:11px}.topbar>span:first-child{display:none}.hero{height:670px;min-height:600px}.hero h1{font-size:51px;letter-spacing:-2px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-foot{font-size:11px;margin-top:35px}.trust-strip{padding:24px 6%;grid-template-columns:1fr 1fr}.trust-strip>div{padding:0 18px}.trust-strip>div:last-child{grid-column:1/-1;border:0;padding:20px 0 0;margin-top:20px;border-top:1px solid #ddd}.trust-strip strong{font-size:24px}.trust-strip span{font-size:13px}.area-feature,.quote-section,.faq{grid-template-columns:1fr;gap:40px}.process-grid{gap:24px}.area-feature img{height:330px}.city-list{grid-template-columns:repeat(3,1fr)}.quote-intro>p:not(.eyebrow){max-width:none}.quote-assurance{display:none}.portfolio-card>img{height:270px}.portfolio-bottom{align-items:flex-start;flex-direction:column}.quote-section .eyebrow{font-size:12px}.section-heading>div:last-child:not(:first-child){margin-top:25px}.fineprint{line-height:1.8}}
@media(max-width:600px){header{height:84px}nav{top:117px}.topbar{min-height:33px;font-size:10px;letter-spacing:0}.hero{height:650px}.hero h1{font-size:43px}.hero h1 em{font-size:1em}.hero-content{padding:50px 7%}.hero-foot{flex-direction:column;gap:5px}.photo-note{font-size:10px}.process-grid{grid-template-columns:1fr;gap:18px}.process-grid h3{margin-top:10px}.region-grid{gap:20px}.region-grid h3{font-size:16px}.region-grid p{font-size:14px}.city-list{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr;gap:17px}.quote-panel{padding:24px 20px}.quote-intro h2{font-size:49px}.service-options span{font-size:14px}.portfolio-hero{padding-top:55px}.portfolio-hero h1{font-size:50px;letter-spacing:-2px}.portfolio-grid{grid-template-columns:1fr}.portfolio-card>img{height:330px}.filters{gap:8px}.filters button{padding:10px 13px}.portfolio-disclosure{padding:17px}.faq{gap:28px}.faq h2{font-size:34px}.footer-links{flex-wrap:wrap;gap:15px 25px}footer{padding-bottom:96px}.mobile-quote{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;justify-content:space-between;align-items:center;background:var(--gold);color:#1b241c;padding:15px 7% calc(15px + env(safe-area-inset-bottom));font-size:16px;font-weight:600;box-shadow:0 -3px 20px #0002}.brand small{font-size:10px;letter-spacing:2px}.hero-foot,.eyebrow{font-size:12px}.city-directory summary{font-size:15px;gap:16px}}
/* Real project collection */
.gallery-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:10px 0 35px}.gallery-intro h2{font-size:40px}.gallery-intro>p{max-width:280px;font-size:15px;color:var(--muted);margin-bottom:3px}.real-projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px}.photo-open{display:block;position:relative;width:100%;padding:0;border:0;background:#dce1d8;cursor:zoom-in;text-align:left;overflow:hidden}.photo-open img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;transition:transform .35s ease}.photo-open:hover img{transform:scale(1.025)}.photo-stage{position:absolute;left:14px;bottom:14px;background:#18231deb;color:#fff;padding:6px 10px;font-size:12px;letter-spacing:.3px}.photo-expand{position:absolute;right:12px;top:12px;color:#fff;background:#18231dbb;width:36px;height:36px;display:grid;place-items:center;font-size:24px}.real-projects .portfolio-card{padding-bottom:18px}.real-projects .portfolio-card h3{font-size:21px;line-height:1.35;margin-top:0}.real-projects .portfolio-card p{font-size:15px;line-height:1.7}.photo-viewing{overflow:hidden}#photo-viewer{padding:0;width:min(1050px,95vw);max-width:95vw;height:min(920px,94dvh);max-height:94dvh;border:1px solid #485147;background:#141c17;color:#f7f8f3;overflow:hidden}#photo-viewer[open]{display:flex;flex-direction:column}#photo-viewer::backdrop{background:#06100ced;backdrop-filter:blur(5px)}.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px 18px;flex-shrink:0}.viewer-toolbar span{font-size:14px;letter-spacing:2px;color:var(--gold)}.viewer-toolbar button{background:transparent;color:#fff;border:1px solid #53624e;padding:9px 17px;cursor:pointer;min-height:44px}.viewer-image-wrap{position:relative;display:flex;flex:1;align-items:center;justify-content:center;min-height:0;background:#0c130e}.viewer-image-wrap img{width:100%;height:100%;object-fit:contain;min-height:0}.viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;width:46px;height:60px;border:1px solid #a8b69c66;background:#111a14cc;color:#fff;font-size:40px;cursor:pointer;line-height:1}.viewer-arrow.previous{left:12px}.viewer-arrow.next{right:12px}.viewer-caption{padding:15px 22px;flex-shrink:0}.viewer-caption h2{font-size:23px;line-height:1.3;letter-spacing:-.5px}.viewer-caption p{margin:8px 0 0;color:#c7d1c0;font-size:14px;line-height:1.5}.inspiration .gallery figure img{height:490px;object-position:center 45%}@media(max-width:1000px){.real-projects{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-intro{align-items:start;flex-direction:column;gap:20px}.gallery-intro>p{max-width:none}.inspiration .gallery figure img{height:400px}}@media(max-width:600px){.real-projects{grid-template-columns:1fr;gap:30px}.gallery-intro h2{font-size:34px}.photo-stage{font-size:13px}.inspiration .gallery figure img{height:430px}#photo-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0}.viewer-caption{padding:15px 18px calc(18px + env(safe-area-inset-bottom))}.viewer-caption h2{font-size:21px}.viewer-caption p{font-size:13px}.viewer-arrow{width:40px;height:52px}.viewer-arrow.previous{left:6px}.viewer-arrow.next{right:6px}}
/* Interactive service and neighborhood details */
.services{gap:14px;border:0}.services article,.services article:not(:nth-child(3n+1)),.services article:nth-child(even){position:relative;padding:30px;border:1px solid #d4dbcd;background:#f5f6f0;transition:transform .24s ease,box-shadow .24s ease,background .24s ease,border-color .24s ease;transform-origin:center;isolation:isolate}.services article:hover,.services article:focus-within{transform:scale(1.035);box-shadow:0 14px 32px #16231b18;border-color:#b38c49;background:#fff;z-index:2}.services .service-quote::after{content:'';position:absolute;inset:0}.services article:hover h3,.services article:focus-within h3{color:#806128}.services .fence-service{grid-column:1/-1;padding-right:30%}.fence-service p{max-width:760px}.services .fence-service:hover{transform:scale(1.015)}.region-grid{gap:18px;align-items:stretch}.region-grid article{padding:24px 20px;border:1px solid #d5dccf;transition:transform .22s,box-shadow .22s,border-color .22s;background:#f0f3eb}.region-grid article:hover,.region-grid article:focus-within{transform:translateY(-5px);box-shadow:0 10px 25px #17271b12;border-color:#b89a61}.region-grid h3{margin-top:0}.city-buttons{display:flex;flex-wrap:wrap;gap:8px}.city-choice{font:400 13px/1.5 'DM Sans',sans-serif;border:1px solid transparent;padding:5px 7px;background:transparent;color:#4b584c;cursor:pointer;text-align:left;transition:color .18s,background .18s,transform .18s,border-color .18s}.city-choice:hover,.city-choice:focus-visible,.city-choice.selected{color:#18231a;background:#e4d7b9;border-color:#c2a369;transform:translateY(-2px)}.area-availability{margin:25px 0 0;color:var(--muted);font-size:14px;max-width:850px}.contractor-interest{margin-top:32px;border-top:1px solid #c8d0c1;padding-top:24px}.contractor-interest summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;font-size:18px;font-weight:600;list-style:none}.contractor-interest summary::-webkit-details-marker{display:none}.contractor-interest summary small{display:block;color:var(--muted);font-size:14px;font-weight:400;margin-top:4px}.contractor-toggle{display:grid;place-items:center;background:#e8deca;width:40px;height:40px;font-size:24px;flex-shrink:0}.contractor-interest[open] .contractor-toggle{transform:rotate(90deg)}.contractor-content{padding-top:28px}.contractor-content .eyebrow{font-size:12px}.contractor-content h3{font-size:24px}.contractor-content .form-note{margin-bottom:24px}#contractor-preview{font:400 14px/1.7 'DM Sans',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f4ec;padding:18px;max-height:450px;overflow:auto}#contractor-review{outline:none}#contractor-status{font-size:14px}.inspiration .gallery figure img{object-position:center 50%}@media(max-width:600px){.services .fence-service{padding:30px}.region-grid{grid-template-columns:1fr}.region-grid article{padding:24px}.city-choice{font-size:14px;min-height:40px}.services article:hover,.services article:focus-within{transform:scale(1.015)}}@media(prefers-reduced-motion:reduce){.services article:hover,.services article:focus-within,.region-grid article:hover,.region-grid article:focus-within,.city-choice:hover,.city-choice:focus-visible{transform:none}}
/* A level presentation of the original bathroom photograph, without regenerating materials. */
.inspiration .gallery{grid-template-columns:1fr 1fr}.project-photo-frame{aspect-ratio:3/4;overflow:hidden;background:#dde0d8}.inspiration .gallery .project-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center}.inspiration .gallery .bathroom-straight img{transform:rotate(5deg) scale(1.12);transform-origin:50% 55%}@media(max-width:600px){.inspiration .gallery{grid-template-columns:1fr}}

/* September photo collection: brighter surfaces, supplied branding, persistent calling. */
:root{--ink:#293a36;--dark:#dfe9e4;--paper:#fcfcf9;--muted:#57655f}
.topbar{background:#e6eee9;color:#354b41}.topbar a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
header{background:#fff;color:var(--ink);height:118px;border-bottom:1px solid #e0e6df}.brand img{width:155px;height:104px}.brand{flex-shrink:0}nav a:hover{color:#806128}.menu{color:var(--ink)}
.hero{background:#f3f5ef;color:var(--ink)}.hero-photo{background-image:linear-gradient(90deg,rgba(245,248,242,.99) 0%,rgba(245,248,242,.96) 31%,rgba(245,248,242,.78) 49%,rgba(245,248,242,.03) 74%),url('assets/projects/white-kitchen-peninsula.webp');background-position:center,center;background-size:cover}
.hero h1 em{color:#846326}.hero .eyebrow{color:#725726}.intro{color:#40554b}.hero-foot{color:#475d50}.ghost-link{border-color:#829587}.photo-note{background:#f8faf0ed;color:#405043;padding:7px 12px;border-radius:3px}.hero .eyebrow:before{background:#a58040}
.inspiration{background:#f0f3ed}.process{background:#edf3ef}.logo-panel{background:white;border:1px solid #e2e6dd;padding:42px 25px 28px}.logo-panel img{max-width:440px;height:auto}.logo-panel p{color:#775c2b}
.quote-section,.contact,.portfolio-hero{background:#dfe9e4;color:var(--ink)}.quote-intro>.eyebrow,.portfolio-hero .eyebrow,.contact .eyebrow{color:#755a28}.quote-intro h2 em,.portfolio-hero h1 em,.contact h2 em{color:#806028}.quote-intro>p:not(.eyebrow),.quote-contact span,.quote-assurance,.portfolio-hero>p:not(.eyebrow){color:#465c50}.quote-contact{border-color:#b0c2b5}.quote-contact small{color:#645321}.quote-contact a{font-weight:600}.quote-contact a:hover{text-decoration:underline}.quote-assurance span:before{color:#7d622b}.quote-panel{box-shadow:0 12px 45px #25432d0a}.portfolio-disclosure{background:#eef4ee;color:#476050;border-color:#a7864b}.portfolio-disclosure strong{color:#293f32}.filters button[aria-pressed=true]{background:#d8e7dd;color:#294632;border-color:#8fa998}.filters button[aria-pressed=true]:hover{background:#c8dece}
.inspiration .gallery .project-photo-frame{aspect-ratio:4/3}.inspiration .gallery .project-photo-frame img{transform:none;transition:transform .45s ease}.inspiration .gallery a:hover img{transform:scale(1.04)}
.real-projects .photo-open img{aspect-ratio:4/3}.photo-stage{background:#f4f7edee;color:#314737}.photo-expand{background:#f4f7ede6;color:#314737}
#photo-viewer{background:#f1f5ef;color:var(--ink);border-color:#b8c8b9}#photo-viewer::backdrop{background:#32493aab}.viewer-toolbar span{color:#755a28}.viewer-toolbar button{color:#314b39;border-color:#a9baa8}.viewer-image-wrap{background:#e1e9df}.viewer-caption p{color:#465d4c}.viewer-arrow{background:#f8fbefed;color:#304d37;border-color:#b5c5af}
.call-now{position:fixed;right:26px;bottom:26px;z-index:20;display:flex;align-items:center;gap:12px;background:#e6c689;color:#283829;border:1px solid #b49251;border-radius:50px;padding:13px 23px;box-shadow:0 6px 25px #344a3826;font-size:17px;font-weight:700;line-height:1.3;transition:transform .2s,background .2s,box-shadow .2s}.call-now small{display:block;font-size:12px;font-weight:500;margin-top:3px}.call-now:hover,.call-now:focus-visible{transform:translateY(-3px);background:#f1d7a3;box-shadow:0 9px 30px #344a3833}footer{padding-bottom:120px}
@media(max-width:900px){header{height:108px;gap:20px}header nav{gap:18px}.brand img{width:140px;height:94px}}
@media(max-width:600px){header{height:96px}.brand img{width:127px;height:85px}nav{top:129px;background:#fff;box-shadow:0 14px 24px #243c2915}.topbar{font-size:12px}.hero-photo{background-image:linear-gradient(90deg,rgba(245,248,242,.94),rgba(245,248,242,.75)),url('assets/projects/white-kitchen-peninsula.webp');background-position:center,60% center}.hero h1{font-size:clamp(34px,9.8vw,43px)}.call-now{right:14px;bottom:calc(76px + env(safe-area-inset-bottom));padding:12px 18px}.call-now small{display:none}.mobile-quote{background:#e5ece3;border-top:1px solid #b6c6b4}.inspiration .gallery .project-photo-frame{aspect-ratio:4/3}footer{padding-bottom:165px}}
@media(prefers-reduced-motion:reduce){.call-now:hover,.call-now:focus-visible,.inspiration .gallery a:hover img{transform:none}}
@media(max-width:600px){.hero .photo-note{left:7%;right:auto;bottom:12px;font-size:9px;padding:3px 7px}}

/* Approved warm concrete, charcoal, and muted gold palette. */
:root{--concrete:#D8D5CF;--concrete-light:#EAE7E1;--concrete-dark:#C8C4BC;--dark:#D8D5CF;--paper:#FAF9F6;--ink:#303532;--muted:#60645F;--gold:#C6A15B;--gold-hover:#D7B778;--border:#CCC7BE}
.topbar{background:var(--concrete-dark);color:var(--ink)}
header{background:var(--concrete);border-bottom-color:#BBB6AD}
.brand img,.logo-panel img{mix-blend-mode:multiply}
.hero{background:var(--paper)}.hero-photo{background-image:linear-gradient(90deg,rgba(250,249,246,.99) 0%,rgba(250,249,246,.96) 31%,rgba(250,249,246,.78) 49%,rgba(250,249,246,.03) 74%),url('assets/projects/white-kitchen-peninsula.webp')}
.inspiration,.process{background:var(--concrete-light)}.logo-panel{background:var(--concrete-light);border-color:var(--border)}
.quote-section,.contact,.portfolio-hero{background:var(--concrete-light)}.portfolio-disclosure{background:var(--paper);color:var(--muted)}.portfolio-disclosure strong{color:var(--ink)}
.services article,.services article:not(:nth-child(3n+1)),.services article:nth-child(even){background:#F3F1EC;border-color:var(--border)}.services article:hover,.services article:focus-within{background:#fff;border-color:var(--gold)}.services h3,.process-grid h3{margin-top:0}
.region-grid article{background:#F1EFEA;border-color:var(--border)}.filters button{border-color:#ADA89E}.filters button[aria-pressed=true]{background:var(--concrete);border-color:#A39C90;color:var(--ink)}.filters button:hover{background:var(--concrete-light)}.filters button[aria-pressed=true]:hover{background:var(--concrete-dark)}
footer{background:var(--concrete-light)}.quote-contact{border-color:#BCB6AB}
.button,.call-now{background:var(--gold);color:#252A27}.button:hover,.call-now:hover,.call-now:focus-visible{background:var(--gold-hover)}.call-now{border-color:#A38142}.text-link,.service-quote{border-color:var(--gold)}
h1,h2,h3,nav,.menu,.footer-brand{color:var(--ink)}.intro,.hero-foot,.quote-intro>p:not(.eyebrow),.quote-contact span,.quote-assurance,.portfolio-hero>p:not(.eyebrow){color:#50574F}
.hero h1 em,.quote-intro h2 em,.portfolio-hero h1 em,.contact h2 em{color:#7C5E28}.eyebrow,.hero .eyebrow,.quote-intro>.eyebrow,.portfolio-hero .eyebrow{color:#745A2B}
.city-choice{color:#50574F}.city-choice:hover,.city-choice:focus-visible,.city-choice.selected{background:#E7D9BD;color:var(--ink);border-color:var(--gold)}.service-options input:checked+span{background:#E7D9BD;border-color:#967239}
.photo-note,.photo-stage,.photo-expand{background:#FAF9F6ed;color:var(--ink)}
#photo-viewer{background:var(--paper);border-color:var(--border)}#photo-viewer::backdrop{background:#303532b8}.viewer-image-wrap{background:var(--concrete-light)}.viewer-toolbar button,.viewer-caption p{color:var(--ink)}.viewer-toolbar button{border-color:#AAA498}.viewer-arrow{background:#FAF9F6ed;color:var(--ink);border-color:var(--border)}
.demo-notice,#quote-preview,#contractor-preview{background:#F3F1EC;color:#545A52}.contractor-toggle{background:#E7D9BD}
@media(max-width:600px){nav{background:var(--concrete)}.hero-photo{background-image:linear-gradient(90deg,rgba(250,249,246,.94),rgba(250,249,246,.75)),url('assets/projects/white-kitchen-peninsula.webp')}.mobile-quote{background:var(--concrete);color:var(--ink);border-color:#B6B0A5}}

/* Collapsed regional city lists with native keyboard and touch support. */
.region-grid{align-items:start}.region-grid article{padding:0;overflow:hidden}.region-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:24px 20px;cursor:pointer;min-height:100px}.region-disclosure summary::-webkit-details-marker{display:none}.region-disclosure summary::after{content:'';width:9px;height:9px;border-right:2px solid #7C5E28;border-bottom:2px solid #7C5E28;transform:rotate(45deg);flex-shrink:0;transition:transform .2s}.region-disclosure[open] summary::after{transform:rotate(225deg)}.region-grid .region-disclosure h3{margin:0;min-height:0;font-size:17px;line-height:1.5}.region-disclosure summary:hover{background:#EAE7E1}.region-disclosure summary:focus-visible{outline:3px solid #967239;outline-offset:-4px}.region-disclosure .city-buttons{padding:0 20px 24px}.region-disclosure[open] summary{margin-bottom:8px}@media(max-width:600px){.region-grid article{padding:0}.region-disclosure summary{min-height:78px;padding:24px}.region-disclosure .city-buttons{padding:0 24px 24px}}

/* Launch review: clearer focus, contact actions, and comfortable mobile spacing. */
.skip-link{position:fixed;top:10px;left:10px;z-index:100;transform:translateY(-180%);padding:12px 20px;background:#303532;color:#fff}.skip-link:focus{transform:none}#main-content:focus{outline:none}.mobile-contact{display:none}.button{justify-content:center;min-height:48px}.city-choice{font-size:14px;min-height:44px}.filters button{min-height:44px}.form-note,.demo-notice{font-size:14px}.services article:focus-within{outline:2px solid #967239;outline-offset:2px}
@media(max-width:600px){.call-now{display:none}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:1fr 1.25fr;background:var(--paper);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px;border-top:1px solid var(--border);box-shadow:0 -3px 18px #30353212}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:15px;font-weight:600;border:1px solid #A38142;background:var(--gold);color:#252A27}.mobile-contact a:first-child{background:var(--paper);border-color:#9E998F}.mobile-contact a:focus-visible{outline-offset:2px}.hero{height:auto;max-height:none;min-height:620px}.hero-content{padding:50px 7% 70px}.hero-actions .button{width:100%;gap:12px}.hero h1{font-size:clamp(32px,9.8vw,43px)}footer{padding-bottom:110px}.photo-note{bottom:14px}.quote-intro h2{font-size:clamp(36px,11vw,49px)}}
.skip-link{transform:none;opacity:0;pointer-events:none}.skip-link:focus{opacity:1;pointer-events:auto}
