/* Crest October 3 — one visual language across the complete website. */
.online-service-note{display:flex;gap:10px 22px;align-items:center;justify-content:center;flex-wrap:wrap;text-align:center;padding:18px 20px 23px;color:#364456;font-size:13px;line-height:1.65}.online-service-note strong{font-size:13px;color:var(--primary)}.online-service-note a{color:var(--secondary);font-weight:650;text-decoration:underline;text-underline-offset:3px}.home .online-service-note{margin-top:24px}.online-service-note+.section{padding-top:40px}
.faq-column summary{padding:0!important;min-height:44px;display:flex;align-items:center;gap:16px;font-size:16px;line-height:1.5}.faq-column summary:after{position:static;margin-left:auto;flex:none}.faq-column details{padding-block:0!important}.faq-column details>div,.faq-column details p{padding-block:0!important}.faq-column details p{margin:0 0 10px;font-size:15px;line-height:1.75}.faq-column details[open] summary{margin-bottom:5px}.faq-grid{gap:0 35px}
.benefit>.icon{width:42px;height:42px;flex:0 0 42px;padding:9px;border-radius:17px 5px;background:linear-gradient(140deg,#e8f7fa,#f3ebfa);box-sizing:content-box;box-shadow:0 8px 20px #2a2e7a08;transition:transform .25s}.benefit:hover>.icon{transform:translateY(-3px) rotate(-4deg)}.big-icon{background:linear-gradient(140deg,#e3f6f7,#f1e9fa);border-radius:20px 7px;box-shadow:0 8px 20px #2a2e7a08}.big-icon svg{overflow:visible}.menu-icon.reference-icon{box-shadow:0 4px 12px #2a2e7a08}.text-link .icon{color:#018c9d}
body:not(.home) .inner-hero{background:linear-gradient(160deg,#fff 3%,#f0f8fa 58%,#f3f1fa 78%,#fff);padding-bottom:44px}body:not(.home) .hero-copy{max-width:1100px}body:not(.home) .inner-hero h1{font-size:clamp(30px,3.7vw,49px);line-height:1.16;letter-spacing:-.7px}body:not(.home) .hero .intro{max-width:820px;margin-inline:auto;line-height:1.7}
body:not(.home) .split{gap:clamp(30px,5vw,76px);align-items:center}body:not(.home) .visual{border:0;box-shadow:none;position:relative;isolation:isolate;padding:18px;background:transparent;border-radius:0;overflow:visible}body:not(.home) .visual:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(125deg,#e2f2f5,#eae7f8);border-radius:45% 55% 34% 66% / 47% 42% 58% 53%;transform:rotate(-6deg)}body:not(.home) .visual img{border-radius:38px 15px 60px 18px;position:relative;max-width:100%;object-fit:contain}body:not(.home) .visual.original img{object-fit:cover}body:not(.home) .split.reverse .visual:before{transform:rotate(8deg);background:linear-gradient(130deg,#eeebfa,#dff2f3)}
body:not(.home) .section.wash{background:linear-gradient(180deg,#fff,#f2f9fa 48%,#fff)}.service-card,.industry-card{border:0!important;border-radius:26px 9px 30px 12px!important;box-shadow:0 12px 32px #2a2e7a0d;transition:transform .25s,box-shadow .25s}.service-card:hover,.industry-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #018c9d1a}.context-band{border-radius:35px 10px;background:linear-gradient(125deg,#eff8fa,#f0eefa);border:0}.portal-card,.contact-email-card{border-radius:36px 12px!important;border-color:#d9eef1!important;background:linear-gradient(135deg,#fff,#eff9fa)!important;box-shadow:0 15px 38px #2a2e7a0b}.contact-email-card .button{display:inline-flex;justify-content:center;gap:12px}.footer-online{font-size:14px!important;line-height:1.7!important}.footer-contact strong{font-size:14px}
.review-card{height:220px;min-height:220px;padding:20px 22px;box-sizing:border-box;border:1px solid #e5edf3;background:#fff;box-shadow:0 10px 30px #2a2e7a08}.review-person{margin-bottom:10px;min-height:48px}.review-person b{font-size:15px}.review-location{display:flex;gap:5px;align-items:center;font-weight:600;font-size:12px;color:#485868;line-height:1.45;margin-top:5px}.review-location .icon{width:15px;height:15px;flex:none}.review-card>p.review-excerpt{height:68px;margin-bottom:4px;font-size:14px;line-height:1.6}.review-card .review-read-more{margin-top:auto}.review-window+.review-window{margin-top:22px}.review-track.reverse{animation-direction:reverse}.review-window:hover .review-track,.review-track:hover{animation-play-state:running!important}.review-dialog h2{font-size:25px;margin-top:8px}.review-dialog .review-location{margin-bottom:20px}.review-dialog .review-full{font-size:17px;line-height:1.75}
@media(max-width:760px){.online-service-note{padding:15px 18px;gap:3px;margin-top:8px}.home .online-service-note{margin-top:10px}.faq-grid{gap:0}.faq-column summary{font-size:15px;min-height:44px;line-height:1.5}body:not(.home) .inner-hero{padding-bottom:28px}body:not(.home) .inner-hero h1{font-size:32px;letter-spacing:-.4px}.benefit>.icon{width:32px;height:32px;flex-basis:32px;padding:7px}body:not(.home) .visual{padding:12px}.review-card{width:300px;flex-basis:300px}.review-location{font-size:11px}}
@media(prefers-reduced-motion:reduce){.benefit:hover>.icon,.service-card:hover,.industry-card:hover{transform:none}.review-track{animation:none!important}}

body{overflow-x:clip}.review-window:nth-child(2){display:block}.review-track.reverse{animation-direction:reverse!important}
html{overflow-x:clip}
@media(max-width:760px){body:not(.home) .visual:before{inset:8px 16px;transform:rotate(-3deg)}body:not(.home) .split.reverse .visual:before{transform:rotate(3deg)}}

/* Noon release: owner-requested star row; the review card opens the full text. */
.review-rating{display:flex;align-items:center;gap:2px;margin:4px 0 3px;line-height:1;color:#e7a800}.review-star{width:14px;height:14px;display:block;fill:currentColor;stroke:#a36c00;stroke-width:.5;flex:none}.review-person{align-items:center;min-height:64px;margin-bottom:12px}.review-person b{line-height:1.35}.review-location{margin-top:2px}.review-card[role=button]{cursor:pointer;transition:border-color .2s,box-shadow .2s}.review-card[role=button]:hover{border-color:#9cdae0;box-shadow:0 10px 30px #018c9d12}.review-card[role=button]:focus-visible{outline:3px solid #018c9d;outline-offset:-3px}.review-dialog-person .review-rating{margin:6px 0}.review-dialog-person .review-star{width:17px;height:17px}.review-fallback .review-card{height:auto;min-height:220px}.review-fallback .review-excerpt{height:auto!important;max-height:none!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important}.review-dialog h2{overflow-wrap:anywhere}
