@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root{--ink:#080b10;--ink-2:#11161d;--blue:#4aa8e3;--blue-2:#1788cf;--white:#fff;--paper:#f3f6f8;--muted:#68727e;--line:#d8dfe5;--max:1180px;--condensed:'Barlow Condensed',Impact,sans-serif;--body:'Inter',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}img{display:block;width:100%}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.8rem 1rem;z-index:100}.skip-link:focus{top:1rem}.topbar{background:var(--blue);color:#071018;text-align:center;padding:.45rem 1rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.topbar span{display:inline-block;width:3px;height:3px;border-radius:50%;background:currentColor;margin:0 .75rem;vertical-align:middle}.site-header{height:86px;background:rgba(8,11,16,.97);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:20;border-bottom:1px solid #27303a}.wordmark{font-family:var(--condensed);line-height:.9;text-transform:uppercase;font-size:1.05rem;color:var(--blue);letter-spacing:.08em}.wordmark-kicker{display:block;color:#fff;font-size:1.6rem;font-weight:800;letter-spacing:.02em}.site-header nav{display:flex;gap:2.3rem;font-weight:600;font-size:.9rem}.site-header nav a{color:#c9d0d7}.site-header nav a:hover{color:#fff}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;background:var(--blue);color:#071018;padding:.8rem 1.45rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border:2px solid var(--blue);transition:.2s ease}.button:hover{background:#fff;border-color:#fff}.button-small{min-height:44px;padding:.55rem 1rem;font-size:.82rem}.hero{min-height:680px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.08fr .92fr;gap:4rem;padding:90px max(24px,calc((100vw - var(--max))/2));overflow:hidden;position:relative}.hero:after{content:"";position:absolute;right:-12%;bottom:-45%;width:55%;height:80%;background:var(--blue);transform:rotate(-12deg);opacity:.08}.hero-copy,.hero-brand{position:relative;z-index:1}.eyebrow{margin:0 0 1rem;color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1,.section h2,.final-cta h2{font-family:var(--condensed);text-transform:uppercase;line-height:.9;margin:0;font-weight:800;letter-spacing:-.02em}.hero h1{font-size:clamp(4.6rem,8vw,7.4rem);max-width:720px}.hero h1 em{color:var(--blue);font-style:normal}.hero-lead{max-width:650px;color:#c6ced6;font-size:1.12rem;line-height:1.7;margin:2rem 0}.hero-actions{display:flex;align-items:center;gap:1.8rem}.text-link{font-weight:700;border-bottom:1px solid #606a75;padding:.75rem 0}.text-link span{color:var(--blue);margin-left:.4rem}.trust-list{display:flex;gap:2rem;padding:2.2rem 0 0;margin:2.2rem 0 0;border-top:1px solid #2a3139;list-style:none;color:#aeb8c2;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.trust-list li:before{content:"";display:inline-block;width:7px;height:7px;background:var(--blue);margin-right:.65rem}.hero-brand{align-self:center}.logo-window{height:340px;overflow:hidden;background:#05070a;border:1px solid #27303a;display:flex;align-items:center;position:relative}.logo-window:before,.logo-window:after{content:"";position:absolute;width:80px;height:5px;background:var(--blue);z-index:2}.logo-window:before{left:0;top:0}.logo-window:after{right:0;bottom:0}.logo-window img{width:100%;height:auto}.hero-note{display:flex;justify-content:space-between;gap:1rem;border-left:4px solid var(--blue);padding:1rem 1.2rem;background:#111720}.hero-note strong{font-family:var(--condensed);text-transform:uppercase;font-size:1.4rem}.hero-note span{color:#9da9b4;font-size:.8rem;align-self:center;text-transform:uppercase;letter-spacing:.08em}.section{padding:100px max(24px,calc((100vw - var(--max))/2))}.section-heading{display:grid;grid-template-columns:1.5fr .6fr;gap:4rem;align-items:end;margin-bottom:3.5rem}.section-heading h2,.commercial h2,.service-area h2{font-size:clamp(3rem,5vw,5rem)}.section-heading>p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:260px;background:#fff;transition:.2s ease}.service-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(7,16,24,.08)}.service-grid span,.project-number{color:var(--blue-2);font-weight:800;font-size:.77rem;letter-spacing:.12em;text-transform:uppercase}.service-grid h3,.project h3{font-family:var(--condensed);font-size:2rem;line-height:1;text-transform:uppercase;margin:2.8rem 0 .8rem}.service-grid p{color:var(--muted);font-size:.92rem;margin:0}.work{background:var(--ink);color:#fff}.section-heading.light>p{color:#a7b0ba}.project{border-top:1px solid #343b44;padding:4rem 0;display:grid;grid-template-columns:.65fr 1.35fr;gap:4rem}.project-copy{align-self:start;position:sticky;top:120px}.project-copy h3{font-size:clamp(2.8rem,4vw,4.4rem);margin:1rem 0 1.2rem}.project-copy>p:last-child{color:#aeb7c1}.before-after,.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.photo{overflow:hidden;background:#151b22;aspect-ratio:4/3}.photo img{height:100%;object-fit:cover}.before-after .photo,.photo-pair .photo{aspect-ratio:3/4}.before-after figcaption,.photo-pair figcaption,.camera-grid figcaption{color:#b2bbc4;font-size:.8rem;padding:.7rem 0;text-transform:uppercase;letter-spacing:.06em}.before-after figcaption span{background:var(--blue);color:#061019;font-weight:800;padding:.25rem .5rem;margin-right:.5rem}.project figure{margin:0}.camera-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.camera-main{grid-row:span 2}.camera-main .photo{height:calc(100% - 37px);aspect-ratio:auto}.camera-grid>.camera-main img{object-position:center}.commercial{display:grid;grid-template-columns:1.5fr .75fr;gap:1.2rem;background:#e7edf1}.commercial-card{background:#fff;padding:clamp(2rem,5vw,4.5rem)}.commercial-card>p:not(.eyebrow){max-width:700px;color:var(--muted);font-size:1.05rem}.commercial-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin:2rem 0}.commercial-tags span{border:1px solid var(--line);padding:.6rem .8rem;font-size:.8rem;font-weight:700;text-transform:uppercase}.standards{background:var(--ink);color:#fff;padding:3rem}.standards ol{list-style:none;padding:0;margin:2rem 0 0;counter-reset:steps}.standards li{counter-increment:steps;border-top:1px solid #343b44;padding:1.5rem 0;display:grid;grid-template-columns:2rem 1fr;gap:.2rem .8rem}.standards li:before{content:"0" counter(steps);color:var(--blue);font-family:var(--condensed);font-size:1.15rem;grid-row:span 2}.standards strong{font-family:var(--condensed);text-transform:uppercase;font-size:1.25rem}.standards span{font-size:.82rem;color:#a9b3bd}.service-area{background:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;align-items:center}.locations{display:flex;flex-wrap:wrap;gap:.6rem}.locations span{background:var(--paper);border-left:4px solid var(--blue);padding:.8rem 1rem;font-weight:700}.final-cta{text-align:center;background:var(--blue);color:#071018;padding:100px 24px}.final-cta .eyebrow{color:#071018}.final-cta h2{font-size:clamp(3.4rem,7vw,6.6rem)}.final-cta p:not(.eyebrow){font-size:1.05rem}.button-invert{background:var(--ink);color:#fff;border-color:var(--ink);font-size:1.2rem;margin-top:1rem}.button-invert:hover{background:#fff;color:var(--ink);border-color:#fff}footer{background:#05070a;color:#abb4bd;padding:3rem max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:end;font-size:.8rem}footer>div{display:flex;flex-direction:column}.footer-brand strong{font-family:var(--condensed);font-size:1.8rem;color:#fff;text-transform:uppercase;line-height:1}.footer-brand span{color:var(--blue);text-transform:uppercase;letter-spacing:.08em}.mobile-call{display:none}
.leak-grid,.shower-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.leak-grid figcaption,.shower-grid figcaption{color:#b2bbc4;font-size:.8rem;padding:.7rem 0;text-transform:uppercase;letter-spacing:.06em}.leak-grid .photo,.shower-grid .photo{aspect-ratio:4/3}.leak-grid .leak-team,.shower-grid .shower-build{grid-row:span 2}.leak-grid .leak-team .photo,.shower-grid .shower-build .photo{height:calc(100% - 37px);aspect-ratio:auto}.leak-grid .leak-team img,.shower-grid .shower-build img{object-position:center}.leak-grid img[alt^="Thermal"]{object-position:center 54%}
.hero-gallery{height:520px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.55rem}.hero-gallery figure{position:relative;overflow:hidden;margin:0;background:#151b22}.hero-gallery img{height:100%;object-fit:cover;transition:transform .35s ease}.hero-gallery figure:hover img{transform:scale(1.025)}.hero-gallery .grinder-before-top img,.hero-gallery .grinder-after-top img{object-position:center}.hero-gallery .crew-shot img{object-position:center 44%}.hero-gallery .shower-shot img{object-position:center 42%}.hero-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.5rem 1rem .8rem;background:linear-gradient(transparent,rgba(0,0,0,.9));font-family:var(--condensed);font-size:1.15rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#fff}.hero-gallery figcaption span{display:block;color:var(--blue);font-family:var(--body);font-size:.62rem;letter-spacing:.12em}
.bathroom-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.bathroom-grid figcaption{color:#b2bbc4;font-size:.8rem;padding:.7rem 0;text-transform:uppercase;letter-spacing:.06em}.bathroom-grid .photo{aspect-ratio:3/4}.bathroom-lavatory{grid-column:1/-1}.bathroom-lavatory .photo{aspect-ratio:16/8}.bathroom-grid img{object-position:center}.bathroom-lavatory img{object-position:center 54%}
@media(max-width:900px){.site-header nav{display:none}.hero{grid-template-columns:1fr;gap:3rem;padding-top:70px}.hero-brand{max-width:650px}.section-heading,.commercial,.service-area{grid-template-columns:1fr;gap:2rem}.service-grid{grid-template-columns:1fr 1fr}.project{grid-template-columns:1fr;gap:2rem}.project-copy{position:static}.camera-main,.leak-grid .leak-team,.shower-grid .shower-build{grid-row:auto}.camera-main .photo,.leak-grid .leak-team .photo,.shower-grid .shower-build .photo{height:auto;aspect-ratio:4/3}footer{grid-template-columns:1fr 1fr}footer p{grid-column:1/-1}}
@media(max-width:620px){body{padding-bottom:62px}.topbar{font-size:.66rem}.site-header{height:70px}.site-header .button{display:none}.wordmark-kicker{font-size:1.35rem}.hero{min-height:auto;padding-top:58px;padding-bottom:70px}.hero h1{font-size:3.9rem}.hero-lead{font-size:1rem}.hero-actions{align-items:stretch;flex-direction:column;gap:.7rem}.text-link{text-align:center}.trust-list{gap:.65rem;flex-direction:column}.hero-gallery{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto}.hero-gallery figure{aspect-ratio:3/4}.hero-gallery figcaption{font-size:.95rem;padding-left:.7rem;padding-right:.7rem}.hero-note{flex-direction:column}.section{padding-top:70px;padding-bottom:70px}.section-heading{margin-bottom:2.2rem}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:auto}.before-after,.photo-pair,.camera-grid,.leak-grid,.shower-grid{grid-template-columns:1fr}.before-after .photo,.photo-pair .photo{aspect-ratio:4/3}.project{padding:3rem 0}.project-copy h3{font-size:2.8rem}.commercial-card,.standards{padding:2rem}.service-area{gap:1rem}.final-cta{padding:75px 24px}footer{grid-template-columns:1fr}.mobile-call{display:flex;position:fixed;z-index:30;bottom:0;left:0;right:0;height:62px;background:var(--blue);color:#071018;align-items:center;justify-content:center;gap:.5rem;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;border-top:2px solid #fff}.mobile-call strong{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-grid article{transition:none}}

/* Call and text scheduling actions */
.button-secondary{background:transparent;color:#fff;border-color:#53606c}.button-secondary:hover{color:#071018}.hero-actions{flex-wrap:wrap;gap:.8rem}.hero-actions .text-link{margin-left:.5rem}.text-photo-note{max-width:620px;margin:1rem 0 0;color:#aeb8c2;font-size:.86rem}.final-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1.4rem}.final-actions .button-invert{font-size:1rem;margin-top:0}.button-light{background:#fff;color:var(--ink);border-color:#fff}.button-light:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.final-cta .final-note{font-size:.86rem;margin:.9rem auto 0;max-width:650px}.mobile-actions{display:none}
@media(max-width:620px){.hero-actions .text-link{margin-left:0}.text-photo-note{text-align:center}.final-actions{flex-direction:column}.final-actions .button{width:100%}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:30;bottom:0;left:0;right:0;height:62px;background:var(--blue);color:#071018;border-top:2px solid #fff}.mobile-actions a{display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:800}.mobile-actions a+a{background:var(--ink);color:#fff;border-left:2px solid #fff}}
@media(max-width:620px){.bathroom-grid{grid-template-columns:1fr}.bathroom-lavatory{grid-column:auto}.bathroom-grid .photo,.bathroom-lavatory .photo{aspect-ratio:4/3}}
