/* =========================================
   LANDING CONSULTORIA v1 — Page ID 847
   Base espelhada da LP Premium v4 (578)
   Fonte de verdade: /wp-content/mu-plugins/rafa-lp-consultoria.css
========================================= */

body.page-id-847{
  --bg0:#05070b;
  --bg1:#0b1020;

  --card: rgba(255,255,255,.06);
  --stroke: rgba(255,255,255,.12);

  --text: rgba(255,255,255,.88);
  --muted: rgba(255,255,255,.68);

  --gold:#d4af37;
  --aqua:#2dd4bf;

  --shadow: 0 30px 90px rgba(0,0,0,.65);
  --padx: 32px;

  background:
    radial-gradient(1200px 800px at 15% 10%, rgba(45,212,191,.10), transparent 60%),
    radial-gradient(1000px 700px at 85% 12%, rgba(212,175,55,.14), transparent 60%),
    radial-gradient(900px 650px at 30% 90%, rgba(255,255,255,.06), transparent 65%),
    linear-gradient(180deg, var(--bg1) 0%, var(--bg0) 100%) !important;

  color: var(--text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* remove cabeçalho/rodapé do tema só na landing (admin bar continua para logado) */
body.page-id-847 header#masthead,
body.page-id-847 header.site-header,
body.page-id-847 .site-header,
body.page-id-847 .ast-primary-header-bar,
body.page-id-847 .ast-desktop-header,
body.page-id-847 .ast-mobile-header{
  display:none !important;
}
body.page-id-847 footer#colophon,
body.page-id-847 footer.site-footer,
body.page-id-847 .site-footer{
  display:none !important;
}

/* força fundo premium nos wrappers do Astra */
body.page-id-847 #page,
body.page-id-847 .site,
body.page-id-847 .site-content,
body.page-id-847 #content,
body.page-id-847 .ast-container,
body.page-id-847 .content-area,
body.page-id-847 main,
body.page-id-847 article#post-847{
  background: transparent !important;
}

/* remove título padrão do tema (o que você selecionou no print) */
body.page-id-847 .entry-header{ display:none !important; }

/* container */
body.page-id-847 .rafa-lp-container{
  width:100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 24px 0 110px !important; /* sem lateral aqui (igual 578) */
}

/* top nav (layout simples com 2 badges) */
body.page-id-847 .rafa-lp-topnav{
  position: relative;   /* antes: sticky */
  top: auto;            /* antes: 12px */
  z-index: auto;        /* antes: 80 */

  margin: 0 auto 18px;
  padding: 10px 12px;
  border-radius: 18px;
  background: rgba(10,12,18,.62);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(12px);
  box-shadow: 0 22px 80px rgba(0,0,0,.45);

  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
}

/* badge */
body.page-id-847 .rafa-lp-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.90);
  font-weight: 950;
  font-size: 13px;
}

/* hero (AQUI estava a diferença de margem: agora tem padding lateral var(--padx)) */
body.page-id-847 .rafa-lp-hero{
  position: relative;
  padding: 30px var(--padx) 22px;
  overflow: hidden;
}

body.page-id-847 .rafa-lp-hero::after{
  content:"";
  position:absolute; inset:-60px -80px;
  background:
    radial-gradient(900px 560px at 22% 20%, rgba(45,212,191,.16), transparent 60%),
    radial-gradient(900px 600px at 82% 12%, rgba(212,175,55,.14), transparent 60%);
  pointer-events:none;
  opacity: .95;
}
body.page-id-847 .rafa-lp-hero > *{ position:relative; z-index:1; }

body.page-id-847 .rafa-lp-hero-grid{
  margin-top: 16px;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 22px;
  align-items: center;
}

body.page-id-847 .rafa-lp-hero-copy h1{
  margin: 0 0 10px 0;
  font-size: clamp(36px, 4.6vw, 60px);
  line-height: 1.02;
  font-weight: 1000;
  letter-spacing: -0.03em;
  color: rgba(255,255,255,.96);
  text-wrap: balance;
}

body.page-id-847 .rafa-lp-sub{
  margin: 0 0 14px 0;
  font-size: 17px;
  line-height: 1.65;
  color: rgba(255,255,255,.82);
  max-width: 62ch;
}

