:root {
    --header-bkg:#201638; --header-borda:rgba(255,255,255,.15); --header-menu:#fff;
    --fundo:#fff5f8; --fundo-secundario:#fff5f8; --fundo-card:#fff; --fundo-claro:#fff5f8;
    --texto:#252525; --texto-secundario:#666; --texto-suave:#777; --texto-escuro:#201638; --texto-faq:#6f6f6f;
    --destaque:#ff4f81; --destaque-texto:#fff;
    --botao-fundo:#ff4f81; --botao-texto:#fff; --botao-escuro-fundo:#201638; --botao-escuro-hover:#2c1c4d; --botao-escuro-texto:#fff;
    --borda:#ddd;
    --faixa-fundo:#ff4f81; --faixa-texto:#fff;
    --cta-fundo:#ff4f81; --cta-texto:#fff;
    --footer-bkg:#201638; --footer-texto:#aaa;
    --painel-escuro:#201638; --painel-escuro-texto:#fff; --painel-texto-fraco:#d0cad0;
    interpolate-size:allow-keywords;
}
*               { margin:0; padding:0; box-sizing:border-box; }
html            { scroll-behavior:smooth; }
body            { font-family:Arial,Helvetica,sans-serif; color:var(--texto); background:var(--fundo); }
a               { text-decoration:none; }
.content        { width:100%; max-width:1400px; margin:0 auto; padding:0 20px; }
header          { position:sticky; top:40px; z-index:1000; background:var(--header-bkg); color:var(--header-menu); }
header .content { width:100%; max-width:1400px; margin:0 auto; padding:0 20px; min-height:78px; display:flex; align-items:center; justify-content:space-between; }
.logo           { font-size:25px; font-weight:900; letter-spacing:2px; color:var(--header-menu); }
.logo span      { color:var(--destaque); }
nav             { display:flex; align-items:center; gap:24px; }
nav a           { color:var(--header-menu); font-size:13px; }
.header-drop          { position:relative; flex-shrink:0; }
.header-drop-btn      { width:42px; height:42px; display:grid; place-items:center; border:0; border-radius:50%; color:var(--header-menu); background:transparent; font-size:19px; cursor:pointer; transition:filter .2s ease, color .2s; }
.header-drop-btn:hover { filter:brightness(1.35); }
.header-drop-menu     { background:var(--header-bkg); position:absolute; top:50px; right:0; z-index:50; width:150px; padding:7px; display:none; box-shadow:0 12px 30px rgba(0,0,0,.35); }
.header-drop-menu.aberto { display:block; }
.header-drop-item     { width:100%; padding:10px 12px; display:block; border:0; color:var(--header-menu); background:transparent; text-align:left; cursor:pointer; }
.header-seta         { border-left:6px solid var(--header-menu); display:inline-block; width:0; height:0; margin-right:9px; vertical-align:middle; border-top:4px solid transparent; border-bottom:4px solid transparent; opacity:0; transition:.15s; }
.header-drop-item:hover .header-seta,
.header-drop-item.atual .header-seta { opacity:1; }
.btn            { display:inline-flex; padding:15px 23px; background:var(--botao-fundo); color:var(--botao-texto); font-weight:bold; border-radius:30px; }
.hero           { background:var(--painel-escuro); color:var(--painel-escuro-texto); }
.hero .content  { min-height:680px; padding:70px 0; display:grid; grid-template-columns:1fr 1fr; gap:55px; align-items:center; }
.hero h1        { max-width:720px; margin:18px 0 22px; font-size:62px; line-height:1.02; }
.hero p         { max-width:560px; margin-bottom:28px; color:var(--painel-texto-fraco); font-size:17px; line-height:1.7; }
.tag            { color:var(--destaque); font-weight:bold; font-size:12px; letter-spacing:2px; }
.hero-img       { height:530px; overflow:hidden; border-radius:220px 220px 20px 20px; }
.hero-img img   { width:100%; height:100%; object-fit:cover; }
.beneficios     { background:var(--faixa-fundo); color:var(--faixa-texto); }
.beneficios .content { padding:28px 0; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.beneficio      { padding:15px; text-align:center; font-weight:bold; }
section         { padding:90px 0; scroll-margin-top:118px; }
.titulo         { max-width:760px; margin-bottom:45px; }
.titulo span    { color:var(--destaque); font-size:12px; font-weight:bold; letter-spacing:2px; }
.titulo h2      { margin:10px 0; font-size:43px; color:var(--texto-escuro); }
.titulo p       { color:var(--texto-faq); line-height:1.7; }
.modalidades    { background:var(--fundo-card); }
.grid           { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.card           { min-height:235px; padding:28px; border:1px solid var(--borda); background:var(--fundo-claro); }
.card small     { color:var(--destaque); font-weight:bold; }
.card h3        { margin:30px 0 10px; font-size:23px; }
.card p         { color:var(--texto-secundario); line-height:1.6; }
.experiencia    { background:var(--painel-escuro); color:var(--painel-escuro-texto); }
.experiencia .content { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; }
.experiencia img{ width:100%; height:470px; object-fit:cover; }
.experiencia h2 { margin:12px 0 18px; font-size:42px; }
.experiencia p  { color:#ccc; line-height:1.8; }
.checks         { margin-top:25px; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.checks div     { padding:14px; border:1px solid #444; }
.grade          { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.horario        { padding:24px; background:var(--fundo-card); border-top:4px solid var(--destaque); }
.horario strong { display:block; margin-bottom:8px; }
.horario span   { color:var(--texto-suave); font-size:13px; }
.planos         { background:var(--fundo-card); }
.grid-planos    { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.plano          { position:relative; padding:35px; background:var(--fundo-claro); border:1px solid var(--borda); }
.plano.popular  { border:2px solid var(--destaque); transform:translateY(-8px); }
.plano b        { position:absolute; right:0; top:40px; padding:8px; background:var(--destaque); color:var(--destaque-texto); font-size:10px; }
.plano h3       { font-size:23px; }
.plano>strong   { display:block; margin:20px 0; color:var(--destaque); font-size:36px; }
.plano small    { color:var(--texto-suave); font-size:12px; }
.plano p        { min-height:45px; color:var(--texto-secundario); }
.plano ul       { margin:20px 0; list-style:none; }
.plano li       { padding:9px 0; border-bottom:1px solid var(--borda); }
.plano a        { display:block; padding:14px; text-align:center; background:var(--botao-escuro-fundo); color:var(--botao-escuro-texto); font-weight:bold; }
.depoimentos    { background:var(--painel-escuro); color:var(--painel-escuro-texto); }
.depoimentos .titulo h2 { color:var(--painel-escuro-texto); }
.depoimentos-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
blockquote      { padding:30px; background:rgba(255,255,255,.08); line-height:1.7; }
blockquote strong { display:block; margin-top:18px; color:var(--destaque); font-size:12px; }
details         { max-width:900px; padding:20px; margin-bottom:10px; background:var(--fundo-card); border:1px solid var(--borda); }
summary         { cursor:pointer; font-weight:bold; }
details p       { padding-top:12px; color:var(--texto-secundario); line-height:1.6; }
.cta            { margin:0 7% 70px; padding:55px; display:flex; align-items:center; justify-content:space-between; gap:25px; background:var(--cta-fundo); color:var(--cta-texto); }
.cta h2         { font-size:38px; }
footer          { padding:42px 6%; display:flex; justify-content:space-between; gap:20px; background:var(--footer-bkg); color:var(--footer-texto); font-size:12px; }
@media(max-width:900px) { nav { display:none; } .hero .content,.experiencia .content { grid-template-columns:1fr; } .beneficios .content,.grid,.grade,.grid-planos { grid-template-columns:1fr 1fr; } .cta { align-items:flex-start; flex-direction:column; } }
@media(max-width:550px) { .hero h1 { font-size:40px; } .hero-img { height:390px; } .beneficios .content,.grid,.grade,.grid-planos,.checks,.depoimentos-grid { grid-template-columns:1fr; } .plano.popular { transform:none; } .titulo h2,.experiencia h2,.cta h2 { font-size:32px; } footer { flex-direction:column; } }