*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --azul:#0C2340;
  --azul-med:#1A3A5C;
  --acento:#E8A020;
  --acento-claro:#F5C842;
  --acento-escuro:#8A5A00;
  --branco:#FAFAF8;
  --cinza:#5B6270;
  --cinza-claro:#F2F1EE;
  --verde:#1A7A4A;
}
html{scroll-behavior:smooth;}
body{
  font-family:'DM Sans',sans-serif;
  background:var(--branco);
  color:var(--azul);
  overflow-x:hidden;
}

/* HERO */
.hero{
  background:var(--azul);
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:4rem 1.5rem 3rem;
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:'';
  position:absolute;
  top:-200px;right:-200px;
  width:600px;height:600px;
  background:radial-gradient(circle, rgba(232,160,32,0.12) 0%, transparent 70%);
  pointer-events:none;
}
.hero::after{
  content:'ml/';
  position:absolute;
  bottom:-70px;right:-10px;
  font-family:'Poppins',sans-serif;
  font-size:260px;
  font-weight:800;
  color:rgba(255,255,255,0.03);
  letter-spacing:-12px;
  pointer-events:none;
  line-height:1;
}
.hero-tag{
  display:inline-block;
  background:var(--acento);
  color:var(--azul);
  font-family:'Poppins',sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:3px;
  padding:6px 16px;
  border-radius:2px;
  margin-bottom:2rem;
  width:fit-content;
}
.hero h1{
  font-family:'Poppins',sans-serif;
  font-size:clamp(38px,8vw,68px);
  font-weight:800;
  color:var(--branco);
  line-height:1.02;
  letter-spacing:-2px;
  margin-bottom:1.25rem;
}
.hero h1 em{
  font-style:normal;
  color:var(--acento);
}
.hero-sub{
  font-size:clamp(16px,3vw,20px);
  color:rgba(250,250,248,0.78);
  font-weight:300;
  line-height:1.6;
  max-width:540px;
  margin-bottom:2.5rem;
}
.hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:2.5rem;
}
.pill{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.15);
  color:rgba(250,250,248,0.85);
  padding:8px 16px;
  border-radius:100px;
  font-size:13px;
  font-weight:400;
}
.btn-cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:var(--acento);
  color:var(--azul);
  font-family:'Poppins',sans-serif;
  font-size:16px;
  font-weight:700;
  padding:18px 32px;
  border-radius:4px;
  text-decoration:none;
  transition:transform 0.2s, box-shadow 0.2s;
  width:fit-content;
}
.btn-cta:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(232,160,32,0.35);}
.btn-cta svg{width:20px;height:20px;flex-shrink:0;}
.hero-preco{
  margin-top:1.25rem;
  font-size:13px;
  color:rgba(250,250,248,0.72);
}
.hero-preco strong{color:rgba(250,250,248,0.95);}

/* SECTION BASE */
section{padding:5rem 1.5rem;}
.container{max-width:720px;margin:0 auto;}
.label{
  font-family:'Poppins',sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:4px;
  color:var(--acento-escuro);
  margin-bottom:1rem;
  display:block;
}
h2{
  font-family:'Poppins',sans-serif;
  font-size:clamp(28px,5vw,42px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1.1;
  margin-bottom:1.25rem;
}

/* DOR */
.dor{background:var(--cinza-claro);}
.dor-lista{
  list-style:none;
  margin-top:2rem;
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.dor-lista li{
  display:flex;
  align-items:flex-start;
  gap:14px;
  font-size:17px;
  line-height:1.5;
  color:#374151;
}
.dor-lista li::before{
  content:'✕';
  color:var(--acento-escuro);
  font-size:18px;
  flex-shrink:0;
  margin-top:1px;
}

/* SERVIÇOS */
.servicos{background:var(--azul);}
.servicos h2{color:var(--branco);}
.servicos .label{color:var(--acento);}
.servicos-intro{
  font-size:16px;
  color:rgba(250,250,248,0.78);
  line-height:1.6;
  max-width:520px;
  margin-bottom:2.5rem;
}
.serv-lista{
  display:flex;
  flex-direction:column;
  gap:1.25rem;
}
.serv{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.09);
  border-left:4px solid var(--acento);
  border-radius:4px;
  padding:1.75rem 1.5rem;
  position:relative;
  transition:background 0.25s, transform 0.25s;
}
.serv:hover{background:rgba(255,255,255,0.07);transform:translateY(-2px);}
.serv-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:1rem;
}
.serv-num{
  font-family:'Poppins',sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:2px;
  color:var(--acento-claro);
}
.serv-ico{
  width:44px;height:44px;
  flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(232,160,32,0.12);
  border:1px solid rgba(232,160,32,0.25);
  border-radius:10px;
  margin-left:auto;
}
.serv-ico svg{width:24px;height:24px;color:var(--acento-claro);}
.serv h3{
  font-family:'Poppins',sans-serif;
  font-size:23px;
  font-weight:800;
  letter-spacing:-0.5px;
  color:var(--branco);
  margin-bottom:6px;
}
.serv-tag{
  font-size:14px;
  font-style:italic;
  color:var(--acento-claro);
  font-weight:300;
  margin-bottom:12px;
}
.serv p{
  font-size:15px;
  color:rgba(250,250,248,0.8);
  line-height:1.65;
  margin-bottom:1rem;
}
.serv-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:1.5rem;
}
.serv-chip{
  background:rgba(232,160,32,0.1);
  border:1px solid rgba(232,160,32,0.2);
  color:var(--acento-claro);
  font-size:12px;
  padding:5px 12px;
  border-radius:100px;
}
.serv-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:700;
  color:var(--azul);
  background:var(--acento);
  padding:12px 20px;
  border-radius:4px;
  text-decoration:none;
  transition:transform 0.2s, box-shadow 0.2s;
}
.serv-link:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(232,160,32,0.3);}
.serv-link svg{width:17px;height:17px;flex-shrink:0;}

