:root{--ink:#191b18;--muted:#666a61;--paper:#f5f3ed;--gold:#dfbd74;--line:#d9d8cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #ab7928;outline-offset:5px}header{height:108px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--paper);border-bottom:1px solid #ffffff20}.brand{display:flex;align-items:center;gap:17px;font-size:10px;line-height:1.65;letter-spacing:2px}.brandmark{font-family:Georgia,serif;color:var(--gold);font-size:36px;letter-spacing:1px;border-right:1px solid #ffffff35;padding-right:17px}.brandmark span{font-family:Arial;font-size:14px;vertical-align:top;padding-left:3px}nav{display:flex;gap:35px;align-items:center;font-size:13px}nav .nav-cta{border:1px solid #ffffff55;padding:15px 21px}.nav-cta span{padding-left:28px}.hero{display:grid;grid-template-columns:1.04fr 1fr;min-height:710px;background:var(--ink);color:var(--paper)}.hero-copy{padding:65px 8% 45px 10%}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;line-height:1.7}.hero .eyebrow{color:var(--gold)}.dot{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block;margin-right:7px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.7px;line-height:1.04;margin:28px 0}h1{font-size:clamp(58px,6.2vw,94px)}em{font-weight:400;color:var(--gold)}.intro{font-size:15px;color:#c3c4bc;line-height:1.8;max-width:380px}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{padding:19px 24px;display:inline-flex;gap:36px;font-size:13px;font-weight:600;align-items:center}.gold{background:var(--gold);color:var(--ink)}.gold:hover{background:#edcd8b}.text-link{font-size:12px;padding:16px 0;border-bottom:1px solid #ffffff60}.text-link span{margin-left:12px}.hero-note{font-size:10px;color:#c3c4bc;margin-top:48px;letter-spacing:.7px}.hero-image{position:relative;min-width:0;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:50% 45%}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0008)}.image-label{position:absolute;z-index:1;bottom:30px;left:30px;right:30px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:1.7px}.service-strip{display:flex;justify-content:space-around;gap:15px;padding:25px 5%;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid var(--line)}.service-strip i{font-style:normal;color:#9d7b3c;font-size:10px}.section{padding:100px 6%}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:42px}.section-top .eyebrow,.process .eyebrow{color:#857040}h2{font-size:clamp(39px,4.4vw,64px);margin:16px 0 0}.section-top>p{max-width:340px;font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.service-grid article{border-top:1px solid var(--line);padding-top:25px}.number{font-size:11px;color:#857040}h3{font-weight:500;font-size:18px;line-height:1.4}.service-grid p{font-size:13px;color:var(--muted);line-height:1.8}.work{background:#eae8e0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid #bdbfb4;background:transparent;padding:11px 17px;border-radius:2px;font-size:12px;color:var(--ink)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 24px}.gallery figure{margin:0}.gallery figure[hidden]{display:none}.photo{width:100%;border:0;display:block;position:relative;padding:0;overflow:hidden;background:#d4d1c9;aspect-ratio:4/5}.photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.photo:hover img{transform:scale(1.035)}.photo span{position:absolute;right:12px;bottom:12px;background:var(--paper);color:var(--ink);padding:9px 12px;font-size:10px}figcaption h3{font-size:14px;margin:16px 0 5px}figcaption>span{font-size:9px;letter-spacing:1.2px;color:var(--muted)}.process{display:grid;grid-template-columns:1fr 1fr;gap:60px}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:27px;padding:22px 0;border-top:1px solid var(--line)}.process li>span{font-size:11px;color:#857040;padding-top:5px}.process li h3{margin:0 0 10px}.process li p{font-size:13px;color:var(--muted);line-height:1.8;max-width:400px;margin:0}.contact{background:var(--ink);color:var(--paper);position:relative}.contact .eyebrow{color:var(--gold)}.contact h2{font-size:clamp(50px,6vw,88px);margin:25px 0}.contact>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#bfc2b7}.contact-phone{font-family:Georgia,serif;font-size:clamp(29px,4vw,52px);display:inline-block;margin-top:22px;border-bottom:1px solid #787b6d;padding-bottom:14px}.contact-phone span{font-family:Arial;font-size:30px;color:var(--gold);margin-left:45px}.contact-email{font-size:13px;color:var(--gold)}.contact .contact-note{font-size:11px!important;margin-top:25px}footer{background:var(--ink);color:#bfc2b7;border-top:1px solid #ffffff20;padding:28px 6%;display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:10px}.footer-brand{font-family:Georgia,serif;font-size:23px;color:var(--gold)}.footer-brand span{font-family:Arial;font-size:10px;color:#bfc2b7;margin-left:10px}dialog{border:0;padding:50px 15px 15px;background:#191b18;color:#fff;max-width:95vw;max-height:95dvh}dialog::backdrop{background:#000d}dialog img{max-width:85vw;max-height:74dvh;display:block;object-fit:contain;margin:auto}#close-lightbox{position:absolute;right:15px;top:12px;border:0;background:transparent;color:#fff;padding:7px}dialog p{text-align:center;font-size:12px}body.modal-open{overflow:hidden}@media(min-width:1600px){main,header,footer{max-width:1800px;margin:auto}}@media(max-width:900px){.hero-copy{padding:50px 8%}.hero{min-height:630px}h1{font-size:64px}.service-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.section{padding:75px 6%}.section-top>p{max-width:270px}.actions{gap:18px}.process{gap:35px}}@media(max-width:600px){header{height:82px;padding:0 6%}.brand{font-size:8px;gap:10px;letter-spacing:1px}.brandmark{font-size:29px;padding-right:10px}nav{gap:0}nav>a:not(.nav-cta){display:none}nav .nav-cta{font-size:11px;padding:12px}.nav-cta span{padding-left:8px}.hero{grid-template-columns:1fr}.hero-copy{padding:38px 6% 34px}.hero .eyebrow{font-size:9px}h1{font-size:65px;margin:24px 0}.intro{font-size:14px}.hero-note{margin-top:28px;font-size:9px}.hero-image{height:470px}.image-label{left:22px;right:22px;font-size:8px}.service-strip{flex-wrap:wrap;justify-content:center;gap:14px;font-size:9px}.service-strip i:last-of-type{display:none}.section{padding:58px 6%}.section-top{display:block;margin-bottom:30px}.section-top>p{max-width:100%;margin-top:23px;font-size:13px}h2{letter-spacing:-1.7px}.service-grid{gap:25px 20px}.service-grid h3{font-size:16px}.service-grid p{font-size:12px}.gallery{gap:28px 14px}.gallery figcaption h3{font-size:12px}.gallery figcaption>span{font-size:8px;letter-spacing:.4px}.photo span{font-size:8px;right:8px;bottom:8px;padding:7px}.filters{gap:7px}.filters button{padding:10px;font-size:10px}.process{grid-template-columns:1fr;gap:30px}.process li h3{font-size:16px}.contact .actions{align-items:flex-start;flex-direction:column}.contact h2{font-size:54px}.contact-phone{font-size:33px}.contact-phone span{margin-left:23px}footer{align-items:flex-start;flex-direction:column;gap:13px}footer p{margin:0}.footer-brand span{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}
/* Preserve the retouched framing of each portfolio photograph. */
.gallery{display:block;columns:3;column-gap:24px}.gallery figure{break-inside:avoid;margin:0 0 32px}.gallery .photo{aspect-ratio:auto}.gallery .photo img{height:auto;object-fit:contain}@media(max-width:900px){.gallery{columns:2}}@media(max-width:600px){.gallery{column-gap:14px}.gallery figure{margin-bottom:24px}}
.site-qr{display:flex;gap:28px;align-items:center;border-top:1px solid #ffffff26;margin-top:40px;padding-top:32px;max-width:620px}.site-qr img{display:block;max-width:none;border-radius:3px}.site-qr .eyebrow{color:var(--gold);font-size:9px;margin:0 0 8px}.site-qr h3{font-family:Georgia,serif;font-size:26px;margin:0 0 8px}.site-qr p:not(.eyebrow){color:#bfc2b7;font-size:12px;line-height:1.7;margin:0}.site-qr .text-link{display:inline-block;padding:10px 0 7px;font-size:11px}@media(max-width:600px){.site-qr{gap:18px;align-items:flex-start}.site-qr img{width:114px;height:114px}.site-qr h3{font-size:22px}.site-qr p:not(.eyebrow){font-size:11px}}
.project-total{font-size:12px;color:var(--muted);margin:0 0 24px}.gallery{columns:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px;align-items:start}.gallery figure{margin:0;min-width:0}.gallery figure[hidden]{display:none}.gallery .photo{aspect-ratio:4/5;width:100%}.gallery .photo img{height:100%;width:100%;object-fit:cover;object-position:50% 50%}.photo:focus-visible,.filters button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}#lightbox{width:min(1080px,96vw);padding:54px 20px 18px;box-sizing:border-box;overflow:auto;border-radius:4px;max-height:96dvh}.viewer{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}.viewer #large-photo{max-width:100%;width:100%;height:64dvh;max-height:64dvh;object-fit:contain}.gallery-arrow{height:56px;border:1px solid #ffffff40;background:#ffffff0c;color:white;font-size:34px;cursor:pointer}.viewer-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 52px}.viewer-caption h3{font-size:14px;font-weight:400;margin:0}.viewer-caption p{white-space:nowrap;color:#d3bf92}#photo-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:4px 52px 8px}#photo-thumbnails button{flex:none;padding:0;border:2px solid transparent;background:transparent;cursor:pointer}#photo-thumbnails button[aria-current=true]{border-color:var(--gold)}#photo-thumbnails img{width:62px;height:62px;object-fit:cover}.gallery-arrow:focus-visible,#photo-thumbnails button:focus-visible,#close-lightbox:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(max-width:900px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.gallery{gap:26px 14px}.gallery .photo{aspect-ratio:3/4}.photo span{left:6px;right:6px;text-align:center}.viewer{grid-template-columns:32px minmax(0,1fr) 32px;gap:3px}#lightbox{padding:50px 8px 12px}.viewer #large-photo{height:58dvh;max-height:58dvh}.gallery-arrow{font-size:28px;height:48px}.viewer-caption{padding:10px 4px}.viewer-caption h3{font-size:12px}#photo-thumbnails{padding:4px 0 8px}#photo-thumbnails img{width:48px;height:48px}}
/* Dark portfolio, with quieter gold project links. */
#work{background:var(--ink);color:var(--paper)}#work .eyebrow{color:var(--gold)}#work .section-top>p{color:#bfc2b7}#work .project-total{color:#aaaFA4}#work figcaption h3{color:var(--gold)}#work figcaption>span{color:#b6b9ac}#work .filters button{background:transparent;border-color:#dfbd7440;color:#d4d5ca}#work .filters button:hover{border-color:var(--gold);color:var(--gold)}#work .filters button.active{background:var(--gold);border-color:var(--gold);color:var(--ink)}#work .photo{background:#252821}#work .photo span{background:#191b18ed;color:var(--gold);border:1px solid #dfbd7440;padding:10px 13px}#work .photo:hover span{border-color:var(--gold)}.more-work{display:flex;justify-content:center;margin-top:42px;padding-top:30px;border-top:1px solid #dfbd7426}#see-more-work{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:240px;padding:20px 34px;background:transparent;border:1px solid #dfbd7470;color:var(--gold)}#see-more-work>span{font-size:14px;letter-spacing:.3px}#see-more-work>span>span{margin-left:24px}#see-more-work small{font-size:10px;color:#b6b9ac;letter-spacing:.7px}#see-more-work:hover{background:#dfbd7410;border-color:var(--gold)}#see-more-work[hidden]{display:none}.more-work:has(>button[hidden]){display:none}@media(max-width:600px){#work .photo span{padding:8px 5px;font-size:8px}.more-work{margin-top:26px;padding-top:24px}#see-more-work{min-width:220px}}
.category-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.category-overview[hidden],#project-results[hidden]{display:none}.category-card{padding:0;text-align:left;border:1px solid #dfbd742e;background:#20231d;color:var(--paper);min-width:0;overflow:hidden}.category-image{aspect-ratio:5/4;position:relative;overflow:hidden}.category-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.category-image>span{position:absolute;bottom:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;background:#191b18ed;color:var(--gold);border:1px solid #dfbd7440}.category-copy{padding:22px 23px 24px}.category-copy h3{color:var(--gold);font-family:Georgia,serif;font-weight:400;font-size:27px;margin:0 0 10px}.category-copy p{color:#bfc2b7;font-size:12px;line-height:1.6;margin:0 0 20px}.category-copy>span{font-size:11px;color:var(--gold);letter-spacing:.5px}.category-copy>span>span{margin-left:15px}.category-card:hover{border-color:#dfbd74a0}.category-card:hover img{transform:scale(1.035)}.category-navigation{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #dfbd7433;scroll-margin-top:35px}.category-navigation>button{border:1px solid #dfbd7455;color:var(--gold);background:transparent;padding:12px 16px;font-size:12px}.category-navigation>h3{font-family:Georgia,serif;font-weight:400;font-size:32px;color:var(--gold);margin:0}@media(max-width:900px){.category-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.category-overview{grid-template-columns:1fr;gap:22px}.category-image{aspect-ratio:5/3}.category-copy{padding:19px 20px 22px}.category-copy h3{font-size:27px}.category-copy p{margin-bottom:15px}.category-navigation{align-items:flex-start;flex-direction:column;gap:20px}.category-navigation>h3{font-size:29px}}@media(prefers-reduced-motion:reduce){.category-image img{transition:none}}
/* Aligned portfolio rows; image proportions are preserved. */
#work .gallery{display:grid;columns:initial;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;align-items:start}
#work .gallery figure{display:flex;flex-direction:column;min-width:0;margin:0}
#work .gallery figure[hidden]{display:none}
#work .gallery .photo{width:100%;aspect-ratio:4/3;background:#252821}
#work .gallery .photo img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
#project-results:is([data-collection="showers"],[data-collection="baths"],[data-collection="fireplaces"],[data-collection="floors"]) .gallery .photo{aspect-ratio:4/5}
#work .gallery figcaption{min-height:58px;padding-top:14px}
#work .gallery figcaption h3{margin:0 0 5px;line-height:1.5}
#work .gallery .photo span{max-width:calc(100% - 24px)}
@media(max-width:900px){#work .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}}
@media(max-width:600px){#work .gallery{grid-template-columns:1fr;gap:25px}#work .gallery figcaption{min-height:0;padding-top:12px}#work .gallery figcaption h3{font-size:14px}#work .gallery .photo span{left:auto;right:12px;bottom:12px;font-size:10px;padding:10px 12px;max-width:calc(100% - 24px)}}

/* Kitchen-led opening: generous landscape framing and quiet editorial copy. */
.hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);min-height:640px;align-items:stretch}.hero-copy{padding:88px 9% 62px 12%;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(54px,5.4vw,82px);line-height:1.08;letter-spacing:-2.5px}.hero .intro{max-width:350px}.hero-image{align-self:center;margin:36px 36px 36px 0;aspect-ratio:4/3;min-height:0;border:1px solid #dfbd7430}.hero-image>img{object-fit:cover;object-position:center}.hero-image:after{inset:75% 0 0}.hero .image-label{bottom:20px;left:22px;right:22px}.hero-note{line-height:1.8}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1.2fr;min-height:550px}.hero-copy{padding:55px 8%}.hero h1{font-size:56px}.hero-image{margin-right:22px}.image-label{letter-spacing:.8px;font-size:8px}}
@media(max-width:700px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 6% 30px}.hero h1{font-size:clamp(48px,10vw,68px);margin:22px 0}.hero .intro{max-width:440px}.hero-note{margin:26px 0 0}.hero-image{width:88%;height:auto;aspect-ratio:4/3;margin:0 6% 34px}.hero .image-label{font-size:7px;left:14px;right:14px;bottom:14px}}

.portfolio-credit{margin:0;padding:16px 6% 22px;background:var(--ink);color:#a3a79c;font-size:10px;line-height:1.7;text-align:center;border-top:1px solid #ffffff0d}@media(max-width:600px){.portfolio-credit{font-size:10px;padding:16px 6% 22px}}
