@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');
/* CSS Document */
 :root {
      --color-primary-900: #09101a;
      --color-primary-800: #0d3d4a;
      --color-primary-700: #125a6b;
      --color-primary: #0e4554;
      --color-primary-light: #FFFFFF;
      --color-primary-soft: #dceaf0;
      --color-accent: #b87a0a;
      --color-accent-hover: #956e09;
      --color-accent-soft: #f5edd9;
      --color-whatsapp: #25d366;
      --color-whatsapp-hover: #1ebe5d;
      --color-success: #178a64;
      --color-warning: #b45309;
      --color-danger: #b91c1c;
      --color-surface: #ffffff;
      --color-background: #e8ecf1;
      --color-text: #070b12;
      --color-muted: #3a4656;
      --color-border: #b7c2cf;
      --shadow-soft: 0 16px 40px rgba(9, 16, 26, 0.1);
      --shadow-card: 0 10px 28px rgba(14, 69, 84, 0.08);
      --radius-button: 8px;
      --radius-card: 16px;
      --gradient-brand: linear-gradient(145deg, #09101a 0%, #0d3d4a 55%, #125a6b 100%);
      --font-sans: 'Inter', system-ui, -apple-system, sans-serif;
      --font-display: 'Plus Jakarta Sans', 'Inter', system-ui, sans-serif;
    }

 body {
      font-family: var(--font-sans);
      padding-top: 68px; /* Compensa header fixa */
      background-color: var(--color-background);
      color: var(--color-text);
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    .text-muted {
      color: var(--color-muted) !important;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      color: inherit;
      font-family: var(--font-display);
      font-weight: 600;
      letter-spacing: -0.025em;
    }

    h1.fw-bold,
    h2.fw-bold,
    h3.fw-bold,
    h4.fw-bold,
    h5.fw-bold,
    h6.fw-bold,
    .section-title,
    .section-title.fw-bold,
    .card-title,
    .card-title.fw-bold,
    .slogan-title,
    .segmentos-title,
    .seo-title,
    .faq-title {
      font-weight: 600 !important;
    }

    .footer-title {
      font-weight: 700 !important;
    }

    h1 {
      font-size: clamp(2rem, 3.6vw, 2.75rem);
      line-height: 1.12;
      letter-spacing: -0.03em;
      font-weight: 600;
    }

    h2,
    h2.display-5,
    h2.display-6,
    h2.h2,
    h2.h3,
    .section-title,
    .slogan-title,
    .segmentos-title,
    .seo-title,
    .faq-title {
      font-size: clamp(1.7rem, 2.6vw, 2.15rem) !important;
      line-height: 1.2;
      letter-spacing: -0.025em;
      font-weight: 600 !important;
      color: var(--color-text);
      text-wrap: balance;
    }

    /* Accent mark under section headlines */
    .features-heading .section-title,
    .segmentos-heading .section-title,
    .plans-heading .section-title,
    .faq-heading .section-title,
    .faq-title.section-title {
      position: relative;
      padding-bottom: 0.15rem;
    }

    .features-heading .section-title::after,
    .segmentos-heading .section-title::after,
    .plans-heading .section-title::after,
    .faq-heading .section-title::after,
    .faq-title.section-title::after {
      content: '';
      display: block;
      width: 2.75rem;
      height: 3px;
      margin: 0.9rem auto 0;
      border-radius: 999px;
      background: var(--color-accent);
    }

    .seo-title.section-title,
    .seo-title {
      position: relative;
      padding-bottom: 0.15rem;
    }

    .seo-title.section-title::after,
    .seo-title::after {
      content: '';
      display: block;
      width: 2.75rem;
      height: 3px;
      margin: 0.9rem 0 0;
      border-radius: 999px;
      background: var(--color-accent);
    }

    .slogan-title {
      position: relative;
      color: #FFFFFF !important;
      font-weight: 600 !important;
    }

    .slogan-title::after {
      content: '';
      display: block;
      width: 2.75rem;
      height: 3px;
      margin: 0.9rem auto 0;
      border-radius: 999px;
      background: var(--color-accent);
    }

    .section-subtitle,
    .faq-subtitle,
    .segmentos-subtitle {
      margin-top: 0.85rem;
      font-size: 1.05rem !important;
      line-height: 1.55;
      font-weight: 400;
      letter-spacing: -0.01em;
    }

    .card-title {
      font-family: var(--font-display);
      letter-spacing: -0.02em;
    }

    .btn {
      border-radius: var(--radius-button);
      font-weight: 600;
      letter-spacing: 0.01em;
    }

    .btn-lg {
      border-radius: var(--radius-button);
    }

    .navbar-custom {
      background: #09101a !important;
      border-bottom: 1px solid rgba(255, 255, 255, 0.06);
      padding: 0;
      box-shadow: none;
      position: fixed;
      width: 100%;
      top: 0;
      z-index: 1030;
      min-height: 68px;
    }

    .navbar-custom > .container {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      min-height: 68px;
      padding-top: 0.65rem;
      padding-bottom: 0.65rem;
    }

    .navbar-custom .navbar-toggler {
      padding: 0.35rem;
      border: 1px solid rgba(255, 255, 255, 0.18) !important;
      border-radius: 6px;
    }

    .navbar-custom .navbar-toggler-icon {
      filter: invert(1) grayscale(100%) brightness(200%);
      width: 1.15em;
      height: 1.15em;
    }

    .navbar-brand {
      display: flex;
      align-items: center;
      flex: 0 0 auto;
      max-width: 156px;
      margin: 0;
      padding: 0;
      position: static !important;
      transform: none !important;
      top: auto !important;
      left: auto !important;
    }

    .navbar-brand img {
      width: 100%;
      height: auto;
      display: block;
    }

    .navbar-custom .navbar-collapse {
      flex-grow: 1;
      margin: 0 !important;
    }

    @media (min-width: 992px) {
      .navbar-custom .navbar-collapse {
        display: flex !important;
        align-items: center;
        justify-content: center;
      }
    }

    .navbar-custom .navbar-nav {
      gap: 0.15rem !important;
      align-items: center;
    }

    .nav-link {
      color: rgba(255, 255, 255, 0.72) !important;
      font-family: var(--font-sans);
      font-size: 0.92rem;
      font-weight: 500;
      margin: 0;
      position: relative;
      padding: 0.45rem 0.7rem !important;
      border-radius: 0;
      background: transparent !important;
      transition: color 0.15s ease;
      display: inline-block;
    }

    .nav-link::after {
      display: none !important;
    }

    .nav-link.active,
    .nav-link:hover,
    .nav-link:focus {
      color: #FFFFFF !important;
      background: transparent !important;
    }

    .nav-link.active {
      font-weight: 600;
    }

    .nav-item.dropdown .nav-link.dropdown-toggle::after {
      display: inline-block !important;
      margin-left: 0.35em;
      vertical-align: 0.15em;
      opacity: 0.7;
    }

    .dropdown-menu {
      background: #0f1826;
      min-width: 260px;
      margin-top: 0.65rem !important;
      padding: 0.4rem;
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 10px;
      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
      overflow: hidden;
      animation: none;
    }

    .dropdown-item {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      padding: 0.7rem 0.85rem;
      font-size: 0.9rem;
      font-weight: 500;
      color: rgba(255, 255, 255, 0.88);
      border-radius: 7px;
      border-left: 0;
      transition: background-color 0.15s ease, color 0.15s ease;
    }

    .dropdown-item:hover,
    .dropdown-item:focus {
      background-color: rgba(255, 255, 255, 0.08);
      color: #FFFFFF;
      border-left-color: transparent;
    }

    .dropdown-item i {
      width: 1.1rem;
      text-align: center;
      font-size: 0.95rem;
      color: rgba(255, 255, 255, 0.55);
      transition: color 0.15s ease;
      transform: none !important;
    }

    .dropdown-item:hover i {
      color: var(--color-accent);
      transform: none !important;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(-6px); }
      to { opacity: 1; transform: translateY(0); }
    }

    .btn-whatsapp {
      background-color: transparent;
      color: var(--color-primary);
      border: 1px solid var(--color-primary);
      font-weight: 600;
      padding: 0.6rem 1.4rem;
      border-radius: var(--radius-button);
      transition: background-color 0.15s ease, color 0.15s ease;
    }

    .btn-whatsapp:hover {
      background-color: var(--color-primary);
      color: #FFFFFF;
      border-color: var(--color-primary);
      transform: none;
    }

    .header-actions {
      display: none;
      align-items: center;
      gap: 0.5rem;
      flex: 0 0 auto;
      position: static !important;
      right: auto !important;
      top: auto !important;
      transform: none !important;
    }

    .header-actions-mobile {
      width: 100%;
      padding: 1rem 0 0.35rem;
      margin-top: 0.35rem;
      border-top: 1px solid rgba(255, 255, 255, 0.08);
    }

    .btn-header-login,
    .btn-header-whatsapp,
    .btn-header-ghost {
      border-radius: 7px;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1.1;
      padding: 0.62rem 0.95rem;
      white-space: nowrap;
      transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
      box-shadow: none !important;
      transform: none !important;
    }

    .btn-header-login {
      background-color: var(--color-accent) !important;
      background-image: none !important;
      color: #FFFFFF !important;
      border: 1px solid transparent !important;
    }

    .btn-header-login:hover,
    .btn-header-login:focus {
      background-color: var(--color-accent-hover) !important;
      color: #FFFFFF !important;
    }

    .btn-header-ghost {
      background: transparent !important;
      color: rgba(255, 255, 255, 0.88) !important;
      border: 1px solid rgba(255, 255, 255, 0.22) !important;
    }

    .btn-header-ghost:hover,
    .btn-header-ghost:focus {
      background: rgba(255, 255, 255, 0.06) !important;
      color: #FFFFFF !important;
      border-color: rgba(255, 255, 255, 0.4) !important;
    }

    .btn-header-whatsapp {
      background-color: transparent;
      color: rgba(255, 255, 255, 0.88) !important;
      border: 1px solid rgba(255, 255, 255, 0.22);
    }

    .btn-header-whatsapp:hover,
    .btn-header-whatsapp:focus {
      background-color: rgba(255, 255, 255, 0.06);
      color: #FFFFFF !important;
      border-color: rgba(255, 255, 255, 0.4);
    }

    .btn-trial {
      position: relative;
      overflow: hidden;
      border: 0;
      border-radius: var(--radius-button) !important;
      color: #FFFFFF !important;
      font-weight: 600;
      letter-spacing: 0.15px;
      background-color: var(--color-accent) !important;
      background-image: none !important;
      box-shadow: none;
      padding: 0.75rem 1.45rem;
      transition: background-color 0.15s ease;
    }

    .btn-trial::before { content: ''; display: none; }

    .btn-trial:hover,
    .btn-trial:focus {
      background-color: var(--color-accent-hover) !important;
      background-image: none !important;
      color: #FFFFFF !important;
      transform: none;
      box-shadow: none;
    }

    .btn-trial:hover::before,
    .btn-trial:focus::before { left: 130%; }

    .btn-trial i { font-size: 0.95em; }

    .hero-brand {
      margin: 0 0 0.5rem;
      font-family: var(--font-display);
      font-size: clamp(1.15rem, 1.8vw, 1.35rem);
      font-weight: 600;
      line-height: 1.2;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.72);
    }

    .hero-lead {
      max-width: 34rem;
      font-size: 1.05rem !important;
      line-height: 1.55;
      color: rgba(255, 255, 255, 0.86);
      opacity: 1 !important;
    }

    .hero-actions .btn {
      margin-top: 0;
      min-width: 10.5rem;
    }

    .btn-hero-secondary {
      background: transparent;
      color: #FFFFFF !important;
      border: 1px solid rgba(255, 255, 255, 0.28);
      border-radius: var(--radius-button);
      font-weight: 600;
      padding: 0.75rem 1.35rem;
      box-shadow: none;
      transition: background-color 0.15s ease, border-color 0.15s ease;
    }

    .btn-hero-secondary:hover,
    .btn-hero-secondary:focus {
      background: rgba(255, 255, 255, 0.06);
      color: #FFFFFF !important;
      border-color: rgba(255, 255, 255, 0.48);
    }

    .banner .hero-actions .btn-whatsapp {
      margin-top: 0;
      background-color: transparent;
      color: #FFFFFF;
      border: 1px solid rgba(255, 255, 255, 0.28);
      box-shadow: none;
    }

    .banner .hero-actions .btn-whatsapp:hover {
      background-color: rgba(255, 255, 255, 0.06);
      color: #FFFFFF;
      border-color: rgba(255, 255, 255, 0.48);
    }

    .hero-benefits {
      display: flex;
      flex-wrap: wrap;
      gap: 0.55rem 1.25rem;
      margin-top: 1.35rem;
      padding: 0;
      list-style: none;
    }

    .hero-benefits li {
      position: relative;
      padding-left: 0.95rem;
      font-weight: 500;
      color: rgba(255, 255, 255, 0.78);
      font-size: 0.9rem;
    }

    .hero-benefits li::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0.55em;
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: var(--color-accent);
    }

    .hero-media {
      width: min(100%, 420px);
      margin: 0 auto;
      padding: 0.75rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.04);
      border: 1px solid rgba(255, 255, 255, 0.1);
      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
    }

    .hero-media-img {
      display: block;
      width: 100%;
      height: auto;
      border-radius: 10px;
      border: 1px solid rgba(255, 255, 255, 0.08);
    }

    /* === Hero panel (professional modules) === */
    .hero-panel {
      width: min(100%, 420px);
      margin: 0 auto;
      padding: 1.15rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.04);
      border: 1px solid rgba(255, 255, 255, 0.12);
      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
    }

    .hero-panel-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      margin-bottom: 0.95rem;
      padding-bottom: 0.75rem;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .hero-panel-label {
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.7);
    }

    .hero-panel-meta {
      font-size: 0.75rem;
      font-weight: 600;
      color: rgba(255, 255, 255, 0.55);
      padding: 0.2rem 0.55rem;
      border: 1px solid rgba(255, 255, 255, 0.14);
      border-radius: 999px;
    }

    .hero-panel-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.65rem;
    }

    .hero-panel .hero-node {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      min-height: 84px;
      margin: 0;
      padding: 0.7rem 0.4rem;
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 10px;
      background: rgba(9, 16, 26, 0.35);
      color: rgba(255, 255, 255, 0.88);
      cursor: pointer;
      appearance: none;
      font-family: var(--font-sans);
      transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
      transform: none;
      box-shadow: none;
      width: auto;
      height: auto;
      position: static;
      top: auto;
      left: auto;
    }

    .hero-panel .hero-node i {
      font-size: 1.05rem;
      color: rgba(255, 255, 255, 0.7);
      transition: color 0.15s ease;
      transform: none !important;
    }

    .hero-panel .hero-node span {
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.01em;
      line-height: 1.1;
    }

    .hero-panel .hero-node:hover,
    .hero-panel .hero-node:focus-visible {
      outline: none;
      background: rgba(255, 255, 255, 0.07);
      border-color: rgba(255, 255, 255, 0.28);
      transform: none;
      box-shadow: none;
    }

    .hero-panel .hero-node.is-active {
      background: rgba(255, 255, 255, 0.1);
      border-color: rgba(184, 122, 10, 0.65);
      box-shadow: none;
    }

    .hero-panel .hero-node.is-active i,
    .hero-panel .hero-node:hover i {
      color: var(--color-accent);
      transform: none !important;
    }

    .hero-panel-body {
      margin-top: 0.9rem;
      padding: 0.95rem 1rem;
      border-radius: 10px;
      background: rgba(9, 16, 26, 0.45);
      border: 1px solid rgba(255, 255, 255, 0.08);
      text-align: left;
      transition: opacity 0.15s ease;
    }

    .hero-panel-body.is-updating {
      opacity: 0.55;
    }

    .hero-panel-body strong {
      display: block;
      font-family: var(--font-display);
      font-size: 1rem;
      font-weight: 650;
      letter-spacing: -0.01em;
      margin-bottom: 0.3rem;
      color: #fff;
    }

    .hero-panel-body p {
      margin: 0;
      font-size: 0.9rem;
      line-height: 1.45;
      color: rgba(255, 255, 255, 0.72);
      opacity: 1;
    }

    .hero-panel .hero-node:nth-child(4),
    .hero-panel .hero-node:nth-child(5) {
      grid-column: span 1;
    }

    @media (min-width: 420px) {
      .hero-panel-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
      }

      .hero-panel .hero-node {
        min-height: 92px;
      }
    }

    @media (max-width: 991.98px) {
      .navbar-custom > .container {
        flex-wrap: wrap;
      }

      .navbar-custom .navbar-collapse {
        flex-basis: 100%;
        width: 100%;
      }

      .navbar-custom .navbar-nav {
        align-items: stretch;
        padding-top: 0.5rem;
      }

      .navbar-custom .nav-link {
        padding: 0.7rem 0.15rem !important;
      }
    }

    /* Header actions: desktop only */
    .btn-desktop {
      display: none;
    }

    @media (min-width: 992px) {
      .btn-desktop,
      .btn-desktop.header-actions {
        display: flex;
      }
    }

    #recursos,
    #planos {
      scroll-margin-top: 90px;
    }
	  .banner {
      background: var(--gradient-brand);
      color: white;
      padding: 72px 20px 64px;
      position: relative;
      overflow: hidden;
      isolation: isolate;
    }

    .banner::before {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      opacity: 0.22;
      mix-blend-mode: soft-light;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
      background-size: 160px 160px;
    }

    .banner::after {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      background: linear-gradient(180deg, rgba(9, 16, 26, 0.08), transparent 42%, rgba(9, 16, 26, 0.22));
    }
    .banner > .container {
      position: relative;
      z-index: 1;
    }

    .banner > .container > .row {
      justify-content: space-between !important;
    }

    .banner h1 {
      font-size: clamp(2rem, 3.5vw, 2.85rem);
      font-weight: 600;
      line-height: 1.12;
      letter-spacing: -0.03em;
      margin: 0;
      max-width: 14ch;
      color: #FFFFFF;
      text-wrap: balance;
    }

    .banner p.lead,
    .banner .hero-lead {
      font-size: 1.05rem;
      margin-top: 1rem;
      margin-bottom: 0;
      opacity: 1;
    }

    .banner .hero-actions {
      margin-top: 1.5rem;
    }

    .banner .hero-actions .btn-whatsapp,
    .banner .btn-whatsapp {
      margin-top: 0;
      background-color: rgba(15, 23, 42, 0.14);
      color: #FFFFFF;
      border: 1px solid rgba(255, 255, 255, 0.68);
      border-radius: var(--radius-button);
      font-weight: 600;
      padding: 0.75rem 1.5rem;
      box-shadow: none;
      transition: all 0.3s ease;
    }

    .banner .hero-actions .btn-whatsapp:hover,
    .banner .btn-whatsapp:hover {
      background-color: rgba(15, 23, 42, 0.24);
      color: #FFFFFF;
      border-color: rgba(255, 255, 255, 0.92);
      transform: none;
    }

    .banner-img img {
      max-width: 100%;
      height: auto;
      border-radius: 10px;
      box-shadow: 0 24px 54px rgba(6, 47, 61, 0.26);
    }

    .hero-icons-panel {
      position: relative;
      display: block;
      width: min(100%, 430px);
      min-height: 430px;
      margin: 0 auto;
      padding: 2rem;
      border: 1px solid rgba(255, 255, 255, 0.22);
      border-radius: 50%;
      background:
        radial-gradient(circle at center, rgba(255, 255, 255, 0.18), transparent 58%),
        rgba(255, 255, 255, 0.08);
      box-shadow: 0 28px 70px rgba(14, 69, 84, 0.2);
      backdrop-filter: blur(14px);
    }

    .hero-icons-panel::before {
      content: '';
      position: absolute;
      inset: 14%;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.22);
      background: transparent;
      pointer-events: none;
    }

    .hero-icons-core {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 0.55rem;
      width: 148px;
      height: 148px;
      padding: 1rem;
      border-radius: 50%;
      background-color: #FFFFFF;
      color: var(--color-primary-800);
      box-shadow: 0 18px 38px rgba(14, 69, 84, 0.18);
      font-weight: 600;
      z-index: 2;
    }

    .hero-icons-core i {
      color: var(--color-primary);
      font-size: 1.55rem;
    }

    .hero-icons-core span {
      max-width: 100px;
      font-size: 0.9rem;
      line-height: 1.25;
    }

    .hero-module-card {
      position: absolute;
      z-index: 2;
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 0.35rem;
      width: 92px;
      height: 92px;
      padding: 0;
      border: 1px solid rgba(255, 255, 255, 0.22);
      border-radius: 24px;
      background: rgba(255, 255, 255, 0.9);
      color: var(--color-text);
      text-align: center;
      box-shadow: 0 16px 34px rgba(14, 69, 84, 0.14);
      transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;
      cursor: pointer;
      font-family: var(--font-display);
      appearance: none;
    }

    .hero-module-card i {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: auto;
      height: auto;
      border-radius: 0;
      background-color: transparent;
      color: var(--color-primary);
      font-size: 1.3rem;
      transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease;
    }

    .hero-module-card span {
      display: block;
    }

    .hero-module-card span {
      color: var(--color-primary-900);
      font-size: 0.75rem;
      font-weight: 600;
      line-height: 1.1;
    }

    .hero-module-primary {
      background: #FFFFFF;
      border-color: rgba(184, 122, 10, 0.55);
    }

    .hero-module-card:nth-of-type(1) {
      top: 8%;
      left: 50%;
      transform: translateX(-50%);
    }

    .hero-module-card:nth-of-type(2) {
      top: 24%;
      right: 4%;
    }

    .hero-module-card:nth-of-type(3) {
      right: 10%;
      bottom: 10%;
    }

    .hero-module-card:nth-of-type(4) {
      left: 10%;
      bottom: 10%;
    }

    .hero-module-card:nth-of-type(5) {
      top: 24%;
      left: 4%;
    }

    .hero-module-card:hover,
    .hero-module-card:focus {
      outline: none;
      border-color: rgba(184, 122, 10, 0.7);
      background: #FFFFFF;
      box-shadow: 0 22px 46px rgba(14, 69, 84, 0.2);
    }

    .hero-module-card:hover i,
    .hero-module-card:focus i {
      color: var(--color-primary-900);
      transform: scale(1.14) rotate(-4deg);
    }

    .banner > .container > .row > .col-12.col-lg-5.text-center > img {
      max-width: 100% !important;
      height: auto;
      border-radius: 10px;
      box-shadow: 0 24px 54px rgba(6, 47, 61, 0.26) !important;
    }

    @media (min-width: 992px) {
      .banner {
        padding: 96px 40px 88px;
      }

      .banner > .container > .row {
        justify-content: space-between !important;
      }

      .banner-content {
        display: flex;
        align-items: center;
        gap: 60px;
      }

      .banner-text {
        flex: 1;
        max-width: 600px;
      }

      .banner-img {
        flex: 1;
        display: flex;
        justify-content: center;
      }

      .hero-visual {
        max-width: 100%;
      }

      .hero-panel {
        width: 100%;
        max-width: 440px;
        margin-left: auto;
      }
    }

    @media (max-width: 991.98px) {
      .banner {
        padding: 52px 16px 48px;
      }

      .hero-visual {
        margin-top: 0.5rem;
        max-width: 420px;
      }

      .hero-lead {
        margin-left: auto;
        margin-right: auto;
      }

      .banner h1 {
        max-width: none;
      }

      .hero-panel {
        max-width: 480px;
      }
    }

    @media (max-width: 575.98px) {
      .hero-panel {
        padding: 1rem;
      }

      .hero-panel-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .hero-icons-panel {
        width: min(100%, 340px);
        min-height: 340px;
        padding: 1rem;
      }

      .hero-icons-core {
        width: 118px;
        height: 118px;
      }

      .hero-module-card {
        width: 76px;
        height: 76px;
        border-radius: 20px;
      }

      .hero-module-card i {
        font-size: 1.05rem;
      }

      .hero-module-card span {
        font-size: 0.68rem;
      }

      .hero-module-card {
        min-height: auto;
      }
    }
	/* === Footer === */
