/* Bento + glow experience system */
:root{--paper:#0b0b0c;--ink:#f2f7f5;--muted:#a1aaa8;--line:#ffffff20;--white:#121415;--lime:#c7ff62;--green:#8bffd0;--shadow:0 18px 54px #0008}
html{scroll-behavior:smooth;scroll-padding-top:90px;background:#0b0b0c}
body{background:radial-gradient(ellipse at 58% 2%,#39ffd00d,transparent 32%),radial-gradient(ellipse at 100% 35%,#aa84ff0c,transparent 34%),#0b0b0c}
body:before{opacity:.1;background-size:64px 64px}
.sidebar{background:#0b0b0cf2;border-color:#ffffff18}
.top{background:#0b0b0ce8;border-color:#ffffff12}
.page.active{animation:pageArrive .38s ease-out both}
.card,.stat,.today,.checkinbox,.toc,.doc,.excard,.lessonfocus,.lessonpanel,.program,.bento-main-card,.bento-service-card,.sessionrow{border-radius:16px;border:1px solid #ffffff1d;backdrop-filter:blur(12px)}
.card:hover,.program:hover,.excard:hover,.bento-service-card:hover{border-color:#a5ffe563;box-shadow:0 18px 48px #54ffd21d;scale:1.02;transition:scale .3s ease-out,border-color .3s ease-out,box-shadow .3s ease-out}
.hero.cosmic-hero{border-radius:16px;border-color:#e8fff52b;box-shadow:0 24px 80px #0008,0 0 50px #43ffbd12;background:radial-gradient(ellipse at 80% 50%,#26dba21c,transparent 45%),radial-gradient(ellipse at 96% 4%,#a87cff18,transparent 38%),linear-gradient(125deg,#101314,#0e1516 56%,#131218)}
.cosmic-hero:before{filter:blur(18px);opacity:.7}
.cosmic-hero:after{border-color:#f3fff515;box-shadow:0 0 0 28px #ffffff08,0 0 0 62px #ffffff05,0 0 0 105px #ffffff03}
.hero h1{font-weight:900;letter-spacing:-.05em;background:linear-gradient(100deg,#fff 4%,#f5fffd 42%,#9affe0 83%,#c7ff62);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-actions .btn{box-shadow:0 0 0 1px #ddff7f62,0 8px 28px #0006,0 0 34px #a6ff5c29}
.hero-actions .btn:hover{box-shadow:0 0 0 1px #eeffb4,0 12px 34px #0008,0 0 44px #b9ff666b;scale:1.025;transition:scale .3s ease-out,box-shadow .3s ease-out}
.hero-link:hover{color:#dcff9b}
.bento-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.72fr);gap:14px;margin:15px 0 5px}
.bento-main-card{min-width:0;min-height:318px;grid-row:span 2;display:grid;grid-template-columns:minmax(175px,.78fr) minmax(230px,1.22fr);align-items:center;gap:5px;padding:22px;background:radial-gradient(ellipse at 80% 50%,#45ffd016,transparent 52%),linear-gradient(140deg,#121616,#101516);border-color:#ffffff20;overflow:hidden;position:relative}
.bento-main-card:after{content:"";position:absolute;width:230px;height:230px;right:-100px;top:-130px;border-radius:50%;border:1px solid #a4ffe51d;box-shadow:0 0 0 24px #a4ffe508,0 0 0 52px #a4ffe505;pointer-events:none}
.bento-main-copy{position:relative;z-index:2}
.bento-kicker{display:flex;align-items:center;gap:8px;color:#baff73;font:800 9px ui-monospace,monospace;letter-spacing:1.5px;text-transform:uppercase}
.bento-kicker .system-pulse{width:6px;height:6px}
.bento-main-copy h2{margin:17px 0 8px;max-width:280px;color:#f4faf8;font-size:clamp(22px,2.25vw,34px);line-height:1.05;font-weight:900;letter-spacing:-.05em}
.bento-main-copy p{margin:0;color:#9eaaa6;font-size:10px;line-height:1.5}
.compare-hint{display:inline-block;margin-top:17px;color:#a7f6d2;font-size:10px;font-weight:700}
.transform-compare{position:relative;min-width:0;z-index:1}
.compare-scene{position:relative;width:100%;aspect-ratio:12/7;overflow:hidden;border:1px solid #c6fff12b;border-radius:16px;background:#0b1414;box-shadow:0 12px 35px #0006;isolation:isolate}
.compare-sky,.compare-person{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.compare-person-before{clip-path:inset(0 calc(100% - var(--split)) 0 0);z-index:2}
.compare-person-after{z-index:1}
.compare-label{position:absolute;top:10px;z-index:4;padding:5px 8px;border:1px solid #ffffff30;border-radius:99px;background:#0b1110b8;color:#e9fff4;font:800 8px ui-monospace,monospace;letter-spacing:1px;backdrop-filter:blur(8px)}
.label-before{left:10px}
.label-after{right:10px}
.compare-divider{position:absolute;z-index:5;top:0;bottom:0;left:var(--split);width:1px;background:#effff2e0;pointer-events:none;box-shadow:0 0 12px #d6fff9}
.compare-divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:32px;height:32px;border:1px solid #e8fff5a8;border-radius:50%;background:#0b1313;color:#d7ff9d;box-shadow:0 0 18px #9bffd338;font-size:15px}
.compare-scene input[type=range]{position:absolute;inset:0;z-index:6;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.compare-scene:focus-within{outline:2px solid #c7ff62;outline-offset:3px}
.bento-side-grid{display:grid;grid-template-rows:1fr 1fr;gap:14px}
.bento-service-card{position:relative;min-height:151px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:5px;padding:17px 18px;text-align:left;cursor:pointer;color:#f2fff9;background:radial-gradient(ellipse at 86% 18%,#5fffd01c,transparent 42%),linear-gradient(145deg,#141917,#111516);transition:scale .3s ease-out,border-color .3s,box-shadow .3s}
.bento-service-card.service-plans{background:radial-gradient(ellipse at 84% 18%,#b486ff21,transparent 43%),linear-gradient(145deg,#18151d,#121517)}
.service-index{position:absolute;top:16px;left:17px;color:#779187;font:700 8px ui-monospace,monospace;letter-spacing:1.2px}
.service-orbit{position:absolute;right:16px;top:11px;color:#c7ff62;font-size:19px;transition:transform .25s}
.bento-service-card:hover .service-orbit{transform:translate(3px,-3px)}
.bento-service-card strong{position:relative;z-index:1;font-size:15px;letter-spacing:-.3px}
.bento-service-card small{position:relative;z-index:1;color:#92a79d;font-size:10px}
.service-bars{position:absolute;right:25px;bottom:19px;display:flex;align-items:end;gap:3px;height:35px;opacity:.68}
.service-bars i{width:3px;height:24%;border-radius:3px;background:#90f8c5;animation:barDance 1.5s ease-in-out infinite alternate}
.service-bars i:nth-child(2){height:58%;animation-delay:.3s}
.service-bars i:nth-child(3){height:36%;animation-delay:.6s}
.service-bars i:nth-child(4){height:78%;animation-delay:.1s}
.service-bars i:nth-child(5){height:50%;animation-delay:.45s}
.service-bars i:nth-child(6){height:100%;background:#c7ff62;animation-delay:.8s}
.service-path{position:absolute;right:17px;bottom:19px;display:flex;align-items:center;gap:6px;color:#c5b4ff;font:8px ui-monospace,monospace}
.service-path b{width:20px;height:1px;background:linear-gradient(90deg,#b297ff,#71ffc6)}
.stats{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.stats .stat:nth-child(1){grid-column:span 5}
.stats .stat:nth-child(2){grid-column:span 3}
.stats .stat:nth-child(3){grid-column:span 4}
.stat{border-radius:16px;background:radial-gradient(ellipse at 90% 100%,#59ffd012,transparent 50%),#111415;border-color:#ffffff1c}
#home .programs{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
#home .programs>.program:nth-child(odd){grid-column:span 7}
#home .programs>.program:nth-child(even){grid-column:span 5}
#programs .program{border-radius:16px}
.programs .program{scroll-snap-align:center}
.programtop{overflow:hidden}
.programbody{background:#121516}
.meta span{display:inline-flex;gap:5px}
.carousel-dots{display:none;align-items:center;justify-content:center;gap:7px;padding:12px 0 4px}
.carousel-dot{width:6px;height:6px;padding:0;border-radius:99px;background:#75817d;transition:width .25s,background .25s,box-shadow .25s}
.carousel-dot.active{width:22px;background:#c7ff62;box-shadow:0 0 12px #b9ff6247}
.btn,.nav button,.filter,.excard,.program,.bento-service-card{transition-duration:.3s;transition-timing-function:ease-out}
.btn:hover,.nav button:hover,.filter:hover{scale:1.02}
.btn,.excard,.program,.bento-service-card{translate:var(--mag-x,0px) var(--mag-y,0px)}
.exercise-video{width:100%;aspect-ratio:16/9;min-height:0;height:auto;max-height:min(74dvh,660px);border-radius:16px;overflow:hidden}
.exercise-video video,.exercise-video iframe{display:block;width:100%;height:100%;border:0;background:#080c0b}
.exercise-video video{object-fit:contain}
.exercise-video[data-ratio="portrait"]{width:min(100%,405px);aspect-ratio:9/16;max-height:min(74dvh,720px);margin-inline:auto}
.exercise-video[data-ratio="portrait"] video{object-fit:contain}
.lessonvisual:has(.exercise-video){overflow:hidden;border-radius:16px}
.scroll-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease-out,transform .65s ease-out}
.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}
@supports(animation-timeline:view()){.scroll-reveal{opacity:1;transform:none;animation:scrollArrive linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
.scroll-reveal.is-visible{animation-name:none;opacity:1;transform:none}
}
@keyframes scrollArrive{from{opacity:0;transform:translateY(24px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes pageArrive{from{opacity:.75;translate:0 5px}
to{opacity:1;translate:0 0}
}
@keyframes barDance{from{scale:1 .6;transform-origin:bottom}
to{scale:1 1.1;transform-origin:bottom}
}
@media(max-width:900px){.stats .stat:nth-child(1){grid-column:span 5}
.stats .stat:nth-child(2){grid-column:span 3}
.stats .stat:nth-child(3){grid-column:span 4}
.bento-grid{grid-template-columns:minmax(0,1fr) minmax(200px,.62fr)}
.bento-main-card{grid-template-columns:1fr;gap:12px}
.bento-main-copy h2{margin:11px 0 6px}
.compare-hint{margin-top:9px}
.compare-scene{aspect-ratio:12/7}
}
@media(max-width:660px){html{scroll-padding-top:66px}
.sidebar{height:calc(68px + env(safe-area-inset-bottom));padding:4px 5px calc(4px + env(safe-area-inset-bottom));background:#090d0df5;border-top:1px solid #ffffff24;box-shadow:0 -10px 36px #0008;backdrop-filter:blur(22px)}
.nav button{border-radius:12px}
.nav button.active{box-shadow:inset 0 2px #c7ff62,0 0 18px #93ffbd13}
.bento-grid{grid-template-columns:1fr;gap:10px;margin-top:12px}
.bento-main-card{grid-row:auto;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:0;padding:15px;gap:8px;border-radius:16px}
.bento-main-copy h2{font-size:20px}
.bento-main-copy p{font-size:9px}
.compare-hint{font-size:9px;margin-top:10px}
.compare-scene{aspect-ratio:1/1;max-height:250px}
.bento-side-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:10px}
.bento-service-card{min-height:138px;padding:14px;border-radius:16px}
.bento-service-card strong{font-size:13px}
.service-index{left:13px;top:13px;font-size:7px}
.service-orbit{right:12px;top:8px}
.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.stats .stat:nth-child(1),.stats .stat:nth-child(2),.stats .stat:nth-child(3){grid-column:span 1;min-width:0;display:grid;grid-template-columns:34px 1fr;align-items:center;padding:10px 7px;gap:7px}
.stats .staticon{margin:0}
.stat strong{font-size:17px}
.stat small{font-size:8px;line-height:1.2}
.programs,#home .programs,#programs .programs{display:flex;gap:11px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:2px 2px 8px;margin-right:-14px;padding-right:14px;scrollbar-width:none}
.programs::-webkit-scrollbar{display:none}
#home .programs>.program,#programs .programs>.program{grid-column:auto;flex:0 0 min(84vw,330px);min-width:0}
.carousel-dots{display:flex}
.hero.cosmic-hero{min-height:0}
.section-code{font-size:8px}
.sessionrow{border-radius:0;border-left:0;border-right:0}
.scroll-reveal{transform:translateY(12px)}
.lessonvisual:has(.exercise-video){padding:6px}
}
@media(max-width:430px){.bento-main-card{grid-template-columns:1fr}
.bento-main-copy{padding:2px 2px 0}
.bento-main-copy h2{max-width:270px}
.compare-scene{aspect-ratio:12/7;max-height:none}
.bento-side-grid{gap:8px}
.bento-service-card{min-height:126px;padding:12px}
.service-bars{right:13px;bottom:14px}
.service-path{right:11px;bottom:13px}
.programs,#home .programs,#programs .programs{margin-right:-11px;padding-right:11px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.scroll-reveal{opacity:1;transform:none;animation:none!important;transition:none!important}
.hero*,.bento-grid*,.bento-service-card,.service-bars i,.program,.btn,.nav button{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Comparação Antes/Depois removida: os dois cards de serviço ocupam a linha inteira */
.bento-grid{grid-template-columns:1fr}
.bento-side-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
@media (max-width:660px){.bento-side-grid{grid-template-columns:1fr}}
.nav .ico{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #b7d5c71c;border-radius:11px;background:linear-gradient(145deg,#ffffff0a,#ffffff02);color:#a8c4b5;}
.nav .ico svg{display:block;width:19px;height:19px;overflow:visible;}
.nav button:hover .ico,.nav button.active .ico{border-color:#c7ff6255;background:radial-gradient(circle at 50% 25%,#c7ff6224,#89ffbd0a 75%);color:#d5ff8c;box-shadow:0 0 16px #a3ff7621;}
.nav .ico[data-icon="trophy"]{border-color:#f4cd6240;background:radial-gradient(circle at 50% 35%,#ffda6b20,#f4a82e05 72%);color:#ffcf58;}
.nav button.active .ico[data-icon="trophy"],.nav button:hover .ico[data-icon="trophy"]{border-color:#ffe18b9c;background:radial-gradient(circle at 50% 30%,#ffdd7736,#ff9a2410 75%);color:#ffe089;box-shadow:0 0 18px #ffc84c38;}
.nav .ico[data-icon="dumbbell"]{color:#baff78}.nav .ico[data-icon="timer"]{color:#ffc878}.nav .ico[data-icon="library"]{color:#93e6f0}.nav .ico[data-icon="coaches"],.nav .ico[data-icon="clients"]{color:#c5a4ff}.nav .ico[data-icon="clipboard"],.nav .ico[data-icon="plans"]{color:#91e9c2}.nav .ico[data-icon="user"],.nav .ico[data-icon="profile"]{color:#f1a9bc}.nav .ico[data-icon="settings"]{color:#a8c6ff}
@media(max-width:660px){.nav .ico{width:24px;height:24px;flex:0 0 24px;border-radius:8px}.nav .ico svg{width:15px;height:15px}.nav button{gap:2px}}
