

:root{--navy:#06243b;--navy-2:#0a304b;--blue:#1ea6d8;--blue-light:#66c8e8;--yellow:#ffc914;--orange:#f4a000;--cream:#f7f5ef;--paper:#fffdf8;--ink:#082a43;--muted:#5b6d79}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.nav-wrap{height:108px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff;position:relative;z-index:10;border-bottom:1px solid #1ea6d84d}.brand{display:flex;align-items:center}.brand-logo{display:block;width:205px;height:92px;object-fit:contain}.footer-logo{display:block;width:235px;height:150px;object-fit:contain}nav{display:flex;gap:34px;font-size:13px;font-weight:700}nav a:hover{color:var(--yellow)}.nav-cta{background:var(--yellow);color:var(--navy);padding:15px 21px;border-radius:2px;font-size:12px;font-weight:800;box-shadow:4px 4px 0 var(--blue)}.hero{min-height:690px;position:relative;overflow:hidden;color:#fff;display:flex;align-items:center}.hero-image{position:absolute;inset:0;background:url('/bath-project.jpg') center/cover no-repeat,linear-gradient(120deg,var(--navy),var(--blue));transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,36,59,.96) 0%,rgba(6,36,59,.75) 43%,rgba(6,36,59,.15) 78%),linear-gradient(0deg,rgba(6,36,59,.25),transparent)}.hero-content{position:relative;width:90%;max-width:1250px;margin:auto;padding:72px 0 90px;z-index:1}.eyebrow,.section-label{font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.eyebrow{color:var(--yellow);margin-bottom:28px}h1{font-family:Georgia,serif;font-size:clamp(64px,8vw,116px);line-height:.82;letter-spacing:-.055em;margin:0;font-weight:400}h1 em,h2 em{color:var(--blue-light);font-weight:400}.hero-copy{max-width:530px;font-size:18px;line-height:1.65;color:#ffffffd9;margin:34px 0}.hero-actions{display:flex;align-items:center;gap:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;min-width:215px;padding:18px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;transition:.2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--yellow);color:var(--navy);box-shadow:5px 5px 0 var(--blue)}.button span,.text-link span,.service-card a span{font-size:17px}.text-link{font-size:12px;font-weight:800;border-bottom:1px solid #66c8e899;padding:10px 0}.text-link span{margin-left:12px;color:var(--blue-light)}.hero-proof{position:absolute;right:0;bottom:0;z-index:2;background:var(--yellow);color:var(--navy);padding:23px 5vw 23px 35px;display:flex;flex-direction:column;min-width:350px;border-top:5px solid var(--blue)}.hero-proof strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.hero-proof span{font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-top:5px}.intro{padding:105px 6vw 70px;display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end;max-width:1400px;margin:auto}.section-label{color:#087fac;margin:0 0 24px}h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(46px,5.5vw,74px);line-height:.96;letter-spacing:-.045em;margin:0}.intro-copy{color:var(--muted);line-height:1.8;font-size:16px;max-width:520px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1400px;margin:0 auto 110px;padding:0 5vw}.service-card{border:1px solid #c9dbe4;border-right:0;padding:28px 26px 32px;min-height:370px;display:flex;flex-direction:column;transition:.2s ease;background:var(--paper);border-top:4px solid var(--blue)}.service-card:nth-child(even){border-top-color:var(--yellow)}.service-card:last-child{border-right:1px solid #c9dbe4}.service-card:hover{background:#eef9fc;transform:translateY(-5px);box-shadow:0 14px 28px #06243b12}.service-number{color:#118bb9;font-size:10px;letter-spacing:.14em}.service-icon{height:85px;margin:25px 0 6px;position:relative}.service-icon span{position:absolute;width:55px;height:55px;left:3px;top:12px;border:3px solid var(--blue);border-radius:50% 50% 45% 55%;transform:rotate(-18deg)}.icon-02 span{border-radius:0;border-width:0 0 3px 3px;transform:rotate(-45deg);width:45px;height:45px;border-color:var(--orange)}.icon-03 span{border-radius:70% 0 70% 0;transform:rotate(25deg)}.icon-04 span{border-radius:50% 50% 5px 5px;width:50px;height:46px;border-bottom:8px solid var(--yellow)}.service-card h3{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.15;min-height:54px}.service-card p{color:var(--muted);font-size:13px;line-height:1.7;flex:1}.service-card a{border-top:1px solid #c9dbe4;padding-top:17px;margin-top:20px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;display:flex;justify-content:space-between;color:#087fac}.why{display:grid;grid-template-columns:1.45fr .85fr;max-width:1400px;margin:auto}.why-panel{background:var(--navy);color:#fff;padding:90px 7vw;position:relative;overflow:hidden}.why-panel:after{content:"";position:absolute;width:260px;height:260px;border:32px solid #1ea6d812;border-radius:50%;right:-100px;top:-90px}.section-label.light{color:var(--yellow)}.why-panel>p:nth-of-type(2){max-width:650px;color:#b7ceda;line-height:1.7;margin:30px 0 40px}.promise-list{border-top:1px solid #66c8e840}.promise{display:grid;grid-template-columns:45px 120px 1fr;align-items:center;border-bottom:1px solid #66c8e840;padding:18px 0;gap:10px}.promise span{color:var(--yellow);font-size:10px}.promise strong{font-family:Georgia,serif;font-size:18px;font-weight:400}.promise p{font-size:11px;color:#9bb9c8;margin:0}.quote-panel{background:var(--blue);color:var(--navy);padding:70px 5vw;display:flex;flex-direction:column;justify-content:center;border-top:12px solid var(--yellow)}.quote-mark{font-family:Georgia,serif;font-size:85px;line-height:.4;color:#fff9}blockquote{font-family:Georgia,serif;font-size:clamp(28px,3vw,42px);line-height:1.18;margin:25px 0 55px}.owner{display:flex;align-items:center;gap:14px}.owner>span{width:46px;height:46px;background:var(--navy);color:var(--yellow);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:bold}.owner p{display:flex;flex-direction:column;margin:0}.owner strong{font-size:12px}.owner small{font-size:9px;margin-top:5px;text-transform:uppercase;letter-spacing:.08em}.contact{padding:100px 7vw;max-width:1400px;margin:auto;display:grid;grid-template-columns:1fr 380px;gap:10vw;align-items:center}.contact-card{border-left:4px solid var(--yellow);padding-left:55px}.contact-card p{color:var(--muted);line-height:1.7;margin:0 0 25px}.button.dark{background:var(--navy);color:#fff;width:100%;box-shadow:5px 5px 0 var(--blue)}.phone{font-family:Georgia,serif;font-size:24px;display:block;margin-top:20px;color:#087fac}footer{background:var(--navy);color:#fff;padding:36px 6vw 30px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;align-items:center;border-top:7px solid var(--yellow)}footer p,footer div{font-size:11px;line-height:1.8;color:#a9c6d4;margin:0}footer div{display:flex;flex-direction:column}footer div a:hover{color:var(--yellow)}footer>small{grid-column:1/-1;border-top:1px solid #66c8e82e;padding-top:24px;color:#6e98ad;font-size:9px}

.about-us{max-width:1400px;margin:0 auto 110px;padding:95px 7vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:var(--cream);border-top:7px solid var(--yellow);position:relative;overflow:hidden}.about-us:after{content:"WATERBURY";position:absolute;right:-15px;bottom:-22px;font-size:clamp(70px,10vw,145px);font-weight:900;letter-spacing:-.05em;color:#1ea6d80a;pointer-events:none}.about-heading,.about-story{position:relative;z-index:1}.about-heading h2 em{color:#087fac}.about-lead{font-family:Georgia,serif;font-size:clamp(23px,2.4vw,34px);line-height:1.35;color:var(--navy);margin:0 0 25px}.about-story>p:nth-child(2){color:var(--muted);font-size:15px;line-height:1.85;margin:0}.owners-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:38px}.owner-card{background:var(--navy);color:#fff;padding:18px;display:flex;align-items:center;gap:14px;border-bottom:4px solid var(--blue)}.owner-card:nth-child(2){border-bottom-color:var(--yellow)}.owner-card>span{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--blue);border-radius:50%;color:var(--yellow);font-size:11px;font-weight:800;flex:0 0 auto}.owner-card div{display:flex;flex-direction:column}.owner-card strong{font-family:Georgia,serif;font-size:17px;font-weight:400}.owner-card small{color:#9fc5d7;font-size:8px;text-transform:uppercase;letter-spacing:.09em;margin-top:6px}.owner>span{line-height:1.1;text-align:center;font-size:9px}

.contact-details{margin-top:28px;border-top:1px solid #c9dbe4}.contact-details a{display:flex;flex-direction:column;gap:5px;padding:15px 0;border-bottom:1px solid #c9dbe4}.contact-details a:hover strong{color:#087fac}.contact-details small{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#718490;font-weight:800}.contact-details strong{font-family:Georgia,serif;font-size:18px;font-weight:400;line-height:1.35;overflow-wrap:anywhere;transition:.2s}

@media(max-width:900px){nav{display:none}.services-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:1px solid #c9dbe4}.about-us{grid-template-columns:1fr;gap:45px}.why{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.contact-card{border-left:0;border-top:4px solid var(--yellow);padding:35px 0 0}.hero-proof{display:none}}
@media(max-width:620px){.nav-wrap{height:90px;padding:0 18px}.brand-logo{width:155px;height:78px}.nav-cta{font-size:0;padding:12px}.nav-cta:after{content:'CALL NOW';font-size:10px}.hero{min-height:650px}.hero-content{width:auto;margin:0;padding:80px 22px}.eyebrow{line-height:1.5}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.intro{grid-template-columns:1fr;padding:75px 22px 45px}.services-grid{grid-template-columns:1fr;padding:0 22px}.service-card,.service-card:nth-child(2){border-right:1px solid #c9dbe4;border-bottom:0}.service-card:last-child{border-bottom:1px solid #c9dbe4}.about-us{margin-bottom:0;padding:70px 24px}.owners-grid{grid-template-columns:1fr}.why-panel,.quote-panel{padding:70px 24px}.promise{grid-template-columns:35px 95px 1fr}.contact{padding:70px 24px}footer{grid-template-columns:1fr;padding:35px 24px 25px}.footer-logo{width:210px;height:135px}}
.nav-wrap{height:132px}.brand-logo{width:270px;height:122px}.footer-logo{width:310px;height:205px}
@media(max-width:620px){.nav-wrap{height:108px}.brand-logo{width:195px;height:100px}.footer-logo{width:255px;height:175px}}
.service-page{background:var(--paper)}.service-hero{min-height:570px;background:linear-gradient(120deg,var(--navy),#0b5274);color:#fff;padding:90px 7vw;display:grid;grid-template-columns:1fr 280px;gap:8vw;align-items:end;position:relative;overflow:hidden}.service-hero:after{content:"";position:absolute;width:430px;height:430px;border:55px solid #1ea6d817;border-radius:50%;right:-120px;top:-150px}.service-hero>div,.service-hero aside{position:relative;z-index:1}.service-hero h1{font-size:clamp(55px,7vw,94px);line-height:.92;max-width:900px}.service-hero>div>p:not(.eyebrow){max-width:680px;color:#c2dce8;font-size:18px;line-height:1.7;margin:30px 0}.service-hero aside{border-left:4px solid var(--yellow);padding:22px;display:flex;flex-direction:column;background:#06243b99}.service-hero aside strong{font-family:Georgia,serif;font-size:23px;font-weight:400}.service-hero aside span{color:#aed3e3;font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.12em;margin-top:8px}.service-detail{max-width:1400px;margin:auto;padding:100px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.service-detail ul{list-style:none;margin:0;padding:0;border-top:1px solid #c9dbe4}.service-detail li{border-bottom:1px solid #c9dbe4;padding:20px 8px;font-size:14px;color:var(--muted);display:flex;align-items:center;gap:15px}.service-detail li span{color:#087fac;font-weight:900}.service-fit{max-width:1400px;margin:auto;background:var(--navy);color:#fff;padding:85px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;border-top:8px solid var(--blue)}.service-fit>div:last-child{color:#b8d0dc;font-size:15px;line-height:1.85}.service-fit>div:last-child p{margin:0 0 20px}.service-fit>div:last-child strong{color:var(--yellow);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.related-services{max-width:1400px;margin:auto;padding:80px 7vw}.related-services>div{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #c9dbe4}.related-services a{padding:24px 18px;border-right:1px solid #c9dbe4;display:flex;justify-content:space-between;font-family:Georgia,serif;font-size:17px}.related-services a:last-child{border-right:0}.related-services a:hover{background:#eef9fc;color:#087fac}.service-cta{max-width:1400px;margin:auto;padding:90px 7vw;display:grid;grid-template-columns:1fr 380px;gap:10vw;align-items:center;background:var(--cream);border-top:7px solid var(--yellow)}.service-cta>div:last-child{display:flex;flex-direction:column;gap:16px;color:#087fac;font-size:13px;overflow-wrap:anywhere}.service-cta address{font-style:normal;color:var(--muted)}.service-footer{margin-top:0}.service-footer a:first-child{display:block}
@media(max-width:900px){.service-hero,.service-detail,.service-fit,.service-cta{grid-template-columns:1fr}.service-hero aside{max-width:420px}.related-services>div{grid-template-columns:1fr 1fr}.related-services a:nth-child(2){border-right:0}.related-services a:nth-child(-n+2){border-bottom:1px solid #c9dbe4}}
@media(max-width:620px){.service-hero{padding:70px 24px}.service-detail,.service-fit,.service-cta{padding:70px 24px}.related-services{padding:60px 24px}.related-services>div{grid-template-columns:1fr}.related-services a{border-right:0;border-bottom:1px solid #c9dbe4!important}.related-services a:last-child{border-bottom:0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card,.button{transition:none}}

.bath-brand-logo{width:80px;height:80px;object-fit:contain;margin-right:14px}.hero-image{background-position:80% 55%}footer .bath-brand-logo{width:85px;height:85px}@media(max-width:620px){.bath-brand-logo{width:44px;height:44px;margin-right:8px}.brand-wordmark{font-size:18px!important}.brand-wordmark small{font-size:10px!important}}

h1{line-height:1.02}h2{line-height:1.06}.brand-wordmark{display:flex;flex-direction:column;font-weight:800;letter-spacing:.035em;font-size:29px;line-height:1.1;color:#66c8e8}.brand-wordmark small{color:var(--yellow);font-size:15px;letter-spacing:.28em;margin-top:7px}.nav-wrap{height:116px}nav{font-size:14px;gap:25px}.nav-cta,.button,.text-link{font-size:14px}.eyebrow,.section-label,.service-number{font-size:13px}.service-card p{font-size:16px}.service-card a{font-size:14px}.service-card{min-height:350px}.service-card h3{margin-top:35px}.promise p{font-size:14px}.owner-card small,footer p,footer div,.contact-details small{font-size:14px}.owner-card strong{font-size:21px}footer>small{font-size:12px}.owners-grid{grid-template-columns:1fr}.hero-proof span{font-size:13px}.partner-panel{background:var(--blue);color:var(--navy);padding:70px 5vw;display:flex;flex-direction:column;justify-content:center;border-top:12px solid var(--yellow)}.partner-panel h3{font:40px/1.1 Georgia,serif;margin:12px 0 25px}.partner-panel p{font-size:17px;line-height:1.7}.partner-panel a{margin-top:20px}.mobile-home{display:none}.project-strip{max-width:1260px;margin:0 auto 90px;padding:0 5vw}.project-strip img{width:100%;height:440px;object-fit:cover}.project-strip figcaption{font-size:14px;color:var(--muted);margin-top:14px}.service-detail li,.service-fit>div:last-child,.service-cta>div:last-child{font-size:16px}a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}section[id]{scroll-margin-top:25px}.service-hero h1{line-height:1.04}.promise{grid-template-columns:30px 110px 1fr}.hero-content{padding-top:65px}.hero-copy{max-width:530px}.service-card h3{min-height:55px}
@media(max-width:900px){.mobile-home{display:block;font-size:14px;font-weight:bold;margin-left:auto;margin-right:20px}.nav-wrap{gap:12px}}@media(max-width:620px){.brand-wordmark{font-size:22px}.brand-wordmark small{font-size:12px}.nav-wrap{height:100px;padding:0 16px;gap:10px}.mobile-home{margin-right:4px}.nav-cta:after{font-size:12px}.hero-content{padding-top:65px}.hero{min-height:650px}h1{font-size:64px}.hero-actions .button{min-width:235px}.project-strip img{height:330px}.promise{grid-template-columns:25px 1fr}.promise p{grid-column:2}.partner-panel{padding:65px 24px}.service-card{min-height:300px}.hero-proof{display:none}}

/* Official proposal logo and contact hierarchy. */
.nav-wrap{height:176px}.brand{flex-shrink:0}.bath-brand-logo{width:168px;height:168px;margin:0;object-fit:contain}footer .bath-brand-logo{width:220px;height:220px;margin:0}.nav-cta{display:flex;flex-direction:column;align-items:center;gap:5px;white-space:nowrap}.nav-cta:after{content:none}.owner-card a{font-size:16px;margin-top:10px;color:var(--blue-light)}.owner-card a:hover{color:var(--yellow)}.footer-contacts{min-width:0;overflow-wrap:anywhere;gap:10px}.footer-contacts strong{font-weight:600}.service-hero aside span{font-size:14px;letter-spacing:.04em;line-height:1.7}.service-hero aside span a{color:#fff;font-weight:700}.contact-card{min-width:0}
@media(max-width:620px){.nav-wrap{height:142px}.bath-brand-logo{width:136px;height:136px}.nav-cta{font-size:14px;padding:12px;min-height:44px}.nav-phone{display:none}.nav-cta:after{content:none}.mobile-home{margin-left:auto;margin-right:2px}footer .bath-brand-logo{width:210px;height:210px}}

/* Business contact information stays visible in the header on every page. */
.site-header{background:var(--navy);color:#fff}.header-details{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:20px;padding:18px 5vw 20px;border-bottom:1px solid #1ea6d84d;background:var(--navy-2)}.header-details>a{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}.header-details small{color:#a9c6d4;font-size:13px;line-height:1.4}.header-details strong{font-size:16px;font-weight:600}.header-details>a:hover strong,.header-details>a:hover span{color:var(--yellow)}.nav-cta{text-align:center;white-space:normal}.nav-cta .contact-label{font-size:13px;font-weight:400}.nav-phone{display:block}
@media(max-width:620px){.nav-wrap{height:auto;min-height:150px;padding:12px 16px;display:grid;grid-template-columns:clamp(104px,30vw,136px) minmax(0,1fr);gap:4px 12px}.nav-wrap>.brand{grid-column:1;grid-row:1/3}.nav-wrap .bath-brand-logo{width:clamp(104px,30vw,136px);height:auto}.nav-wrap>.mobile-home{grid-column:2;grid-row:1;justify-self:end;margin:0;padding:8px;min-height:36px}.nav-wrap>.nav-cta{grid-column:2;grid-row:2;justify-self:stretch;padding:10px 8px;line-height:1.4}.header-details{grid-template-columns:1fr 1fr;padding:16px;gap:14px 20px}.header-details>a,.header-details strong{font-size:14px}.header-address{grid-column:1/-1}.header-address strong br{display:none}.header-address strong br:after{content:' '}}
