/*
Theme Name: K3D Studio
Theme URI: https://k3dstudio.com.br
Author: K3D Studio
Description: Tema WooCommerce da K3D Studio, reproduzindo fielmente o layout de referência (1024 px de base, escala fluida).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: k3d-studio
WC requires at least: 8.0
*/

@font-face{font-family:Roboto;font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/roboto-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Roboto;font-weight:500;font-style:normal;font-display:swap;src:url(assets/fonts/roboto-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Roboto;font-weight:700;font-style:normal;font-display:swap;src:url(assets/fonts/roboto-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Roboto;font-weight:900;font-style:normal;font-display:swap;src:url(assets/fonts/roboto-latin-900-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:700;font-style:italic;font-display:swap;src:url(assets/fonts/montserrat-latin-700-italic.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:800;font-style:italic;font-display:swap;src:url(assets/fonts/montserrat-latin-800-italic.woff2) format("woff2")}

:root{
  --u:calc(min(100vw,2400px) / 1024);
  --bg:#000104;
  --panel:rgba(9,22,58,.78);
  --line:#133a9a;
  --blue:#0a7dff;
  --blue2:#0660e8;
  --cyan:#17c3ff;
  --txt:#fff;
  --mut:#aeb9d6;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--txt);font-family:Roboto,Arial,sans-serif;font-size:calc(14 * var(--u));line-height:1.3}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none;margin:0;padding:0}
h1,h2,h3,h4,p{margin:0}
button,input{font-family:inherit}
.k3d-page{max-width:2400px;margin:0 auto;position:relative;background:var(--bg);overflow-x:clip}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ico{display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- barra superior ---------- */
.topbar{height:calc(31 * var(--u));display:flex;justify-content:space-between;align-items:center;padding:0 calc(56 * var(--u)) 0 calc(55 * var(--u));font-size:calc(11 * var(--u));font-weight:500;background:#010b22;border-bottom:1px solid #0b1c4d}
.topbar__msg{display:flex;align-items:center;gap:calc(6 * var(--u));font-weight:700}
.topbar__msg b{font-weight:700;color:#fff}
.topbar__msg i{font-style:normal;font-weight:400;color:#e6ecff}
.topbar__msg .ico{width:calc(14 * var(--u));height:calc(14 * var(--u));color:#2e9bff}
.topbar__links{display:flex;gap:calc(25 * var(--u))}
.topbar__links a{display:flex;align-items:center;gap:calc(5 * var(--u));font-size:calc(10.2 * var(--u));color:#dfe7ff}
.topbar__links .ico{width:calc(13 * var(--u));height:calc(13 * var(--u));color:#2e9bff;stroke-width:2.6}

/* ---------- cabeçalho ---------- */
.header{position:relative;height:calc(103 * var(--u));background:linear-gradient(#000208,#000515);border-bottom:calc(2 * var(--u)) solid #1a6dff;box-shadow:0 0 calc(14 * var(--u)) rgba(26,109,255,.75),0 calc(2 * var(--u)) 0 rgba(0,160,255,.25)}
.header__logo{position:absolute;left:calc(52 * var(--u));top:calc(5 * var(--u));width:calc(208 * var(--u));height:calc(92 * var(--u))}
.header__logo img{width:100%;height:100%;}
.search{position:absolute;left:calc(328 * var(--u));top:calc(26 * var(--u));width:calc(435 * var(--u));height:calc(37 * var(--u));display:flex;border-radius:calc(6 * var(--u));overflow:hidden;background:#fff;box-shadow:0 0 0 1px #1d5cff,0 0 calc(12 * var(--u)) rgba(20,110,255,.55)}
.search input{flex:1;border:0;outline:0;background:#fff;padding:0 calc(14 * var(--u));font-size:calc(13.5 * var(--u));color:#13203f}
.search input::placeholder{color:#6d7894}
.search button{width:calc(43 * var(--u));border:0;background:linear-gradient(#1b8bff,#0764ee);color:#fff;display:grid;place-items:center;cursor:pointer}
.search .ico{width:calc(19 * var(--u));height:calc(19 * var(--u));stroke-width:2.6}
.cart{position:absolute;left:calc(870 * var(--u));top:calc(25 * var(--u));display:flex;align-items:center;gap:calc(7 * var(--u))}
.cart__ico{position:relative;width:calc(40 * var(--u));height:calc(36 * var(--u));color:#1ca0ff}
.cart__ico .ico{width:calc(40 * var(--u));height:calc(36 * var(--u));stroke-width:2.2}
.cart__count{position:absolute;left:calc(30 * var(--u));top:0;min-width:calc(16 * var(--u));height:calc(16 * var(--u));border-radius:50%;background:#1b8bff;color:#fff;font-size:calc(10 * var(--u));font-weight:700;display:grid;place-items:center;line-height:1}
.cart__txt{display:flex;flex-direction:column;gap:calc(3 * var(--u));font-size:calc(14 * var(--u));font-weight:500;line-height:1.1}
.cart__txt span{font-size:calc(12.5 * var(--u));font-weight:400;color:#dbe4ff}
.nav{position:absolute;left:calc(331 * var(--u));top:calc(70 * var(--u));height:calc(36 * var(--u))}
.nav>ul{display:flex;gap:calc(32 * var(--u));height:100%;align-items:center}
.nav li{position:relative;height:100%;display:flex;align-items:center}
.nav a{display:flex;align-items:center;gap:calc(5 * var(--u));font-size:calc(13 * var(--u));font-weight:500;color:#eaf0ff;height:100%;white-space:nowrap}
.nav .ico{width:calc(12 * var(--u));height:calc(12 * var(--u))}
.nav .is-active>a,.nav .current-menu-item>a,.nav .current_page_item>a{color:var(--cyan)}
.nav .is-active>a::after,.nav .current-menu-item>a::after{content:"";position:absolute;left:calc(-1 * var(--u));right:calc(-1 * var(--u));bottom:calc(1 * var(--u));height:calc(2 * var(--u));background:var(--cyan);box-shadow:0 0 calc(8 * var(--u)) var(--cyan)}
.nav .sub{display:none;position:absolute;left:calc(-12 * var(--u));top:100%;min-width:calc(190 * var(--u));padding:calc(8 * var(--u)) 0;background:#071337;border:1px solid var(--line);border-radius:calc(8 * var(--u));z-index:50;box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(0,0,0,.6)}
.nav li:hover>.sub,.nav li:focus-within>.sub{display:block}
.nav .sub a{height:auto;padding:calc(7 * var(--u)) calc(16 * var(--u));font-size:calc(12.5 * var(--u))}
.nav .sub a:hover{background:#0c2166;color:var(--cyan)}

/* ---------- hero ---------- */
.hero{position:relative;height:calc(378 * var(--u));background:radial-gradient(70% 120% at 70% 50%,#06194f,#000104 70%);overflow:hidden}
.slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}
.slide.is-active{opacity:1;visibility:visible;z-index:2}
.slide__bg{position:absolute;inset:-3% 0;background:url(assets/img/hero.jpg) right center/cover no-repeat;transform:translate3d(0,calc(var(--py,0) * 1px),0);translate:calc(var(--hx,0) * -16px) calc(var(--hy,0) * -10px);transition:translate .4s ease-out}
.slide.is-active .slide__bg{animation:kenburns 18s ease-in-out infinite alternate}
.fx{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.hero__copy{position:absolute;left:calc(54 * var(--u));top:0;width:calc(360 * var(--u));z-index:3}
.hero__kicker{position:absolute;left:0;top:calc(64 * var(--u));font-size:calc(30 * var(--u));font-weight:900;letter-spacing:calc(.3 * var(--u));white-space:nowrap;line-height:calc(38 * var(--u))}
.hero__title{position:absolute;left:0;top:calc(101 * var(--u));font-family:Montserrat,Roboto,sans-serif;font-weight:800;font-style:italic;font-size:calc(41 * var(--u));line-height:calc(43 * var(--u));transform:rotate(-3deg);transform-origin:0 100%;white-space:nowrap;letter-spacing:calc(-.4 * var(--u))}
.hero__title em{display:block;font-style:italic;font-size:calc(59 * var(--u));line-height:calc(62 * var(--u));margin-top:calc(-6 * var(--u));background:linear-gradient(90deg,#1ec8ff,#1b86ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:calc(6 * var(--u))}
.hero__text{position:absolute;left:0;top:calc(240 * var(--u));width:calc(300 * var(--u));font-size:calc(17 * var(--u));font-weight:500;line-height:calc(26 * var(--u));transform:rotate(-2.5deg);transform-origin:0 100%}
.btn-hero{position:absolute;left:0;top:calc(298 * var(--u));width:calc(217 * var(--u));height:calc(48 * var(--u));border-radius:calc(10 * var(--u));display:flex;align-items:center;justify-content:center;gap:calc(10 * var(--u));background:linear-gradient(#1d92ff,#0a6bf5);font-size:calc(17.5 * var(--u));font-weight:700;box-shadow:0 0 0 1px #4db0ff inset,0 0 calc(18 * var(--u)) rgba(20,130,255,.85)}
.btn-hero .ico{width:calc(23 * var(--u));height:calc(23 * var(--u))}

/* ---------- categorias ---------- */
.cats{position:relative;z-index:2;margin:calc(16 * var(--u)) calc(24 * var(--u)) 0;height:calc(174 * var(--u));border:1px solid #1646b8;border-radius:calc(14 * var(--u));background:linear-gradient(#020f2c,#010619);box-shadow:0 0 calc(18 * var(--u)) rgba(20,100,255,.28),inset 0 0 calc(22 * var(--u)) rgba(20,100,255,.12);padding:0 calc(16 * var(--u))}
.sect-title{display:flex;align-items:center;gap:calc(9 * var(--u));font-size:calc(19 * var(--u));font-weight:700;line-height:1}
.sect-title svg{width:calc(27 * var(--u));height:calc(27 * var(--u));color:#ffc61a}
.feat__head .sect-title svg{width:calc(31 * var(--u));height:calc(31 * var(--u));margin-right:calc(-1 * var(--u))}
.cats .sect-title{height:calc(42 * var(--u));padding-left:0}
.cats__grid{display:grid;grid-template-columns:repeat(8,1fr);gap:calc(13 * var(--u))}
.cat{height:calc(120 * var(--u));border:1px solid #14337e;border-radius:calc(10 * var(--u));background:linear-gradient(#06173d,#040d27);display:flex;flex-direction:column;align-items:center;padding-top:calc(3 * var(--u));box-shadow:inset 0 0 calc(12 * var(--u)) rgba(20,90,255,.12);transition:.2s}
.cat:hover{border-color:var(--cyan);box-shadow:0 0 calc(14 * var(--u)) rgba(23,195,255,.45)}
.cat img{width:calc(96 * var(--u));height:calc(78 * var(--u));object-fit:contain;}
.cat span{margin-top:0;font-size:calc(12 * var(--u));font-weight:700;text-align:center;line-height:calc(15 * var(--u));max-width:100%;padding:0 calc(4 * var(--u));color:#f0f4ff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- produtos em destaque ---------- */
.feat{padding:calc(18 * var(--u)) calc(35 * var(--u)) 0}
.feat__head{height:calc(36 * var(--u));display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(6 * var(--u))}
.feat__head .sect-title{font-size:calc(21 * var(--u));padding-left:calc(1 * var(--u))}
.btn-sm{height:calc(27 * var(--u));padding:0 calc(12 * var(--u));display:inline-flex;align-items:center;gap:calc(7 * var(--u));border-radius:calc(6 * var(--u));background:linear-gradient(#1b8bff,#0a68f0);font-size:calc(12 * var(--u));font-weight:700;box-shadow:0 0 calc(10 * var(--u)) rgba(20,120,255,.6)}
.btn-sm .ico{width:calc(13 * var(--u));height:calc(13 * var(--u));stroke-width:2.6}
.feat__head .btn-sm{margin-right:calc(-1 * var(--u))}
.pcar{position:relative}
.pcar__view{overflow:hidden;margin:calc(-12 * var(--u));padding:calc(12 * var(--u))}
.pgrid{--per:5;--gap:calc(11.5 * var(--u));display:flex;gap:var(--gap);transition:transform .7s cubic-bezier(.2,.7,.2,1);touch-action:pan-y}
.pgrid .pcard{flex:0 0 calc((100% - (var(--per) - 1) * var(--gap)) / var(--per))}
.pcar__btn{position:absolute;top:50%;z-index:6;width:calc(42 * var(--u));height:calc(42 * var(--u));margin-top:calc(-21 * var(--u));border-radius:50%;border:1px solid #2c6cff;background:rgba(5,14,44,.88);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 0 calc(16 * var(--u)) rgba(30,120,255,.6);transition:.25s}
.pcar__btn:hover{background:#0a68f0;transform:scale(1.12)}
.pcar__btn .ico{width:calc(20 * var(--u));height:calc(20 * var(--u))}
.pcar__btn--prev{left:calc(-20 * var(--u))}.pcar__btn--prev .ico{rotate:90deg}
.pcar__btn--next{right:calc(-20 * var(--u))}.pcar__btn--next .ico{rotate:-90deg}
.pcar:not(.has-nav) .pcar__btn{display:none}
.pcar__btn[disabled]{opacity:.35;pointer-events:none}
.pcard{position:relative;height:calc(212 * var(--u));border:1px solid #1d47ad;box-shadow:0 0 calc(10 * var(--u)) rgba(30,110,255,.3);border-radius:calc(9 * var(--u));overflow:hidden;background:linear-gradient(#08122e,#030820);padding-bottom:0}
.pcard__img{display:block;height:calc(116 * var(--u));background:linear-gradient(#0b1638,#050b22);overflow:hidden}
.pcard__img img{width:100%;height:100%;object-fit:cover}
.pcard__fav{position:absolute;right:calc(13 * var(--u));top:calc(8 * var(--u));width:calc(20 * var(--u));height:calc(20 * var(--u));padding:0;border:0;background:none;color:#fff;cursor:pointer;display:grid;place-items:center}
.pcard__fav .ico{width:calc(18 * var(--u));height:calc(18 * var(--u));stroke-width:1.8}
.pcard__fav.is-active .ico{fill:#ff4d6d;stroke:#ff4d6d}
.pcard__title{display:block;margin:calc(6 * var(--u)) calc(13 * var(--u)) 0;font-size:calc(12 * var(--u));font-weight:700;line-height:calc(17 * var(--u));height:calc(17 * var(--u));overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pcard__price{display:block;margin:calc(6 * var(--u)) calc(13 * var(--u)) 0;font-size:calc(16.5 * var(--u));font-weight:700;line-height:calc(20 * var(--u));height:calc(20 * var(--u));overflow:hidden;white-space:nowrap}
.pcard__price del{font-size:calc(11 * var(--u));color:var(--mut);margin-right:calc(5 * var(--u));font-weight:400}
.pcard__price ins{text-decoration:none}
.pcard .btn-buy{display:flex;margin:calc(6 * var(--u)) calc(13 * var(--u)) 0;height:calc(33 * var(--u));align-items:center;justify-content:center;gap:calc(7 * var(--u));border-radius:calc(5 * var(--u));background:linear-gradient(#1a8aff,#0a66ee);font-size:calc(12.5 * var(--u));font-weight:700;color:#fff;box-shadow:0 0 0 1px #2f9bff inset;transition:.2s}
.pcard .btn-buy:hover{filter:brightness(1.15)}
.pcard .btn-buy .ico{width:calc(15 * var(--u));height:calc(15 * var(--u))}
.pcard .added_to_cart{display:none}
.pcard .btn-buy.loading{opacity:.6}

/* ---------- benefícios ---------- */
.benefits{margin:calc(16 * var(--u)) calc(18 * var(--u)) 0;height:calc(72 * var(--u));border:1px solid #14378f;border-radius:calc(12 * var(--u));background:linear-gradient(#030f2d,#010719);box-shadow:inset 0 0 calc(18 * var(--u)) rgba(20,100,255,.14);display:grid;grid-template-columns:calc(232 * var(--u)) calc(250 * var(--u)) calc(254 * var(--u)) 1fr;padding-left:calc(28 * var(--u));align-items:center}
.ben{display:flex;align-items:center}
.ben img{height:calc(48 * var(--u));width:auto;;flex:none}
.ben:nth-child(1) .ben__ico{width:calc(75 * var(--u))}
.ben:nth-child(n+2) .ben__ico{width:calc(63 * var(--u))}
.ben__t{font-size:calc(12 * var(--u));font-weight:700;line-height:calc(16 * var(--u))}
.ben__t small{display:block;font-size:calc(12 * var(--u));font-weight:400;color:#d3dcf3}

/* ---------- sobre + depoimentos ---------- */
.about{position:relative;height:calc(224 * var(--u));margin-top:0;background:radial-gradient(55% 85% at 47% 75%,rgba(20,90,255,.30),transparent 72%),linear-gradient(#000205,#000820)}
.about__art{position:absolute;left:calc(282 * var(--u));top:calc(-4 * var(--u));width:calc(430 * var(--u));height:calc(244 * var(--u));-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.about__art img{width:100%;height:100%}
.about__txt{position:absolute;left:calc(24 * var(--u));top:calc(34 * var(--u));width:calc(272 * var(--u))}
.about__txt h2{font-size:calc(24 * var(--u));font-weight:700;line-height:calc(34 * var(--u));letter-spacing:calc(-.2 * var(--u))}
.about__txt p{font-size:calc(13.2 * var(--u));line-height:calc(19 * var(--u));color:#eef2ff;letter-spacing:calc(-.05 * var(--u))}
.about__txt p+p{margin-top:calc(9 * var(--u))}
.about__txt h2+p{margin-top:calc(12 * var(--u))}
.about__txt .btn-md{position:absolute;left:0;top:calc(139 * var(--u))}
.btn-md{height:calc(38 * var(--u));padding:0 calc(17 * var(--u));display:inline-flex;align-items:center;gap:calc(9 * var(--u));border-radius:calc(8 * var(--u));background:linear-gradient(#1b8bff,#0a68f0);font-size:calc(14 * var(--u));font-weight:700;box-shadow:0 0 calc(12 * var(--u)) rgba(20,120,255,.6),0 0 0 1px #3ca3ff inset;white-space:nowrap}
.btn-md .ico{width:calc(16 * var(--u));height:calc(16 * var(--u));stroke-width:2.4}
.testi{position:absolute;left:calc(716 * var(--u));top:calc(24 * var(--u));width:calc(289 * var(--u));height:calc(162 * var(--u));border-left:1px solid rgba(60,120,255,.5);padding-left:calc(19 * var(--u))}
.testi h2{font-size:calc(18 * var(--u));font-weight:700;line-height:calc(24 * var(--u));margin-top:calc(11 * var(--u))}
.testi__card{position:absolute;left:0;top:calc(41 * var(--u));width:calc(288 * var(--u));height:calc(118 * var(--u));border:1px solid #1d4fc9;border-radius:calc(12 * var(--u));background:linear-gradient(#051236,#020a24);box-shadow:0 0 calc(14 * var(--u)) rgba(20,100,255,.3)}
.testi__av{position:absolute;left:calc(19 * var(--u));top:calc(25 * var(--u));width:calc(66 * var(--u));height:calc(66 * var(--u));border-radius:50%;overflow:hidden}
.testi__av img{width:100%;height:100%;object-fit:cover}
.testi__q{position:absolute;left:calc(97 * var(--u));top:calc(19 * var(--u));width:calc(192 * var(--u));font-size:calc(11.4 * var(--u));line-height:calc(16 * var(--u));font-weight:500}
.testi__stars{position:absolute;left:calc(97 * var(--u));top:calc(62 * var(--u));display:flex;gap:calc(2 * var(--u));color:#ffc61a}
.testi__stars svg{width:calc(15 * var(--u));height:calc(15 * var(--u));fill:#ffc61a}
.testi__n{position:absolute;left:calc(97 * var(--u));top:calc(90 * var(--u));font-size:calc(12 * var(--u))}

/* ---------- newsletter ---------- */
.news{position:relative;height:calc(90 * var(--u));background:linear-gradient(90deg,#001569 0%,#000d46 38%,#000517 70%,#000102 100%);border-top:calc(2 * var(--u)) solid #1a6dff;box-shadow:0 calc(-4 * var(--u)) calc(16 * var(--u)) rgba(26,109,255,.6)}
.news__ico{position:absolute;left:calc(44 * var(--u));top:calc(27 * var(--u));width:calc(52 * var(--u));height:calc(48 * var(--u));}
.news__t{position:absolute;left:calc(112 * var(--u));top:calc(26 * var(--u))}
.news__t h3{font-size:calc(17 * var(--u));font-weight:700;line-height:calc(22 * var(--u))}
.news__t p{font-size:calc(10.6 * var(--u));line-height:calc(16 * var(--u));margin-top:calc(5 * var(--u))}
.news__form{position:absolute;left:calc(489 * var(--u));top:calc(30 * var(--u));width:calc(316 * var(--u));height:calc(37 * var(--u));display:flex;border-radius:calc(7 * var(--u));overflow:hidden;background:#fff}
.news__form input{flex:1;min-width:0;border:0;outline:0;padding:0 calc(14 * var(--u));font-size:calc(13 * var(--u));color:#13203f;background:#fff}
.news__form input::placeholder{color:#6d7894}
.news__form button{width:calc(94 * var(--u));border:0;background:linear-gradient(#1b8bff,#0764ee);color:#fff;font-weight:700;font-size:calc(14 * var(--u));cursor:pointer}
.news__tag{position:absolute;left:calc(838 * var(--u));top:calc(8 * var(--u));width:calc(162 * var(--u));height:calc(76 * var(--u));}
.news__msg{position:absolute;left:calc(489 * var(--u));top:calc(70 * var(--u));font-size:calc(11.5 * var(--u));color:#bfe3ff}

/* ---------- rodapé ---------- */
.footer{background:linear-gradient(#000617,#000410)}
.footer__main{position:relative;height:calc(133 * var(--u))}
.footer__logo{position:absolute;left:calc(44 * var(--u));top:calc(14 * var(--u))}
.footer__logo img{width:calc(160 * var(--u));height:calc(78 * var(--u));}
.footer__logo span{position:absolute;left:calc(28 * var(--u));top:calc(84 * var(--u));font-size:calc(12 * var(--u));white-space:nowrap}
.fcol{position:absolute;top:calc(21 * var(--u))}
.fcol h4{font-size:calc(13 * var(--u));font-weight:700;line-height:calc(18 * var(--u))}
.fcol li{font-size:calc(12 * var(--u));line-height:calc(18 * var(--u));margin-top:0}
.fcol--links{left:calc(319 * var(--u))}
.fcol--links ul{margin-top:calc(5 * var(--u))}
.fcol--links a:hover{color:var(--cyan)}
.fcol--contact{left:calc(483 * var(--u))}
.fcol--contact ul{margin-top:calc(1 * var(--u))}
.fcol--contact li{display:flex;align-items:center;gap:calc(12 * var(--u));font-size:calc(12 * var(--u));height:calc(25 * var(--u))}
.fcol--contact .ico{width:calc(19 * var(--u));height:calc(19 * var(--u));color:#1c95ff;flex:none;stroke-width:2.6}
.fcol--pay{left:calc(745 * var(--u));top:calc(23 * var(--u))}
.fcol--pay img{margin-top:calc(5 * var(--u));width:calc(244 * var(--u));height:auto}
.fdiv{position:absolute;top:calc(21 * var(--u));height:calc(93 * var(--u));width:1px;background:rgba(60,100,200,.35)}
.footer__bar{height:calc(45 * var(--u));border-top:1px solid #0e2260;display:flex;justify-content:space-between;align-items:center;padding:0 calc(42 * var(--u));font-size:calc(11 * var(--u));color:#e7edff}
.footer__bar b{color:#2e9bff;font-weight:700}
.footer__bar i{color:#ff3b4f;font-style:normal}

/* ---------- toast ---------- */
.k3d-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#0a68f0;color:#fff;padding:12px 22px;border-radius:10px;font-weight:700;z-index:999;box-shadow:0 8px 30px rgba(0,0,0,.5)}
.k3d-toast.err{background:#d8334a}

/* ---------- páginas internas ---------- */
.inner{padding:36px 8% 60px;min-height:50vh}
.inner h1{font-size:30px;margin-bottom:20px}
.inner a{color:var(--cyan)}
.inner p,.inner li{line-height:1.6;color:#e3e9ff}
.k3d-form{display:grid;gap:14px;max-width:640px}
.k3d-form input,.k3d-form textarea{width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--line);background:#071337;color:#fff;font-size:15px}
.k3d-form button{height:44px;border:0;border-radius:8px;background:linear-gradient(#1b8bff,#0a68f0);color:#fff;font-weight:700;font-size:15px;cursor:pointer}

/* ---------- mobile ---------- */
@media (max-width:820px){
  :root{--u:1px}
  .topbar{padding:0 12px;height:auto;min-height:30px;flex-wrap:wrap;gap:4px 12px;padding-top:6px;padding-bottom:6px;font-size:11px}
  .topbar__links{gap:14px}
  .header{position:relative;height:auto;padding:10px 12px 0;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
  .header__logo,.search,.cart,.nav{position:static}
  .header__logo{width:150px;height:66px}
  .cart{justify-self:end}
  .search{grid-column:1/-1;width:100%;height:40px;order:3}
  .nav{grid-column:1/-1;order:4;height:auto;overflow-x:auto;margin:0 -12px;padding:0 12px}
  .nav>ul{gap:13px;height:40px}
  .nav li:first-child .ico{display:none}
  .nav a{font-size:13px}
  .nav .sub{display:none!important}
  .hero{height:600px}
  .slide{display:flex;flex-direction:column;padding-top:20px}
  .slide__bg{inset:auto 0 0 0;height:50%;background-size:auto 100%;background-position:74% bottom}
  .orb{display:none}
  .hero__copy{position:relative;left:auto;width:auto;padding:0 18px}
  .hero__kicker,.hero__title,.hero__text,.btn-hero{position:static}
  .hero__kicker{font-size:22px;margin-bottom:4px;line-height:30px}
  .hero__title{font-size:30px;line-height:32px;transform:rotate(-3deg);transform-origin:0 100%;margin:4px 0 14px;letter-spacing:-.3px}
  .hero__title em{font-size:46px;line-height:46px}
  .hero__text{width:auto;font-size:15px;line-height:21px;transform:none;margin-bottom:16px}
  .btn-hero{display:inline-flex;width:200px;height:46px;font-size:16px}
  .cats{margin:0 10px;height:auto;padding:0 10px 12px}
  .cats .sect-title{height:46px;font-size:18px}
  .cats__grid{grid-template-columns:repeat(4,1fr);gap:8px}
  .cat{height:112px}
  .cat img{width:100%;height:70px}
  .feat{padding:18px 10px 0}
  .feat__head{height:auto;flex-wrap:wrap;gap:10px;margin-bottom:12px}
  .feat__head .sect-title{font-size:19px}
  .btn-sm{height:30px;font-size:12px}
  .pgrid{--per:2;--gap:10px}
  .pcar__btn{display:none!important}
  .pcar__view{margin:0;padding:0}
  .pcard{height:auto;padding-bottom:12px}
  .pcard__img{height:auto;aspect-ratio:3/2}
  .pcard__title,.pcard__price,.pcard .btn-buy{margin-left:10px;margin-right:10px}
  .benefits{margin:16px 10px 0;height:auto;grid-template-columns:1fr 1fr;padding:12px;gap:12px}
  .ben:nth-child(n) .ben__ico{width:56px}
  .ben img{height:42px}
  .about{height:auto;padding:24px 16px 0;display:flex;flex-direction:column}
  .about__txt,.about__art,.testi,.about__txt .btn-md{position:static;width:auto}
  .about__txt h2{font-size:22px}
  .about__txt .btn-md{margin-top:16px}
  .about__art{height:auto;margin:6px -16px 0;-webkit-mask-image:none;mask-image:none}
  .testi{border-left:0;padding:0;margin:8px 0 20px;height:auto}
  .testi h2{margin-bottom:12px}
  .testi__card{position:relative;top:0;width:auto;height:auto;min-height:120px;display:flex;gap:12px;padding:16px;align-items:flex-start;flex-wrap:wrap}
  .testi__av,.testi__q,.testi__stars,.testi__n{position:static}
  .testi__av{width:60px;height:60px;flex:none}
  .testi__q{width:calc(100% - 80px)}
  .testi__stars,.testi__n{margin-left:72px}
  .news{height:auto;padding:22px 16px;display:grid;gap:14px}
  .news__ico,.news__t,.news__form,.news__tag,.news__msg{position:static}
  .news__ico{width:44px;height:40px}
  .news__form{width:100%;height:42px}
  .news__tag{width:150px;height:auto;justify-self:end}
  .footer__main{height:auto;padding:24px 16px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
  .footer__logo,.fcol,.fdiv{position:static}
  .footer__logo{grid-column:1/-1}
  .footer__logo span{position:static;display:block;margin-top:4px}
  .fdiv{display:none}
  .fcol--pay{grid-column:1/-1}
  .fcol--pay img{width:260px}
  .fcol--links ul,.fcol--contact ul{margin-top:8px}
  .footer__bar{height:auto;flex-direction:column;gap:6px;padding:14px 16px;text-align:center}
}


/* =====================================================================
   EFEITOS MODERNOS (não alteram o layout; respeitam prefers-reduced-motion)
   ===================================================================== */
html{scroll-behavior:smooth}
::selection{background:#0a7dff;color:#fff}
.k3d-progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:9999;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#17c3ff,#0a7dff,#7a5cff);box-shadow:0 0 10px #17c3ff;pointer-events:none}

/* cabeçalho fixo com sombra ao rolar */
.header{position:sticky;top:0;z-index:100;transition:box-shadow .3s,background .3s}
body.admin-bar .header{top:32px}
.header.is-stuck{background:linear-gradient(#000208f2,#000515f2);box-shadow:0 8px 30px rgba(0,0,0,.65),0 0 calc(14 * var(--u)) rgba(26,109,255,.8)}

/* entrada do hero */
@keyframes rise{from{opacity:0;translate:0 26px;filter:blur(6px)}to{opacity:1;translate:0 0;filter:none}}
@keyframes kenburns{from{scale:1}to{scale:1.07}}
@keyframes shimmer{from{background-position:0 0}to{background-position:-200% 0}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 1px #4db0ff inset,0 0 calc(18 * var(--u)) rgba(20,130,255,.85)}50%{box-shadow:0 0 0 1px #8fd0ff inset,0 0 calc(34 * var(--u)) rgba(40,160,255,1)}}
@keyframes floaty{0%,100%{translate:0 0}50%{translate:0 calc(-6 * var(--u))}}
@keyframes drift1{from{translate:0 0}to{translate:calc(60 * var(--u)) calc(30 * var(--u))}}
@keyframes drift2{from{translate:0 0}to{translate:calc(-50 * var(--u)) calc(-26 * var(--u))}}
@keyframes bump{0%{scale:1}40%{scale:1.6}100%{scale:1}}
@keyframes wa{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)}100%{box-shadow:0 0 0 22px rgba(37,211,102,0)}}
.slide.is-active .hero__kicker{animation:rise .8s .15s both cubic-bezier(.2,.7,.2,1)}
.slide.is-active .hero__title{animation:rise .9s .3s both cubic-bezier(.2,.7,.2,1)}
.slide.is-active .hero__text{animation:rise .9s .5s both cubic-bezier(.2,.7,.2,1)}
.slide.is-active .btn-hero{animation:rise .9s .65s both cubic-bezier(.2,.7,.2,1),pulse 2.8s 1.8s ease-in-out infinite}
.hero__title em{background-size:200% 100%;background-image:linear-gradient(90deg,#1ec8ff,#1b86ff,#7fe3ff,#1ec8ff);animation:shimmer 6s linear infinite}
.orb{position:absolute;z-index:1;border-radius:50%;filter:blur(30px);mix-blend-mode:screen;pointer-events:none}
.orb--1{left:calc(210 * var(--u));top:calc(60 * var(--u));width:calc(210 * var(--u));height:calc(210 * var(--u));background:radial-gradient(circle,rgba(20,110,255,.45),transparent 70%);animation:drift1 9s ease-in-out infinite alternate}
.orb--2{left:calc(520 * var(--u));top:calc(190 * var(--u));width:calc(260 * var(--u));height:calc(200 * var(--u));background:radial-gradient(circle,rgba(0,200,255,.28),transparent 70%);animation:drift2 11s ease-in-out infinite alternate}

/* revelar ao rolar */
.js .rv{opacity:0;translate:0 28px;scale:.97;transition:opacity .7s cubic-bezier(.2,.7,.2,1),translate .7s cubic-bezier(.2,.7,.2,1),scale .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;translate:0 0;scale:1}

/* botões: brilho que atravessa */
.btn-sm,.pcard .btn-buy,.btn-md,.btn-hero,.news__form button,.search button{overflow:hidden}
.btn-sm,.pcard .btn-buy,.btn-md{position:relative}
.btn-sm::after,.pcard .btn-buy::after,.btn-md::after,.btn-hero::after,.news__form button::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.38) 50%,transparent 65%);transform:translateX(-130%);transition:transform .75s;pointer-events:none}
.btn-sm:hover::after,.pcard .btn-buy:hover::after,.btn-md:hover::after,.btn-hero:hover::after,.news__form button:hover::after{transform:translateX(130%)}
.btn-hero,.btn-sm,.btn-md,.btn-buy{transition:transform .25s,filter .25s,box-shadow .25s}
.btn-sm:hover,.btn-md:hover,.btn-buy:hover{transform:translateY(calc(-2 * var(--u)));filter:brightness(1.12)}
.btn-hero:hover{filter:brightness(1.12);transform:translateY(calc(-2 * var(--u))) scale(1.02)}
.btn-hero .ico:last-child,.btn-sm .ico,.btn-md .ico{transition:transform .25s}
.btn-hero:hover .ico:last-child,.btn-sm:hover .ico,.btn-md:hover .ico{transform:translateX(calc(4 * var(--u)))}
.pcard .btn-buy.added{background:linear-gradient(#2fd36b,#14a84a)}

/* cartões: elevação, brilho neon e holofote que segue o mouse */
.cat,.pcard{position:relative;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .3s}
.cat::before,.pcard::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(calc(200 * var(--u)) circle at var(--mx,50%) var(--my,50%),rgba(50,160,255,.26),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;z-index:2}
.cat:hover::before,.pcard:hover::before{opacity:1}
.cat:hover{transform:translateY(calc(-6 * var(--u)));border-color:var(--cyan);box-shadow:0 calc(12 * var(--u)) calc(26 * var(--u)) rgba(0,0,0,.55),0 0 calc(20 * var(--u)) rgba(23,195,255,.5)}
.cat img{transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s}
.cat:hover img{transform:translateY(calc(-4 * var(--u))) scale(1.1);filter:drop-shadow(0 calc(6 * var(--u)) calc(10 * var(--u)) rgba(30,140,255,.7))}
.pcard:hover{transform:translateY(calc(-7 * var(--u)));border-color:#35a0ff;box-shadow:0 calc(16 * var(--u)) calc(30 * var(--u)) rgba(0,0,0,.6),0 0 calc(22 * var(--u)) rgba(40,140,255,.55)}
.pcard__img img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pcard:hover .pcard__img img{transform:scale(1.09)}
.pcard__fav{transition:transform .25s}
.pcard__fav:hover{transform:scale(1.25)}
.pcard__fav.is-active .ico{animation:bump .4s}
.ben img{transition:transform .3s,filter .3s}
.ben:hover img{transform:scale(1.12);filter:drop-shadow(0 0 calc(8 * var(--u)) rgba(30,150,255,.9))}
.benefits,.cats,.testi__card{transition:box-shadow .4s}
.benefits:hover,.cats:hover{box-shadow:inset 0 0 calc(18 * var(--u)) rgba(20,100,255,.18),0 0 calc(24 * var(--u)) rgba(20,100,255,.35)}
.testi__card:hover{box-shadow:0 0 calc(24 * var(--u)) rgba(30,120,255,.5)}
.about__art img{animation:floaty 7s ease-in-out infinite}
.news__tag{animation:floaty 5s ease-in-out infinite}
.news__ico{animation:floaty 4s ease-in-out infinite}
.nav a{position:relative;transition:color .2s}
.nav>ul>li:not(.is-active)>a::before{content:"";position:absolute;left:0;right:0;bottom:calc(7 * var(--u));height:calc(2 * var(--u));background:var(--cyan);box-shadow:0 0 calc(8 * var(--u)) var(--cyan);transform:scaleX(0);transition:transform .3s;transform-origin:0 50%}
.nav>ul>li:not(.is-active):hover>a::before{transform:scaleX(1)}
.nav a:hover{color:var(--cyan)}
.nav .sub{animation:rise .25s both}
.search{transition:box-shadow .3s}
.search:focus-within{box-shadow:0 0 0 2px #17c3ff,0 0 calc(22 * var(--u)) rgba(23,195,255,.7)}
.cart{transition:transform .25s}
.cart:hover{transform:scale(1.05)}
.cart__count.bump{animation:bump .5s}
.footer a{transition:color .2s}
.footer__bar b{transition:text-shadow .3s}
.footer__bar b:hover{text-shadow:0 0 10px #2e9bff}
.fcol--pay img{transition:transform .3s,filter .3s}
.fcol--pay img:hover{transform:scale(1.04);filter:drop-shadow(0 0 10px rgba(40,140,255,.6))}

/* WhatsApp flutuante */
.wa{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;z-index:900;animation:wa 2.2s infinite;transition:transform .25s}
.wa:hover{transform:scale(1.1) rotate(-6deg)}
.wa svg{width:30px;height:30px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;translate:none;scale:1}
}
@media (max-width:820px){
  .header{position:relative}
  .cat:hover,.pcard:hover{transform:none}
}

/* =====================================================================
   PÁGINAS INTERNAS
   ===================================================================== */
.inner{max-width:1200px;margin:0 auto;padding:44px 24px 70px}
.inner>h1,.inner .entry-title,.inner .page-title,.k3d-woo .product_title,.k3d-woo h1.page-title{font-size:32px;font-weight:700;margin:0 0 26px;padding-bottom:14px;position:relative}
.inner>h1::after,.inner .entry-title::after,.k3d-woo h1.page-title::after{content:"";position:absolute;left:0;bottom:0;width:90px;height:3px;border-radius:3px;background:linear-gradient(90deg,#17c3ff,#0a7dff);box-shadow:0 0 12px #17c3ff}
.notfound .search--inline{position:static;width:100%;max-width:520px;height:46px;margin:20px 0}
.notfound .search--inline input{flex:1;border:0;padding:0 16px;font-size:15px}
.notfound .search--inline button{width:54px}
.notfound .search--inline .ico{width:22px;height:22px}
.notfound__cats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}
.chip{padding:8px 16px;border:1px solid var(--line);border-radius:30px;background:#06133a;color:#fff!important;font-size:14px;transition:.25s}
.chip:hover{border-color:var(--cyan);box-shadow:0 0 14px rgba(23,195,255,.5);transform:translateY(-2px)}
.inner .btn-md{font-size:15px;height:44px;padding:0 22px;color:#fff}
.k3d-ok{padding:12px 16px;border-radius:8px;background:#0b3a1f;border:1px solid #1fa34f;color:#c9ffd9}
.k3d-err{padding:12px 16px;border-radius:8px;background:#3a0b14;border:1px solid #d8334a;color:#ffd0d6}

/* =====================================================================
   V2 – TELA CHEIA, SLIDER, MOVIMENTO
   ===================================================================== */
@property --ang{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes spin{to{--ang:360deg}}
@keyframes spinr{to{rotate:360deg}}
@keyframes loaderOut{to{opacity:0;visibility:hidden}}
@keyframes loaderBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes scrollx{to{transform:translateX(-50%)}}
@keyframes dot{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes popin{from{opacity:0;scale:.6;filter:blur(10px)}to{opacity:1;scale:1;filter:none}}
@keyframes glowpulse{0%,100%{opacity:.55;scale:1}50%{opacity:1;scale:1.08}}

/* pré-carregamento */
.loader{position:fixed;inset:0;z-index:99999;background:radial-gradient(circle at 50% 45%,#07236b,#000208 70%);display:none;align-items:center;justify-content:center;flex-direction:column;gap:22px}
.js .loader{display:flex;animation:loaderOut .6s 2.6s forwards}
.loader.is-done{animation:loaderOut .6s forwards}
.loader img{width:230px;height:auto;animation:popin 1s both,glowpulse 2s 1s infinite}
.loader i{display:block;width:200px;height:3px;border-radius:3px;background:linear-gradient(90deg,#17c3ff,#0a7dff);transform-origin:0 50%;animation:loaderBar 1.6s .2s both ease-out;box-shadow:0 0 14px #17c3ff}

/* brilho que segue o cursor */
.cursor-glow{position:fixed;left:0;top:0;width:380px;height:380px;margin:-190px 0 0 -190px;border-radius:50%;background:radial-gradient(circle,rgba(30,140,255,.2),transparent 65%);pointer-events:none;z-index:60;mix-blend-mode:screen;opacity:0;transition:opacity .4s}
.cursor-glow.on{opacity:1}

/* slides de produto e orçamento */
.sp{position:absolute;left:calc(54 * var(--u));top:calc(60 * var(--u));width:calc(440 * var(--u));z-index:3;display:flex;flex-direction:column;align-items:flex-start}
.sp__k{display:inline-block;padding:calc(6 * var(--u)) calc(14 * var(--u));border:1px solid #2d78ff;border-radius:calc(30 * var(--u));background:rgba(10,60,180,.35);backdrop-filter:blur(6px);font-size:calc(12 * var(--u));font-weight:700;letter-spacing:calc(1.5 * var(--u));text-transform:uppercase;color:#8fd6ff;box-shadow:0 0 calc(16 * var(--u)) rgba(30,130,255,.45)}
.sp__t{margin:calc(16 * var(--u)) 0 calc(6 * var(--u));font-family:Montserrat,Roboto,sans-serif;font-weight:800;font-style:italic;font-size:calc(46 * var(--u));line-height:calc(50 * var(--u));letter-spacing:calc(-.5 * var(--u));background:linear-gradient(90deg,#fff,#aee0ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sp__price{font-size:calc(40 * var(--u));font-weight:900;color:var(--cyan);margin:calc(6 * var(--u)) 0 calc(20 * var(--u));text-shadow:0 0 calc(22 * var(--u)) rgba(23,195,255,.6);line-height:1.1}
.sp__price del{font-size:calc(18 * var(--u));color:var(--mut);font-weight:400;margin-right:calc(8 * var(--u))}.sp__price ins{text-decoration:none}
.sp__p{font-size:calc(17 * var(--u));line-height:calc(25 * var(--u));color:#dbe6ff;margin:calc(6 * var(--u)) 0 calc(22 * var(--u));max-width:calc(360 * var(--u))}
.sp .btn-hero{position:static;width:auto;padding:0 calc(28 * var(--u))}
.slide .btn-hero.ready{animation:pulse 2.8s ease-in-out infinite!important}
.slide.is-active .sp>*{animation:rise .8s both cubic-bezier(.2,.7,.2,1)}
.slide.is-active .sp>*:nth-child(2){animation-delay:.12s}.slide.is-active .sp>*:nth-child(3){animation-delay:.24s}.slide.is-active .sp>*:nth-child(4){animation-delay:.36s}
.slide--prod,.slide--quote{background:radial-gradient(60% 110% at 76% 50%,rgba(22,92,255,.5),transparent 70%),radial-gradient(40% 80% at 10% 100%,rgba(0,170,255,.22),transparent 70%)}
.slide--prod::before,.slide--quote::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(60,130,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(60,130,255,.12) 1px,transparent 1px);background-size:calc(44 * var(--u)) calc(44 * var(--u));-webkit-mask-image:radial-gradient(70% 90% at 70% 50%,#000,transparent);mask-image:radial-gradient(70% 90% at 70% 50%,#000,transparent);animation:grid 14s linear infinite}
@keyframes grid{to{background-position:calc(44 * var(--u)) calc(44 * var(--u)),calc(44 * var(--u)) calc(44 * var(--u))}}
.sp__art{position:absolute;left:calc(560 * var(--u));top:calc(14 * var(--u));width:calc(380 * var(--u));height:calc(350 * var(--u));z-index:3;display:grid;place-items:center;translate:calc(var(--hx,0) * -26px) calc(var(--hy,0) * -16px);transition:translate .3s ease-out}
.sp__art img{position:relative;width:76%;height:76%;object-fit:cover;border-radius:calc(30 * var(--u));border:calc(2 * var(--u)) solid rgba(60,160,255,.7);box-shadow:0 calc(26 * var(--u)) calc(40 * var(--u)) rgba(0,0,0,.6),0 0 calc(40 * var(--u)) rgba(30,140,255,.6);animation:floaty 5s ease-in-out infinite;z-index:2}
.slide.is-active .sp__art{animation:popin 1s .2s both cubic-bezier(.2,.7,.2,1)}
.sp__ring{position:absolute;inset:6%;border-radius:50%;border:calc(2 * var(--u)) dashed rgba(60,160,255,.6);animation:spinr 22s linear infinite}
.sp__ring--2{inset:-2%;border:1px solid rgba(23,195,255,.35);border-top-color:#17c3ff;border-right-color:transparent;animation:spinr 9s linear infinite reverse}
.sq__art{position:absolute;left:calc(440 * var(--u));top:calc(6 * var(--u));width:calc(580 * var(--u));height:calc(340 * var(--u));z-index:2;-webkit-mask-image:radial-gradient(closest-side,#000 82%,transparent);mask-image:radial-gradient(closest-side,#000 82%,transparent);translate:calc(var(--hx,0) * -20px) calc(var(--hy,0) * -12px);transition:translate .3s ease-out}
.sq__art img{width:100%;height:100%;object-fit:contain;animation:floaty 6s ease-in-out infinite}

/* controles do slider */
.hero__nav{position:absolute;top:50%;z-index:8;width:calc(38 * var(--u));height:calc(38 * var(--u));margin-top:calc(-19 * var(--u));border-radius:50%;border:1px solid rgba(80,160,255,.6);background:rgba(4,14,48,.55);backdrop-filter:blur(8px);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.3s;opacity:.0}
.hero:hover .hero__nav{opacity:1}
.hero__nav:hover{background:#0a68f0;box-shadow:0 0 calc(22 * var(--u)) rgba(30,140,255,.9);scale:1.1}
.hero__nav .ico{width:calc(19 * var(--u));height:calc(19 * var(--u))}
.hero__nav--prev{left:calc(8 * var(--u))}.hero__nav--prev .ico{rotate:90deg}
.hero__nav--next{right:calc(8 * var(--u))}.hero__nav--next .ico{rotate:-90deg}
.hero__dots{position:absolute;left:50%;bottom:calc(16 * var(--u));translate:-50% 0;z-index:8;display:flex;gap:calc(10 * var(--u))}
.hero__dots button{position:relative;width:calc(42 * var(--u));height:calc(5 * var(--u));padding:0;border:0;border-radius:calc(5 * var(--u));background:rgba(255,255,255,.28);cursor:pointer;overflow:hidden;transition:width .4s,background .3s}
.hero__dots button i{position:absolute;inset:0;background:linear-gradient(90deg,#17c3ff,#0a7dff);transform:scaleX(0);transform-origin:0 50%}
.hero__dots button.is-active{width:calc(70 * var(--u))}
.hero__dots button.is-active i{animation:dot var(--dur,6s) linear forwards}
.hero.is-paused .hero__dots button.is-active i{animation-play-state:paused}
.hero__dots button.done i{transform:scaleX(1);animation:none}
.hero__count{position:absolute;right:calc(26 * var(--u));bottom:calc(12 * var(--u));z-index:8;font-size:calc(13 * var(--u));color:#bcd2ff;letter-spacing:calc(1 * var(--u))}
.hero__count b{font-size:calc(20 * var(--u));color:#fff}

/* faixa em movimento */
.marquee{position:relative;z-index:3;height:calc(36 * var(--u));overflow:hidden;background:linear-gradient(90deg,#0a3fc4,#0a7dff,#0a3fc4);border-top:1px solid #4aa8ff;border-bottom:1px solid #0a2f90;box-shadow:0 0 calc(26 * var(--u)) rgba(20,110,255,.6)}
.marquee__track{display:flex;width:max-content;height:100%;align-items:center;animation:scrollx 34s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__track span{display:flex;align-items:center;gap:calc(12 * var(--u));padding:0 calc(34 * var(--u));font-size:calc(12.5 * var(--u));font-weight:700;letter-spacing:calc(.6 * var(--u));text-transform:uppercase;white-space:nowrap;color:#fff}
.marquee__track .ico{width:calc(14 * var(--u));height:calc(14 * var(--u));color:#ffd23a}

/* borda luminosa girando */
.cats::after,.benefits::after,.testi__card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:2px;background:conic-gradient(from var(--ang),transparent 0 72%,#17c3ff 88%,#fff 92%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:spin 6s linear infinite;pointer-events:none}
.benefits,.testi__card{position:relative}
.benefits{position:relative}
.testi__card{position:absolute}

/* inclinação 3D nos cartões */
.cat,.pcard{transform-style:preserve-3d}
.cat:hover{transform:perspective(800px) translateY(calc(-6 * var(--u))) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.pcard:hover{transform:perspective(900px) translateY(calc(-7 * var(--u))) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
[data-magnet]{will-change:translate;transition:translate .25s ease-out,filter .25s,box-shadow .25s}

/* páginas internas: texto em px (não escala com a tela) */
.inner{font-size:17px;max-width:1280px}
.inner article>h1,.inner article>.entry-title{font-size:34px;font-weight:700;margin:0 0 26px;padding-bottom:14px;position:relative}
.inner article>h1::after{content:"";position:absolute;left:0;bottom:0;width:90px;height:3px;border-radius:3px;background:linear-gradient(90deg,#17c3ff,#0a7dff);box-shadow:0 0 12px #17c3ff}
.inner .k3d-form{margin-top:22px;max-width:680px}
.inner .k3d-form input,.inner .k3d-form textarea{font-family:inherit}
.inner .k3d-form input:focus,.inner .k3d-form textarea:focus{outline:0;border-color:#17c3ff;box-shadow:0 0 0 3px rgba(23,195,255,.25)}
.inner .k3d-form button{height:50px;font-size:16px;transition:.25s}
.inner .k3d-form button:hover{filter:brightness(1.15);transform:translateY(-2px);box-shadow:0 8px 24px rgba(20,120,255,.5)}

@media (max-width:820px){
  .hero__dots{bottom:10px}.hero__dots button{width:30px;height:4px}.hero__dots button.is-active{width:48px}
  .hero__count,.hero__nav{display:none}
  .sp{position:relative;left:auto;top:auto;width:auto;padding:0 18px}
  .sp__k{font-size:11px;padding:5px 12px}
  .sp__t{font-size:30px;line-height:34px;margin:12px 0 4px}
  .sp__price{font-size:30px;margin:2px 0 14px}
  .sp__p{font-size:15px;line-height:21px}
  .sp .btn-hero{height:46px;padding:0 22px;font-size:16px}
  .sp__art{left:50%;top:auto;bottom:34px;width:230px;height:230px;translate:-50% 0}
  .sq__art{left:0;right:0;top:auto;bottom:24px;width:100%;height:240px}
  .marquee{height:32px}.marquee__track span{font-size:11px;gap:8px;padding:0 20px}.marquee__track .ico{width:12px;height:12px}
  .loader img{width:170px}
  .cursor-glow{display:none}
}
@media (hover:none){.cursor-glow{display:none}}
@media (prefers-reduced-motion:reduce){.loader{display:none!important}.marquee__track{animation:none}}

.slide--quote .sp{width:calc(520 * var(--u))}
.news__tag{-webkit-mask-image:radial-gradient(closest-side,#000 70%,transparent);mask-image:radial-gradient(closest-side,#000 70%,transparent)}
@media (max-width:820px){.slide--quote .sp{width:auto}.sp__art img{border-radius:20px}}

.hero{touch-action:pan-y}
@media (max-width:820px){.wa{right:14px;bottom:14px;width:52px;height:52px}.k3d-toast{max-width:calc(100vw - 32px);text-align:center}}
