/* Victoria Maia — paleta "Laboratório Claro" (igual ao canal do YouTube) */
:root{
  --bg:#F6F3EE;          /* off-white: fundo de todas as páginas */
  --card:#F0ECE5;        /* cartões: off-white levemente mais escuro */
  --ink:#171717;         /* carvão: títulos e textos */
  --violet:#7047D7;      /* violeta: botões, links, destaque, marcadores */
  --violet-dark:#5A35BF;
  --gray:#6B6B6B;        /* cinza: textos secundários, legendas, datas */
  --line:#E0D9CE;
  --radius:16px;
  --display:"League Spartan", "Arial Black", sans-serif;
  --sans:"Manrope", "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--violet);text-underline-offset:3px}
a:hover{color:var(--violet-dark)}
h1,h2,h3,h4{font-family:var(--display);font-weight:800;line-height:1.05;letter-spacing:-.02em;margin:0;text-wrap:balance;color:var(--ink)}
h2{font-size:clamp(32px,4vw,48px)}
h3{font-size:24px;line-height:1.15}
p{margin:0;text-wrap:pretty}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.narrow{max-width:760px}
.muted{color:var(--gray)}
.small{font-size:14px}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.kicker::before{content:"";width:22px;height:3px;background:var(--violet);border-radius:2px}
.draft{display:inline-block;font:700 11px/1.6 var(--sans);letter-spacing:.06em;text-transform:uppercase;background:#FFF1A8;color:#5C4700;padding:1px 8px;border-radius:4px;vertical-align:middle;margin-left:6px}
.sr{position:absolute;left:-9999px}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;font:700 16px var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}
.btn-primary{background:var(--violet);color:#fff}
.btn-primary:hover{background:var(--violet-dark);color:#fff}
.btn-outline{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-outline:hover{background:var(--ink);color:var(--bg)}
.btn-sm{min-height:42px;padding:0 18px;font-size:15px}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.link-arrow{font-weight:700;text-decoration:none}
.link-arrow::after{content:" →"}

/* Header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(246,243,238,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px}
.brand{text-decoration:none;color:var(--ink);line-height:1}
.brand b{display:block;font-family:var(--display);font-weight:800;font-size:23px;letter-spacing:-.02em}
.brand span{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);margin-top:4px}
.menu{display:flex;gap:28px;font-size:15px;font-weight:600}
.menu a{color:var(--ink);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a[aria-current="page"]{border-bottom-color:var(--violet)}
.nav-right{display:flex;align-items:center;gap:10px}
.menu-toggle{display:none;background:none;border:1.5px solid var(--line);border-radius:999px;min-height:42px;padding:0 14px;font:700 14px var(--sans);color:var(--ink);cursor:pointer}

/* Sections */
section{padding:88px 0}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.sec-head h2{margin-top:12px}
.sec-head p{max-width:560px;color:var(--gray);margin-top:12px}
.rule{border:0;border-top:1px solid var(--line);margin:0}

/* Hero (único lugar com o degradê Halo) */
.hero{position:relative;overflow:hidden;padding:96px 0 104px}
.halo{position:absolute;inset:-20% -10% auto -10%;height:620px;pointer-events:none;filter:blur(70px);opacity:.75}
.halo::before,.halo::after,.halo span{content:"";position:absolute;border-radius:50%}
.halo::before{width:520px;height:420px;left:8%;top:14%;background:#FF9BD2}
.halo span{width:560px;height:460px;left:30%;top:4%;background:#7047D7;opacity:.85}
.halo::after{width:520px;height:440px;left:54%;top:18%;background:#5E8BFF}
.hero .wrap{position:relative}
.hero-name{font-size:clamp(56px,10vw,128px);line-height:.92;letter-spacing:-.035em}
.hero-tag{font-family:var(--display);font-weight:800;font-size:clamp(26px,3.4vw,40px);margin-top:18px;letter-spacing:-.02em}
.grad-word{background:linear-gradient(90deg,#7047D7,#E35DB0);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{max-width:560px;margin-top:20px;font-size:19px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.hero-meta{margin-top:40px;font-size:14px;color:var(--ink);display:flex;gap:8px 24px;flex-wrap:wrap;font-weight:600}
.hero-meta span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--violet);margin-right:8px;vertical-align:middle}

/* Vídeos */
.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.video{text-decoration:none;color:var(--ink)}
.video .thumb{aspect-ratio:16/9;border-radius:12px;background:var(--card);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--gray);font-size:14px;border:1px solid var(--line)}
.video .thumb img{width:100%;height:100%;object-fit:cover}
.video h3{font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:0;line-height:1.35;margin-top:14px}
.video time{font-size:14px;color:var(--gray)}
.video:hover h3{color:var(--violet)}

/* Material gratuito */
.freebie{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center;background:var(--card);border-radius:24px;padding:56px;border:1px solid var(--line)}
.cover{aspect-ratio:3/4;max-width:300px;width:100%;margin:0 auto;border-radius:10px;background:var(--bg);border:1px solid var(--line);box-shadow:0 18px 40px rgba(23,23,23,.10);padding:28px 24px;display:flex;flex-direction:column;justify-content:space-between}
.cover .c-kind{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--violet)}
.cover .c-title{font-family:var(--display);font-weight:800;font-size:26px;line-height:1.05;letter-spacing:-.02em}
.cover .c-author{font-size:13px;color:var(--gray);border-top:3px solid var(--violet);padding-top:10px;width:60%}
.freebie h2{font-size:clamp(28px,3.2vw,40px);margin-top:12px}
.freebie p.desc{margin-top:14px;color:var(--gray)}

/* Formulários */
form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.field label,.field legend{font-size:14px;font-weight:700}
.field .req{color:var(--violet)}
input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{width:100%;min-height:50px;border:1.5px solid var(--line);border-radius:12px;background:#fff;padding:12px 14px;font:16px var(--sans);color:var(--ink)}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--violet);outline:none;box-shadow:0 0 0 3px rgba(112,71,215,.18)}
fieldset{border:0;padding:0;margin:0 0 14px}
.choices{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px}
.choices label{font-weight:500;display:flex;align-items:center;gap:8px;min-height:32px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin:6px 0 18px}
.check input{margin-top:4px;width:18px;height:18px;accent-color:var(--violet)}
input[type=radio]{width:18px;height:18px;accent-color:var(--violet)}
.hint{font-size:14px;color:var(--gray)}
.notice{font-size:14px;padding:14px 16px;border-radius:12px;background:var(--bg);border:1px solid var(--line);margin:4px 0 16px}
.notice strong{color:var(--ink)}
.crisis{border-color:#D9C9F5;background:#F3EEFC}
.form-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:40px}
.counter{font-size:13px;color:var(--gray);text-align:right}
.adult-warning{display:none;font-size:14px;color:#8A1F1F;background:#FCEDED;border-radius:10px;padding:10px 14px;margin-top:8px}

/* Produtos */
.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.product{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column}
.product .cover{max-width:none;aspect-ratio:4/3;box-shadow:none;margin:0 0 20px;padding:20px}
.product .cover .c-title{font-size:22px}
.product .tag{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gray)}
.product .tag.pro{color:var(--violet)}
.product h3{margin:8px 0 8px;font-size:22px}
.product p{color:var(--gray);font-size:15px;flex:1}
.product .buy{display:flex;align-items:center;justify-content:space-between;margin-top:20px;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.price{font-family:var(--display);font-weight:800;font-size:26px}

/* Sobre resumo */
.about-strip{display:grid;grid-template-columns:340px 1fr;gap:64px;align-items:center}
.photo{border-radius:200px 200px var(--radius) var(--radius);overflow:hidden;aspect-ratio:4/5;background:var(--card)}
.photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.about-strip h2{margin:12px 0 18px}
.about-strip p{font-size:19px;margin-bottom:12px}
.crp{font-weight:700;font-size:15px;margin:18px 0 22px}

/* Serviços */
.services{border-top:2px solid var(--ink)}
.service{display:grid;grid-template-columns:70px 1.1fr 1.3fr auto;gap:24px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.service .num{font-family:var(--display);font-weight:800;font-size:28px;color:var(--violet)}
.service h3{font-size:26px}
.service .for{font-size:14px;color:var(--gray);margin-top:6px}
.service p{color:var(--ink)}
.service .actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}

/* Depoimentos */
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.testimonial{border-top:3px solid var(--violet);padding-top:20px}
.testimonial blockquote{margin:0;font-size:18px}
.testimonial cite{display:block;margin-top:14px;font-style:normal;font-weight:700;font-size:14px;color:var(--gray)}
.pending{background:var(--card);border:1.5px dashed #CBBFAE;border-radius:var(--radius);padding:28px;color:var(--gray);font-size:15px}

/* Blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink)}
.post{padding:24px 24px 28px 0;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line)}
.post + .post{padding-left:24px;border-left:1px solid var(--line)}
.post .topic{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--violet)}
.post h3{font-size:22px;margin:10px 0 10px}
.post p{color:var(--gray);font-size:15px}
.post time{display:block;margin-top:14px;font-size:13px;color:var(--gray)}
a.post:hover h3{color:var(--violet)}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.chip{border:1.5px solid var(--line);border-radius:999px;padding:8px 16px;font:600 14px var(--sans);background:transparent;color:var(--ink);cursor:pointer;min-height:40px}
.chip[aria-pressed="true"]{border-color:var(--violet);color:var(--violet)}

/* Página interna */
.page-head{padding:72px 0 40px}
.page-head h1{font-size:clamp(44px,6.4vw,80px);margin-top:14px}
.page-head p{font-size:19px;max-width:640px;margin-top:18px;color:var(--gray)}
.prose{font-size:18px}
.prose h2{font-size:clamp(28px,3vw,36px);margin:48px 0 16px}
.prose h3{margin:32px 0 10px}
.prose p,.prose ul,.prose ol{margin:0 0 18px}
.prose ul{padding-left:0;list-style:none}
.prose ul li{position:relative;padding-left:22px;margin-bottom:8px}
.prose ul li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--violet)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.facts{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--ink);margin:0}
.facts div{padding:16px 16px 16px 0;border-bottom:1px solid var(--line)}
.facts dt{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gray)}
.facts dd{margin:4px 0 0;font-weight:600}
.steps{list-style:none;padding:0;margin:20px 0 0;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding:0 0 18px 48px}
.steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:32px;height:32px;border-radius:50%;border:2px solid var(--violet);color:var(--violet);font:800 15px/28px var(--sans);text-align:center}
.steps li b{display:block}
.service-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;padding:56px 0;border-top:1px solid var(--line)}
.service-block:first-of-type{border-top:2px solid var(--ink)}
.service-block .num{font-family:var(--display);font-weight:800;font-size:22px;color:var(--violet)}
.service-block h2{font-size:clamp(30px,3.4vw,42px);margin:8px 0 14px}
.tagline{font-size:14px;font-weight:700;margin-top:16px}

/* FAQ */
.faq-group{margin-bottom:48px}
.faq-group h2{font-size:28px;margin-bottom:12px}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:20px 44px 20px 0;font-weight:700;font-size:18px;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:6px;top:14px;font:400 28px var(--sans);color:var(--violet);transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details > div{padding:0 0 22px;max-width:68ch;color:#333}
details > div p + p{margin-top:10px}

/* Footer */
.site-footer{border-top:1px solid var(--line);padding:56px 0 32px;font-size:15px;margin-top:40px}
.crisis-bar{background:#F3EEFC;border:1px solid #D9C9F5;border-radius:14px;padding:16px 20px;font-size:15px;margin-bottom:44px}
.crisis-bar strong{color:var(--ink)}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
.foot h4{font-family:var(--sans);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gray);margin-bottom:12px}
.foot ul{list-style:none;padding:0;margin:0;line-height:2.1}
.foot a{color:var(--ink);text-decoration:none}
.foot a:hover{color:var(--violet)}
.foot .who b{font-family:var(--display);font-size:22px;font-weight:800;display:block;margin-bottom:6px}
.lang-switch{display:inline-flex;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;margin-top:14px}
.lang-switch a,.lang-switch span{padding:6px 14px;font-weight:700;font-size:13px;text-decoration:none;color:var(--ink)}
.lang-switch .on{background:var(--ink);color:var(--bg)}
.foot-bottom{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--gray);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Cookies */
.cookie{position:fixed;left:20px;right:20px;bottom:20px;z-index:60;max-width:560px;background:var(--ink);color:#F2F2F2;border-radius:16px;padding:18px 20px;font-size:14px;display:none;gap:16px;align-items:center;box-shadow:0 14px 40px rgba(0,0,0,.25)}
.cookie a{color:#C9B6FF}
.cookie .btn{min-height:40px;padding:0 18px;font-size:14px}
.cookie.show{display:flex}

@media (max-width:960px){
  .menu{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 24px 16px}
  .menu.open{display:flex}
  .menu a{padding:12px 0;border-bottom:1px solid var(--line)}
  .menu-toggle{display:inline-flex;align-items:center}
  .videos,.products,.testimonials,.posts{grid-template-columns:1fr}
  .post + .post{padding-left:0;border-left:0}
  .freebie,.about-strip,.two-col,.service-block{grid-template-columns:1fr;gap:32px}
  .freebie{padding:32px 24px}
  .about-strip .photo{max-width:320px}
  .service{grid-template-columns:48px 1fr;gap:10px 16px}
  .service > p,.service .actions{grid-column:2}
  .foot{grid-template-columns:1fr 1fr}
  section{padding:64px 0}
  .hero{padding:64px 0 72px}
  .form-card{padding:26px 20px}
}
@media (max-width:560px){
  body{font-size:16px}
  .nav-right .btn{padding:0 16px}
  form .row{grid-template-columns:1fr}
  .foot{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr}
  .cookie{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ---------- Movimento suave ao rolar ---------- */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1);transition-delay:var(--d,0s);will-change:opacity,transform}
.js .reveal.in{opacity:1;transform:none}
.js .reveal-img{opacity:0;transform:scale(.96) translateY(24px);transition:opacity 1.1s ease,transform 1.2s cubic-bezier(.22,.61,.36,1)}
.js .reveal-img.in{opacity:1;transform:none}
.photo img{transition:transform 1.6s cubic-bezier(.22,.61,.36,1)}
.photo:hover img{transform:scale(1.03)}
/* entrada do topo */
.js .hero .wrap > *{opacity:0;transform:translateY(22px);animation:heroIn 1s cubic-bezier(.22,.61,.36,1) forwards}
.js .hero .wrap > *:nth-child(1){animation-delay:.05s}.js .hero .wrap > *:nth-child(2){animation-delay:.15s}
.js .hero .wrap > *:nth-child(3){animation-delay:.3s}.js .hero .wrap > *:nth-child(4){animation-delay:.45s}
.js .hero .wrap > *:nth-child(5){animation-delay:.6s}.js .hero .wrap > *:nth-child(6){animation-delay:.75s}
@keyframes heroIn{to{opacity:1;transform:none}}
.halo{animation:haloDrift 18s ease-in-out infinite alternate}
@keyframes haloDrift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(3%,2%,0) scale(1.04)}100%{transform:translate3d(-3%,-1%,0) scale(1)}}
/* botões e cartões */
.btn{transition:background .25s,color .25s,border-color .25s,transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s}
.btn:hover{transform:translateY(-2px)}
.btn-primary:hover{box-shadow:0 10px 24px rgba(112,71,215,.28)}
.btn:active{transform:translateY(0)}
.product,.video .thumb,.post,.service,.freebie .cover{transition:transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s,border-color .3s}
.product:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(23,23,23,.08)}
.video:hover .thumb{transform:translateY(-4px)}
.freebie:hover .cover{transform:rotate(-2deg) translateY(-6px)}
.link-arrow::after{display:inline-block;transition:transform .3s}
.link-arrow:hover::after{transform:translateX(4px)}
.site-header{transition:box-shadow .3s,background .3s}
.site-header.scrolled{box-shadow:0 6px 24px rgba(23,23,23,.06)}
@media (prefers-reduced-motion:reduce){
  .js .reveal,.js .reveal-img,.js .hero .wrap > *{opacity:1!important;transform:none!important;animation:none!important}
  .halo{animation:none}
}

/* ---------- v5 ---------- */
/* Topo mais delicado, inspirado no banner do canal */
.hero{padding:120px 0 120px;text-align:center}
.hero .wrap{display:flex;flex-direction:column;align-items:center}
.hero-name{font-weight:700;font-size:clamp(40px,6.4vw,82px);line-height:1;letter-spacing:.06em;text-transform:uppercase;margin-top:6px}
.hero-tag{font-family:var(--sans);font-weight:500;font-size:clamp(19px,2.2vw,26px);letter-spacing:0;margin-top:22px}
.hero-tag .grad-word{font-weight:700}
.hero-line{display:block;width:64px;height:3px;border-radius:2px;background:var(--ink);margin-top:24px}
.hero-sub{margin-left:auto;margin-right:auto;color:#333}
.hero-ctas,.hero-meta{justify-content:center}
/* Degradê ampliado: cobre todo o topo, mais vivo */
.halo{inset:-18% -12% -18% -12%;height:auto;filter:blur(80px);opacity:.9}
.halo::before{width:62%;height:78%;left:-4%;top:14%;background:#FF9BD2}
.halo span{width:58%;height:84%;left:22%;top:4%;background:#9B7BF0;opacity:.95}
.halo::after{width:60%;height:80%;left:48%;top:12%;background:#6F96FF}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(to bottom,rgba(246,243,238,0),var(--bg));pointer-events:none}

/* E-books: movimento ao passar no tipo e no preço */
.product .cover{transition:transform .6s cubic-bezier(.34,1.56,.64,1),box-shadow .5s,background .4s}
.product .tag{display:inline-block;cursor:default;transition:color .3s,letter-spacing .4s}
.product .tag:hover{letter-spacing:.18em}
.product:has(.tag:hover) .cover{transform:perspective(700px) rotateY(-14deg) rotateX(4deg) translateX(6px);box-shadow:16px 18px 30px rgba(23,23,23,.14)}
.product .price{display:inline-block;cursor:default;transition:transform .4s cubic-bezier(.34,1.56,.64,1),color .3s}
.product .price:hover{transform:scale(1.12);color:var(--violet)}
.product:has(.price:hover) .cover{animation:coverHop .7s cubic-bezier(.34,1.56,.64,1)}
@keyframes coverHop{0%{transform:none}35%{transform:translateY(-14px) scale(1.03)}60%{transform:translateY(2px) scale(.995)}100%{transform:none}}
.product:has(.price:hover) .buy .btn{background:var(--violet-dark);box-shadow:0 10px 24px rgba(112,71,215,.3);transform:translateY(-2px)}

/* Avaliações */
.rating{color:var(--gray)}
.rating b{color:var(--ink)}
.stars{color:var(--violet);letter-spacing:2px}
.reviews{columns:3 300px;column-gap:24px}
.review{break-inside:avoid;margin:0 0 24px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 26px 22px;position:relative;transition:transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s,border-color .3s}
.review::before{content:"“";position:absolute;right:22px;top:6px;font:800 64px/1 var(--display);color:rgba(112,71,215,.18);transition:transform .5s,color .3s}
.review:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 18px 40px rgba(23,23,23,.08);border-color:#D9C9F5}
.review:hover::before{transform:translateY(-4px) scale(1.1);color:rgba(112,71,215,.35)}
.review.r1{background:#F3EEFC}
.review blockquote{margin:12px 0 18px;font-size:16px;line-height:1.6}
.review figcaption{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;padding-top:14px;border-top:1px solid var(--line)}
.review .avatar{width:34px;height:34px;border-radius:50%;background:var(--violet);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:15px}
.review.r1 .avatar{background:#E35DB0}
.review.r2 .avatar{background:#5E8BFF}
.review .src{margin-left:auto;font-weight:600;font-size:12px;color:var(--gray)}

/* Blog: movimento ao passar o mouse */
.post{position:relative;transition:background .4s,transform .5s cubic-bezier(.22,.61,.36,1)}
.post .topic{display:inline-block;transition:transform .45s cubic-bezier(.22,.61,.36,1),letter-spacing .45s}
.post h3{transition:color .3s,transform .5s cubic-bezier(.22,.61,.36,1)}
.post p,.post time{transition:transform .5s cubic-bezier(.22,.61,.36,1) .04s,color .3s}
.post .read{display:inline-block;margin-top:14px;font-weight:700;font-size:14px;color:var(--violet);opacity:0;transform:translateX(-10px);transition:opacity .4s,transform .45s cubic-bezier(.22,.61,.36,1)}
.post .read::after{content:" →"}
.post::after{content:"";position:absolute;left:0;top:-2px;height:2px;width:0;background:var(--violet);transition:width .6s cubic-bezier(.22,.61,.36,1)}
.post + .post::after{left:24px}
.post:hover{background:linear-gradient(to bottom,rgba(112,71,215,.05),transparent 70%)}
.post:hover::after{width:calc(100% - 24px)}
.post:hover .topic{transform:translateX(6px);letter-spacing:.16em}
.post:hover h3{transform:translateY(-3px)}
.post:hover p,.post:hover time{transform:translateY(-3px)}
.post:hover .read{opacity:1;transform:none}
div.post:hover h3{color:var(--ink)}
@media (max-width:960px){.post + .post::after{left:0}.hero{padding:88px 0}}
@media (prefers-reduced-motion:reduce){.product:has(.price:hover) .cover{animation:none}}

/* ---------- v7: formação sutil + 4 avaliações ---------- */
.creds-subtle{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;width:100%;max-width:980px;border-top:1px solid rgba(23,23,23,.14);text-align:left}
.cs-item{padding:18px 18px 0;display:flex;flex-direction:column;gap:2px}
.cs-item + .cs-item{border-left:1px solid rgba(23,23,23,.10)}
.cs-kind{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--violet)}
.cs-title{font-weight:700;font-size:16px;color:var(--ink)}
.cs-inst{font-size:13px;line-height:1.45;color:#4a4a4a}
.reviews-4{columns:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.reviews-4 .review{margin:0;display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}
.reviews-4 .review blockquote{flex:1;font-size:15px}
.review .who{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;padding-top:14px;border-top:1px solid var(--line)}
.review .src{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:12px;color:var(--gray);transition:color .3s}
svg.g{width:14px;height:14px;flex:none}
a.review:hover{color:var(--ink)}
a.review:hover .src{color:var(--violet)}
a.rating{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--gray);font-size:15px}
a.rating:hover{color:var(--violet)}
@media (max-width:960px){
  .creds-subtle{grid-template-columns:1fr 1fr}
  .cs-item:nth-child(3){border-left:0}
  .reviews-4{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .creds-subtle{grid-template-columns:1fr;text-align:center}
  .cs-item + .cs-item{border-left:0;border-top:1px solid rgba(23,23,23,.08)}
  .cs-item{padding:14px 0 0}
  .reviews-4{grid-template-columns:1fr}
}
.js .hero .wrap > *:nth-child(7){animation-delay:.9s}

/* ---------- v8 ---------- */
/* Marca do cabeçalho no mesmo estilo do nome principal */
.brand b{font-weight:700;font-size:19px;letter-spacing:.08em;text-transform:uppercase}
.brand span{margin-top:5px}
/* Blur branco atrás do nome */
.hero-name{position:relative;isolation:isolate}
.hero-name::before{content:"";position:absolute;left:-10%;right:-10%;top:-45%;bottom:-45%;z-index:-1;border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.92) 0%,rgba(255,255,255,.6) 40%,rgba(255,255,255,0) 72%);filter:blur(14px);pointer-events:none}
/* Formação: movimento ao passar o mouse */
.cs-item{cursor:default;position:relative}
.cs-kind{display:inline-block;transition:letter-spacing .45s cubic-bezier(.22,.61,.36,1),transform .45s cubic-bezier(.22,.61,.36,1),color .3s}
.cs-title{display:inline-block;transition:transform .5s cubic-bezier(.22,.61,.36,1) .03s}
.cs-inst{transition:transform .5s cubic-bezier(.22,.61,.36,1) .06s,color .3s}
.cs-item::after{content:"";position:absolute;left:18px;top:-1px;height:2px;width:0;background:var(--violet);transition:width .55s cubic-bezier(.22,.61,.36,1)}
.cs-item:hover .cs-kind{letter-spacing:.24em;transform:translateY(-3px);color:var(--violet-dark)}
.cs-item:hover .cs-title{transform:translateX(4px)}
.cs-item:hover .cs-inst{transform:translateX(4px);color:var(--ink)}
.cs-item:hover::after{width:calc(100% - 36px)}
@media (max-width:560px){.cs-item::after{left:30%}.cs-item:hover::after{width:40%}.cs-item:hover .cs-title,.cs-item:hover .cs-inst{transform:none}}
/* Carrossel de avaliações */
.review-carousel{overflow:hidden;margin:0 -24px;padding:10px 24px 14px;-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.rc-track{display:flex;gap:20px;width:max-content;will-change:transform}
.review-carousel .review{width:330px;flex:none;margin:0;display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}
.review-carousel .review blockquote{flex:1;font-size:15px}
.review-carousel .review.pop{animation:reviewPop .45s cubic-bezier(.34,1.56,.64,1)}
@keyframes reviewPop{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-8px) scale(1.035)}100%{transform:translateY(-6px) scale(1.02)}}
.review-carousel .review:hover{transform:translateY(-6px) scale(1.02)}
/* Vídeos em breve */
.yt-soon{flex-direction:column;gap:10px;font-weight:600;background:linear-gradient(135deg,#F3EEFC,#EEF2FF)}
.yt-soon .play{width:52px;height:36px;border-radius:10px;background:var(--violet);position:relative;transition:transform .35s}
.yt-soon .play::after{content:"";position:absolute;left:21px;top:10px;border-left:13px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent}
.video:hover .yt-soon .play{transform:scale(1.1)}
@media (max-width:560px){.review-carousel .review{width:280px}}
@media (prefers-reduced-motion:reduce){.rc-track{flex-wrap:wrap;width:auto}.review-carousel .review[aria-hidden="true"]{display:none}}

.hero-name::before{content:none;display:none}

/* site oficial: selos de rascunho ocultos */
.draft{display:none!important}
.price.soon-label{font-size:18px;color:var(--gray)}