.footer-custom {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, transparent 28%),
    #09101a;
  color: rgba(255, 255, 255, 0.78);
  padding-top: 3.75rem;
  padding-bottom: 1.5rem;
  border-top: 3px solid var(--color-accent);
}

.footer-main {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
  gap: 2.25rem 2rem;
  align-items: start;
}

.footer-brand-block {
  max-width: 22rem;
}

.footer-logo {
  display: inline-block;
  margin-bottom: 1rem;
  line-height: 0;
}

.footer-logo img {
  display: block;
  height: 38px;
  width: auto;
}

.footer-title {
  margin: 0 0 1rem;
  color: #FFFFFF;
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.footer-text {
  margin: 0 0 1.15rem;
  font-size: 0.92rem;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.68);
}

.footer-nav {
  margin: 0;
  padding: 0;
}

.footer-nav li {
  margin-bottom: 0.55rem;
}

.footer-nav li:last-child {
  margin-bottom: 0;
}

.footer-link {
  color: rgba(255, 255, 255, 0.68);
  text-decoration: none;
  font-size: 0.92rem;
  line-height: 1.35;
  display: inline-block;
  transition: color 0.15s ease;
}

.footer-link:hover {
  color: #FFFFFF;
}

.footer-contact li {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin-bottom: 0.85rem;
  font-size: 0.9rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.68);
}

