:root{--black:#090909;--black-soft:#111;--graphite:#171717;--dark:#2c2c2c;--neon:#42ff6a;--green:#32d85b;--green-dark:#1e9b45;--white:#fff;--off:#f4f4f4;--muted:#a7a7a7;--border:rgba(255,255,255,.12);--radius:24px;--sans:'Inter',sans-serif;--display:'Sora',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}img,video{display:block;max-width:100%;object-fit:cover}.container{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:fixed;top:-100px;left:20px;background:var(--neon);color:#000;padding:10px 16px;z-index:100}.skip:focus{top:10px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);line-height:1.06}h2{font-size:clamp(2.2rem,6vw,4.6rem);letter-spacing:-.055em;margin-bottom:24px}h2 em,h1 em{font-style:normal;color:var(--neon)}p{color:var(--muted)}:focus-visible{outline:3px solid var(--neon);outline-offset:4px}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--neon);margin-bottom:20px}.eyebrow i{width:4px;height:4px;border-radius:50%;background:var(--neon)}.section{padding:110px 0}.alt{background:var(--black-soft)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:52px}.section-head>div{max-width:800px}.section-head h2{margin-bottom:0}.section-head>p{max-width:390px}.center{text-align:center;margin-top:44px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:54px;padding:0 24px;border:1px solid var(--neon);border-radius:8px;background:var(--neon);color:#071009;font-weight:800;transition:.25s;cursor:pointer}.btn:hover{background:#70ff8d;transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--white);border-color:var(--border)}.btn-ghost:hover{border-color:var(--neon);background:rgba(66,255,106,.07)}.btn-sm{min-height:44px;padding:0 18px;font-size:.8rem}.text-link{display:inline-block;color:var(--neon);font-weight:700;margin-top:18px}.disclaimer{text-align:center;font-size:.72rem;margin:28px 0 0}
.header{height:76px;position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid transparent;transition:.25s}.header.scrolled{background:rgba(9,9,9,.88);backdrop-filter:blur(18px);border-color:var(--border);box-shadow:0 8px 30px rgba(0,0,0,.25)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font:800 1rem/1 var(--display);letter-spacing:.07em}.brand small{display:block;font-size:.48rem;letter-spacing:.34em;color:var(--neon);margin-top:5px}.brand-mark{display:grid;place-items:center;width:37px;height:37px;background:var(--neon);clip-path:polygon(0 0,100% 0,72% 100%,28% 100%);color:#071009;font:bold 1.25rem var(--display)}.desktop-nav{display:none}.mobile-menu{position:fixed;inset:76px 0 0;background:rgba(9,9,9,.98);padding:30px 20px;display:flex;flex-direction:column;gap:3px;transform:translateX(100%);visibility:hidden;transition:.3s}.mobile-menu.open{transform:none;visibility:visible}.mobile-menu>a{padding:11px;font:600 1.05rem var(--display)}.mobile-menu .btn{margin-top:16px}.header-cta{display:none}.menu-toggle{width:46px;height:46px;border:1px solid var(--border);border-radius:8px;background:transparent;display:grid;place-content:center;gap:6px}.menu-toggle span{display:block;width:20px;height:2px;background:#fff;transition:.2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.hero{position:relative;min-height:800px;height:100svh;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-media,.hero-grid{position:absolute;inset:0;z-index:-2}.hero-media video{width:100%;height:100%;background:url('assets/images/hero-desktop.jpg') center/cover}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.72) 42%,rgba(0,0,0,.12) 82%),linear-gradient(0deg,rgba(9,9,9,.85),transparent 35%)}.hero-grid{z-index:-1;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#000,transparent 60%)}.hero-content{padding-top:90px}.hero h1{font-size:clamp(4rem,11vw,8.3rem);letter-spacing:-.07em;margin:0 0 22px;max-width:900px}.hero-lead{font-size:clamp(1.1rem,2vw,1.35rem);max-width:620px;color:#fff;margin-bottom:12px}.hero-copy{max-width:620px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.location{font-size:.77rem;text-transform:uppercase;letter-spacing:.13em;margin-top:30px}.hero-stats{display:none}.scroll{position:absolute;bottom:24px;left:50%;width:42px;height:42px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;animation:bob 1.6s infinite}.trust{border-block:1px solid var(--border);background:#0c0c0c}.trust-grid{display:grid;grid-template-columns:1fr 1fr}.trust-grid span{padding:18px 5px;color:#d9d9d9;font-size:.72rem;border-right:1px solid var(--border)}
.split{display:grid;gap:48px;align-items:center}.visual-card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:420px;background:var(--graphite)}.visual-card:before{content:'';position:absolute;inset:0;border:1px solid var(--border);border-radius:inherit;z-index:1}.visual-card img{width:100%;height:100%;position:absolute}.visual-note{position:absolute;z-index:2;bottom:18px;right:18px;background:rgba(9,9,9,.9);border:1px solid var(--border);border-radius:14px;padding:14px 18px;color:var(--muted);font-size:.75rem}.visual-note b{display:block;color:var(--neon);font:800 1.8rem var(--display)}.content>p:not(.eyebrow){max-width:630px}.check-list{display:grid;gap:12px;padding:0;list-style:none;margin:28px 0}.check-list li:before{content:'✓';color:var(--neon);margin-right:12px}.objective-grid{display:grid;gap:12px}.objective-grid article,.feature-grid article{padding:28px;background:var(--graphite);border:1px solid var(--border);border-radius:16px;transition:.25s}.objective-grid article:hover,.feature-grid article:hover{border-color:rgba(66,255,106,.7);transform:translateY(-4px)}.objective-grid b{color:var(--neon);font-size:.7rem;letter-spacing:.14em}.objective-grid h3{font-size:1.25rem;margin:25px 0 10px}.objective-grid p{font-size:.88rem;margin:0}
.class-grid{display:grid;gap:18px}.class-card{position:relative;min-height:440px;border-radius:20px;overflow:hidden;border:1px solid var(--border);display:flex;align-items:end;background:#111}.class-card img{position:absolute;inset:0;width:100%;height:100%;transition:.5s}.class-card:hover img{transform:scale(1.04)}.class-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050505 5%,rgba(5,5,5,.85) 38%,rgba(5,5,5,.08) 78%)}.class-body{position:relative;z-index:1;padding:26px}.class-body>span{color:var(--neon);font-weight:800}.class-body h3{font-size:1.6rem;margin:8px 0}.class-body p{font-size:.85rem;margin-bottom:12px}.class-body small{display:block;color:#ddd;margin-bottom:16px}.class-body a{color:var(--neon);font-weight:700;font-size:.85rem}.structure{background:#0d0d0d}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gallery button{position:relative;border:0;padding:0;min-height:190px;overflow:hidden;border-radius:12px;background:#222;cursor:zoom-in}.gallery button:first-child{grid-column:span 2;min-height:330px}.gallery img{position:absolute;width:100%;height:100%;transition:.4s}.gallery button:hover img{transform:scale(1.04)}.gallery span{position:absolute;inset:auto 12px 12px;background:rgba(0,0,0,.72);padding:6px 10px;border-radius:6px;font-size:.72rem}.feature-grid{display:grid;gap:12px}.feature-grid i{font-style:normal;font-size:1.5rem;color:var(--neon)}.feature-grid h3{margin:24px 0 10px}.feature-grid p{font-size:.86rem;margin:0}.tags,.app-features{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tags span,.app-features span{padding:13px;border:1px solid var(--border);border-radius:8px;font-size:.82rem}.team{background:#0c0c0c}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.team-grid article{padding:24px 14px;text-align:center;background:var(--graphite);border:1px solid var(--border);border-radius:16px}.avatar{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:linear-gradient(135deg,#333,#111);border:1px solid var(--green);color:var(--neon);font:700 1.2rem var(--display)}.team-grid h3{font-size:1rem;margin-bottom:7px}.team-grid p,.team-grid small{font-size:.72rem;color:var(--muted)}
.plans{background:linear-gradient(135deg,#111,#090909)}.plan-grid{display:grid;gap:16px}.plan-grid article{position:relative;padding:34px;background:#141414;border:1px solid var(--border);border-radius:20px}.plan-grid .featured{border-color:var(--neon);background:linear-gradient(145deg,rgba(66,255,106,.1),#141414 35%)}.popular{position:absolute;top:0;right:24px;transform:translateY(-50%);padding:6px 12px;border-radius:99px;background:var(--neon);color:#071009;text-transform:uppercase;font-size:.62rem;font-weight:800}.plan-name{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:#fff}.price{display:flex;align-items:start;margin:20px 0}.price sup{margin-top:13px}.price b{font:800 4rem/1 var(--display);letter-spacing:-.08em}.price span{font-size:.78rem;color:var(--muted);margin:10px 0 0 7px}.plan-grid ul{list-style:none;padding:20px 0;margin:0;border-top:1px solid var(--border)}.plan-grid li{margin:10px 0;color:#ccc}.plan-grid li:before{content:'✓';color:var(--neon);margin-right:10px}.plan-grid .btn{width:100%;margin-top:18px}.steps ol{display:grid;gap:10px;list-style:none;padding:0}.steps li{position:relative;display:flex;gap:20px;align-items:center;padding:20px;border:1px solid var(--border);border-radius:12px}.steps li b{font:800 2rem var(--display);color:var(--neon)}.steps li span{font-weight:600}.slider-controls{display:flex;gap:8px}.slider-controls button,.lightbox button,.back-top{width:48px;height:48px;border:1px solid var(--border);border-radius:50%;background:#171717;cursor:pointer}.testimonials{overflow:hidden}.testimonial-track{display:flex;transition:transform .5s ease}.testimonial{flex:0 0 100%;padding:30px;background:var(--graphite);border:1px solid var(--border);border-radius:18px}.stars{color:var(--neon);letter-spacing:.3em}.testimonial blockquote{margin:24px 0;color:#f2f2f2;font-size:1.05rem}.testimonial footer{background:none;padding:0}.testimonial footer b{display:block}.testimonial footer span{color:var(--muted);font-size:.8rem}.dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.dots button{width:8px;height:8px;border:0;border-radius:50%;padding:0;background:#555}.dots button.active{width:28px;border-radius:9px;background:var(--neon)}
.app-section{overflow:hidden}.phone{width:min(330px,85%);min-height:570px;margin:auto;padding:32px 24px;border:8px solid #292929;border-radius:42px;background:linear-gradient(150deg,#202020,#0d0d0d);box-shadow:30px 30px 0 rgba(66,255,106,.06);transform:rotate(-3deg)}.phone-top{width:80px;height:20px;border-radius:20px;background:#080808;margin:-25px auto 35px}.app-logo{width:42px;height:42px;display:grid;place-items:center;background:var(--neon);color:#000;font-weight:900;clip-path:polygon(0 0,100% 0,72% 100%,28% 100%)}.phone p{font-size:.7rem;margin:25px 0 2px}.phone h3{font-size:1.45rem}.app-workout{display:flex;flex-direction:column;min-height:180px;padding:22px;margin:30px 0;background:linear-gradient(145deg,var(--green-dark),#102b18);border-radius:20px}.app-workout span{font-size:.75rem}.app-workout i{font:800 2rem var(--display);margin-top:auto}.app-bars{display:flex;align-items:end;gap:8px;height:90px}.app-bars span{flex:1;background:#333;border-radius:4px}.app-bars span:nth-child(1){height:35%}.app-bars span:nth-child(2){height:75%;background:var(--green)}.app-bars span:nth-child(3){height:55%}.app-bars span:nth-child(4){height:85%;background:var(--green)}.app-bars span:nth-child(5){height:65%}.faq-layout{display:grid;gap:50px}.accordion-item{border-bottom:1px solid var(--border)}.accordion-button{width:100%;display:flex;justify-content:space-between;gap:20px;padding:22px 0;background:transparent;border:0;text-align:left;font-weight:700;cursor:pointer}.accordion-panel{display:grid;grid-template-rows:0fr;transition:.3s}.accordion-panel>div{overflow:hidden}.accordion-panel p{padding:0 35px 22px 0;margin:0}.accordion-button[aria-expanded=true]+.accordion-panel{grid-template-rows:1fr}.accordion-button span{color:var(--neon);font-size:1.4rem}.cta{position:relative;padding:120px 0;background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.45)),url('assets/images/functional.jpg') center/cover}.cta:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 100px,rgba(66,255,106,.05) 101px 102px);pointer-events:none}.cta .container{position:relative;z-index:1}.cta h2{font-size:clamp(3rem,8vw,6rem);max-width:800px}.cta p{max-width:600px;color:#ccc}
.contact-grid{display:grid;gap:40px}.contact aside{padding:32px;background:var(--neon);color:#071009;border-radius:20px}.contact aside p,.contact aside a{color:#17401f}.contact aside h3{font-size:1.8rem}.contact aside h4{margin:30px 0 8px}.contact form{display:grid;gap:18px}.field label{display:block;color:#ccc;font-size:.78rem;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:#141414;color:#fff}.field.invalid input,.field.invalid select{border-color:#ff6b6b}.error{color:#ff8a8a;font-size:.72rem}.consent{font-size:.78rem;color:var(--muted)}.consent input{accent-color:var(--green)}.form-status{margin:0;font-size:.8rem}.map-section{display:grid;background:#111}.map-card{position:relative;min-height:430px;overflow:hidden;background:#181818}.map-lines{position:absolute;inset:-20%;transform:rotate(-12deg);background:repeating-linear-gradient(90deg,transparent 0 100px,#292929 101px 120px),repeating-linear-gradient(0deg,transparent 0 80px,#222 81px 94px)}.pin{position:absolute;top:47%;left:53%;width:58px;height:58px;display:grid;place-items:center;background:var(--neon);clip-path:polygon(50% 100%,10% 38%,12% 18%,27% 4%,50% 0,73% 4%,88% 18%,90% 38%);color:#000;font-weight:900}.road{position:absolute;color:#555;font-size:.58rem;letter-spacing:.2em}.r1{top:25%;left:12%;transform:rotate(-12deg)}.r2{bottom:25%;right:15%;transform:rotate(-12deg)}.map-info{padding:60px max(20px,calc((100vw - 1160px)/2));}.map-info h2{font-size:clamp(2.2rem,5vw,4rem)}footer{padding:70px 0 90px;background:#070707;border-top:1px solid var(--border)}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-grid>div:first-child{grid-column:span 2}.footer-grid h3{font-size:.8rem;text-transform:uppercase;color:#fff}.footer-grid p,.footer-grid a{display:block;color:#777;font-size:.78rem;margin:8px 0}.social{display:flex;gap:8px}.social a{width:35px;height:35px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;color:#fff}.footer-bottom{display:flex;flex-direction:column;gap:6px;margin-top:50px;padding-top:25px;border-top:1px solid var(--border);font-size:.65rem;color:#666}.float-wa{position:fixed;right:18px;bottom:18px;z-index:40;display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:99px;background:var(--neon);color:#061008;font-size:.76rem;font-weight:800;box-shadow:0 10px 35px rgba(0,0,0,.4);animation:floatIn .7s 1s both}.back-top{position:fixed;right:20px;bottom:82px;z-index:39;opacity:0;pointer-events:none;transition:.2s}.back-top.show{opacity:1;pointer-events:auto}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.96);display:none;place-items:center;padding:70px 20px}.lightbox.open{display:grid}.lightbox img{max-height:75vh;border-radius:12px}.lightbox p{color:#fff}.lightbox button{position:absolute}.lightbox-close{top:20px;right:20px}.lightbox-prev{left:20px;top:50%}.lightbox-next{right:20px;top:50%}
.js .reveal{transition:transform .7s,opacity .7s}.js .reveal:not(.visible){transform:translateY(24px);opacity:.01}@keyframes bob{50%{transform:translateY(6px)}}@keyframes floatIn{from{transform:translateY(30px);opacity:0}}
@media(min-width:700px){.objective-grid,.feature-grid{grid-template-columns:repeat(2,1fr)}.class-grid{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(4,1fr)}.plan-grid{grid-template-columns:repeat(3,1fr);align-items:center}.featured{transform:scale(1.035)}.steps ol{grid-template-columns:repeat(4,1fr)}.steps li{display:block}.steps li:not(:last-child):after{content:'→';position:absolute;right:-14px;top:40%;color:var(--neon);z-index:2}.testimonial{flex-basis:calc(50% - 8px);margin-right:16px}.contact form{grid-template-columns:1fr 1fr}.full{grid-column:span 2}.map-section{grid-template-columns:1.2fr 1fr}.footer-grid{grid-template-columns:2fr repeat(3,1fr)}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:row;justify-content:space-between}}
@media(min-width:960px){.container{width:min(1160px,calc(100% - 64px))}.desktop-nav{display:flex;gap:20px}.desktop-nav a{font-size:.68rem;color:#ccc;transition:.2s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--neon)}.header-cta{display:inline-flex}.menu-toggle{display:none}.split{grid-template-columns:1fr 1fr;gap:80px}.objective-grid{grid-template-columns:repeat(3,1fr)}.class-grid{grid-template-columns:repeat(3,1fr)}.feature-grid{grid-template-columns:repeat(4,1fr)}.gallery{grid-template-columns:2fr 1fr 1fr;grid-template-rows:250px 250px}.gallery button,.gallery button:first-child{min-height:0}.gallery button:first-child{grid-column:auto;grid-row:span 2}.gallery button:nth-child(4){grid-column:span 2}.faq-layout{grid-template-columns:.8fr 1.2fr}.contact-grid{grid-template-columns:.7fr 1.3fr}.hero-stats{position:absolute;right:5%;bottom:48px;display:flex;gap:40px}.hero-stats div{border-left:1px solid var(--border);padding-left:18px}.hero-stats b{display:block;font:800 1.5rem var(--display);color:var(--neon)}.hero-stats span{font-size:.68rem;color:#bbb}.scroll{left:5%}}
@media(max-width:560px){.section{padding:78px 0}.section-head{align-items:start;flex-direction:column;margin-bottom:36px}.hero{min-height:760px}.hero-media:after{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.45) 75%),linear-gradient(90deg,rgba(0,0,0,.65),transparent)}.hero-content{padding-top:80px}.hero-copy{font-size:.85rem}.actions{flex-direction:column}.actions .btn{width:100%}.trust-grid span:nth-child(even){border:0}.visual-card{min-height:360px}.gallery button{min-height:160px}.gallery button:first-child{min-height:260px}.float-wa span{display:none}.float-wa{width:52px;height:52px;justify-content:center;padding:0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.tags,.app-features{grid-template-columns:1fr}.header .brand span:last-child{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal:not(.visible){opacity:1;transform:none}.hero video{display:none}}

/* Cabeçalho com faixa escura para manter a navegação legível sobre o hero. */
.header{background:rgba(5,5,5,.84);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-color:rgba(255,255,255,.08);box-shadow:0 8px 28px rgba(0,0,0,.18);transition:background .25s,border-color .25s,box-shadow .25s}
.header.scrolled{background:rgba(5,5,5,.96);box-shadow:0 10px 32px rgba(0,0,0,.38)}
@media(min-width:960px){.desktop-nav a{color:#e1e1e1;text-shadow:0 1px 8px rgba(0,0,0,.9)}}

/* Ticker contínuo de diferenciais. */
.trust{overflow:hidden;background:#0b0b0b;border-block:1px solid var(--border)}
.trust-marquee{width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.trust-track{display:flex;width:max-content;animation:trustTicker 24s linear infinite;will-change:transform}
.trust-group{display:flex;align-items:center;flex-shrink:0}
.trust-group span{display:flex;align-items:center;gap:10px;min-height:68px;padding:0 clamp(32px,4vw,72px);border-right:1px solid var(--border);color:#f1f1f1;font-size:.82rem;font-weight:600;white-space:nowrap}
.trust-group i{color:var(--neon);font-style:normal;font-size:1rem}
.trust:hover .trust-track{animation-play-state:paused}
@keyframes trustTicker{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.trust-track{width:100%;animation:none}.trust-group{width:100%;justify-content:center;flex-wrap:wrap}.trust-group[aria-hidden=true]{display:none}.trust-group span{min-height:54px;padding:0 22px}}

/* Cards com vidro fosco e reflexo espelhado. */
:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.phone,.visual-note){
  position:relative;
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.022) 48%,rgba(66,255,106,.025));
  backdrop-filter:blur(16px) saturate(125%);
  -webkit-backdrop-filter:blur(16px) saturate(125%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(255,255,255,.025),0 14px 35px rgba(0,0,0,.16);
  overflow:hidden;
  isolation:isolate;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s,background .35s;
}
:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.phone,.visual-note)::after{
  content:'';
  position:absolute;
  z-index:-1;
  top:-70%;
  left:-30%;
  width:65%;
  height:220%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.11),transparent);
  transform:rotate(14deg);
  pointer-events:none;
  transition:transform .65s ease,left .65s ease;
}
:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.visual-note):hover{
  transform:translateY(-5px) scale(1.018);
  border-color:rgba(66,255,106,.48);
  background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.03) 48%,rgba(66,255,106,.055));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 18px 42px rgba(0,0,0,.28),0 0 22px rgba(66,255,106,.055);
}
:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.phone,.visual-note):hover::after{left:70%;transform:rotate(14deg) translateX(20%)}
.plan-grid article.featured{background:linear-gradient(145deg,rgba(66,255,106,.14),rgba(255,255,255,.04) 38%,rgba(255,255,255,.018));border-color:rgba(66,255,106,.7)}
.plan-grid article.featured:hover{transform:translateY(-5px) scale(1.05)}
.contact aside{color:var(--white)}
.contact aside p,.contact aside a{color:#d2d2d2}
.phone:hover{transform:rotate(-3deg) scale(1.018)}

/* Reflexo sutil nos cards com fotografia, sem desfocar as imagens. */
:is(.class-card,.visual-card,.gallery button){box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 14px 35px rgba(0,0,0,.18);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}
:is(.class-card,.visual-card,.gallery button):hover{transform:translateY(-4px) scale(1.012);border-color:rgba(66,255,106,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 18px 42px rgba(0,0,0,.3)}

@media(hover:none){:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.visual-note,.class-card,.visual-card,.gallery button):hover{transform:none}}
@media(prefers-reduced-motion:reduce){:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.phone,.visual-note,.class-card,.visual-card,.gallery button){transition:none}:is(.objective-grid article,.feature-grid article,.team-grid article,.plan-grid article,.testimonial,.steps li,.tags span,.app-features span,.contact aside,.phone,.visual-note)::after{transition:none}}

/* A imagem sempre ocupa todo o card da galeria. */
.gallery img{inset:0;width:100%;height:100%;object-fit:cover}

/* Botão flutuante oficial de contato pelo WhatsApp. */
.float-wa{background:#25d366;color:#06160b;padding:12px 18px;border:1px solid rgba(255,255,255,.28);box-shadow:0 14px 38px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.36);transition:transform .3s ease,background .3s ease,box-shadow .3s ease}
.float-wa svg{width:25px;height:25px;flex:0 0 25px;fill:currentColor}
.float-wa:hover{background:#4be27d;transform:translateY(-4px) scale(1.03);box-shadow:0 18px 42px rgba(0,0,0,.5),0 0 24px rgba(37,211,102,.16)}
@media(max-width:560px){.float-wa{width:54px;height:54px;padding:0}.float-wa svg{width:27px;height:27px}}

/* Mantém o selo do plano em destaque totalmente visível dentro do card. */
.plan-grid .popular{top:18px;right:20px;transform:none;z-index:4;padding:7px 14px;line-height:1.2}

/* Corrige o selo sobre as imagens após a aplicação do efeito de vidro. */
.visual-card .visual-note{position:absolute;z-index:3;right:18px;bottom:18px;max-width:calc(100% - 36px)}

@media(max-width:560px){
  .visual-card{min-height:430px}
  .visual-card .visual-note{left:14px;right:14px;bottom:14px;max-width:none;display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:11px;line-height:1.25}
  .visual-card .visual-note b{display:inline-block;flex:0 0 auto;font-size:1.45rem;line-height:1}
}

/* O selo foi removido do layout; esta regra também neutraliza HTML antigo em cache. */
.visual-note{display:none!important}

/* Menu móvel opaco e legível sobre qualquer seção da página. */
@media(max-width:959px){
  .mobile-menu{
    position:absolute;
    top:76px;
    right:0;
    bottom:auto;
    left:0;
    width:100%;
    height:calc(100dvh - 76px);
    max-height:calc(100dvh - 76px);
    padding:18px 20px 30px;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:#050505;
    background:linear-gradient(180deg,#050505 0%,#090909 100%);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 24px 50px rgba(0,0,0,.72);
  }
  .mobile-menu>a:not(.btn){
    position:relative;
    z-index:1;
    padding:13px 8px;
    color:#f5f5f5;
    border-bottom:1px solid rgba(255,255,255,.09);
    text-shadow:none;
  }
  .mobile-menu>a:not(.btn):hover,.mobile-menu>a:not(.btn):focus-visible{color:var(--neon);background:rgba(66,255,106,.045)}
  .mobile-menu .btn{position:relative;z-index:1;flex:0 0 auto;margin:18px 0 10px}
}
