:root {
  --qbit-blue: #1873B9;
  --qbit-blue-strong: #1873B9;
  --qbit-navy: #001a3d;
  --qbit-navy-2: #00234e;
  --qbit-text: #0c2446;
  --qbit-muted: #5d6d82;
  --qbit-soft: #f1f7ff;
  --qbit-line: #dce8f5;
  --white: #fff;
  --header-height: 74px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  color: var(--qbit-text);
  background: #fff;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; }
a { text-decoration: none; }
.section-anchor { scroll-margin-top: var(--header-height); }
.section { padding: 84px 0; }
.section-soft-blue { background: linear-gradient(90deg, #f7fbff 0%, #edf6ff 100%); }
.eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--qbit-blue-strong);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.eyebrow.light { color: #1873B9; }
h1, h2, h3, h4 { color: var(--qbit-navy); font-weight: 800; line-height: 1.12; }
h1 { font-size: clamp(2.25rem, 4.5vw, 4.35rem); letter-spacing: -.04em; }
h2 { font-size: clamp(1.8rem, 3vw, 3.05rem); letter-spacing: -.03em; }
h2 span, h1 span { color: var(--qbit-blue); }
p { color: var(--qbit-muted); }
.btn { border-radius: 4px; font-weight: 700; padding: .78rem 1.3rem; }
.btn-primary { background: var(--qbit-blue-strong); border-color: var(--qbit-blue-strong); }
.btn-dark { background: #001a35; border-color: #001a35; }

/* Header */
.site-header {
  background: rgba(0, 22, 48, .96);
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(12px);
  z-index: 1030;
}
.site-header .navbar { min-height: var(--header-height); padding: .45rem 0; }
.brand-logo { width: 92px; height: 48px; object-fit: contain; object-position: left center; }
.site-header .nav-link {
  position: relative;
  color: rgba(255,255,255,.88);
  font-size: .88rem;
  font-weight: 600;
  padding-left: .65rem !important;
  padding-right: .65rem !important;
}
.site-header .nav-link:hover, .site-header .nav-link.active { color: #fff; }
.site-header .nav-link.active::after {
  content: "";
  position: absolute;
  left: .65rem; right: .65rem; bottom: 1px;
  height: 2px; background: var(--qbit-blue);
}
.nav-cta { font-size: .85rem; padding: .72rem 1.15rem; }

/* Hero */
.hero-section {
  position: relative;
  overflow: hidden;
  padding-top: var(--header-height);
  background-image: url('../images/caminhao-balanca.png');
  background-size: cover;
  background-position: center;
}
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,21,48,.97) 0%, rgba(0,26,59,.86) 48%, rgba(0,20,45,.62) 100%);
}
.hero-content { z-index: 2; }
.min-vh-hero { min-height: 650px; padding: 56px 0 52px; }
.hero-copy h1 { color: #fff; max-width: 700px; }
.hero-lead { color: rgba(255,255,255,.86); max-width: 640px; font-size: 1.08rem; }
.hero-notes { color: rgba(255,255,255,.78); font-size: .82rem; }
.hero-notes i { color: #1873B9; margin-right: .25rem; }
.hero-product-wrap { position: relative; }
.hero-product { filter: drop-shadow(0 24px 34px rgba(0,0,0,.32)); transform: scale(1.07); }
.video-chip {
  position: absolute;
  left: 6%; bottom: 0;
  display: flex; align-items: center; gap: 12px;
  padding: 11px 16px;
  background: rgba(255,255,255,.96);
  color: var(--qbit-text);
  border-radius: 8px;
  box-shadow: 0 8px 25px rgba(0,0,0,.18);
}
.video-chip:hover { color: var(--qbit-blue); }
.play-icon { width: 36px; height: 36px; display:grid; place-items:center; border:1px solid #bad9ff; color:var(--qbit-blue); border-radius:50%; font-size:1.1rem; }
.video-chip strong, .video-chip small { display:block; }
.video-chip strong { font-size:.8rem; }
.video-chip small { font-size:.67rem; color:#718096; }

/* Stats */
.stats-section { padding: 42px 0; background:#fff; border-bottom: 1px solid #eef2f7; }
.stat-item { display:grid; grid-template-columns: 34px auto; grid-template-areas:"icon number" "icon label"; justify-content:center; align-items:center; column-gap:9px; text-align:left !important; }
.stat-item i { grid-area:icon; font-size:1.85rem; color:#244a7d; }
.stat-item strong { grid-area:number; font-size:1.05rem; color:var(--qbit-navy); }
.stat-item span { grid-area:label; font-size:.72rem; color:#66788d; }

/* Problem / video */
.feature-list { list-style:none; padding:0; margin:0; display:grid; gap:16px; }
.feature-list li { display:flex; gap:13px; align-items:flex-start; }
.feature-list i { width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center; color:var(--qbit-blue); border:1px solid #bbd9ff; border-radius:50%; }
.feature-list strong { display:block; font-size:.92rem; color:var(--qbit-text); }
.feature-list small { display:block; color:#738299; margin-top:2px; }
.video-card { position:relative; border-radius:12px; overflow:hidden; box-shadow:0 18px 45px rgba(3,35,68,.14); }
.video-card img { aspect-ratio: 16 / 9; object-fit:cover; }
.video-play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:74px; height:74px; border:0; border-radius:50%; background:rgba(0,28,64,.9); color:white; display:grid; place-items:center; font-size:2rem; box-shadow:0 0 0 8px rgba(255,255,255,.16); }

/* Software */
.floating-product { filter: drop-shadow(0 22px 35px rgba(2,38,77,.12)); }
.check-list { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:10px; }
.check-list li { color:#53657c; }
.check-list i { color:var(--qbit-blue); margin-right:9px; }

/* Workflow */
.workflow-section { padding: 26px 0 72px; border-top:1px solid #edf1f6; }
.section-title { max-width: 820px; margin:0 auto; }
.workflow-grid { margin-top:42px; display:grid; grid-template-columns:repeat(5,1fr); position:relative; }
.workflow-grid::before { content:""; position:absolute; top:38px; left:9%; right:9%; border-top:2px dotted #97c4ff; z-index:0; }
.workflow-step { position:relative; z-index:1; text-align:center; padding:0 12px; display:flex; flex-direction:column; align-items:center; }
.workflow-step .step-number { position:absolute; top:-7px; left:calc(50% - 39px); width:23px; height:23px; border-radius:50%; background:var(--qbit-blue); color:#fff; display:grid; place-items:center; font-size:.7rem; font-weight:800; }
.workflow-step > i { width:62px; height:62px; display:grid; place-items:center; margin-bottom:10px; border-radius:50%; background:#fff; color:#244b7f; font-size:1.8rem; }
.workflow-step strong { font-size:.88rem; }
.workflow-step small { color:#7c8998; line-height:1.35; }

/* Integrations */
.integration-grid { display:grid; grid-template-columns:repeat(7,1fr); min-height:190px; align-items:start; position:relative; }
.integration-grid::before { content:""; position:absolute; top:17px; left:7%; right:7%; border-top:2px dotted #1873B9; }
.integration-item { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; color:#183f70; font-size:.78rem; font-weight:700; }
.integration-item i { width:54px; height:54px; display:grid; place-items:center; background:var(--qbit-soft); color:var(--qbit-blue); font-size:1.75rem; }
.data-integrations { border-top:1px solid #dce9f6; }
.data-item { border-right:1px solid #dce9f6; padding:8px 14px; }
.data-item:last-child { border-right:0; }
.data-item i { display:block; font-size:2rem; color:var(--qbit-blue); margin-bottom:8px; }
.data-item strong { display:block; font-size:.85rem; }
.data-item small { display:block; color:#73839b; line-height:1.4; font-size:.7rem; margin-top:4px; }

/* Segments */
.segments-section { padding-bottom:62px; }
.segment-item i { display:block; font-size:2rem; color:#6a8ebd; margin-bottom:10px; }
.segment-item span { display:block; font-size:.78rem; font-weight:700; color:#53647a; line-height:1.35; }

/* Modules */
.modules-section { background:linear-gradient(180deg,#fbfdff 0%,#fff 100%); padding-top:56px; }
.module-table-wrap { max-width:1120px; margin:0 auto; border:1px solid #d9e5f3; border-radius:10px; box-shadow:0 13px 34px rgba(0,42,92,.08); background:#fff; overflow:hidden; }
.module-table { min-width:880px; --bs-table-border-color:#e2eaf4; }
.module-table th, .module-table td { padding:.72rem .85rem; font-size:.78rem; }
.module-table thead th { vertical-align:bottom; color:#24446d; background:#fbfdff; }
.module-table thead th i { display:block; font-size:1.7rem; color:var(--qbit-blue); margin-bottom:5px; }
.module-table thead th span:not(.badge-best) { display:block; font-size:.72rem; text-transform:uppercase; }
.module-table tbody td:not(:first-child) { color:var(--qbit-blue); font-weight:800; }
.module-table .featured-col { background:#edf6ff; position:relative; }
.badge-best { position:absolute; top:4px; right:5px; color:#fff; background:var(--qbit-blue); padding:3px 7px; border-radius:3px; font-size:.51rem; text-transform:uppercase; }
.module-actions td { padding-top:16px; padding-bottom:16px; }

/* Clients */
.clients-section { background:radial-gradient(circle at 75% 40%,#073a78 0%,#00285b 34%,#001f48 63%,#001633 100%); color:#fff; padding-top:64px; padding-bottom:54px; }
.clients-section h2 { color:#fff; }
.clients-section p { color:#c1d2e6; }
.client-logo-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.client-logo-grid > div { min-height:62px; border-radius:5px; background:#fff; display:grid; place-items:center; padding:8px; }
.client-logo-grid img { max-width:100%; max-height:43px; object-fit:contain; }
.clients-map { max-height:490px; filter:drop-shadow(0 12px 25px rgba(0,0,0,.28)); }

/* CTA */
.cta-section { padding:30px 0; background:linear-gradient(90deg,#1873B9 0%,#1873B9 100%); }
.cta-section h2 { color:#fff; font-size:2rem; }
.cta-benefits { list-style:none; padding:0; margin:18px 0 0; color:#dceaff; font-size:.78rem; }
.cta-benefits li { margin-bottom:6px; }
.cta-product { max-height:240px; filter:drop-shadow(0 14px 24px rgba(0,35,93,.25)); }
.lead-form-card { background:#fff; padding:24px; border-radius:8px; box-shadow:0 12px 30px rgba(0,29,87,.2); }
.lead-form-card h3 { font-size:1.1rem; color:var(--qbit-blue); margin-bottom:15px; }
.lead-form-card .form-control { min-height:45px; border-color:#d7e1ec; border-radius:3px; font-size:.82rem; }

/* Footer */
.site-footer { background:#001b3c; color:#fff; }
.footer-logo { width:105px; height:54px; object-fit:contain; object-position:left center; margin-bottom:12px; }
.site-footer p { color:#a9bdd4; font-size:.76rem; max-width:260px; }
.site-footer h4 { color:#fff; font-size:.82rem; margin-bottom:14px; }
.site-footer ul { list-style:none; padding:0; margin:0; }
.site-footer li, .site-footer a { color:#b6c6d7; font-size:.75rem; margin-bottom:5px; }
.site-footer a:hover { color:#fff; }
.social-links { display:flex; gap:12px; }
.social-links a { font-size:1.05rem; }
.contact-list i { width:19px; color:#1873B9; }

@media (max-width: 1199.98px) {
  .integration-grid { grid-template-columns:repeat(4,1fr); gap:24px; }
  .integration-grid::before { display:none; }
  .workflow-step small { font-size:.72rem; }
}

@media (max-width: 991.98px) {
  :root { --header-height: 68px; }
  .site-header .navbar-collapse { background:#001a3d; padding:16px 0 20px; }
  .site-header .nav-link.active::after { display:none; }
  .nav-cta { margin-top:10px; margin-left:0 !important; width:100%; }
  .brand-logo { width:84px; height:44px; }
  .min-vh-hero { min-height:auto; padding:64px 0 70px; }
  .hero-copy { text-align:center; }
  .hero-lead { margin-left:auto; margin-right:auto; }
  .hero-actions, .hero-notes { justify-content:center; }
  .hero-product { margin-top:15px; transform:none; }
  .workflow-grid { grid-template-columns:repeat(2,1fr); gap:30px 10px; }
  .workflow-grid::before { display:none; }
  .client-logo-grid { grid-template-columns:repeat(4,1fr); }
}

@media (max-width: 767.98px) {
  .section { padding:62px 0; }
  .stats-section { padding:32px 0; }
  .stat-item { justify-content:start; padding-left:18%; }
  .video-chip { position:static; margin:14px auto 0; width:max-content; }
  .workflow-grid { grid-template-columns:1fr; }
  .workflow-step .step-number { left:calc(50% - 42px); }
  .integration-grid { grid-template-columns:repeat(2,1fr); }
  .data-item { border-right:0; }
  .client-logo-grid { grid-template-columns:repeat(2,1fr); }
  .clients-map { margin-top:20px; }
  .cta-section { text-align:center; padding:46px 0; }
  .cta-benefits { display:inline-block; text-align:left; }
  .lead-form-card { text-align:left; margin-top:10px; }
}

@media (max-width: 575.98px) {
  .container-xl { padding-left:20px; padding-right:20px; }
  h1 { font-size:2.35rem; }
  h2 { font-size:1.8rem; }
  .hero-actions .btn { width:100%; }
  .stat-item { padding-left:5%; }
  .integration-grid { grid-template-columns:repeat(2,1fr); }
  .module-table-wrap { border-radius:6px; }
}

/* ===== Ajustes 24/08/2026 ===== */
/* Inter em toda a experiência */
body, button, input, textarea, select, .btn {
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

/* Hierarquia tipográfica mais contida */
h1, h2, h3, h4 {
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
}
h1 { font-size: clamp(2.15rem, 3.8vw, 3.65rem); }
h2 { font-size: clamp(1.65rem, 2.45vw, 2.55rem); }

/* Títulos/labels de seção em Inter Light */
.eyebrow {
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-weight: 300;
  letter-spacing: .055em;
}

/* Hero: azul sólido à esquerda + imagem surgindo em degradê à direita */
.hero-section {
  background: #001a3d;
  isolation: isolate;
}
.hero-section::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 0 0 auto;
  width: 69%;
  background-image: url('../images/caminhao-balanca.png');
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.22) 16%, #000 42%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.22) 16%, #000 42%, #000 100%);
}
.hero-overlay {
  z-index: 1;
  background: linear-gradient(90deg,
    #001a3d 0%,
    #001a3d 35%,
    rgba(0,26,61,.94) 45%,
    rgba(0,26,61,.45) 67%,
    rgba(0,20,45,.16) 100%);
}
.hero-content { position: relative; z-index: 2; }

/* Números com mais presença e mais respiro vertical */
.stats-section { padding: 58px 0; }
.stat-item { grid-template-columns: 44px auto; column-gap: 12px; }
.stat-item i { font-size: 2.25rem; }
.stat-item strong { font-size: 1.32rem; line-height: 1.1; }
.stat-item span { font-size: .82rem; line-height: 1.3; }

/* Vídeo clicável */
.video-card { cursor: pointer; }
.video-card .video-play { transition: transform .2s ease, background .2s ease; }
.video-card:hover .video-play {
  transform: translate(-50%,-50%) scale(1.06);
  background: rgba(0,28,64,.98);
}

/* Título específico da jornada menor */
.workflow-section .section-title h2 {
  font-size: clamp(1.55rem, 2.05vw, 2.15rem);
}

/* Alinhamento da área de automação */
.integrations-section > .container-xl > .row {
  align-items: flex-start;
}
.integration-grid {
  padding-top: 6px;
  align-items: start;
}
.integration-item i {
  flex: 0 0 54px;
}
.integration-item span {
  min-height: 38px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

/* 7 segmentos realmente na mesma linha em desktop */
.segments-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: start;
}
.segment-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
.segment-item i {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* O oitavo cliente ocupa a última posição ao lado de Razzo */
.client-logo-grid { grid-template-columns: repeat(4, 1fr); }
.client-logo-grid img[alt="Natural One"] { max-height: 48px; }

/* CTA mais alta para não cortar os benefícios */
.cta-section { padding: 48px 0 52px; }
.cta-benefits { margin-bottom: 4px; }

@media (max-width: 991.98px) {
  .hero-section::before { width: 100%; opacity: .55; }
  .hero-overlay {
    background: linear-gradient(90deg, rgba(0,26,61,.97) 0%, rgba(0,26,61,.84) 100%);
  }
  .segments-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}

@media (max-width: 767.98px) {
  .stats-section { padding: 42px 0; }
  .segments-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

/* ===== Ajustes 24/08 - alinhamentos, segmentos, clientes e rodapé ===== */

/* Automação & integrações: reproduz a organização horizontal da referência */
.integrations-top-row {
  align-items: flex-start !important;
}
.integrations-copy {
  padding-top: 0;
}
.integrations-icons-col {
  display: flex;
  align-items: flex-start;
}
.integration-grid {
  width: 100%;
  min-height: 155px;
  padding-top: 14px;
  align-items: start;
}
.integration-grid::before {
  top: 14px;
  left: 6.9%;
  right: 6.9%;
}
.integration-item {
  gap: 10px;
  justify-content: flex-start;
}
.integration-item i {
  width: 56px;
  height: 56px;
  font-size: 1.9rem;
}
.integration-item span {
  min-height: 0;
  align-items: center;
  line-height: 1.2;
}
.data-integrations {
  margin-top: 28px !important;
  padding-top: 34px !important;
}
.data-integrations-row {
  align-items: flex-start;
}
.data-integrations-copy {
  padding-top: 2px;
}
.data-integrations-items {
  align-self: stretch;
}
.data-items-row {
  height: 100%;
  align-items: stretch;
}
.data-item {
  min-height: 150px;
  padding: 0 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  border-left: 1px solid #dce9f6;
}
.data-item:first-child {
  border-left: 0;
}
.data-item i {
  margin-top: 0;
  margin-bottom: 12px;
}
.data-item strong {
  margin-bottom: 7px;
}

/* Mais respiro entre o título de segmentos e a linha de ícones */
.segments-section .segments-grid {
  margin-top: 3.4rem !important;
}

/* Mapa ligeiramente menor, mantendo centralização */
.clients-map {
  max-height: 455px;
  width: auto;
  max-width: 94%;
}

/* Rodapé: links sociais e contatos */
.social-links {
  gap: 14px;
  align-items: center;
}
.social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
  font-size: 1.08rem;
}
.contact-list a {
  color: #b6c6d7;
  text-decoration: none;
}
.contact-list a:hover {
  color: #fff;
}

@media (max-width: 991.98px) {
  .integration-grid {
    min-height: auto;
    padding-top: 0;
  }
  .data-item,
  .data-item:first-child {
    border-left: 0;
    min-height: 140px;
  }
  .clients-map {
    max-width: 90%;
  }
}

/* ===== Pop-up de contato ===== */
.contact-modal .modal-dialog { max-width: 1180px; padding: 18px; }
.contact-modal .modal-content { border: 1px solid rgba(255,255,255,.65); border-radius: 18px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,18,42,.34); }
.contact-modal .modal-backdrop { background: #00142c; }
.contact-modal-close { position: absolute; z-index: 8; top: 25px; right: 26px; width: 1.35rem; height: 1.35rem; opacity: 1; filter: none; }

.contact-modal-visual { position: relative; min-height: 735px; color: #fff; background: #001a3d; overflow: hidden; }
.contact-modal-visual::before { content:""; position:absolute; inset:0; background-image: linear-gradient(180deg, rgba(0,20,48,.08) 0%, rgba(0,20,48,.34) 48%, rgba(0,20,48,.93) 100%), url('../images/caminhao-balanca.png'); background-size: cover; background-position: 57% center; opacity:.9; }
.contact-modal-visual::after { content:""; position:absolute; inset:0; background: radial-gradient(circle at 10% 0%, rgba(22,116,255,.12), transparent 45%), linear-gradient(120deg, rgba(0,32,72,.96) 0%, rgba(0,29,66,.82) 52%, rgba(0,29,66,.38) 100%); }
.contact-visual-content { position: relative; z-index: 2; height:100%; min-height:735px; padding: 46px 48px 38px; display:flex; flex-direction:column; }
.contact-modal-brand { display:flex; align-items:flex-end; gap:8px; margin-bottom:42px; width:max-content; }
.contact-modal-brand img { width:106px; height:auto; object-fit:contain; object-position:left; }
.contact-modal-brand span { margin-left:-50px; transform:translate(53px,6px); color:#1873B9; font-weight:700; font-size:.65rem; letter-spacing:.03em; }
.contact-modal-visual h2 { max-width: 410px; color:#fff; font-size: clamp(2rem, 3vw, 3rem); line-height:1.08; font-weight:700; margin-bottom:24px; }
.contact-modal-visual h2 span { color:#1873B9; }
.contact-modal-visual > * { position:relative; }
.contact-visual-content > p { max-width:370px; color:#dbe7f6; font-size:1rem; line-height:1.55; margin-bottom:28px; }
.contact-benefits { list-style:none; padding:0; margin:0; display:grid; gap:20px; }
.contact-benefits li { display:flex; align-items:center; gap:16px; color:#fff; font-size:.9rem; line-height:1.45; }
.contact-benefit-icon { flex:0 0 auto; width:50px; height:50px; border:1px solid #1873B9; border-radius:50%; display:grid; place-items:center; color:#1873B9; font-size:1.35rem; background:rgba(0,51,112,.45); }
.contact-benefits strong { font-weight:500; }
.contact-security { margin-top:auto; border:1px solid rgba(49,137,255,.55); background:rgba(0,24,56,.6); border-radius:9px; padding:16px 18px; display:flex; align-items:center; gap:14px; max-width:410px; }
.contact-security > i { font-size:1.9rem; color:#9cc8ff; }
.contact-security strong, .contact-security span { display:block; }
.contact-security strong { color:#fff; font-size:.93rem; margin-bottom:2px; }
.contact-security span { color:#c6d5e7; font-size:.78rem; }

.contact-modal-form-side { background:#fff; }
.contact-form-wrap { padding: 62px 58px 38px; }
.contact-kicker { display:block; color:#1873B9; font-size:.87rem; font-weight:700; text-transform:uppercase; letter-spacing:.02em; margin-bottom:4px; }
.contact-form-wrap h2 { font-size:clamp(2rem,3.2vw,3rem); color:#06234b; line-height:1.05; margin-bottom:28px; }
.contact-form-wrap h2 span { color:#1873B9; }
.contact-form .form-label { color:#09264f; font-size:.84rem; font-weight:700; margin-bottom:7px; }
.contact-form .form-label span { font-weight:400; }
.contact-input-group { min-height:54px; border:1px solid #cbd6e4; border-radius:9px; display:flex; align-items:center; background:#fff; overflow:hidden; transition:border-color .2s ease, box-shadow .2s ease; }
.contact-input-group:focus-within { border-color:#1873B9; box-shadow:0 0 0 3px rgba(24,115,185,.10); }
.contact-input-group > i { width:54px; flex:0 0 54px; display:grid; place-items:center; color:#1873B9; font-size:1.35rem; }
.contact-input-group .form-control { border:0; box-shadow:none!important; padding: 0 14px 0 0; min-height:52px; font-size:.89rem; color:#153354; }
.contact-input-group .form-control::placeholder { color:#899ab0; }
.contact-input-group.contact-textarea { align-items:flex-start; }
.contact-input-group.contact-textarea > i { padding-top:15px; }
.contact-input-group textarea.form-control { padding-top:14px; min-height:92px; resize:vertical; }
.contact-submit { min-height:56px; border:0; border-radius:28px; color:#fff; font-weight:700; font-size:.95rem; background:linear-gradient(90deg,#1873B9 0%,#1873B9 100%); box-shadow:0 8px 20px rgba(4,76,145,.16); }
.contact-submit:hover { color:#fff; background:linear-gradient(90deg,#1873B9 0%,#1873B9 100%); }
.contact-submit i { margin-right:8px; }
.contact-divider { position:relative; text-align:center; margin:18px 0; color:#5f7187; font-size:.8rem; }
.contact-divider::before, .contact-divider::after { content:""; position:absolute; top:50%; width:42%; border-top:1px solid #dfe6ee; }
.contact-divider::before { left:0; } .contact-divider::after { right:0; }
.contact-divider span { background:#fff; padding:0 12px; position:relative; z-index:2; }
.contact-whatsapp { min-height:68px; display:flex; align-items:center; gap:14px; padding:12px 18px; border:1px solid #b9ddb9; border-radius:9px; background:#f8fff8; color:#25415d; text-decoration:none; }
.contact-whatsapp > .bi-whatsapp { color:#31b540; font-size:2.15rem; }
.contact-whatsapp span { display:flex; flex-direction:column; }
.contact-whatsapp strong { color:#32a63b; font-size:.9rem; }
.contact-whatsapp small { color:#39536e; font-size:.8rem; margin-top:2px; }
.contact-whatsapp > .bi-chevron-right { color:#2daa39; font-size:1.2rem; }
.contact-response-time { margin-top:20px; text-align:center; color:#49617c; font-size:.78rem; }
.contact-response-time i { color:#1873B9; font-size:1.2rem; margin-right:7px; vertical-align:-2px; }
.contact-response-time strong { color:#1873B9; }

@media (max-width: 991.98px) {
  .contact-modal .modal-dialog { max-width:760px; }
  .contact-modal-visual { min-height:auto; }
  .contact-visual-content { min-height:560px; padding:38px 34px 30px; }
  .contact-form-wrap { padding:48px 34px 34px; }
}
@media (max-width: 767.98px) {
  .contact-modal .modal-dialog { margin:.5rem; padding:0; }
  .contact-modal .modal-content { border-radius:14px; }
  .contact-modal-close { top:18px; right:18px; background-color:#fff; border-radius:50%; padding:8px; }
  .contact-visual-content { min-height:500px; padding:32px 24px 26px; }
  .contact-modal-brand { margin-bottom:28px; }
  .contact-modal-visual h2 { font-size:2rem; }
  .contact-form-wrap { padding:38px 22px 28px; }
}


/* Ajuste 24/08 - popup de contato mais compacto */
@media (min-width: 992px) {
  .contact-modal .modal-dialog { max-width: 980px; padding: 12px; }
  .contact-modal-visual { min-height: 610px; }
  .contact-visual-content { min-height: 610px; padding: 34px 38px 28px; }
  .contact-modal-brand { margin-bottom: 28px; }
  .contact-modal-brand img { width: 92px; }
  .contact-modal-visual h2 { max-width: 350px; font-size: 2.25rem; margin-bottom: 16px; }
  .contact-visual-content > p { margin-bottom: 20px; font-size: .9rem; }
  .contact-benefits { gap: 14px; }
  .contact-benefit-icon { width: 43px; height: 43px; font-size: 1.15rem; }
  .contact-benefits li { font-size: .82rem; }
  .contact-security { padding: 12px 14px; }
  .contact-form-wrap { padding: 38px 42px 26px; }
  .contact-form-wrap h2 { font-size: 2.25rem; margin-bottom: 18px; }
  .contact-form .mb-3 { margin-bottom: .65rem !important; }
  .contact-input-group { min-height: 46px; }
  .contact-input-group > i { width: 48px; flex-basis: 48px; font-size: 1.15rem; }
  .contact-input-group .form-control { min-height: 44px; font-size: .84rem; }
  .contact-input-group textarea.form-control { min-height: 68px; padding-top: 10px; }
  .contact-input-group.contact-textarea > i { padding-top: 11px; }
  .contact-submit { min-height: 48px; }
  .contact-divider { margin: 12px 0; }
  .contact-whatsapp { min-height: 56px; padding: 9px 15px; }
  .contact-whatsapp > .bi-whatsapp { font-size: 1.8rem; }
  .contact-response-time { margin-top: 12px; }
}


/* ===== Correção mobile — tabela de módulos 24/08/2026 ===== */
.module-mobile-hint {
  display: none;
}

@media (max-width: 767.98px) {
  .modules-section .section-title {
    margin-bottom: 1.6rem !important;
  }

  .module-mobile-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0 0 12px;
    color: #667b96;
    font-size: .76rem;
    font-weight: 500;
  }

  .module-mobile-hint i {
    color: var(--qbit-blue);
    font-size: 1rem;
  }

  /* O overflow:hidden anterior estava cortando as outras colunas. */
  .module-table-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: auto !important;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: #9fc5ff #eef5ff;
    border-radius: 8px;
  }

  .module-table-wrap::-webkit-scrollbar {
    height: 7px;
  }

  .module-table-wrap::-webkit-scrollbar-track {
    background: #eef5ff;
  }

  .module-table-wrap::-webkit-scrollbar-thumb {
    background: #9fc5ff;
    border-radius: 20px;
  }

  .module-table {
    width: 760px;
    min-width: 760px;
    table-layout: fixed;
  }

  .module-table th:first-child,
  .module-table td:first-child {
    position: sticky;
    left: 0;
    z-index: 3;
    width: 190px;
    min-width: 190px;
    max-width: 190px;
    background: #fff;
    box-shadow: 7px 0 12px -12px rgba(0, 42, 92, .55);
  }

  .module-table thead th:first-child {
    z-index: 5;
    background: #fbfdff;
  }

  .module-table th:not(:first-child),
  .module-table td:not(:first-child) {
    width: 142px;
    min-width: 142px;
  }

  .module-table th,
  .module-table td {
    padding: .72rem .65rem;
    font-size: .73rem;
  }

  .module-table thead th span:not(.badge-best) {
    font-size: .66rem;
    line-height: 1.25;
    white-space: normal;
  }

  .module-table thead th i {
    font-size: 1.45rem;
  }

  .module-table tbody td:first-child {
    white-space: normal;
    line-height: 1.3;
  }

  .module-actions td:first-child {
    background: #fff;
  }

  .module-actions .btn {
    white-space: nowrap;
    padding-left: .7rem;
    padding-right: .7rem;
  }
}

@media (max-width: 420px) {
  .module-table {
    width: 700px;
    min-width: 700px;
  }

  .module-table th:first-child,
  .module-table td:first-child {
    width: 168px;
    min-width: 168px;
    max-width: 168px;
  }

  .module-table th:not(:first-child),
  .module-table td:not(:first-child) {
    width: 133px;
    min-width: 133px;
  }
}

/* ===== Pop-up Automação Completa ===== */
.automation-modal { --bs-modal-width: 1380px; }
.automation-modal .modal-dialog { max-width: 1380px; padding: 18px; }
.automation-modal .modal-content { border: 1px solid rgba(112,160,204,.45); border-radius: 22px; overflow: hidden; background: #fff; box-shadow: 0 28px 80px rgba(0,15,35,.34); }
.automation-modal-close { position:absolute; z-index:10; top:28px; right:28px; width:20px; height:20px; opacity:.9; }
.automation-modal-row { min-height: 690px; }
.automation-modal-info { background: radial-gradient(circle at 50% 42%, rgba(7,66,126,.5), transparent 55%), linear-gradient(135deg,#001c3d 0%,#002a57 52%,#001b39 100%); color:#fff; }
.automation-info-wrap { padding: 34px 42px 30px; }
.automation-brand-line { display:flex; align-items:center; gap:22px; margin-bottom:34px; }
.automation-brand-line img { width:100px; height:auto; }
.automation-brand-line span { color:#1873B9; background:rgba(24,115,185,.22); border:1px solid rgba(24,115,185,.15); border-radius:10px; padding:9px 15px; font-size:.82rem; letter-spacing:.02em; }
.automation-info-wrap > h2 { color:#fff; font-size:2.35rem; line-height:1.08; font-weight:700; margin:0 0 14px; }
.automation-info-wrap > h2 span { color:#1873B9; }
.automation-lead { color:#d0dceb; max-width:640px; font-size:.94rem; line-height:1.55; margin-bottom:22px; }
.automation-feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.automation-feature-card { min-height:108px; border:1px solid rgba(52,135,215,.38); border-radius:11px; background:rgba(0,36,77,.38); padding:16px; display:flex; gap:14px; align-items:flex-start; }
.automation-feature-card > i { color:#1873B9; font-size:1.9rem; line-height:1; flex:0 0 34px; margin-top:3px; }
.automation-feature-card strong { display:block; color:#fff; font-size:.9rem; margin-bottom:5px; }
.automation-feature-card span { display:block; color:#dbe6f2; font-size:.73rem; line-height:1.48; }
.automation-all-toggle { width:100%; margin-top:11px; min-height:52px; border:1px solid rgba(52,135,215,.38); border-radius:10px; background:rgba(0,36,77,.45); color:#fff; display:flex; align-items:center; justify-content:space-between; padding:0 19px; font-weight:600; font-size:.87rem; }
.automation-all-toggle span { display:flex; align-items:center; gap:12px; }
.automation-all-toggle span i { color:#1873B9; font-size:1.25rem; }
.automation-all-toggle .toggle-chevron { color:#cfe0f3; transition:transform .25s ease; }
.automation-all-toggle[aria-expanded="true"] .toggle-chevron { transform:rotate(180deg); }
.automation-all-features { margin-top:9px; padding:15px 16px 8px; max-height:245px; overflow:auto; border:1px solid rgba(52,135,215,.26); border-radius:10px; background:rgba(0,24,52,.58); }
.automation-all-features ul { list-style:none; padding:0; margin:0; columns:2; column-gap:28px; }
.automation-all-features li { break-inside:avoid; position:relative; padding:0 0 7px 20px; color:#dce8f4; font-size:.68rem; line-height:1.4; }
.automation-all-features li::before { content:'✓'; position:absolute; left:0; top:0; color:#1873B9; font-weight:800; }
.automation-note { display:flex; align-items:center; gap:12px; margin-top:18px; }
.automation-note > i { color:#1873B9; font-size:1.7rem; }
.automation-note strong,.automation-note span { display:block; }
.automation-note strong { color:#fff; font-size:.82rem; margin-bottom:2px; }
.automation-note span { color:#b9c9da; font-size:.72rem; }
.automation-modal-form { background:#fff; }
.automation-form-wrap { padding: 104px 52px 42px; }
.automation-form-wrap > h2 { color:#031c41; font-size:1.8rem; line-height:1.25; font-weight:700; margin-bottom:24px; }
.automation-form-wrap > p { color:#63758e; font-size:.94rem; line-height:1.5; margin-bottom:40px; max-width:450px; }
.automation-input { height:64px; border:1px solid #d5dee8; border-radius:9px; display:flex; align-items:center; margin-bottom:16px; }
.automation-input > i { width:60px; flex:0 0 60px; display:grid; place-items:center; color:#516985; font-size:1.4rem; }
.automation-input .form-control { border:0; box-shadow:none!important; height:62px; padding:0 14px 0 0; color:#203955; font-size:.95rem; }
.automation-input .form-control::placeholder { color:#657993; opacity:1; }
.automation-budget-btn { min-height:64px; border:0; border-radius:9px; margin-top:18px; background:linear-gradient(90deg,#229b06 0%,#36b600 100%); color:#fff; font-weight:700; font-size:1rem; }
.automation-budget-btn:hover { color:#fff; filter:brightness(.96); }
.automation-budget-btn i { margin-left:18px; font-size:1.25rem; vertical-align:-2px; }
.automation-safe { margin-top:22px; color:#60738c; text-align:center; font-size:.8rem; }
.automation-safe i { margin-right:7px; }

@media (max-width: 1199.98px) {
  .automation-modal .modal-dialog { max-width: 1100px; }
  .automation-info-wrap { padding:30px 30px 26px; }
  .automation-form-wrap { padding:90px 34px 36px; }
  .automation-info-wrap > h2 { font-size:2rem; }
}
@media (max-width: 991.98px) {
  .automation-modal .modal-dialog { max-width:780px; }
  .automation-modal .modal-content { max-height:94vh; overflow-y:auto; }
  .automation-modal-row { min-height:0; }
  .automation-form-wrap { padding:48px 34px 34px; }
  .automation-form-wrap > p { margin-bottom:24px; }
  .automation-modal-close { background-color:#fff; border-radius:50%; padding:8px; top:16px; right:16px; }
}
@media (max-width: 767.98px) {
  .automation-modal .modal-dialog { margin:.35rem; padding:0; }
  .automation-modal .modal-content { border-radius:14px; }
  .automation-info-wrap { padding:28px 20px 24px; }
  .automation-brand-line { gap:12px; margin-bottom:24px; flex-wrap:wrap; }
  .automation-brand-line img { width:82px; }
  .automation-brand-line span { font-size:.7rem; padding:7px 10px; }
  .automation-info-wrap > h2 { font-size:1.75rem; }
  .automation-feature-grid { grid-template-columns:1fr; }
  .automation-feature-card { min-height:0; }
  .automation-all-features ul { columns:1; }
  .automation-all-features { max-height:300px; }
  .automation-form-wrap { padding:38px 20px 28px; }
  .automation-form-wrap > h2 { font-size:1.45rem; padding-right:32px; }
  .automation-input { height:56px; }
  .automation-input .form-control { height:54px; }
  .automation-budget-btn { min-height:56px; }
}


/* ===== Ajustes 31/08/2026 - logo Portaria, placeholders e alinhamento ===== */
.brand-logo-portaria {
  width: 118px;
  height: 52px;
  object-fit: contain;
  object-position: left center;
}

.stat-item.stat-placeholder strong,
.stat-item.stat-placeholder span {
  color: #d92727 !important;
}

/* Centraliza horizontalmente o bloco de ícones em relação ao texto da seção */
.integrations-top-row {
  align-items: center !important;
}
.integrations-copy,
.integrations-icons-col {
  align-self: center;
}
.integrations-icons-col {
  display: flex;
  align-items: center;
}
.integration-grid {
  min-height: 130px;
  padding-top: 0;
  align-items: center;
}
.integration-grid::before {
  top: 27px;
}
.integration-item {
  justify-content: center;
}

.automation-brand-line img {
  width: 112px;
  max-height: 58px;
  object-fit: contain;
  object-position: left center;
}

@media (max-width: 991.98px) {
  .brand-logo-portaria { width: 104px; height: 48px; }
  .integrations-top-row { align-items: flex-start !important; }
  .integration-grid { min-height: auto; }
}


/* ===== Ajustes finais 31/08/2026 - popup de contato e CTA ===== */
/* O popup acionado pelo menu e pelo scroll usa a marca QBit Portaria completa. */
.contact-modal-brand {
  align-items: center;
  margin-bottom: 34px;
}
.contact-modal-brand img {
  width: 128px;
  max-height: 66px;
  object-fit: contain;
  object-position: left center;
}
.contact-modal-brand span { display: none !important; }

/* Reequilibra o CTA para que o bloco “Experimente sem compromisso”
   ocupe corretamente o espaço da faixa azul e fique alinhado ao conteúdo geral. */
.cta-section .container-xl {
  padding-left: 24px;
  padding-right: 24px;
}
.cta-section .row {
  min-height: 300px;
}
.cta-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-right: 24px;
}
.cta-copy .eyebrow,
.cta-copy h2,
.cta-copy .cta-benefits {
  width: 100%;
  text-align: left;
}
.cta-copy h2 {
  margin-bottom: 0;
}
.cta-product-col {
  display: flex;
  align-items: center;
  justify-content: center;
}
.cta-product {
  width: 100%;
  max-width: 310px;
}

@media (max-width: 991.98px) {
  .cta-section .row { min-height: 0; }
  .cta-copy { align-items: center; padding-right: 0; }
  .cta-copy .eyebrow, .cta-copy h2 { text-align: center; }
  .cta-copy .cta-benefits { width: auto; text-align: left; }
  .contact-modal-brand img { width: 116px; }
}

/* ===== Refinamento CTA 31/08/2026 - faixa mais compacta e blocos na mesma altura ===== */
@media (min-width: 992px) {
  .cta-section {
    padding: 28px 0;
  }
  .cta-section .row {
    min-height: 0;
    align-items: center !important;
  }
  .cta-copy {
    padding-top: 4px;
    padding-bottom: 4px;
  }
  .cta-copy .eyebrow {
    margin-bottom: 10px;
    font-size: .68rem;
  }
  .cta-copy h2 {
    font-size: 1.85rem;
    line-height: 1.08;
    margin-bottom: 14px;
  }
  .cta-benefits {
    margin-bottom: 0;
  }
  .cta-benefits li {
    margin-bottom: 6px;
  }
  .cta-product {
    max-width: 285px;
    max-height: 190px;
    object-fit: contain;
  }
  .lead-form-card {
    padding: 20px 22px;
  }
  .lead-form-card h3 {
    margin-bottom: 12px;
  }
  .lead-form-card form {
    --bs-gutter-y: .75rem;
  }
  .lead-form-card .form-control {
    min-height: 42px;
  }
  .lead-form-card .btn {
    min-height: 48px;
  }
}


/* ===== Ajuste final CTA + logo do rodapé 31/08/2026 ===== */
.footer-logo-portaria {
  width: 132px;
  height: 58px;
  object-fit: contain;
  object-position: left center;
}

/* Mantém toda a faixa do teste contida e centralizada antes do rodapé */
.cta-section {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  padding: 24px 0 !important;
  margin: 0 !important;
}
.cta-section .container-xl {
  height: auto;
}
.cta-section .row {
  min-height: 0 !important;
  margin-top: 0;
  margin-bottom: 0;
  align-items: center !important;
}
.cta-section .cta-copy,
.cta-section .cta-product-col,
.cta-section .col-lg-5 {
  display: flex;
  align-items: center;
}
.cta-section .cta-copy {
  align-items: flex-start;
  justify-content: center;
}
.cta-section .cta-product-col {
  justify-content: center;
}
.cta-section .col-lg-5 {
  justify-content: stretch;
}
.cta-section .lead-form-card {
  width: 100%;
  margin: 0 !important;
  padding: 18px 20px;
  box-sizing: border-box;
}
.cta-section .lead-form-card h3 {
  margin: 0 0 10px;
}
.cta-section .lead-form-card form {
  margin-bottom: 0;
  --bs-gutter-y: .65rem;
}
.cta-section .lead-form-card .form-control {
  min-height: 40px;
  padding-top: .55rem;
  padding-bottom: .55rem;
}
.cta-section .lead-form-card .btn {
  min-height: 44px;
}
.cta-section .cta-product {
  display: block;
  max-width: 270px;
  max-height: 175px;
  margin: 0 auto;
  object-fit: contain;
}
.cta-section .cta-benefits {
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  .footer-logo-portaria { width: 124px; }
  .cta-section { padding: 36px 0 !important; }
  .cta-section .cta-copy,
  .cta-section .cta-product-col,
  .cta-section .col-lg-5 { display: block; }
  .cta-section .cta-copy { text-align: center; }
  .cta-section .lead-form-card { margin-top: 8px !important; }
  .cta-section .cta-product { margin: 14px auto; }
}


/* Rodapé — colunas uniformes e conteúdo centralizado */
.site-footer .footer-grid {
  align-items: flex-start;
}
.site-footer .footer-column {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.site-footer .footer-logo {
  object-position: center;
}
.site-footer .footer-column p {
  margin-left: auto;
  margin-right: auto;
}
.site-footer .footer-column ul {
  width: 100%;
  text-align: center;
}
.site-footer .footer-column li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.site-footer .footer-column:not(.footer-brand) li:not(:has(i)) {
  display: block;
}
.site-footer .social-links {
  justify-content: center;
}
@media (min-width: 992px) {
  .site-footer .footer-column {
    flex: 0 0 25%;
    max-width: 25%;
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* Rodapé — colunas mais próximas + bloco institucional alinhado à esquerda */
@media (min-width: 992px) {
  .site-footer .footer-grid {
    max-width: 1040px;
    margin-left: auto;
    margin-right: auto;
  }
  .site-footer .footer-column {
    padding-left: 14px;
    padding-right: 14px;
  }
}
.site-footer .footer-brand {
  text-align: left;
  align-items: flex-start;
}
.site-footer .footer-brand .footer-logo {
  object-position: left center;
  margin-left: 0;
  margin-right: 0;
}
.site-footer .footer-brand p {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.site-footer .footer-brand .social-links {
  justify-content: flex-start;
}

/* Ajustes finais — CTA com colunas uniformes e rodapé contato à direita */
@media (min-width: 992px) {
  .cta-section .row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 42px;
    align-items: center !important;
  }
  .cta-section .cta-copy,
  .cta-section .cta-product-col,
  .cta-section .row > .col-lg-5 {
    width: auto !important;
    max-width: none !important;
    padding-left: 0;
    padding-right: 0;
  }
  .cta-section .cta-product-col {
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
  .cta-section .cta-product {
    width: 115%;
    max-width: 390px !important;
    max-height: 280px !important;
    margin: 0 auto;
  }
  .site-footer .footer-grid > .footer-column:last-child {
    text-align: right;
    align-items: flex-end;
  }
  .site-footer .footer-grid > .footer-column:last-child ul {
    text-align: right;
  }
  .site-footer .footer-grid > .footer-column:last-child li {
    justify-content: flex-end;
  }
}

/* Correção 31/08/2026 — o grid de 3 colunas deve afetar somente a linha principal do CTA.
   O formulário interno continua usando o grid padrão do Bootstrap. */
.cta-section .lead-form-card form.row {
  display: flex !important;
  flex-wrap: wrap !important;
  grid-template-columns: none !important;
  column-gap: 0 !important;
  align-items: stretch !important;
  margin-left: calc(-.5 * var(--bs-gutter-x));
  margin-right: calc(-.5 * var(--bs-gutter-x));
}
.cta-section .lead-form-card form.row > * {
  width: 100%;
  max-width: 100%;
}
@media (min-width: 768px) {
  .cta-section .lead-form-card form.row > .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
}
@media (min-width: 992px) {
  .cta-section > .container-xl > .row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 42px;
    align-items: center !important;
  }
  .cta-section .lead-form-card form.row {
    display: flex !important;
  }
}

/* =========================================================
   POP-UP TESTE GRÁTIS
   ========================================================= */
.trial-modal .modal-dialog {
  max-width: 1120px;
  padding: 18px;
}

.trial-modal .modal-content {
  border: 0;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 30px 90px rgba(0, 20, 45, .35);
  position: relative;
}

.trial-modal-close {
  position: absolute;
  top: 22px;
  right: 24px;
  z-index: 5;
  width: 1.15rem;
  height: 1.15rem;
  opacity: 1;
}

.trial-modal-row {
  min-height: 650px;
}

.trial-modal-info {
  padding: 54px 54px 46px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(24, 115, 185, .10), transparent 38%),
    linear-gradient(145deg, #ffffff 0%, #ffffff 62%, #eef6ff 100%);
  border-right: 1px solid #e6edf5;
}

.trial-modal-info::after {
  content: "";
  position: absolute;
  width: 310px;
  height: 650px;
  border: 46px solid rgba(24, 115, 185, .07);
  border-radius: 50%;
  right: -235px;
  bottom: -190px;
  transform: rotate(22deg);
  pointer-events: none;
}

.trial-modal-logo {
  width: 240px;
  max-width: 80%;
  height: auto;
  margin-bottom: 42px;
}

.trial-modal-info h2 {
  font-family: 'Inter', sans-serif;
  font-size: clamp(1.8rem, 2.6vw, 2.65rem);
  line-height: 1.1;
  font-weight: 700;
  color: #001b3b;
  margin-bottom: 22px;
}

.trial-modal-info h2 span {
  display: block;
  color: #1873B9;
}

.trial-modal-intro {
  color: #586b83;
  font-size: 1rem;
  line-height: 1.7;
  max-width: 360px;
  margin-bottom: 34px;
}

.trial-benefit {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 20px;
  position: relative;
  z-index: 1;
}

.trial-benefit-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #edf5fc;
  display: grid;
  place-items: center;
  flex: 0 0 64px;
  color: #1873B9;
  font-size: 1.8rem;
}

.trial-benefit strong,
.trial-benefit small {
  display: block;
}

.trial-benefit strong {
  color: #001b3b;
  font-size: 1rem;
  margin-bottom: 4px;
}

.trial-benefit small {
  color: #62758e;
  font-size: .88rem;
  line-height: 1.45;
}

.trial-modal-form-side {
  background: #fff;
  padding: 72px 64px 42px;
}

.trial-form-heading {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 32px;
}

.trial-form-heading > i {
  color: #1873B9;
  font-size: 2.4rem;
  line-height: 1;
}

.trial-form-heading h3 {
  color: #001b3b;
  font-family: 'Inter', sans-serif;
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 6px;
}

.trial-form-heading p {
  margin: 0;
  color: #667890;
  font-size: 1rem;
}

.trial-modal-form-side .form-label {
  color: #334b68;
  font-weight: 600;
  margin-bottom: 8px;
}

.trial-input-group {
  position: relative;
}

.trial-input-group > i {
  position: absolute;
  left: 19px;
  top: 50%;
  transform: translateY(-50%);
  color: #506783;
  font-size: 1.35rem;
  z-index: 2;
}

.trial-input-group .form-control {
  height: 58px;
  border: 1px solid #d4dee9;
  border-radius: 11px;
  padding: 0 18px 0 56px;
  color: #102b4d;
  box-shadow: none;
}

.trial-input-group .form-control:focus {
  border-color: #1873B9;
  box-shadow: 0 0 0 .2rem rgba(24, 115, 185, .10);
}

.trial-privacy {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #5b6e86;
  font-size: .86rem;
  margin: 20px 4px;
}

.trial-privacy i {
  color: #1873B9;
}

.trial-submit {
  min-height: 60px;
  border: 0;
  border-radius: 10px;
  background: #1873B9;
  color: #fff;
  font-weight: 700;
  font-size: 1.05rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.trial-submit:hover,
.trial-submit:focus {
  background: #135f9a;
  color: #fff;
}

.trial-no-card {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #60738b;
  font-size: .88rem;
  margin-top: 16px;
}

.trial-no-card i {
  color: #1873B9;
}

@media (max-width: 991.98px) {
  .trial-modal .modal-dialog {
    max-width: 720px;
  }

  .trial-modal-row {
    min-height: 0;
  }

  .trial-modal-info {
    padding: 38px 34px 32px;
    border-right: 0;
    border-bottom: 1px solid #e6edf5;
  }

  .trial-modal-logo {
    width: 190px;
    margin-bottom: 26px;
  }

  .trial-benefit {
    display: none;
  }

  .trial-modal-intro {
    margin-bottom: 0;
  }

  .trial-modal-form-side {
    padding: 38px 34px 34px;
  }
}

@media (max-width: 575.98px) {
  .trial-modal .modal-dialog {
    padding: 8px;
    margin: 0;
  }

  .trial-modal .modal-content {
    border-radius: 20px;
  }

  .trial-modal-info {
    padding: 30px 24px 24px;
  }

  .trial-modal-info h2 {
    font-size: 1.65rem;
  }

  .trial-modal-form-side {
    padding: 30px 24px 26px;
  }

  .trial-form-heading h3 {
    font-size: 1.45rem;
  }

  .trial-form-heading > i {
    font-size: 1.8rem;
  }

  .trial-input-group .form-control {
    height: 54px;
  }

  .trial-submit {
    min-height: 56px;
    font-size: .96rem;
  }
}


/* Feedback dos formulários com envio direto */
.form-send-status {
  display: none;
  margin-top: 12px;
  padding: 11px 14px;
  border-radius: 10px;
  font-size: .88rem;
  line-height: 1.4;
  text-align: center;
}

.form-send-status.is-success,
.form-send-status.is-error {
  display: block;
}

.form-send-status.is-success {
  color: #176b35;
  background: #edf9f1;
  border: 1px solid #bfe7ca;
}

.form-send-status.is-error {
  color: #9c2f2f;
  background: #fff1f1;
  border: 1px solid #efc1c1;
}

/* Ajustes finais — pop-up Solicitar Demonstração */
.trial-modal-logo {
  width: 175px;
  max-width: 62%;
  margin-bottom: 32px;
}

#trialModalLabel .trial-title-highlight {
  color: #1873B9;
}

@media (max-width: 991.98px) {
  .trial-modal-logo {
    width: 145px;
    max-width: 55%;
    margin-bottom: 22px;
  }
}
