.service-photo-gallery-module__YH5MpW__gallery{scroll-margin-top:100px}.service-photo-gallery-module__YH5MpW__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.service-photo-gallery-module__YH5MpW__preview{background:var(--surface-strong);cursor:zoom-in;aspect-ratio:4/3;border:0;padding:0;display:block;position:relative;overflow:hidden}.service-photo-gallery-module__YH5MpW__preview img,.service-photo-gallery-module__YH5MpW__thumbnail img{object-fit:cover}.service-photo-gallery-module__YH5MpW__preview img{transition:transform .18s}.service-photo-gallery-module__YH5MpW__preview:hover img{transform:scale(1.025)}.service-photo-gallery-module__YH5MpW__gallery button:focus-visible{outline:3px solid var(--accent-blue);outline-offset:4px}.service-photo-gallery-module__YH5MpW__dialog{width:100%;max-width:none;height:100dvh;max-height:none;color:var(--foreground);background:#fafaf8;border:0;margin:0;padding:20px 28px;position:fixed;inset:0}.service-photo-gallery-module__YH5MpW__dialog[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:16px;display:grid}.service-photo-gallery-module__YH5MpW__dialog::backdrop{background:#000000a6}.service-photo-gallery-module__YH5MpW__dialogHeader{justify-content:space-between;align-items:center;gap:16px;display:flex}.service-photo-gallery-module__YH5MpW__dialogHeader h2{font-size:clamp(1.4rem,2.8vw,2rem)}.service-photo-gallery-module__YH5MpW__iconButton{border:1px solid var(--line);width:48px;height:48px;color:var(--primary);background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.service-photo-gallery-module__YH5MpW__iconButton:hover{background:var(--surface-strong)}.service-photo-gallery-module__YH5MpW__viewer{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:18px;min-height:0;display:grid}.service-photo-gallery-module__YH5MpW__photo{touch-action:pan-y pinch-zoom;grid-template-rows:minmax(0,1fr) auto;gap:14px;height:100%;min-height:0;margin:0;display:grid}.service-photo-gallery-module__YH5MpW__fullImage{min-height:0;position:relative}.service-photo-gallery-module__YH5MpW__fullImage img{object-fit:contain}.service-photo-gallery-module__YH5MpW__photo figcaption{text-align:center;color:var(--muted);gap:4px;line-height:1.4;display:grid}.service-photo-gallery-module__YH5MpW__imageCount{color:var(--primary);font-weight:600}.service-photo-gallery-module__YH5MpW__thumbnails{gap:8px;width:fit-content;max-width:100%;margin:0 auto;padding:5px;display:flex;overflow-x:auto}.service-photo-gallery-module__YH5MpW__thumbnail{background:var(--surface-strong);opacity:.65;border:0;flex:0 0 80px;height:60px;padding:0;position:relative}.service-photo-gallery-module__YH5MpW__thumbnail[aria-pressed=true]{outline:2px solid var(--primary);outline-offset:2px;opacity:1}@media (max-width:760px){.service-photo-gallery-module__YH5MpW__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-photo-gallery-module__YH5MpW__dialog{padding:12px}.service-photo-gallery-module__YH5MpW__dialog[open]{gap:12px}.service-photo-gallery-module__YH5MpW__viewer{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr 1fr;gap:12px}.service-photo-gallery-module__YH5MpW__photo{grid-area:1/1/auto/-1}.service-photo-gallery-module__YH5MpW__viewer>button:first-child{grid-area:2/1;justify-self:end}.service-photo-gallery-module__YH5MpW__viewer>button:last-child{grid-area:2/2;justify-self:start}.service-photo-gallery-module__YH5MpW__thumbnail{flex-basis:64px;height:48px}}@media (prefers-reduced-motion:reduce){.service-photo-gallery-module__YH5MpW__preview img{transition:none}}
.service-review-scroller-module__djhIfa__centered .service-review-heading{text-align:center;grid-template-columns:1fr}.service-review-heading .service-review-scroller-module__djhIfa__heading{color:var(--accent-blue-dark)}.service-review-scroller-module__djhIfa__summary{color:var(--muted);margin:8px 0 0;font-size:.85rem}.service-review-scroller-module__djhIfa__reviewsPage{min-height:70vh;padding:150px max(24px, calc((100% - var(--content)) / 2)) 96px;background:var(--surface-strong)}.service-review-scroller-module__djhIfa__reviewsPageShell{width:min(var(--content), 100%);margin:0 auto}.service-review-scroller-module__djhIfa__reviewsPageTitle{color:var(--accent-blue-dark);margin-bottom:42px;font-size:clamp(2.8rem,5vw,4.5rem)}.service-review-scroller-module__djhIfa__reviewsGrid{columns:3;column-gap:24px}.service-review-scroller-module__djhIfa__reviewsGrid .service-review-card{break-inside:avoid;width:100%;min-width:0;min-height:0;margin-bottom:24px}.service-review-scroller-module__djhIfa__reviewsGrid .service-review-card p{white-space:pre-line}@media (max-width:1000px){.service-review-scroller-module__djhIfa__reviewsGrid{columns:2}}@media (max-width:680px){.service-review-scroller-module__djhIfa__reviewsPage{padding-top:126px;padding-bottom:72px}.service-review-scroller-module__djhIfa__reviewsPageTitle{margin-bottom:30px}.service-review-scroller-module__djhIfa__reviewsGrid{columns:1}}
.tub-to-shower-page-module__5vy1xW__page{background:var(--surface)}.home-hero .tub-to-shower-page-module__5vy1xW__heroImage{object-position:65% center}.tub-to-shower-page-module__5vy1xW__sections{width:min(var(--content), calc(100% - 64px));margin:0 auto;padding-bottom:40px}.tub-to-shower-page-module__5vy1xW__section{border-top:1px solid var(--line);text-align:center;grid-template-columns:1fr;justify-items:center;gap:18px;padding:40px 0;display:grid}.tub-to-shower-page-module__5vy1xW__copy{max-width:740px;margin-inline:auto;font-size:1.075rem;line-height:1.75}.tub-to-shower-page-module__5vy1xW__section h2{color:var(--accent-blue-dark)}.tub-to-shower-page-module__5vy1xW__copy p+p{margin-top:18px}.tub-to-shower-page-module__5vy1xW__copy a,.tub-to-shower-page-module__5vy1xW__contact p a{text-underline-offset:4px;text-decoration:underline}.tub-to-shower-page-module__5vy1xW__copy a{color:var(--accent-blue-dark)}.tub-to-shower-page-module__5vy1xW__projects{width:min(var(--content), calc(100% - 64px));border-top:1px solid var(--line);margin:0 auto;padding:40px 0 64px;scroll-margin-top:96px}.tub-to-shower-page-module__5vy1xW__projectsHeading{text-align:center;max-width:760px;margin:0 auto 32px}.tub-to-shower-page-module__5vy1xW__projectsHeading h2{color:var(--accent-blue-dark)}.tub-to-shower-page-module__5vy1xW__contact{border-top:1px solid var(--line);background:var(--primary);color:var(--surface);padding:60px 32px}.tub-to-shower-page-module__5vy1xW__contactInner{width:min(var(--content), 100%);text-align:center;margin:0 auto}.tub-to-shower-page-module__5vy1xW__contact h2{color:var(--surface)}.tub-to-shower-page-module__5vy1xW__contact p{max-width:760px;margin:20px auto 26px;font-size:1.1rem;line-height:1.7}.tub-to-shower-page-module__5vy1xW__contact a[href^=tel\:]{white-space:nowrap}.tub-to-shower-page-module__5vy1xW__contact .button-gold{background:var(--secondary);color:#111}.tub-to-shower-page-module__5vy1xW__contact .button-gold:hover{background:#e4b65d}@media (max-width:760px){.tub-to-shower-page-module__5vy1xW__sections{width:calc(100% - 40px);padding-bottom:20px}.tub-to-shower-page-module__5vy1xW__section{gap:16px;padding:30px 0}.tub-to-shower-page-module__5vy1xW__projects{width:calc(100% - 40px);padding:30px 0 40px}.tub-to-shower-page-module__5vy1xW__contact{padding:40px 20px}}
.case-studies-module__ak68Ca__section{width:min(var(--content), calc(100% - 64px));border-top:1px solid var(--line);margin:0 auto;padding:40px 0 56px;scroll-margin-top:96px}.case-studies-module__ak68Ca__section>h2{color:var(--accent-blue-dark);text-align:center;margin-bottom:28px}.case-studies-module__ak68Ca__section :is(a,button,summary):focus-visible,.case-studies-module__ak68Ca__dialog :is(a,button):focus-visible{outline:3px solid var(--accent-blue);outline-offset:4px}.case-studies-module__ak68Ca__cards{gap:24px;display:grid}.case-studies-module__ak68Ca__card{color:var(--primary);background:#e3edf6;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;padding:40px;display:grid}.case-studies-module__ak68Ca__cardCopy{flex-direction:column;align-self:stretch;min-width:0;display:flex}.case-studies-module__ak68Ca__cardCopy h3{color:var(--primary);font-family:var(--font-jost), ui-sans-serif, system-ui, sans-serif;font-size:1.05rem;font-weight:700;line-height:1.3}.case-studies-module__ak68Ca__result{font-family:var(--font-eb-garamond), Georgia, serif;margin-top:14px;font-size:clamp(1.7rem,2.6vw,2.15rem);line-height:1.12}.case-studies-module__ak68Ca__review{color:var(--foreground);margin:22px 0 0;font-size:.98rem;line-height:1.7}.case-studies-module__ak68Ca__review blockquote{margin:10px 0 0}.case-studies-module__ak68Ca__review figcaption{margin-top:14px;font-size:.92rem;font-weight:700}.case-studies-module__ak68Ca__review figcaption a{color:inherit;text-underline-offset:3px;text-decoration:underline}.case-studies-module__ak68Ca__reviewSource{color:var(--muted);margin-top:2px;font-size:.85rem;font-weight:400;display:block}.case-studies-module__ak68Ca__readButton{color:var(--accent-blue-dark);cursor:pointer;font:inherit;text-underline-offset:5px;background:0 0;border:0;align-self:flex-start;align-items:center;gap:8px;margin-top:auto;padding:24px 0 0;font-size:1rem;font-weight:700;text-decoration:underline;list-style:none;display:inline-flex}.case-studies-module__ak68Ca__readButton::-webkit-details-marker{display:none}.case-studies-module__ak68Ca__readButton:hover{color:var(--primary)}.case-studies-module__ak68Ca__readButton svg,.case-studies-module__ak68Ca__closeButton svg{flex-shrink:0;width:20px;height:20px}.case-studies-module__ak68Ca__fallbackReader{margin-top:auto}.case-studies-module__ak68Ca__fallbackStory{color:var(--foreground);background:#fff;border-radius:12px;margin-top:20px}.case-studies-module__ak68Ca__fallbackStory .case-studies-module__ak68Ca__storyGrid{grid-template-columns:1fr}.case-studies-module__ak68Ca__cardImage{aspect-ratio:4/3;box-shadow:var(--shadow);border-radius:10px;position:relative;overflow:hidden}.case-studies-module__ak68Ca__cardImage img{object-fit:cover}.case-studies-module__ak68Ca__dialog{width:min(1030px,100vw - 50px);max-width:none;max-height:calc(100dvh - 48px);color:var(--foreground);overscroll-behavior:contain;background:#fff;border:0;border-radius:16px;margin:auto;padding:0;overflow:auto;box-shadow:0 28px 100px #00000054}.case-studies-module__ak68Ca__dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f2e46a8}.case-studies-module__ak68Ca__dialogTop{z-index:3;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--muted);background:#fffffff0;justify-content:space-between;align-items:center;gap:20px;padding:14px 28px;font-size:.82rem;display:flex;position:sticky;top:0}.case-studies-module__ak68Ca__closeButton{border:1px solid var(--line);width:36px;height:36px;color:var(--primary);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.case-studies-module__ak68Ca__storyHeading{padding:28px 36px 22px}.case-studies-module__ak68Ca__storyHeading h2{color:var(--primary);font-size:clamp(1.6rem,2.6vw,2rem);line-height:1.12}.case-studies-module__ak68Ca__storyGrid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:36px;padding:0 36px 32px;display:grid}.case-studies-module__ak68Ca__storyImage{border-radius:10px;width:100%;height:auto;display:block}.case-studies-module__ak68Ca__storyCopy{min-width:0;font-size:1rem;line-height:1.75}.case-studies-module__ak68Ca__storyCopy p+p{margin-top:16px}.case-studies-module__ak68Ca__storyPhotos{border-top:1px solid var(--line);padding:26px 36px 34px}.case-studies-module__ak68Ca__storyPhotos h3{color:var(--primary);margin-bottom:16px}.case-studies-module__ak68Ca__photoGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.case-studies-module__ak68Ca__photoGrid figure{margin:0}.case-studies-module__ak68Ca__photoFrame{aspect-ratio:1;background:var(--surface-strong);border-radius:8px;position:relative;overflow:hidden}.case-studies-module__ak68Ca__photoFrame img{object-fit:cover}.case-studies-module__ak68Ca__photoGrid figcaption{color:var(--muted);margin-top:8px;font-size:.85rem;line-height:1.45}@media (max-width:900px){.case-studies-module__ak68Ca__card{grid-template-columns:1fr;gap:24px}.case-studies-module__ak68Ca__cardImage{order:-1}}@media (max-width:760px){.case-studies-module__ak68Ca__section{width:calc(100% - 40px);padding:30px 0 40px}.case-studies-module__ak68Ca__card{border-radius:12px;padding:24px 20px}.case-studies-module__ak68Ca__result{font-size:1.55rem}.case-studies-module__ak68Ca__readButton{padding-top:20px}.case-studies-module__ak68Ca__dialog{border-radius:12px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.case-studies-module__ak68Ca__dialogTop{padding:12px 18px}.case-studies-module__ak68Ca__storyHeading{padding:22px 20px 18px}.case-studies-module__ak68Ca__storyGrid{grid-template-columns:1fr;gap:22px;padding:0 20px 24px}.case-studies-module__ak68Ca__storyPhotos{padding:22px 20px 26px}.case-studies-module__ak68Ca__photoGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
.home-hero .garage-builder-page-module__ytvIyW__heroImage{object-position:20% center}
