/* Final shared layer. The body ID takes precedence over inherited V4 overrides. */
:root{--hero-height:330px;--mobile-header-height:64px}
html{scroll-behavior:smooth;scroll-padding-top:20px}
html.menu-open{overflow:hidden}
#bazeni-site{font-family:Arial,"Helvetica Neue",sans-serif!important;-webkit-text-size-adjust:100%;text-size-adjust:100%;margin:0}
#bazeni-site *{box-sizing:border-box}
#bazeni-site img{max-width:100%}
#bazeni-site main{width:100%;min-width:0}
#bazeni-site .wrap,#bazeni-site .container{max-width:1180px}
#bazeni-site a:focus-visible,#bazeni-site button:focus-visible,#bazeni-site input:focus-visible,#bazeni-site select:focus-visible,#bazeni-site textarea:focus-visible{outline:3px solid #ffcf4d!important;outline-offset:3px}
#bazeni-site .top{height:64px!important;min-height:64px!important;position:relative!important;z-index:1000!important;background:#fff!important;border-bottom:1px solid #e2edf5}
#bazeni-site .top>.topin{width:min(1180px,calc(100% - 48px))!important;max-width:1180px!important;height:64px!important;min-height:64px!important;display:flex!important;align-items:center!important;gap:16px!important;margin:auto!important}
#bazeni-site .topin>.logo{width:150px!important;min-width:150px!important;flex:0 0 150px!important;height:auto!important;display:block!important;line-height:0}
#bazeni-site .logo img{width:145px!important;max-width:145px!important;height:auto!important;object-fit:contain!important;filter:none!important;transform:none!important}
#bazeni-site .desktop-nav{display:flex!important;align-items:center!important;gap:19px!important;height:44px!important;margin-left:auto!important;min-width:0}
#bazeni-site .navdrop{position:relative!important;display:flex!important;align-items:center!important;height:44px!important}
#bazeni-site .navmain{font-family:Arial,"Helvetica Neue",sans-serif!important;font-size:12.6px!important;font-weight:500!important;color:#071bd8!important;background:transparent!important;border:0!important;padding:0!important;line-height:1.25!important;height:44px!important;display:flex!important;align-items:center!important;gap:3px!important;white-space:nowrap!important;cursor:pointer}
#bazeni-site .navmain:after{display:none!important}
#bazeni-site .navmain:hover,#bazeni-site .navmain[aria-expanded="true"]{color:#0878f7!important}
#bazeni-site .chev{font-size:10.8px!important;margin-left:3px!important;transition:transform .15s}
#bazeni-site .navmain[aria-expanded="true"] .chev{transform:rotate(180deg)}
#bazeni-site .submenu{position:absolute!important;top:44px!important;left:0!important;display:none!important;width:225px!important;min-width:225px!important;max-height:75vh;overflow:auto;background:#fff!important;padding:6px!important;border:1px solid #dce8f4!important;border-radius:0 0 7px 7px!important;box-shadow:0 10px 26px rgba(0,53,98,.14)!important;z-index:2000!important}
#bazeni-site .submenu.wide{width:430px!important;min-width:430px!important;grid-template-columns:1fr 1fr!important}
#bazeni-site .navdrop.open>.submenu{display:grid!important}
#bazeni-site .navdrop:hover>.submenu{display:none!important}
#bazeni-site .navdrop.open:hover>.submenu{display:grid!important}
#bazeni-site .submenu a{display:block!important;font-family:Arial,"Helvetica Neue",sans-serif!important;font-size:13.2px!important;font-weight:400!important;line-height:1.25!important;height:auto!important;min-height:36px;padding:10px 9px!important;color:#17399d!important;border-radius:4px!important;white-space:normal!important}
#bazeni-site .submenu a:hover,#bazeni-site .submenu a[aria-current="page"]{background:#eef7ff!important;color:#0068d8!important}
#bazeni-site .topactions{display:flex!important;align-items:center!important;gap:12px!important;margin-left:0!important}
#bazeni-site .shop{font-size:13.2px!important;white-space:nowrap!important}
#bazeni-site .topcta{font-size:12.6px!important;font-weight:700!important;padding:10px 14px!important;border-radius:6px!important;line-height:1.25!important;white-space:nowrap!important;color:#fff!important;background:#0878f7!important;min-height:40px}
#bazeni-site .header-follow{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#17399d;font-size:11px}
#bazeni-site .facebook-link{display:inline-flex!important;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%}
#bazeni-site .facebook-link svg{width:30px;height:30px;display:block}
#bazeni-site .mobile-menu-toggle,#bazeni-site .mobile-nav-actions{display:none!important}
#bazeni-site .hero,#bazeni-site .home-hero-v16{position:relative!important;height:var(--hero-height)!important;min-height:var(--hero-height)!important;overflow:hidden!important;background:#063456!important}
#bazeni-site .hero>img,#bazeni-site .home-hero-v16>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;transform:none!important;filter:none!important}
#bazeni-site .hero>.herocont,#bazeni-site .hero>.hero-copy{position:relative!important;left:0!important;top:auto!important;bottom:auto!important;transform:none!important;width:min(600px,calc(100% - 72px))!important;max-width:600px!important;margin:0 0 0 calc(4.6% + 36px)!important;padding:20px 0!important;color:#fff!important;z-index:4!important}
#bazeni-site .hero .shade,#bazeni-site .hero .hero-shade{position:absolute!important;inset:0!important;background:linear-gradient(90deg,#04385ff5,rgba(3,54,92,.92) 35%,rgba(3,54,92,.48) 65%,rgba(3,54,92,0) 100%)!important;z-index:1!important}
#bazeni-site .hero h1,#bazeni-site .home-hero-copy h1{font-size:43.2px!important;line-height:1!important;letter-spacing:-.8px!important;margin:0 0 8px!important;font-weight:800!important;color:#fff!important}
#bazeni-site .hero h2{font-size:24px!important;line-height:1.08!important;margin:0 0 10px!important;max-width:600px!important;color:#31e1ef!important}
#bazeni-site .hero p{font-size:17.4px!important;line-height:1.34!important;max-width:580px!important;margin:0 0 16px!important;color:#fff!important}
#bazeni-site .crumb,#bazeni-site .hero-breadcrumbs{font-size:13.2px!important;line-height:1.3!important;margin-bottom:8px!important;color:#fff!important}
#bazeni-site .herobtns,#bazeni-site .hero-actions,#bazeni-site .home-hero-btns{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
#bazeni-site .btn,#bazeni-site .hero-button,#bazeni-site .home-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;line-height:1.2!important;font-size:12.6px!important;padding:11px 18px!important;max-width:100%;white-space:normal}
#bazeni-site .home-hero-copy{width:min(680px,91%)!important;max-width:680px!important;padding-top:148px!important;margin-left:4.5%!important;position:relative!important;z-index:4}
#bazeni-site .home-hero-copy h1{white-space:nowrap!important;font-size:clamp(24px,3.4vw,43.2px)!important}
#bazeni-site .home-hero-copy h2{font-size:24px!important;line-height:1.15!important}
#bazeni-site .home-hero-meta{font-size:13.2px!important}
#bazeni-site .sectitle h2,#bazeni-site .home-title{font-size:31.2px!important;line-height:1.1!important}
#bazeni-site .sectitle p,#bazeni-site .home-subtitle{font-size:16.8px!important;line-height:1.35!important}
#bazeni-site .bigcopy{font-size:18px!important;line-height:1.4!important}
#bazeni-site .card h3,#bazeni-site .home-card h3{font-size:15.6px!important;line-height:1.2!important}
#bazeni-site .card p,#bazeni-site .home-card p{font-size:13.8px!important;line-height:1.35!important}
#bazeni-site .card a,#bazeni-site .home-link{font-size:12.6px!important}
#bazeni-site .footbrand img,#bazeni-site .footer-brand img{width:192px!important;height:auto!important;max-width:100%!important;object-fit:contain!important;filter:none!important;transform:none!important}
#bazeni-site .footgrid>div,#bazeni-site .footer-grid{font-size:11.4px!important;line-height:1.5!important}
#bazeni-site .footgrid b,#bazeni-site .footer-grid strong{font-size:12.6px!important}
#bazeni-site .footbottom,#bazeni-site .footer-bottom{font-size:10.2px!important}
#bazeni-site input,#bazeni-site select,#bazeni-site textarea{min-width:0;max-width:100%;font-family:inherit!important}
#bazeni-site form button{min-height:44px;cursor:pointer}
#bazeni-site .mapembed iframe{display:block;width:100%;height:280px;border:0}
#bazeni-site .map-link{display:inline-flex;margin-top:10px;min-height:44px;align-items:center;text-decoration:underline;color:#0878f7}
#bazeni-site .problem-table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}
#bazeni-site .problem-table{min-width:720px}
#bazeni-site .problem-table th,#bazeni-site .problem-table td{font-size:14px;line-height:1.4}
#bazeni-site .project-close,#bazeni-site .project-controls button{min-width:44px;min-height:44px}
#bazeni-site .back-to-top{position:fixed;right:22px;bottom:22px;z-index:900;display:flex;align-items:center;gap:8px;min-height:44px;padding:11px 15px;border:1px solid #ffffff88;border-radius:999px;background:#0878d8;color:#fff;font-family:inherit;font-weight:600;font-size:14px;line-height:1.2;box-shadow:0 5px 18px #0023503d;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
#bazeni-site .back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
#bazeni-site .back-to-top:hover{background:#005ba8}
@media(max-width:1100px){
 :root{--hero-height:410px}
 #bazeni-site .top>.topin{width:calc(100% - 32px)!important;gap:10px!important}
 #bazeni-site .mobile-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;margin-left:auto!important;border:1px solid #d4e5f4;border-radius:7px;background:#fff;color:#071bd8;font-size:15px!important;padding:8px 10px}
 #bazeni-site .mobile-menu-toggle svg{width:20px;height:20px}
 #bazeni-site .topactions{gap:0!important}
 #bazeni-site .topactions>.shop,#bazeni-site .topactions>.topcta,#bazeni-site .header-follow>span{display:none!important}
 #bazeni-site .desktop-nav{display:none!important;position:fixed!important;top:64px!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;max-height:calc(100dvh - 64px)!important;height:auto!important;margin:0!important;padding:12px 20px calc(30px + env(safe-area-inset-bottom))!important;background:#fff!important;box-shadow:0 10px 26px #00356224;overflow-y:auto;overscroll-behavior:contain;flex-direction:column!important;align-items:stretch!important;gap:0!important}
 #bazeni-site .top.mobile-open .desktop-nav{display:flex!important}
 #bazeni-site .navdrop{display:block!important;flex:none;height:auto!important;border-bottom:1px solid #e2edf5}
 #bazeni-site .navmain{width:100%!important;min-height:48px!important;height:auto!important;font-size:16px!important;line-height:1.35!important;padding:12px 0!important;justify-content:space-between!important}
 #bazeni-site .submenu,#bazeni-site .submenu.wide{position:static!important;width:100%!important;min-width:0!important;max-height:none!important;grid-template-columns:1fr!important;box-shadow:none!important;border:0!important;padding:0 0 12px 12px!important}
 #bazeni-site .submenu a{font-size:16px!important;min-height:44px!important;padding:10px 12px!important}
 #bazeni-site .mobile-nav-actions{display:flex!important;flex-direction:column;gap:12px;padding:16px 0}
 #bazeni-site .mobile-nav-actions .topcta{display:flex;align-items:center;justify-content:center;font-size:16px!important;min-height:44px}
 #bazeni-site .mobile-nav-actions .shop{font-size:16px!important;min-height:44px;display:flex;align-items:center}
 #bazeni-site .top.mobile-open~.back-to-top{display:none!important}
 #bazeni-site .hero>.herocont,#bazeni-site .hero>.hero-copy{width:calc(100% - 40px)!important;max-width:650px!important;margin-left:20px!important;padding:30px 0!important}
 #bazeni-site .hero h1{font-size:39.6px!important}
 #bazeni-site .hero h2{font-size:22.8px!important}
 #bazeni-site .hero p{font-size:16px!important;line-height:1.4!important}
 #bazeni-site .home-hero-copy{padding-top:190px!important;margin-left:20px!important;width:calc(100% - 40px)!important}
 #bazeni-site .home-hero-copy h1{font-size:clamp(22px,4.4vw,43.2px)!important}
 #bazeni-site .hero .script{display:none!important}
 #bazeni-site .private-hero-title-line{white-space:normal!important}
 #bazeni-site .liner-finish-row{grid-template-columns:1fr!important}
}
@media(max-width:700px){
 :root{--hero-height:470px}
 #bazeni-site .wrap,#bazeni-site .container{width:calc(100% - 36px)!important;margin-inline:auto!important;padding-inline:0!important}
 #bazeni-site .hero>.herocont,#bazeni-site .hero>.hero-copy{width:calc(100% - 36px)!important;max-width:none!important;margin-left:18px!important;padding:24px 0!important}
 #bazeni-site .hero h1{font-size:clamp(28px,7.7vw,36px)!important;line-height:1.08!important;letter-spacing:-.5px!important;overflow-wrap:anywhere}
 #bazeni-site .hero h2{font-size:20px!important;line-height:1.18!important;margin-bottom:10px!important}
 #bazeni-site .hero p{font-size:16px!important;line-height:1.35!important;margin-bottom:14px!important}
 #bazeni-site .hero .shade,#bazeni-site .hero .hero-shade{background:linear-gradient(90deg,#04385fee,#04385fbd)!important}
 #bazeni-site .home-hero-v16:after{background:linear-gradient(0deg,#04385ff2 0%,#04385f70 70%,#04385f20)!important}
 #bazeni-site .home-hero-copy{padding-top:255px!important;width:calc(100% - 36px)!important;margin-left:18px!important}
 #bazeni-site .home-hero-copy h1{font-size:clamp(20px,5.2vw,32px)!important;letter-spacing:-.4px!important;white-space:nowrap!important}
 #bazeni-site .home-hero-copy h2{font-size:21px!important}
 #bazeni-site .home-hero-meta{font-size:12px!important}
 #bazeni-site .btn,#bazeni-site .hero-button,#bazeni-site .home-btn{font-size:14px!important;min-width:0!important;padding:11px 14px!important}
 #bazeni-site .cards,#bazeni-site .cols2,#bazeni-site .cols3,#bazeni-site .cols4,#bazeni-site .cols5,#bazeni-site .cols6,#bazeni-site .steps,#bazeni-site .type-grid,#bazeni-site .comparison-grid,#bazeni-site .factor-grid,#bazeni-site .equipment-grid,#bazeni-site .advantage-grid,#bazeni-site .step-grid,#bazeni-site .final-grid,#bazeni-site .winter-grid,#bazeni-site .final-help-grid,#bazeni-site .faqgrid{grid-template-columns:minmax(0,1fr)!important}
 #bazeni-site .splitintro,#bazeni-site .splitmedia,#bazeni-site .duobox,#bazeni-site .intro-grid,#bazeni-site .choice,#bazeni-site .recommendation-grid,#bazeni-site .contact-grid,#bazeni-site .contactgrid,#bazeni-site .contactmini,#bazeni-site .home-tech-split,#bazeni-site .company-top,#bazeni-site .company-badges,#bazeni-site .company-feature-grid,#bazeni-site .support-grid,#bazeni-site .contact-home-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;min-width:0!important}
 #bazeni-site .home-card-grid,#bazeni-site .icon-grid,#bazeni-site .infocards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 #bazeni-site .home-card-grid.pool-grid{grid-template-columns:minmax(0,1fr)!important}
 #bazeni-site .benefitgrid,#bazeni-site .benefit-grid,#bazeni-site .benefitrow,#bazeni-site .iconrow{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding-block:18px!important}
 #bazeni-site .benefitgrid>div{padding:0!important;border:0!important;min-width:0;gap:8px!important}
 #bazeni-site .benefit-grid>div{grid-template-columns:34px minmax(0,1fr)!important;padding:0!important;border:0!important;gap:8px!important;min-width:0}
 #bazeni-site .benefit-grid>div>span{font-size:30px!important;width:34px!important}
 #bazeni-site .benefitgrid b,#bazeni-site .benefit-grid b,#bazeni-site .benefit-grid strong,#bazeni-site .benefitrow b,#bazeni-site .iconrow b{font-size:14px!important;line-height:1.3!important}
 #bazeni-site .benefitgrid small,#bazeni-site .benefitrow small,#bazeni-site .iconrow small{font-size:12.6px!important;line-height:1.35!important}
 #bazeni-site .bi{font-size:30px!important;width:34px!important;flex:none}
 #bazeni-site .sectitle h2,#bazeni-site .home-title,#bazeni-site .types-section h2,#bazeni-site .intro h2,#bazeni-site .choice h2,#bazeni-site .contact h2{font-size:28px!important;line-height:1.15!important;overflow-wrap:anywhere}
 #bazeni-site .sectitle p,#bazeni-site .home-subtitle,#bazeni-site .lead,#bazeni-site .bigcopy{font-size:17px!important;line-height:1.45!important}
 #bazeni-site .card h3,#bazeni-site .home-card h3,#bazeni-site .type-card h3,#bazeni-site .winter-card h3,#bazeni-site .steps h3{font-size:19px!important;line-height:1.25!important}
 #bazeni-site .card p,#bazeni-site .home-card p,#bazeni-site .panel p,#bazeni-site .panel li,#bazeni-site .type-card p,#bazeni-site .comparison p,#bazeni-site .choice p,#bazeni-site .info-panel p,#bazeni-site .winter-card p,#bazeni-site .steps p,#bazeni-site .ticks li,#bazeni-site .contactgrid p,#bazeni-site .contactmini p,#bazeni-site .company-top p,#bazeni-site .contact-form-home p,#bazeni-site .auto-detail p{font-size:16px!important;line-height:1.45!important}
 #bazeni-site .card a,#bazeni-site .home-link,#bazeni-site .auto-more{display:inline-flex!important;align-items:center;min-height:44px;font-size:15px!important}
 #bazeni-site .note p{font-size:20px!important;line-height:1.35!important}
 #bazeni-site .splitmedia>img,#bazeni-site .splitintro>.sidephoto{height:auto!important;min-height:0!important;max-height:360px;object-fit:cover}
 #bazeni-site .contactmini form{grid-template-columns:minmax(0,1fr)!important}
 #bazeni-site .contactmini textarea{grid-column:auto!important;grid-row:auto!important}
 #bazeni-site .contact form{grid-template-columns:minmax(0,1fr)!important}
 #bazeni-site .contact form>*{grid-column:auto!important;grid-row:auto!important}
 #bazeni-site input,#bazeni-site select,#bazeni-site textarea{width:100%;font-size:16px!important;min-height:44px!important}
 #bazeni-site form button{font-size:16px!important}
 #bazeni-site .contactbig,#bazeni-site .contact-details-home{font-size:16px!important;line-height:1.5!important}
 #bazeni-site .wavecta .wrap,#bazeni-site .water-cta .container,#bazeni-site .home-water-inner{display:flex!important;flex-direction:column!important;gap:16px!important;padding-block:20px!important}
 #bazeni-site .wavecta strong{font-size:22px!important;line-height:1.3!important}
 #bazeni-site .footgrid,#bazeni-site .footer-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 14px!important}
 #bazeni-site .footbrand,#bazeni-site .footer-brand{grid-column:1/-1!important}
 #bazeni-site .footgrid>div,#bazeni-site .footer-grid{font-size:14px!important;line-height:1.5!important;min-width:0;overflow-wrap:anywhere}
 #bazeni-site .footgrid b,#bazeni-site .footer-grid strong{font-size:15px!important}
 #bazeni-site footer a{min-height:32px;display:inline-flex!important;align-items:center}
 #bazeni-site .footbottom,#bazeni-site .footer-bottom{font-size:12px!important;gap:8px;flex-wrap:wrap}
 #bazeni-site footer{padding-bottom:85px!important}
 #bazeni-site .legal-notice{font-size:12px!important;line-height:1.5!important}
 #bazeni-site .back-to-top{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));font-size:13px;padding:11px 13px}
 #bazeni-site .project-grid,#bazeni-site .gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #bazeni-site #project-lightbox{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:94dvh;padding:8px}
 #bazeni-site #project-lightbox>img{max-height:calc(94dvh - 90px)}
}
@media(max-width:359px){
 #bazeni-site .top>.topin{width:calc(100% - 20px)!important;gap:6px!important}
 #bazeni-site .topin>.logo{width:130px!important;min-width:130px!important;flex-basis:130px!important}
 #bazeni-site .logo img{width:130px!important;max-width:130px!important}
 #bazeni-site .mobile-menu-toggle{font-size:14px!important;padding:8px}
 #bazeni-site .hero>.herocont,#bazeni-site .hero>.hero-copy{padding:20px 0!important}
 #bazeni-site .hero h1{font-size:28px!important}
 #bazeni-site .hero h2{font-size:19px!important}
 #bazeni-site .herobtns,#bazeni-site .hero-actions{gap:8px!important}
 #bazeni-site .herobtns .btn{padding:10px 12px!important;font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#bazeni-site *,#bazeni-site *:before,#bazeni-site *:after{transition:none!important;animation:none!important}}
