/* =========================================================
   InfluenciMax LP – Identidade Visual (lp.css)
   - Paleta:
     --c-primary: #6345ED
     --c-accent:  #FF6B2B
     --c-dark:    #2D2D2D
     --c-light:   #F5F5F5
   - Tipografia:
     Títulos: Montserrat
     Corpo: Inter
========================================================= */

/* =========================================================
   TOKENS / BASE
========================================================= */
:root{
  --c-primary: #6345ED;
  --c-accent:  #FF6B2B;
  --c-dark:    #2D2D2D;
  --c-light:   #F5F5F5;

  --lp-header-h: 82px;

  --font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-title: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --radius-1: 12px;
  --radius-2: 16px;
  --radius-3: 22px;

  --shadow-1: 0 10px 30px rgba(0,0,0,.08);
  --shadow-2: 0 18px 55px rgba(0,0,0,.18);
}

html, body{ overflow-x:hidden; }
*{ box-sizing:border-box; }

.lp-page{
  background: transparent;
  color: var(--c-dark);
  font-family: var(--font-body);
}

.lp-page h1, .lp-page h2, .lp-page h3, .lp-page h4, .lp-page h5, .lp-page h6,
.imx-hero-title, .imx-section-title, .imx-feature-title, .imx-steps-title, .lp-footer-mc__title{
  font-family: var(--font-title);
}

.lp-container{
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 16px;
}

.lp-muted{ opacity:.78; }

.lp-header a,
.lp-footer a{
  color: inherit;
  text-decoration: none;
}

@media (hover:hover){
  .lp-header a:hover,
  .lp-footer a:hover{ text-decoration: underline; }
}

.lp-page{ padding-top: var(--lp-header-h); }

/* =========================================================
   HEADER
========================================================= */
.lp-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 99999;

  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border-bottom: none;

  transition: background .25s ease, backdrop-filter .25s ease, box-shadow .25s ease;
}

.lp-header__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 0;
}

/* ===== logo swap ===== */
.lp-brand{
  position: relative;
  display:flex;
  align-items:center;
  gap:10px;
  min-width: 160px;
  min-height: 34px;
  -webkit-tap-highlight-color: transparent;
}

.lp-brand .lp-logo{
  max-height: 34px;
  width: auto;
  display:block;
  transition: opacity .28s ease, transform .28s ease, filter .28s ease;
  will-change: opacity, transform;
}

.lp-brand .lp-logo--top{ opacity: 1; transform: translateY(0); }

.lp-brand .lp-logo--scroll{
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%) translateY(6px);
  opacity: 0;
  pointer-events:none;
}

body.is-scrolled .lp-brand .lp-logo--top{
  opacity: 0;
  transform: translateY(-6px);
}
body.is-scrolled .lp-brand .lp-logo--scroll{
  opacity: 1;
  transform: translateY(-50%) translateY(0);
}

