/* Shared public-page spacing, actions and image rhythm. */
.visual-polish{--polish-line:#d4e0dc;--polish-green:#216450;--polish-soft:#f3f7f4}
.visual-polish main .button{border-radius:6px;min-height:48px;padding:13px 20px;font:650 15px/1.4 'Segoe UI',Arial,sans-serif;gap:18px}
.visual-polish main .button.outline{background:#fff;color:#173e48;border-color:#a3b8b2}
.visual-polish main .button.outline:hover{background:#f2f7f3;border-color:#376c5b}
.visual-polish main .text-link{min-height:44px;line-height:1.45}
.visual-polish main>.section{padding-block:40px}
.visual-polish main .section-heading{gap:28px;align-items:start;margin-bottom:26px}
.visual-polish main .section-aside{max-width:52ch;line-height:1.6}
.visual-polish main .service-hero{padding-block:24px 34px;gap:40px}
.visual-polish main .service-hero-copy{max-width:68ch}
.visual-polish main .service-lead{font-size:17px;line-height:1.65;max-width:60ch}
.visual-polish main .service-hero-photo img{height:310px;border-radius:10px;object-fit:cover}
.visual-polish main .service-hero-photo figcaption{font-size:12px;line-height:1.45;padding-top:7px}
.visual-polish .confidence-links{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:16px}
.visual-polish .confidence-links a{font-size:14px;line-height:1.5;min-height:40px;display:inline-flex;align-items:center}
.visual-polish .confidence-proof{margin-block:20px 30px;border-radius:8px}
.visual-polish .service-resources{gap:20px}
.visual-polish .service-fold>summary,.visual-polish .front-inline-details>summary,.visual-polish .package-allowances>summary{padding:17px 20px;min-height:52px;font-size:16px;line-height:1.45}
.visual-polish .service-fold,.visual-polish .package-allowances{border-color:var(--polish-line);border-radius:8px}
.visual-polish .review-faq summary{min-height:48px;padding-block:12px;font-size:17px;line-height:1.5}
.visual-polish .polish-starting-price{font-size:15px;color:#45616a;padding:12px 0;margin:0 0 10px;border-block:1px solid var(--polish-line)}
.visual-polish.polish-liner .service-hero-photo img{object-position:50% 58%}
/* Homepage routes are full-card links, with supplementary destinations below. */
.polish-home-services>h2{margin-bottom:24px}
.polish-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.polish-service-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--polish-line);border-radius:9px;overflow:hidden;text-decoration:none;background:#fff}
.polish-service-card img{width:100%;height:150px;object-fit:cover}
.polish-service-card>div{display:flex;flex-direction:column;flex:1;padding:18px}
.visual-polish .polish-service-card h3{font:650 21px/1.25 'Segoe UI',Arial,sans-serif;letter-spacing:-.02em;margin:0 0 10px}
.polish-service-card p{font-size:14px;line-height:1.55;color:#4a646a;margin:0 0 14px}
.polish-card-action{margin-top:auto;font-weight:650;font-size:14px;color:var(--polish-green)}
.polish-service-card:hover{border-color:#467c69;background:#f6faf7}
.polish-more-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 20px;margin-top:22px;padding-top:16px;border-top:1px solid var(--polish-line)}
.polish-more-services a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;text-decoration:none;font-size:14px;line-height:1.4;color:#235d4e}
.polish-more-services a:hover{text-decoration:underline}
.visual-polish .polish-season .simple-season-grid{display:block;max-width:1000px}
.polish-season .simple-season-grid>div{max-width:780px}
/* Package cards carry one consistent comparison, without a second table. */
.visual-polish main .polish-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.visual-polish main .polish-package{display:flex;flex-direction:column;padding:24px;background:#fff;border:1px solid var(--polish-line);border-radius:10px;min-width:0}
.visual-polish main .polish-package.opening-premium{border:2px solid #37745d;background:#f2f8f3;box-shadow:none}
.visual-polish main .polish-package header{min-height:228px;padding-top:26px;position:relative}
.visual-polish main .polish-package h3{font:700 22px/1.3 'Segoe UI',Arial,sans-serif;margin:0 0 10px;letter-spacing:-.02em}
.visual-polish main .polish-package .opening-recommended{position:absolute;top:-8px;left:0;display:inline-block;padding:3px 8px;background:#dceddf;color:#245c49;border-radius:4px;font:650 11px/1.4 'Segoe UI',Arial,sans-serif}
.visual-polish main .polish-package .front-visit-count{font-size:14px;line-height:1.4;margin:0 0 14px;color:#315e50;font-weight:650}
.visual-polish main .polish-package .price{font-size:38px;line-height:1.2;margin:0 0 2px;color:#123e4b}
.visual-polish main .polish-package .polish-price-band{font-size:13px;margin:0;line-height:1.5}
.visual-polish main .polish-package .polish-large-price{font-size:13px;line-height:1.5;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--polish-line)}
.polish-large-price strong{color:#173f48}
.polish-package-work{margin:16px 0 0}
.polish-package-work>div{padding:14px 0;border-top:1px solid var(--polish-line)}
.polish-package-work dt{font-weight:650;font-size:13px;color:#285e50;margin-bottom:5px}
.polish-package-work dd{font-size:15px;line-height:1.55;color:#405c63;margin:0}
.visual-polish main .polish-package .opening-value{font-size:14px;font-weight:650;line-height:1.5;color:#225e4d;margin:8px 0 12px}
.visual-polish main .polish-package .polish-package-chemicals{font-size:13px;line-height:1.55;margin:0 0 20px}
.visual-polish main .polish-package>.button{margin-top:auto}
.visual-polish main .polish-package .opening-ez{font-size:13px;line-height:1.5;margin:10px 0}
.visual-polish main .polish-package .front-package-detail{margin:8px 0 0;background:transparent;border:0;border-top:1px solid var(--polish-line);border-radius:0}
.visual-polish main .polish-package .front-package-detail>summary{padding:12px 0;font-size:14px;line-height:1.5;min-height:44px}
.visual-polish main .polish-package .front-package-detail h3{font-size:18px;margin:10px 0}
.visual-polish .polish-chemical-included{display:block;color:#285e50;font-size:13px;line-height:1.45;margin:9px 0;font-weight:650}
.polish-opening-chemicals{margin:14px 0;border:1px solid #d4e0dc;border-radius:7px;background:#f7faf7}
.polish-opening-chemicals>summary{font:650 14px/1.5 'Segoe UI',Arial,sans-serif;padding:13px 16px;cursor:pointer;min-height:48px;color:#245c4b}
.polish-opening-chemicals>div{padding:0 16px 16px;font-size:14px;line-height:1.6}
.polish-opening-chemicals p{font-size:14px;line-height:1.6;margin:10px 0}
/* Assistance remains available and expands in place, without a separate introductory panel. */
.visual-polish.front-guide .breadcrumbs{padding-block:12px;font-size:12px}
.visual-polish.front-guide #pool-seasonal-draft{margin-top:0}
.visual-polish.front-guide #pool-seasonal-draft .guide-hero{padding:20px 24px 10px}
.visual-polish.front-guide #pool-seasonal-draft .guide-hero h1{font-size:clamp(29px,3.5vw,44px);margin:10px 0}
.visual-polish.front-guide #pool-seasonal-draft .guide-hero-lead{font-size:16px;line-height:1.5;margin-bottom:7px}
.visual-polish.front-guide #pool-seasonal-draft .guide-hero-note{font-size:14px;line-height:1.45}
.polish-guide-tools{display:flex;flex-wrap:wrap;align-items:start;gap:0 20px;padding:0 24px}
.visual-polish.front-guide .polish-guide-tools .signup-help-link{padding:0;margin:0;font-size:14px;line-height:1.5}
.polish-guide-tools .signup-help-link a{display:inline-flex;align-items:center;min-height:44px}
.visual-polish.front-guide .polish-guide-tools .pg-sharing:not(.is-sharing){font-size:14px;max-width:none;width:auto;margin:0;padding:0;border:0;background:none;border-radius:0}
.visual-polish.front-guide .polish-guide-tools .pg-sharing:not(.is-sharing) h2{font:650 14px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:0;margin:0}
.visual-polish.front-guide .polish-guide-tools #pg-share-disclosure>summary{display:inline-flex;gap:8px;align-items:center;min-height:44px;padding:0;list-style:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.polish-guide-tools #pg-share-disclosure>summary::-webkit-details-marker{display:none}
.visual-polish.front-guide .polish-guide-tools #pg-share-disclosure>summary::after{content:'+';position:static;font-size:16px}
.visual-polish.front-guide .polish-guide-tools #pg-share-disclosure[open]>summary::after{content:'−'}
.polish-guide-tools .pg-sharing:has(details[open]){flex-basis:100%;padding-bottom:12px!important}
.polish-guide-tools .pg-share-explanation{max-width:70ch;padding:10px 14px;background:#f1f7f5;border:1px solid #cadcd6;border-radius:7px}
.polish-guide-tools #pg-share-status:empty{display:none}
#pool-seasonal-draft .polish-guide-tools .signup-help-link{margin:0;padding:0}
#pool-seasonal-draft .polish-guide-tools #pg-sharing:not(.is-sharing){margin:0;padding:0;flex-shrink:1}
#pool-seasonal-draft .polish-guide-tools #pg-sharing:not(.is-sharing) h2{font:650 14px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:0;margin:0}
#pool-seasonal-draft .polish-guide-tools #pg-share-disclosure{margin:0;padding:0;border:0;background:none;border-radius:0}
.visual-polish.front-guide #pool-seasonal-draft .guide-progress{padding:0 24px;margin:0 0 8px;gap:12px}
.visual-polish.front-guide #pool-seasonal-draft .guide-progress li{padding:8px 0}
.visual-polish.front-guide #pool-seasonal-draft .pg-qualify,.visual-polish.front-guide #pool-seasonal-draft .cg-step-panel{padding:20px 24px}
.visual-polish.front-guide #pool-seasonal-draft .pg-question-heading,.visual-polish.front-guide #pool-seasonal-draft .cg-step-panel>h2{font-size:25px;margin-bottom:16px}
.visual-polish.front-guide .guide-draft{margin:10px 24px 14px;padding:12px 14px;font-size:14px}
.visual-polish.front-guide .guide-draft .guide-draft-title{font-size:16px;margin-bottom:8px}
.visual-polish.front-guide .guide-draft>div{gap:8px}
.visual-polish.front-guide .guide-draft button{font-size:14px;padding:9px 12px}
.visual-polish.front-guide .guide-draft details>summary{font-size:13px;line-height:1.5;padding:10px 0;cursor:pointer}
.visual-polish.front-guide .guide-draft details p{margin:0 0 8px}
@media(max-width:900px){.polish-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-polish main .polish-plans{gap:12px}.visual-polish main .polish-package{padding:18px}.visual-polish main .polish-package h3{font-size:20px}.polish-more-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.visual-polish main .service-hero{gap:22px;padding-block:14px 26px}.visual-polish main .service-hero-photo img{height:230px}.visual-polish main .service-actions{gap:10px 18px}.visual-polish main .polish-plans{grid-template-columns:1fr;gap:18px}.visual-polish main .polish-package{padding:22px}.visual-polish main .polish-package header{min-height:0;padding-top:24px}.visual-polish main .polish-package .polish-package-work{margin-top:18px}.visual-polish main .polish-package>.button{margin-top:8px}.visual-polish main>.section{padding-block:30px}.visual-polish .service-fold>summary,.visual-polish .package-allowances>summary{padding:15px 16px}.visual-polish .polish-opening-hero .service-hero-photo img{height:195px}}
@media(max-width:560px){.visual-polish main h2{line-height:1.2}.visual-polish .polish-service-grid{grid-template-columns:1fr;gap:12px}.polish-service-card{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:stretch}.polish-service-card img{height:100%;min-height:124px;object-position:center 60%}.polish-service-card>div{padding:14px}.visual-polish .polish-service-card h3{font-size:19px;margin-bottom:6px}.polish-service-card p{font-size:14px;margin-bottom:8px}.polish-card-action{font-size:13px}.polish-more-services{gap:2px 18px;margin-top:18px}.polish-more-services a{font-size:14px}.visual-polish.front-guide .header-inner{padding-block:10px}.visual-polish.front-guide .brand-logo-frame{width:138px}.visual-polish.front-guide .menu-toggle{min-height:44px;padding:8px 12px}.visual-polish.front-guide #pool-seasonal-draft .guide-hero{padding:16px 18px 6px}.visual-polish.front-guide #pool-seasonal-draft .guide-hero h1{font-size:29px}.visual-polish.front-guide #pool-seasonal-draft .guide-hero-top{font-size:12px}.visual-polish.front-guide #pool-seasonal-draft .guide-progress{padding:0 18px;gap:10px}.visual-polish.front-guide #pool-seasonal-draft .guide-progress strong{font-size:12px}.visual-polish.front-guide #pool-seasonal-draft .pg-qualify,.visual-polish.front-guide #pool-seasonal-draft .cg-step-panel{padding:18px}.visual-polish.front-guide #pool-seasonal-draft .pg-question-heading,.visual-polish.front-guide #pool-seasonal-draft .cg-step-panel>h2{font-size:23px}.polish-guide-tools{padding:0 18px;gap:0 16px}.visual-polish.front-guide .guide-draft{margin-inline:18px}.visual-polish.front-guide #pool-seasonal-draft .pg-option,.visual-polish.front-guide #pool-seasonal-draft .cg-choice{padding:16px}.visual-polish.front-guide #pool-seasonal-draft .pg-choice-name,.visual-polish.front-guide #pool-seasonal-draft .cg-choice strong{font-size:17px}.visual-polish.front-guide .pg-sharing.is-sharing{max-height:42dvh;overflow:auto}}
@media(prefers-reduced-motion:reduce){.visual-polish *{scroll-behavior:auto!important}}

/* Earlier pricing and compact, readable mobile request controls. */
.closing-quick-prices{margin:18px 0 20px;padding:14px 0;border-block:1px solid #d4e0dc}
.closing-quick-prices p{display:flex;align-items:baseline;gap:16px;margin:0 0 8px;font-size:15px;line-height:1.5}
.closing-quick-prices strong{font:700 27px/1.2 'Segoe UI',Arial,sans-serif;color:#123e4b;min-width:68px}
.closing-quick-prices .closing-custom-price{display:block;font-size:13px;margin:10px 0 0;color:#45616a}
.closing-quick-prices a{text-underline-offset:3px}
body[data-page="contact-us"] .contact-intro .eyebrow{display:none}
body[data-page="contact-us"] .contact-intro h1{margin-bottom:10px}
body[data-page="contact-us"] .contact-intro .lead{margin:0;line-height:1.55}
body[data-page="contact-us"] .form-required-note{margin:0 0 12px;font-size:13px}
body[data-page="contact-us"] .confidence-service-summary{padding:10px 12px;margin-bottom:18px;gap:12px}
body[data-page="contact-us"] .confidence-service-summary p{display:none}
body[data-page="contact-us"] .confidence-service-summary strong{font-size:15px}
body[data-page="contact-us"] .confidence-service-summary button{min-height:44px;flex-shrink:0}
body[data-page="contact-us"] #form-mode{margin:12px 0;font-size:13px;line-height:1.5}
.visual-polish :is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid #98651f;outline-offset:3px}
@media(max-width:700px){
 body[data-page="contact-us"] main>.contact-section{padding-top:12px;gap:16px}
 body[data-page="contact-us"] .contact-intro h1{font-size:28px;line-height:1.15}
 body[data-page="contact-us"] .contact-intro .lead{font-size:15px}
 body[data-page="contact-us"] .form-panel{padding:16px}
 body:has(main input:focus,main textarea:focus,main select:focus)>.mobile-actions{display:none!important}
 .closing-quick-prices{margin:14px 0 18px}
 .closing-quick-prices p{font-size:14px;gap:12px}
 .closing-quick-prices .closing-custom-price{font-size:13px}
}
