/* Public profiles, landing pages and editorial guides extend the search design. */
a.site-card{text-decoration:none;color:var(--ink)}
.dialog-profile-link{margin-top:18px;font-size:12px;font-weight:600}.dialog-profile-link a{text-underline-offset:4px}
.content-page{background:#fff}.content-page main{max-width:1240px;margin:auto;padding:0 0 38px}
.page-header{height:auto;min-height:84px}.page-header nav{gap:25px}.page-header nav a{white-space:nowrap}
.breadcrumbs{display:flex;gap:11px;align-items:center;flex-wrap:wrap;padding:23px 0;color:var(--muted);font-size:12px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}
.page-hero{background:var(--mint);padding:44px 46px;border:1px solid var(--line);border-radius:25px;position:relative;overflow:hidden;margin-bottom:32px}
.page-hero:after{content:"";position:absolute;width:250px;height:250px;border:40px solid #d8eee633;border-radius:50%;right:-75px;bottom:-115px;pointer-events:none}
.page-hero h1{font-size:clamp(30px,3.1vw,46px);line-height:1.16;letter-spacing:-1.7px;max-width:940px;margin:11px 0 17px}.page-hero .eyebrow{position:relative;z-index:1}
.page-lead{font-size:17px;line-height:1.7;max-width:820px;color:var(--muted)}.page-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:21px}.page-pill{border:1px solid #c8ded4;border-radius:22px;padding:6px 12px;background:#ffffff9c;font-size:12px;color:var(--green)}
.page-actions{display:flex;gap:21px;align-items:center;flex-wrap:wrap;margin-top:23px}.page-actions a{text-decoration:none}.page-hero>.dark-button{display:inline-flex;text-decoration:none;margin-top:23px}
.text-link{font-size:13px;font-weight:600;color:var(--green);text-underline-offset:4px}.content-section{margin:32px 0;scroll-margin-top:25px}.content-section>h2{font-size:25px;line-height:1.3;letter-spacing:-.7px;margin-bottom:17px}.content-section h3{font-size:17px;line-height:1.45;margin:20px 0 10px}.content-section>p{margin:14px 0;max-width:850px;color:var(--muted);line-height:1.8}.content-section>ul{padding-left:23px;color:var(--muted);max-width:850px}.content-section li{margin:9px 0;line-height:1.7}
.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:38px;align-items:start}.profile-main{min-width:0}.profile-main>.content-section:first-child{margin-top:0}.profile-sidebar{position:sticky;top:25px}.info-card{padding:23px;border:1px solid var(--line);border-radius:16px;margin:0 0 17px;background:#fcfdfb}.info-card h2,.info-card h3{font-size:16px;letter-spacing:-.3px;margin:0 0 14px}.info-card p{font-size:13px;color:var(--muted);line-height:1.75;margin:9px 0}.info-card a{font-size:13px;overflow-wrap:anywhere}.info-card .dark-button{display:flex;justify-content:center;color:white;text-decoration:none;margin-top:18px;font-size:12px}.info-card .price-highlight{font-size:28px;color:var(--green)}
.section-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.section-links>a{font-size:13px;font-weight:600;text-decoration:none;border:1px solid var(--line);padding:10px 14px;border-radius:12px;background:#fafcf9;color:var(--green)}.section-links>a:hover{background:var(--mint)}
.notice-box{padding:18px 21px;border:1px solid #e5dbc4;background:#fffaf0;border-radius:13px;color:#6b5a34;font-size:13px;margin:18px 0;line-height:1.75}.notice-box p+p{margin-top:8px}.notice-box strong{display:block;margin-bottom:5px}.notice-box a{text-underline-offset:3px}.content-page .detail-note{font-size:12px;color:var(--muted);line-height:1.75;margin:14px 0}.content-page details{margin:15px 0;border:1px solid var(--line);border-radius:13px;padding:15px 18px}.content-page details summary{font-weight:600;color:var(--green);font-size:14px;cursor:pointer}.content-page details[open] summary{margin-bottom:16px}.content-page .tariff-table{font-size:13px;margin:14px 0;width:100%;border-collapse:collapse}.content-page .tariff-table th{background:var(--mint);font-size:12px;line-height:1.5;padding:12px 14px;text-align:left}.content-page .tariff-table td{vertical-align:top;padding:13px 14px;border-bottom:1px solid var(--line)}.content-page .tariff-table td:last-child{white-space:nowrap;font-weight:700;color:var(--green)}.content-page .tariff-table small{display:block;font-size:11px;line-height:1.6;color:var(--muted);font-weight:400;margin-top:5px}.table-scroll{max-width:100%;overflow:auto}.table-scroll table{min-width:440px}.content-page .tariff-table a{font-size:11px;font-weight:500}.content-page .tariff-table .expired{opacity:.7}
.source-list{padding-left:20px;font-size:13px}.source-list a{color:var(--green);text-underline-offset:3px;overflow-wrap:anywhere}.source-list small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.source-list li{padding-bottom:9px}.content-page .opening-table{border-collapse:collapse;width:100%;font-size:13px}.opening-table td,.opening-table th{padding:12px;border-bottom:1px solid var(--line);text-align:left}.content-page .offer-list{list-style:none;padding:0}.content-page .offer-card{border:1px solid var(--line);border-radius:13px;padding:18px;margin:12px 0;background:#fafcf9}.offer-card h3{margin-top:0}.offer-card p{color:var(--muted);font-size:13px}
.bath-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:23px 0}.bath-tile{text-decoration:none;border:1px solid var(--line);border-radius:17px;padding:22px;display:flex;flex-direction:column;min-height:220px;background:#fff;transition:transform .18s,box-shadow .18s}.bath-tile:hover{transform:translateY(-3px);box-shadow:0 12px 24px #153c3b0e;border-color:#b9d1c8}.tile-category{color:var(--green);font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:600}.bath-tile h3{font-size:20px;letter-spacing:-.5px;line-height:1.35;margin:12px 0 8px}.bath-tile p{font-size:12px;color:var(--muted);margin-bottom:17px}.tile-bottom{border-top:1px solid var(--line);padding-top:14px;margin-top:auto;display:flex;gap:12px;align-items:center;justify-content:space-between}.tile-bottom>span:first-child{font-weight:700;font-size:16px;color:var(--green)}.tile-bottom small{font-size:10px;font-weight:400;display:block;line-height:1.6;margin-top:4px;color:var(--muted)}.tile-arrow{font-size:22px}.tile-evidence{font-size:10px;color:var(--green);margin-top:10px}
.directory-grid{columns:3;column-gap:40px}.directory-canton{break-inside:avoid;margin:20px 0 26px;padding:0 0 15px;border-bottom:1px solid var(--line)}.directory-canton h3{font-size:20px;margin-top:0}.directory-canton h3 small{font:12px 'DM Sans',sans-serif;background:var(--mint);padding:3px 9px;border-radius:20px;margin-left:7px}.directory-canton ul{padding:0;list-style:none}.directory-canton li{font-size:13px;margin:12px 0}.directory-canton li a{text-underline-offset:3px}.directory-canton li small{display:block;font-size:10px;color:var(--muted)}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.guide-card{display:flex;flex-direction:column;text-decoration:none;border:1px solid var(--line);background:#f8fbf6;border-radius:18px;padding:26px;min-height:285px}.guide-card:hover{border-color:#a6c8b6;background:#f1f8ec}.guide-card h2,.guide-card h3{font-size:22px;line-height:1.35;letter-spacing:-.6px;margin:13px 0 14px}.guide-card p{font-size:13px;color:var(--muted);line-height:1.75;margin-bottom:23px}.guide-link{font-size:12px;color:var(--green);font-weight:700;margin-top:auto}.editorial-promise{border-top:1px solid var(--line);padding-top:30px}.article-hero h1{max-width:940px}.article-meta{font-size:11px;color:var(--muted);margin:22px 0 0}.article-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:50px;align-items:start}.article-toc{position:sticky;top:25px;border:1px solid var(--line);border-radius:15px;padding:21px;font-size:12px;line-height:1.65;background:#fcfdfb}.article-toc strong{font-size:13px;display:block;margin-bottom:13px}.article-toc a{display:block;text-decoration:none;color:var(--muted);padding:8px 0;border-top:1px solid #edf1ef}.article-toc a:hover{color:var(--green)}.article-body{min-width:0;max-width:860px}.article-body>.content-section:first-child{margin-top:0}.article-body p{font-size:16px;line-height:1.9;color:#506965}.article-body li{font-size:15px;line-height:1.9}.editorial-table{width:100%;border-collapse:collapse;font-size:13px;border:1px solid var(--line);margin:15px 0}.editorial-table th{padding:13px;text-align:left;background:var(--mint);font-weight:600}.editorial-table td{padding:13px;border-top:1px solid var(--line);vertical-align:top;line-height:1.7}.editorial-table td:first-child{font-weight:600}.editorial-table tr:nth-child(even){background:#fcfdfb}
.google-reviews-section{border:1px solid var(--line);border-radius:19px;padding:28px;background:#fcfdfb}.google-reviews-section>h2{margin-top:10px}.google-reviews-section [data-google-content]:not(:empty){margin:20px 0}.google-reviews-section [data-google-load]{margin:12px 0}.google-reviews-section gmp-place-details{--gmp-mat-color-surface:#fcfdfb;--gmp-mat-color-primary:#075c58;--gmp-mat-font-family:'DM Sans',system-ui,sans-serif}.google-privacy{max-width:700px}.google-reviews-section[data-google-state=unavailable] .google-privacy{display:none}
.page-footer{border-top:1px solid var(--line);max-width:1240px;margin:0 auto;padding:30px 0}.page-footer p{font-size:12px;color:var(--muted)}.page-footer nav{display:flex;gap:18px;font-size:12px;margin-left:auto}.page-footer nav a{text-underline-offset:3px}
.home-discovery{max-width:1240px;margin:0 auto 55px;padding-top:20px}.home-section-heading h2{font-size:31px;letter-spacing:-1px;margin:9px 0}.home-section-heading>p:last-child{color:var(--muted);font-size:13px}.discovery-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0 18px}.discovery-links a{display:flex;justify-content:space-between;gap:13px;padding:20px;border-radius:15px;border:1px solid var(--line);text-decoration:none;font-weight:600;font-size:14px;background:var(--mint);line-height:1.55}.discovery-links a span{font-size:22px;flex-shrink:0}.discovery-links a:hover{background:#dfefe7}.home-theme-links{display:flex;gap:9px 20px;flex-wrap:wrap}.home-theme-links a{font-size:12px;color:var(--green);text-underline-offset:3px}.home-discovery .related-guides{margin-top:40px}.home-discovery .content-section>h2{font-size:26px}.home-discovery>.text-link{font-size:12px}
@media(min-width:1500px){.content-page main,.page-footer,.home-discovery{max-width:1280px}}
@media(max-width:1328px){.content-page main,.page-footer,.home-discovery{margin-left:44px;margin-right:44px}}
@media(max-width:1000px){.profile-layout{grid-template-columns:minmax(0,1fr) 240px;gap:25px}.bath-grid,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-grid{columns:2}.article-layout{grid-template-columns:190px minmax(0,1fr);gap:28px}.discovery-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.content-page main,.page-footer,.home-discovery{margin-left:22px;margin-right:22px}.page-header{flex-wrap:wrap;gap:17px;padding:18px 22px}.page-header nav{gap:17px;margin-left:auto}.page-header nav a{font-size:11px}.breadcrumbs{padding:18px 0;font-size:10px;gap:8px}.page-hero{padding:29px 26px;border-radius:19px;margin-bottom:25px}.page-hero h1{font-size:33px;letter-spacing:-1.2px}.page-lead{font-size:15px}.profile-layout{display:flex;flex-direction:column}.profile-sidebar{position:static;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-card{margin:0}.article-layout{display:flex;flex-direction:column;gap:25px}.article-toc{position:static;width:100%}.article-body p{font-size:15px}.content-section>h2{font-size:23px}.bath-tile{padding:20px}.bath-tile h3{font-size:18px}.guide-card{padding:23px}.guide-card h2,.guide-card h3{font-size:20px}.page-footer nav{flex-wrap:wrap;margin-left:0}.google-reviews-section{padding:23px}.home-discovery{margin-bottom:40px}.home-section-heading h2{font-size:27px}.page-footer p{margin-left:auto}}
@media(max-width:460px){.content-page main,.page-footer,.home-discovery{margin-left:18px;margin-right:18px}.page-header{padding:17px 18px}.page-header nav{width:100%;justify-content:space-between;margin:0;gap:10px}.page-header nav a:first-child{display:block}.page-hero{padding:25px 22px}.page-hero h1{font-size:30px;letter-spacing:-1px}.page-lead{font-size:14px}.page-pills{gap:6px}.page-pill{font-size:10px;padding:5px 9px}.page-actions{gap:16px}.page-actions .dark-button{font-size:12px}.bath-grid,.guide-grid{grid-template-columns:1fr;gap:15px}.bath-tile{min-height:195px}.directory-grid{columns:1}.profile-sidebar{grid-template-columns:1fr}.content-page .tariff-table td{padding:11px}.content-page .tariff-table{font-size:12px}.content-page .tariff-table small{font-size:10px}.guide-card{min-height:245px}.discovery-links{gap:10px}.discovery-links a{padding:16px;font-size:12px}.discovery-links a span{font-size:18px}.page-footer p{max-width:180px}.page-footer nav{gap:15px}.home-section-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.bath-tile{transition:none}.bath-tile:hover{transform:none}}

.page-eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--green)}.profile-sidebar address{font-style:normal;font-size:13px;line-height:1.75;color:var(--muted)}.section-links:where(ul){padding:0;list-style:none}.section-links>li{margin:0}.section-links>li>a{display:block;text-decoration:none;border:1px solid var(--line);border-radius:12px;padding:12px 15px;background:#fafcf9;font-size:12px}.section-links>li>a strong{display:block}.section-links>li>a span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.section-links>li>a:hover{background:var(--mint)}

.component-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0}.component-item{padding:17px;border:1px solid var(--line);border-radius:12px;background:#fcfdfb;font-size:13px}.component-item>strong{display:block;margin-bottom:8px}.component-item>small{display:block;font-size:11px;line-height:1.75;color:var(--muted)}.hours-list{list-style:none;padding:0;margin:15px 0}.hours-row{border:1px solid var(--line);border-radius:12px;padding:17px 20px;margin:12px 0;font-size:13px;background:#fcfdfb}.hours-row p{margin:7px 0;color:var(--muted)}.hours-row small{display:block;font-size:11px;color:var(--muted);line-height:1.75;margin:6px 0}.tariff-table caption{text-align:left;font-weight:600;margin:12px 0;font-size:13px}.tariff-past{opacity:.7}.discount-item h3{margin:0 0 12px}.discount-item h3 span{display:inline-block;color:var(--green);padding:3px 9px;border-radius:20px;background:var(--mint);margin-left:5px;font:600 12px DM Sans,system-ui,sans-serif}.discount-item .source-link{font-size:11px}.profile-nav{margin:22px 0 30px}.profile-nav a{padding:9px 12px}.filter-bar{flex-wrap:wrap}.type-filters{flex-wrap:wrap}.other-filters{margin-left:auto}@media(max-width:760px){.component-list{grid-template-columns:1fr}.other-filters{margin-left:0}}

/* Ratings remain separate from each bath link, so Google's own links stay usable. */
.site-card-main{display:flex;flex-direction:column;flex:1;text-decoration:none;color:var(--ink);min-width:0}.site-card-main .card-body{flex:1}.site-card>.card-rating{margin:0 18px 17px;padding-top:12px;border-top:1px solid var(--line)}
.bath-tile-main{display:flex;flex-direction:column;flex:1;text-decoration:none;color:var(--ink);min-width:0}.bath-tile>.card-rating{margin-top:17px;padding-top:13px;border-top:1px solid var(--line)}
.card-rating{min-width:0;font-size:12px;line-height:1.6;color:var(--muted)}.card-rating .rating-status{font-size:10px;line-height:1.65;font-weight:400;color:var(--muted);margin:0 0 5px;max-width:none}.rating-link{font-size:11px;font-weight:600;color:var(--green);text-underline-offset:3px}.card-rating [data-google-rating-content]:not(:empty){margin-bottom:7px}.card-rating gmp-place-details-compact{display:block;width:100%;height:auto;max-width:100%;color-scheme:light;--gmp-mat-color-primary:#075c58;--gmp-mat-font-family:'DM Sans',system-ui,sans-serif}
.ratings-toolbar{display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap;background:#f6faf6;border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin:22px 0}.ratings-toolbar>div{flex:1;min-width:200px}.ratings-toolbar strong{font-size:13px;display:block}.ratings-toolbar>div p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.65}.ratings-toolbar .dark-button{font-size:12px;padding:10px 14px}.ratings-toolbar .ratings-overview-status,.ratings-toolbar .ratings-overview-privacy{flex-basis:100%;font-size:11px;line-height:1.75;color:var(--muted);margin:0}.ratings-toolbar .ratings-overview-status:empty{display:none}.ratings-toolbar .ratings-overview-privacy a{text-underline-offset:3px}
.profile-hero-rating{margin-top:20px;max-width:410px;background:#fff;border:1px solid #c8ded4;border-radius:13px;padding:15px 18px}.directory-canton li>.card-rating{margin-top:8px;padding:10px 12px;background:#f8faf7;border:1px solid var(--line);border-radius:10px}.directory-canton li>.card-rating .rating-status{font-size:9px}.dialog-hero>.card-rating{margin-top:17px;max-width:400px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:12px}
@media(max-width:760px){.ratings-toolbar{padding:16px 18px;gap:12px}.ratings-toolbar .dark-button{font-size:11px}.site-card>.card-rating{margin-inline:14px}.profile-hero-rating{max-width:100%}.directory-canton li>.card-rating{padding:12px}.dialog-hero>.card-rating{max-width:100%}}
