
:root{
  --azul:#0b3fd0; --azul-esc:#0a2a8a; --azul-txt:#0d2a6b; --azul-claro:#eaf1ff; --azul-borda:#c9d8ff;
  --verde:#16a34a; --texto:#33405e; --branco:#fff; --vermelho:#e11d48; --ouro:#f5b301;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Poppins,sans-serif;color:var(--texto);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:Montserrat,sans-serif;color:var(--azul-txt);line-height:1.15}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
section{padding:64px 0}
.bg-claro{background:var(--azul-claro)}
.center{text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(180deg,#22c55e,#16a34a);color:#fff;font:700 18px Poppins;text-decoration:none;border-radius:16px;padding:18px 34px;box-shadow:0 10px 24px rgba(22,163,74,.35);transition:transform .15s,box-shadow .15s;text-align:center;border:0;cursor:pointer}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(22,163,74,.45)}
.btn.pulse{animation:pulse 2.2s infinite}
@keyframes pulse{0%,100%{box-shadow:0 10px 24px rgba(22,163,74,.35)}50%{box-shadow:0 10px 34px rgba(22,163,74,.65)}}
.titulo{font-size:clamp(28px,4.2vw,44px);font-weight:800;margin-bottom:28px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--texto)}
.check svg{flex:none;width:22px;height:22px;margin-top:1px}

/* HERO */
.hero{padding:40px 0 56px;background:radial-gradient(ellipse at top,#eaf1ff 0%,#fff 60%)}
.hero h1{font-size:clamp(26px,6.6vw,52px);font-weight:900;text-align:center;letter-spacing:-.5px}
.hero h1 span{color:var(--azul)}
.hero .kit{width:min(620px,100%);margin:22px auto 8px;filter:drop-shadow(0 20px 30px rgba(11,63,208,.15))}
.hero .sub{max-width:620px;margin:0 auto 22px;text-align:center;font-size:17px}
.card-lista{max-width:620px;margin:0 auto;background:#fff;border:1px solid var(--azul-borda);border-radius:20px;padding:22px 24px;box-shadow:0 12px 30px rgba(13,42,107,.08);display:grid;gap:12px}
.cta{margin-top:26px;text-align:center}
.cta small{display:block;margin-top:10px;font-size:13px;color:#6b7590}

/* CARROSSEL (letreiro contínuo, igual artrose200) */
.faixa{width:100%;overflow:hidden;margin-top:6px;padding:6px 0 18px}
.trilho{display:flex;width:max-content;gap:20px;padding:0 10px;animation:letreiro 70s linear infinite}
.faixa:hover .trilho{animation-play-state:paused}
.trilho img{flex:none;width:min(520px,82vw);border-radius:14px;border:1px solid #dbe4fb;box-shadow:0 10px 26px rgba(13,42,107,.12);cursor:zoom-in;background:#fff}
@keyframes letreiro{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.faixa{overflow-x:auto}.trilho{animation:none}}

/* DOR */
.dor h2{font-size:clamp(26px,3.6vw,42px);font-weight:600;max-width:900px;margin:0 auto 18px}
.dor p{max-width:720px;margin:0 auto 28px;font-size:17px}

/* IDEAL */
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:760px;margin:0 auto}
.ideal{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid var(--azul-borda);border-radius:20px;padding:22px;box-shadow:0 8px 22px rgba(13,42,107,.06)}
.ideal .ic{flex:none;width:68px;height:68px;border-radius:50%;background:linear-gradient(145deg,#e3ecff,#c7d8ff);display:flex;align-items:center;justify-content:center}
.ideal .ic svg{width:36px;height:36px;stroke:var(--azul);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ideal h3{font-size:16px;font-weight:600;letter-spacing:.2px;margin-bottom:4px}
.ideal p{font-size:14px}

/* RECEBER */
.receber .livro{width:min(640px,100%);margin:0 auto 26px;filter:drop-shadow(0 18px 26px rgba(11,63,208,.15))}
.receber .card-lista p.nota{color:var(--azul);font-size:14px;text-align:center;margin-top:6px}
.modulos{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:760px;margin:26px auto 0}
.modulos span{background:#fff;border:1px solid var(--azul-borda);color:var(--azul-txt);font:600 13px Poppins;padding:6px 12px;border-radius:99px}

/* BONUS */
.selo{display:inline-block;background:var(--azul);color:#fff;font:800 clamp(20px,2.6vw,28px) Montserrat;padding:6px 20px;border-radius:12px;margin-top:8px}
.bonus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;max-width:900px;margin:34px auto 0}
.bonus{position:relative;background:#fff;border:1px solid var(--azul-borda);border-radius:22px;padding:22px;text-align:center;box-shadow:0 10px 26px rgba(13,42,107,.07)}
.bonus .tag{position:absolute;top:16px;left:16px;background:var(--azul);color:#fff;font:700 11px Poppins;padding:4px 10px;border-radius:99px;text-transform:uppercase}
.bonus img{width:min(260px,70%);margin:6px auto 14px}
.bonus h3{font-size:19px;font-weight:800;margin-bottom:8px}
.bonus p{font-size:14px;margin-bottom:14px}
.preco-riscado{color:var(--vermelho);text-decoration:line-through;font-weight:600}
.gratis{display:inline-block;background:#dcfce7;color:var(--verde);font:800 15px Montserrat;padding:4px 14px;border-radius:99px;margin-left:6px}

/* PLANOS */
.planos{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;align-items:start;max-width:960px;margin:0 auto}
.plano{background:#fff;border-radius:24px;padding:28px 24px;box-shadow:0 14px 34px rgba(13,42,107,.1);border:1px solid var(--azul-borda);text-align:center}
.plano h3{font-size:20px;font-weight:800;text-transform:uppercase;margin-bottom:14px}
.plano .item{background:var(--azul-claro);border:1px solid var(--azul-borda);border-radius:10px;padding:8px 12px;font-size:14px;text-align:left}
.plano .de{margin-top:22px;font-size:15px;font-weight:600}
.plano .por{font:800 44px Montserrat;color:var(--verde);line-height:1.1;margin:4px 0}
.plano .parc{font-size:13px;color:#6b7590;margin-bottom:20px}
.plano .btn{width:100%;padding:16px}
.aviso{margin-top:20px;background:#fff1f2;border:1px solid #fecdd3;color:#be123c;border-radius:14px;padding:14px;font-weight:700;font-size:15px}
.aviso svg{width:22px;height:22px;stroke:#be123c;fill:none;stroke-width:2.6;margin:6px auto 0;display:block;animation:desce 1.4s infinite}
@keyframes desce{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.plano.top{border:2px solid var(--azul);padding-top:24px;position:relative}
.plano.top h3{font-size:24px;text-transform:none}
.badges{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px}
.badge{font:700 12px Poppins;padding:5px 14px;border-radius:99px;display:inline-flex;align-items:center;gap:6px}
.b-azul{background:var(--azul);color:#fff}.b-verm{background:#ffe4e6;color:#be123c}.b-verde{background:#dcfce7;color:#15803d}
.plano.top .kit{margin:0 auto 18px;width:92%}
.feat{display:grid;gap:8px;text-align:left}
.feat div{display:flex;gap:10px;align-items:center;background:var(--azul-claro);border-radius:10px;padding:8px 12px;font-size:14px}
.feat svg{width:20px;height:20px;flex:none}
.bonus-box{margin-top:16px;border:2px dashed var(--azul);border-radius:14px;padding:14px;text-align:left}
.bonus-box b{display:block;font:800 16px Montserrat;color:var(--azul);margin-bottom:8px}
.bonus-box div{font-size:14px;display:flex;gap:8px;align-items:center;margin:4px 0}
.urg{margin-top:12px;font-size:13px;font-weight:700;color:#be123c}

/* PASSOS */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.passo{background:#fff;border:1px solid var(--azul-borda);border-radius:20px;padding:26px 22px;text-align:center;box-shadow:0 8px 22px rgba(13,42,107,.06)}
.passo .n{display:inline-block;background:var(--azul);color:#fff;font:700 12px Poppins;padding:4px 12px;border-radius:99px;margin-bottom:12px;text-transform:uppercase}
.passo h3{font-size:19px;font-weight:800;margin-bottom:8px}
.passo p{font-size:14px}

/* GARANTIA */
.garantia{display:flex;flex-direction:column;align-items:center;text-align:center}
.garantia svg.selo-g{width:150px;height:150px;margin-bottom:18px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))}
.garantia h2{font-size:clamp(26px,3.4vw,38px);font-weight:800;margin-bottom:12px}
.garantia p{max-width:720px}

/* FAQ */
.faq{max-width:760px;margin:0 auto;display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--azul-borda);border-radius:14px;padding:0 18px}
.faq summary{list-style:none;cursor:pointer;padding:16px 0;font-weight:600;color:var(--azul-txt);display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"";width:10px;height:10px;border-right:2px solid var(--azul);border-bottom:2px solid var(--azul);transform:rotate(45deg);margin-top:4px;flex:none;transition:transform .2s}
.faq details[open] summary:after{transform:rotate(-135deg);margin-top:9px}
.faq details p{padding:0 0 16px;font-size:15px}

footer{background:var(--azul-esc);color:#c9d8ff;text-align:center;padding:30px 16px;font-size:13px}
footer p+p{margin-top:8px;opacity:.85}

/* LIGHTBOX */
.lb{position:fixed;inset:0;background:rgba(5,15,45,.88);display:none;align-items:center;justify-content:center;z-index:50;padding:16px}
.lb.on{display:flex}
.lb img{max-height:92vh;border-radius:10px}
.lb button{position:absolute;top:14px;right:18px;background:none;border:0;color:#fff;font-size:38px;cursor:pointer}

@media (max-width:760px){
  section{padding:48px 0}
  .grid2,.bonus-grid,.planos,.passos{grid-template-columns:1fr}
  .ideal{padding:18px}
  .btn{width:100%;font-size:16px;padding:17px 18px}
  .plano .por{font-size:40px}
}