/* botões (centralização igual 578; + line-height p/ não “descer” o texto) */
/* botões (espelhado da LP 578) */
body.page-id-847 .rafa-lp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  background: rgba(0,0,0,.60);
  color:#fff !important;
  border: 1px solid rgba(212,175,55,.55);
  border-radius: 14px;
  padding: 14px 18px;
  font-weight: 950;

  text-decoration:none !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.55);
  transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;

  /* FIX: centro óptico do texto (o seu problema do print) */
  line-height: 1.2 !important;
  padding-top: 12px;
  padding-bottom: 14px;
}


body.page-id-847 .rafa-lp-btn:hover{
  transform: translateY(-1px);
}

/* PRIMARY (volta a cor/gradiente original) */
body.page-id-847 .rafa-lp-btn--primary{
  background: linear-gradient(135deg, rgba(45,212,191,.95), rgba(212,175,55,.35)) !important;
  border: 1px solid rgba(45,212,191,.55) !important;
  color: rgba(6,16,20,.98) !important;
  box-shadow: 0 18px 70px rgba(0,0,0,.45) !important;
}

body.page-id-847 .rafa-lp-btn--primary:hover{
  background: linear-gradient(135deg, rgba(45,212,191,1), rgba(212,175,55,.55)) !important;
  border-color: rgba(45,212,191,.75) !important;
  color: rgba(0,0,0,.92) !important;
}

/* tamanho do CTA */
body.page-id-847 .rafa-lp-btn--sm{
  padding-left: 14px;
  padding-right: 14px;
  padding-top: 10px;
  padding-bottom: 12px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.2 !important;
}
body.page-id-847 .rafa-lp-btn__label{
  display:block;
  transform: translateY(-2px);
}





/* seções (AQUI estava a diferença de margem: agora tem padding lateral var(--padx)) */
body.page-id-847 .rafa-lp-section{
  padding: 56px var(--padx);
  border-top: 1px solid rgba(255,255,255,.08);
  position: relative;
  box-sizing: border-box;
}

body.page-id-847 .rafa-lp-section::before{
  content:"";
  position:absolute;
  inset: 0;
  pointer-events:none;
  background:
    radial-gradient(900px 520px at 10% 10%, rgba(45,212,191,.06), transparent 60%),
    radial-gradient(900px 520px at 90% 15%, rgba(212,175,55,.06), transparent 60%);
  opacity: .8;
}
body.page-id-847 .rafa-lp-section > *{ position:relative; z-index:1; }

body.page-id-847 .rafa-lp-section h2{
  margin: 0 0 10px 0;
  color: rgba(255,255,255,.96);
  font-size: 30px;
  font-weight: 1000;
  letter-spacing: -0.01em;
}

body.page-id-847 .rafa-lp-grid-3{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin-top: 14px;
}

/* cards (padding e texto exatamente como na 578: não fica colado) */
body.page-id-847 .rafa-lp-feature{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 20px 70px rgba(0,0,0,.32);
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
body.page-id-847 .rafa-lp-feature:hover{
  transform: translateY(-2px);
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.05));
  border-color: rgba(45,212,191,.18);
}
body.page-id-847 .rafa-lp-feature--contrast:hover{
  border-color: rgba(212,175,55,.22);
}
body.page-id-847 .rafa-lp-feature h3{
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: 1000;
  color: rgba(255,255,255,.96);
}
body.page-id-847 .rafa-lp-feature p{
  margin: 0;
  color: rgba(255,255,255,.76);
  line-height: 1.55;
  font-size: 14px;
}

/* CTA inline (o seu bloco final com botão) */
body.page-id-847 .rafa-lp-cta-inline{
  margin-top:18px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
}
body.page-id-847 .rafa-lp-cta-inline p{
  margin:0;
  color: rgba(255,255,255,.84);
  font-weight: 900;
}