.tabela-titulo{
  font-family:'Poppins',sans-serif;
  font-size:20px;
  font-weight:800;
  color:var(--branco);
  margin:3rem 0 1rem;
}
.tabela-wrap{overflow-x:auto;border-radius:8px;border:1px solid rgba(255,255,255,0.09);}
.tabela-servicos{width:100%;border-collapse:collapse;font-size:14px;min-width:560px;}
.tabela-servicos th,.tabela-servicos td{
  text-align:left;
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,0.09);
}
.tabela-servicos th{
  font-family:'Poppins',sans-serif;
  font-weight:700;
  color:var(--acento-claro);
  background:rgba(255,255,255,0.04);
}
.tabela-servicos td{color:rgba(250,250,248,0.85);}
.tabela-servicos td:first-child{color:var(--branco);font-weight:700;}
.tabela-servicos tr:last-child td{border-bottom:none;}

/* MÉTODO */
.metodo{background:var(--branco);}
.passos{
  margin-top:2.5rem;
  display:flex;
  flex-direction:column;
  gap:1px;
}
.passo{
  display:flex;
  gap:18px;
  padding:1.5rem 0;
  border-bottom:1px solid #E5E7EB;
}
.passo:last-child{border-bottom:none;}
.passo-num{
  font-family:'Poppins',sans-serif;
  font-size:30px;
  font-weight:800;
  color:var(--acento-escuro);
  line-height:1;
  flex-shrink:0;
  width:48px;
}
.passo h3{
  font-family:'Poppins',sans-serif;
  font-size:18px;
  font-weight:700;
  color:var(--azul);
  margin-bottom:4px;
}
.passo p{font-size:15px;color:var(--cinza);line-height:1.6;}