.footer-contact li:last-child {
  margin-bottom: 0;
}

.footer-contact i {
  margin-top: 0.28rem;
  color: var(--color-accent);
  width: 0.95rem;
  text-align: center;
  flex: 0 0 auto;
  font-size: 0.82rem;
}

.footer-contact .footer-link {
  display: inline;
  font-size: inherit;
}

.footer-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-bottom: 1.1rem;
}

.footer-cta-row .btn {
  border-radius: var(--radius-button);
  font-weight: 650;
}

.btn-footer-ghost {
  background: transparent;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.28);
  box-shadow: none;
}

.btn-footer-ghost:hover,
.btn-footer-ghost:focus {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.48);
  color: #FFFFFF !important;
}

.footer-social-row {
  display: flex;
  gap: 0.5rem;
}

.footer-social {
  width: 2.1rem;
  height: 2.1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.03);
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.82rem;
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
  text-decoration: none;
}

.footer-social:hover {
  color: #FFFFFF;
  border-color: rgba(184, 122, 10, 0.55);
  background: rgba(184, 122, 10, 0.16);
}

.footer-highlights {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 2.25rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.75rem;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
}

.footer-chip:hover {
  color: #FFFFFF;
  border-color: rgba(184, 122, 10, 0.45);
  background: rgba(184, 122, 10, 0.14);
}

