.pt-home{background:white}.pt-home h2{font-size:clamp(23px,2.4vw,32px);font-weight:800;color:#101f32}.ph-carousel{position:relative;background:#f3f8fc}.ph-slide[hidden]{display:none}.ph-slide{background:radial-gradient(ellipse at 85% 20%,#e7f0fa,transparent 60%),linear-gradient(110deg,#f8fbfe,#edf4fb)}.ph-slide-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px;min-height:430px;padding-top:40px;padding-bottom:65px}.ph-slide-copy{padding:0 35px}.ph-eyebrow{font-size:12px;letter-spacing:2px;color:#52718b;font-weight:700}.ph-slide h1{font-size:clamp(32px,4.3vw,62px);font-weight:850;line-height:1.05;color:#08274b;margin:16px 0}.ph-slide p{color:#4e657b;font-size:17px;line-height:1.6;max-width:380px}.ph-shop{display:inline-flex;gap:22px;align-items:center;background:var(--slide-accent);color:white;text-decoration:none;padding:14px 23px;border-radius:5px;font-weight:700;margin:12px 0 20px}.ph-shop:hover{color:white;filter:brightness(.92)}.ph-slide-note{font-size:12px;color:#5a7186;display:flex;gap:9px;align-items:center}.ph-slide-art{height:315px;padding:25px;display:flex;align-items:center;justify-content:center;border-radius:28px;background:white;box-shadow:0 18px 55px #16365712;text-decoration:none;color:var(--slide-accent)}.ph-slide-art img{width:100%;height:100%;object-fit:contain}.ph-slide-art>i{font-size:130px}.ph-carousel-controls{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px}.ph-carousel-controls>button{border:1px solid #d5e1ed;background:white;color:#173d66;width:32px;height:32px;border-radius:50%;font-size:22px;line-height:1}.ph-carousel-controls [data-pause]{font-size:13px}.ph-dots{display:flex;gap:8px}.ph-dots button{width:8px;height:8px;border:0;padding:0;border-radius:50%;background:#abbdd0}.ph-dots [aria-current=true]{background:#087bea;width:23px;border-radius:8px}.ph-section{padding:55px 0}.ph-categories h2{text-align:center;margin:0 0 34px}.ph-category-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:30px}.ph-category{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:#15253a;width:150px;gap:15px}.ph-category-picture{display:flex;justify-content:center;align-items:center;width:130px;height:130px;border-radius:50%;border:1px solid #dfe7ef;padding:15px;background:white;box-shadow:0 0 0 5px #f8fafc;transition:transform .2s}.ph-category img{width:100%;height:100%;object-fit:contain;border-radius:20%}.ph-category-picture i{font-size:55px;color:#087bea}.ph-category strong{font-size:13px;line-height:1.45}.ph-category:hover .ph-category-picture{transform:translateY(-4px);border-color:#087bea}.ph-section-heading{text-align:center;margin-bottom:30px}.ph-section-heading h2{margin:0 0 10px}.ph-section-heading>a{font-size:12px;color:#087bea;text-decoration:none}.pt-home .ph-products .client-product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.pt-home .ph-products .client-product-card{border:0;box-shadow:none}.pt-home .ph-products .client-product-image{height:260px;background:#fafbfd}.pt-home .ph-products .client-product-body{text-align:center;padding-top:16px}.pt-home .ph-products .client-price-row{justify-content:center}.pt-home .ph-products .client-add{display:inline-block;background:#edf5fe;color:#087bea;padding:9px 18px}.ph-benefits{display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;margin-bottom:35px;border-top:1px solid #edf2f7;border-bottom:1px solid #edf2f7;padding-top:24px;padding-bottom:24px}.ph-benefits>div{display:flex;align-items:center;justify-content:center;gap:14px;border-right:1px solid #edf2f7}.ph-benefits>div:last-child{border:0}.ph-benefits i{font-size:28px;color:#087bea}.ph-benefits strong{display:block;font-size:13px}.ph-benefits small{display:block;font-size:11px;color:#667485}.ph-offer{margin-top:25px;margin-bottom:40px;padding:35px 45px;background:linear-gradient(110deg,#082342,#225fba);border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:white}.pt-home .ph-offer h2{color:white;margin:0 0 9px}.ph-offer p{margin:0;color:#d8e9ff}.ph-offer a{background:white;color:#173d66;border-radius:5px;padding:13px 20px;text-decoration:none;font-weight:700;white-space:nowrap}@media(max-width:991px){.ph-slide-copy{padding:0 10px}.ph-slide-inner{gap:22px;min-height:360px}.ph-slide-art{height:270px}.ph-category-grid{gap:24px}.pt-home .ph-products .client-product-image{height:220px}}@media(max-width:639px){.ph-slide-inner{grid-template-columns:1fr;padding:27px 22px 65px;gap:20px}.ph-slide-copy{text-align:center;padding:0}.ph-slide h1{font-size:34px;margin:12px 0}.ph-slide p{font-size:14px;margin:0 auto}.ph-slide-note{justify-content:center}.ph-slide-art{height:205px;border-radius:18px;max-width:460px;width:100%;margin:auto;padding:15px}.ph-eyebrow{font-size:10px}.ph-shop{padding:11px 19px;margin:12px 0}.ph-section{padding:30px 0}.ph-category-grid{gap:22px 12px}.ph-category{width:calc((100% - 24px)/3);gap:10px}.ph-category-picture{width:90px;height:90px;padding:10px}.ph-category strong{font-size:11px}.pt-home .ph-products .client-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pt-home .ph-products .client-product-image{height:175px}.ph-benefits{grid-template-columns:repeat(2,1fr);gap:22px 6px;margin-top:15px;margin-bottom:20px}.ph-benefits>div{border:0;justify-content:flex-start;padding-left:7px}.ph-benefits strong{font-size:11px}.ph-benefits small{font-size:10px}.ph-offer{width:calc(100% - 24px);padding:25px 20px;flex-direction:column;text-align:center}.ph-offer p{font-size:13px}}@media(prefers-reduced-motion:reduce){.ph-category-picture{transition:none}}

/* Full-width artwork: no titles, product cards or text overlay. */
.ph-banner-carousel{width:100%;background:#fff}.ph-banner-slide{background:none}.ph-banner-slide picture,.ph-banner-link{display:block;width:100%}.ph-banner-image{display:block;width:100%;height:auto;object-fit:contain}.ph-banner-carousel .ph-carousel-controls{background:#ffffffdc;padding:6px 10px;border-radius:25px;bottom:12px;max-width:95%}.ph-banner-carousel .ph-dots{flex-wrap:wrap;justify-content:center;gap:6px}@media(max-width:639px){.ph-banner-carousel .ph-carousel-controls{bottom:7px;gap:6px;padding:4px 6px}.ph-banner-carousel .ph-carousel-controls>button{width:26px;height:26px}}

/* Keep intrinsic banner dimensions from expanding any flex/grid parent. */
.pt-home{width:100%;max-width:100%;min-width:0}
.pt-home .ph-banner-carousel{display:block;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden;box-sizing:border-box}
.pt-home .ph-banner-carousel .ph-slides{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0;padding:0}
.pt-home .ph-banner-carousel .ph-banner-slide{display:block;width:100%!important;max-width:100%!important;min-width:0!important;margin:0;padding:0;box-sizing:border-box}
.pt-home .ph-banner-carousel .ph-banner-slide[hidden]{display:none!important}
.pt-home .ph-banner-carousel .ph-banner-link,.pt-home .ph-banner-carousel picture{display:block;width:100%!important;max-width:100%!important;min-width:0!important;margin:0;padding:0}
.pt-home .ph-banner-carousel img.ph-banner-image{display:block;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;max-height:none;object-fit:contain;margin:0;padding:0;border:0;box-sizing:border-box}
.pt-home .ph-banner-carousel .ph-carousel-controls{max-width:calc(100% - 16px);min-width:0;box-sizing:border-box}
@media(max-width:767px){.pt-home .ph-banner-carousel .ph-carousel-controls{bottom:7px;gap:6px;padding:4px 6px}.pt-home .ph-banner-carousel .ph-carousel-controls>button{flex-shrink:0;width:26px;height:26px}.pt-home .ph-banner-carousel .ph-dots{min-width:0;flex-wrap:wrap}}

/* Stack only the incoming banner during the horizontal transition. */
.pt-home .ph-banner-carousel .ph-slides{position:relative;overflow:hidden}
.pt-home .ph-banner-carousel .ph-banner-slide{position:relative}
.pt-home .ph-banner-carousel.ph-is-moving .ph-banner-slide.ph-entering{position:absolute;left:0;right:0;top:0}

/* Rectangular category artwork and tighter homepage spacing. */
.pt-home .ph-categories{padding-top:22px;padding-bottom:28px}
.pt-home .ph-categories h2{margin-bottom:14px}
.pt-home .ph-categories .ph-category-grid{gap:20px}
.pt-home .ph-categories .ph-category{width:200px;gap:10px}
.pt-home .ph-categories .ph-category-picture{width:100%;height:145px;border-radius:12px;padding:12px;box-shadow:0 3px 12px #14375508}
.pt-home .ph-categories .ph-category img{border-radius:0;object-fit:contain}
@media(max-width:767px){.pt-home .ph-categories{padding-top:18px;padding-bottom:22px}.pt-home .ph-categories .ph-category-grid{gap:16px 12px}.pt-home .ph-categories .ph-category{width:calc((100% - 12px)/2);gap:8px}.pt-home .ph-categories .ph-category-picture{height:130px;padding:10px;border-radius:10px}.pt-home .ph-categories .ph-category strong{font-size:13px}}

/* Stable compact desktop banner and taller mobile category cards. */
.pt-home .ph-banner-carousel{margin:0;padding:0}
.pt-home .ph-banner-carousel .ph-slides{position:relative;height:clamp(180px,35svh,320px)!important;min-height:0;overflow:hidden}
.pt-home .ph-banner-carousel .ph-banner-slide{position:absolute!important;inset:0;height:100%!important;will-change:opacity}
.pt-home .ph-banner-carousel .ph-banner-link,
.pt-home .ph-banner-carousel picture{height:100%!important}
.pt-home .ph-banner-carousel img.ph-banner-image{height:100%!important;object-fit:cover;object-position:center}
.pt-home .ph-banner-carousel .ph-carousel-controls{display:none!important}
.pt-home .ph-categories{padding-top:12px;padding-bottom:18px}
.pt-home .ph-categories h2{margin-bottom:10px}
@media(max-width:991px){
.pt-home .ph-banner-carousel .ph-slides{height:auto!important;aspect-ratio:2162 / 727}
.pt-home .ph-categories{padding-top:0;padding-bottom:12px}
.pt-home .ph-categories h2{font-size:23px;margin-top:0;margin-bottom:9px}
.pt-home .ph-categories .ph-category-grid{gap:12px}
.pt-home .ph-categories .ph-category{width:calc((100% - 12px)/2);gap:6px}
.pt-home .ph-categories .ph-category-picture{height:clamp(105px,19svh,155px);padding:8px}
.pt-home .ph-categories .ph-category strong{font-size:12px;line-height:1.25}
}

/* Minimal spacing between category artwork and its label. */
.pt-home .ph-categories .ph-category-picture{margin:0;padding:0}
.pt-home .ph-categories .ph-category{gap:1px}

.ph-view-all{text-align:center;margin-top:24px}.ph-view-all a{display:inline-flex;gap:12px;align-items:center;padding:11px 28px;border:1px solid #0787e8;border-radius:24px;color:#0787e8;font-weight:700;text-decoration:none}.ph-view-all a:hover{background:#0787e8;color:#fff}
