*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:#262a29;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-1.8px}h1{font-size:clamp(3rem,5.4vw,5.3rem)}h2{font-size:clamp(2.3rem,3.6vw,3.6rem)}h3{font-size:1.1rem;font-weight:500;line-height:1.4}a:focus-visible{outline:3px solid #b68c46;outline-offset:6px}.skip{position:fixed;left:12px;top:-100px;background:#fff;color:#222;padding:12px;z-index:10}.skip:focus{top:10px}.location-bar{background:#171a19;color:#cccfc9;padding:9px 5.5%;display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:1.5px}.header{background:#242827;display:flex;align-items:center;justify-content:space-between;padding:23px 5.5%;gap:30px;border-bottom:1px solid #414440}.brand{display:block;width:258px;flex-shrink:0}.brand img{width:100%}.header nav{display:flex;gap:30px;align-items:center;color:#e5e8e2;font-size:.875rem}.header nav>a:not(.button){border-bottom:1px solid transparent;padding:7px 0}.header nav>a:hover{border-color:#bc995c}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:#c2a36a;color:#171c19;padding:17px 25px;font-size:.875rem;font-weight:600;line-height:1.5;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{background:#d2b57f;transform:translateY(-2px)}.button span{font-size:1.3rem;font-weight:400}.button.small{padding:12px 19px;gap:20px}.hero{position:relative;min-height:660px;display:flex;align-items:center;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,22,21,.88) 0%,rgba(16,22,21,.77) 27%,rgba(16,22,21,.25) 69%,rgba(16,22,21,.06) 100%)}.hero-content{position:relative;padding:75px 5.5% 105px;max-width:920px}.eyebrow{color:#97753a;font-size:.72rem;letter-spacing:2px;font-weight:600;margin-bottom:23px}.eyebrow.light{color:#dcc18d}.hero h1 em{font-weight:400;color:#d2b788}.hero-copy{font-size:1rem;line-height:1.8;color:#dde0da;max-width:450px;margin-top:27px}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:33px}.subtle-link{display:inline-flex;align-items:center;gap:18px;font-size:.875rem;white-space:nowrap}.subtle-link:hover{color:#dac08a}.hero-bottom{position:absolute;bottom:0;left:5.5%;right:5.5%;padding:22px 0;display:flex;justify-content:space-between;border-top:1px solid #ffffff40;color:#e1e4dc;font-size:.67rem;letter-spacing:1.5px}.service-strip{background:#f2f3ef;border-bottom:1px solid #e5e7e1;display:flex;gap:7%;justify-content:center;align-items:center;padding:26px 5%;font-size:.875rem;color:#53594f}.service-strip i{width:4px;height:4px;background:#b59861;transform:rotate(45deg)}.section{padding:100px 5.5%;max-width:1550px;margin:0 auto}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:80px;margin-bottom:50px}.section-intro>p{max-width:450px;color:#6c716a;line-height:1.85;padding-bottom:5px}.bathroom-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:65px}.project-image{position:relative;overflow:hidden;background:#1d2421;min-height:455px}.project-image>img{height:100%;width:122%;max-width:none;object-fit:cover;position:absolute;left:-11%;top:0;object-position:50% 50%}.project-image:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#15211bc9);pointer-events:none}.project-image figcaption{position:absolute;bottom:25px;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff;z-index:1;font-size:.8rem}.project-image figcaption a{border-bottom:1px solid #fff8;padding-bottom:3px}.service-list>div{display:flex;gap:24px;padding:26px 0;border-top:1px solid #e0e4dc}.service-list>div:first-child{padding-top:10px;border:0}.number{font-size:.75rem;color:#b08c50;padding-top:4px}.service-list p{font-size:.94rem;color:#73786f;line-height:1.75;margin-top:9px;max-width:355px}.text-link{display:flex;align-items:center;gap:25px;font-size:.875rem;font-weight:600;color:#896b34;margin-top:8px}.text-link:hover{text-decoration:underline}.commercial{background:#252c28;color:#f5f6f1}.commercial-inner{max-width:1550px;margin:auto;padding:80px 5.5%;display:grid;grid-template-columns:1fr 1fr;gap:90px}.commercial h2{color:#f4f5ed}.commercial-inner>div>p:not(.eyebrow){color:#c3c9bd;line-height:1.85;max-width:490px}.trade-tags{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 30px}.trade-tags span{border:1px solid #586153;padding:6px 12px;font-size:.75rem;color:#d4dacd}.button.outline{border:1px solid #a58c5c;background:transparent;color:#e4cc9a}.button.outline:hover{background:#354032}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-copy .lead{font-size:1.2rem;color:#434d43;line-height:1.7}.about-copy>p+p{margin-top:22px;color:#767b72;font-size:.94rem;line-height:1.85}.areas{margin-top:35px;padding-top:25px;border-top:1px solid #e1e4dc}.areas span{font-size:.7rem;letter-spacing:1.5px;color:#947846}.areas p{font-size:.875rem;margin-top:10px;color:#4f594d}.contact{text-align:center;background:#eee8dc;padding:80px 24px}.contact h2{margin-bottom:22px}.contact>p:not(.eyebrow){color:#747366;font-size:1rem;line-height:1.8}.contact .button{margin-top:30px}.button.dark{color:white;background:#293329}.button.dark:hover{background:#3d4d3b}.contact small{display:block;color:#77786c;font-size:.75rem;margin-top:16px}footer{background:#202622;color:#c0c8bb;padding:55px 5.5% 22px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:45px}.footer-main .brand{width:280px}.footer-main p{font-size:.875rem;line-height:1.9}.footer-contact{font-family:Georgia,serif;font-size:2rem;color:#e4d3ab}.footer-contact span{padding-left:24px}.footer-bottom{border-top:1px solid #414a3d;padding-top:22px;display:flex;justify-content:space-between;font-size:.75rem;color:#9fa997}
@media(min-width:1600px){.hero-content{margin-left:calc((100vw - 1550px)/2);padding-left:85px}.hero{min-height:720px}}
@media(max-width:1050px){.brand{width:210px}.header nav{gap:18px}.header{padding-left:4%;padding-right:4%}.hero-content{padding-left:5%}.hero h1{font-size:4rem}.hero{min-height:630px}.section-intro{gap:40px}.bathroom-layout{gap:35px}.commercial-inner,.about{gap:45px}.hero-actions{gap:20px}}
@media(max-width:780px){.location-bar span:last-child{display:none}.location-bar{justify-content:center}.header{flex-direction:column;gap:20px;padding:20px}.brand{width:235px}.header nav{gap:20px;flex-wrap:wrap;justify-content:center;font-size:.8rem}.header nav .button{display:none}.hero{min-height:610px}.hero-content{padding:60px 7% 100px}.hero h1{font-size:clamp(2.8rem,8vw,4rem)}.hero-shade{background:linear-gradient(90deg,#101916de,#10191683)}.hero-copy{max-width:450px}.hero-actions{flex-direction:column;align-items:flex-start;gap:24px}.hero-bottom span:last-child{display:none}.hero-bottom{left:7%;right:7%}.service-strip{gap:16px;flex-wrap:wrap;font-size:.75rem;padding:22px 15px}.service-strip i{display:none}.section{padding:65px 7%}.section-intro{display:block;margin-bottom:35px}.section-intro>p{margin-top:25px}.bathroom-layout,.about,.commercial-inner{grid-template-columns:1fr;gap:35px}.project-image{min-height:420px}.service-list>div{padding:22px 0}.service-list p{max-width:none}.commercial-inner{padding:65px 7%}.footer-main{align-items:flex-start;flex-wrap:wrap;gap:30px}.footer-main .brand{width:235px}.footer-main p{display:none}.footer-contact{font-size:1.6rem}.contact{padding:65px 7%}.contact h2{font-size:2.5rem}.contact .desktop-break{display:none}.eyebrow{font-size:.67rem}.project-image figcaption{left:20px;right:20px;font-size:.75rem}.footer-bottom{gap:20px}.button{max-width:100%;gap:20px}}
.header nav{gap:22px;flex-wrap:wrap}.nav-menu{position:relative}.nav-menu summary{cursor:pointer;padding:7px 0}.nav-menu>div{position:absolute;z-index:20;top:100%;left:-20px;min-width:235px;padding:12px;background:#242827;border:1px solid #596052;box-shadow:0 15px 30px #0003}.nav-menu a{display:block;padding:10px}.nav-menu a:hover{background:#354032}.page-heading{background:#252c28;color:#f5f6f1;padding:75px 5.5%;}.page-heading h1{max-width:1000px}.page-heading>p:last-child{margin-top:25px;max-width:640px;color:#d6dccf;font-size:1.125rem}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.restored-content p{margin:20px 0;line-height:1.85}.restored-content .button{margin:12px 0}.restored-photo{width:100%;height:auto;max-height:650px;object-fit:cover}.story-grid blockquote{margin:0;font:2rem/1.4 Georgia,serif;color:#3b463a}.story-grid .verse{color:#896b34}.mission{margin-top:90px}.restored-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:55px}.restored-gallery img{aspect-ratio:4/3;object-fit:cover}.restored-gallery a:only-child{grid-column:1/-1}.page-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:35px}.page-cards>a,.page-cards>article{padding:30px;border-top:1px solid #b89b64;background:#f2f3ef}.page-cards a:hover{background:#e8ebe3}.page-cards p{margin-top:15px;color:#646c60}.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:.875rem;padding-bottom:24px}.license-list{font-size:.875rem;margin-bottom:24px}.partners{display:flex;align-items:center;gap:50px;margin-top:60px}.partners a{max-width:260px}.partner-logo{padding:35px;background:white}.partner-logo img{object-fit:contain}.request-panel,.legal-copy{max-width:780px;margin:auto}.legal-copy h3{margin-top:32px;font-weight:600}.restored-content a:not(.button):hover{text-decoration:underline}.explore-pages h2{max-width:800px}summary:focus-visible{outline:3px solid #c2a36a;outline-offset:5px}
@media(max-width:1050px){.header{flex-wrap:wrap;justify-content:center}.header nav{justify-content:center}.story-grid{gap:35px}.page-cards{gap:18px}}
@media(max-width:780px){.header nav{font-size:.875rem;gap:14px}.page-heading{padding:55px 7%}.story-grid,.page-cards{grid-template-columns:1fr}.restored-gallery{grid-template-columns:1fr 1fr;gap:15px}.mission{margin-top:55px}.story-grid blockquote{font-size:1.65rem}.partners{flex-wrap:wrap}.page-heading h1{font-size:2.8rem}.nav-menu>div{left:-50px}.restored-content h2{overflow-wrap:anywhere}}
@media(max-width:450px){.restored-gallery{grid-template-columns:1fr}}
.gallery-title{margin-top:65px}.design-image{max-width:850px;margin:55px auto 0}.design-image img{object-fit:contain}.design-image figcaption{font-size:.875rem;color:#68715f;margin-top:12px}.story-grid>img[src$="DSC_0809.JPEG"]{height:540px;object-fit:cover;object-position:center 60%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Bathroom service pages */
.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;color:#d6dccf;font-size:.85rem;margin-bottom:28px}.breadcrumbs a:hover{text-decoration:underline}.page-heading .button{margin-top:28px}.service-content{padding-top:70px}.service-copy{max-width:1080px;margin:0 auto 60px}.service-copy h2{max-width:850px;font-size:clamp(2rem,3vw,3rem);margin-bottom:24px}.service-copy>p:not(.eyebrow){max-width:820px;line-height:1.85;color:#586052;margin-top:18px}.service-content>.page-cards{margin:0 auto 65px;max-width:1080px}.service-cards h3{font-size:1.2rem}.card-link{display:block;margin-top:20px;color:#896b34;font-size:.875rem}.service-faq details{border-top:1px solid #dce0d5;padding:20px 0}.service-faq details:last-child{border-bottom:1px solid #dce0d5}.service-faq summary{cursor:pointer;font-size:1.1rem;color:#303c2e;padding-right:12px}.service-faq details p{max-width:820px;line-height:1.85;color:#586052;margin-top:15px}.service-copy:last-child{margin-bottom:0}.nav-menu>div{max-height:70vh;overflow-y:auto}.page-heading h1{overflow-wrap:break-word}
@media(max-width:780px){.service-content{padding-top:50px}.service-copy{margin-bottom:45px}.service-content>.page-cards{margin-bottom:45px}.service-faq summary{font-size:1rem}.breadcrumbs{font-size:.8rem}}