.footer-sitemap-details {
  margin-top: 1.35rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
  overflow: hidden;
}

.footer-sitemap-summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.9rem 1.1rem;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.86rem;
  font-weight: 650;
  user-select: none;
}

.footer-sitemap-summary::-webkit-details-marker {
  display: none;
}

.footer-sitemap-summary i {
  color: var(--color-accent);
  font-size: 0.75rem;
  transition: transform 0.2s ease;
}

.footer-sitemap-details[open] .footer-sitemap-summary {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
}

.footer-sitemap-details[open] .footer-sitemap-summary i {
  transform: rotate(180deg);
}

.footer-sitemap {
  padding: 1.25rem 1.1rem 1.4rem;
}

.footer-sitemap-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.35rem 1.1rem;
}

.footer-sitemap-grid > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
}

.footer-sitemap .footer-sitemap-heading {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.65rem;
}

.footer-sitemap .footer-link {
  display: block;
  font-size: 0.78rem;
  margin-bottom: 0.28rem;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.48);
}

.footer-sitemap .footer-link:hover {
  color: var(--color-accent);
}

.footer-sitemap-col {
  margin-bottom: 0;
}

.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem 1.5rem;
  margin-top: 1.5rem;
  padding-top: 1.15rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-copyright {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.42);
}