/* PARA QUEM */
.paraquem{background:var(--cinza-claro);}
.perfis{
  margin-top:2rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.perfil{
  background:var(--branco);
  border-radius:4px;
  padding:1.25rem;
}
.perfil-icon{font-size:28px;margin-bottom:10px;}
.perfil h3{
  font-family:'Poppins',sans-serif;
  font-size:15px;
  font-weight:700;
  color:var(--azul);
  margin-bottom:4px;
}
.perfil p{font-size:13px;color:var(--cinza);line-height:1.4;}

/* QUEM SOU */
.instrutor{background:var(--branco);}
.instrutor-card{
  background:var(--cinza-claro);
  border-radius:4px;
  padding:2rem;
  margin-top:2rem;
  border-left:4px solid var(--acento);
}
.instrutor-nome{
  font-family:'Poppins',sans-serif;
  font-size:22px;
  font-weight:800;
  color:var(--azul);
  margin-bottom:4px;
}
.instrutor-titulo{
  font-size:13px;
  color:var(--acento-escuro);
  font-weight:600;
  letter-spacing:1px;
  margin-bottom:1.25rem;
}
.instrutor-bio{
  font-size:15px;
  color:#374151;
  line-height:1.7;
}
.stats{
  display:flex;
  gap:2rem;
  margin-top:1.5rem;
  flex-wrap:wrap;
}
.stat{display:flex;flex-direction:column;}
.stat-num{
  font-family:'Poppins',sans-serif;
  font-size:28px;
  font-weight:800;
  color:var(--azul);
  line-height:1;
}
.stat-label{font-size:12px;color:var(--cinza);margin-top:4px;max-width:140px;}

/* DEPOIMENTOS */
.depoimentos{background:var(--cinza-claro);}
.depoimentos .label{
  font-size:14px;
  letter-spacing:2px;
  background:var(--acento);
  color:var(--azul);
  padding:6px 14px;
  border-radius:100px;
  width:fit-content;
  margin-bottom:1.5rem;
}
.depoimentos-lista{
  margin-top:2rem;
  display:flex;
  flex-direction:column;
  gap:24px;
}
.depoimento-card{
  background:var(--branco);
  border-radius:8px;
  padding:1.75rem;
  box-shadow:0 2px 10px rgba(12,35,64,0.08);
  border:1px solid rgba(12,35,64,0.06);
}
.depoimento-topo{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:1.1rem;
}
.depoimento-foto{
  width:52px;height:52px;
  border-radius:50%;
  object-fit:cover;
  flex-shrink:0;
  border:2px solid var(--cinza-claro);
}
.depoimento-nome-estrelas{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.depoimento-nome{
  font-family:'Poppins',sans-serif;
  font-size:16px;
  font-weight:700;
  color:var(--azul);
}
.depoimento-estrelas{color:var(--acento);font-size:14px;letter-spacing:2px;}
.depoimento-texto{
  font-size:15px;
  color:#374151;
  line-height:1.75;
  padding-top:.25rem;
}
.depoimentos-gmn{
  margin-top:2rem;
  font-size:14px;
  font-weight:600;
  color:var(--azul);
  text-align:center;
}

/* FAQ */
.faq{background:var(--cinza-claro);}
.faq-lista{margin-top:2rem;display:flex;flex-direction:column;gap:1px;}
.faq-item{
  border-bottom:1px solid #E0DDD6;
  padding:1.25rem 0;
}
.faq-item:last-child{border-bottom:none;}
.faq-q{
  font-family:'Poppins',sans-serif;
  font-size:16px;
  font-weight:700;
  color:var(--azul);
  margin-bottom:8px;
}
.faq-a{
  font-size:14px;
  color:var(--cinza);
  line-height:1.7;
}

/* CTA FINAL */
.cta-final{
  background:var(--acento);
  padding:4rem 1.5rem;
  text-align:center;
}
.cta-final h2{
  font-family:'Poppins',sans-serif;
  font-size:clamp(28px,5vw,42px);
  font-weight:800;
  color:var(--azul);
  letter-spacing:-1px;
  margin-bottom:1rem;
}
.cta-final p{
  font-size:16px;
  color:var(--azul);
  margin-bottom:2rem;
  line-height:1.6;
  max-width:480px;
  margin-left:auto;margin-right:auto;
}
.btn-cta-dark{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:var(--azul);
  color:var(--branco);
  font-family:'Poppins',sans-serif;
  font-size:16px;
  font-weight:700;
  padding:18px 32px;
  border-radius:4px;
  text-decoration:none;
  transition:transform 0.2s;
}
.btn-cta-dark:hover{transform:translateY(-2px);}

/* FOOTER */
footer{
  background:var(--azul);
  padding:2rem 1.5rem;
  text-align:center;
}
footer p{font-size:12px;color:rgba(250,250,248,0.55);}

/* STICKY BAR */
.sticky-bar{
  position:fixed;
  bottom:0;left:0;right:0;
  background:var(--azul);
  border-top:2px solid var(--acento);
  padding:14px 1.5rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  z-index:100;
  box-shadow:0 -4px 20px rgba(0,0,0,0.3);
}
.sticky-txt{
  font-size:13px;
  color:rgba(250,250,248,0.82);
  line-height:1.3;
}
.sticky-txt strong{color:var(--branco);font-family:'Poppins',sans-serif;}
.btn-sticky{
  background:var(--acento);
  color:var(--azul);
  font-family:'Poppins',sans-serif;
  font-size:13px;
  font-weight:700;
  padding:12px 20px;
  border-radius:4px;
  text-decoration:none;
  white-space:nowrap;
  flex-shrink:0;
}

@media(max-width:700px){
  .hero{
    min-height:auto;
    justify-content:flex-start;
    padding-top:4.5rem;
    padding-bottom:3.5rem;
  }
  .hero::after{font-size:200px;bottom:-50px;}
}
@media(max-width:480px){
  .perfis{grid-template-columns:1fr;}
  .stats{gap:1.5rem;}
  .sticky-bar{flex-direction:column;gap:8px;text-align:center;}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none !important;scroll-behavior:auto !important;}
}