/* remove hover/contorno da logo */
.lp-brand:hover,
.lp-brand:focus,
.lp-brand:focus-visible{
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
.lp-brand img,
.lp-brand:hover img{
  box-shadow:none !important;
  outline:none !important;
  border:none !important;
  filter:none !important;
}

/* Menu desktop */
.lp-nav{
  display:flex;
  align-items:center;
  gap:18px;
  font-weight: 700;
  font-size: 14px;
  opacity: .95;
}

.lp-nav a{
  padding: 8px 6px;
  border-radius: 10px;
}

@media (hover:hover){
  .lp-nav a:hover{
    background: rgba(0,0,0,.06);
    text-decoration: none;
  }
}

/* Ações */
.lp-actions{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

.lp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius: 999px;

  font-family: var(--font-title);
  font-weight: 800;
  font-size: 14px;

  border: 1px solid rgba(45,45,45,.18);
  background: transparent;
  color: var(--c-dark);

  text-decoration: none;
  white-space: nowrap;

  transition: background .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

@media (hover:hover){
  .lp-btn:hover{ background: rgba(0,0,0,.06); }
}

.lp-btn--ghost{ background: transparent; }

/* Primary (identidade) */
.lp-btn--primary{
  background: linear-gradient(135deg, var(--c-primary), #7B61FF);
  color: #fff !important;
  border-color: transparent;
  box-shadow: 0 14px 34px rgba(99,69,237,.28);
}

@media (hover:hover){
  .lp-btn--primary:hover{
    transform: translateY(-1px);
    box-shadow: 0 18px 44px rgba(99,69,237,.34);
    background-color: #f57f17;
  }
}

/* Hamburger */
.lp-hamburger{
  display:none;
  align-items:center;
  justify-content:center;
  width: 42px;
  height: 42px;
  border-radius: 12px;

  border: 1px solid rgb(0 0 0 / 20%);
  background: rgba(255,255,255,.12);
  color:#2D2D2D;

  cursor:pointer;
  font-size: 18px;
  line-height: 1;
}

/* Topo (antes do scroll): tudo branco no inner */
html body.lp-page header.lp-header .lp-header__inner,
html body.lp-page header.lp-header .lp-header__inner a,
html body.lp-page header.lp-header .lp-header__inner .lp-btn,
html body.lp-page header.lp-header .lp-hamburger{
  color:#2D2D2D;
}

/* borda botões no topo */
html body.lp-page header.lp-header .lp-header__inner .lp-btn{
  border-color: rgba(255,255,255,.35);
}

/* scroll: glass + texto escuro */
body.is-scrolled .lp-header{
  background: rgba(245,245,245,0.78);
  backdrop-filter: blur(14px) saturate(1.2);
  -webkit-backdrop-filter: blur(14px) saturate(1.2);
  box-shadow: 0 6px 20px rgba(0,0,0,.10);
}

html body.lp-page.is-scrolled header.lp-header .lp-header__inner,
html body.lp-page.is-scrolled header.lp-header .lp-header__inner a,
html body.lp-page.is-scrolled header.lp-header .lp-header__inner .lp-btn,
html body.lp-page.is-scrolled header.lp-header .lp-hamburger{
  color: var(--c-dark);
}

html body.lp-page.is-scrolled header.lp-header .lp-header__inner .lp-btn{
  border-color: rgba(45,45,45,.18);
}

/* CTA extra mobile no scroll */
.lp-btn--scrollCta{ display:none; }

/* =========================================================
   MOBILE MENU (overlay)
========================================================= */
.lp-mobile{ display:none; }

@media (max-width: 900px){
  :root{ --lp-header-h: 60px; }

  .lp-header__inner{ padding: 10px 10px; gap: 12px; }
  .lp-brand{ min-width:auto; min-height: 28px; }
  .lp-brand .lp-logo{ max-height: 28px; }

  .lp-nav{ display:none; }
  .lp-hamburger{ display:inline-flex; }

  .lp-actions{ gap: 8px; }
  .lp-actions .lp-btn--ghost{ display:none; } /* deixa só 1 CTA no topo */
  .lp-btn{ padding: 9px 12px; font-size: 13.5px; }

  /* CTA scroll */
  .lp-btn--scrollCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 9px 9px;
    font-size: 13px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--c-accent), #FF884F);
    color:#fff !important;
    border: 1px solid rgba(0,0,0,.08);
    box-shadow: 0 10px 22px rgba(0,0,0,.14);
    font-family: var(--font-title);
    font-weight: 900;
  }

  .lp-mobile{
    position: fixed;
    left:0; right:0;
    top: var(--lp-header-h);
    bottom:0;
    z-index: 99998;

    background: rgba(245,245,245,.98);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    border-top: 1px solid rgba(45,45,45,.10);
    box-shadow: 0 18px 40px rgba(0,0,0,.12);

    display:block;
    opacity:0;
    transform: translateY(-10px);
    pointer-events:none;
    max-height:0;
    overflow:hidden;

    transition: max-height .25s ease, opacity .18s ease, transform .18s ease;
  }

  .lp-mobile.is-open{
    max-height: calc(100vh - var(--lp-header-h));
    opacity:1;
    transform: translateY(0);
    pointer-events:auto;
    overflow:auto;
    -webkit-overflow-scrolling: touch;
  }

  body.lp-mobile-open{
    overflow:hidden !important;
    height:100%;
  }

  .lp-mobile__inner{
    padding: 18px 0 22px;
    display:grid;
    gap: 15px;
    justify-items:center;
  }

  /* CTAs do menu */
  .lp-mobile__cta{
    width: 170px;
    display:flex;
    justify-content:center;
    align-items:center;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    text-decoration:none !important;
    box-shadow:none !important;
    border-width:1px !important;
    font-family: var(--font-title);
    font-weight: 900;
  }

  .lp-mobile .lp-btn--primary{
    background: linear-gradient(135deg, var(--c-primary), #7B61FF);
    border-color: transparent;
    color:#fff !important;
  }

  .lp-mobile .lp-btn--ghost{
    background: transparent;
    border-color: rgba(45,45,45,.14);
    color: var(--c-dark);
  }

  .lp-mobile__inner::after{
    content:"";
    height:1px;
    width: 100%;
    max-width: 520px;
    background: rgba(45,45,45,.10);
    margin: 6px 0 8px;
    border-radius: 999px;
  }

  /* Links */
  .lp-mobile .opcao-menu-mobile{
    display:block;
    width:100%;
    max-width: 520px;
    padding: 14px 6px;
    font-weight: 900;
    color: var(--c-dark);
    text-decoration:none;
    border-bottom: 1px solid rgba(45,45,45,.10);
    font-family: var(--font-title);
  }
  .lp-mobile .opcao-menu-mobile:last-of-type{ border-bottom:none; }
  .lp-mobile .opcao-menu-mobile:active{ opacity:.75; }

  /* header branco quando menu aberto */
  body.lp-mobile-open .lp-header{
    background: rgba(245,245,245,1);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    box-shadow: 0 6px 20px rgba(0,0,0,.10);
  }
  body.lp-mobile-open .lp-header .lp-header__inner,
  body.lp-mobile-open .lp-header .lp-header__inner a,
  body.lp-mobile-open .lp-header .lp-header__inner .lp-btn,
  body.lp-mobile-open .lp-header .lp-hamburger{
    color: var(--c-dark);
  }
  body.lp-mobile-open .lp-header .lp-btn{ border-color: rgba(45,45,45,.18); }

  body.lp-mobile-open .lp-hamburger{
    color: var(--c-dark);
    border-color: rgba(45,45,45,.25);
    background: rgba(45,45,45,.04);
  }
}

/* Mobile pequeno */
@media (max-width: 420px){
  .lp-actions .lp-btn--primary{ padding: 9px 11px; font-size: 13px; }
  .lp-hamburger{ width: 40px; height: 40px; }
}

/* =========================================================
   FOOTER (ManyChat style, com identidade nova)
========================================================= */
.lp-footer-mc{
  margin-top: 0;
  background: #121212;
  color:#fff;
}

.lp-footer-mc__wrap{
  padding: 120px 16px 40px;
  text-align:center;
}

.lp-footer-mc__title{
  margin:0;
  color:#fff;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.02;
  font-size: clamp(34px, 5.4vw, 62px);
}

.lp-footer-mc__subtitle{
  margin: 18px auto 0;
  max-width: 880px;
  font-size: clamp(16px, 2.2vw, 21px);
  line-height: 1.55;
  color: rgba(255,255,255,.86);
}

.lp-footer-mc__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top: 26px;
  padding: 14px 22px;
  border-radius: 999px;

  font-family: var(--font-title);
  font-weight: 900;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;

  background: linear-gradient(135deg, var(--c-accent), #FF884F);
  color: white !important;
  text-decoration: none !important;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 44px rgba(255,107,43,.22);

  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

@media (hover:hover){
  .lp-footer-mc__btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 24px 60px rgba(255,107,43,.30);
    opacity: .98;
    text-decoration: none !important;
  }
}

.lp-footer-mc__bottom{
  margin-top: 60px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
  display:block;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  font-size: 13px;
  opacity: .92;
}

.lp-footer-mc__copy{ white-space:nowrap; }

.lp-footer-mc__links{
  display:flex;
  align-items:center;
  gap: 22px;
  margin: 15px;
  flex-wrap: wrap;
  justify-content:center;
}

.lp-footer-mc__links a{
  color: rgba(255,255,255,.92);
  text-decoration: underline;
  text-underline-offset: 4px;
}

@media (max-width: 700px){
  .lp-footer-mc__wrap{ padding: 70px 16px 22px; }
  .lp-footer-mc__bottom{ justify-content:center; text-align:center; }
  .lp-footer-mc__copy{ white-space: normal; }
}

/* WhatsApp floating */
.atendimento-icon{
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  z-index: 9999;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease;
}

@media (hover:hover){
  .atendimento-icon:hover{
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(0,0,0,.22);
  }
}

.atendimento-icon svg{ display:block; }

/* =========================================================
   LP HOME (tudo que estava na <style> da página)
========================================================= */
.imx-page{
  font-family: var(--font-body);
  color: var(--c-dark);
  background: var(--c-light);
  word-break: break-word;
}
.imx-page *{ box-sizing:border-box; }

img:not(.imx-hero-bgimg), iframe, video{ max-width:100%; height:auto; }

.imx-section{
  width:100%;
  padding:80px 16px;
  background:#FFFFFF;
  border:none;
}
.imx-container{ max-width:1320px; margin:0 auto; }
.imx-page-bottom-space{ height:40px; }

/* HERO (desktop) */
.imx-section.imx-hero{
  position: relative;
  overflow: hidden;
  min-height: 680px;

  /* fundo base */
  background: white;
  /* radial-gradient(circle at 12% 15%, rgba(99,69,237,.22), transparent 45%),
  radial-gradient(circle at 88% 20%, rgba(255,107,43,.18), transparent 48%),
  linear-gradient(180deg, #1b1b1b 0%, #111 55%, #0d0d0d 100%); */

  margin-top: calc(var(--lp-header-h) * -1);
  padding-top: calc(80px + var(--lp-header-h));
}

.imx-section.imx-hero > .imx-hero-bgimg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
  max-width:none;
  display:block;
  opacity: .55;
  filter: saturate(1.05) contrast(1.05);
}

.imx-section.imx-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;

  background: white;
    /* linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.45) 60%, rgba(0,0,0,.55) 100%),
    radial-gradient(circle at top left, rgba(99,69,237,.22) 0, transparent 40%),
    radial-gradient(circle at bottom right, rgba(255,107,43,.18) 0, transparent 45%); */
}

.imx-section.imx-hero > .imx-container{
  position:relative;
  z-index:2;
}

.imx-hero-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap:48px;
  align-items:center;
}

.imx-hero-grid > div:first-child{ padding-top: 6px; }

/* badge / tags */
.imx-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(245,245,245,.92);
  border: 1px solid rgba(255,255,255,.16);
  font-size: 12px;
  color: #2D2D2D;
  margin-bottom: 16px;
}

.imx-badge span{ font-weight: 700; color: #6345ED; }

.imx-hero-title{
  font-size: 46px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.03em;
  margin: 0 0 16px;
  color: black;
}

.imx-hero-subtitle{
  font-size: 18px;
  line-height: 1.65;
  color: #2D2D2D;
  margin: 0 0 24px;
}

/* CTA buttons */
.imx-hero-cta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:16px;
}

.imx-btn-primary,
.imx-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 24px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 800;
  cursor:pointer;
  text-decoration:none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  border: 1px solid transparent;
  font-family: var(--font-title);
}