.btn-whatsapp-footer {
  background-color: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.55);
  font-weight: 650;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.btn-whatsapp-footer:hover {
  background-color: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.85);
  transform: none;
  color: #FFFFFF;
}

@media (max-width: 991.98px) {
  .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer-brand-block {
    grid-column: 1 / -1;
    max-width: none;
  }

  .footer-sitemap-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .footer-custom {
    padding-top: 3rem;
  }

  .footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 1.75rem 1.25rem;
  }

  .footer-col-contact {
    grid-column: 1 / -1;
  }

  .footer-sitemap-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* === Features section === */
.features-section {
  background: var(--color-background);
  position: relative;
  overflow: hidden;
}

.features-section .container {
  position: relative;
  z-index: 1;
}

.features-heading {
  max-width: 760px;
  margin-right: auto;
  margin-left: auto;
}

.section-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.7rem;
  margin-bottom: 0.9rem;
  border-radius: 4px;
  background-color: var(--color-accent-soft);
  color: var(--color-accent-hover);
  border: 1px solid rgba(184, 122, 10, 0.28);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.features-heading .section-title {
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
}

.features-heading .section-subtitle {
  max-width: 640px;
}

.feature-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
}

.feature-proof {
  padding: 1rem 1.1rem;
  border: 1.5px solid var(--color-border);
  border-radius: 10px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
  backdrop-filter: none;
}

.feature-proof strong,
.feature-proof span {
  display: block;
}

.feature-proof strong {
  color: var(--color-text);
  font-size: 0.98rem;
  margin-bottom: 0.25rem;
  font-weight: 700;
}

.feature-proof span {
  color: var(--color-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.section-title {
  color: var(--color-text);
}

.section-subtitle {
  color: var(--color-muted);
}

.text-success {
  color: var(--color-primary) !important;
}

.bg-success {
  background-color: var(--color-primary) !important;
}

/* === Feature cards === */
.feature-card {
  position: relative;
  overflow: hidden;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  height: 100%;
  padding: 1.35rem 1.35rem 1.2rem;
  border-radius: 12px !important;
  text-align: left;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
  display: flex;
  flex-direction: column;
}

.feature-card::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: var(--color-accent);
  opacity: 0.85;
  transition: opacity 0.15s ease;
}

.feature-card-highlight::before,
.feature-card:hover::before {
  opacity: 1;
}

.feature-card:hover {
  transform: none;
  border-color: rgba(184, 122, 10, 0.45);
  box-shadow: 0 10px 26px rgba(9, 16, 26, 0.1) !important;
}

.feature-tag {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.25rem 0.55rem;
  margin-bottom: 0.85rem;
  border-radius: 4px;
  background-color: var(--color-accent-soft);
  color: var(--color-accent-hover);
  border: 1px solid rgba(184, 122, 10, 0.28);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.feature-icon {
  width: 42px;
  height: 42px;
  font-size: 1.05rem;
  color: var(--color-accent);
  background: var(--color-accent-soft);
  border: 1px solid rgba(184, 122, 10, 0.22);
  border-radius: 8px;
  margin: 0 0 0.9rem 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: none;
}

.feature-card:hover .feature-icon {
  background-color: var(--color-accent);
  color: #ffffff;
  border-color: var(--color-accent);
  transform: none;
}

.features-section .card-title,
.features-section .card-text {
  text-align: left !important;
}

.features-section .card-title {
  font-size: 1.08rem;
  line-height: 1.35;
  font-weight: 700 !important;
  color: var(--color-text);
  margin-bottom: 0.55rem !important;
}

.features-section .card-text {
  margin-bottom: 1rem;
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--color-muted);
}

.feature-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: auto;
  padding-top: 0.9rem;
  border-top: 1.5px solid var(--color-border);
  color: var(--color-accent-hover);
  font-size: 0.86rem;
  font-weight: 700;
}

.feature-card-footer i {
  color: var(--color-accent);
  transition: color 0.15s ease;
  transform: none !important;
}

.feature-card:hover .feature-card-footer i {
  color: var(--color-accent-hover);
  transform: none !important;
}

