    :root {
      --cor-primaria: #0c7b3e;
      --cor-secundaria: #0b4f29;
      --cor-destaque: #f3b300;
      --cor-fundo: #f7f9fc;
      --cor-texto: #1f2933;
      --cor-texto-claro: #f9fafb;
      --radius: 12px;
      --shadow-suave: 0 10px 30px rgba(15, 23, 42, 0.12);
      --max-largura: 1080px;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.6;
      color: var(--cor-texto);
      background: var(--cor-fundo);
    }

    img {
      max-width: 100%;
      display: block;
    }

    a {
      text-decoration: none;
      color: inherit;
    }

    .pagina {
      min-height: 100vh;
      background:
        radial-gradient(circle at top left, rgba(12, 123, 62, 0.18), transparent 55%),
        radial-gradient(circle at bottom right, rgba(243, 179, 0, 0.18), transparent 55%),
        var(--cor-fundo);
    }

    .container {
      width: 100%;
      max-width: var(--max-largura);
      margin: 0 auto;
      padding: 24px 16px 56px;
    }

    header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 32px;
      gap: 16px;
    }

    .logo-titulo {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .logo-marca {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 20%, #ffffff, #0c7b3e);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      color: #ffffff;
      box-shadow: 0 6px 18px rgba(12, 123, 62, 0.4);
      font-size: 18px;
    }

    .logo-textos {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .logo-textos span {
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: #64748b;
    }

    .logo-textos strong {
      font-size: 18px;
      color: #0f172a;
    }

    .header-cta {
      display: flex;
      gap: 10px;
      align-items: center;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .badge-pequeno {
      font-size: 11px;
      padding: 6px 10px;
      border-radius: 999px;
      background: rgba(12, 123, 62, 0.08);
      color: #0c7b3e;
      font-weight: 500;
    }

    /* Botões */
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 12px 20px;
      border-radius: 999px;
      border: none;
      cursor: pointer;
      font-weight: 600;
      font-size: 15px;
      transition: all 0.18s ease;
      white-space: nowrap;
    }

    .btn-primary {
      background: linear-gradient(135deg, var(--cor-primaria), var(--cor-secundaria));
      color: var(--cor-texto-claro);
      box-shadow: 0 12px 24px rgba(12, 123, 62, 0.4);
    }

    .btn-primary:hover {
      transform: translateY(-1px) scale(1.01);
      box-shadow: 0 18px 32px rgba(12, 123, 62, 0.45);
    }

    .btn-outline {
      background: transparent;
      border: 1px solid rgba(15, 23, 42, 0.15);
      color: #111827;
    }

    .btn-outline:hover {
      background: rgba(15, 23, 42, 0.03);
      border-color: rgba(15, 23, 42, 0.25);
    }

    .btn-sm {
      padding: 8px 14px;
      font-size: 13px;
    }

    /* HERO */
    .hero {
      display: grid;
      grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
      gap: 32px;
      align-items: center;
      margin-bottom: 48px;
    }

    @media (max-width: 900px) {
      .hero {
        grid-template-columns: minmax(0, 1fr);
      }
    }

    .hero-texto small {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 6px 10px;
      border-radius: 999px;
      background: rgba(12, 123, 62, 0.06);
      color: #0c7b3e;
      font-size: 12px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      margin-bottom: 16px;
    }

    .hero-texto h1 {
      font-size: clamp(30px, 4vw, 40px);
      line-height: 1.1;
      margin-bottom: 14px;
      color: #0f172a;
    }

    .hero-texto h1 span {
      color: var(--cor-primaria);
    }

    .hero-texto p {
      font-size: 16px;
      color: #4b5563;
      margin-bottom: 20px;
      max-width: 520px;
    }

    .hero-destaques {
      display: flex;
      flex-wrap: wrap;
      gap: 14px;
      font-size: 13px;
      color: #6b7280;
      margin-top: 16px;
    }

    .hero-destaques span {
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .hero-destaques span::before {
      content: "●";
      font-size: 9px;
      color: var(--cor-primaria);
    }

    .hero-botoes {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
    }

    .hero-metricas {
      margin-top: 18px;
      font-size: 13px;
      color: #6b7280;
      display: flex;
      gap: 16px;
      flex-wrap: wrap;
    }

    .hero-metricas strong {
      color: #0f172a;
    }

    .hero-card {
      background: #ffffff;
      border-radius: 20px;
      box-shadow: var(--shadow-suave);
      padding: 18px 18px 20px;
      border: 1px solid rgba(148, 163, 184, 0.25);
    }

    .hero-card-topo {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 14px;
    }

    .hero-card-titulo {
      font-size: 14px;
      font-weight: 600;
      color: #0f172a;
    }

    .hero-card-badges {
      display: flex;
      gap: 6px;
    }

    .pill {
      font-size: 11px;
      padding: 4px 8px;
      border-radius: 999px;
      background: rgba(12, 123, 62, 0.08);
      color: #0c7b3e;
      font-weight: 500;
    }

    .pill-yellow {
      background: rgba(243, 179, 0, 0.12);
      color: #92400e;
    }

    .hero-card-grid {
      display: grid;
      grid-template-columns: 1.1fr 1fr;
      gap: 14px;
    }

    @media (max-width: 600px) {
      .hero-card-grid {
        grid-template-columns: 1fr;
      }
    }

    .mini-tabela {
      border-radius: 14px;
      border: 1px solid rgba(148, 163, 184, 0.5);
      overflow: hidden;
      background: #f9fafb;
    }

    .mini-tabela-header {
      background: #e5f3eb;
      padding: 8px 10px;
      font-size: 11px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: #065f46;
    }

    .mini-tabela-body {
      padding: 8px 10px;
      font-size: 12px;
    }

    .mini-linha {
      display: flex;
      justify-content: space-between;
      padding: 4px 0;
      border-bottom: 1px dashed rgba(148, 163, 184, 0.4);
    }

    .mini-linha:last-child {
      border-bottom: none;
    }

    .mini-linha strong {
      font-weight: 600;
      color: #111827;
    }

    .mini-linha span {
      color: #6b7280;
    }

    .mini-resumo {
      border-radius: 14px;
      background: radial-gradient(circle at top left, rgba(12, 123, 62, 0.12), #ffffff);
      border: 1px solid rgba(148, 163, 184, 0.35);
      padding: 10px 12px;
      font-size: 12px;
    }

    .mini-resumo h4 {
      font-size: 12px;
      margin-bottom: 6px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: #065f46;
    }

    .mini-resumo p {
      font-size: 12px;
      color: #4b5563;
      margin-bottom: 6px;
    }

    .mini-tag {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      border-radius: 999px;
      padding: 3px 7px;
      background: rgba(15, 23, 42, 0.04);
      font-size: 11px;
      color: #111827;
    }

    section {
      margin-bottom: 48px;
    }

    .secao-titulo {
      font-size: 22px;
      margin-bottom: 8px;
      color: #0f172a;
    }

    .secao-subtitulo {
      font-size: 14px;
      color: #6b7280;
      max-width: 620px;
      margin-bottom: 22px;
    }

    .secao-centralizada {
      text-align: center;
    }

    .secao-centralizada .secao-subtitulo {
      margin-left: auto;
      margin-right: auto;
    }

    .grid-features {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
      gap: 18px;
    }

    .feature-card {
      background: #ffffff;
      border-radius: var(--radius);
      padding: 16px 16px 18px;
      border: 1px solid rgba(148, 163, 184, 0.35);
      box-shadow: 0 8px 20px rgba(15, 23, 42, 0.03);
    }

    .feature-icone {
      width: 32px;
      height: 32px;
      border-radius: 999px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      margin-bottom: 8px;
      background: rgba(12, 123, 62, 0.06);
    }

    .feature-card h3 {
      font-size: 15px;
      margin-bottom: 6px;
      color: #111827;
    }

    .feature-card p {
      font-size: 13px;
      color: #6b7280;
    }

    .bloco-destaque {
      background: linear-gradient(135deg, #0b4f29, #0c7b3e);
      border-radius: 20px;
      padding: 20px 18px;
      color: var(--cor-texto-claro);
      display: grid;
      grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
      gap: 20px;
      align-items: center;
      box-shadow: var(--shadow-suave);
      margin-top: 24px;
    }

    @media (max-width: 800px) {
      .bloco-destaque {
        grid-template-columns: minmax(0, 1fr);
      }
    }

    .bloco-destaque h3 {
      font-size: 18px;
      margin-bottom: 8px;
    }

    .bloco-destaque p {
      font-size: 14px;
      opacity: 0.96;
    }

    .lista-marcadores {
      margin-top: 8px;
      font-size: 13px;
      opacity: 0.96;
      padding-left: 18px;
    }

    .lista-marcadores li {
      margin-bottom: 4px;
    }

    .lista-marcadores li::marker {
      color: var(--cor-destaque);
    }

    /* PLANOS – CARROSSEL PRÓPRIO */
    .secao-planos {
      text-align: center;
    }

    .planos-carousel {
      position: relative;
      overflow: hidden;
      margin-top: 16px;
    }

    .planos-track {
      display: flex;
      transition: transform 0.4s ease;
      will-change: transform;
    }

    .plano-slide {
      min-width: 100%;
      display: flex;
      justify-content: center;
      padding: 8px 4px;
    }

    .plano-card {
      background: #ffffff;
      border-radius: 18px;
      padding: 18px 18px 20px;
      border: 1px solid rgba(148, 163, 184, 0.6);
      box-shadow: 0 14px 28px rgba(15, 23, 42, 0.10);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      max-width: 380px;
      width: 100%;
      text-align: left;
      position: relative;
      overflow: hidden;
    }

    .plano-card::after {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background: radial-gradient(circle at top right, rgba(12, 123, 62, 0.08), transparent 60%);
      opacity: 0.8;
    }

    .plano-card > * {
      position: relative;
      z-index: 1;
    }

    .plano-card.popular {
      border: 2px solid var(--cor-primaria);
      box-shadow: 0 18px 36px rgba(12, 123, 62, 0.25);
    }

    .plano-card.popular::before {
      content: "MAIS CONTRATADO";
      position: absolute;
      top: 12px;
      right: -56px;
      transform: rotate(37deg);
      background: var(--cor-destaque);
      color: #111827;
      font-size: 11px;
      font-weight: 700;
      padding: 4px 42px;
      text-align: center;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      z-index: 2;
    }

    .plano-nome {
      font-size: 16px;
      font-weight: 700;
      margin-bottom: 4px;
      color: #0f172a;
    }

    .plano-desc {
      font-size: 13px;
      color: #6b7280;
      margin-bottom: 10px;
    }

    .plano-preco {
      font-size: 26px;
      font-weight: 800;
      color: #0f172a;
      margin-bottom: 4px;
    }

    .plano-preco span {
      font-size: 13px;
      font-weight: 500;
      color: #6b7280;
      margin-left: 4px;
    }

    .plano-det {
      font-size: 12px;
      color: #9ca3af;
      margin-bottom: 12px;
    }

    .plano-lista {
      list-style: none;
      font-size: 13px;
      color: #4b5563;
      margin-bottom: 14px;
    }

    .plano-lista li {
      margin-bottom: 6px;
      display: flex;
      gap: 8px;
      align-items: flex-start;
    }

    .plano-lista li::before {
      content: "✓";
      font-size: 13px;
      margin-top: 2px;
      color: var(--cor-primaria);
    }

    .plano-rodape {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 6px;
    }

    .plano-rodape small {
      font-size: 11px;
      color: #9ca3af;
    }

    .planos-controles {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 16px;
      margin-top: 14px;
    }

    .plano-seta {
      width: 34px;
      height: 34px;
      border-radius: 999px;
      border: 1px solid rgba(15, 23, 42, 0.15);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: #ffffff;
      cursor: pointer;
      font-size: 16px;
      transition: background 0.15s, transform 0.15s, box-shadow 0.15s;
    }

    .plano-seta:hover {
      background: #f3f4f6;
      transform: translateY(-1px);
      box-shadow: 0 8px 20px rgba(15, 23, 42, 0.15);
    }

    .planos-dots {
      display: flex;
      gap: 6px;
      align-items: center;
      justify-content: center;
    }

    .plano-dot {
      width: 7px;
      height: 7px;
      border-radius: 999px;
      background: rgba(148, 163, 184, 0.7);
      cursor: pointer;
      transition: width 0.2s ease, background 0.2s ease;
    }

    .plano-dot.ativo {
      width: 18px;
      background: var(--cor-primaria);
    }

    /* Comparativo */
    .comparativo {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 18px;
    }

    .comparativo-card {
      background: #ffffff;
      border-radius: var(--radius);
      padding: 16px 16px 14px;
      border: 1px dashed rgba(148, 163, 184, 0.8);
    }

    .comparativo-card h3 {
      font-size: 14px;
      margin-bottom: 8px;
      color: #111827;
    }

    .comparativo-card ul {
      font-size: 13px;
      color: #6b7280;
      padding-left: 18px;
    }

    .comparativo-card li {
      margin-bottom: 4px;
    }

    /* FAQ */
    .faq-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 16px;
    }

    .faq-item {
      background: #ffffff;
      border-radius: var(--radius);
      padding: 14px 16px;
      border: 1px solid rgba(148, 163, 184, 0.6);
    }

    .faq-item h3 {
      font-size: 14px;
      margin-bottom: 4px;
      color: #111827;
    }

    .faq-item p {
      font-size: 13px;
      color: #6b7280;
    }

    footer {
      margin-top: 16px;
      padding-top: 16px;
      border-top: 1px solid rgba(148, 163, 184, 0.5);
      font-size: 11px;
      color: #9ca3af;
      text-align: center;
    }

    .rodape-links {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 12px;
      margin-bottom: 6px;
    }

    .rodape-links a {
      color: #6b7280;
      text-decoration: underline;
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
      font-size: 11px;
    }

    .hero-lado-direito{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

.hero-clientes{
  font-size:14px;
  font-weight:500;
  padding:6px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.7);
  box-shadow:0 8px 24px rgba(15,52,32,.08);
  backdrop-filter:blur(6px);
}

.hero-clientes-label{
  opacity:0.8;
  margin-right:4px;
}

.hero-clientes a.hero-cliente-link{
  text-decoration:none;
  font-weight:700;
  /* cor do verde principal do site, ajuste se quiser */
  color:#0c7b3e;
}

.hero-clientes a.hero-cliente-link:hover{
  text-decoration:underline;
}