/* responsivo (igual 578: container ganha lateral no mobile) */
@media (max-width: 980px){
  body.page-id-847{ --padx: 18px; }

  body.page-id-847 .rafa-lp-container{
    padding-top: 18px !important;
    padding-bottom: 110px !important;
    padding-left: clamp(18px, 5vw, 28px) !important;
    padding-right: clamp(18px, 5vw, 28px) !important;
  }

  body.page-id-847 .rafa-lp-hero-grid{ grid-template-columns: 1fr; }
  body.page-id-847 .rafa-lp-grid-3{ grid-template-columns: 1fr; }

  body.page-id-847 .rafa-lp-cta-inline{
    flex-direction: column;
    align-items: flex-start;
  }
}
/* =========================================
   GALERIA / CARROSSEL — Page 847
========================================= */

body.page-id-847 .rafa-lp-gallery__wrap{
  background: rgba(10,12,18,.55);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  padding: 14px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(10px);
}

body.page-id-847 .rafa-lp-gallery__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 12px;
}

body.page-id-847 .rafa-lp-gallery__hint{
  color: rgba(255,255,255,.65);
  font-size: 13px;
  font-weight: 900;
}

body.page-id-847 .rafa-lp-carousel{
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(700px 300px at 30% 10%, rgba(212,175,55,.12), transparent 60%),
    radial-gradient(700px 340px at 80% 20%, rgba(45,212,191,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
}

body.page-id-847 .rafa-lp-carousel__track{
  display:flex;
  gap: 12px;
  overflow-x:auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: 12px;
  -webkit-overflow-scrolling: touch;
}

body.page-id-847 .rafa-lp-carousel__track::-webkit-scrollbar{
  display:none;
}

/* =========================================================
   CARROSSEL (PAGE 847)
   - Padrão (Fotos de palco): mantém visual “cheio” (cover)
   - Provas reais (.rafa-lp-prooffix): SEM CORTE (contain) e sem ratio fixo
========================================================= */

/* ---------- PADRÃO (Fotos de palco) ---------- */
body.page-id-847 .rafa-lp-gallery:not(.rafa-lp-prooffix) .rafa-lp-carousel__slide{
  flex: 0 0 100%;
  scroll-snap-align: start;
  margin: 0;

  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);

  aspect-ratio: 3 / 4; /* mantém o “corte bonito” no palco */
}

body.page-id-847 .rafa-lp-gallery:not(.rafa-lp-prooffix) .rafa-lp-carousel__slide img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ---------- PROVAS REAIS (SEM CORTE) ---------- */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__track{
  align-items: flex-start !important;
}

body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__slide{
  flex: 0 0 100%;
  scroll-snap-align: start;
  margin: 0;

  /* remove o “retângulo forçado” que corta */
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;

  /* visual do slide não precisa “enquadrar” */
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

/* o card é quem dá acabamento */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card{
  display: block !important;
  width: 94% !important;
  max-width: 420px !important;
  margin: 10px auto !important;

  background: #111 !important;
  border: 1px solid #222 !important;
  border-radius: 12px !important;

  overflow: hidden !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 0 !important;
}

body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card img{
  display: block !important;
  width: 100% !important;
  height: auto !important;

  max-width: 100% !important;
  max-height: none !important;

  object-fit: contain !important;
  object-position: center center !important;

  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
}

@media (min-width: 980px){
  /* Desktop: palco 2 por vez (mantém sua regra “premium”) */
  body.page-id-847 .rafa-lp-gallery:not(.rafa-lp-prooffix) .rafa-lp-carousel__slide{
    flex-basis: calc(50% - 6px);
  }
  body.page-id-847 .rafa-lp-gallery__hint{ display:none; }
}

@media (max-width: 640px){
  body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card{
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Desktop: mostra 2 por vez (fica “premium”, sem miniatura) */
@media (min-width: 980px){
  body.page-id-847 .rafa-lp-carousel__slide{ flex-basis: calc(50% - 6px); }
  body.page-id-847 .rafa-lp-gallery__hint{ display:none; }
}

/* =========================================================
   FIX DEFINITIVO — PROVAS REAIS (desktop + alinhamento vertical)
   Cole no FINAL do arquivo: /wp-content/mu-plugins/rafa-lp-consultoria.css
========================================================= */

/* Centraliza verticalmente os cards no carrossel (evita “sobrar mais em baixo”) */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__track{
  align-items: center !important;
}

/* Faz o slide virar “container flex” pra centralizar o card */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__slide{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;

  /* dá um respiro igual em cima/baixo (visual mais simétrico) */
  padding: 12px 0 !important;
}

/* Remove margem vertical do card (quem manda agora é o padding do slide) */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card{
  margin: 0 auto !important;
}

/* Desktop: volta a mostrar 2 por vez também nas “Provas reais” */
@media (min-width: 980px){
  body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__slide{
    flex-basis: calc(50% - 6px) !important;
  }
}
/* =========================================================
   PROVAS REAIS (sem corte + 2 por vez no desktop + sem “sobra” embaixo)
========================================================= */

/* remove o “retângulo fixo” do carrossel padrão */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__slide{
  flex: 0 0 100%;
  scroll-snap-align: start;
  margin: 0;

  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;

  overflow: visible !important;

  /* centraliza o card dentro do slide (corrige sobra visual embaixo) */
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 12px 0 !important;
}

/* track centraliza em altura */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__track{
  align-items: center !important;
}

/* o card define o “acabamento” */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card{
  display: block !important;
  width: 94% !important;
  max-width: 420px !important;
  margin: 0 auto !important;

  background: #111 !important;
  border: 1px solid #222 !important;
  border-radius: 12px !important;
  overflow: hidden !important;

  height: auto !important;
  min-height: 0 !important;
  line-height: 0 !important;
}

/* imagem sem corte */
body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card img{
  display: block !important;
  width: 100% !important;
  height: auto !important;

  object-fit: contain !important;
  object-position: center center !important;
}

/* desktop: 2 por vez */
@media (min-width: 980px){
  body.page-id-847 .rafa-lp-prooffix .rafa-lp-carousel__slide{
    flex-basis: calc(50% - 6px) !important;
  }
}

/* mobile: 1 por vez e full */
@media (max-width: 640px){
  body.page-id-847 .rafa-lp-prooffix .rafa-lp-prooffix-card{
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* =========================================================
   FIX DEFINITIVO — PROVAS REAIS (sem sobra embaixo)
   Fonte de verdade: mu-plugins/rafa-lp-consultoria.css
========================================================= */

body.page-id-847 section.rafa-lp-prooffix .rafa-lp-carousel__slide{
  /* mata o “retângulo fixo” que cria sobra */
  aspect-ratio: unset !important;
  height: auto !important;
  min-height: 0 !important;

  /* remove visual do slide (quem dá acabamento é o card) */
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;

  /* centraliza o card vertical/horizontalmente */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  /* tira qualquer respiro que possa “puxar” pra baixo */
  padding: 0 !important;
  margin: 0 !important;
}

body.page-id-847 section.rafa-lp-prooffix .rafa-lp-carousel__track{
  /* garante alinhamento uniforme */
  align-items: center !important;
}

body.page-id-847 section.rafa-lp-prooffix .rafa-lp-prooffix-card{
  /* remove margem que pode dar impressão de sobra */
  margin: 0 auto !important;

  display: block !important;
  width: 94% !important;
  max-width: 420px !important;

  background: #111 !important;
  border: 1px solid #222 !important;
  border-radius: 12px !important;
  overflow: hidden !important;

  height: auto !important;
  min-height: 0 !important;
  line-height: 0 !important;
}

body.page-id-847 section.rafa-lp-prooffix .rafa-lp-prooffix-card img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
}
/* Botão flutuante (somente 1 botão) — Page 847 */
body.page-id-847 .rafa-lp-floatbtn{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 14px;
  z-index: 9999;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 12px 16px;
  border-radius: 14px;
  text-decoration: none;

  /* herda estética do site sem depender de classe de botão */
  background: rgba(10,12,18,.78);
  border: 1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 60px rgba(0,0,0,.45);

  color: #fff;
  font-weight: 700;
  letter-spacing: .2px;

  width: min(520px, calc(100% - 24px));
  text-align: center;
}

body.page-id-847 .rafa-lp-container{
  padding-bottom: 110px; /* evita o botão cobrir conteúdo */
}

@media (max-width: 520px){
  body.page-id-847 .rafa-lp-floatbtn{
    bottom: 10px;
    width: calc(100% - 16px);
  }
  body.page-id-847 .rafa-lp-container{
    padding-bottom: 140px;
  }
}