.features-cta {
  padding: 1.5rem 1.6rem;
  border: 1.5px solid var(--color-border);
  border-radius: 12px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.features-cta p {
  color: var(--color-text);
  font-weight: 600;
}

.features-cta-note {
  font-weight: 500 !important;
  font-size: 0.95rem;
}

.btn-features-secondary {
  background: transparent;
  color: var(--color-text) !important;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-button);
  font-weight: 600;
  box-shadow: none;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.btn-features-secondary:hover,
.btn-features-secondary:focus {
  background: var(--color-background);
  border-color: rgba(184, 122, 10, 0.45);
  color: var(--color-text) !important;
}

/* === Ícones padronizados para visual SaaS/tecnologia === */
.icon-blue,
.icon-green,
.icon-orange,
.icon-red,
.icon-whatsapp,
.icon-cloud,
.icon-chart,
.icon-calendar,
.icon-balance {
  background: var(--color-primary-soft);
  color: var(--color-primary);
}

/* === Título e texto centralizados === */
.card-title,
.card-text {
  text-align: center !important;
}

/* === Botão personalizado === */
.btn-primary-custom {
  background-color: var(--color-primary);
  color: white;
  border: none;
  font-weight: bold;
  transition: all 0.3s ease;
}

.btn-primary-custom:hover {
  background-color: var(--color-primary-800);
  color: white;
  transform: translateY(-2px);
  text-decoration: none;
}
/* Estilização do botão primário */
.btn-primary {
  background-color: var(--color-primary);
  color: #fff;
  border: none;
  font-weight: bold;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

/* Efeito hover - azul */
.btn-primary:hover {
  background-color: var(--color-primary-800);
  color: #fff;
  transform: translateY(-2px);
  text-decoration: none;
}

/* Opcional: Sombra suave */
.btn-primary:focus,
.btn-primary:active {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(14, 116, 144, 0.24);
}
.seo-section {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: var(--color-background);
}

.seo-section .section-eyebrow {
  margin-bottom: 0.85rem;
}

.seo-title {
  max-width: 34rem;
  color: var(--color-text);
}

.seo-lead {
  font-size: 1.08rem;
  line-height: 1.55;
  color: var(--color-muted);
}

.seo-lead strong {
  color: var(--color-text);
  font-weight: 700;
}

.seo-text {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--color-muted);
  margin-bottom: 0;
}

.seo-list {
  margin: 0;
  padding: 0;
}

.seo-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin-bottom: 0.75rem;
  color: var(--color-text);
  font-size: 0.96rem;
  line-height: 1.45;
}

.seo-list li:last-child {
  margin-bottom: 0;
}

.seo-list i {
  flex: 0 0 auto;
  margin-top: 0.2rem;
  width: 1.15rem;
  height: 1.15rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--color-accent-soft);
  color: var(--color-accent-hover);
  font-size: 0.65rem;
}

.seo-list strong {
  font-weight: 700;
  color: var(--color-text);
}

.seo-actions .btn {
  min-width: 10.5rem;
}

.seo-media {
  margin: 0;
  padding: 0.85rem;
  border: 1.5px solid var(--color-border);
  border-radius: 14px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.seo-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  border: 1px solid var(--color-border);
  transition: none;
}

.seo-caption {
  margin: 0.75rem 0 0;
  padding: 0 0.15rem;
  color: var(--color-muted);
  font-size: 0.9rem;
  line-height: 1.4;
  text-align: left;
}

/* === Segmentos section === */
.segmentos-section {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background: var(--color-background);
  position: relative;
  overflow: hidden;
}

.segmentos-section .container {
  position: relative;
  z-index: 1;
}

.segmentos-heading {
  max-width: 760px;
  margin-right: auto;
  margin-left: auto;
}

.segmentos-title {
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
  line-height: 1.2;
  color: var(--color-text);
}

.segmentos-subtitle {
  max-width: 640px;
  color: var(--color-muted);
}

.segmentos-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
}

