/* One visual system for the public opening and closing selection guides. */
#pool-seasonal-draft.guide-unified{--guide-ink:#123b48;--guide-muted:#4e666c;--guide-border:#ccdad8;--guide-wash:#eff6f3;--guide-accent:#216750;background:#f5f7f5;color:var(--guide-ink);padding:28px 0 56px;font:16px/1.6 'Segoe UI',Arial,sans-serif}
#pool-seasonal-draft.guide-unified [hidden]{display:none!important}
#pool-seasonal-draft.guide-unified :is(.pg,.cg-guide-panel){width:min(1000px,calc(100% - 48px));max-width:1000px;margin:0 auto;padding:0}
#pool-seasonal-draft.guide-unified :is(.pg,.cg-guide-layout){background:#fff;border:1px solid var(--guide-border);border-radius:16px;box-shadow:0 8px 32px #123b4806;overflow:clip}
#pool-seasonal-draft.guide-unified :is(.pg,.cg-step-shell){font:16px/1.6 'Segoe UI',Arial,sans-serif}
#pool-seasonal-draft.guide-unified .cg-guide-layout{display:block}
#pool-seasonal-draft.guide-unified .cg-step-shell{background:transparent;border:0;box-shadow:none;border-radius:0;min-height:0}
#pool-seasonal-draft.guide-unified .guide-hero{padding:30px 32px 24px;background:#fff;border:0}
#pool-seasonal-draft.guide-unified .guide-hero-top{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:20px;flex-wrap:wrap}
#pool-seasonal-draft.guide-unified .guide-hero-top a{font-size:14px;font-weight:600;text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
#pool-seasonal-draft.guide-unified .guide-kicker{display:block;font:700 11px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:.12em;color:var(--guide-accent)}
#pool-seasonal-draft.guide-unified .guide-hero h1{font:400 clamp(34px,4.2vw,48px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:0 0 16px;color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified .guide-hero-lead{font-size:17px;line-height:1.6;max-width:68ch;margin:0 0 12px;color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified .guide-hero-note{font-size:14px;line-height:1.6;margin:0;color:var(--guide-muted)}
#pool-seasonal-draft.guide-unified .guide-helper{font-size:14px;color:var(--guide-muted);margin:16px 0 0}
#pool-seasonal-draft.guide-unified .guide-hero #pg-preselected-note{margin:8px 0 0;font-size:14px}
#pool-seasonal-draft.guide-unified .guide-offer{margin:20px 0 0;background:var(--guide-wash);border:1px solid #d6e5dc;border-radius:8px;padding:0 16px;color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified .guide-offer summary{font-size:14px;font-weight:650;min-height:48px;padding:12px 0;cursor:pointer}
#pool-seasonal-draft.guide-unified .guide-offer>strong{display:block;margin:5px 0 10px;font-size:15px}
#pool-seasonal-draft.guide-unified .guide-offer>p{font-size:14px;margin:0 0 14px;color:var(--guide-muted)}
#pool-seasonal-draft.guide-unified .guide-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:20px 32px;margin:0;background:#f4f8f6;border-block:1px solid var(--guide-border);gap:16px}
#pool-seasonal-draft.guide-unified .guide-progress li{display:flex;align-items:center;gap:10px;margin:0;color:var(--guide-muted);min-width:0}
#pool-seasonal-draft.guide-unified .guide-progress-number{display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:50%;border:1px solid #b4c7c1;font-size:14px;font-weight:700;background:white}
#pool-seasonal-draft.guide-unified .guide-progress strong{font-size:14px;line-height:1.4;display:block;font-weight:650}
#pool-seasonal-draft.guide-unified .guide-progress small{display:block;font-size:12px;line-height:1.5;margin-top:3px}
#pool-seasonal-draft.guide-unified .guide-progress .active{color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified .guide-progress .active .guide-progress-number{background:var(--guide-ink);border-color:var(--guide-ink);color:#fff}
#pool-seasonal-draft.guide-unified .guide-progress .complete .guide-progress-number{background:#d9eadd;color:#174e3e;border-color:#bed5c6}
#pool-seasonal-draft.guide-unified .guide-reset-actions{margin:20px 32px 0;padding:12px 14px;border-color:var(--guide-border);background:#fff;border-radius:8px}
#pool-seasonal-draft.guide-unified :is(.pg-qualify,.pg-body,.pg-bottom,.cg-step-panel){padding:28px 32px;border:0}
#pool-seasonal-draft.guide-unified :is(.pg-question-heading,.cg-step-panel h2){font:650 25px/1.28 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em;margin:0 0 16px;color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified .cg-step-panel>.eyebrow{font:650 12px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--guide-accent);margin:0 0 10px}
#pool-seasonal-draft.guide-unified :is(.pg-small,.cg-fine){font:400 14px/1.6 'Segoe UI',Arial,sans-serif;color:var(--guide-muted);margin:12px 0}
#pool-seasonal-draft.guide-unified :is(.cg-step-lead,.pg-desc,.guide-description){font:400 15px/1.6 'Segoe UI',Arial,sans-serif;color:var(--guide-muted);margin:0}
#pool-seasonal-draft.guide-unified :is(.pg-options,.guide-options,.cg-choices){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 16px;padding:0;border:0;min-width:0}
#pool-seasonal-draft.guide-unified :is(.pg-options.pg-two,.guide-two){grid-template-columns:repeat(2,minmax(0,1fr))}
#pool-seasonal-draft.guide-unified #closing-volume-panel .cg-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
#pool-seasonal-draft.guide-unified :is(.pg-option,.guide-option,.cg-choice){position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;width:100%;min-width:0;min-height:112px;padding:22px 20px;background:#fff;color:var(--guide-ink);border:1px solid #b8cbc6;border-radius:10px;box-shadow:none;text-align:left;font-family:'Segoe UI',Arial,sans-serif;line-height:1.5;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
#pool-seasonal-draft.guide-unified :is(.pg-option,.guide-option,.cg-choice):hover{background:#f4f9f6;border-color:#568677}
#pool-seasonal-draft.guide-unified :is(.pg-option,.guide-option,.cg-choice)[aria-pressed=true]{border-color:#216750;background:#edf7f0;box-shadow:inset 0 0 0 1px #216750}
#pool-seasonal-draft.guide-unified :is(.pg-option,.guide-option,.cg-choice):disabled{opacity:.65;cursor:default}
#pool-seasonal-draft.guide-unified :is(.pg-choice-name,.guide-choice-name,.cg-choice strong){display:block;font:650 18px/1.35 'Segoe UI',Arial,sans-serif;letter-spacing:-.015em;color:var(--guide-ink);margin:0}
#pool-seasonal-draft.guide-unified :is(.pg-price,.guide-price){display:block;font:700 30px/1.15 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em;margin:2px 0 4px;color:var(--guide-ink)}
#pool-seasonal-draft.guide-unified :is(.pg-select-action,.guide-select-action){display:block;font-size:14px;font-weight:700;color:#205b49;margin-top:auto;padding-top:12px;line-height:1.5}
#pool-seasonal-draft.guide-unified :is(.pg-recommended,.guide-recommended){display:block;font:700 10px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:.07em;color:#285b49;margin:0 0 1px}
#pool-seasonal-draft.guide-unified :is(.pg-option[data-opening],.guide-option[data-closing-opening]:not([data-closing-opening=none])){padding-top:22px}
#pool-seasonal-draft.guide-unified :is(.pg-option[data-opening]:not([data-opening=premium]),.guide-option[data-closing-opening]:not([data-closing-opening=premium]):not([data-closing-opening=none]))::before{content:'';display:block;height:16px;margin-bottom:1px}
#pool-seasonal-draft.guide-unified .guide-package-options>[data-closing-opening=none]{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 20px;min-height:0;padding:16px 20px}
#pool-seasonal-draft.guide-unified .guide-package-options>[data-closing-opening=none] .guide-price{font-size:22px;grid-column:2;grid-row:1/3;margin:0;align-self:center}
#pool-seasonal-draft.guide-unified .guide-package-options>[data-closing-opening=none] :is(.guide-description,.guide-select-action){font-size:14px;grid-column:1;padding:0}
#pool-seasonal-draft.guide-unified .cg-choice small{display:block;font:400 15px/1.6 'Segoe UI',Arial,sans-serif;color:var(--guide-muted);margin-top:8px}
#pool-seasonal-draft.guide-unified .cg-choice>span:last-child{font-size:18px;color:#205b49;line-height:1.5;margin-top:auto}
#pool-seasonal-draft.guide-unified .guide-payment-option .guide-price{margin-top:14px;font-size:30px}
#pool-seasonal-draft.guide-unified .guide-payment-option>span:last-child{padding-top:12px;font-size:14px;font-weight:700}
#pool-seasonal-draft.guide-unified #closing-ez-timing p{font-size:14px;line-height:1.6;color:var(--guide-muted);margin-bottom:12px}
#pool-seasonal-draft.guide-unified .cg-service-card h3{font:650 22px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:-.02em}
#pool-seasonal-draft.guide-unified .cg-estimate strong{font:700 30px/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em}
#pool-seasonal-draft.guide-unified .cg-estimate>span{font-size:13px;line-height:1.5}
#pool-seasonal-draft.guide-unified :is(.pg-poolsummary,.cg-pool-details){background:#f4f8f6;border:1px solid var(--guide-border);border-radius:8px;padding:16px 18px;margin:0;font-size:14px}
#pool-seasonal-draft.guide-unified .pg-step{border:0;border-top:1px solid var(--guide-border);margin:0;border-radius:0}
#pool-seasonal-draft.guide-unified .pg-stephead{padding:18px 32px;min-height:76px;gap:14px;background:white;color:var(--guide-ink);border:0;font-family:'Segoe UI',Arial,sans-serif}
#pool-seasonal-draft.guide-unified .pg-stephead[aria-expanded=true]{background:#f4f8f6}
#pool-seasonal-draft.guide-unified .pg-stephead strong{font-size:17px;font-weight:650}
#pool-seasonal-draft.guide-unified .pg-number{background:#eaf1ed;color:var(--guide-ink);height:30px;width:30px;font-size:14px}
#pool-seasonal-draft.guide-unified .pg-stephead[aria-expanded=true] .pg-number{background:var(--guide-ink);color:#fff}
#pool-seasonal-draft.guide-unified .pg-headsummary{font-size:14px;line-height:1.5;color:var(--guide-muted);margin-top:3px}
#pool-seasonal-draft.guide-unified :is(.pg-body,.cg-step-panel) details{margin-top:16px}
#pool-seasonal-draft.guide-unified :is(.pg-body,.cg-step-panel) summary{cursor:pointer;font-size:14px;font-weight:650;min-height:44px;padding:10px 0;line-height:1.6;color:#245e4b}
#pool-seasonal-draft.guide-unified .pg-detail{font-size:14px;line-height:1.65;color:var(--guide-muted)}
#pool-seasonal-draft.guide-unified .pg-detail :is(p,li){font-size:14px;line-height:1.65}
#pool-seasonal-draft.guide-unified :is(.pg-running,.cg-selected-summary){position:static;z-index:auto;margin:22px 32px;padding:20px 22px;border:1px solid var(--guide-border);border-radius:10px;background:#f0f6f3;color:var(--guide-ink);box-shadow:none}
#pool-seasonal-draft.guide-unified .cg-selected-summary{margin:24px 0}
#pool-seasonal-draft.guide-unified :is(.pg-totalrow,.cg-running-total){display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;border:0;padding:0;font-size:16px}
#pool-seasonal-draft.guide-unified :is(.pg-total,.cg-running-total strong){font:700 30px/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em}
#pool-seasonal-draft.guide-unified :is(.pg-running-caption,.pg-running-payment,.cg-selected-ez){font-size:14px;line-height:1.6;margin:10px 0 0}
#pool-seasonal-draft.guide-unified .guide-optional{padding-top:26px;margin-top:26px;border-top:1px solid var(--guide-border)}
#pool-seasonal-draft.guide-unified .guide-optional h3{font:650 23px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em;margin:8px 0 10px}
#pool-seasonal-draft.guide-unified .guide-bundle-note{padding:16px 18px;background:var(--guide-wash);border-radius:8px;font-size:14px;line-height:1.6;margin-top:24px}
#pool-seasonal-draft.guide-unified .guide-bundle-note button{margin-top:6px;color:#205b49;font-size:14px}
#pool-seasonal-draft.guide-unified .cg-closing-first{padding:22px;background:#edf7f0;border:2px solid #216750;border-radius:10px;margin-top:24px}
#pool-seasonal-draft.guide-unified .cg-closing-first h3{font:650 22px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:-.02em;margin-top:8px}
#pool-seasonal-draft.guide-unified .cg-base-price{font:700 32px/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em}
#pool-seasonal-draft.guide-unified .cg-closing-first-top{align-items:baseline;flex-wrap:wrap}
#pool-seasonal-draft.guide-unified .cg-closing-first .cg-closing-terms{font-size:14px}
#pool-seasonal-draft.guide-unified :is(.pg-button,.cg-button){display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:14px 20px;font:650 16px/1.5 'Segoe UI',Arial,sans-serif;text-align:left;border:1px solid var(--guide-ink);border-radius:8px;background:var(--guide-ink);color:white;white-space:normal;gap:16px}
#pool-seasonal-draft.guide-unified :is(.pg-button,.cg-button):hover{background:#205b49;border-color:#205b49}
#pool-seasonal-draft.guide-unified :is(.pg-linkbutton,.cg-text-button){font:600 14px/1.5 'Segoe UI',Arial,sans-serif;color:#245e4b;min-height:44px;white-space:normal}
#pool-seasonal-draft.guide-unified :is(.pg-lines,.cg-review-lines){font-size:15px;line-height:1.6}
#pool-seasonal-draft.guide-unified .cg-review-lines p{display:block;font-size:15px}
#pool-seasonal-draft.guide-unified .pg-bottom{background:#fff;border-top:1px solid var(--guide-border)}
#pool-seasonal-draft.guide-unified :is(.pg-contact-summary,.cg-contact-summary){padding:18px;background:#f0f6f3;border:1px solid var(--guide-border);border-left:3px solid #216750;border-radius:8px;font-size:14px;line-height:1.65;margin:20px 0}
#pool-seasonal-draft.guide-unified :is(.pg-form-grid,.cg-form-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}
#pool-seasonal-draft.guide-unified :is(.pg-form-field,.cg-field){display:flex;flex-direction:column;align-items:stretch;font:650 14px/1.5 'Segoe UI',Arial,sans-serif;gap:8px;min-width:0}
#pool-seasonal-draft.guide-unified :is(.pg-form-field,.cg-field) :is(input,select,textarea){min-width:0;max-width:100%;width:100%;min-height:50px;padding:12px;border:1px solid #879f98;border-radius:6px;background:white;color:var(--guide-ink);font:400 16px/1.5 'Segoe UI',Arial,sans-serif}
#pool-seasonal-draft.guide-unified :is(.pg-form-field,.cg-field) :is(small,p){font-size:13px;font-weight:400;color:var(--guide-muted)}
#pool-seasonal-draft.guide-unified :is(.pg-full,.cg-full-field){grid-column:1/-1}
#pool-seasonal-draft.guide-unified :is(button,input,select,textarea,summary):focus-visible{outline:3px solid #b37922;outline-offset:4px}
#pool-seasonal-draft.guide-unified :is(h2,button,[tabindex='-1']){scroll-margin-top:130px}
body[data-page=pool-closing-guide] .mobile-actions{display:none}
body:is([data-page=pool-seasonal-guide],[data-page=pool-closing-guide]) .site-header{position:static}
@media(max-width:680px){
 #pool-seasonal-draft.guide-unified{padding:18px 0 36px}
 #pool-seasonal-draft.guide-unified :is(.pg,.cg-guide-panel){width:calc(100% - 24px)}
 #pool-seasonal-draft.guide-unified .guide-hero{padding:22px 20px}
 #pool-seasonal-draft.guide-unified .guide-hero h1{font-size:34px}
 #pool-seasonal-draft.guide-unified .guide-hero-lead{font-size:16px}
 #pool-seasonal-draft.guide-unified .guide-progress{padding:16px 18px;gap:10px}
 #pool-seasonal-draft.guide-unified .guide-progress li{flex-direction:column;align-items:flex-start;gap:8px}
 #pool-seasonal-draft.guide-unified .guide-progress strong{font-size:12px}
 #pool-seasonal-draft.guide-unified .guide-progress small{display:none}
 #pool-seasonal-draft.guide-unified .guide-progress-number{flex:0 0 28px;width:28px;height:28px;font-size:12px}
 #pool-seasonal-draft.guide-unified :is(.pg-qualify,.pg-body,.pg-bottom,.cg-step-panel){padding:24px 20px}
 #pool-seasonal-draft.guide-unified :is(.pg-question-heading,.cg-step-panel h2){font-size:23px}
 #pool-seasonal-draft.guide-unified :is(.pg-options,.pg-options.pg-two,.guide-options,.guide-two,.cg-choices,#closing-volume-panel .cg-choices){grid-template-columns:minmax(0,1fr);gap:12px}
 #pool-seasonal-draft.guide-unified :is(.pg-option,.guide-option,.cg-choice){padding:20px;min-height:108px}
 #pool-seasonal-draft.guide-unified :is(.pg-option[data-opening]:not([data-opening=premium]),.guide-option[data-closing-opening]:not([data-closing-opening=premium]):not([data-closing-opening=none]))::before{display:none}
 #pool-seasonal-draft.guide-unified .pg-stephead{padding:18px 20px}
 #pool-seasonal-draft.guide-unified :is(.pg-running,.guide-reset-actions){margin:18px 20px}
 #pool-seasonal-draft.guide-unified .cg-selected-summary{margin:22px 0}
 #pool-seasonal-draft.guide-unified :is(.pg-form-grid,.cg-form-grid){grid-template-columns:minmax(0,1fr)}
 #pool-seasonal-draft.guide-unified .cg-service-card-top{flex-direction:column}
 #pool-seasonal-draft.guide-unified .cg-estimate{text-align:left;max-width:100%}
}
@media(prefers-reduced-motion:reduce){#pool-seasonal-draft.guide-unified *{scroll-behavior:auto}}

/* Compact, always-visible savings and EZ Pay eligibility. */
#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal{margin:18px 0;padding:13px 16px;border:1px solid #d9e5de;border-radius:7px;background:#f5f9f6}
#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal>p{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:baseline;gap:6px 14px;margin:0;font:400 14px/1.55 'Segoe UI',Arial,sans-serif;color:#3d5e53}
#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal>p+p{margin-top:8px}
#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal strong{font-weight:700;color:#205b49;white-space:nowrap}
#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal span{min-width:0}
@media(max-width:430px){#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal{padding:12px 14px}#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal>p{grid-template-columns:minmax(0,1fr);gap:2px}#pool-seasonal-draft.guide-unified .guide-offer.guide-offer-minimal>p+p{margin-top:10px}}
