:root{--color-cream:#fbf3de;--color-cream-light:#fffcf3;--color-cream-border:#ede1c2;--color-cream-border-light:#f1e7cc;--color-navy:#16375c;--color-navy-dark:#0e2942;--color-navy-darker:#0a2138;--color-navy-border:#1e4670;--color-yellow:#eebd2a;--color-yellow-shadow:#b8890b;--color-yellow-light:#f4d876;--color-gold:#d99c0a;--color-ink:#2c2a24;--color-ink-soft:#423f35;--color-ink-softer:#55523f;--color-ink-muted:#6b6858;--color-mist:#dce6ef;--color-mist-soft:#c9d6e3;--color-mist-softer:#9fb4c9;--color-mist-faint:#7e93a8;--color-mist-faintest:#6e86a0;--cream:var(--color-cream);--cream-light:var(--color-cream-light);--border:var(--color-cream-border);--navy:var(--color-navy);--navy-dark:var(--color-navy-dark);--navy-deep:var(--color-navy-darker);--yellow:var(--color-yellow);--gold:var(--color-gold);--ink:var(--color-ink);--ink-soft:var(--color-ink-soft);--muted:var(--color-ink-muted)}
.modal{background:rgba(22,55,92,.38);backdrop-filter:blur(2px)}.quote-modal-panel{width:min(660px,calc(100% - 30px));border-radius:22px;background:var(--cream-light);box-shadow:0 24px 70px rgba(10,33,56,.22)}.quote-modal-panel .modal-close{right:25px;top:20px;color:var(--navy)}.quote-modal-panel h2{font:800 38px/1.1 var(--heading);color:var(--navy)}.quote-modal-panel>p{color:var(--color-ink-muted);line-height:1.55}.quote-modal-panel input{background:#fff;border:1px solid var(--color-mist-soft);border-radius:12px}.quote-modal-panel input:focus{outline:2px solid var(--navy);outline-offset:2px}.quote-modal-panel .button{box-shadow:0 5px 0 var(--color-yellow-shadow);border-radius:12px}.cart-drawer{background:var(--cream-light);padding:0;box-shadow:-12px 0 40px rgba(10,33,56,.18)}.drawer-head{padding:23px 28px}.cart-items{padding:25px 28px}.cart-line{padding:18px 0}.cart-line strong{font:700 16px/1.35 var(--heading);color:var(--navy)}.cart-line small{color:var(--gold);font-size:15px}.cart-total{border-top:1px solid var(--border);padding:24px 28px;font-weight:800}.cart-drawer>.button{margin:0 28px;padding:16px}.cart-drawer>.fine-print{padding:0 28px 25px}.hero-saving{border-left:5px solid var(--yellow);padding:14px 22px 14px 14px}.hero-saving i{background:#dce6ef}.hero-saving i svg{width:22px;height:22px}.hero-saving span{font-size:16px}.hero-saving strong{font-size:20px}
@media(max-width:700px){.quote-modal-panel{padding:35px 24px}.quote-modal-panel h2{font-size:31px}.cart-drawer{max-width:100%}}
.hero-saving{border-left:0;padding:14px 22px 14px 18px;gap:15px}.hero-saving-line{display:block;width:5px;height:58px;border-radius:99px;background:var(--yellow);flex-shrink:0}.hero-saving i{background:var(--color-mist);width:52px;height:52px;min-width:52px}.hero-saving i svg{width:23px;height:23px}

/* Final component fixes. */
.final-cta .cta-actions a.button.button-navy{color:var(--cream-light);border-bottom:0;text-decoration:none}.final-cta .cta-actions a.button.button-navy:hover,.final-cta .cta-actions a.button.button-navy:focus{color:var(--cream-light)}.bottom-quote{font-size:14px;font-style:italic;color:var(--color-ink-muted);line-height:22.5px;background:var(--color-cream);padding:20px 16px;border-radius:12px}.carousel-arrow{top:50%;transform:translateY(-50%)}.carousel-arrow.prev{transform:translate(-0px,-50%)}.carousel-arrow.next{transform:translate(0,-50%)}.other-uses .info-note{display:flex;align-items:center;gap:18px;max-width:620px;margin:28px auto 0;padding:20px 24px;border-radius:18px;background:var(--color-cream-light);box-shadow:0 10px 30px rgba(22,55,92,.12);text-align:left}.info-note-line{display:block;width:5px;height:74px;min-width:5px;border-radius:99px;background:var(--color-yellow)}.info-note-icon{display:grid;place-items:center;width:64px;height:64px;min-width:64px;border-radius:50%;background:var(--color-mist);color:var(--color-navy)}.info-note-icon svg{width:29px;height:29px}.other-uses .info-note strong{font:700 20px/1.4 var(--heading);color:var(--color-navy)}
@media(max-width:700px){.guarantee i{width:20%;min-width:46px;max-width:58px}.other-uses .info-note{gap:12px;padding:17px 16px;border-radius:15px}.info-note-line{height:60px;width:4px;min-width:4px}.info-note-icon{width:50px;height:50px;min-width:50px}.info-note-icon svg{width:23px;height:23px}.other-uses .info-note strong{font-size:16px;line-height:1.35}}
@media(max-width:420px){.other-uses .info-note{align-items:center}.info-note-line{height:52px}.info-note-icon{width:44px;height:44px;min-width:44px}.other-uses .info-note strong{font-size:14px}}

/* Pole parts card and real chatbot SVG icon. */
.poles .parts-strip{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;max-width:760px;margin:30px auto 0;padding:30px 34px;background:var(--color-cream-light);border:1px solid var(--color-cream-border);border-radius:18px;text-align:left;box-shadow:0 8px 24px rgba(22,55,92,.08)}.poles .parts-strip img{width:min(360px,100%);height:135px;object-fit:contain;background:#fff;border:1px solid var(--color-cream-border);border-radius:12px}.poles .parts-strip p{width:100%;margin:0;font-size:18px;line-height:1.55;color:var(--color-ink-soft)}.poles .parts-strip strong{font:700 18px var(--heading);color:var(--color-navy)}.poles .parts-strip span{font-weight:400;color:var(--color-ink-muted)}.floating-chat{display:grid;place-items:center;background:var(--color-cream-light);color:var(--color-gold)}.floating-chat>svg{width:27px;height:27px;fill:var(--color-gold);stroke:var(--color-gold)}
@media(max-width:700px){.poles .parts-strip{padding:24px 20px;gap:20px}.poles .parts-strip img{height:115px}.poles .parts-strip p{font-size:16px}.poles .parts-strip strong{font-size:16px}}

/* Shared Product Info/User Guide tabs. */
.anchor-nav{gap:10px 12px;padding:12px max(20px,calc((100vw - 980px)/2))}.anchor-nav a{flex:0 0 auto;padding:10px 18px;border-radius:999px;font-size:15px;line-height:1.2;white-space:nowrap;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease}.anchor-nav a:hover,.anchor-nav a:focus-visible{background:var(--color-cream-border-light);color:var(--color-navy-dark)}.anchor-nav a.is-active,.anchor-nav a[aria-current="location"]{background:var(--color-navy);color:var(--color-cream-light);box-shadow:0 6px 16px rgba(22,55,92,.18)}

/* Original Next.js image and card depth. */
.hero-frame,.hero-visual>img,.pi-hero img,.built-intro img,.story-page-hero img,.product-main-image,.product-detail-image,.gallery-feature-media>img,.gallery-video-card,.vacuum-head-image{box-shadow:0 20px 45px rgba(22,55,92,.18)}
.product-card,.shop-product-card,.pool-cards article,.feature-card,.quote-card,.guide-cards article,.trouble-card,.spec-cards article,.pole-grid article,.equipment-grid>div,.story-category article,.installation-card,.contact-original-grid>aside,.contact-original-form,.replaceable-parts,.parts-strip{box-shadow:0 6px 20px rgba(22,55,92,.10);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover,.shop-product-card:hover,.pool-cards article:hover,.feature-card:hover,.quote-card:hover,.guide-cards article:hover,.spec-cards article:hover,.pole-grid article:hover,.equipment-grid>div:hover,.story-category article:hover,.installation-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(22,55,92,.16)}

/* Quote cart drawer. */
.cart-drawer{width:min(630px,100%)}.drawer-head{min-height:94px}.drawer-head h2{display:flex;align-items:center;gap:13px;margin:0;font-size:23px}.drawer-head h2 svg{width:28px;height:28px;fill:none;stroke:currentColor}.drawer-head button{color:var(--color-navy);line-height:1}.cart-items{font-size:15px}.cart-items>p{margin:28px 0;color:var(--color-ink)}.cart-line strong{font-size:15px}.cart-line small{font-size:14px}.cart-line button{align-self:center;color:var(--color-ink-muted);font-size:13px;font-weight:700}.cart-total{font-size:18px;color:var(--color-navy)}.cart-drawer>.button{font-size:17px;line-height:1.25}.cart-drawer>.fine-print{color:var(--color-ink-muted);font-size:12px;line-height:1.45}
@media(max-width:760px){.anchor-nav,.anchor-nav.guide-nav{width:100%;max-width:100vw;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 5px;padding:7px 8px 8px;overflow:visible;scroll-snap-type:none}.anchor-nav a{padding:7px 9px;font-size:11.5px;line-height:1.1;white-space:nowrap;scroll-snap-align:none}.cart-drawer{width:100%}.drawer-head{min-height:82px;padding:19px 22px}.drawer-head h2{font-size:21px}.drawer-head h2 svg{width:25px;height:25px}.cart-items{padding:20px 22px}.cart-total{padding:21px 22px}.cart-drawer>.button{margin-inline:22px;font-size:16px}.cart-drawer>.fine-print{padding-inline:22px}}
@media(max-width:390px){.anchor-nav,.anchor-nav.guide-nav{gap:3px;padding-inline:5px}.anchor-nav a{padding:6px 7px;font-size:10.5px}}

/* ACF-managed Refurbishing Program icon. */
.refurbish .refurbish-icon{overflow:hidden;padding:0}.refurbish .refurbish-icon img{width:25px;height:25px;object-fit:contain;display:block}.refurbish .refurbish-icon:has(img){background:var(--color-yellow)}

/* Compact Get a Free Quote modal typography. */
.quote-modal-panel h2{font-size:24px;line-height:1.15}.quote-modal-panel>p,.quote-modal-panel .quote-form,.quote-modal-panel label,.quote-modal-panel label>span,.quote-modal-panel input,.quote-modal-panel input::placeholder,.quote-modal-panel .quote-form-note,.quote-modal-panel .form-status,.quote-modal-panel .button{font-size:14px}.quote-modal-panel>p{line-height:1.55}.quote-modal-panel label{line-height:1.35}.quote-modal-panel input{padding:13px 15px}.quote-modal-panel .button{padding:14px 20px}
@media(max-width:700px){.quote-modal-panel h2{font-size:24px}}

/* Terms & Conditions — ACF Free managed legal page. */
.legal-page{background:var(--color-cream-light)}.legal-hero{padding:52px 0 38px;background:var(--color-cream)}.legal-hero h1{margin:0 0 10px;font:800 clamp(30px,4vw,42px)/1.1 var(--heading);color:var(--color-navy)}.legal-hero p{max-width:700px;margin:0;color:var(--color-ink-muted);font-size:15px}.legal-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start;padding-top:0;padding-bottom:80px}.legal-nav{position:sticky;top:125px;padding:22px 20px;border:1px solid var(--color-cream-border);border-radius:0 0 14px 14px;background:var(--color-cream);box-shadow:0 6px 20px rgba(22,55,92,.06)}.legal-nav>strong{display:block;margin-bottom:10px;color:var(--color-ink-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.legal-nav nav{display:grid;gap:5px}.legal-nav a{padding:3px 0;color:var(--color-navy);font-size:13px;line-height:1.35}.legal-nav a:hover,.legal-nav a:focus-visible{color:var(--color-gold);text-decoration:underline}.legal-content{padding-top:4px}.legal-section{padding:0 0 36px;scroll-margin-top:135px}.legal-section h2{margin:0 0 12px;font-size:20px;line-height:1.25}.legal-rich-text{color:var(--color-ink-soft);font-size:14px;line-height:1.75}.legal-rich-text p{margin:0 0 14px}.legal-rich-text h3{margin:20px 0 8px;font-size:15px}.legal-rich-text a{color:var(--color-navy);font-weight:700;text-decoration:underline;text-decoration-color:var(--color-yellow)}.legal-rich-text ul,.legal-rich-text ol{padding-left:22px}.legal-rich-text blockquote{margin:16px 0;padding:12px 15px;border:1px solid var(--color-yellow);border-radius:5px;background:rgba(238,189,42,.14)}.legal-editor-note{padding:12px 15px;border:1px dashed var(--color-yellow-shadow);border-radius:6px;color:var(--color-ink-muted);font-size:13px}.legal-contact{padding-top:20px;border-top:1px solid var(--color-cream-border);color:var(--color-ink-muted);font-size:13px}.legal-contact strong{display:block;color:var(--color-navy)}
@media(max-width:760px){.legal-hero{padding:38px 0 30px}.legal-layout{grid-template-columns:1fr;gap:28px;padding-bottom:55px}.legal-nav{position:static;margin-inline:-1px;padding:16px;border-radius:0 0 12px 12px}.legal-nav nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px}.legal-nav a{font-size:12px}.legal-section{padding-bottom:30px;scroll-margin-top:90px}.legal-section h2{font-size:19px}.legal-rich-text{font-size:13px;line-height:1.7}}
@media(max-width:390px){.legal-nav nav{grid-template-columns:1fr}}

/* Production form honeypot: available to bots, visually hidden from visitors. */
.pw-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* WooCommerce storefront integration. */
.woocommerce-shop-grid .shop-product-card{display:flex;flex-direction:column}.woocommerce-shop-grid .shop-card-body{display:flex;flex:1;flex-direction:column}.woocommerce-shop-grid .shop-card-body>p{flex:1}.woocommerce-price{display:block;color:var(--color-gold);font:800 18px/1.3 var(--heading)}.woocommerce-price del{opacity:.55;font-size:.85em}.woocommerce-price ins{text-decoration:none}.stock-status{display:block;margin:5px 0 12px;font-size:12px}.stock-status.in-stock{color:#427536}.stock-status.out-of-stock{color:#9b3028}.wc-cart-link{display:inline-grid;place-items:center;text-decoration:none}.pw-woocommerce{padding:60px 0 90px;background:var(--color-cream-light)}.pw-woocommerce .woocommerce-breadcrumb{margin-bottom:28px;color:var(--color-ink-muted);font-size:13px}.pw-woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px}.pw-woocommerce div.product .woocommerce-product-gallery,.pw-woocommerce div.product .summary{width:auto;float:none}.pw-woocommerce div.product .woocommerce-product-gallery{padding:30px;border-radius:16px;background:#fff;box-shadow:0 20px 45px rgba(22,55,92,.18)}.pw-woocommerce div.product .product_title{font:800 clamp(30px,4vw,46px)/1.1 var(--heading);color:var(--color-navy)}.pw-woocommerce div.product .price{color:var(--color-gold);font:800 24px var(--heading)}.pw-woocommerce .quantity .qty{min-height:46px;border:1px solid var(--color-cream-border);border-radius:8px}.pw-woocommerce button.button,.pw-woocommerce a.button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout button.button{border-radius:9px;background:var(--color-navy);color:#fff;font-weight:800}.pw-woocommerce button.button:hover,.pw-woocommerce a.button:hover{background:var(--color-gold);color:var(--color-navy)}.pw-woocommerce .related.products{grid-column:1/-1;margin-top:50px}.pw-woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.pw-woocommerce ul.products::before,.pw-woocommerce ul.products::after{display:none}.pw-woocommerce ul.products li.product{width:auto!important;margin:0!important;padding:18px;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(22,55,92,.1)}.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--color-yellow);background:var(--color-cream);color:var(--color-ink)}
@media(max-width:900px){.pw-woocommerce div.product{grid-template-columns:1fr}.pw-woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.pw-woocommerce{padding-top:35px}.pw-woocommerce ul.products{grid-template-columns:1fr}.woocommerce-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce-shop-grid .shop-card-body{padding:15px}.woocommerce-shop-grid .shop-card-body h3{font-size:14px}.woocommerce-shop-grid .shop-card-body p{font-size:12px}.woocommerce-shop-grid .shop-view-button{font-size:12px;padding:9px}}

/* Single product Featured Products section */
.single-featured-products {
	margin-top: 20px;
	padding: 60px 0 75px;
	background: #fbf3de;
}

.single-featured-products h2 {
	margin: 0 0 35px;
	color: #16375c;
	font-size: 30px;
	line-height: 1.2;
}

.single-featured-products .woocommerce {
	width: 100%;
}

.single-featured-products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 22px;
	margin: 0 !important;
}

.single-featured-products ul.products::before,
.single-featured-products ul.products::after {
	display: none !important;
}

.single-featured-products ul.products li.product {
	display: flex;
	float: none !important;
	flex-direction: column;
	width: 100% !important;
	min-height: 440px;
	margin: 0 !important;
	padding: 18px !important;
	overflow: hidden;
	border: 1px solid rgba(22, 55, 92, 0.08);
	border-radius: 14px;
	background: #fffcf3;
	box-shadow: 0 6px 20px rgba(22, 55, 92, 0.10);
	transition:
		transform 0.25s ease,
		box-shadow 0.25s ease;
}

.single-featured-products ul.products li.product:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 34px rgba(22, 55, 92, 0.16);
}

.single-featured-products ul.products li.product img {
	width: 100% !important;
	height: 210px !important;
	margin: 0 0 18px !important;
	object-fit: contain;
}

.single-featured-products .woocommerce-loop-product__title {
	min-height: 48px;
	margin: 0 0 10px !important;
	color: #16375c;
	font-size: 16px !important;
	line-height: 1.35;
}

.single-featured-products ul.products li.product .price {
	margin-top: auto;
	color: #d99c0a !important;
	font-size: 19px !important;
	font-weight: 800;
}

.single-featured-products ul.products li.product .button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: 16px;
	padding: 11px 16px;
	border-radius: 999px;
	background: #16375c;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
}

.single-featured-products ul.products li.product .button:hover {
	background: #d99c0a;
	color: #16375c;
}

@media (max-width: 900px) {
	.single-featured-products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 520px) {
	.single-featured-products {
		padding: 45px 0 55px;
	}

	.single-featured-products ul.products {
		grid-template-columns: 1fr !important;
	}

	.single-featured-products ul.products li.product {
		min-height: 0;
	}
}
