:root{--navy:#020817;--blue:#078aff;--cyan:#15c6ff;--line:#56b2ff59;--mx:50vw;--my:50vh;--scroll:0px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--navy)}body{margin:0;overflow-x:hidden;background:var(--navy);color:white;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}em{color:var(--cyan);font-style:normal}
body:after{position:fixed;z-index:50;inset:0;content:"";pointer-events:none;background:linear-gradient(#fff1 50%,#0001 50%);background-size:100% 4px;opacity:.18}.cursor-glow{position:fixed;z-index:2;left:calc(var(--mx) - 190px);top:calc(var(--my) - 190px);width:380px;height:380px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#098fff20,transparent 68%);mix-blend-mode:screen}
header{position:fixed;z-index:30;top:0;display:flex;width:100%;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,78px);background:linear-gradient(180deg,#020817e8,transparent);transition:.3s}header.scrolled{padding-top:12px;padding-bottom:12px;background:#020817db;box-shadow:0 12px 38px #0007;backdrop-filter:blur(18px)}.logo{display:inline-flex;min-width:158px;flex-direction:column;align-items:center;padding:10px 25px 9px;border:1px solid #73c0ffa1;border-radius:22px;background:linear-gradient(145deg,#0c357af2,#02194af2);box-shadow:inset 0 1px #fff3,0 14px 40px #00349442}.logo strong{font-size:28px;line-height:.95;letter-spacing:-.06em}.logo small{margin-top:5px;font-size:8px}
.menu{position:relative;z-index:32;width:48px;height:48px;border:1px solid #99c9ff80;border-radius:50%;background:#010a1b8c;cursor:pointer}.menu i{position:absolute;left:15px;width:17px;height:1px;background:white}.menu i:first-child{top:20px}.menu i:last-child{top:27px}nav{position:absolute;top:10px;right:clamp(20px,5vw,78px);display:flex;gap:28px;align-items:center;padding:15px 72px 15px 28px;border:1px solid var(--line);border-radius:30px;background:#020b1ddd;opacity:0;transform:translateX(18px);pointer-events:none;transition:.35s;backdrop-filter:blur(20px)}nav.open{opacity:1;transform:none;pointer-events:auto}nav a{color:#bed0e6;font-size:13px}nav button{padding:10px 16px;border:0;border-radius:20px;color:white;background:var(--blue);cursor:pointer}
.hero{position:relative;min-height:1040px;padding:150px 0 90px;overflow:hidden}.hero-bg{position:absolute;inset:-90px 0 -120px;background:linear-gradient(#01050f30,#02091950 50%,var(--navy) 95%),url("assets/hero-pool.webp") center/cover;transform:translateY(calc(var(--scroll)*.12));filter:saturate(1.18)}.hero:after{position:absolute;z-index:0;inset:0;content:"";background:radial-gradient(circle at 50% 40%,transparent 0 24%,#00030e90 82%)}.blue-glow{position:absolute;z-index:1;width:360px;height:360px;border-radius:50%;background:#007bff;filter:blur(90px);opacity:.3;animation:drift 8s ease-in-out infinite alternate}.blue-glow.a{left:6%;top:42%}.blue-glow.b{right:8%;top:30%;animation-delay:-3s}@keyframes drift{to{transform:translate(65px,-45px) scale(1.22)}}
.hero-copy{position:relative;z-index:3;width:min(1120px,90%);margin:35px auto 58px;text-align:center}.eyebrow{display:flex;align-items:center;gap:10px;color:#91b3d4;font-size:11px;font-weight:bold;letter-spacing:.16em;text-transform:uppercase}.hero .eyebrow,.history .eyebrow{justify-content:center;color:#c4d8ea}.eyebrow b{width:25px;height:1px;background:var(--cyan)}.hero h1{max-width:940px;margin:22px auto 18px;font-size:clamp(52px,7.4vw,105px);line-height:.88;letter-spacing:-.065em;text-shadow:0 12px 45px #0008}.hero-copy>p:last-child{color:#d4e1ed;font-size:clamp(16px,2vw,21px)}
.carousel{position:relative;z-index:4}.carousel-head{display:flex;width:min(1290px,92%);align-items:center;justify-content:space-between;margin:0 auto 16px;color:#a6bad0;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.carousel-head div{display:flex;gap:8px}.carousel-head button{width:39px;height:39px;border:1px solid var(--line);border-radius:50%;color:white;background:#020e27b3;cursor:pointer}.track{display:flex;width:min(1390px,100%);gap:18px;margin:auto;padding:0 max(4vw,calc((100vw - 1290px)/2)) 24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}.track::-webkit-scrollbar{display:none}.solution{position:relative;min-width:min(355px,78vw);height:315px;overflow:hidden;border:1px solid #74bbff73;border-radius:28px;background:#06204b;scroll-snap-align:center;box-shadow:0 25px 70px #0005;user-select:none;transition:.35s}.solution:hover,.solution.active{transform:translateY(-7px);border-color:#32bafff2;box-shadow:0 35px 80px #0041aa59}
.card-photo{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.04);transition:.7s}.card-photo-01{background-image:url("assets/solution-pool-01.webp")}.card-photo-02{background-image:url("assets/solution-pool-02.webp")}.card-photo-03{background-image:url("assets/solution-pool-03.webp")}.card-photo-04{background-image:url("assets/solution-pool-04.webp")}.solution:hover .card-photo{transform:scale(1.12);filter:saturate(1.35)}.shade{position:absolute;inset:0;background:linear-gradient(#00091c0f,#000b26f5)}.card-top{position:absolute;inset:20px 20px auto;display:flex;align-items:center;justify-content:space-between}.card-top span{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--cyan);border-radius:13px;color:var(--cyan);font-size:22px;background:#0111308c}.card-top small{color:#ffffff85}.card-copy{position:absolute;left:24px;right:65px;bottom:23px}.card-copy h2{margin:0 0 10px;font-size:24px;line-height:1.05;letter-spacing:-.035em}.card-copy p{margin:0;color:#c6d5e7;font-size:13px;line-height:1.45}.card-copy b{display:block;max-height:0;overflow:hidden;color:var(--cyan);font-size:12px;transition:.35s}.solution:hover .card-copy b{max-height:25px;margin-top:8px}.arrow{position:absolute;right:20px;bottom:22px;display:grid;width:43px;height:43px;place-items:center;border-radius:50%;background:linear-gradient(145deg,#0bb8ff,#075dff);box-shadow:0 10px 28px #006eff80;font-style:normal}.dots{display:flex;justify-content:center;gap:8px}.dots button{width:7px;height:7px;padding:0;border:0;border-radius:5px;background:#536780}.dots button.active{width:25px;background:var(--cyan)}.scroll{position:absolute;z-index:5;left:50%;bottom:22px;display:flex;flex-direction:column;align-items:center;gap:5px;transform:translateX(-50%);color:#8ea8c2;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.scroll b{color:var(--cyan);animation:drop 1.4s infinite}@keyframes drop{50%{transform:translateY(6px)}}
.section{position:relative;overflow:hidden;padding:140px max(5vw,calc((100vw - 1220px)/2))}.section:before{position:absolute;inset:0 -4% auto;width:108%;height:1px;content:"";background:linear-gradient(90deg,transparent,#168cff 45%,transparent);box-shadow:0 0 22px #168cff}.side{position:absolute;top:80px;left:3vw;color:#4d6682;font-size:10px;letter-spacing:.15em;text-transform:uppercase;writing-mode:vertical-rl}.renovation{display:grid;min-height:760px;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center;background:radial-gradient(circle at 80% 25%,#0074ff21,transparent 34%),linear-gradient(var(--navy),#03132b)}.copy{position:relative;z-index:3}.copy h2,.history h2{margin:20px 0;font-size:clamp(44px,5.2vw,76px);line-height:.98;letter-spacing:-.055em}.copy>p:last-of-type{max-width:530px;color:#aebed0;font-size:16px;line-height:1.75}.text-link{margin-top:24px;padding:0 0 8px;border:0;border-bottom:1px solid #168cff;color:white;background:none;cursor:pointer}.text-link span{margin-left:18px;color:var(--cyan)}
.compare{--compare-pos:48%;position:relative;height:510px;overflow:hidden;border:1px solid var(--line);border-radius:38px;transform:translateY(calc((var(--scroll) - 800px)*-.03));box-shadow:0 35px 90px #0007;cursor:ew-resize;touch-action:pan-y;user-select:none}.compare-image{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;pointer-events:none}.compare .old{z-index:1;background-image:url("assets/pool-solutions-before.webp")}.compare .new{z-index:2;background-image:url("assets/pool-solutions.webp");clip-path:inset(0 0 0 var(--compare-pos))}.compare-image span{position:absolute;top:22px;padding:8px 13px;border-radius:20px;background:#000819b3;font-size:11px}.compare .old span{left:22px}.compare .new span{right:22px}.compare-divider{position:absolute;z-index:4;top:0;bottom:0;left:var(--compare-pos);width:2px;transform:translateX(-1px);background:white;box-shadow:0 0 20px var(--blue);pointer-events:none}.compare-handle{position:absolute;top:50%;left:50%;display:grid;width:48px;height:48px;place-items:center;border:1px solid #a9dcff;border-radius:50%;transform:translate(-50%,-50%);color:#061128;background:#fff;box-shadow:0 8px 28px #0008,0 0 18px #078aff80;font-size:20px;font-weight:bold;pointer-events:none}.compare-range{position:absolute;z-index:5;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.compare>small{position:absolute;z-index:6;bottom:24px;left:50%;width:max-content;padding:12px 18px;border:1px solid #fff3;border-radius:30px;transform:translateX(-50%);background:#010b20c4;pointer-events:none}.compare:focus-within{outline:2px solid var(--cyan);outline-offset:4px}
.technology{display:grid;min-height:800px;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:radial-gradient(circle at 22% 50%,#0088ff3b,transparent 27%),var(--navy)}.product{position:relative;display:grid;min-height:520px;place-items:center}.product>div{position:absolute;width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#009bff40,transparent 62%)}.product img{position:relative;z-index:2;width:min(570px,100%);filter:drop-shadow(0 40px 55px #0009);animation:float 5s ease-in-out infinite}@keyframes float{50%{transform:translateY(-13px) rotate(-1deg)}}.badge{position:absolute;z-index:3;display:grid;width:68px;height:68px;place-items:center;border:1px solid #3eb1ff80;border-radius:50%;color:var(--cyan);background:#031436bf}.badge.one{top:25%;left:6%}.badge.two{right:4%;bottom:19%;width:58px;height:58px;font-size:11px}
.copy ul{display:grid;gap:15px;margin:30px 0;padding:0;list-style:none}.copy li{display:flex;align-items:center;gap:16px}.copy li>b{display:grid;width:43px;height:43px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--cyan);background:#062d676f}.copy li span{display:flex;flex-direction:column;color:#8299b3;font-size:12px}.copy li strong{margin-bottom:3px;color:white;font-size:15px}.cta{display:inline-flex;min-width:310px;align-items:center;justify-content:space-between;gap:30px;margin-top:14px;padding:18px 23px;border:1px solid #8dd5ffbf;border-radius:32px;color:white;background:linear-gradient(105deg,#0875ff,#0daeff);box-shadow:0 18px 50px #0062ff45;cursor:pointer;transition:.3s}.cta:hover{transform:translateY(-4px)}
.history{min-height:650px;text-align:center;background:#031029}.history-bg{position:absolute;inset:-60px 0;background:linear-gradient(#02091ad4,#02091a99,var(--navy)),url("assets/hero-pool.webp") center 66%/cover;background-attachment:fixed}.history>*:not(.history-bg){position:relative;z-index:2}.history h2{max-width:850px;margin:25px auto 55px}.stats{display:grid;max-width:1050px;grid-template-columns:repeat(3,1fr);margin:auto;border:1px solid var(--line);border-radius:30px;background:#020f29a3}.stats div{display:flex;min-height:155px;flex-direction:column;align-items:center;justify-content:center}.stats div+div{border-left:1px solid var(--line)}.stats strong{color:var(--cyan);font-size:42px}.stats span{margin-top:8px;color:#a8bdd1;font-size:12px}
.final{display:grid;min-height:780px;grid-template-columns:.8fr 1.2fr;align-items:center;background:radial-gradient(circle at 28% 52%,#0096ff3d,transparent 27%),linear-gradient(135deg,#020919,#041d43)}.mascot{position:relative;z-index:2;display:grid;place-items:center}.mascot div{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#009fff52,transparent 67%)}.mascot img{position:relative;z-index:2;width:min(390px,90%);filter:drop-shadow(0 35px 45px #0008);animation:mascot 3.8s ease-in-out infinite}@keyframes mascot{50%{transform:translateY(-18px) rotate(2deg)}}footer{display:flex;align-items:center;justify-content:space-between;padding:36px 6vw;border-top:1px solid #4887c438;color:#718aa5;background:#010612;font-size:12px}footer .logo{min-width:118px;padding:8px 17px}footer .logo strong{font-size:20px}
.modal-bg{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:20px;background:#00040fc7;backdrop-filter:blur(18px)}.modal{position:relative;width:min(650px,100%);max-height:90vh;overflow:auto;padding:clamp(28px,5vw,52px);border:1px solid #43b4ff7a;border-radius:34px;background:radial-gradient(circle at 100% 0,#0087ff38,transparent 35%),#06142f;box-shadow:0 40px 120px #0009}.close{position:absolute;top:18px;right:18px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:white;background:#0003;cursor:pointer}.modal>small{color:var(--cyan);letter-spacing:.15em}.modal h2{margin:14px 0 8px;font-size:clamp(31px,5vw,47px)}.modal>p{color:#9eb3c9}.options{display:grid;gap:10px;margin:28px 0 18px}.options a{display:grid;grid-template-columns:38px 1fr auto;gap:13px;align-items:center;padding:15px;border:1px solid #63abeb40;border-radius:16px;background:#041d43b3;transition:.25s}.options a:hover{transform:translateX(5px);border-color:var(--cyan)}.options i,.options span{color:var(--cyan);font-style:normal}.modal>em{color:#6985a4;font-size:11px}
@media(max-width:900px){.cursor-glow{display:none}header{padding:19px}.logo{min-width:132px;padding:9px 18px}.logo strong{font-size:23px}nav{top:78px;right:17px;left:17px;flex-direction:column;align-items:stretch;padding:24px}nav a{text-align:center}.hero{min-height:900px;padding-top:120px}.hero h1{font-size:clamp(48px,13vw,78px)}.solution{min-width:78vw;height:290px}.section{padding:105px 6vw}.side{display:none}.renovation,.technology,.final{grid-template-columns:1fr;gap:55px}.compare{height:410px;transform:none}.technology .copy{grid-row:1}.product{min-height:370px;grid-row:2}.stats{grid-template-columns:1fr}.stats div+div{border-top:1px solid var(--line);border-left:0}.mascot{grid-row:2}footer{flex-direction:column;gap:22px;text-align:center}}
@media(max-width:520px){.hero{min-height:850px}.carousel-head div{display:none}.copy h2,.history h2{font-size:42px}.cta{min-width:0;width:100%}.compare{height:330px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.hero-bg,.compare{transform:none!important}}
.modal-bg[hidden]{display:none}

/* Exibe as quatro soluções simultaneamente em telas de desktop */
@media(min-width:1101px){
  .carousel-head{width:min(1520px,94%)}
  .track{
    width:min(1520px,94%);
    gap:14px;
    padding:8px 0 24px;
    overflow:visible;
    scroll-snap-type:none;
    cursor:default;
  }
  .solution{
    flex:1 1 0;
    min-width:0;
    height:315px;
    scroll-snap-align:none;
  }
  .card-copy{left:20px;right:58px}
  .card-copy h2{font-size:clamp(20px,1.45vw,24px)}
  .card-copy p{font-size:12px}
  .arrow{right:16px}
  .dots{display:none}
}

/* Em telas menores, mantém a navegação horizontal original */
@media(min-width:901px) and (max-width:1100px){
  .track{width:100%;overflow-x:auto}
  .solution{min-width:355px}
}


/* Grade ampliada de diferenciais da seção Tecnologia */
.technology-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px!important}
.technology-features li{min-width:0;padding:12px 13px;border:1px solid #56b2ff26;border-radius:18px;background:#04162e66}
.technology-features li>b{flex:0 0 43px;font-size:12px}
.technology-features li span{min-width:0;line-height:1.35}

/* Galeria de projetos */
.gallery{background:radial-gradient(circle at 50% 0,#087cff25,transparent 32%),linear-gradient(180deg,#020817,#03142e)}
.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:38px}
.gallery-head h2{max-width:760px;margin:18px 0 0;font-size:clamp(43px,5vw,72px);line-height:.98;letter-spacing:-.055em}
.gallery-head>p{max-width:400px;margin:0;color:#9fb3c8;line-height:1.7}
.gallery-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 34px;border:1px solid var(--line);border-radius:26px;background:#020f29a3;overflow:hidden}
.gallery-stats div{display:flex;min-height:115px;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.gallery-stats div+div{border-left:1px solid var(--line)}
.gallery-stats strong{color:var(--cyan);font-size:36px}
.gallery-stats span{margin-top:6px;color:#9fb3c8;font-size:12px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gallery-card{position:relative;min-height:310px;padding:0;overflow:hidden;border:1px solid #56b2ff45;border-radius:26px;color:white;background:#06172e;cursor:zoom-in;box-shadow:0 22px 55px #0005;text-align:left}
.gallery-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .65s ease}
.gallery-card:after{position:absolute;inset:0;content:"";background:linear-gradient(transparent 42%,#010817ef)}
.gallery-card>span{position:absolute;z-index:2;right:20px;bottom:20px;left:20px;display:grid;grid-template-columns:1fr auto;align-items:end;font-size:25px;font-weight:bold}
.gallery-card small{grid-column:1;display:block;margin-bottom:5px;color:var(--cyan);font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.gallery-card i{grid-row:1/3;grid-column:2;display:grid;width:44px;height:44px;place-items:center;border:1px solid #8fd6ff75;border-radius:50%;background:#063a7dbd;font-style:normal}
.gallery-card:hover img,.gallery-card:focus-visible img{transform:scale(1.08);filter:saturate(1.25)}
.gallery-card:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.gallery-lightbox{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:24px;background:#000611e8;backdrop-filter:blur(18px)}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox-dialog{position:relative;display:grid;width:min(1120px,94vw);height:min(820px,90vh);grid-template-columns:64px 1fr 64px;align-items:center}
.gallery-lightbox figure{display:grid;max-height:86vh;margin:0;place-items:center}
.gallery-lightbox figure img{display:block;max-width:100%;max-height:78vh;border:1px solid #68bbff75;border-radius:24px;box-shadow:0 35px 100px #000}
.gallery-lightbox figcaption{margin-top:14px;color:white;font-size:18px;font-weight:bold}
.gallery-lightbox button{display:grid;width:48px;height:48px;place-items:center;border:1px solid #7ec8ff75;border-radius:50%;color:white;background:#061b3fd9;cursor:pointer}
.gallery-lightbox-close{position:absolute;z-index:3;top:0;right:0;font-size:26px}
.gallery-lightbox-prev{justify-self:start}.gallery-lightbox-next{justify-self:end}
body.gallery-open{overflow:hidden}

@media(max-width:1050px){.technology-features{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){header{background:#020817d9;backdrop-filter:blur(14px)}.gallery-head{display:block}.gallery-head>p{margin-top:22px}.gallery-stats{grid-template-columns:1fr}.gallery-stats div+div{border-top:1px solid var(--line);border-left:0}.gallery-lightbox-dialog{grid-template-columns:52px 1fr 52px}}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr}.gallery-card{min-height:300px}.gallery-lightbox{padding:12px}.gallery-lightbox-dialog{width:100%;grid-template-columns:46px 1fr 46px}.gallery-lightbox button{width:40px;height:40px}.gallery-lightbox-close{top:8px;right:8px}.gallery-lightbox figure img{max-height:72vh;border-radius:16px}}

/* Menu inicia expandido em telas desktop */
@media (min-width:901px){
  nav{
    opacity:1;
    transform:none;
    pointer-events:auto;
  }
}
