/*
  Veloz Uniformes — sistema visual oficial
  Camada de migração: deve ser carregada após os estilos locais nas páginas
  que possuem a classe .veloz-v2 no <body>.
*/

:root {
  --vz-navy-deep: #071129;
  --vz-navy: #0B1734;
  --vz-navy-2: #12204A;
  --vz-royal: #002FC6;
  --vz-royal-hover: #0A38D6;
  --vz-royal-soft: #EEF2FF;
  --vz-royal-line: #DDE5FF;
  --vz-ink: #141B2E;
  --vz-paper: #F4F6FB;
  --vz-line: #E3E7F1;
  --vz-green: #0F8A4C;
  --vz-green-hover: #13A559;
  --vz-gold: #F4B400;
  --vz-shadow-soft: 0 18px 42px -26px rgba(7,17,41,.28);
  --vz-shadow-card: 0 22px 50px -28px rgba(7,17,41,.34);
}

.veloz-v2 {
  color: var(--vz-ink);
  background: #fff;
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.veloz-v2 ::selection { background: var(--vz-royal); color: #fff; }
.veloz-v2 h1,
.veloz-v2 h2,
.veloz-v2 h3,
.veloz-v2 h4,
.veloz-v2 h5,
.veloz-v2 h6,
.veloz-v2 .font-display {
  font-family: 'Montserrat', system-ui, sans-serif;
  letter-spacing: -.015em;
}

/* Tokens Tailwind legados convertidos à paleta oficial. */
.veloz-v2 .bg-navy { background-color: var(--vz-navy) !important; }
.veloz-v2 .text-navy { color: var(--vz-navy) !important; }
.veloz-v2 .border-navy { border-color: var(--vz-navy) !important; }
.veloz-v2 .bg-mist { background-color: var(--vz-paper) !important; }
.veloz-v2 .border-line { border-color: var(--vz-line) !important; }
.veloz-v2 .bg-orange { background-color: var(--vz-royal) !important; }
.veloz-v2 .text-orange { color: var(--vz-royal) !important; }
.veloz-v2 .border-orange { border-color: var(--vz-royal) !important; }
.veloz-v2 [class*="bg-orange/"] { background-color: rgba(0,47,198,.18) !important; }
.veloz-v2 [class*="text-orange/"] { color: rgba(0,47,198,.82) !important; }
.veloz-v2 [class*="from-navy"] {
  --tw-gradient-from: var(--vz-navy-deep) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgba(7,17,41,0) var(--tw-gradient-to-position) !important;
}
.veloz-v2 [class*="via-navy"] {
  --tw-gradient-stops: var(--tw-gradient-from), var(--vz-navy) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}
.veloz-v2 [class*="to-navy"] { --tw-gradient-to: var(--vz-navy-2) var(--tw-gradient-to-position) !important; }
.veloz-v2 [class*="from-orange"] {
  --tw-gradient-from: var(--vz-royal) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgba(0,47,198,0) var(--tw-gradient-to-position) !important;
}
.veloz-v2 [class*="to-orange"] { --tw-gradient-to: var(--vz-royal-hover) var(--tw-gradient-to-position) !important; }

/* Estrutura e navegação. */
.veloz-v2 .container-pad,
.veloz-v2 .nav-container { max-width: 1200px; }
.veloz-v2 > header {
  border-bottom-color: var(--vz-line) !important;
  box-shadow: inset 0 4px 0 var(--vz-royal), 0 2px 14px -8px rgba(7,17,41,.26) !important;
}
.veloz-v2 > header img[src*="logo-icon.webp"] {
  content: url("../logo_antiga/logo-veloz-png.png");
  height: 2.6rem !important;
  width: auto !important;
  max-width: 112px;
  object-fit: contain;
  filter: none !important;
}
.veloz-v2 .nav-btn {
  color: rgba(11,23,52,.78) !important;
  border-radius: 9px;
  font-weight: 700;
}
.veloz-v2 .nav-btn:hover,
.veloz-v2 .nav-item:hover .nav-btn { color: var(--vz-royal) !important; background: var(--vz-royal-soft) !important; }
.veloz-v2 .nav-btn:focus-visible { outline-color: var(--vz-royal) !important; }
.veloz-v2 .nav-drop {
  border-color: var(--vz-line) !important;
  border-radius: 16px;
  box-shadow: var(--vz-shadow-card) !important;
}
.veloz-v2 .dl { color: var(--vz-ink) !important; border-radius: 10px; }
.veloz-v2 .dl:hover { color: var(--vz-royal) !important; background: var(--vz-royal-soft) !important; }
.veloz-v2 .dl-icon { color: var(--vz-royal) !important; background: var(--vz-royal-soft) !important; }
.veloz-v2 .dl-cta,
.veloz-v2 .mob-sub-cta { color: var(--vz-royal) !important; }
.veloz-v2 .dl-cta:hover { color: var(--vz-royal-hover) !important; background: var(--vz-royal-soft) !important; }
.veloz-v2 #mob-overlay { background: rgba(7,17,41,.58) !important; }
.veloz-v2 #mob-drawer { border-left: 1px solid var(--vz-royal-line); }
.veloz-v2 .mob-acc-btn,
.veloz-v2 .mob-plain-link { color: var(--vz-navy) !important; border-color: var(--vz-line) !important; }
.veloz-v2 .mob-acc-body { background: var(--vz-paper) !important; border-color: var(--vz-line) !important; }
.veloz-v2 .mob-sub-link { color: #41506c !important; border-color: var(--vz-line) !important; }
.veloz-v2 .mob-sub-link:active,
.veloz-v2 .mob-plain-link:active { background: var(--vz-royal-soft) !important; }

/* Shell único: mesmas classes e proporções da home aprovada. */
.veloz-v2 { scroll-behavior: smooth; }
@media (max-width: 1023px) { .veloz-v2 { padding-bottom: 74px; } }
.veloz-v2 .wrap { max-width: 1200px; margin-inline: auto; padding-inline: 24px; }
.veloz-v2 .topbar { height: 4px; background: linear-gradient(90deg, var(--vz-royal) 0%, #2B5CFF 45%, var(--vz-royal) 100%); }
.veloz-v2 .nav-link { font-family: 'Montserrat', system-ui, sans-serif; font-weight: 700; font-size: 13.5px; letter-spacing: .01em; color: rgba(11,23,52,.72); padding: 8px 12px; border-radius: 9px; transition: color .15s, background .15s; white-space: nowrap; text-decoration: none; }
.veloz-v2 .nav-link:hover { color: var(--vz-royal); background: var(--vz-royal-soft); }
.veloz-v2 .b-base { font-family: 'Montserrat', system-ui, sans-serif; font-weight: 800; font-style: italic; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border-radius: 12px; padding: 15px 28px; font-size: 15px; transition: transform .15s ease, background .2s ease, box-shadow .2s ease, color .2s ease; text-decoration: none; position: relative; overflow: hidden; }
.veloz-v2 .b-base:active { transform: translateY(1px); }
.veloz-v2 .b-base.hidden { display: none !important; }
@media (min-width: 768px) { .veloz-v2 .b-base.hidden[class*="md:inline-flex"] { display: inline-flex !important; } }
@media (min-width: 1024px) { .veloz-v2 .b-base.hidden[class*="lg:inline-flex"] { display: inline-flex !important; } }
.veloz-v2 .b-wa, .veloz-v2 .bg-wa { background: var(--vz-green) !important; color: #fff !important; box-shadow: 0 14px 34px -12px rgba(15,138,76,.5); }
.veloz-v2 .b-wa:hover, .veloz-v2 .hover\:bg-wa-400:hover { background: var(--vz-green-hover) !important; transform: translateY(-2px); }
.veloz-v2 .b-royal, .veloz-v2 .bg-royal { background: var(--vz-royal) !important; color: #fff !important; box-shadow: 0 14px 40px -14px rgba(0,47,198,.5); }
.veloz-v2 .b-royal:hover, .veloz-v2 .hover\:bg-royal:hover { background: var(--vz-royal-hover) !important; transform: translateY(-2px); }
.veloz-v2 .f-label { font-family: 'Montserrat', system-ui, sans-serif; font-weight: 800; font-style: italic; text-transform: uppercase; letter-spacing: .14em; font-size: 11px; }
.veloz-v2 .vlz-dash { display: inline-flex; flex-direction: column; gap: 4px; }
.veloz-v2 .vlz-dash i { display: block; height: 4px; border-radius: 2px; background: var(--vz-royal); transform: skewX(-28deg); }
.veloz-v2 .vlz-dash i:nth-child(1) { width: 30px; margin-left: 10px; }
.veloz-v2 .vlz-dash i:nth-child(2) { width: 44px; margin-left: 4px; }
.veloz-v2 .vlz-dash i:nth-child(3) { width: 22px; }
.veloz-v2 .vlz-dash.on-dark i { background: #5B7CFF; }
.veloz-v2 .vlz-dash.sm { gap: 3px; }
.veloz-v2 .vlz-dash.sm i { height: 3px; }
.veloz-v2 .vlz-dash.sm i:nth-child(1) { width: 20px; margin-left: 7px; }
.veloz-v2 .vlz-dash.sm i:nth-child(2) { width: 30px; margin-left: 3px; }
.veloz-v2 .vlz-dash.sm i:nth-child(3) { width: 15px; }
.veloz-v2 .text-royal-300 { color: #5B7CFF !important; }
.veloz-v2 .border-linec { border-color: var(--vz-line) !important; }
.veloz-v2 .bg-paper { background-color: var(--vz-paper) !important; }
.veloz-v2 .bg-navy-950 { background-color: var(--vz-navy-deep) !important; }
.veloz-v2 .shadow-soft { box-shadow: 0 2px 14px -4px rgba(7,17,41,.12) !important; }
.veloz-v2 .shadow-wa { box-shadow: 0 14px 34px -12px rgba(15,138,76,.5) !important; }
.veloz-v2 .hover\:bg-paper:hover { background-color: var(--vz-paper) !important; }
.veloz-v2 .hover\:text-royal-300:hover { color: #5B7CFF !important; }
.veloz-v2 #fb-overlay { position: fixed; inset: 0; background: rgba(11,23,52,.55); z-index: 998; opacity: 0; visibility: hidden; transition: opacity .25s, visibility 0s linear .25s; }
.veloz-v2 #fb-overlay.open { opacity: 1; visibility: visible; transition: opacity .25s, visibility 0s linear 0s; }
.veloz-v2 #fb-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: 310px; max-width: 92vw; background: #fff; z-index: 999; overflow-y: auto; transform: translateX(100%); transition: transform .3s cubic-bezier(.4,0,.2,1); display: flex; flex-direction: column; }
.veloz-v2 #fb-drawer.open { transform: translateX(0); }
.veloz-v2 .fb-mlink { display: flex; align-items: center; gap: 12px; padding: 15px 22px; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 700; font-size: 14px; color: var(--vz-navy); border-bottom: 1px solid #EDF0F7; text-decoration: none; }
.veloz-v2 .fb-mlink:active { background: var(--vz-paper); }
.veloz-v2 .fb-mlink .lucide { color: var(--vz-royal); }
@media (max-width: 1023px) { .veloz-v2 #fb-toggle { display: flex !important; } }
@media (min-width: 1024px) { .veloz-v2 #fb-toggle { display: none !important; } }

/* Botões e CTA. */
.veloz-v2 .btn-primary {
  background: var(--vz-royal) !important;
  border-radius: 12px;
  box-shadow: 0 14px 34px -16px rgba(0,47,198,.56) !important;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-style: italic;
  font-weight: 800;
  text-decoration: none;
}
.veloz-v2 .btn-primary:hover { background: var(--vz-royal-hover) !important; transform: translateY(-2px); }
.veloz-v2 .btn-wa {
  background: var(--vz-green) !important;
  border-radius: 12px;
  box-shadow: 0 14px 34px -16px rgba(15,138,76,.55) !important;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-style: italic;
  font-weight: 800;
  text-decoration: none;
}
.veloz-v2 .btn-wa:hover { background: var(--vz-green-hover) !important; transform: translateY(-2px); }
.veloz-v2 .btn-ghost {
  border-color: var(--vz-navy) !important;
  border-radius: 12px;
  color: var(--vz-navy) !important;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-style: italic;
  font-weight: 800;
  text-decoration: none;
}
.veloz-v2 .btn-ghost:hover { background: var(--vz-navy) !important; color: #fff !important; }
.veloz-v2 .btn-ghost-white {
  border-radius: 12px;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-style: italic;
  font-weight: 800;
  text-decoration: none;
}
.veloz-v2 .btn-ghost-white:hover { background: #fff !important; color: var(--vz-navy) !important; }

/* Seções e componentes comerciais. */
.veloz-v2 .pattern-grid {
  background-image: radial-gradient(circle, rgba(255,255,255,.11) 1px, transparent 1px) !important;
  background-size: 30px 30px !important;
}
.veloz-v2 .pattern-grid-light {
  background-image: linear-gradient(135deg, rgba(0,47,198,.045) 0 1px, transparent 1px 100%) !important;
  background-size: 22px 22px !important;
}
.veloz-v2 .eyebrow,
.veloz-v2 .vz-eyebrow {
  color: var(--vz-royal) !important;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-size: 11px;
  font-style: italic;
  font-weight: 800;
  letter-spacing: .14em;
}
.veloz-v2 .accent-bar {
  background: linear-gradient(90deg, var(--vz-royal), #5B7CFF) !important;
  border-radius: 3px;
  transform: skewX(-24deg);
}
.veloz-v2 .card {
  border-color: var(--vz-line) !important;
  border-radius: 16px;
  box-shadow: 0 2px 14px -7px rgba(7,17,41,.12);
}
.veloz-v2 .card:hover {
  border-color: rgba(0,47,198,.38) !important;
  box-shadow: var(--vz-shadow-card) !important;
  transform: translateY(-4px);
}
.veloz-v2 section.bg-navy.pattern-grid {
  background-color: var(--vz-navy) !important;
  background-image: radial-gradient(circle at 82% 18%, rgba(43,92,255,.24), transparent 28%), radial-gradient(circle, rgba(255,255,255,.09) 1px, transparent 1px) !important;
  background-size: auto, 30px 30px !important;
}
.veloz-v2 input,
.veloz-v2 select,
.veloz-v2 textarea {
  border-color: var(--vz-line) !important;
  border-radius: 10px;
}
.veloz-v2 input:focus,
.veloz-v2 select:focus,
.veloz-v2 textarea:focus {
  border-color: var(--vz-royal) !important;
  box-shadow: 0 0 0 3px rgba(0,47,198,.13) !important;
  outline: none;
}

/* Blog e filtros. */
.veloz-v2 .filter-pill { border-color: var(--vz-line) !important; color: #52617b !important; }
.veloz-v2 .filter-pill:hover { border-color: var(--vz-royal) !important; color: var(--vz-royal) !important; }
.veloz-v2 .filter-pill.active,
.veloz-v2 .filter-pill.active[data-cat],
.veloz-v2 .hero-pill.active { background: var(--vz-royal) !important; border-color: var(--vz-royal) !important; color: #fff !important; }
.veloz-v2 .cat-guias,
.veloz-v2 .cat-tecnicas,
.veloz-v2 .cat-negocios,
.veloz-v2 .cat-tendencias { background: var(--vz-royal-soft) !important; color: var(--vz-royal) !important; }
.veloz-v2 .img-guias,
.veloz-v2 .img-tecnicas,
.veloz-v2 .img-negocios,
.veloz-v2 .img-tendencias { background: linear-gradient(135deg, var(--vz-navy), var(--vz-royal)) !important; }
.veloz-v2 .toc-link:hover,
.veloz-v2 .toc-link.active { color: var(--vz-royal) !important; border-color: var(--vz-royal) !important; }

/* Rodapé e elementos injetados por conversão. */
.veloz-v2 > footer {
  background: linear-gradient(145deg, var(--vz-navy-deep), var(--vz-navy) 58%, var(--vz-navy-2)) !important;
  border-top: 1px solid rgba(145,170,255,.2);
}
.veloz-v2 > footer img[src*="logo-icon.webp"] {
  content: url("../logo_antiga/logo-veloz-png.png");
  width: auto !important;
  max-width: 132px;
  object-fit: contain;
  filter: grayscale(1) brightness(0) invert(1) !important;
}
.veloz-v2 > footer a:hover { color: #fff !important; }
.veloz-v2 .vz-overlay { background: rgba(7,17,41,.64) !important; }
.veloz-v2 .vz-modal-head { background: linear-gradient(135deg, var(--vz-green), var(--vz-green-hover)) !important; }
.veloz-v2 .vz-min,
.veloz-v2 .vz-req,
.veloz-v2 .vz-eyebrow { color: var(--vz-royal) !important; }
.veloz-v2 .vz-min { background: var(--vz-royal) !important; color: #fff !important; }
.veloz-v2 .vz-field label,
.veloz-v2 .vz-final-inner h2,
.veloz-v2 .vz-final-inner p strong { color: var(--vz-navy) !important; }
.veloz-v2 .vz-field input:focus,
.veloz-v2 .vz-field select:focus { border-color: var(--vz-royal) !important; box-shadow: 0 0 0 3px rgba(0,47,198,.13) !important; }
.veloz-v2 .vz-final-section { background: var(--vz-paper) !important; border-color: var(--vz-line) !important; }
.veloz-v2 .vz-final-card { border-color: var(--vz-line) !important; box-shadow: var(--vz-shadow-soft) !important; }

@media (max-width: 640px) {
  .veloz-v2 { overflow-x: clip; }
  .veloz-v2 .container-pad,
  .veloz-v2 .nav-container { padding-inline: 20px; }
  .veloz-v2 > header img[src*="logo-icon.webp"] { height: 2.25rem !important; max-width: 96px; }
  .veloz-v2 .btn-primary,
  .veloz-v2 .btn-wa,
  .veloz-v2 .btn-ghost,
  .veloz-v2 .btn-ghost-white { border-radius: 11px; }
  .veloz-v2 .card { border-radius: 14px; }
  .veloz-v2 section.bg-navy h1 { max-width: calc(100% - 20px); font-size: clamp(2rem, 10vw, 2.6rem) !important; line-height: 1.04 !important; letter-spacing: -.025em; overflow-wrap: anywhere; }
  .veloz-v2 section.bg-navy p { max-width: calc(100% - 20px); }
}

@media (prefers-reduced-motion: reduce) {
  .veloz-v2 *, .veloz-v2 *::before, .veloz-v2 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* ══════════════════════════════════════════════════════════════
   NAVEGAÇÃO GLOBAL — mega menu desktop + drawer mobile
   (classes exclusivas vn-* / fb-acc*, valem com ou sem .veloz-v2)
   ══════════════════════════════════════════════════════════════ */

/* ── Mega menu desktop ── */
.vn-item { position: relative; }
.vn-item::after { content: ''; position: absolute; top: 100%; left: -12px; right: -12px; height: 18px; } /* ponte de hover */
.vn-btn { display: inline-flex; align-items: center; gap: 5px; padding: 8px 12px; border-radius: 9px; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 700; font-size: 13.5px; color: rgba(11,23,52,.72); background: none; border: 0; cursor: pointer; white-space: nowrap; transition: color .15s, background .15s; line-height: 1.2; text-decoration: none; }
.vn-btn:hover, .vn-item:hover .vn-btn, .vn-item:focus-within .vn-btn { color: #002FC6; background: #EEF2FF; }
.vn-btn:focus-visible { outline: 2px solid #002FC6; outline-offset: 2px; }
.vn-btn .vn-ch { transition: transform .2s; }
.vn-item:hover .vn-btn .vn-ch, .vn-item:focus-within .vn-btn .vn-ch { transform: rotate(180deg); }
.vn-drop { position: absolute; top: calc(100% + 14px); left: 50%; transform: translateX(-50%) translateY(-6px); background: #fff; border: 1px solid #E3E7F1; border-radius: 16px; box-shadow: 0 24px 60px -18px rgba(7,17,41,.28), 0 4px 16px -6px rgba(7,17,41,.12); padding: 10px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s; z-index: 999; }
.vn-drop::before { content: ''; position: absolute; top: 0; left: 24px; width: 54px; height: 4px; background: linear-gradient(90deg, #002FC6, #2B5CFF); transform: skewX(-28deg); border-radius: 0 0 4px 4px; }
.vn-drop.left { left: 0; transform: translateY(-6px); }
.vn-drop.right { right: 0; left: auto; transform: translateY(-6px); }
.vn-item:hover .vn-drop, .vn-item:focus-within .vn-drop { opacity: 1; visibility: visible; pointer-events: all; transition: opacity .18s ease, transform .18s ease, visibility 0s linear 0s; }
.vn-item:hover .vn-drop:not(.left):not(.right), .vn-item:focus-within .vn-drop:not(.left):not(.right) { transform: translateX(-50%) translateY(0); }
.vn-item:hover .vn-drop.left, .vn-item:focus-within .vn-drop.left,
.vn-item:hover .vn-drop.right, .vn-item:focus-within .vn-drop.right { transform: translateY(0); }
.vn-label { font-family: 'Montserrat', system-ui, sans-serif; font-size: 10px; font-weight: 800; font-style: italic; text-transform: uppercase; letter-spacing: .13em; color: #94A3B8; padding: 6px 10px 7px; white-space: nowrap; }
.vn-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.vn-link { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border-radius: 10px; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 600; font-size: 13px; color: #1B2540; transition: background .12s, color .12s; white-space: nowrap; text-decoration: none; }
.vn-link:hover { background: #F4F6FB; color: #002FC6; }
.vn-ico { width: 30px; height: 30px; border-radius: 8px; background: #EEF2FF; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: #002FC6; transition: background .12s, color .12s; }
.vn-link:hover .vn-ico { background: #002FC6; color: #fff; }
.vn-cta { color: #002FC6 !important; font-weight: 800; font-style: italic; border-top: 1px solid #E3E7F1; margin-top: 6px; padding-top: 12px; border-radius: 0 0 10px 10px; }
.vn-cta:hover { background: #EEF2FF; }
.vn-w-prod { min-width: 470px; }
.vn-w-pers { min-width: 250px; }
.vn-w-seg  { min-width: 280px; }
.vn-w-brand{ min-width: 220px; }

/* ── Drawer mobile: acordeões ── */
.fb-acc { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 22px; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 700; font-size: 14px; color: #0B1734; background: none; border: 0; border-bottom: 1px solid #EDF0F7; cursor: pointer; text-align: left; }
.fb-acc .fb-acc-left { display: flex; align-items: center; gap: 12px; }
.fb-acc .lucide { color: #002FC6; }
.fb-acc .fb-ch { color: #94A3B8; transition: transform .2s; flex-shrink: 0; }
.fb-acc.open .fb-ch { transform: rotate(180deg); }
.fb-acc.open { color: #002FC6; }
.fb-acc-body { display: none; background: #F4F6FB; border-bottom: 1px solid #EDF0F7; }
.fb-acc-body.open { display: block; }
.fb-sub { display: flex; align-items: center; gap: 10px; padding: 12px 24px 12px 30px; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 600; font-size: 13px; color: #41506C; border-bottom: 1px solid #E9EDF5; text-decoration: none; }
.fb-sub:last-child { border-bottom: 0; }
.fb-sub:active { background: #EEF2FF; }
.fb-sub .lucide { color: #7C8DB0; width: 15px; height: 15px; }
.fb-sub-cta { color: #002FC6; font-weight: 800; font-style: italic; }
.fb-sub-cta .lucide { color: #002FC6; }

/* ── Hero interno: figura ilustrativa à direita ── */
.hero-side-img { position: absolute; right: 4%; top: 50%; transform: translateY(-50%) rotate(1.5deg); width: 330px; display: none; }
@media (min-width: 1024px) { .hero-side-img { display: block; } }
@media (min-width: 1280px) { .hero-side-img { width: 380px; } }
.hero-side-img figure { position: relative; border-radius: 18px; overflow: hidden; box-shadow: 0 30px 60px -22px rgba(2,8,24,.65); outline: 1px solid rgba(255,255,255,.16); }
.hero-side-img img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.hero-side-img figcaption { position: absolute; inset-inline: 0; bottom: 0; padding: 30px 16px 12px; background: linear-gradient(to top, rgba(7,17,41,.88), transparent); color: #fff; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 800; font-style: italic; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; display: flex; align-items: center; gap: 8px; }
.hero-side-img .hs-dash { display: inline-flex; flex-direction: column; gap: 3px; }
.hero-side-img .hs-dash i { display: block; height: 3px; border-radius: 2px; background: #5B7CFF; transform: skewX(-28deg); }
.hero-side-img .hs-dash i:nth-child(1) { width: 18px; margin-left: 6px; }
.hero-side-img .hs-dash i:nth-child(2) { width: 26px; }

/* ── Cards de segmento com imagem (hub segmentos e afins) ── */
.seg-card-img { padding: 0 !important; overflow: hidden; }
.seg-card-img .seg-thumb { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.seg-card-img .seg-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .45s ease; }
.seg-card-img:hover .seg-thumb img { transform: scale(1.06); }
.seg-card-img .seg-thumb::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(7,17,41,.42), transparent 55%); }
.seg-card-img .seg-tag { position: absolute; left: 12px; bottom: 10px; z-index: 1; display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,.94); color: #0B1734; font-family: 'Montserrat', system-ui, sans-serif; font-weight: 800; font-style: italic; font-size: 11px; padding: 5px 11px; border-radius: 999px; }
.seg-card-img .seg-tag .lucide { color: #002FC6; }
.seg-card-img .seg-body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