.segmentos-proof > div {
  padding: 1rem 1.1rem;
  border: 1.5px solid var(--color-border);
  border-radius: 10px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.segmentos-proof strong,
.segmentos-proof span {
  display: block;
}

.segmentos-proof strong {
  margin-bottom: 0.25rem;
  color: var(--color-text);
  font-size: 0.98rem;
  font-weight: 700;
}

.segmentos-proof span {
  color: var(--color-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.segmento-card {
  position: relative;
  overflow: hidden;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  height: 100%;
  padding: 1.35rem 1.35rem 1.2rem;
  text-align: left;
  border-radius: 12px !important;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
  display: flex;
  flex-direction: column;
}

.segmento-card::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: var(--color-accent);
  opacity: 0.85;
  transition: opacity 0.15s ease;
}

.segmento-card-featured::before,
.segmento-card:hover::before {
  opacity: 1;
}

.segmento-card:hover {
  transform: none;
  border-color: rgba(184, 122, 10, 0.45);
  box-shadow: 0 10px 26px rgba(9, 16, 26, 0.1) !important;
}

.segmentos-section .segmento-card .card-title,
.segmentos-section .segmento-card .card-text {
  text-align: left !important;
}

.segmentos-section .segmento-card .card-title {
  font-size: 1.08rem;
  line-height: 1.35;
  font-weight: 700 !important;
  color: var(--color-text);
}

.segmentos-section .segmento-card .card-text {
  font-size: 0.95rem;
  line-height: 1.55;
}

.segmento-label {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.25rem 0.55rem;
  margin-bottom: 0.85rem;
  border-radius: 4px;
  background-color: var(--color-accent-soft);
  color: var(--color-accent-hover);
  border: 1px solid rgba(184, 122, 10, 0.28);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.segmento-icon {
  width: 42px;
  height: 42px;
  font-size: 1.05rem;
  color: var(--color-accent);
  background: var(--color-accent-soft);
  border: 1px solid rgba(184, 122, 10, 0.22);
  border-radius: 8px;
  margin: 0 0 0.9rem 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: none;
}

.segmento-card:hover .segmento-icon {
  background-color: var(--color-accent);
  color: #ffffff;
  border-color: var(--color-accent);
  transform: none;
}

.segmento-benefits {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
}

.segmento-benefits li {
  position: relative;
  padding-left: 1.15rem;
  margin-bottom: 0.45rem;
  color: var(--color-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.segmento-benefits li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--color-accent);
}

.segmento-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: auto;
  color: var(--color-accent-hover);
  font-size: 0.88rem;
  font-weight: 700;
  text-decoration: none;
}

.segmento-link i {
  color: var(--color-accent);
  font-size: 0.75rem;
  transition: color 0.15s ease;
  transform: none !important;
}

.segmento-link:hover {
  color: var(--color-accent-hover);
}

.segmento-link:hover i,
.segmento-card:hover .segmento-link i {
  color: var(--color-accent-hover);
  transform: none !important;
}

.segmentos-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.5rem 1.6rem;
  border: 1.5px solid var(--color-border);
  border-radius: 12px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.segmentos-cta-copy {
  max-width: 640px;
}

.segmentos-cta span,
.segmentos-cta strong {
  display: block;
}

.segmentos-cta span {
  color: var(--color-muted);
  font-size: 0.9rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.segmentos-cta strong {
  color: var(--color-text);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 0;
}

.segmentos-cta-actions .btn {
  min-width: 10.5rem;
  white-space: nowrap;
}

@media (max-width: 991.98px) {
  .segmentos-proof {
    grid-template-columns: 1fr;
  }

  .segmentos-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 575.98px) {
  .segmentos-cta {
    padding: 1.25rem;
  }
}

/* Ícones de segmentos padronizados para reduzir ruído visual */
.icon-celular,
.icon-informatica,
.icon-refrigeracao,
.icon-oficina,
.icon-servico,
.icon-eletronico,
.icon-arcondicionado,
.icon-eletrodomestico,
.icon-industrial {
  background-color: var(--color-primary);
}
.faq-section {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: var(--color-background);
}

.faq-heading {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.faq-subtitle {
  max-width: 540px;
  color: var(--color-muted);
}

.faq-section .accordion {
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

.accordion-item {
  border: 1.5px solid var(--color-border) !important;
  border-radius: 10px !important;
  overflow: hidden;
  margin-bottom: 0.65rem;
  background: var(--color-surface);
}

.accordion-button {
  font-weight: 700;
  font-size: 0.98rem;
  color: var(--color-text);
  background: var(--color-surface);
  box-shadow: none !important;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.accordion-button:not(.collapsed) {
  background: var(--color-accent-soft);
  color: var(--color-accent-hover) !important;
  box-shadow: none;
}

.accordion-button:focus {
  box-shadow: none;
  border: none;
}

.accordion-button::after {
  filter: none;
}

.accordion-body {
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--color-muted);
  background: var(--color-surface);
}

.faq-cta {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  padding: 1.5rem 1.6rem;
  border: 1.5px solid var(--color-border);
  border-radius: 12px;
  background: var(--color-surface);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.faq-cta-title {
  margin: 0;
  color: var(--color-text);
  font-weight: 700;
  font-size: 1.05rem;
}

.faq-cta-note {
  font-size: 0.95rem;
  font-weight: 500;
}

.slogan-section {
  padding-top: 3.25rem;
  padding-bottom: 3.25rem;
  background: var(--gradient-brand) !important;
  color: #FFFFFF;
  position: relative;
  overflow: hidden;
}

.slogan-eyebrow {
  display: inline-block;
  margin: 0 0 0.75rem;
  padding: 0.3rem 0.65rem;
  border: 1px solid rgba(184, 122, 10, 0.45);
  border-radius: 4px;
  background: rgba(184, 122, 10, 0.16);
  color: #f0d59a;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.slogan-title {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  color: #FFFFFF !important;
}

.slogan-text {
  font-size: 1.05rem;
  line-height: 1.55;
  max-width: 560px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.88);
}

.slogan-actions .btn {
  min-width: 10.5rem;
}

.btn-slogan-primary {
  background-color: var(--color-accent) !important;
  color: #FFFFFF !important;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-button);
  font-weight: 650;
  box-shadow: none;
}

.btn-slogan-primary:hover,
.btn-slogan-primary:focus {
  background-color: var(--color-accent-hover) !important;
  border-color: var(--color-accent-hover);
  color: #FFFFFF !important;
  transform: none;
  box-shadow: none;
}

.btn-slogan-secondary {
  background: transparent;
  color: #FFFFFF !important;
  border: 1.5px solid rgba(255, 255, 255, 0.35);
  border-radius: var(--radius-button);
  font-weight: 600;
  box-shadow: none;
}

.btn-slogan-secondary:hover,
.btn-slogan-secondary:focus {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.55);
  color: #FFFFFF !important;
}

.slogan-section .btn-whatsapp {
  background-color: #FFFFFF;
  color: var(--color-primary-900) !important;
  border-color: #FFFFFF;
  box-shadow: none;
  border-radius: var(--radius-button);
  font-weight: 650;
}

.slogan-section .btn-whatsapp:hover,
.slogan-section .btn-whatsapp:focus {
  background-color: var(--color-accent);
  color: var(--color-primary-900) !important;
  border-color: var(--color-accent);
  transform: none;
  box-shadow: none;
}

.btn-outline-light {
  border-color: white;
  color: white;
  font-weight: bold;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.btn-outline-light:hover {
  background-color: white;
  color: var(--color-primary);
  border-color: white;
}
.plans-section {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: var(--color-surface);
}

.plans-heading {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.plans-heading .section-subtitle {
  max-width: 540px;
}

.plan-card {
  display: flex;
  flex-direction: column;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  position: relative;
  padding: 1.75rem 1.5rem 1.5rem;
  border-radius: 12px !important;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04);
}

.plan-card:hover {
  transform: none;
  border-color: rgba(184, 122, 10, 0.45);
  box-shadow: 0 10px 26px rgba(9, 16, 26, 0.1) !important;
}

.plan-badge {
  display: inline-flex;
  align-self: center;
  margin: 0 auto 1.1rem;
  padding: 0.35rem 0.75rem;
  border-radius: 4px;
  background: var(--color-accent);
  color: #FFFFFF;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.plan-header {
  margin-bottom: 1.35rem;
}

.plan-title {
  margin: 0 0 0.5rem;
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--color-text);
}

.plan-description {
  margin: 0 auto 1.15rem;
  max-width: 28rem;
  font-size: 0.95rem;
  line-height: 1.5;
  color: var(--color-muted);
}

.plan-price {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0.15rem;
  color: var(--color-text);
  line-height: 1;
}

.plan-currency {
  margin-top: 0.45rem;
  font-size: 1.05rem;
  font-weight: 700;
}

.plan-amount {
  font-size: 3rem;
  font-weight: 600;
  letter-spacing: -0.03em;
  font-family: var(--font-display);
}

.plan-cents {
  margin-top: 0.55rem;
  font-size: 1.15rem;
  font-weight: 700;
}

.plan-period {
  margin: 0.55rem 0 0;
  color: var(--color-muted);
  font-size: 0.9rem;
}

.plan-features {
  list-style: none;
  margin: 0 0 1.35rem;
  padding: 1.1rem 0 0;
  border-top: 1.5px solid var(--color-border);
}

.plan-features li {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin-bottom: 0.7rem;
  color: var(--color-text);
  font-size: 0.95rem;
  line-height: 1.4;
}

.plan-features li:last-child {
  margin-bottom: 0;
}

.plan-features i {
  flex: 0 0 auto;
  margin-top: 0.15rem;
  width: 1.15rem;
  height: 1.15rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--color-accent-soft);
  color: var(--color-accent-hover);
  font-size: 0.65rem;
}

.plan-actions {
  margin-top: auto;
  display: grid;
  gap: 0.75rem;
}

.plan-note {
  margin: 0.15rem 0 0;
  text-align: center;
  color: var(--color-muted);
  font-size: 0.86rem;
  line-height: 1.4;
}

/* Badge legado */
.badge.bg-warning {
  letter-spacing: 0.04em;
  font-size: 0.85rem;
  z-index: 10;
}

/* Botões personalizados */
.btn-success {
  background-color: var(--color-primary);
  color: white;
  border: none;
  font-weight: bold;
  transition: all 0.3s ease;
}
.btn-success:hover {
  background-color: var(--color-primary-800);
  color: white;
}

.btn-outline-success {
  border-color: var(--color-primary);
  color: var(--color-primary);
  font-weight: bold;
}
.btn-outline-success:hover {
  background-color: var(--color-primary);
  color: white;
  border-color: var(--color-primary);
}
/* === Botão flutuante do WhatsApp - sempre visível === */
.whatsapp-float {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: var(--color-whatsapp);
  color: #ffffff !important;
  width: auto;
  height: 50px;
  padding: 12px 20px;
  border-radius: 50px;
  z-index: 1030;
  box-shadow: 0 12px 28px rgba(37, 211, 102, 0.32);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.whatsapp-float:hover,
.whatsapp-float:focus {
  background-color: var(--color-whatsapp-hover);
  transform: translateY(-3px);
  text-decoration: none;
}

/* === Ícone do WhatsApp (sempre visível) === */
.whatsapp-float .whatsapp-icon {
  font-size: 1.4rem;
  color: #ffffff;
  transition: transform 0.3s ease;
}

.whatsapp-float:hover .whatsapp-icon {
  transform: rotate(10deg);
}

/* === Texto do WhatsApp (sempre visível) === */
.whatsapp-float .whatsapp-text {
  font-size: 1rem;
  color: #ffffff;
  white-space: nowrap;
}

/* === Refinamentos globais de cards === */
.features-section.bg-light {
  background-color: var(--color-background) !important;
}

.feature-card.card,
.segmento-card.card,
.plan-card.card {
  border: 1.5px solid var(--color-border) !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 0 rgba(9, 16, 26, 0.04) !important;
}

.feature-card.card:hover,
.segmento-card.card:hover,
.plan-card.card:hover {
  border-color: rgba(184, 122, 10, 0.45) !important;
  box-shadow: 0 10px 26px rgba(9, 16, 26, 0.1) !important;
}

.feature-card .card-title,
.segmento-card .card-title,
.plan-card .card-title,
.resource-title {
  color: var(--color-text) !important;
}

.feature-card .card-text,
.segmento-card .card-text,
.plan-description,
.section-subtitle.text-muted,
.lead.text-muted {
  color: var(--color-muted) !important;
}

.feature-icon,
.segmento-icon,
.resource-icon,
.resource-icon.bg-success,
.celular-section .feature-icon,
.celular-section .feature-icon.bg-success {
  background-color: var(--color-accent-soft) !important;
  color: var(--color-accent) !important;
  border: 1px solid rgba(184, 122, 10, 0.22) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

.segmento-icon,
.resource-icon.bg-success,
.celular-section .feature-icon.bg-success {
  background-color: var(--color-accent-soft) !important;
  color: var(--color-accent) !important;
}

.badge.bg-warning {
  background-color: var(--color-accent) !important;
  color: #FFFFFF !important;
  border-radius: 4px;
  box-shadow: none;
  letter-spacing: 0.04em;
  font-weight: 650;
}

.btn-primary,
.btn-success,
.text-section .btn-success {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #FFFFFF !important;
  border-radius: var(--radius-button) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus,
.text-section .btn-success:hover,
.text-section .btn-success:focus {
  background-color: var(--color-primary-800) !important;
  border-color: var(--color-primary-800) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
}

.btn-outline-success {
  border-color: var(--color-primary) !important;
  color: var(--color-primary) !important;
  border-radius: var(--radius-button) !important;
}

.btn-outline-success:hover,
.btn-outline-success:focus {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #FFFFFF !important;
}

.btn-outline-light {
  border-color: rgba(255, 255, 255, 0.78) !important;
  color: #FFFFFF !important;
  border-radius: var(--radius-button) !important;
}

.btn-outline-light:hover,
.btn-outline-light:focus {
  background-color: #FFFFFF !important;
  border-color: #FFFFFF !important;
  color: var(--color-primary-800) !important;
}

.text-section,
.celular-section,
.cloud-section,
.mecanica-section,
.informatica-section,
.informatica-feature-section {
  background-color: var(--color-surface) !important;
  color: var(--color-text) !important;
}

.text-section h2,
.text-section .section-title,
.celular-section .section-title,
.cloud-section .section-title,
.mecanica-section .section-title,
.informatica-section .section-title,
.informatica-feature-section .section-title {
  color: var(--color-primary-800) !important;
}

.text-section .section-title::after,
.celular-section .section-title::after,
.cloud-section .section-title::after,
.mecanica-section .section-title::after,
.informatica-section .section-title::after,
.informatica-feature-section .section-title::after {
  background: var(--color-accent) !important;
  background-color: var(--color-accent) !important;
}

.text-section h3,
.text-section h4,
.text-section strong,
.celular-section .feature-title,
.informatica-section .feature-title,
.informatica-feature-section .feature-title {
  color: var(--color-primary) !important;
}

.text-section p,
.celular-section .section-intro,
.celular-section .feature-text,
.cloud-section .section-subtitle,
.mecanica-section .section-subtitle,
.informatica-section .section-subtitle,
.informatica-feature-section .section-subtitle,
.informatica-section .feature-text,
.informatica-feature-section .feature-text,
.resource-text {
  color: var(--color-muted) !important;
}

.text-section .table-head {
  background-color: var(--color-primary-soft) !important;
  color: var(--color-primary-800) !important;
}

.text-section .alert-success {
  background-color: var(--color-primary-soft) !important;
  border-left-color: var(--color-primary) !important;
  color: var(--color-primary-800) !important;
}

body .text-section .btn-success,
body .mecanica-section .btn-success,
body .celular-section .btn-success,
body .cloud-section .btn-success,
body .informatica-section .btn-success,
body .informatica-feature-section .btn-success {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 24px rgba(14, 69, 84, 0.18) !important;
}

body .text-section .btn-success:hover,
body .text-section .btn-success:focus,
body .mecanica-section .btn-success:hover,
body .mecanica-section .btn-success:focus,
body .celular-section .btn-success:hover,
body .celular-section .btn-success:focus,
body .cloud-section .btn-success:hover,
body .cloud-section .btn-success:focus,
body .informatica-section .btn-success:hover,
body .informatica-section .btn-success:focus,
body .informatica-feature-section .btn-success:hover,
body .informatica-feature-section .btn-success:focus {
  background-color: var(--color-primary-800) !important;
  border-color: var(--color-primary-800) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
}

.features-section .feature-card:hover .feature-icon {
  background-color: var(--color-accent) !important;
  color: #ffffff !important;
  border-color: var(--color-accent) !important;
  transform: none !important;
}

@media (max-width: 767.98px) {
  .feature-proof-grid {
    grid-template-columns: 1fr;
  }

  .features-cta {
    padding: 1.5rem;
  }
}