.imx-btn-primary{
  background: linear-gradient(135deg, #ff6b2b, #6345ed);
  color:white;
  box-shadow: 0 18px 40px rgba(255,107,43,.22);
}
@media (hover:hover){
  .imx-btn-primary:hover{
    transform: translateY(-1px);
    box-shadow: 0 22px 50px rgba(255,107,43,.30);
  }
}

.imx-btn-secondary{
  background: transparent;
  color: #fff;
  border-color: rgba(255,255,255,.22);
}
@media (hover:hover){
  .imx-btn-secondary:hover{
    background: rgba(255,255,255,.08);
  }
}

/* hero meta */
.imx-hero-meta{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  font-size: 13px;
  color: rgba(255,255,255,.72);
  margin-top: 4px;
}
.imx-hero-meta strong{ color: rgba(255,255,255,.92); }

.imx-hero-right{
  position:relative;
  display:flex;
  justify-content:center;
}

.imx-hero-tagmeta-preto{ display:block; }

/* TRUST (desktop) */
.imx-trust{ padding-top: 80px; padding-bottom: 40px; background: #fff; }
.imx-trust-inner{
  border-radius: var(--radius-2);
  border: 1px solid rgba(45,45,45,.12);
  background: radial-gradient(circle at top left, rgba(99,69,237,.08) 0, transparent 55%), #fff;
  padding: 16px 20px;
  display:flex;
  flex-wrap:wrap;
  gap: 12px 24px;
  justify-content:space-between;
  align-items:center;
  box-shadow: var(--shadow-1);
}

.imx-trust-rating{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size: 13px;
  color: rgba(45,45,45,.85);
}
.imx-stars{ color: #F2C94C; font-size: 14px; }
.imx-trust-logos{
  display:flex;
  flex-wrap:wrap;
  gap: 14px;
  font-size: 12px;
  color: rgba(45,45,45,.55);
}

/* SEÇÕES */
.imx-target{ padding-top: 40px; padding-bottom: 80px; background: var(--c-light); }

.imx-section-title{
  font-size: 38px;
  font-weight: 900;
  text-align:center;
  margin: 0 0 12px;
  color: var(--c-dark);
}
.imx-section-subtitle{
  font-size: 18px;
  color: rgba(45,45,45,.72);
  text-align:center;
  max-width: 640px;
  margin: 0 auto 32px;
}

.imx-cards{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:20px;
}
.imx-card{
  border-radius: 18px;
  padding: 20px 18px 22px;
  background:#fff;
  border: 1px solid rgba(45,45,45,.10);
  box-shadow: var(--shadow-1);
  text-align:center;
}

/* ===========================
   REVIEWS - PathSocial (Opção A)
=========================== */
.imx-reviews.imx-ps{ position:relative; padding-top:40px; padding-bottom:80px; padding-right: 0px; padding-left: 0px;}

.imx-ps-wrap{
  position:relative;
  margin-top:22px;
  padding:36px 18px;
  background:transparent;
  overflow:visible;
}

.imx-ps-wrap::before{
  content:"";
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(1560px,140vw);
  height:380px;
  background:#0B1220;
  border-radius:26px;
  box-shadow:0 24px 70px rgba(15,23,42,.18);
  z-index:0;
}

/* garante elementos na frente da faixa */
.imx-ps-cards,
.imx-ps-dots{
  position:relative;
  z-index:2;
}

.imx-ps-cards{
  display:flex;
  justify-content:center;
  gap:18px;
  align-items:center;
  flex-wrap:wrap;
}

.imx-ps-card{
  position:relative;
  flex:0 0 auto;
  width:250px;
  height:450px;
  border-radius:20px;
  overflow:hidden;
  background:#111827;
  border:4px solid rgba(255,255,255,.12);
  cursor:pointer;
  padding:0;
}

.imx-ps-thumb{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.05) contrast(1.03);
}

/* Thumb padrão (placeholder) — SÓ ACRESCENTAR */
.imx-ps-thumb--placeholder{
  position:relative;
  overflow:hidden;
}

/* fundo estilo “frame” */
.imx-ps-thumb--placeholder .imx-ps-thumb-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 15%, rgba(255,255,255,.12), transparent 45%),
    radial-gradient(circle at 80% 35%, rgba(255,255,255,.10), transparent 50%),
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(0,0,0,0)),
    #0B1220;
}

/* linhas/grade sutil pra parecer “interface” */
.imx-ps-thumb--placeholder .imx-ps-thumb-lines{
  position:absolute;
  inset:-40px;
  background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 100% 22px;
  transform: rotate(-6deg);
  opacity:.55;
}

.imx-ps-meta{
  position:absolute;
  top:12px; left:12px; right:12px;
  z-index:2;
  color:#fff;
  text-align:left;
  text-shadow:0 10px 35px rgba(0,0,0,.55);
  display:grid;
  gap:2px;
}
.imx-ps-name{ font-weight:900; font-size:13px; }
.imx-ps-role{ font-weight:700; font-size:12px; opacity:.9; }

.imx-ps-badge{
  justify-self:end;
  margin-top:6px;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(10px);
}

