/* Finish the 2026 Pool Perfectionists visual direction. */
:root {
  --ppf-navy:#073b70;
  --ppf-ink:#123b5c;
  --ppf-blue:#087fcd;
  --ppf-line:#d9e8f2;
  --ppf-surface:#f4faff;
}
html body .pp-header__notice {
  background:linear-gradient(90deg,#073765,#0a4a80)!important;
}
html body .pp-header__main {
  border-bottom:1px solid #e6eef4;
}
html body .pp-header .pp-brand-main-logo {
  display:flex!important;
  align-items:center;
  gap:7px;
  width:230px!important;
  min-width:230px;
  text-decoration:none!important;
}
html body .pp-header .pp-brand-main-logo__icon {
  display:block;
  flex:0 0 75px;
  width:75px;
  height:75px;
  overflow:hidden;
}
html body .pp-header .pp-brand-main-logo__img {
  display:block!important;
  width:212px!important;
  max-width:none!important;
  height:75px!important;
  object-fit:cover!important;
  object-position:left center!important;
}
html body .pp-header .pp-brand-main-logo__wordmark {
  display:flex;
  flex-direction:column;
  color:#0d6cac;
  line-height:1;
  white-space:nowrap;
}
html body .pp-header .pp-brand-main-logo__wordmark strong {
  font-size:34px;
  font-weight:800;
  letter-spacing:.015em;
  line-height:.94;
}
html body .pp-header .pp-brand-main-logo__wordmark small {
  font-size:12px;
  font-weight:800;
  letter-spacing:.025em;
  margin-top:5px;
}
html body .pp-header .pp-summer-mini__ribbon {
  min-width:148px!important;
  padding:4px 6px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:rotate(-7deg);
}
html body .pp-header .pp-summer-mini__ribbon:before {display:none!important;}
html body .pp-header .pp-summer-mini__ribbon strong {
  color:#0869b3!important;
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:27px!important;
  line-height:1!important;
  text-shadow:none!important;
}
html body .pp-header .pp-summer-mini__ribbon small {
  display:inline-block;
  width:max-content;
  margin:1px 0 0 18px;
  padding:3px 10px;
  border-radius:16px;
  background:#ffcb24;
  color:#073b70!important;
  font-size:10px!important;
  font-weight:800;
}
html body .pp-header__book,
html body .ppm2-btn-primary {
  background:#087fcd!important;
  color:#fff!important;
  border:1px solid #0872b9!important;
  border-radius:9px!important;
}
html body .pp-header__book:focus-visible,
html body .pp-header a:focus-visible,
html body .woocommerce a:focus-visible,
html body .woocommerce button:focus-visible {
  outline:3px solid #ffcb34!important;
  outline-offset:3px;
}
html body .ppm2-hero-copy {
  border:1px solid rgba(201,225,240,.7);
  border-radius:18px;
  box-shadow:0 18px 45px rgba(3,54,93,.09);
}
html body .ppm2-hero-services a {
  border-color:#d4e8f4!important;
  background:rgba(255,255,255,.86)!important;
}
html body .ppm2-hero-services a:hover,
html body .ppm2-hero-services a:focus-visible {
  border-color:#43a8dc!important;
  box-shadow:0 10px 24px rgba(3,75,126,.10)!important;
}
html body .woocommerce ul.products li.product {
  border:1px solid #dceaf3!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden;
}
html body .woocommerce ul.products li.product img {
  object-fit:contain!important;
  background:#f4faff!important;
}
html body .woocommerce ul.products li.product a.button {
  color:#fff!important;
  background:#087fcd!important;
  border:1px solid #0872b9!important;
}
html body .woocommerce ul.products li.product a.button:hover {
  background:#075f9c!important;
  color:#fff!important;
}
html body.single-product .woocommerce div.product:not(.product_cat-robotic-cleaners) .woocommerce-product-gallery .flex-viewport,
html body.single-product .woocommerce div.product:not(.product_cat-robotic-cleaners) .woocommerce-product-gallery__wrapper {
  background:#f5faff!important;
}
html body.single-product .woocommerce-tabs ul.tabs {
  overflow-x:auto;
  scrollbar-width:thin;
}
html body.single-product .woocommerce-tabs ul.tabs li a {
  white-space:nowrap;
}
html body.single-product.postid-10226 .woocommerce div.product {
  grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr)!important;
  column-gap:44px!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery .flex-viewport,
html body.single-product.postid-10226 .woocommerce-product-gallery__wrapper {
  border-radius:14px!important;
  box-shadow:0 12px 36px rgba(8,57,99,.11)!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery__image a {
  min-height:520px!important;
  padding:25px 28px!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery__image img {
  max-height:470px!important;
  max-width:96%!important;
}
html body.single-product .container.main-wrapper {
  margin-top:0!important;
  padding-top:8px!important;
}
html body.single-product .woocommerce-breadcrumb {
  margin:12px auto 18px!important;
}
html body.single-product.postid-10226 .summary .pp-phone-help {
  display:none!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery .flex-viewport,
html body.single-product.postid-10226 .woocommerce-product-gallery__wrapper {
  height:510px!important;
  min-height:510px!important;
  max-height:510px!important;
  background:url('https://poolperfectionists.com/wp-content/uploads/2026/09/Poolside-background-for-product-gallery.jpg') center/cover no-repeat!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery__image,
html body.single-product.postid-10226 .woocommerce-product-gallery__image a {
  height:510px!important;
  min-height:510px!important;
  max-height:510px!important;
  overflow:hidden!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery__image a {
  padding:20px 25px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 60%)!important;
}
html body.single-product.postid-10226 .flex-direction-nav a {
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#fff!important;
  border:1px solid #d3e8f4!important;
  box-shadow:0 5px 15px rgba(7,59,112,.12)!important;
}
html body.single-product.postid-10226 .woocommerce-product-gallery .flex-control-thumbs img {
  height:75px!important;
  border-radius:8px!important;
}
html body.single-product.postid-10226 .summary {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch;
  min-width:0;
}
html body.single-product.postid-10226 .summary .pp-evolux-brand { order:1; }
html body.single-product.postid-10226 .summary .product_title {
  order:2;
  font-size:clamp(36px,3vw,48px)!important;
  line-height:1.04!important;
  margin:0 0 13px!important;
}
html body.single-product.postid-10226 .summary > .price {
  order:3;
  color:var(--ppf-navy)!important;
}
html body.single-product.postid-10226 .summary > .price ins {
  color:var(--ppf-navy)!important;
}
html body.single-product.postid-10226 .summary .pp-stock-message {
  order:4;
  margin-bottom:14px!important;
  font-size:15px!important;
}
html body.single-product.postid-10226 .summary .pp-member-unlocked-badge,
html body.single-product.postid-10226 .summary .pp-member-product-gate { order:5; }
html body.single-product.postid-10226 .summary .pp-member-perks { order:6; }
html body.single-product.postid-10226 .summary .woocommerce-product-details__short-description { order:7; }
html body.single-product.postid-10226 .summary .pp-delivery-estimator { order:8; }
html body.single-product.postid-10226 .summary form.cart,
html body.single-product.postid-10226 .summary .pp-cta-buttons { order:9; }
html body.single-product.postid-10226 .summary .product_meta { order:10; }
html body.single-product.postid-10226.pp-member-locked .summary > .price {
  display:none!important;
}
html body.single-product.postid-10226.pp-member-unlocked .summary > .price.pp-cta-sale-rrp-live {
  display:none!important;
}
html body.single-product.postid-10226 .pp-member-unlocked-badge {
  background:#eaf8f0!important;
  border:1px solid #b4dec9!important;
  margin:0 0 14px!important;
}
html body.single-product.postid-10226 .pp-member-unlocked-badge__eyebrow {
  font-size:12px!important;
  color:#176d3b!important;
}
html body.single-product.postid-10226 .pp-member-unlocked-badge strong {
  font-size:17px!important;
  line-height:1.25!important;
}
html body.single-product.postid-10226 .pp-member-product-gate {
  margin:0 0 15px!important;
}
html body.single-product.postid-10226 .woocommerce-product-details__short-description p {
  font-size:15px!important;
  line-height:1.58!important;
}
html body.single-product.postid-10226 .pp-delivery-estimator {
  margin:16px 0 0!important;
  padding:16px 18px!important;
}
html body.single-product.postid-10226 .pp-delivery-estimator__heading span {
  display:block;
  font-size:14px!important;
}
html body.single-product.postid-10226 .pp-delivery-estimator__form input {
  font-size:15px!important;
}
html body.single-product.postid-10226 .pp-delivery-estimator__terms {
  font-size:12px!important;
}
html body.single-product.postid-10226 .pp-cta-buttons {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  margin-top:12px!important;
}
html body.single-product.postid-10226 .pp-cta-buttons .pp-call,
html body.single-product.postid-10226 .pp-cta-buttons .pp-chat-price {
  min-height:56px!important;
  font-size:15px!important;
  border-radius:9px!important;
}
html body.single-product.postid-10226 .pp-cta-buttons .pp-call {
  background:#fff!important;
  border:1.5px solid var(--ppf-navy)!important;
  color:var(--ppf-navy)!important;
}
html body.single-product.postid-10226 .pp-cta-buttons .pp-call:hover {
  background:#eaf5fd!important;
  color:var(--ppf-navy)!important;
}
html body.single-product.postid-10226 .pp-cta-buttons .pp-chat-price {
  background:#087fcd!important;
  border:1px solid #0872b9!important;
  color:#fff!important;
}
html body.single-product.postid-10226 .pp-cta-buttons .pp-chat-price:hover {
  background:#075f9c!important;
  color:#fff!important;
}
html body.single-product.postid-10226 .pp-evolux-feature-strip strong {
  font-size:14px!important;
  line-height:1.28!important;
}
html body.single-product.postid-10226 .pp-evolux-feature-strip article {
  min-height:108px;
}
html body.single-product.postid-10226 .woocommerce-tabs ul.tabs li a {
  font-size:15px!important;
}
html body.single-product.pp-member-unlocked form.cart {
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) minmax(0,1fr)!important;
  gap:10px!important;
  align-items:stretch;
}
html body.single-product.pp-member-unlocked form.cart .quantity {
  grid-column:1;
  margin:0!important;
  align-self:stretch;
}
html body.single-product.pp-member-unlocked form.cart .quantity input.qty {
  width:100%!important;
  height:100%!important;
  min-height:58px;
  border:1px solid #c9d9e7!important;
  border-radius:9px!important;
}
html body.single-product.pp-member-unlocked form.cart .single_add_to_cart_button {
  grid-column:2;
  width:100%!important;
  min-height:58px!important;
  margin:0!important;
}
html body.single-product.pp-member-unlocked form.cart .pp-member-robot-call {
  grid-column:3;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:58px;
  padding:7px 12px;
  border:1.5px solid #073b70;
  border-radius:9px;
  color:#073b70!important;
  background:#fff;
  text-decoration:none!important;
  text-align:left;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call:hover {
  background:#eaf5fd;
  color:#073b70!important;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call svg {
  width:22px;
  height:22px;
  flex:0 0 22px;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call span {
  display:flex;
  flex-direction:column;
  line-height:1.12;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call strong {
  color:inherit!important;
  font-size:15px;
}
html body.single-product.pp-member-unlocked .pp-member-robot-call small {
  color:inherit!important;
  font-size:12px;
  margin-top:3px;
}
/* The feature strip follows the product summary as a full-width row. */
html body.single-product.postid-10226 .pp-evolux-feature-strip {
  grid-column:1/-1!important;
  grid-row:auto!important;
  width:100%!important;
  margin:20px 0 0!important;
}
html body.single-product.postid-10226 .woocommerce-tabs {
  grid-column:1/-1;
  grid-row:auto!important;
}
@media (max-width:1180px) {
  html body.single-product.postid-10226 .woocommerce div.product {
    grid-template-columns:1fr!important;
    row-gap:26px!important;
  }
  html body.single-product.postid-10226 .summary {max-width:760px;}
}
@media (max-width:767px) {
  html body .pp-header .pp-brand-main-logo {
    width:178px!important;
    min-width:178px;
    gap:5px;
  }
  html body .pp-header .pp-brand-main-logo__icon {
    width:53px;
    height:53px;
    flex-basis:53px;
  }
  html body .pp-header .pp-brand-main-logo__img {
    width:150px!important;
    max-width:none!important;
    height:53px!important;
  }
  html body .pp-header .pp-brand-main-logo__wordmark strong {font-size:26px;}
  html body .pp-header .pp-brand-main-logo__wordmark small {font-size:9px;margin-top:3px;}
  html body .pp-header .pp-summer-mini {
    transform:scale(.62)!important;
    transform-origin:left center!important;
  }
  html body .ppm2-hero-copy {
    border-radius:12px;
    padding:24px 20px!important;
  }
  html body.single-product.postid-10226 .woocommerce div.product {
    width:calc(100% - 28px)!important;
  }
  html body.single-product.postid-10226 .woocommerce-product-gallery .flex-viewport,
  html body.single-product.postid-10226 .woocommerce-product-gallery__wrapper,
  html body.single-product.postid-10226 .woocommerce-product-gallery__image,
  html body.single-product.postid-10226 .woocommerce-product-gallery__image a {
    height:340px!important;
    min-height:340px!important;
    max-height:340px!important;
  }
  html body.single-product.postid-10226 .woocommerce-product-gallery__image a {
    padding:20px 16px!important;
  }
  html body.single-product.postid-10226 .woocommerce-product-gallery__image img {
    max-height:300px!important;
  }
  html body.single-product.postid-10226 .summary .product_title {
    font-size:clamp(32px,8.5vw,42px)!important;
    line-height:1.08!important;
  }
  html body.single-product.postid-10226 .pp-delivery-estimator__form {
    grid-template-columns:1fr!important;
  }
  html body.single-product.postid-10226 .pp-cta-buttons {
    grid-template-columns:1fr!important;
  }
  html body.single-product.pp-member-unlocked form.cart {
    grid-template-columns:64px minmax(0,1fr)!important;
  }
  html body.single-product.pp-member-unlocked form.cart .quantity {grid-column:1;grid-row:1;}
  html body.single-product.pp-member-unlocked form.cart .single_add_to_cart_button {grid-column:2;grid-row:1;}
  html body.single-product.pp-member-unlocked form.cart .pp-member-robot-call {grid-column:1/-1;grid-row:2;}
  html body.single-product.postid-10226 .pp-evolux-feature-strip {
    grid-template-columns:repeat(5,140px)!important;
    overflow-x:auto;
    scrollbar-width:thin;
  }
  html body.single-product.postid-10226 .woocommerce-tabs ul.tabs {
    gap:16px!important;
  }
}
/* Variation selectors retain WooCommerce's native flow. */
html body.single-product.pp-member-unlocked .product-type-variable form.cart {
  display:block!important;
}
@media (prefers-reduced-motion:reduce) {
  html body .woocommerce ul.products li.product,
  html body .pp-header__book {
    transition:none!important;
    transform:none!important;
  }
}