.imx-ps-play{
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
}
.imx-ps-play::before{
  content:"";
  width:74px;
  height:74px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.imx-ps-play::after{
  content:"";
  position:absolute;
  margin-left:4px;
  width:0;height:0;
  border-left:16px solid rgba(0,0,0,.75);
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
}

.imx-ps-card--orange{ border-color:#ff6b2b; }
.imx-ps-card--red{ border-color:#ff6b6b; }
.imx-ps-card--yellow{ border-color:#ffd166; }
.imx-ps-card--pink{ border-color:#ff4ecd; }

.imx-ps-dots{
  position:absolute;
  left:38px;
  bottom:30px;
  width:110px;
  height:110px;
  opacity:.22;
  background-image:radial-gradient(#fff 1.2px, transparent 1.2px);
  background-size:12px 12px;
  border-radius:22px;
}

/* Modal */
.imx-ps-modal{ display:none; position:fixed; inset:0; z-index:99999; }
.imx-ps-modal.is-open{ display:block; }
.imx-ps-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.65); }

.imx-ps-panel{
  position:relative;
  width:min(980px,92vw);
  margin:7vh auto 0;
  background:#0B1220;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.12);
}

.imx-ps-close{
  position:absolute;
  top:10px;
  right:12px;
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:22px;
  cursor:pointer;
  z-index:2;
}

.imx-ps-frame{ aspect-ratio:16/9; }
.imx-ps-frame iframe{ width:100%; height:100%; border:0; display:block; }

/* ===========================
   REVIEWS – CARROSSEL (setas + swipe)
=========================== */
.imx-ps-carousel{
  position:relative;
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
  gap:12px;
  margin-top:18px;
}

.imx-ps-viewport{ overflow:hidden; width:100%; }

.imx-ps-track{
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-behavior:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:6px 2px;
}
.imx-ps-track::-webkit-scrollbar{ display:none; }

.imx-ps-nav{
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  color:#fff;
  font-size:28px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.imx-ps-nav:disabled{ opacity:.35; cursor:default; }

/* Inline video dentro do card (estilo PathSocial) */
.imx-ps-card{ position:relative; }

.imx-ps-inline{
  position:absolute;
  inset:0;
  display:none;
  z-index:3;
  background:#111827;
}

.imx-ps-card.is-playing .imx-ps-inline{ display:block; }
.imx-ps-card.is-playing .imx-ps-thumb{ opacity:0; }
.imx-ps-card.is-playing .imx-ps-play{ opacity:0; }

.imx-ps-inline video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.imx-ps-play{ pointer-events:none; }

.imx-card-tag{
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius: 999px;
  margin: 0 auto 14px;
  font-size: 22px;
  line-height:1;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  color:#fff;
  box-shadow: 0 4px 15px var(--c-primary);
  background: linear-gradient(135deg, white);
}

.imx-card-title{
  font-size: 18px;
  font-weight: 800;
  margin: 0 0 8px;
  color: var(--c-dark);
  font-family: var(--font-title);
}

.imx-card-text{
  font-size: 14px;
  color: rgba(45,45,45,.70);
  line-height: 1.6;
  margin: 0 auto;
}

/* FEATURES */
.imx-features{ padding-top: 40px; padding-bottom: 80px; }

.imx-feature-row{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:48px;
  align-items:center;
  padding: 58px 0;
}

.imx-feature-row--reverse .imx-feature-media{ order:2; }
.imx-feature-row--reverse .imx-feature-content{ order:1; }

.imx-feature-media{
  border-radius: 24px;
  background: #E9E9E9;
  overflow:hidden;
  box-shadow: var(--shadow-2);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}

.imx-feature-img,
.imx-feature-video{
  width:100%;
  height:100%;
  display:block;
  object-fit: cover;
  border-radius: 24px;
  background:#E9E9E9;
}

.imx-feature-content{
  font-size: 14px;
  color: rgba(45,45,45,.70);
  padding: 12px 72px;
}

.imx-feature-kicker{
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--c-primary);
  margin: 0 0 12px;
  font-family: var(--font-title);
}

.imx-feature-title{
  font-size: 38px;
  font-weight: 900;
  color: var(--c-dark);
  margin: 0 0 14px;
  max-width: 520px;
}

.imx-feature-text{
  font-size: 20px;
  color: rgba(45,45,45,.72);
  line-height: 1.6;
  margin: 0;
  max-width: 540px;
}

/* STEPS */
.imx-steps{ padding-top: 100px; padding-bottom: 100px; background: var(--c-light); }

.imx-steps-title{
  font-size: 34px;
  font-weight: 900;
  letter-spacing: -0.03em;
  text-align:center;
  color: var(--c-dark);
  margin: 0 0 12px;
}

.imx-steps-subtitle{
  font-size: 15px;
  color: rgba(45,45,45,.70);
  text-align:center;
  max-width: 720px;
  margin: 0 auto 36px;
}

.imx-steps-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:20px;
}

.imx-step-card{
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(45,45,45,.10);
  padding: 24px 22px 20px;
  box-shadow: var(--shadow-1);
  overflow:hidden;
}

.imx-step-top{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.imx-step-label{
  font-size: 18px;
  font-weight: 900;
  color: var(--c-dark);
  font-family: var(--font-title);
}

.imx-step-icon{
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 26px;
  color:#fff;
  box-shadow: 4px 4px 14px var(--c-primary);
  background: linear-gradient(135deg, white);
}

.imx-step-divider{ height:1px; background: rgba(45,45,45,.12); margin: 14px 0; }
.imx-step-text{ font-size: 14px; line-height: 1.7; color: rgba(45,45,45,.75); margin: 0; }
.imx-steps-cta{ display:flex; justify-content:center; margin-top: 28px; }

/* FAQ */
.imx-faq{ padding-top: 100px; padding-bottom: 100px; background:#fff; }
.imx-faq-grid{ max-width: 800px; margin: 32px auto 0; }
.imx-faq-item{ border-bottom: 1px solid rgba(45,45,45,.14); }

.imx-faq-btn{
  width:100%;
  padding: 14px 0;
  text-align:left;
  background: transparent;
  color: var(--c-dark);
  border:none;
  font-size: 15px;
  font-weight: 600;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  font-family: var(--font-body);
}

.imx-faq-icon{ font-size: 18px; color: rgba(45,45,45,.45); }

.imx-faq-content{
  max-height: 0;
  overflow:hidden;
  transition: max-height .2s ease-out;
}
.imx-faq-content-inner{
  padding-bottom: 12px;
  font-size: 14px;
  color: rgba(45,45,45,.72);
}

/* CTA FINAL */
.imx-final-cta{
  padding-top: 100px;
  padding-bottom: 100px;
  background:
    radial-gradient(circle at center, rgba(99,69,237,.14) 0, transparent 55%),
    radial-gradient(circle at 70% 20%, rgba(255,107,43,.10) 0, transparent 45%),
    var(--c-light);
}

.imx-final-box{
  text-align:center;
  border-radius: var(--radius-3);
  border: 1px solid rgba(45,45,45,.10);
  padding: 40px 24px 36px;
  background:#fff;
  box-shadow: var(--shadow-1);
}

.imx-final-title{
  font-size: 28px;
  font-weight: 900;
  margin: 0 0 10px;
  color: var(--c-dark);
}
.imx-final-text{
  font-size: 15px;
  color: rgba(45,45,45,.72);
  margin: 0 0 24px;
}

/* hover lift (somente desktop) */
@media (hover:hover){
  .imx-card,
  .imx-step-card{
    transition: transform .25s ease, box-shadow .25s ease;
    will-change: transform;
  }
  .imx-card:hover,
  .imx-step-card:hover{
    transform: translateY(-8px);
    box-shadow: 0 25px 60px rgba(0,0,0,.18);
  }
}

/* =========================================================
   RESPONSIVO (sem “gambiarras” de translateY)
========================================================= */
@media (max-width: 1024px){
  .imx-section{ padding: 64px 16px; }
  .imx-container{ max-width: 960px; }

  .imx-section-title{ font-size: clamp(26px, 3.3vw, 34px); padding: 0 16px; }
  .imx-section-subtitle{ font-size: clamp(14px, 2vw, 17px); padding: 0 16px; }
}

@media (max-width: 768px){
  .imx-section.imx-hero > .imx-hero-bgimg{ display:none !important; }

  .imx-section.imx-hero{
    min-height: auto;
    margin-top: calc(var(--lp-header-h) * -1);
    padding-top: var(--lp-header-h);
    padding-bottom: 56px;

    background:
      radial-gradient(520px 520px at 100% 0%, rgba(255,107,43,.22), transparent 65%),
      radial-gradient(700px 520px at 10% 12%, rgba(99,69,237,.22), transparent 60%),
      linear-gradient(180deg, #ffffff 0%, var(--c-light) 55%, #ffffff 100%);
  }

  .imx-hero-title,
  .imx-hero-subtitle{
    color: var(--c-dark) !important;
    text-shadow: none !important;
  }

  .imx-badge{
    background: #fff !important;
    color: rgba(45,45,45,.75);
    border: 1px solid rgba(45,45,45,.10);
  }
  .imx-badge span{ color: var(--c-primary); }

  .imx-hero-grid{
    grid-template-columns: 1fr;
    gap: 22px;
    align-items: start;
  }

  .imx-hero-title{
    font-size: clamp(22px, 6.2vw, 30px);
    line-height: 1.08;
    margin: 0 0 12px;
  }

  .imx-hero-subtitle{
    font-size: clamp(14px, 3.6vw, 16px);
    line-height: 1.55;
    margin: 0 0 18px;
    color: rgba(45,45,45,.78) !important;
  }

  .imx-btn-primary,
  .imx-btn-secondary{
    width:100%;
    min-height: 46px;
    padding: 12px 18px;
    font-size: 15px;
  }

  .imx-btn-secondary{
    color: var(--c-dark);
    border-color: rgba(45,45,45,.14);
  }
  .imx-btn-secondary:hover{ background: rgba(0,0,0,.04); }

  .imx-trust{ padding-top: 40px; padding-bottom: 28px; }

  .imx-target{ padding-top: 44px; padding-bottom: 64px; }
  .imx-cards{ grid-template-columns: 1fr; gap: 14px; }
  .imx-card{ text-align:left; padding: 18px 16px 18px; }

  .imx-features{ padding-top: 0px; padding-bottom: 64px; }
  .imx-feature-row{ grid-template-columns: 1fr; gap: 16px; padding: 34px 0; }
  .imx-feature-row--reverse .imx-feature-media{ order: 1; }
  .imx-feature-row--reverse .imx-feature-content{ order: 2; }

  .imx-feature-content{ padding: 6px 0; }
  .imx-feature-title{ font-size: clamp(22px, 6vw, 30px); margin-bottom: 10px; max-width:none; }
  .imx-feature-text{ font-size: 15px; line-height: 1.65; max-width:none; }

  .imx-steps{ padding-top: 64px; padding-bottom: 64px; }
  .imx-steps-grid{ grid-template-columns: 1fr; gap: 14px; }
  .imx-step-card{ padding: 18px 16px 16px; }

  .imx-faq{ padding-top: 64px; padding-bottom: 64px; }
  .imx-faq-btn{ font-size: 15px; padding: 14px 0; gap: 10px; }
  .imx-faq-content-inner{ font-size: 14px; line-height: 1.65; }

  .imx-final-cta{ padding-top: 64px; padding-bottom: 64px; }
  .imx-final-box{ padding: 26px 16px 22px; border-radius: 18px; }
  .imx-final-title{ font-size: clamp(22px, 6vw, 28px); }
  .imx-final-text{ font-size: 14px; line-height: 1.6; }

  /* evita lift no mobile */
  .imx-card:hover,
  .imx-step-card:hover{
    transform:none;
    box-shadow: var(--shadow-1);
  }
}

@media (max-width: 390px){
  .lp-footer-mc__title{ font-size: 34px; line-height: 1.06; }
}

/* =========================================================
   TRUST BAR — MOBILE REBUILD (NÃO MEXE NO DESKTOP)
========================================================= */
.imx-trustMobile{ display: none; }

@media (max-width: 980px){
  .imx-trust{ display: none; }

  .imx-trustMobile{
    display: block;
    padding: 30px 12px 10px;
    background-color: white;
  }

  .imx-trustMobile__card{
    border-radius: 18px;
    border: 1px solid rgba(148,163,184,.35);
    padding: 10px 10px;
  }

  .imx-trustMobile__top{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 5px;
    align-items: start;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(15,23,42,.08);
    margin-bottom: 12px;
  }

  .imx-trustMobile__stars{
    font-size: 9px;
    line-height: 1;
    letter-spacing: 1px;
    color: #FACC15;
    padding-top: 2px;
    white-space: nowrap;
  }

  .imx-trustMobile__headline{
    font-size: 11px;
    line-height: 1.35;
    color: #0F172A;
  }

  .imx-trustMobile__headline strong{
    font-weight: 700;
  }

  .imx-trustMobile__items{
    display: grid;
    gap: 10px;
  }

  .imx-trustMobile__item{
    display: grid;
    grid-template-columns: 10px 1fr;
    gap: 10px;
    align-items: start;
    font-size: 10px;
    line-height: 1.4;
    color: rgba(15,23,42,.78);
  }

  .imx-trustMobile__dot{
    width: 8px;
    height: 8px;
    border-radius: 99px;
    margin-top: 6px;
    background: rgba(37,99,235,.35);
    box-shadow: 0 0 0 4px rgba(37,99,235,.10);
  }

  .imx-hero-tagmeta-preto{ display: block; }
  .imx-hero-tagmeta-branco{ display: none; }
}

@media (max-width: 420px){
  .imx-trustMobile{ padding: 12px 14px 16px; }
  .imx-trustMobile__card{ padding: 12px 12px; border-radius: 16px; }
  .imx-trustMobile__headline{ font-size: 11px; }
  .imx-trustMobile__item{ font-size: 10px; }
}

/* MOBILE */
@media (max-width: 768px){
  .imx-ps-wrap{ padding: 26px 0px; }
  .imx-ps-wrap::before{
    width: min(1200px, 96vw);
    height: 320px;
    border-radius: 22px;
  }

  .imx-ps-carousel{ grid-template-columns: 1fr; }
  .imx-ps-nav{ display:none; }

  .imx-ps-viewport{ overflow: hidden; position: relative; }

  .imx-ps-track{
    display:flex;
    gap: 14px;
    padding: 10px 18px 14px 10px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: auto;
    scroll-padding: 0 16px;
  }

  .imx-ps-card{
    width: 62vw;
    max-width: 260px;
    height: 410px;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    transform: scale(.92);
    opacity: .78;
    transition: transform .22s ease, opacity .22s ease;
  }

  .imx-ps-card.is-active{
    transform: scale(1);
    opacity: 1;
  }

  .imx-ps-viewport::after{
    content:"";
    position:absolute;
    top:0; right:0;
    width: 64px;
    height: 100%;
    pointer-events:none;
    border-radius: 18px;
  }

  .imx-ps-dots{
    left: 14px;
    bottom: 20px;
    width: 90px;
    height: 90px;
  }
}

/* =========================================================
   PRICING PAGE (V3) — MIGRADO DO INLINE
   - Escopado em .imx-pricingV3 pra não quebrar a Home
========================================================= */

/* Wrapper */
.imx-pricingV3{
  padding: 20px 16px;
}
.imx-pricingV3__wrap{
  max-width: 1240px;
  margin: 0 auto;
}

/* HERO full-bleed (sem scroll lateral) */
.imx-pricingHero{
  position: relative;
  overflow: hidden;

  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  /* margin-top: calc(var(--lp-header-h) * -1); */
  /* padding-top: calc(var(--lp-header-h) + 54px); */
  padding-bottom: 54px;

  /* background: #F4F8FF; */
}

.imx-pricingHero__bgimg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
  display: none;
  max-width: none;
  pointer-events: none;
}

.imx-pricingHero__overlay{
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;

  /* background:
    linear-gradient(180deg,
      rgba(244,248,255,.12) 0%,
      rgba(244,248,255,.28) 55%,
      rgba(244,248,255,.45) 100%
    ),
    radial-gradient(circle at top left, rgba(29,78,216,.16) 0, transparent 40%),
    radial-gradient(circle at bottom right, rgba(124,58,237,.16) 0, transparent 40%); */
}

.imx-pricingHero__inner{
  position: relative;
  z-index: 2;

  text-align: center;
  padding: 0 16px;
  max-width: 1240px;
  margin: 0 auto 24px;
}

.imx-pricingHero__title{
  margin: 0;
  color: #2D2D2D;
  font-size: 46px;
  line-height: 1.08;
  letter-spacing: -0.6px;
  font-weight: 900;
  text-shadow: 0 10px 28px rgba(0,0,0,.25);
}

.imx-pricingHero__subtitle{
  margin: 14px auto 0;
  color: rgba(255,255,255,.92);
  font-size: 18px;
  line-height: 1.65;
  max-width: 860px;
}

/* “tapete” do bloco de planos dentro do hero */
.imx-pricingHero .imx-plansV3{
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: 18px auto 0;
  padding: 14px;
  border-radius: 22px;
}

/* =========================
   PLANS V3
========================= */
.imx-plansV3__track{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  align-items: stretch;
  margin-top: 26px;
}

.imx-planCard{
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.12);
  overflow: hidden;
  position: relative;
  background: #fff;
  transform: translateY(0);
  transition: transform .18s ease, box-shadow .18s ease;
}
.imx-planCard:hover{
  transform: translateY(-6px);
  box-shadow: 0 24px 46px rgba(0,0,0,.14);
}
.imx-planCard:active,
.imx-planCard:focus-within{
  transform: translateY(-4px);
  box-shadow: 0 22px 42px rgba(0,0,0,.14);
}

.imx-planCard__top{
  padding: 26px 22px;
  text-align: center;
  position: relative;
}

.imx-planCard__name{
  font-weight: 900;
  letter-spacing: 1px;
  margin: 2px 0 10px;
  font-size: 26px;
}

.imx-planCard--pro .imx-planCard__name,
.imx-planCard--expert .imx-planCard__name{
  color: #fff;
}

.imx-planCard__pitch{
  margin: 0 auto 14px;
  max-width: 360px;
  font-size: 15.5px;
  line-height: 1.55;
  opacity: .92;
}

.imx-planCard__priceRow{
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  margin: 12px 0 16px;
}
.imx-planCard__priceBig{
  font-size: 64px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -1px;
}
.imx-planCard__priceUnit{
  font-size: 16px;
  opacity: .9;
  padding-bottom: 10px;
}

.imx-planCard__cta{
  display: inline-flex;
  align-items:center;
  justify-content:center;
  width: 100%;
  max-width: 340px;
  padding: 14px 16px;
  border-radius: 14px;
  text-decoration: none;
  font-weight: 900;
  font-size: 16px;
  transition: transform .15s ease, opacity .15s ease;
}
.imx-planCard__cta:hover{ transform: translateY(-1px); opacity: .96; }

.imx-planCard__micro{
  margin: 12px 0 0;
  font-size: 14px;
  opacity: .85;
}

.imx-planCard__body{
  padding: 18px 18px 20px;
  background: rgba(255,255,255,.92);
}

.imx-planCard__sectionTitle{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 900;
  font-size: 14px;
  opacity: .92;
  margin: 0 0 10px;
}

.imx-miniList{
  margin: 0;
  padding-left: 18px;
  line-height: 1.75;
  font-size: 15.5px;
  opacity: .95;
}
.imx-miniList li{ margin-bottom: 6px; }
.imx-miniList em{ opacity: .75; font-style: normal; }

.imx-featureList{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
  font-size: 15.5px;
  line-height: 1.55;
  opacity: .96;
}
.imx-featureList li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
}

.imx-ico{ display:inline-flex; line-height:1; }
.ok{ color: #16a34a; margin-top: 1px; }
.no{ color: #ef4444; margin-top: 1px; }
.soon{ opacity: .85; margin-top: 1px; }

.imx-planCard__note{
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.03);
  font-size: 15px;
  line-height: 1.6;
  opacity: .92;
}
.imx-planCard__note--violet{
  border-color: rgba(139,92,246,.35);
  background: rgba(139,92,246,.10);
}

/* TAG */
.imx-planCard__tag{
  position: absolute;
  top: 14px;
  right: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .25px;
  color: #fff;

  box-shadow:
    0 10px 22px rgba(0,0,0,.18),
    0 0 0 1px rgba(255,255,255,.12) inset;
  backdrop-filter: blur(10px);
}

.imx-planCard__tag--green{
  background: linear-gradient(135deg, rgba(34,197,94,1) 0%, rgba(16,185,129,1) 100%);
  box-shadow:
    0 12px 26px rgba(16,185,129,.35),
    0 0 0 1px rgba(255,255,255,.18) inset;
}

.imx-planCard__tag--violet{
  background: linear-gradient(135deg, rgba(168,85,247,1) 0%, rgba(99,102,241,1) 100%);
  box-shadow:
    0 12px 26px rgba(99,102,241,.35),
    0 0 0 1px rgba(255,255,255,.18) inset;
}

.imx-planCard__tag--green::before,
.imx-planCard__tag--violet::before{
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: 999px;
  filter: blur(14px);
  opacity: .55;
  z-index: -1;
}

.imx-planCard__tag--green::before{
  background: radial-gradient(circle at 30% 30%, rgba(34,197,94,.75), rgba(16,185,129,0));
}

.imx-planCard__tag--violet::before{
  background: radial-gradient(circle at 30% 30%, rgba(168,85,247,.75), rgba(99,102,241,0));
}

/* Plan colors */
.imx-planCard--free .imx-planCard__top{
  background: #eef2f3;
  color: #0a0a0a;
}
.imx-planCard--free .imx-planCard__cta--free{
  background: #ffffff;
  color: #0a0a0a;
  border: 1px solid rgba(0,0,0,.14);
}

.imx-planCard--pro .imx-planCard__top{
  background: #0b6b3a;
  color: #ffffff;
}
.imx-planCard--pro .imx-planCard__cta--pro{
  background: #ffffff;
  color: #0b6b3a;
}

.imx-planCard--expert .imx-planCard__top{
  background: linear-gradient(135deg, #6d28d9 0%, #4c1d95 100%);
  color: #ffffff;
}
.imx-planCard--expert .imx-planCard__cta--expert{
  background: #ffffff;
  color: #000000;
  border: 1px solid rgba(0,0,0,.12);
  box-shadow: 0 6px 16px rgba(0,0,0,.12);
}
.imx-planCard--expert .imx-planCard__cta--expert:hover{
  background: #f4f4f5;
  transform: translateY(-1px);
}

/* Dots (mobile only) */
.imx-carouselDots{
  display: none;
  justify-content: center;
  gap: 10px;
  margin-top: 14px;
}
.imx-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.25);
  background: rgba(0,0,0,.12);
  cursor: pointer;
}
.imx-dot.is-active{
  background: rgba(0,0,0,.55);
  border-color: rgba(0,0,0,.55);
}

/* Divider */
.imx-divider{
  max-width: 1240px;
  margin: 42px auto;
  height: 1px;
  background: rgba(15, 23, 42, .10);
}

/* TRUST “na página de preços” (só ajuste leve) */
.imx-pricingV3 .imx-trust{ padding-top: 0; padding-bottom: 40px; }
.imx-pricingV3 .imx-trust-inner{
  border-radius:14px;
  border:1px solid rgba(148,163,184,.40);
  background:radial-gradient(circle at top left, rgba(37,99,235,.10) 0, transparent 55%), #fff;
  position: relative;
  transform: translateY(20px);
}

/* FAQ V3 (página de preços) */
.imx-faqV3{
  padding-top: 40px;
  padding-bottom: 80px;
}
.imx-faqV3__title{
  font-size: 28px;
  font-weight: 800;
  text-align: center;
  margin: 0;
  color: #0F172A;
  letter-spacing: -0.2px;
}
.imx-faqV3__items{
  max-width: 800px;
  margin: 32px auto 0;
}
.imx-faqV3 details{
  border-bottom: 1px solid rgba(148,163,184,.70);
  padding: 0;
}
.imx-faqV3 summary{
  list-style: none;
  width: 100%;
  padding: 14px 0;
  text-align: left;
  background: transparent;
  color: #111827;
  border: none;
  font-size: 15px;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  outline: none;
}
.imx-faqV3 summary::-webkit-details-marker{ display: none; }
.imx-faqV3 summary::after{
  content: "+";
  font-size: 18px;
  color: #9CA3AF;
  margin-left: 16px;
  flex: 0 0 auto;
}
.imx-faqV3 details[open] summary::after{ content: "–"; }
.imx-faqV3 p{
  margin: 0;
  padding-bottom: 12px;
  font-size: 14px;
  color: #4B5563;
  line-height: 1.6;
}
.imx-faqV3 details > *:not(summary){ padding-top: 2px; }

/* Compact mode (reduz altura dos cards) */
.imx-planCard__top{ padding: 18px 18px; }
.imx-planCard__name{ font-size: 22px; margin: 2px 0 8px; }
.imx-planCard__pitch{ font-size: 14.5px; margin: 0 auto 10px; }
.imx-planCard__priceRow{ margin: 10px 0 12px; }
.imx-planCard__priceBig{ font-size: 52px; }
.imx-planCard__priceUnit{ font-size: 14px; padding-bottom: 8px; }
.imx-planCard__cta{ padding: 12px 14px; font-size: 15px; border-radius: 12px; }
.imx-planCard__micro{ margin: 10px 0 0; font-size: 13px; }
.imx-planCard__body{ padding: 14px 16px 16px; }
.imx-planCard__sectionTitle{ margin: 0 0 8px; font-size: 13.5px; }
.imx-miniList{ font-size: 14.5px; line-height: 1.55; }
.imx-miniList li{ margin-bottom: 5px; }
.imx-featureList{ font-size: 14.5px; line-height: 1.45; gap: 7px; }
.imx-planCard__note{ margin-top: 12px; padding: 10px 12px; font-size: 14px; }

/* =========================
   MOBILE — PRICING FIX PACK
========================= */
@media (max-width: 980px){

  .imx-pricingV3{ padding-top: 20px; }

  /* HERO: no mobile não “puxa” pra cima (evita bug com header) */
  .imx-pricingHero{
    margin-top: 0;
    padding-top: 0px;
    padding-bottom: 28px;
    border-radius: 0;
  }

  /* no mobile o fundo em IMG some e vira gradiente (mais leve) */
  .imx-pricingHero__bgimg{ display:none; }

  .imx-pricingHero__overlay{
    /* background:
      radial-gradient(520px 520px at 100% 0%, rgba(79,70,229,.28), rgba(79,70,229,.18) 35%, transparent 65%),
      radial-gradient(700px 520px at 10% 12%, rgba(37,99,235,.18), transparent 60%),
      linear-gradient(180deg, #EEF2FF 0%, #F4F8FF 45%, #ffffff 100%);*/
  }

  .imx-pricingHero__inner{
    padding: 0 14px;
    margin-bottom: 14px;
    text-align: center;
  }

  .imx-pricingHero__title{
    font-size: clamp(22px, 6.2vw, 30px);
    line-height: 1.12;
    text-shadow: none;
    color: #0F172A;
  }

  .imx-pricingHero .imx-plansV3{
    margin-top: 10px;
    padding: 0px 0px 0px 10px;
    border-radius: 16px;
  }

  /* carousel cards */
  .imx-plansV3__track{
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 4px 10px 10px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    margin-top: 12px;
  }

  .imx-planCard{
    flex: 0 0 80%;
    max-width: 80%;
    scroll-snap-align: start;
  }

  .imx-planCard:hover{ transform: translateY(0); }

  /* TAG menor no mobile */
  .imx-planCard__tag{
    top: 3px;
    right: 8px;
    z-index: 30;
    padding: 5px 8px;
    font-size: 8.5px;
    line-height: 1;
    box-shadow: 0 8px 18px rgba(0,0,0,.14);
  }
  .imx-planCard__tag--green::before,
  .imx-planCard__tag--violet::before{
    inset: -6px;
    filter: blur(10px);
    opacity: .35;
  }

  /* compact ainda mais */
  .imx-planCard__top{ padding: 12px 12px; }
  .imx-planCard__name{ font-size: 18px; margin: 2px 0 6px; }
  .imx-planCard__pitch{ font-size: 12.8px; margin: 0 auto 6px; line-height: 1.45; }
  .imx-planCard__priceRow{ margin: 6px 0 8px; }
  .imx-planCard__priceBig{ font-size: 38px; }
  .imx-planCard__priceUnit{ font-size: 12px; padding-bottom: 4px; }
  .imx-planCard__cta{ padding: 9px 10px; font-size: 14px; border-radius: 10px; }
  .imx-planCard__micro{ font-size: 12px; margin-top: 6px; }
  .imx-planCard__body{ padding: 10px 12px 12px; }
  .imx-miniList, .imx-featureList{ font-size: 13px; line-height: 1.4; }
  .imx-featureList{ gap: 5px; }
  .imx-planCard__note{ margin-top: 8px; padding: 8px 10px; font-size: 13px; }

  /* FAQ */
  .imx-faqV3{ padding-top: 30px; padding-bottom: 60px; }
  .imx-faqV3__title{ font-size: 24px; }
  .imx-faqV3__items{ padding: 0 6px; }

  /* features (reaproveita base da LP, só “quebra” pra 1 coluna de leve) */
  .imx-feature-row{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 28px 0;
  }
  .imx-feature-row--reverse .imx-feature-media,
  .imx-feature-row--reverse .imx-feature-content{ order: unset; }
  .imx-feature-media,
  .imx-feature-img,
  .imx-feature-video{ border-radius: 18px; }
  .imx-feature-content{ padding: 6px 0; }
  .imx-feature-kicker{ font-size: 13px; margin-bottom: 8px; }
  .imx-feature-title{ font-size: 26px; margin-bottom: 10px; max-width: 26ch; }
  .imx-feature-text{ font-size: 16px; line-height: 1.6; max-width: 42ch; }

  /* Trust mobile do pricing (usa seu componente) */
  .imx-pricingV3 .imx-trust{ display:none; }
  .imx-pricingV3 .imx-trustMobile{ display:block; padding: 0; }
}

/* micro ajustes */
@media (max-width: 420px){
  .imx-planCard__priceBig{ font-size: 50px; }
  .imx-planCard__priceUnit{ font-size: 13px; padding-bottom: 6px; }
  .imx-planCard__cta{ font-size: 15px; }
  .imx-faqV3__title{ font-size: 22px; }
}

/* =========================================================
   INSTITUCIONAIS (Privacidade, Termos, Ajuda, Sobre)
   - Remove inline styles
   - Header em "modo claro" desde o topo
========================================================= */

/* Header em modo claro nessas páginas (do topo, sem precisar de shim) */
body.lp-page--light header.lp-header{
  background: rgba(245,245,245,.86);
  backdrop-filter: blur(14px) saturate(1.15);
  -webkit-backdrop-filter: blur(14px) saturate(1.15);
  box-shadow: 0 6px 20px rgba(0,0,0,.08);
}

body.lp-page--light header.lp-header .lp-header__inner,
body.lp-page--light header.lp-header .lp-header__inner a,
body.lp-page--light header.lp-header .lp-header__inner .lp-btn,
body.lp-page--light header.lp-header .lp-hamburger{
  color: var(--c-dark) !important;
}

body.lp-page--light header.lp-header .lp-header__inner .lp-btn{
  border-color: rgba(45,45,45,.18) !important;
}

/* padding topo padrão do layout (usa token do header) */
body.lp-page--light main{ padding-top: 0; }

/* -------- Base shared -------- */
.lp-legal,
.lp-help,
.lp-about{
  padding: 76px 16px;
}

.lp-legal__wrap{ max-width: 1180px; margin: 0 auto; }
.lp-help__wrap{ max-width: 820px;  margin: 0 auto; }
.lp-about__wrap{ max-width: 1040px; margin: 0 auto; }

.lp-ico{ display:inline-flex; font-size: 16px; line-height:1; }

/* Chips (reaproveitado nas 3) */
.lp-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 13px;
  border-radius: 999px;
  border: 1px solid rgba(45,45,45,.14);
  background: transparent;
  font-weight: 800;
  font-size: 14px;
  color: var(--c-dark);
}

/* =========================================================
   LEGAL (Privacidade + Termos)
========================================================= */

.lp-legal__hero{ text-align:center; margin-bottom: 22px; }
.lp-legal__chips{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom: 10px;
}

.lp-legal__title{
  font-size: 42px;
  line-height: 1.12;
  margin: 8px 0 10px;
  letter-spacing: -0.2px;
}

.lp-legal__subtitle{
  margin: 0 auto;
  max-width: 900px;
  opacity: .92;
  line-height: 1.75;
  font-size: 18px;
}

.lp-legal__updated{
  margin: 16px auto 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(45,45,45,.12);
  background: transparent;
  opacity: .95;
}

/* Layout */
.lp-legal__layout{
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 18px;
  margin-top: 22px;
}

/* TOC */
.lp-legal__tocCard{
  border: 1px solid rgba(45,45,45,.14);
  border-radius: 18px;
  padding: 16px;
  background: transparent;
  position: sticky;
  top: calc(var(--lp-header-h) + 12px);
}

.lp-legal__tocTitle{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight: 900;
  font-size: 16px;
  margin-bottom: 10px;
}

.lp-legal__tocNav{
  display:flex;
  flex-direction: column;
  gap: 6px;
}

.lp-legal__tocNav a{
  text-decoration: none;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid rgba(45,45,45,.10);
  opacity: .92;
  color: inherit;
}

.lp-legal__tocNav a:hover{
  background: rgba(0,0,0,.05);
  opacity: 1;
}

/* numeração (Termos) */
.toc-num{
  display:inline-flex;
  width: 24px; height: 24px;
  align-items:center; justify-content:center;
  border-radius: 999px;
  border: 1px solid rgba(45,45,45,.14);
  font-weight: 900;
  font-size: 12px;
}

/* Content */
.lp-legal__content{
  border: 1px solid rgba(45,45,45,.14);
  border-radius: 18px;
  padding: 22px;
  background: transparent;
}

.lp-legal__section{
  padding: 10px 0 22px;
  border-bottom: 1px solid rgba(45,45,45,.10);
  scroll-margin-top: calc(var(--lp-header-h) + 14px);
}

.lp-legal__section:last-child{
  border-bottom: 0;
  padding-bottom: 0;
}

.lp-legal__section h2{
  display:flex;
  align-items:center;
  gap:10px;
  margin: 0 0 10px;
  font-size: 22px;
  letter-spacing: -0.2px;
}

.lp-legal__section p{
  margin: 10px 0 0;
  font-size: 17px;
  line-height: 1.85;
  opacity: .95;
}

/* lists */
.lp-legal__bullets{
  margin: 12px 0 0;
  padding-left: 18px;
  line-height: 1.75;
  opacity: .95;
  font-size: 16.5px;
}

.lp-legal__checks{
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.lp-legal__checks li{
  display:flex;
  gap: 10px;
  align-items: flex-start;
  line-height: 1.7;
  font-size: 16.5px;
  opacity: .95;
}

.lp-check{ color: #2ecc71; margin-top: 2px; }

.lp-legal__note{
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(45,45,45,.12);
  background: transparent;
  line-height: 1.6;
  opacity: .95;
  display:flex;
  gap:10px;
  align-items:flex-start;
}

/* contact */
.lp-legal__contactGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}

.lp-legal__contactItem{
  border: 1px solid rgba(45,45,45,.12);
  border-radius: 16px;
  padding: 14px;
  display:flex;
  gap: 12px;
  align-items:flex-start;
}

.lp-legal__contactItem strong{
  display:inline-block;
  margin-bottom: 4px;
}

/* =========================================================
   AJUDA
========================================================= */

.lp-help__header{ margin-bottom: 22px; text-align: center; }

.lp-help__title{
  font-size: 36px;
  line-height: 1.1;
  margin: 0 0 8px;
}

.lp-help__subtitle{ margin: 0; opacity: .85; }

.lp-help__h2{ font-size: 18px; margin: 0 0 12px; }

.lp-help__faq{ margin-top: 26px; margin-bottom: 28px; }
.lp-help__faqList{ display: grid; gap: 10px; }

.lp-help__faqItem{
  border: 1px solid rgba(45,45,45,.12);
  border-radius: 14px;
  padding: 2px 12px;
  background: rgba(0,0,0,.02);
}

.lp-help__faqItem summary{
  cursor: pointer;
  padding: 12px 4px;
  font-weight: 700;
  list-style: none;
}

.lp-help__faqItem summary::-webkit-details-marker{ display: none; }

.lp-help__faqBody{
  padding: 0 4px 14px;
  opacity: .9;
  line-height: 1.5;
}

.lp-help__ticket{ margin-top: 18px; }
.lp-help__form{ margin-top: 14px; }

.lp-help__grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.lp-help__field{
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}

.lp-help__field label{
  font-weight: 600;
  font-size: 14px;
}

.lp-help__field input,
.lp-help__field textarea{
  width: 100%;
  padding: 12px 12px;
  border: 1px solid rgba(45,45,45,.15);
  border-radius: 12px;
  outline: none;
  font-family: var(--font-body);
}

.lp-help__btn{
  width: 100%;
  padding: 12px 14px;
  border: 0;
  border-radius: 12px;
  font-weight: 900;
  cursor: pointer;
  font-family: var(--font-title);
  background: linear-gradient(135deg, var(--c-primary), #7B61FF);
  color: #fff;
  box-shadow: 0 14px 34px rgba(99,69,237,.20);
}

.lp-help__success,
.lp-help__error{
  margin-top: 12px;
  padding: 12px;
  border-radius: 12px;
  font-weight: 700;
}

.lp-help__success{ border: 1px solid rgba(46,204,113,.25); background: rgba(46,204,113,.08); }
.lp-help__error{ border: 1px solid rgba(231,76,60,.25);  background: rgba(231,76,60,.08);  }

/* =========================================================
   SOBRE
========================================================= */

.lp-about__hero{ text-align: center; margin-bottom: 34px; }

.lp-about__chips{
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 6px;
}

.lp-about__title{
  font-size: 42px;
  line-height: 1.12;
  margin: 14px 0 12px;
  letter-spacing: -0.2px;
}

.lp-about__subtitle{
  margin: 0 auto;
  max-width: 820px;
  opacity: .92;
  line-height: 1.75;
  font-size: 18px;
}

/* Grid */
.lp-about__grid{
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 18px;
  margin-top: 26px;
}

.lp-about__card{
  border: 1px solid rgba(45,45,45,.14);
  border-radius: 18px;
  padding: 22px;
  background: transparent;
}

.lp-about__cardHead{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.lp-about__badgeIcon{ font-size: 22px; line-height: 1; }

.lp-about__card h2{
  margin: 0;
  font-size: 22px;
  letter-spacing: -0.2px;
}

.lp-about__card p{
  margin: 12px 0 0;
  line-height: 1.8;
  opacity: .96;
  font-size: 17px;
}

/* Mini pontos */
.lp-about__miniPoints{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.lp-miniPoint{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(45,45,45,.12);
  font-weight: 900;
  font-size: 14px;
  background: transparent;
}

/* beliefs */
.lp-about__beliefs{
  list-style: none;
  padding: 0;
  margin: 14px 0 0;
  display: grid;
  gap: 14px;
}

.lp-belief{
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.lp-check-green{
  color: #2ecc71;
  font-size: 16px;
  line-height: 1.2;
  margin-top: 3px;
  flex-shrink: 0;
}

.lp-belief p{
  margin: 0;
  font-size: 16.5px;
  line-height: 1.7;
  opacity: .95;
}

.lp-belief strong{ font-weight: 900; }

/* Nota */
.lp-about__note{
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(45,45,45,.12);
  font-size: 16px;
  line-height: 1.6;
  opacity: .95;
  background: transparent;
}

/* Sections */
.lp-about__section{
  margin-top: 18px;
  border: 1px solid rgba(45,45,45,.14);
  border-radius: 18px;
  padding: 22px;
  background: transparent;
}

.lp-about__section p{
  margin: 12px 0 0;
  line-height: 1.8;
  opacity: .96;
  font-size: 17px;
}

/* Features */
.lp-about__features{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 16px;
}

.lp-about__feature{
  border: 1px solid rgba(45,45,45,.12);
  border-radius: 16px;
  padding: 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  background: transparent;
}

.lp-about__featureIcon{ font-size: 22px; line-height: 1; margin-top: 2px; }
.lp-about__feature h3{ margin: 0 0 6px; font-size: 17px; letter-spacing: -0.1px; }
.lp-about__feature p{ margin: 0; opacity: .92; line-height: 1.65; font-size: 16.5px; }

/* =========================================================
   RESPONSIVO (institucionais)
========================================================= */
@media (max-width: 980px){
  .lp-legal__layout{ grid-template-columns: 1fr; }
  .lp-legal__tocCard{ position: relative; top: auto; }
  .lp-legal__hero{ text-align: left; }
  .lp-legal__title{ font-size: 34px; }
  .lp-legal__subtitle{ margin: 0; }
  .lp-legal__contactGrid{ grid-template-columns: 1fr; }

  .lp-help__header{ text-align: left; }
  .lp-help__title{ font-size: 28px; }
  .lp-help__grid{ grid-template-columns: 1fr; }

  .lp-about__grid{ grid-template-columns: 1fr; }
  .lp-about__hero{ text-align: left; }
  .lp-about__title{ font-size: 34px; }
  .lp-about__subtitle{ margin: 0; }
  .lp-about__features{ grid-template-columns: 1fr; }
}

@media (max-width: 600px){
  .lp-belief p{ font-size: 16px; }
}

.imx-hero-tagmeta-branco {
  display: none;
}
