/**
 * Boavista View Theme Styles
 * Author: Boavista
 * Version: 1.0
 */

/* ============================
   GOOGLE FONTS
   ============================ */
@import url('https://fonts.googleapis.com/css2?family=Merriweather+Sans:wght@300;400;500;600;700;800&display=swap');

/* ============================
   CSS VARIABLES
   ============================ */
:root {
  /* Colors */
  --color-navy: #1c2b60;
  --color-navy-light: #2a3f7a;
  --color-cyan: #90e0ef;
  --color-cyan-dark: #00b4d8;
  --color-turquoise: #4fd1c5;
  --color-light-gray: #f0f7f9;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-text: #333333;
  --color-text-light: #666666;
  --Hub-Blue: #0f89d3;
  --Blue-200: #43BFD7;

  /* Typography */
  --font-primary: 'Merriweather Sans', -apple-system, BlinkMacSystemFont,
    'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;

  /* Spacing */
  --spacing-xs: 8px;
  --spacing-sm: 16px;
  --spacing-md: 24px;
  --spacing-lg: 32px;
  --spacing-xl: 48px;
  --spacing-xxl: 64px;
  --layout-inline-padding: clamp(24px, 4vw, 80px);

  /* Border Radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;

  /* Transitions */
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;

  /* Shadows */
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.12);
  --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 16px 32px rgba(0, 0, 0, 0.2);
}

/* ============================
   RESET & BASE STYLES
   ============================ */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-primary);
  line-height: 1.6;
  color: var(--color-text);
  background: rgba(240, 247, 255, 0.5);
  overflow-x: hidden;
}

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

a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-normal);
}

ul,
ol {
  list-style: none;
}

button {
  font-family: inherit;
  cursor: pointer;
  border: none;
  background: none;
}

/* ============================
   LAYOUT
   ============================ */
.container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

.container-wide {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

/* ============================
   HEADER
   ============================ */
.site-header {
  background: transparent;
  padding: var(--spacing-md) 0;
  position: sticky;
  top: 0;
  z-index: 1000;
  transition: var(--transition-normal);
}

.site-header .container {
  max-width: 1400px;
}

.site-header .header-content {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  padding: var(--spacing-sm) clamp(24px, 2.8vw, 40px);
  box-shadow: 0 4px 24px rgba(28, 43, 96, 0.08);
  border-radius: var(--radius-xl);
  border: 1px solid rgba(255, 255, 255, 0.5);
  position: relative;
}

.header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: clamp(16px, 2.5vw, 36px);
}

.site-branding {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  flex-shrink: 0;
}

.logo-link {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
}

.site-logo svg {
  fill: var(--color-navy);
}

.site-title {
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
}

.main-navigation {
  display: flex;
  align-items: center;
  gap: clamp(12px, 1.5vw, 22px);
  position: static;
  flex-shrink: 1;
  min-width: 0;
  justify-content: flex-end;
}

.nav-menu {
  display: flex;
  gap: clamp(10px, 1vw, 16px) !important;
  align-items: center;
  flex-shrink: 1;
  min-width: 0;
}

.nav-menu li {
  position: relative;
}

.nav-menu a,
.nav-menu li a {
  font-weight: var(--font-weight-medium);
  color: var(--color-navy);
  padding: var(--spacing-xs) clamp(6px, 0.65vw, 10px);
  transition: var(--transition-fast);
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  white-space: nowrap;
  gap: 0;
}

.nav-menu a:hover {
  color: var(--color-turquoise);
}

.nav-menu .current-menu-item > a,
.nav-menu .current_page_item > a {
  color: var(--color-turquoise);
}

/* Ícones do Menu */
.menu-icon-left,
.nav-menu img.menu-icon-left {
  width: 16px !important;
  height: 16px !important;
  margin-right: 8px !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: block !important;
  flex-shrink: 0;
  align-self: center;
}

.menu-icon-dropdown,
.nav-menu img.menu-icon-dropdown {
  width: 12px !important;
  height: 8px !important;
  margin-left: 6px !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: block !important;
  flex-shrink: 0;
  align-self: center;
  position: relative;
  top: 0.5px;
  transition: transform var(--transition-fast);
}

.menu-item-has-children.submenu-open > a .menu-icon-dropdown {
  transform: rotate(180deg);
}

.nav-login-icon {
  width: 16px !important;
  height: 16px !important;
  margin-right: 8px !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: block !important;
  flex-shrink: 0;
  align-self: center;
  position: relative;
  top: 0.5px;
}

/* Dropdown Menu */
.menu-item-has-children {
  position: relative;
}

.sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--color-white);
  box-shadow: var(--shadow-md);
  border-radius: var(--radius-md);
  padding: var(--spacing-sm);
  min-width: 200px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: var(--transition-normal);
}

.sub-menu li {
  margin-bottom: var(--spacing-xs);
}

.sub-menu a {
  display: block;
  padding: var(--spacing-xs) var(--spacing-sm);
  border-radius: var(--radius-sm);
}

.sub-menu a:hover {
  background: var(--color-light-gray);
}

/* Destaque especial para o item "view" no submenu - apenas tamanho */
.submenu-item-view-highlighted {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.submenu-link-view {
  font-size: 1.35rem !important;
}

.submenu-link-view .menu-icon-left {
  width: 20px !important;
  height: 20px !important;
}

/* Dropdown Solucoes por perfil */
.menu-item-solutions-dropdown > .sub-menu.solutions-dropdown-panel {
  top: calc(100% + 30px);
  left: 50%;
  right: auto;
  min-width: min(1160px, calc(100vw - 40px));
  width: min(1160px, calc(100vw - 40px));
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(28, 43, 96, 0.08);
  box-shadow: 0 18px 45px rgba(12, 29, 75, 0.18);
  transform: translate(-50%, -12px);
  z-index: 60;
}

.menu-item-solutions-dropdown.submenu-open > .sub-menu.solutions-dropdown-panel {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.menu-item-solutions-dropdown {
  position: static;
}

.nav-menu li.menu-item-solutions-dropdown {
  position: static;
}

.menu-item-solutions-dropdown .solutions-dropdown-item {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding: 16px;
  border-radius: 0;
  min-height: 280px;
  text-decoration: none;
  white-space: normal !important;
  overflow: hidden;
  position: relative;
}

.menu-item-solutions-dropdown .solutions-dropdown-item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 16px;
  right: 0;
  width: 1px;
  height: calc(100% - 32px);
  background: linear-gradient(
    to bottom,
    rgba(28, 43, 96, 0),
    rgba(28, 43, 96, 0.2) 20%,
    rgba(28, 43, 96, 0.2) 80%,
    rgba(28, 43, 96, 0)
  );
}

.menu-item-solutions-dropdown .solutions-dropdown-item:hover {
  background: rgba(28, 43, 96, 0.04);
}

.menu-item-solutions-dropdown .solutions-dropdown-heading {
  width: 100%;
  min-height: 96px;
}

.menu-item-solutions-dropdown .solutions-dropdown-logo {
  width: auto;
  max-width: 122px;
  height: 28px;
  object-fit: contain;
  margin-bottom: 12px;
}

.menu-item-solutions-dropdown .solutions-dropdown-item-hub-infra .solutions-dropdown-logo {
  max-width: 142px;
  height: 34px;
}

.menu-item-solutions-dropdown .solutions-dropdown-title {
  display: block;
  width: 100%;
  font-size: 1.125rem;
  font-weight: var(--font-weight-semibold);
  line-height: 1.3;
  color: var(--color-navy);
  margin: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.menu-item-solutions-dropdown .solutions-dropdown-item-view .solutions-dropdown-title {
  color: #65AEBC;
}

.menu-item-solutions-dropdown .solutions-dropdown-item-hub .solutions-dropdown-title {
  color: #0F89D3;
}

.menu-item-solutions-dropdown .solutions-dropdown-item-hub-infra .solutions-dropdown-title {
  color: #14577F;
}

.menu-item-solutions-dropdown .solutions-dropdown-description {
  display: block;
  width: 100%;
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.45;
  color: rgba(28, 43, 96, 0.9);
  white-space: normal;
  overflow-wrap: anywhere;
}

.menu-item-solutions-dropdown .solutions-dropdown-description strong {
  color: var(--color-navy);
}

.menu-item-solutions-dropdown .solutions-dropdown-cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 12px);
  align-self: center;
  min-height: 42px;
  border-radius: 10px;
  background: var(--color-navy);
  color: var(--color-white);
  font-size: 0.9375rem;
  font-weight: var(--font-weight-semibold);
}

.menu-item-solutions-dropdown .solutions-dropdown-item:hover .solutions-dropdown-cta {
  background: #10235f;
}

@media (min-width: 1025px) {
  .menu-item-has-children:not(.menu-item-solutions-dropdown):not(.nav-client-access):hover > .sub-menu,
  .menu-item-has-children:not(.menu-item-solutions-dropdown):not(.nav-client-access):focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .menu-item-solutions-dropdown:hover > .sub-menu.solutions-dropdown-panel,
  .menu-item-solutions-dropdown:focus-within > .sub-menu.solutions-dropdown-panel {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
  }

  .nav-client-access:hover > .nav-client-access-dropdown,
  .nav-client-access:focus-within > .nav-client-access-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .menu-item-has-children:hover > a .menu-icon-dropdown,
  .menu-item-has-children:focus-within > a .menu-icon-dropdown {
    transform: rotate(180deg);
  }
}

.nav-login {
  font-weight: var(--font-weight-medium);
  color: var(--color-navy);
  padding: var(--spacing-xs) clamp(12px, 1.2vw, 20px);
  padding-right: clamp(14px, 1.4vw, 22px);
  transition: var(--transition-fast);
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  white-space: nowrap;
  flex-shrink: 0;
  gap: 0;
}

.nav-login:hover {
  color: var(--color-turquoise);
}

.nav-client-access {
  position: relative;
}

.nav-client-access .nav-client-access-trigger {
  justify-content: flex-start;
}

.nav-client-access .nav-client-access-icon {
  margin-left: 6px !important;
  display: block !important;
  align-self: center;
  position: relative;
  top: 0.5px;
}

.nav-client-access-dropdown {
  top: calc(100% + 12px);
  right: 0;
  left: auto;
  min-width: 180px;
  padding: 10px;
  border: 1px solid rgba(28, 43, 96, 0.12);
  border-radius: 12px;
  box-shadow: 0 18px 35px rgba(12, 29, 75, 0.18);
  z-index: 70;
}

.nav-client-access.submenu-open > .nav-client-access-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.nav-client-access-item {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  padding: 10px 12px;
  border-radius: 10px;
  color: var(--color-navy);
  text-decoration: none;
}

.nav-client-access-item:hover {
  background: rgba(28, 43, 96, 0.06);
}

.nav-client-access-logo {
  width: auto;
  height: 24px;
  max-width: 88px;
  object-fit: contain;
  flex-shrink: 0;
}

.nav-client-access-item-view {
  border: 1px solid rgba(101, 174, 188, 0.35);
  background: rgba(101, 174, 188, 0.12);
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  padding: var(--spacing-xs);
}

.mobile-menu-toggle span {
  width: 25px;
  height: 3px;
  background: var(--color-navy);
  transition: var(--transition-fast);
}

/* ============================
   FOOTER
   ============================ */
.site-footer {
  background: var(--color-navy);
  color: var(--color-white);
  padding: var(--spacing-xxl) 0;
}

.site-footer .container {
  padding: 0 var(--layout-inline-padding);
}

/* Footer Header - Logo e Redes Sociais */
.footer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: var(--spacing-xl);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: var(--spacing-xl);
}

/* Footer Navigation Section - Navegação, Soluções e Contatos */
.footer-navigation-section {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: var(--spacing-lg);
  padding-bottom: var(--spacing-xl);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: var(--spacing-lg);
}

.footer-column h4 {
  color: #93A2D6;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 16px;
  text-transform: uppercase;
  margin-bottom: var(--spacing-md);
  letter-spacing: 0.5px;
}

.footer-social {
  display: flex;
  gap: var(--spacing-sm);
  align-items: center;
}

.social-link {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  transition: var(--transition-fast);
  color: white;
}

.social-link svg {
  fill: white;
}

.social-link:hover {
  background: var(--color-cyan);
  transform: translateY(-2px);
}

.social-link:hover svg {
  fill: var(--color-navy);
}

.footer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-menu li {
  margin-bottom: 12px;
}

.footer-menu a {
  color: #eef2f3;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  transition: var(--transition-fast);
  text-decoration: none;
  display: inline-block;
}

.footer-menu a:hover {
  color: var(--color-cyan);
}

.footer-phone {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}

.footer-phone a {
  color: #eef2f3;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  text-decoration: none;
  transition: var(--transition-fast);
}

.footer-phone a:hover {
  color: var(--color-cyan);
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.contact-item {
  margin-bottom: 0;
}

.contact-item strong {
  color: #90e0ef;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.48px;
  display: block;
  margin-bottom: 8px;
}

.contact-item a {
  color: #eef2f3;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.66px;
  text-decoration: none;
  display: block;
  margin-top: 4px;
}

.contact-item a:hover {
  color: var(--color-cyan);
}

.contact-item span {
  color: #eef2f3;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  display: block;
}

.contact-hours {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #eef2f3;
  opacity: 0.7;
}

.contact-hours small {
  font-size: 14px;
  line-height: 20px;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: var(--spacing-lg);
}

.footer-copyright {
  display: flex;
  align-items: center;
}

.copyright {
  font-size: 0.85rem;
  opacity: 0.7;
  margin: 0;
}

.footer-logo {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-weight: var(--font-weight-bold);
}

.footer-logo img {
  max-height: 40px;
  width: auto;
}

.footer-certifications {
  display: flex;
  gap: var(--spacing-sm);
  align-items: center;
  justify-content: flex-end;
}

.cert-badge {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
}

.cert-badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer-links {
  display: flex;
  gap: var(--spacing-md);
  font-size: 0.9rem;
}

.footer-links a:hover {
  color: var(--color-cyan);
}

/* ============================
   BUTTONS
   ============================ */
.btn {
  display: inline-block;
  padding: 14px 32px;
  font-weight: var(--font-weight-medium);
  text-align: center;
  border-radius: var(--radius-md);
  transition: var(--transition-fast);
  cursor: pointer;
  border: 2px solid transparent;
  font-size: 1rem;
}

.btn-primary {
  background: var(--color-cyan);
  color: var(--color-navy);
  font-weight: var(--font-weight-bold);
}

.btn-navy {
  background: var(--color-navy);
  color: #ffffff !important;
  border-radius: 8px;
}

.btn-navy:hover {
  background: var(--color-navy);
  color: #ffffff !important;
  opacity: 0.9;
}

.solution-card .btn-primary {
  background: #1c2b60;
  color: #ffffff;
}

.solution-card .btn-primary:hover {
  background: #1c2b60;
  color: #ffffff;
  opacity: 0.9;
}

.btn-primary:hover {
  background: var(--color-cyan-dark);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

.btn-secondary {
  background: var(--color-cyan);
  color: var(--color-navy);
}

.btn-secondary:hover {
  background: var(--color-cyan-dark);
  color: var(--color-white);
  transform: translateY(-2px);
}

.btn-outline {
  background: transparent;
  color: var(--color-navy);
  border-color: var(--color-navy);
}

.btn-outline:hover {
  background: var(--color-navy);
  color: var(--color-white);
}

.btn-block {
  width: 100%;
  display: block;
}

/* ============================
   VIDEO BACKGROUND
   ============================ */
.video-background-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}

.video-background {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(28, 43, 96, 0.1);
  z-index: 1;
}

/* Overlay mais escuro para hero de carreiras */
.hero-carreiras .video-overlay {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.84) 40%, rgba(255, 255, 255, 0) 100%) !important;
  opacity: 1 !important;
}

/* Carreiras: aproxima newsletter da seção anterior */
.page-carreiras .reasons-section {
  padding-bottom: 32px;
}

.page-carreiras .newsletter-carreiras-cta {
  padding-top: 32px;
}

@media (max-width: 768px) {
  .page-carreiras .reasons-section {
    padding-bottom: 20px !important;
  }

  .page-carreiras .newsletter-carreiras-cta {
    padding-top: 16px !important;
  }
}

/* Carreiras: ajustes de responsividade (tablet/mobile) */
@media (min-width: 769px) and (max-width: 1300px) {
  .page-carreiras .reasons-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
    margin-bottom: 24px !important;
    align-items: stretch !important;
  }

  .page-carreiras .reasons-content-card,
  .page-carreiras .boavista-way-content-card,
  .page-carreiras .gptw-content-card,
  .page-carreiras .reasons-image-card,
  .page-carreiras .boavista-way-image-card,
  .page-carreiras .gptw-image-card {
    min-height: 300px;
    height: 100%;
  }
}

@media (min-width: 769px) and (max-width: 1200px) {
  .page-carreiras .tech-people-wrapper,
  .page-carreiras .career-step-wrapper {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .page-carreiras .tech-people-content,
  .page-carreiras .career-step-content {
    order: 1;
  }

  .page-carreiras .tech-people-image,
  .page-carreiras .career-step-image {
    order: 2;
  }

  .page-carreiras .image-stack,
  .page-carreiras .career-step-image .image-card,
  .page-carreiras .reasons-image-card,
  .page-carreiras .boavista-way-image-card,
  .page-carreiras .gptw-image-card {
    height: clamp(280px, 42vw, 360px);
    min-height: 0;
    max-height: none;
  }

  .page-carreiras .benefits-grid {
    grid-template-columns: 1fr;
  }

  .page-carreiras .reasons-row {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 24px;
  }

  .page-carreiras .reasons-content-card,
  .page-carreiras .boavista-way-content-card,
  .page-carreiras .gptw-content-card {
    padding: 32px;
  }

  .page-carreiras .newsletter-carreiras-cta .final-cta-buttons {
    flex-wrap: wrap;
  }

  .page-carreiras .newsletter-carreiras-cta .final-cta-buttons .btn {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .page-carreiras .hero-carreiras .hero-content {
    padding: var(--spacing-md) var(--spacing-sm);
  }

  .page-carreiras .hero-carreiras .carreiras-badge {
    margin-bottom: var(--spacing-sm);
  }

  .page-carreiras .hero-title {
    font-size: 30px !important;
    line-height: 38px !important;
    margin-bottom: var(--spacing-sm) !important;
  }

  .page-carreiras .hero-carreiras .hero-description {
    margin-bottom: var(--spacing-md) !important;
  }

  .page-carreiras .hero-carreiras .hero-buttons {
    gap: var(--spacing-sm);
  }

  .page-carreiras .tech-people-section,
  .page-carreiras .career-step-section,
  .page-carreiras .benefits-section,
  .page-carreiras .testimonials-section,
  .page-carreiras .reasons-section {
    padding: 40px 0 !important;
  }

  .page-carreiras .benefits-section {
    padding: 28px 0 !important;
  }

  .page-carreiras .benefits-section .benefits-header {
    margin-bottom: 16px !important;
    gap: 8px;
    align-items: flex-start !important;
  }

  .page-carreiras .benefits-section .section-badge-img {
    margin-bottom: 8px !important;
    height: 24px !important;
  }

  .page-carreiras .benefits-section .section-title {
    margin-bottom: 0 !important;
  }

  .page-carreiras .tech-people-wrapper,
  .page-carreiras .career-step-wrapper {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .page-carreiras .image-stack,
  .page-carreiras .career-step-image .image-card,
  .page-carreiras .reasons-image-card,
  .page-carreiras .boavista-way-image-card,
  .page-carreiras .gptw-image-card {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }

  .page-carreiras .reasons-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-bottom: 24px !important;
  }

  .page-carreiras .reasons-content-card,
  .page-carreiras .boavista-way-content-card,
  .page-carreiras .gptw-content-card {
    padding: 20px !important;
    gap: 16px !important;
  }

  .page-carreiras .section-title {
    font-size: 24px !important;
    line-height: 32px !important;
  }

  .page-carreiras .testimonials-header {
    margin-bottom: 12px !important;
  }

  .page-carreiras .testimonials-header .section-badge-img {
    margin-bottom: 8px !important;
  }

  .page-carreiras .carreiras-testimonials-carousel {
    padding-top: 0 !important;
    gap: 12px !important;
  }

  .page-carreiras .section-description p,
  .page-carreiras .reason-item p {
    font-size: 15px !important;
    line-height: 22px !important;
  }

  .page-carreiras .hero-buttons .btn,
  .page-carreiras .final-cta-buttons .btn,
  .page-carreiras .career-step-content .btn-large {
    width: 100% !important;
    text-align: center;
    white-space: normal !important;
  }

  .page-carreiras .benefits-grid {
    gap: 12px !important;
  }

  .page-carreiras .big-card {
    padding: 16px !important;
    gap: 14px !important;
  }

  .page-carreiras .big-card-icon {
    width: 34px;
    height: 34px;
  }
}

@media (max-width: 480px) {
  .page-carreiras .hero-title {
    font-size: 26px !important;
    line-height: 34px !important;
  }

  .page-carreiras .image-stack,
  .page-carreiras .career-step-image .image-card,
  .page-carreiras .reasons-image-card,
  .page-carreiras .boavista-way-image-card,
  .page-carreiras .gptw-image-card {
    height: 200px !important;
    min-height: 200px !important;
    max-height: 200px !important;
  }
}

/* ============================
   HERO SECTIONS
   ============================ */
.hero {
  position: relative;
  min-height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  overflow: hidden;
  padding: var(--spacing-xxl) 0;
}

.hero .container {
  position: relative;
  z-index: 2;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

.hero-content {
  position: relative;
  width: 100%;
  height: 550px;
  min-height: 550px;
  text-align: center;
  padding: var(--spacing-xxl) var(--spacing-xl);
  border-radius: var(--radius-xl);
  box-shadow: 0 8px 32px 0 rgba(28, 43, 96, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.4);
  overflow: hidden;
}

.hero-content .video-background-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  border-radius: var(--radius-xl);
}

.hero-content-inner {
  position: relative;
  z-index: 2;
  color: var(--color-navy);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.hero-content-inner .hero-title,
.hero-content-inner .hero-description {
  color: var(--color-navy);
  text-shadow: 0 2px 4px rgba(255, 255, 255, 0.3);
}

.hero-icon {
  width: 200px !important;
  height: auto;
  max-width: 100%;
  margin-bottom: var(--spacing-lg);
  display: block;
}

.hero-badge {
  display: inline-block;
  padding: var(--spacing-xs) var(--spacing-md);
  background: rgba(144, 224, 239, 0.2);
  backdrop-filter: blur(10px);
  border-radius: 50px;
  font-size: 0.85rem;
  margin-bottom: var(--spacing-md);
  font-weight: var(--font-weight-medium);
  border: 1px solid rgba(144, 224, 239, 0.3);
  color: var(--color-navy);
}

.hero-title {
  color: #1c2b60;
  text-align: center;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 48px;
  margin-bottom: var(--spacing-md);
}

.hero-description {
  color: #1c2b60;
  text-align: center;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 24px;
  letter-spacing: 0.48px;
  margin-bottom: var(--spacing-lg);
}

.parcerias-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 10%;
  margin-bottom: 24px;
}

/* ============================
   GLASSMORPHISM
   ============================ */
.glassmorphism {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.15);
  border-radius: var(--radius-lg);
}

/* Variação com toque de azul claro */
.glassmorphism-blue {
  background: rgba(240, 247, 255, 0.9);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(144, 224, 239, 0.2);
  box-shadow: 0 8px 32px 0 rgba(28, 43, 96, 0.1);
  border-radius: var(--radius-lg);
}

/* ============================
   SECTION TITLES
   ============================ */
.section-title {
  font-size: clamp(1.8rem, 4vw, 2.5rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin-bottom: var(--spacing-md);
  line-height: 1.3;
}

.section-subtitle {
  font-size: 1.1rem;
  color: var(--color-text-light);
  margin-bottom: var(--spacing-lg);
}

/* ============================
   SEÇÕES - SEM BACKGROUND (fundo geral no body)
   ============================ */
.partners-section,
.solutions-section {
  padding: var(--spacing-xxl) 0;
  position: relative;
  overflow: hidden;
}

.partners-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xl);
  text-align: center;
}

.partners-icon {
  width: auto;
  height: auto;
  max-width: 100%;
  margin-bottom: var(--spacing-sm);
  display: block;
}

.partners-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--spacing-xxl);
}

.partners-cta .btn-primary {
  background: #1c2b60;
  color: #ffffff;
}

.partners-cta .btn-primary:hover {
  background: #1c2b60;
  color: #ffffff;
  opacity: 0.9;
}

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

.statistics-section,
.why-choose-section {
  padding: var(--spacing-xxl) 0;
  position: relative;
  overflow: visible;
}

.comparison-section {
  padding: var(--spacing-xxl) 0;
}

.cases-section {
  padding: var(--spacing-xxl) 0;
}

.cases-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xxl);
  text-align: center;
}

.cases-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--spacing-sm);
}

.cases-badge-icon {
  width: auto;
  height: auto;
  max-width: 100%;
  display: block;
}

.cases-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.2;
}

.cases-subtitle {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: var(--font-weight-normal);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.2;
}

.cases-description {
  font-size: 1rem;
  color: var(--color-text-light);
  line-height: 1.6;
  margin: var(--spacing-md) 0 0 0;
  max-width: 800px;
}

.cases-grid {
  display: grid;
  grid-template-columns: repeat(3, 395px);
  gap: var(--spacing-xl);
  justify-content: center;
}

.case-card {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
  transition: var(--transition-normal);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.case-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

.case-image {
  width: 140px;
  height: 140px;
  overflow: hidden;
  position: relative;
  border-radius: 12px;
  margin: var(--spacing-lg);
}

.case-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-normal);
}

.case-card:hover .case-image img {
  transform: scale(1.05);
}

.case-content {
  padding: 0 var(--spacing-lg) var(--spacing-lg);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  flex: 1;
}

.case-title {
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.4;
}

.case-title a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-fast);
}

.case-title a:hover {
  color: var(--color-cyan-dark);
}

.case-excerpt {
  display: none;
}

.case-link {
  font-size: 0.9375rem;
  color: var(--color-navy);
  font-weight: var(--font-weight-medium);
  text-decoration: none;
  transition: var(--transition-fast);
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  margin-top: var(--spacing-sm);
}

.case-link:hover {
  color: var(--color-cyan-dark);
  gap: var(--spacing-sm);
}

.comparison-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xxl);
  text-align: center;
}

.comparison-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-xs) var(--spacing-md);
  color: var(--color-text-light);
  border-radius: var(--radius-full);
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium);
}

.comparison-badge .badge-icon {
  width: 16px;
  height: 16px;
}

.comparison-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: var(--font-weight-normal);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.2;
}

.comparison-title strong {
  font-weight: var(--font-weight-bold);
}

.comparison-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xxl);
  justify-content: center;
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  align-items: stretch;
}

.comparison-card {
  border-radius: 16px;
  padding-left: var(--spacing-xl);
  padding-right: var(--spacing-xl);
  padding-bottom: var(--spacing-lg);
  padding-top: calc(var(--spacing-xl) + 40px);
  width: 100%;
  max-width: 395px;
  height: auto;
  min-height: 0;
  align-self: stretch;
  justify-self: center;
  display: flex;
  flex-direction: column;
  position: relative;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.comparison-without {
  border: 2px solid #f91b1b;
  background: #fff;
}

.comparison-with {
  border: 2px solid #4bce18;
  background: #f4fff2;
}

.comparison-card-icon {
  position: absolute;
  top: -20px;
  left: 20px;
  width: 80px;
  height: 80px;
  border-radius: 80px;
  background: #ffffff !important;
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}

.comparison-card-icon svg {
  width: 40px;
  height: 40px;
}

.comparison-card-title {
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  margin: 0 0 var(--spacing-md) 0;
  line-height: 1.2;
}

.comparison-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.comparison-list li {
  display: grid;
  grid-template-columns: 12px 1fr;
  align-items: start;
  column-gap: var(--spacing-sm);
  color: var(--color-text);
  font-size: 1rem;
  line-height: 1.6;
}

.comparison-list .list-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.comparison-list svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  margin-top: 0.35em;
}

.comparison-list li span {
  display: block;
}

.comparison-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--spacing-xxl);
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.comparison-cta .btn-primary {
  background: #1c2b60;
  color: #ffffff;
}

.comparison-cta .btn-primary:hover {
  background: #1c2b60;
  color: #ffffff;
  opacity: 0.9;
}

.why-choose-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
  align-items: flex-start;
}

.why-choose-left {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
}

.why-choose-card {
  background: #ffffff;
  border-radius: 16px;
  padding: var(--spacing-xl);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.why-choose-badge {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-md);
}

.why-choose-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0 0 var(--spacing-md) 0;
  line-height: 1.2;
}

.why-choose-description {
  font-size: 1rem;
  color: var(--color-text-light);
  line-height: 1.6;
  margin: 0;
}

.why-choose-image {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}

.why-choose-image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.why-choose-right {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  padding-bottom: 33px;
}

.why-choose-section .container {
  position: relative;
}

.why-choose-card-right {
  background: #1c2b60;
  border-radius: 16px;
  padding: var(--spacing-xxl);
  padding-bottom: calc(var(--spacing-xxl) + 33px);
  box-shadow: 0 8px 32px rgba(28, 43, 96, 0.2);
  position: relative;
  z-index: 1;
}

.why-choose-subtitle {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: var(--font-weight-bold);
  color: #90e0ef;
  margin: 0 0 var(--spacing-xl) 0;
  line-height: 1.2;
}

.why-choose-list {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--spacing-xl) 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.why-choose-list li {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-sm);
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.6;
}

.why-choose-list .list-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.why-choose-card-right .btn {
  width: auto;
  justify-content: flex-start;
  padding: 10px 20px;
}

.why-choose-svg {
  position: absolute;
  bottom: -33px;
  right: 0;
  width: 644px;
  height: 33px;
  z-index: 0;
  overflow: visible;
}

@media (max-width: 1400px) {
  .why-choose-svg {
    right: 0;
  }
}

.why-choose-section {
  overflow: visible;
}

.why-choose-section .container {
  overflow: visible;
}

.why-choose-svg svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* ============================
   CARROSSEL DE LOGOS
   ============================ */
.partners-carousel {
  overflow: hidden;
  padding: var(--spacing-lg) 0;
  mask-image: linear-gradient(
    to right,
    transparent,
    black 10%,
    black 90%,
    transparent
  );
}

.partners-track {
  display: flex;
  gap: 22px;
  will-change: transform;
}

.partner-logo {
  flex-shrink: 0;
  width: auto;
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: var(--transition-normal);
}

.partner-logo:hover {
  transform: scale(1.15);
}

.partner-logo img {
  width: auto;
  height: 100%;
  max-width: none;
  object-fit: contain;
}

@keyframes scroll-infinite {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ============================
   SOLUTIONS GRID
   ============================ */
/* ============================
   SOLUÇÕES
   ============================ */

.solutions-bg-svg {
  position: absolute;
  left: 50%;
  top: 60%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1440px;
  height: 30px;
  z-index: 0;
  pointer-events: none;
}

.solutions-bg-svg svg {
  width: 100%;
  height: 100%;
  display: block;
}

.solutions-container {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xxl);
  position: relative;
  z-index: 1;
}

.solutions-header {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #1c2b60;
  padding: var(--spacing-xxl);
  padding-bottom: calc(var(--spacing-xxl) + 27px);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(28, 43, 96, 0.2);
  min-height: 312px;
}

.solutions-header > img {
  margin-bottom: var(--spacing-lg);
}

.solutions-header::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

.solutions-badge {
  display: inline-block;
  padding: var(--spacing-xs) var(--spacing-md);
  background: rgba(144, 224, 239, 0.2);
  color: var(--color-cyan);
  border-radius: var(--radius-full);
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--spacing-md);
  position: relative;
  z-index: 1;
}

.solutions-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  margin-bottom: var(--spacing-md);
  line-height: 1.2;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}

.solutions-subtitle {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.8);
  max-width: 760px;
  margin: 0 auto;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}

.solutions-grid {
  display: grid;
  grid-template-columns: repeat(3, 395px);
  justify-content: center;
  align-items: start;
  gap: var(--spacing-lg);
  position: relative;
  z-index: 2;
}

.solution-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.solution-card {
  display: flex;
  width: 395px;
  min-height: 400px;
  padding: 40px;
  align-items: flex-start;
  gap: 24px;
  flex-direction: column;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  transition: var(--transition-normal);
  position: relative;
  z-index: 2;
  overflow: visible;
  box-sizing: border-box;
}

.solution-card:hover {
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transform: translateY(-4px);
}

.solution-icon {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  align-self: flex-start;
}

.solution-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.solution-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  overflow: visible;
}

.solution-description {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.48px;
  margin: 0;
  display: block;
  flex: 1 1 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  min-height: 0;
  overflow: visible;
}

.solution-content .btn {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 0;
}

.solution-title {
  font-size: 2rem;
  color: var(--color-white);
  margin: 0;
  text-transform: lowercase;
  font-weight: var(--font-weight-bold);
}

.solution-subtitle {
  font-size: 1.5rem;
  color: var(--color-cyan);
  display: inline;
  text-transform: lowercase;
  font-weight: var(--font-weight-normal);
}

.solution-audience {
  color: #65aebc;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.48px;
}

.solution-audience-hub {
  color: #0f89d3;
}

.solution-description strong.solution-highlight {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.48px;
}

.solution-features {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.solution-features li {
  color: #1c2b60;
  font-size: 0.9rem;
  line-height: 1.5;
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-sm);
}

.solution-features .feature-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.solution-card .btn {
  width: 100%;
  justify-content: center;
}

/* ============================
   STATISTICS
   ============================ */
.statistics-section {
  padding: var(--spacing-lg) 0;
}

.statistics-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-lg);
}

.statistics-icon {
  width: auto;
  height: auto;
  max-width: 100%;
  display: block;
}

.statistics-title {
  color: #1c2b60 !important;
  font-size: 24px;
  margin: 0;
  line-height: 1.2;
  font-weight: var(--font-weight-bold);
}

.statistics-header {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #1c2b60;
  padding: var(--spacing-lg);
  padding-bottom: calc(var(--spacing-lg) + 27px);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(28, 43, 96, 0.2);
  min-height: 150px;
  height: auto;
  max-width: 1237px;
  margin: 0 auto;
}

.statistics-header::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

.statistics-grid {
  display: grid;
  grid-template-columns: auto repeat(6, 1fr);
  gap: var(--spacing-md);
  width: 100%;
  padding: 0;
  margin: 0;
  align-items: flex-start;
}

.stat-icon-circle {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 80px;
  background: var(--Light-Blue, #90e0ef);
  flex-shrink: 0;
}

.stat-icon-circle svg {
  width: 27px;
  height: 27px;
  display: block;
}

.stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 20px;
  justify-content: center;
  text-align: center;
  gap: var(--spacing-xs);
}

.stat-number {
  color: var(--Light-Blue, #90e0ef);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: 48px;
  margin: 0;
  white-space: nowrap;
  text-indent: 0;
  overflow: visible;
}

.stat-label {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 10px;
  font-style: normal;
  font-weight: 300;
  line-height: 16px;
  margin: 0;
  text-transform: lowercase;
}

.statistics-subtitle {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.8);
  max-width: 900px;
  margin: 0 auto;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}

/* ============================
   NEWSLETTER COMPONENT
   ============================ */
.newsletter-section {
  background: rgba(240, 247, 255, 0.5);
  padding: 80px 0;
}

.newsletter-section.newsletter-hub-bg {
  background: var(--Hub-Blue, #0F89D3);
}

.newsletter-section.newsletter-contact {
  background: rgba(240, 247, 255, 0.5);
}

.newsletter-section.newsletter-parcerias-bg {
  background: var(--color-navy) !important;
}

.page-view .newsletter-section {
  background: var(--color-navy);
}

.newsletter-floating-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.newsletter-floating-container {
  position: relative;
  width: min(1234px, 100%);
  height: 394px;
  flex-shrink: 0;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 10px;
}

.newsletter-floating-container::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
  z-index: 10;
}

.newsletter-video-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.newsletter-video-background video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.newsletter-video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(28, 43, 96, 0.7);
  z-index: 2;
}

.newsletter-content {
  position: relative;
  z-index: 3;
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
  color: white;
  padding: 40px;
}

.newsletter-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 40%;
  margin-bottom: 24px;
}

.newsletter-badge .badge-icon {
  font-size: 1.1rem;
}

.newsletter-title {
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
  margin-bottom: 16px;
  line-height: 1.3;
}

.newsletter-description {
  font-size: 1rem;
  margin-bottom: 32px;
  opacity: 0.95;
  line-height: 1.6;
}

.newsletter-form {
  width: 100%;
}

.newsletter-form-group {
  display: flex;
  gap: 6px;
  align-items: center;
}

.newsletter-form-group input {
  flex: 1;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
  color: white;
  font-size: 1rem;
  font-family: var(--font-primary);
  transition: var(--transition-fast);
}

.newsletter-form-group input::placeholder {
  color: rgba(255, 255, 255, 0.6);
}

.newsletter-form-group input:focus {
  outline: none;
  border-color: var(--color-cyan);
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 3px rgba(144, 224, 239, 0.2);
}

.newsletter-submit-btn {
  padding: 12px 24px;
  background: var(--color-cyan);
  color: var(--color-navy);
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  font-family: var(--font-primary);
  cursor: pointer;
  transition: var(--transition-normal);
  white-space: nowrap;
}

.newsletter-submit-btn:hover {
  background: var(--color-cyan-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

.newsletter-rainbow-line {
  width: min(1234px, 100%);
  height: 5px;
  flex-shrink: 0;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

/* ============================
   FORMS
   ============================ */
.form-group {
  margin-bottom: var(--spacing-md);
}

.form-group label {
  display: block;
  margin-bottom: var(--spacing-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-text);
}

.form-control,
.form-group input,
.form-group select,
.form-group textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #ddd;
  border-radius: var(--radius-md);
  font-size: 1rem;
  font-family: inherit;
  transition: var(--transition-fast);
}

.form-control:focus,
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  outline: none;
  border-color: var(--color-turquoise);
  box-shadow: 0 0 0 3px rgba(79, 209, 197, 0.1);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-md);
}

/* ============================
   BLOG/POSTS
   ============================ */
.posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: var(--spacing-xl);
  margin-top: var(--spacing-xl);
}

.post-card {
  background: var(--color-white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-normal);
}

.post-card:hover {
  box-shadow: var(--shadow-lg);
  transform: translateY(-4px);
}

.post-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.post-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-slow);
}

.post-card:hover .post-image img {
  transform: scale(1.05);
}

.post-category {
  position: absolute;
  top: var(--spacing-sm);
  left: var(--spacing-sm);
  background: var(--color-turquoise);
  color: var(--color-white);
  padding: 4px 12px;
  border-radius: var(--radius-sm);
  font-size: 0.85rem;
  font-weight: var(--font-weight-medium);
}

.post-content {
  padding: var(--spacing-lg);
}

.post-title {
  font-size: 1.3rem;
  margin-bottom: var(--spacing-sm);
  line-height: 1.4;
}

.post-title a {
  color: var(--color-navy);
  transition: var(--transition-fast);
}

.post-title a:hover {
  color: var(--color-turquoise);
}

.post-meta {
  display: flex;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-md);
  font-size: 0.9rem;
  color: var(--color-text-light);
}

.post-excerpt {
  margin-bottom: var(--spacing-md);
  color: var(--color-text);
  line-height: 1.6;
}

.post-link {
  color: var(--color-turquoise);
  font-weight: var(--font-weight-medium);
  transition: var(--transition-fast);
}

.post-link:hover {
  color: var(--color-cyan-dark);
}

/* ============================
   PAGINATION
   ============================ */
.pagination {
  display: flex;
  justify-content: center;
  gap: var(--spacing-sm);
  margin-top: var(--spacing-xl);
}

.pagination ul {
  display: flex;
  gap: var(--spacing-xs);
}

.pagination a,
.pagination span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  border-radius: var(--radius-sm);
  background: var(--color-light-gray);
  color: var(--color-text);
  transition: var(--transition-fast);
}

.pagination a:hover {
  background: var(--color-turquoise);
  color: var(--color-white);
}

.pagination .current {
  background: var(--color-navy);
  color: var(--color-white);
}

.home-page .hero-home .container .hero-content .hero-content-inner img {
  width: 143px;
  height: 60px;
}

.home-page .hero-home .hero-content .video-overlay {
  background: transparent !important;
  opacity: 1 !important;
}

.home-page .hero-home .hero-content::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.86) 0%,
    rgba(255, 255, 255, 0.74) 44%,
    rgba(255, 255, 255, 0.48) 60%,
    rgba(255, 255, 255, 0.2) 79%,
    rgba(255, 255, 255, 0) 90%
  );
}

.home-page .hero-home .hero-content .hero-content-inner {
  max-width: 860px !important;
  margin: 0 auto;
}

.home-page .hero-home .hero-content .hero-content-inner .hero-title {
  max-width: 820px !important;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.home-page .hero-home .hero-content .hero-content-inner .hero-description {
  max-width: 600px !important;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.home-page .hero-home .hero-content .hero-content-inner .home-hero-subtitle {
  margin-top: 0;
  margin-bottom: 24px;
  font-weight: 700;
}

.home-page .hero-home .hero-content .hero-content-inner .home-hero-text {
  margin-top: 0;
}

/* ============================
   PAGE SPECIFIC STYLES - VIEW
   ============================ */
.page-view .hero-view {
  margin-top: calc(-1 * (var(--spacing-md) + 80px + var(--spacing-md)));
  padding-top: calc(
    var(--spacing-md) + 80px + var(--spacing-md) + var(--spacing-xxl) +
      var(--spacing-xl)
  );
  min-height: 100vh;
  background: transparent;
  padding-bottom: var(--spacing-xxl);
}

.page-view .hero-view .container {
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
  display: flex;
  align-items: flex-start;
  min-height: 70vh;
  justify-content: flex-start;
  padding-top: var(--spacing-xl);
}

.page-view .automation-section .container .automation-grid .automation-card {
  min-height: 250px !important;
}

.view-automation-card {
  min-height: auto !important;
  height: auto;
  max-height: none !important;
}

.hub-automation-card {
  min-height: auto !important;
  height: auto !important;
  max-height: none !important;
}

.hero-content-view {
  position: relative;
  z-index: 2;
  max-width: 600px;
  top: -100px;
  left: 100px;
}

.hero-content-view .btn-large {
  color: var(--color-white);
}

.hero-icon {
  width: 200px !important;
  height: auto;
  margin-bottom: var(--spacing-md);
}

.hero-icon svg,
.hero-icon img {
  width: 100%;
  height: auto;
  display: block;
}

.hero-title-view {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: var(--font-weight-normal);
  color: var(--color-navy);
  line-height: 1.2;
  margin-bottom: var(--spacing-md);
}

.hero-title-view .highlight {
  color: var(--color-navy);
  font-weight: var(--font-weight-bold);
}

.hero-description-view {
  font-size: 1.125rem;
  color: var(--color-text);
  line-height: 1.6;
  margin-bottom: var(--spacing-xl);
}

.btn-large {
  display: flex;
  width: 222px;
  padding: 12px 20px;
  justify-content: center;
  align-items: center;
  border-radius: 8px;
  background: #1c2b60;
  font-size: 1rem;
  font-weight: var(--font-weight-medium);
  transition: var(--transition-normal);
}

.btn-large:hover {
  background: #2a3d7a;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(28, 43, 96, 0.3);
}

/* Dashboard Preview Section */
.dashboard-preview {
  margin-top: -100px;
  position: relative;
  z-index: 3;
  padding: 0 0 var(--spacing-xxl);
}

.dashboard-image {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(28, 43, 96, 0.3);
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.38);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 25px;
}

.dashboard-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
}

/* Dashboard Features Grid */
.dashboard-features {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: -48px;
  position: relative;
  z-index: 4;
  flex-wrap: wrap;
}

.feature-box {
  width: 120px;
  height: 90px;
  flex-shrink: 0;
  border-radius: 10.296px;
  background: #fff;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: var(--transition-normal);
}

.feature-box:hover {
  transform: translateY(-4px);
  box-shadow: 4.413px 8.826px 44.127px 0 rgba(0, 0, 0, 0.1);
}

.feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.feature-icon svg {
  display: block;
}

.feature-label {
  font-size: 0.75rem;
  font-weight: var(--font-weight-medium);
  color: var(--color-navy);
  text-align: center;
  line-height: 1.2;
}

/* Dashboard CTA */
.dashboard-cta {
  margin-top: 80px;
  text-align: center;
  padding: var(--spacing-xl) var(--spacing-md);
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.dashboard-cta .btn-large {
  color: var(--color-white);
}

.cta-title,
.dashboard-cta .subtitle {
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.3;
  margin-bottom: var(--spacing-lg);
}

.dashboard-cta .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Efficiency Section */
.efficiency-section {
  padding: var(--spacing-xxl) 0;
  position: relative;
  min-height: 600px;
  overflow: hidden;
  background: #f3f6ff;
}

.efficiency-section .container {
  position: relative;
  z-index: 2;
}

.page-view .efficiency-section .video-background-wrapper {
  top: -3px;
  height: calc(100% + 3px);
}

.efficiency-header {
  margin-bottom: var(--spacing-xxl);
  max-width: 800px;
}

/* Adiciona margem de respiro para telas abaixo de 1300px, mas não no mobile */
@media (min-width: 769px) and (max-width: 1600px) {
  .efficiency-header {
    padding-left: var(--spacing-xl);
    padding-right: var(--spacing-xl);
  }
}

.efficiency-title {
  font-size: 2.5rem;
  font-weight: var(--font-weight-normal);
  color: var(--color-navy);
  line-height: 1.3;
  margin-bottom: var(--spacing-md);
}

.efficiency-title .highlight-text {
  color: var(--color-navy);
}

.efficiency-title em {
  font-style: italic;
  font-weight: var(--font-weight-bold);
}

.efficiency-description {
  font-size: 1rem;
  color: var(--color-navy);
  line-height: 1.6;
  opacity: 0.9;
}

.efficiency-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  column-gap: 12px;
  row-gap: 20px;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding-inline: 8px;
  box-sizing: border-box;
  justify-items: center;
}

.efficiency-grid .efficiency-card:nth-child(4) {
  grid-column: 2 / span 2;
  grid-row: 2;
}

.efficiency-grid .efficiency-card:nth-child(5) {
  grid-column: 4 / span 2;
  grid-row: 2;
}

.efficiency-grid .efficiency-card:nth-child(-n + 3) {
  grid-row: 1;
}

.efficiency-grid .efficiency-card:nth-child(1) {
  grid-column: 1 / span 2;
}

.efficiency-grid .efficiency-card:nth-child(2) {
  grid-column: 3 / span 2;
}

.efficiency-grid .efficiency-card:nth-child(3) {
  grid-column: 5 / span 2;
}

@media (max-width: 1400px) {
  .efficiency-grid {
    max-width: 920px;
    column-gap: 10px;
    row-gap: 16px;
    padding-inline: 0;
  }

  .efficiency-card {
    width: 270px;
    padding: 28px;
  }

  .efficiency-grid .efficiency-card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  .efficiency-grid .efficiency-card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}

.efficiency-card {
  display: flex;
  width: 290px;
  padding: 32px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.35);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
  text-align: center;
}

.efficiency-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.45);
  box-shadow: 8px 12px 24px 0 rgba(0, 0, 0, 0.08);
}

.efficiency-card .card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}

.efficiency-card .card-icon svg {
  display: block;
}

.efficiency-card h3 {
  font-size: 1.125rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.3;
}

.efficiency-card p {
  font-size: 0.875rem;
  color: var(--color-navy);
  opacity: 0.8;
  margin: 0;
  line-height: 1.5;
}

/* Newsletter Inline Section */
.newsletter-inline {
  padding: var(--spacing-xxl) 0;
}

.newsletter-compact {
  background: var(--color-cyan);
  border-radius: 24px;
  padding: 32px 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  box-shadow: 0 4px 24px rgba(144, 224, 239, 0.3);
}

.newsletter-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.newsletter-icon svg {
  display: block;
}

.newsletter-compact h3 {
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  flex: 1;
}

.btn-newsletter {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 16px 32px;
  background: var(--color-navy);
  color: white;
  border: none;
  border-radius: 12px;
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  transition: var(--transition-normal);
  white-space: nowrap;
  flex-shrink: 0;
}

.btn-newsletter:hover {
  background: var(--color-navy-light);
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(28, 43, 96, 0.2);
}

.btn-newsletter svg {
  display: block;
  flex-shrink: 0;
}

/* Automation Section */
.automation-section {
  padding: var(--spacing-xxl) 0;
  background: linear-gradient(
    180deg,
    rgba(240, 247, 249, 0) 0%,
    rgba(240, 247, 249, 0.5) 100%
  );
}

.automation-header {
  text-align: center;
  margin-bottom: var(--spacing-xxl);
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.automation-title {
  font-size: 2.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.3;
  margin-bottom: var(--spacing-md);
}

.automation-title .subtitle-text {
  font-size: 1.5rem;
  display: block;
  margin-top: var(--spacing-sm);
}

.automation-description {
  font-size: 1rem;
  color: var(--color-navy);
  line-height: 1.6;
  opacity: 0.9;
}

/* Journey Flow */
.journey-flow {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  margin: var(--spacing-xxl) 0;
  flex-wrap: wrap;
}

.journey-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.journey-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 71px;
  height: 71px;
  flex-shrink: 0;
}

.journey-icon .icon-background {
  position: absolute;
  top: 4px;
  left: 4px;
  width: 100%;
  height: 100%;
}

.journey-icon .icon-content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.journey-label {
  font-size: 0.875rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  text-align: center;
  line-height: 1.2;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.journey-connector {
  display: block;
  margin: 0 -3px;
  flex-shrink: 0;
  align-self: center;
  margin-bottom: 48px;
}

/* Automation Grid */
.automation-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: var(--spacing-xxl);
  justify-items: center;
}

.automation-grid .automation-card:nth-child(4) {
  grid-column: 1;
  grid-row: 2;
  justify-self: center;
  transform: translateX(calc(50% + 12px));
}

.automation-grid .automation-card:nth-child(5) {
  grid-column: 3;
  grid-row: 2;
  justify-self: center;
  transform: translateX(calc(-50% - 12px));
}

.automation-card {
  display: flex;
  max-width: 395px;
  max-height: 270px;
  padding: 32px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
  justify-self: center;
  text-align: center;
}

.automation-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 8px 12px 24px 0 rgba(0, 0, 0, 0.08);
}

.card-icon-automation {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}

.card-icon-automation svg,
.card-icon-automation img {
  display: block;
}

.automation-card h3 {
  font-size: 1.125rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.3;
}

.automation-card p {
  font-size: 0.875rem;
  color: var(--color-navy);
  opacity: 0.8;
  margin: 0;
  line-height: 1.5;
}

.automation-cta {
  margin-top: var(--spacing-xxl);
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.automation-cta .btn {
  color: var(--color-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

/* Signals Section */
.signals-section {
  padding: var(--spacing-xxl) 0;
  background: #fff;
}

.signals-content {
  display: grid;
  grid-template-columns: 605px 1fr;
  gap: 32px;
  align-items: start;
}

.signals-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.signals-card {
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: 40px;
}

.signals-card-white {
  width: 605px;
  min-height: 0;
  height: auto;
  flex-shrink: 0;
  background: #fff;
}

.signals-card-white h2 {
  font-size: 1.75rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0 0 28px 0;
  line-height: 1.3;
}

.signals-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.signals-list li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  font-size: 0.9375rem;
  color: var(--color-navy);
  line-height: 1.55;
}

.signals-list-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.35em;
}

.signals-list-icon svg {
  display: block;
}

.signals-list-text {
  flex: 1;
  min-width: 0;
}

.signals-card-navy {
  width: 605px;
  min-height: 0;
  height: auto;
  flex-shrink: 0;
  background: #1c2b60;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 24px;
}

.signals-cta-text {
  font-size: 1.125rem;
  font-weight: var(--font-weight-medium);
  color: white;
  margin: 0;
  line-height: 1.5;
  max-width: 450px;
}

.btn-signals {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  background: var(--color-cyan);
  color: var(--color-navy);
  border-radius: 8px;
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  text-decoration: none;
  transition: var(--transition-normal);
}

.btn-signals:hover {
  background: var(--color-cyan-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

.signals-right {
  display: flex;
  align-items: center;
  justify-content: center;
}

.signals-image {
  width: 614px;
  height: 656px;
  aspect-ratio: 307/328;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.signals-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Demo Video Section */
.demo-video-section {
  padding: var(--spacing-xxl) 0;
  background: linear-gradient(
    180deg,
    rgba(240, 247, 249, 0) 0%,
    rgba(240, 247, 249, 0.5) 100%
  );
}

.demo-content {
  display: flex;
  flex-direction: column;
}

.demo-video-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
  max-width: 605px;
}

.demo-section-title {
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  text-align: center;
  margin: 0 0 48px 0;
  line-height: 1.3;
}

.demo-video {
  width: 605px;
  height: 341px;
  flex-shrink: 0;
}

.video-embed {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
  background: #000;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.1);
}

.video-placeholder {
  width: 100%;
  height: 100%;
  position: relative;
  cursor: pointer;
}

.video-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.view-demo-video-placeholder {
  position: relative;
  overflow: hidden;
}

.view-demo-video-thumbnail {
  filter: blur(2.5px);
  transform: scale(1.04);
}

.view-demo-video-placeholder::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(28, 43, 96, 0.42);
  pointer-events: none;
}

.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: none;
  border: none;
  cursor: pointer;
  transition: var(--transition-normal);
  z-index: 2;
}

.play-button:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.play-button svg {
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

.demo-testimonial-row {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  margin-bottom: var(--spacing-xxl);
}

.demo-testimonial-row:nth-child(even) {
  flex-direction: column;
}

.demo-testimonial-row:nth-child(even) .demo-video-column {
  order: 1;
}

.demo-testimonial-row:nth-child(even) .demo-testimonial-column {
  order: 2;
}

.demo-testimonial-column {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.demo-testimonial {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 800px;
  width: 100%;
  text-align: center;
}

.testimonial-quote-icon {
  display: flex;
  justify-content: center;
  align-items: center;
}

.testimonial-quote-icon svg {
  display: block;
}

.testimonial-text {
  color: #050d23;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 0.48px;
  width: 100%;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
  border: none;
}

.testimonial-author {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  text-align: center;
}

.author-name {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
}

.author-position {
  font-size: 0.875rem;
  color: var(--color-navy);
  opacity: 0.5;
  margin: 0;
}

/* Contact Form Section - Reusable Component */
.contact-form-section {
padding-top: 70px;
padding-right: var(--layout-inline-padding);
padding-left: var(--layout-inline-padding);

}

.contact-form-section.bg-navy {
  background: var(--color-navy);
}

.contact-form-section.bg-light {
  background: var(--color-light-gray);
}

.contact-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}

.contact-form-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.contact-form-title {
  font-size: 2.5rem;
  font-weight: var(--font-weight-bold);
  color: white;
  line-height: 1.2;
  margin: 0;
}

.bg-light .contact-form-title {
  color: var(--color-navy);
}

.contact-form-subtitle {
  font-size: 1rem;
  color: white;
  line-height: 1.6;
  margin: 0;
}

.bg-light .contact-form-subtitle {
  color: var(--color-navy);
}

.contact-form-subtitle strong {
  font-weight: var(--font-weight-bold);
}

.contact-form-description {
  font-size: 0.9375rem;
  color: white;
  opacity: 0.9;
  line-height: 1.6;
  margin: 0;
}

.bg-light .contact-form-description {
  color: var(--color-navy);
  opacity: 0.8;
}

.contact-form-wrapper {
  padding: 0;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.form-group label {
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium);
  color: white;
}

.bg-light .form-group label {
  color: var(--color-navy);
}

.form-group input,
.form-group select,
.contact-form input,
.contact-form select {
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  font-size: 1rem;
  font-family: var(--font-primary);
  color: white !important;
  transition: var(--transition-fast);
  background: rgba(255, 255, 255, 0.1) !important;
}

.contact-form select option,
.form-group select option {
  background: var(--color-navy);
  color: white;
}

.bg-light .form-group input,
.bg-light .form-group select {
  border: 1px solid rgba(28, 43, 96, 0.2);
  color: var(--color-navy);
  background: white;
}

.form-group input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.bg-light .form-group input::placeholder {
  color: rgba(28, 43, 96, 0.4);
}

.form-group input:focus,
.form-group select:focus {
  outline: none;
  border-color: var(--color-cyan);
  box-shadow: 0 0 0 3px rgba(144, 224, 239, 0.2);
  background: rgba(255, 255, 255, 0.15);
}

.bg-light .form-group input:focus,
.bg-light .form-group select:focus {
  background: white;
}

.form-group select,
.contact-form select {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: rgba(255, 255, 255, 0.1) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23FFFFFF' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
  color: white !important;
}

.bg-light .form-group select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231C2B60' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
}

.btn-form-submit {
  padding: 16px 32px;
  background: var(--color-cyan);
  color: var(--color-navy);
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  font-family: var(--font-primary);
  cursor: pointer;
  transition: var(--transition-normal);
  width: 100%;
  margin-top: 8px;
}

.btn-form-submit:hover {
  background: var(--color-cyan-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

.dores-crescimento {
  background: var(--Dark-Blue, #1c2b60);
  border-radius: 16px;
  padding: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.dores-crescimento-title {
  color: #fff;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 40px; /* 125% */
  letter-spacing: 0.96px;
}

.dores-crescimento-description {
  color: #fff;
  padding: 20px;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 24px; /* 150% */
  letter-spacing: 0.48px;
}

.dores-crescimento-rainbow-line {
  width: auto;
  height: 5px;
  flex-shrink: 0;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

/* ============================
   RESPONSIVE
   ============================ */
@media (max-width: 1300px) {
  .solutions-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-md);
  }
  
  .solution-card {
    width: 100%;
    max-width: 100%;
    height: 360px;
  }
}

/* Desktop estreito: afrouxa o menu sem colar itens (evita gap 4px entre 1025–1150px) */
@media (max-width: 1280px) and (min-width: 1025px) {
  .site-header .header-content {
    padding: var(--spacing-sm) clamp(18px, 2.2vw, 32px);
  }

  .main-navigation {
    gap: clamp(8px, 1.2vw, 16px);
  }

  .nav-menu {
    gap: clamp(6px, 0.85vw, 12px) !important;
  }

  .nav-menu a,
  .nav-menu li a {
    font-size: 0.9375rem;
    padding: var(--spacing-xs) clamp(4px, 0.5vw, 8px);
  }

  .nav-login {
    font-size: 0.9375rem;
    padding: var(--spacing-xs) clamp(10px, 1vw, 16px);
    padding-right: clamp(12px, 1.1vw, 18px);
  }

  .nav-login-icon {
    margin-right: 6px !important;
  }

  .menu-icon-dropdown,
  .nav-menu img.menu-icon-dropdown {
    margin-left: 5px !important;
  }

  .nav-client-access .nav-client-access-icon {
    margin-left: 5px !important;
  }
}

@media (max-width: 1024px) {
  .hero-content {
    height: auto;
    min-height: 400px;
    padding: var(--spacing-xl) var(--spacing-lg);
    overflow: visible;
  }

  .hero-title {
    font-size: clamp(28px, 5vw, 40px);
    line-height: clamp(34px, 6vw, 48px);
  }

  .hero-description {
    font-size: clamp(14px, 2vw, 16px);
    line-height: clamp(20px, 3vw, 24px);
  }

  .footer-header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-md);
  }

  .footer-navigation-section {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-md);
  }

  .solutions-grid {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .solution-card {
    width: 100%;
    max-width: 395px;
    height: auto;
    min-height: auto;
    overflow: visible;
  }

  .solution-content {
    min-height: auto;
  }

  .solution-description {
    overflow: visible;
    font-size: clamp(14px, 2.5vw, 16px);
    line-height: clamp(20px, 3.5vw, 24px);
  }

  .efficiency-grid {
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }

  .efficiency-grid .efficiency-card:nth-child(4),
  .efficiency-grid .efficiency-card:nth-child(5) {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }

  .efficiency-grid .efficiency-card:nth-child(1),
  .efficiency-grid .efficiency-card:nth-child(2),
  .efficiency-grid .efficiency-card:nth-child(3) {
    grid-column: auto;
    grid-row: auto;
  }

  .automation-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .automation-grid .automation-card:nth-child(4),
  .automation-grid .automation-card:nth-child(5) {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }

  .why-choose-content {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .why-choose-card-right {
    padding: var(--spacing-lg);
  }

  .why-choose-svg {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-top: var(--spacing-md);
    bottom: -16px;
    height: 24px;
  }

  .why-choose-right {
    padding-bottom: 16px;
  }

  .why-choose-card-right .btn {
    display: flex;
    justify-content: center;
    margin: 0 auto;
  }

  .comparison-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .comparison-card {
    padding-left: var(--spacing-lg);
    padding-right: var(--spacing-lg);
    padding-top: calc(var(--spacing-lg) + 40px);
    padding-bottom: var(--spacing-md);
  }

  .comparison-card-icon {
    left: var(--spacing-lg);
  }

  .signals-content {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .signals-card-white,
  .signals-card-navy,
  .signals-image {
    width: 100%;
    max-width: 605px;
    margin: 0 auto;
  }

  .signals-image {
    height: auto;
    aspect-ratio: 1/1;
  }

  .demo-content {
    gap: 32px;
  }

  .demo-testimonial-row {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .demo-testimonial-row:nth-child(even) {
    grid-template-columns: 1fr;
  }

  .demo-testimonial-row:nth-child(even) .demo-video-column {
    order: 1;
  }

  .demo-testimonial-row:nth-child(even) .demo-testimonial-column {
    order: 2;
  }

  .demo-video-column {
    width: 100%;
  }

  .demo-video {
    width: 100%;
    max-width: 605px;
  }

  .demo-testimonial {
    max-width: 100%;
    text-align: left;
  }

  .contact-form-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .newsletter-floating-container {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 394px;
    padding-bottom: 20px;
  }

  .newsletter-floating-container::after {
    height: 10px;
  }

  .newsletter-rainbow-line {
    width: 100%;
    max-width: 100%;
  }

  .parcerias-badge {
    width: 14%;
  }
}

/* ============================
   SCROLL ANIMATIONS
   ============================ */
.scroll-animate {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.scroll-animate.animate-in {
  opacity: 1;
  transform: translateY(0);
}

/* Delay variations for staggered animations */
.scroll-animate:nth-child(2) {
  transition-delay: 0.1s;
}

.scroll-animate:nth-child(3) {
  transition-delay: 0.2s;
}

.scroll-animate:nth-child(4) {
  transition-delay: 0.3s;
}

.scroll-animate:nth-child(5) {
  transition-delay: 0.4s;
}

@media (max-width: 768px) {
  :root {
    /* Restaura no mobile o espaçamento lateral original do projeto */
    --layout-inline-padding: var(--spacing-sm);
  }

  html {
    overflow-x: hidden;
    overscroll-behavior-x: none;
  }

  .site-header {
    padding: var(--spacing-sm) 0;
    z-index: 10040;
    overflow: visible;
  }

  .site-header .header-content {
    padding: var(--spacing-sm) var(--spacing-md);
    border-radius: var(--radius-lg);
    overflow: visible;
  }

  .main-navigation {
    position: fixed;
    top: 0;
    right: 0;
    width: min(96vw, 390px);
    max-width: none;
    height: 100dvh;
    max-height: 100dvh;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    flex-direction: column;
    align-items: flex-start;
    padding: calc(var(--spacing-xxl) + env(safe-area-inset-top, 0px)) var(--spacing-md) calc(var(--spacing-lg) + env(safe-area-inset-bottom, 0px));
    box-shadow: var(--shadow-xl);
    transform: translate3d(110%, 0, 0);
    visibility: hidden;
    pointer-events: none;
    transition: transform var(--transition-normal), visibility var(--transition-normal);
    z-index: 10100;
    border-radius: var(--radius-xl) 0 0 var(--radius-xl);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    gap: 0;
  }

  .main-navigation.active {
    transform: translate3d(0, 0, 0);
    visibility: visible;
    pointer-events: auto;
  }

  .nav-menu {
    flex-direction: column;
    width: 100%;
    gap: 0;
    margin: 0 0 var(--spacing-lg) 0;
    padding: 0;
  }

  .nav-menu li {
    width: 100%;
    border-bottom: 1px solid rgba(28, 43, 96, 0.1);
  }

  .nav-menu li:last-child {
    border-bottom: none;
  }

  .nav-menu a {
    width: 100%;
    padding: var(--spacing-md) var(--spacing-sm);
    display: flex !important;
    justify-content: flex-start;
    align-items: center;
  }

  /* Login alinhado com outros itens */
  .nav-login {
    width: 100%;
    padding: var(--spacing-md) var(--spacing-sm);
    display: flex !important;
    justify-content: flex-start;
    align-items: center;
    border-top: 2px solid rgba(28, 43, 96, 0.2);
    margin-top: var(--spacing-md);
  }

  .nav-client-access {
    width: 100%;
  }

  .nav-client-access .nav-client-access-trigger {
    justify-content: flex-start;
  }

  .nav-client-access-dropdown {
    min-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 8px 0;
  }

  .nav-client-access.submenu-open .nav-client-access-dropdown {
    max-height: 280px;
  }

  .nav-client-access-dropdown .nav-client-access-item {
    padding: var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-xl);
    border-radius: 0;
    margin: 0;
  }

  /* Submenu no mobile - Accordion */
  .menu-item-has-children .sub-menu {
    position: static;
    display: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    background: rgba(28, 43, 96, 0.05);
    padding: 0;
    margin: 0;
    width: 100%;
    min-width: 100%;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
  }

  .menu-item-has-children.submenu-open .sub-menu {
    display: block;
    max-height: 1200px;
  }

  .menu-item-has-children .sub-menu li {
    border-bottom: none;
  }

  .menu-item-has-children .sub-menu a {
    padding: var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-xl);
    font-size: 0.9375rem;
  }

  .menu-item-solutions-dropdown > .sub-menu.solutions-dropdown-panel {
    position: static;
    display: block;
    width: 100%;
    min-width: 100%;
    grid-template-columns: 1fr;
    gap: 0;
    background: rgba(28, 43, 96, 0.05);
    border: 0;
    border-radius: 0;
    padding: 0;
    transform: none;
    margin: 0;
    left: 0;
    right: auto;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: max-height 0.35s ease, opacity 0.25s ease, transform 0.25s ease;
    box-sizing: border-box;
  }

  .menu-item-solutions-dropdown.submenu-open > .sub-menu.solutions-dropdown-panel {
    max-height: 1400px;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    left: 0;
    right: auto;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-item {
    width: 100%;
    box-sizing: border-box;
    min-height: auto;
    border-right: none;
    border-bottom: none;
    border-radius: 0;
    padding: calc(var(--spacing-md) + 8px) var(--spacing-md);
    gap: 12px;
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .menu-item-solutions-dropdown > .sub-menu.solutions-dropdown-panel > .solutions-dropdown-item {
    padding: calc(var(--spacing-md) + 8px) var(--spacing-md);
  }

  .menu-item-solutions-dropdown .solutions-dropdown-item:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 0;
    width: auto;
    height: 1px;
    background: linear-gradient(
      to right,
      rgba(28, 43, 96, 0),
      rgba(28, 43, 96, 0.2) 20%,
      rgba(28, 43, 96, 0.2) 80%,
      rgba(28, 43, 96, 0)
    );
    top: auto;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-heading {
    min-height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    margin: 0 auto;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-logo {
    display: block;
    height: 24px;
    margin-bottom: 8px;
    margin-left: auto;
    margin-right: auto;
    align-self: center;
    transform: none;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-item-hub .solutions-dropdown-logo {
    transform: translateX(17px);
  }

  .menu-item-solutions-dropdown .solutions-dropdown-item-hub-infra .solutions-dropdown-logo {
    height: 30px;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-title {
    font-size: 1rem;
    text-align: center;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-description {
    font-size: 0.875rem;
    text-align: center;
  }

  .menu-item-solutions-dropdown .solutions-dropdown-cta {
    width: auto;
    min-width: 130px;
    min-height: 36px;
    font-size: 0.875rem;
  }

  /* Ícone dropdown rotaciona quando aberto */
  .menu-item-has-children.submenu-open > a .menu-icon-dropdown {
    transform: rotate(180deg);
  }

  .mobile-menu-toggle {
    display: flex;
    z-index: 10110;
    background: none;
    border: none;
    cursor: pointer;
  }

  .mobile-menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(8px, 8px);
  }

  .mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0;
  }

  .mobile-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -7px);
  }

  .footer-header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-md);
  }

  .footer-social {
    align-self: flex-start;
  }

  .footer-navigation-section {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-md);
  }

  .footer-bottom {
    flex-direction: column;
    gap: var(--spacing-lg);
    align-items: center;
    text-align: center;
  }

  .footer-copyright {
    justify-content: center;
  }

  .footer-certifications {
    flex-wrap: wrap;
    justify-content: center;
  }

  .cert-badge {
    width: 70px;
    height: 70px;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .hero-content {
    height: auto;
    min-height: auto;
    padding: var(--spacing-lg) var(--spacing-md);
    overflow: visible;
  }

  .hero-icon {
    margin-bottom: var(--spacing-sm);
    max-width: 150px;
  }

  .hero-title {
    font-size: clamp(24px, 6vw, 32px);
    line-height: clamp(28px, 7vw, 40px);
    margin-bottom: var(--spacing-sm);
  }

  .hero-description {
    font-size: clamp(14px, 3vw, 16px);
    line-height: clamp(20px, 4vw, 24px);
    margin-bottom: var(--spacing-md);
  }

  .why-choose-content {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .why-choose-card {
    padding: var(--spacing-lg);
  }

  .why-choose-card-right {
    padding: var(--spacing-lg);
  }

  .why-choose-svg {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-top: var(--spacing-md);
  }

  .comparison-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .comparison-card {
    padding-left: var(--spacing-lg);
    padding-right: var(--spacing-lg);
    padding-top: calc(var(--spacing-lg) + 40px);
    padding-bottom: var(--spacing-md);
  }

  .comparison-card-icon {
    left: var(--spacing-lg);
    width: 60px;
    height: 60px;
  }

  .comparison-card-icon svg {
    width: 30px;
    height: 30px;
  }

  .cases-grid {
    grid-template-columns: repeat(2, 395px);
    gap: var(--spacing-lg);
  }

  .solutions-header {
    padding: var(--spacing-lg);
    padding-bottom: calc(var(--spacing-lg) + 20px);
    min-height: auto;
  }

  .solutions-header::after {
    height: 20px;
    bottom: 0;
  }

  .statistics-header {
    padding: var(--spacing-lg);
    padding-bottom: calc(var(--spacing-lg) + 20px);
    min-height: auto;
  }

  .statistics-header::after {
    height: 20px;
    bottom: 0;
  }

  .statistics-header {
    padding: var(--spacing-lg);
    padding-bottom: calc(var(--spacing-lg) + 27px);
    height: auto;
    min-height: 180px;
  }

  .statistics-grid {
    grid-template-columns: auto repeat(3, 1fr);
    gap: var(--spacing-sm);
    overflow-x: visible;
  }

  .stat-icon-circle {
    width: 50px;
    height: 50px;
    margin-top: 0;
  }

  .stat-icon-circle svg {
    width: 18px;
    height: 18px;
  }

  .stat-item {
    margin-top: 0;
    min-width: 0;
    padding: 0 var(--spacing-xs);
  }

  .stat-number {
    font-size: clamp(20px, 3vw, 28px);
    line-height: clamp(24px, 3vw, 34px);
    white-space: nowrap;
    word-break: normal;
  }

  .stat-label {
    font-size: clamp(8px, 1.2vw, 9px);
    line-height: clamp(12px, 1.8vw, 14px);
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
  }

  .solutions-grid {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: var(--spacing-xl);
  }

  .solution-card {
    width: 100%;
    max-width: 395px;
    height: auto;
    min-height: auto;
    padding: var(--spacing-lg);
    overflow: visible;
  }

  .solution-content {
    min-height: auto;
    flex: 1 1 auto;
  }

  .solution-description {
    overflow: visible;
    flex: 0 1 auto;
    font-size: clamp(14px, 3vw, 16px);
    line-height: clamp(20px, 4vw, 24px);
  }

  .solution-icon {
    width: 48px;
    height: 48px;
  }

  .solutions-bg-svg {
    display: none;
  }

  .statistics-header {
    padding: var(--spacing-md);
    padding-bottom: calc(var(--spacing-md) + 27px);
    height: auto;
    min-height: auto;
  }

  .statistics-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-md);
    overflow-x: visible;
    justify-items: center;
  }

  .stat-icon-circle {
    width: 60px;
    height: 60px;
    margin: 0 auto var(--spacing-sm);
    margin-top: 0;
    grid-column: 1 / -1;
  }

  .stat-icon-circle svg {
    width: 20px;
    height: 20px;
  }

  .stat-item {
    margin-top: 0;
    width: 100%;
    max-width: 200px;
  }

  .stat-number {
    font-size: clamp(28px, 6vw, 36px);
    line-height: clamp(32px, 7vw, 44px);
    white-space: nowrap;
  }

  .stat-label {
    font-size: clamp(10px, 2vw, 12px);
    line-height: clamp(14px, 3vw, 18px);
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  .cases-grid {
    grid-template-columns: 1fr;
    max-width: 395px;
    margin: 0 auto;
    gap: var(--spacing-lg);
  }

  .page-view .hero-view {
    margin-top: calc(-1 * (var(--spacing-sm) + 60px + var(--spacing-md)));
    padding-top: calc(var(--spacing-sm) + 60px + var(--spacing-md) + var(--spacing-xl));
    min-height: 80vh;
  }

  .page-view .hero-view .container {
    max-width: 100%;
    padding: 0 var(--layout-inline-padding);
    min-height: 60vh;
  }

  .hero-content-view {
    margin-top: 80px;
    margin-left: 0;
    left: 0px;
  }

  .hero-title-view {
    font-size: 1.75rem;
  }

  .hero-description-view {
    font-size: 1rem;
  }

  .dashboard-preview {
    margin-top: -100px;
  }

  .page-view .dashboard-features {
    gap: 12px;
    margin-top: -10px;
  }

  .feature-box {
    width: calc(50% - 6px);
    min-width: 110px;
  }

  .dashboard-cta {
    margin-top: 48px;
  }

  .cta-title,
  .dashboard-cta .subtitle {
    font-size: 1.5rem;
  }

  .efficiency-title {
    font-size: 1.75rem;
  }

  .efficiency-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    justify-items: center;
  }

  .efficiency-grid .efficiency-card:nth-child(4),
  .efficiency-grid .efficiency-card:nth-child(5) {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }

  .efficiency-grid .efficiency-card:nth-child(1),
  .efficiency-grid .efficiency-card:nth-child(2),
  .efficiency-grid .efficiency-card:nth-child(3) {
    grid-column: auto;
    grid-row: auto;
  }

  .efficiency-card {
    width: 100%;
    max-width: 340px;
  }

  .newsletter-compact {
    flex-direction: column;
    text-align: center;
    padding: 24px;
    gap: 16px;
  }

  .newsletter-compact h3 {
    font-size: 1.25rem;
  }

  .btn-newsletter {
    width: 100%;
    justify-content: center;
  }

  .newsletter-floating-container {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 350px;
    border-radius: 12px;
    padding-bottom: 20px;
  }

  .newsletter-floating-container::after {
    height: 10px;
    border-radius: 0 0 12px 12px;
  }

  .newsletter-rainbow-line {
    border-radius: 0 0 12px 12px;
  }

  .newsletter-content {
    padding: 32px 24px;
  }

  .newsletter-title {
    font-size: 1.5rem;
  }

  .newsletter-description {
    font-size: 0.9375rem;
  }

  .newsletter-form-group {
    flex-direction: column;
    gap: 6px;
  }

  .newsletter-form-group input {
    width: 100%;
  }

  .newsletter-submit-btn {
    width: 100%;
  }

  .newsletter-rainbow-line {
    width: 100%;
    max-width: 100%;
  }

  .automation-section {
    padding: var(--spacing-lg) 0;
  }

  .automation-header {
    text-align: center;
    margin-bottom: var(--spacing-lg);
  }

  .automation-title {
    font-size: 1.75rem;
  }

  .automation-title .subtitle-text {
    font-size: 1.25rem;
  }

  .automation-description {
    font-size: 0.9375rem;
  }

  .journey-flow {
    flex-direction: column;
    gap: 24px;
    align-items: center;
    margin: var(--spacing-lg) 0;
  }

  .journey-step {
    gap: 0;
  }

  .journey-label {
    display: none;
  }

  .page-view .journey-label {
    display: flex;
    font-size: 0.8125rem;
    line-height: 1.2;
    min-height: auto;
    margin-top: 4px;
  }

  .journey-connector {
    transform: rotate(90deg);
    margin: 0;
    margin-bottom: 0;
  }

  .automation-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .automation-grid .automation-card:nth-child(4),
  .automation-grid .automation-card:nth-child(5) {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }

  .automation-card {
    width: 100%;
    max-width: 100%;
    padding: 24px;
    text-align: center;
  }

  .automation-card h3 {
    font-size: 1rem;
  }

  .automation-card p {
    font-size: 0.875rem;
  }

  .automation-cta {
    margin-top: var(--spacing-lg);
  }

  .automation-cta .btn {
    padding: 14px 24px;
    font-size: 0.9375rem;
  }

  .signals-card-white {
    height: auto;
    padding: 32px 24px;
  }

  .signals-card-white h2 {
    font-size: 1.5rem;
    margin-bottom: 22px;
  }

  .signals-list {
    gap: 18px;
  }

  .signals-list li {
    font-size: 0.875rem;
    gap: 12px;
  }

  .signals-list-icon {
    margin-top: 0.3em;
  }

  .signals-card-navy {
    height: auto;
    padding: 32px 24px;
  }

  .signals-cta-text {
    font-size: 1rem;
  }

  .demo-section-title {
    font-size: 1.5rem;
  }

  .demo-video {
    height: auto;
    aspect-ratio: 16/9;
    max-width: 100%;
  }

  .testimonial-text {
    font-size: 14px;
    line-height: 28px;
    max-width: 100%;
  }

  .contact-form-title {
    font-size: 1.75rem;
  }

  .contact-form-wrapper {
    padding: 0;
  }

  .parcerias-badge {
    width: 40%;
  }
}

/* ============================
   BADGES & PILLS
   ============================ */
.badge-pill {
  display: inline-block;
  padding: 8px 20px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: var(--font-weight-medium);
  color: var(--color-navy);
  border: 1px solid rgba(144, 224, 239, 0.3);
  box-shadow: 0 2px 8px rgba(28, 43, 96, 0.08);
}

.badge-pill-cyan {
  background: rgba(144, 224, 239, 0.2);
  border-color: rgba(144, 224, 239, 0.4);
  color: var(--color-navy);
}

/* ============================
   UTILITY CLASSES
   ============================ */
.text-center {
  text-align: center;
}

.mt-0 {
  margin-top: 0;
}
.mt-1 {
  margin-top: var(--spacing-xs);
}
.mt-2 {
  margin-top: var(--spacing-sm);
}
.mt-3 {
  margin-top: var(--spacing-md);
}
.mt-4 {
  margin-top: var(--spacing-lg);
}
.mt-5 {
  margin-top: var(--spacing-xl);
}

.mb-0 {
  margin-bottom: 0;
}
.mb-1 {
  margin-bottom: var(--spacing-xs);
}
.mb-2 {
  margin-bottom: var(--spacing-sm);
}
.mb-3 {
  margin-bottom: var(--spacing-md);
}
.mb-4 {
  margin-bottom: var(--spacing-lg);
}
.mb-5 {
  margin-bottom: var(--spacing-xl);
}

/* ============================
   PAGE PARCERIAS - SPECIFIC STYLES
   ============================ */

/* Hero Parcerias */
.hero-parcerias .hero-content {
  min-height: 543px;
  border-radius: 16px;
  overflow: hidden;
}

.hero-parcerias .hero-content .video-overlay {
  background: transparent !important;
  opacity: 1 !important;
}

.hero-parcerias .hero-content::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.9) 0%,
    rgba(255, 255, 255, 0.8) 52%,
    rgba(255, 255, 255, 0.58) 72%,
    rgba(255, 255, 255, 0.3) 88%,
    rgba(255, 255, 255, 0.08) 96%,
    rgba(255, 255, 255, 0) 100%
  );
}

.hero-parcerias-gradient-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.3) 39.99%,
    rgba(255, 255, 255, 0.18) 76.88%,
    rgba(153, 153, 153, 0) 100%
  );
  pointer-events: none;
  border-radius: 16px;
}

.hero-parcerias .hero-content-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  z-index: 2;
}

.hero-parcerias .btn-primary {
  background: #1c2b60;
  color: #ffffff;
}

.hero-parcerias .btn-primary:hover {
  background: #1c2b60;
  color: #ffffff;
  opacity: 0.9;
}

/* Valor Section */
.valor-section {
  padding: var(--spacing-xxl) 0;
}

.valor-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.valor-content {
  background: var(--color-navy);
  border-radius: 16px 16px 0 0;
  padding: var(--spacing-xxl);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
}

.valor-rainbow-line {
  width: 100%;
  max-width: auto;
  height: 5px;
  flex-shrink: 0;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

.valor-content .badge-pill {
  margin-bottom: var(--spacing-md);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.valor-badge {
  width: 300px;
  max-width: 100%;
  margin-bottom: 20px;
  align-items: center;
  gap: 15px;
}

.valor-title {
  font-size: clamp(1.75rem, 4vw, 2rem);
  font-weight: var(--font-weight-bold);
  color: white;
  margin-bottom: var(--spacing-md);
  line-height: 1.3;
}

.valor-description {
  font-size: 1rem;
  color: white;
  line-height: 1.6;
  max-width: 700px;
  margin-bottom: var(--spacing-lg);
}

.valor-example-box {
  background: white;
  padding: var(--spacing-lg);
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.valor-section .valor-example-box {
  max-width: 400px;
  width: 100%;
  margin-top: var(--spacing-md);
}

.valor-example-box h3 {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin-bottom: var(--spacing-sm);
}

.valor-example-icon {
  display: flex;
  justify-content: flex-start;
  gap: 6px;
  margin-bottom: var(--spacing-sm);
}

.valor-example-text {
  font-size: 1.25rem;
  color: #7f859a;
  line-height: 1.44;
  margin: 0;
}

.page-parcerias .comparison-wrapper .valor-example-text {
  margin-bottom: var(--spacing-md);
}

.page-parcerias .comparison-wrapper .valor-example-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page-parcerias .comparison-wrapper .valor-example-text,
.page-parcerias .comparison-wrapper .valor-example-icon {
  text-align: left;
  justify-content: flex-start;
}

/* Comparison Section */
.comparison-section {
  padding: var(--spacing-xxl) 0;
}

.comparison-header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
}

.comparison-wrapper {
  display: flex;
  gap: 32px;
  align-items: flex-start;
  max-width: 1200px;
  margin: 0 auto;
}

.comparison-wrapper .valor-example-box {
  flex-shrink: 0;
  width: 395px;
  margin: 0;
}

.comparison-table {
  display: grid;
  grid-template-columns: 180px 1fr 1fr;
  gap: 16px;
  flex: 1;
}

.comparison-label-column {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.comparison-label-header {
  background: transparent;
  border-radius: 0;
  padding: var(--spacing-md);
  min-height: 88px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-align: right;
}

.comparison-label-header h3 {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
}

.comparison-label-row {
  background: transparent;
  border-radius: 0;
  padding: var(--spacing-md);
  min-height: 84px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-align: right;
  font-size: 1rem;
  color: var(--color-navy);
}

.page-parcerias .comparison-label-header {
  background: var(--color-navy);
  border-radius: 12px;
  justify-content: center;
  text-align: center;
}

.page-parcerias .comparison-label-header h3 {
  color: #ffffff;
}

.page-parcerias .comparison-label-row {
  background: rgba(144, 224, 239, 0.28);
  border-radius: 12px;
  justify-content: center;
  text-align: center;
}

.comparison-column {
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-radius: 16px;
  padding: 0;
  position: relative;
  padding-top: 20px;
}

.comparison-column-hoje {
  background: #ffefef;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.comparison-column-boavista {
  background: #e3ffe3;
  border: 2px solid #4bce18;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.page-parcerias .comparison-column-boavista .comparison-icon-top {
  background: #ffffff;
  border: 1px solid #d8f6d8;
  z-index: 20;
}

.comparison-icon-top {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  border-radius: 80px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-parcerias .comparison-icon-top {
  background: #ffffff;
  z-index: 20;
}

.comparison-header-cell {
  background: transparent;
  padding: var(--spacing-md);
  min-height: 88px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 8px;
}

.comparison-header-cell h3 {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
}

.comparison-cell {
  background: transparent;
  padding: var(--spacing-md);
  min-height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 1rem;
  color: var(--color-navy);
}

/* Journey Section */
.journey-section {
  padding: var(--spacing-xxl) 0;
}

.journey-header {
  text-align: left;
  margin-bottom: var(--spacing-xl);
}

.journey-header .badge-pill {
  margin-bottom: var(--spacing-md);
  display: inline-flex;
}

.journey-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 300;
  color: var(--color-navy);
  margin: 0;
  line-height: 1.2;
}

.journey-title strong {
  font-weight: var(--font-weight-bold);
}

.journey-cards {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 0;
  flex-wrap: wrap;
  margin-bottom: var(--spacing-lg);
}

.journey-card {
  display: flex;
  width: 290px;
  padding: 24px;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  transition: var(--transition-normal);
}

.journey-card:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-4px);
}

.journey-card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.journey-card-icon img {
  width: auto;
  height: auto;
  max-width: 48px;
  max-height: 48px;
}

.journey-header-icon {
  width: auto;
  height: auto;
  margin-bottom: var(--spacing-md);
}

.journey-card h3 {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin: 0;
  line-height: 1.5;
  text-align: left;
  flex: 1;
}

.journey-arrow {
  flex-shrink: 0;
  margin: 0 16px;
}

.journey-footer {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: var(--spacing-lg);
  text-align: start;
  margin-top: var(--spacing-xl);
}

.journey-description {
  color: #7f859a;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  letter-spacing: 0.48px;
  max-width: 550px;
  margin: 0;
}

.journey-footer .btn-large {
  color: white;
  background: var(--color-navy);
}

/* Partners Logos Section */
.partners-header {
  justify-content: start;
  margin-bottom: var(--spacing-xl);
}

.partners-header-icon {
  width: auto;
  height: auto;
}

.partners-title {
  font-size: clamp(1.65rem, 3.8vw, 2.35rem);
  font-weight: 300;
  color: var(--color-navy);
  max-width: 700px;
  margin: 0;
  line-height: 1.2;
}

.partners-content .btn-large {
  color: white;
  background: var(--color-navy);
}

.partners-title strong {
  font-weight: var(--font-weight-bold);
}

/* Partners Logos Section */
.partners-logos-section {
  padding: var(--spacing-xxl) 0;
}

.partners-logos-section .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

.partners-logos-section .partners-header {
  margin-bottom: var(--spacing-md);
  margin-left: -12px;
}

.statistics-wrapper {
  display: flex;
  align-items: center;
  gap: var(--spacing-lg);
  justify-content: center;
  width: 100%;
  margin-bottom: var(--spacing-md);
}

.partners-logos-section
  .container
  .statistics-wrapper
  .partners-left-column
  .statistics-card-wrapper
  .statistics-card
  .statistics-content
  .statistics-title {
  color: #90e0ef !important;
  text-align: center;
}

/* Específico para a seção de partners da página de parcerias */
.partners-logos-section .partners-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--spacing-lg);
  width: 100%;
}

.partners-left-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  max-width: 1000px;
}

.partners-logos-section .partners-content {
  max-width: 760px;
  margin-left: -12px;
}

.partners-logos-section .partners-title {
  max-width: 760px;
}

.partners-right-column {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.partners-image-card {
  width: 100%;
  max-width: 568px;
  margin-left: 0;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}

.partners-image-card img {
  width: 100%;
  height: auto;
  display: block;
}

.statistics-card-wrapper {
  display: flex;
  flex-direction: column;
  height: 292px;
  align-items: flex-start;
  gap: 0;
  width: 546px;
  max-width: 100%;
  margin-left: -12px;
  position: relative;
  overflow: hidden;
  border-radius: 0 0 16px 16px;
  padding-bottom: 5px;
}

.statistics-card-wrapper::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
  z-index: 10;
}

.statistics-card {
  width: 100%;
  min-height: 225px;
  border-radius: 16px 16px 0 0;
  background: #1c2b60;
  padding: var(--spacing-lg);
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-lg);
  position: relative;
  flex: 1;
}

.statistics-icon {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-shrink: 0;
}

.statistics-icon img {
  width: auto;
  height: auto;
  max-width: 80px;
  max-height: 80px;
}

.statistics-content {
  position: relative;
  z-index: 1;
  flex: 1;
}

.statistics-row {
  display: flex;
  gap: var(--spacing-xl);
  margin-bottom: var(--spacing-lg);
  align-items: center;
}

.stat-item {
  background-color: transparent;
  flex: 1;
}

.stat-number {
  font-size: 40px;
  font-weight: var(--font-weight-bold);
  color: var(--color-cyan);
  margin: 0 0 var(--spacing-xs) 0;
  line-height: 1;
}

.stat-label {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.statistics-title {
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  font-weight: var(--font-weight-bold);
  color: #1c2b60 !important;
  margin: 0;
  line-height: 1.3;
}

@media (min-width: 1025px) {
  .page-parcerias .statistics-card-wrapper {
    padding-bottom: 0;
    border-radius: 0;
    overflow: visible;
  }

  .page-parcerias .statistics-card-wrapper::after {
    display: none;
  }

  .page-parcerias .statistics-card {
    border-radius: 16px;
    overflow: hidden;
  }

  .page-parcerias .statistics-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(
      270deg,
      #e81a7d 0%,
      #ea7317 41%,
      #fec601 51%,
      #caf0f8 57%,
      #90e0ef 63%,
      #00b4d8 75%,
      #1c2b60 100%
    );
    border-radius: 0 0 16px 16px;
    z-index: 0;
    pointer-events: none;
  }
}

.partners-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-lg);
  text-align: left;
  max-width: 600px;
}

.partners-logos-section .partners-carousel {
  width: 100%;
  margin-top: 0;
}

.partner-logo-box {
  background: white;
  border-radius: 16px;
  width: 77px;
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  transition: var(--transition-normal);
}

.partner-logo-box:hover {
  transform: translateY(-2px);
  box-shadow: 4.413px 8.826px 44.127px 0 rgba(0, 0, 0, 0.1);
}

.partner-logo-box span {
  font-size: 0.75rem;
  font-weight: var(--font-weight-medium);
  color: var(--color-navy);
  text-align: center;
}

/* Ecosystem Section */
.ecosystem-section {
  padding: var(--spacing-xxl) 0;
}

.ecosystem-header {
  text-align: left;
  margin-bottom: var(--spacing-xl);
}

.ecosystem-header img {
  width: 214px;
  height: auto;
}

.ecosystem-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xxl);
  align-items: start;
}

/* Coluna Esquerda */
.ecosystem-left {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xl);
}

.ecosystem-text-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.ecosystem-title {
  color: var(--color-navy);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 300;
  line-height: 125%;
  letter-spacing: -0.4px;
  margin: 0;
}

.ecosystem-title strong {
  font-weight: 700;
}

.ecosystem-text-content .btn-primary {
  background: #1c2b60;
  color: #ffffff;
  align-self: flex-start;
}

.ecosystem-text-content .btn-primary:hover {
  background: #1c2b60;
  color: #ffffff;
  opacity: 0.9;
}

/* Card de Estatísticas */
.ecosystem-stats-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ecosystem-stats-card {
  background: #1c2b60;
  border-radius: 16px 16px 0 0;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
}

.ecosystem-stats-row {
  display: flex;
  align-items: center;
  gap: var(--spacing-lg);
}

.ecosystem-stats-icon img {
  width: 60px;
  height: 60px;
}

.ecosystem-stat-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ecosystem-stat-number {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 125%;
  letter-spacing: -0.32px;
  margin: 0;
}

.ecosystem-stat-label {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 150%;
  letter-spacing: 0.14px;
  margin: 0;
}

.ecosystem-stats-title {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.72px;
  margin: 0;
}

.ecosystem-rainbow-line {
  width: 100%;
  height: 5px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

/* Coluna Direita */
.ecosystem-right {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
}

.ecosystem-image {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
}

.ecosystem-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* Carrossel de Parceiros */
.ecosystem-partners-carousel {
  overflow: hidden;
  padding: var(--spacing-md) 0;
  mask-image: linear-gradient(
    to right,
    transparent,
    black 10%,
    black 90%,
    transparent
  );
}

.ecosystem-partners-track {
  display: flex;
  gap: var(--spacing-md);
  animation: scroll-infinite 30s linear infinite;
}

.ecosystem-partner-logo {
  flex-shrink: 0;
  width: 150px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: var(--transition-normal);
}

.ecosystem-partner-logo:hover {
  transform: scale(1.05);
}

.ecosystem-partner-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

/* Statistics Parcerias Section */
.statistics-parcerias-section {
  padding: var(--spacing-xxl) 0;
}

.statistics-card {
  background: var(--color-navy);
  border-radius: 16px;
  padding: var(--spacing-xxl);
  display: flex;
  align-items: center;
  gap: var(--spacing-lg);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  max-width: 600px;
  margin: 0 auto;
}

.statistics-badge {
  flex-shrink: 0;
}

.statistics-content {
  flex: 1;
  color: white;
}

.statistics-row {
  display: flex;
  gap: var(--spacing-xl);
  margin-bottom: var(--spacing-lg);
}

.stat-item h3.stat-number {
  font-size: 2.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-cyan);
  margin: 0 0 8px 0;
  line-height: 1;
  letter-spacing: -3.2px;
}

.stat-item p.stat-label {
  font-size: 0.625rem;
  color: white;
  margin: 0;
  line-height: 1.6;
}

.statistics-title {
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
  color: #1c2b60 !important;
  margin: 0;
  line-height: 1.3;
}

/* Benefits Section */
.benefits-section {
  padding: var(--spacing-xxl) 0;
}

.benefits-header {
  text-align: center;
  margin-bottom: var(--spacing-xxl);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-md);
}

.benefits-header-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: var(--spacing-md);
}

.benefits-header .badge-pill {
  margin-bottom: var(--spacing-md);
}

.benefits-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 300;
  color: var(--color-navy);
  margin-bottom: var(--spacing-lg);
  line-height: 1.2;
}

.benefits-title strong {
  font-weight: var(--font-weight-bold);
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.benefit-card {
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  border-radius: 16px;
  padding: var(--spacing-lg);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--spacing-md);
  transition: var(--transition-normal);
}

.benefit-card:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-4px);
}

.benefit-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}

.benefit-card h3 {
  font-size: 1rem;
  font-weight: 400;
  color: var(--color-navy);
  margin: 0;
  line-height: 1.5;
}

.benefit-card h3 strong {
  font-weight: var(--font-weight-bold);
}

/* ============================
   RESPONSIVE - PARCERIAS PAGE
   ============================ */

@media (max-width: 1366px) and (min-width: 1025px) {
  .page-parcerias .comparison-wrapper {
    gap: 24px;
    align-items: stretch;
  }

  .page-parcerias .comparison-wrapper .valor-example-box {
    width: min(340px, 32vw);
  }

  .page-parcerias .comparison-table {
    grid-template-columns: minmax(140px, 160px) 1fr 1fr;
    gap: 12px;
  }

  .page-parcerias .comparison-column {
    gap: 12px;
  }

  .page-parcerias .comparison-label-header,
  .page-parcerias .comparison-label-row,
  .page-parcerias .comparison-header-cell,
  .page-parcerias .comparison-cell {
    min-height: 76px;
    padding: var(--spacing-sm);
  }

  .page-parcerias .comparison-label-row,
  .page-parcerias .comparison-cell {
    font-size: 0.9375rem;
    line-height: 1.4;
  }

  .page-parcerias .journey-header {
    margin-bottom: var(--spacing-lg);
  }

  .page-parcerias .journey-cards {
    flex-wrap: nowrap;
    justify-content: center;
    gap: 8px;
  }

  .page-parcerias .journey-card {
    width: min(245px, 24vw);
    padding: 18px;
    gap: 10px;
  }

  .page-parcerias .journey-card h3 {
    font-size: 0.9375rem;
    line-height: 1.35;
  }

  .page-parcerias .journey-arrow {
    margin: 0 6px;
  }

  .page-parcerias .journey-description {
    max-width: 760px;
  }
}

@media (max-width: 1024px) {
  .comparison-wrapper {
    flex-direction: column;
    gap: 24px;
  }

  .comparison-wrapper .valor-example-box {
    width: 100%;
    max-width: 100%;
  }

  .comparison-table {
    grid-template-columns: 140px 1fr 1fr;
    gap: 12px;
  }

  .comparison-label-header,
  .comparison-label-row {
    min-height: 70px;
    font-size: 0.875rem;
  }

  .comparison-header-cell {
    min-height: 70px;
  }

  .comparison-cell {
    min-height: 70px;
    font-size: 0.875rem;
  }

  .benefits-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: 16px;
  }

  .statistics-wrapper {
    flex-direction: column;
    gap: var(--spacing-lg);
    align-items: center;
  }

  .partners-logos-section .partners-left-column {
    max-width: 700px;
    width: 100%;
  }

  .partners-logos-section .partners-image-card {
    max-width: 546px;
    margin-left: 0;
  }

  .partners-logos-section .partners-right-column {
    justify-content: center;
  }

  .partners-logos-section .partners-title {
    max-width: 680px;
  }

  .partners-logos-section .partners-content {
    margin-left: 0;
    max-width: 100%;
  }

  .partners-logos-section .partners-header {
    margin-left: 0;
  }

  .statistics-card-wrapper {
    width: 90%;
    max-width: 546px;
    height: auto;
    min-height: auto;
    align-items: center;
    margin-left: 0;
    padding-bottom: 5px;
  }

  .statistics-card {
    width: 100%;
    height: auto;
    padding: var(--spacing-lg);
    border-radius: 16px 16px 0 0;
  }


  .statistics-row {
    flex-direction: column;
    gap: var(--spacing-md);
  }

  .partners-content {
    align-items: center;
    text-align: center;
    width: 100%;
  }
}

@media (max-width: 768px) {
  /* Hero Parcerias (altura vem do conteúdo; página usa overrides em .page-parcerias) */
  .hero-parcerias .hero-content {
    min-height: 0;
    padding: var(--spacing-lg);
  }

  .hero-parcerias .hero-title {
    font-size: 1.75rem;
  }

  .hero-parcerias .hero-description {
    font-size: 0.9375rem;
  }

  .parcerias-badge {
    width: 40%;
  }

  /* Ecosystem Section Responsive */
  .ecosystem-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .ecosystem-title {
    font-size: 28px;
  }

  .ecosystem-stats-card {
    padding: var(--spacing-lg);
  }

  .ecosystem-stats-row {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-md);
  }

  .ecosystem-stat-number {
    font-size: 28px;
  }

  .ecosystem-stats-title {
    font-size: 20px;
  }

  /* Valor Section */
  .valor-wrapper {
    width: 100%;
  }

  .valor-content {
    padding: var(--spacing-lg);
  }

  .valor-rainbow-line {
    width: 100%;
    max-width: 100%;
  }

  .valor-title {
    font-size: 1.5rem;
  }

  .valor-description {
    font-size: 0.9375rem;
  }

  .valor-example-box {
    padding: var(--spacing-md);
    width: 100%;
  }

  .valor-example-text {
    font-size: 1rem;
  }

  .comparison-wrapper .valor-example-box {
    margin-bottom: var(--spacing-md);
  }

  /* Comparison Section */
  .comparison-wrapper {
    flex-direction: column;
    gap: 24px;
  }

  .comparison-wrapper .valor-example-box {
    width: 100%;
  }

  .comparison-table {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .comparison-label-column {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    margin-bottom: var(--spacing-md);
  }

  .comparison-label-header {
    text-align: center;
    background: var(--color-navy);
    color: white;
    border-radius: 8px;
    padding: var(--spacing-md);
  }

  .comparison-label-header h3 {
    color: white;
    font-size: 1rem;
  }

  .comparison-label-row {
    text-align: center;
    background: rgba(144, 224, 239, 0.2);
    border-radius: 8px;
    padding: var(--spacing-md);
    min-height: auto;
    font-size: 0.9rem;
  }

  .comparison-column {
    width: 100%;
  }

  .comparison-header-cell {
    padding: var(--spacing-md);
    min-height: auto;
  }

  .comparison-cell {
    padding: var(--spacing-md);
    min-height: 60px;
    font-size: 0.9rem;
  }

  .page-parcerias .comparison-table {
    gap: var(--spacing-md);
    align-items: center;
  }

  .page-parcerias .comparison-label-column {
    align-items: center;
    gap: 10px;
    margin-bottom: var(--spacing-sm);
  }

  .page-parcerias .comparison-column {
    align-items: center;
    gap: 10px;
    padding-top: 14px;
  }

  .page-parcerias .comparison-icon-top {
    top: -16px;
    width: 34px;
    height: 34px;
  }

  .page-parcerias .comparison-header-cell {
    min-height: 56px;
    padding: 10px var(--spacing-sm) var(--spacing-sm);
  }

  .page-parcerias .comparison-cell {
    min-height: 54px;
    padding: var(--spacing-sm);
    font-size: 0.95rem;
    line-height: 1.35;
  }

  .page-parcerias .comparison-wrapper {
    align-items: center;
    text-align: center;
  }

  .page-parcerias .comparison-wrapper .valor-example-box,
  .page-parcerias .comparison-label-column,
  .page-parcerias .comparison-column {
    margin-left: auto;
    margin-right: auto;
  }

  .page-parcerias .comparison-wrapper .valor-example-text,
  .page-parcerias .comparison-wrapper .valor-example-icon {
    text-align: center;
    justify-content: center;
  }

  .page-parcerias .comparison-wrapper .valor-example-icon {
    align-items: center;
    gap: 8px;
  }

  .page-parcerias .comparison-wrapper .valor-example-icon h3 {
    margin: 0;
  }

  /* Journey Section */
  .journey-header {
    text-align: center;
  }

  .journey-header-icon {
    display: flex;
    justify-content: center;
    width: 100%;
  }

  .journey-header-icon img {
    margin-inline: auto;
  }

  .journey-header .badge-pill {
    display: inline-flex;
  }

  .journey-cards {
    flex-direction: column;
    gap: 24px;
    align-items: center;
  }

  .journey-card {
    width: 100%;
    max-width: 100%;
  }

  .journey-arrow {
    transform: rotate(90deg);
    margin: 0;
  }

  .journey-description {
    font-size: 14px;
  }

  /* Partners Section */
  .partners-carousel {
    padding: var(--spacing-md) 0;
  }

  /* Statistics */
  .statistics-wrapper {
    flex-direction: column;
    gap: var(--spacing-lg);
    align-items: center;
  }

  .partners-logos-section .partners-left-column {
    width: 100%;
    gap: var(--spacing-lg);
  }

  .partners-logos-section .partners-content {
    margin-left: 0;
    max-width: 100%;
  }

  .partners-logos-section .partners-header {
    margin-left: 0;
  }

  .partners-logos-section .partners-right-column,
  .partners-logos-section .partners-image-card {
    width: 100%;
    max-width: 100%;
  }

  .statistics-card-wrapper {
    width: 100%;
    height: auto;
    min-height: auto;
    align-items: center;
    margin-left: 0;
    padding-bottom: 5px;
  }

  .statistics-card {
    width: 100%;
    height: auto;
    padding: var(--spacing-lg);
    border-radius: 16px 16px 0 0;
    flex-direction: column;
    gap: var(--spacing-md);
  }

  .statistics-icon {
    align-self: center;
  }

  .statistics-icon img {
    max-width: 60px;
    max-height: 60px;
  }


  .partners-content {
    width: 100%;
    padding: 0 var(--layout-inline-padding);
    align-items: center;
    text-align: center;
  }

  .partners-title {
    font-size: 1.5rem;
  }

  .statistics-row {
    flex-direction: column;
    gap: var(--spacing-md);
    text-align: center;
  }

  .stat-item h3.stat-number {
    font-size: 2rem;
  }

  .statistics-title {
    font-size: 1.25rem;
  }

  /* Benefits */
  .benefits-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 16px;
  }

  .benefit-card {
    padding: var(--spacing-md);
  }

  .benefit-card h3 {
    font-size: 0.9375rem;
  }
}

/* ============================
   PAGE HUB - SPECIFIC STYLES
   ============================ */

/* Hero Hub */
.hero-hub .hero-content {
  min-height: 543px;
  background: transparent;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}

/* Segunda camada de overlay cinza - acima do vídeo */
.hero-hub .hero-content::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(240, 240, 240, 0.7);
  z-index: 1;
  pointer-events: none;
  border-radius: 16px;
}

.hero-hub .hero-content-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  z-index: 3;
  padding: var(--spacing-xl) var(--spacing-lg);
}

.hero-badge-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: var(--spacing-md);
}

.hero-badge-icon {
  width: 83px;
  height: 38px;
}

.hero-badge-icon img {
  width: 16px;
  height: 16px;
}

.hero-badge-text {
  border: 1px solid white;
  border-radius: 80px;
  padding: 8px 16px;
  font-size: 10px;
  font-weight: 300;
  color: white;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.hero-hub .hero-title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 300;
  color: var(--color-navy);
  margin-bottom: var(--spacing-md);
  line-height: 1.2;
  max-width: 813px;
}

.hero-hub .hero-title strong {
  font-weight: var(--font-weight-bold);
}

.hero-hub .hero-description {
  font-size: 1rem;
  color: var(--color-navy);
  line-height: 1.5;
  max-width: 632px;
  margin-bottom: var(--spacing-lg);
}

.btn-hub-hero {
  background: #1c2b60 !important;
  color: white !important;
}

.btn-hub-hero:hover {
  background: #2a3f7a !important;
}

/* Hub Card Section */
.hub-card-section {
  padding: var(--spacing-xxl) 0;
}

.hub-card-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  position: relative;
  overflow: hidden;
  border-radius: 0 0 16px 16px;
  padding-bottom: 5px;
  width: 1235px;
  max-width: 100%;
  margin: 0 auto;
}

.hub-card-wrapper::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
  z-index: 10;
}

.hub-card-container {
  position: relative;
  width: 1235px;
  max-width: 100%;
  height: 312px;
  flex-shrink: 0;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0f89d3;
}

.hub-card-content {
  position: relative;
  z-index: 2;
  max-width: 657px;
  margin: 0 auto;
  text-align: center;
  color: white;
  padding: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-md);
}

.hub-card-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.hub-card-badge-icon {
  width: 83px;
  height: 23px;
  display: block;
}

.hub-card-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: var(--font-weight-bold);
  color: white;
  line-height: 1.2;
  margin: 0;
}

.hub-card-description {
  font-size: 1rem;
  color: white;
  line-height: 1.5;
  margin: 0;
}

.hub-card-description strong {
  font-weight: var(--font-weight-bold);
}


/* Hub Infra Card Styles */
.hub-infra-card-container {
  background: var(--Hub-Infra-Blue, #14577f) !important;
}

.hub-infra-card-section .hub-card-badge-wrapper {
  margin-top: calc(var(--spacing-xl) * 1.5) !important;
  margin-bottom: 0 !important;
}

.hub-infra-card-badge-icon {
  width: 180px !important;
  height: auto !important;
}

.hub-infra-card-section .hub-card-description {
  margin-bottom: 100px !important;
  margin-top: 0 !important;
}


.hub-infra-card-section .hub-card-content {
  padding: 40px 40px 0 40px !important;
}

/* HubInfra Hero Section */
.hubinfra-hero-section {
  padding: var(--spacing-xxl) 0;
}

.hubinfra-hero-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.hubinfra-hero-card {
  position: relative;
  width: 100%;
  max-width: 1235px;
  border-radius: 16px 16px 0 0;
  background: var(--Hub-Infra-Blue, #14577f);
  padding: 64px 40px 48px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  box-sizing: border-box;
}

.hubinfra-hero-badge {
  margin-bottom: 32px;
}

.hubinfra-hero-badge-icon {
  width: 180px;
  height: auto;
}

.hubinfra-hero-title {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 125%;
  letter-spacing: -0.32px;
  margin: 0 0 24px 0;
  max-width: 657px;
}

.hubinfra-hero-description {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 300;
  line-height: 150%;
  letter-spacing: 0.18px;
  margin: 0;
  max-width: 657px;
}

.hubinfra-hero-rainbow-line {
  width: 100%;
  max-width: 1235px;
  height: 5px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
}

/* Automation Section */
.automation-section {
  padding: var(--spacing-xxl) 0;
}

.automation-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-md);
  align-items: stretch;
  justify-content: center;
  max-width: 1234px;
  margin: 0 auto;
}

.automation-card {
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  overflow: hidden;
  width: 100%;
  max-width: 605px;
  height: auto;
  min-height: 450px;
  flex-shrink: 0;
  background: #fff;
  justify-self: center;
}

.automation-card-text {
  background: white;
  padding: 40px;
  display: flex;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.automation-content {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.automation-title {
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  margin-bottom: var(--spacing-xl);
  line-height: 1.3;
  margin-top: 0;
}

.automation-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}

.automation-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.check-icon {
  flex-shrink: 0;
  margin-top: 4px;
}

.automation-item p {
  font-size: 1rem;
  color: #7f859a;
  line-height: 1.5;
  margin: 0;
}

/* Hub: keep bullet text start aligned and slightly after icon */
.hub-automation-card .automation-item {
  display: grid;
  grid-template-columns: 12px 1fr;
  column-gap: 12px;
  align-items: start;
}

.hub-automation-card .check-icon {
  margin-top: 3px;
}

.hub-automation-card .automation-item p {
  margin: 0;
  padding-left: 4px;
  text-align: left;
}

/* Hub: keep image card with same height as bullet card */
.hub-automation-card + .automation-card-image {
  height: 100%;
  min-height: 100%;
}

.hub-automation-card + .automation-card-image .automation-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.automation-card-image {
  background: var(--color-navy);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  height: 100%;
  min-height: 450px;
  padding: 0;
}

.automation-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Hub Infra Automation Section */
.hub-infra-automation-wrapper {
  grid-template-columns: 1.5fr 1fr !important;
  gap: var(--spacing-md);
  max-width: 1400px;
  margin: 0 auto;
  align-items: stretch;
}

.hub-infra-card-left {
  width: 100%;
  height: 100%;
  background: white;
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: 40px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  box-sizing: border-box;
}

.hub-infra-problems-list {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.hub-infra-problem-item {
  display: grid;
  grid-template-columns: 12px 1fr;
  column-gap: 12px;
  align-items: start;
}

.hub-infra-check-icon {
  flex-shrink: 0;
  margin-top: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hub-infra-check-icon svg {
  display: block;
}

.hub-infra-problem-item p {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.5;
  margin: 0;
  text-align: left;
}

.hub-infra-cards-right {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.hub-infra-card-image-top {
  width: 100%;
  height: 269px;
  padding: 0;
  overflow: hidden;
  border-radius: 16px;
}

.hub-infra-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hub-infra-card-text-bottom {
  width: 100%;
  height: auto !important;
  min-height: unset !important;
  max-height: unset !important;
  border-radius: 16px;
  background: var(--Hub-Infra-Blue, #14577f) !important;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: 32px 40px !important;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  box-sizing: border-box;
  transition: none !important;
  transform: none !important;
}

.hub-infra-card-text-bottom:hover {
  background: var(--Hub-Infra-Blue, #14577f) !important;
  transform: none !important;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05) !important;
}

.hub-infra-card-text {
  color: #fff !important;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.72px;
  leading-trim: both;
  text-edge: cap;
  margin: 0;
  text-align: left;
}

.hub-infra-card-text strong {
  font-weight: 700;
  color: #fff !important;
}

/* Integrations Section */
.integrations-section {
  padding: var(--spacing-xxl) 0;
}

.integrations-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xxl);
  align-items: center;
  max-width: 1235px;
  margin: 0 auto;
}

.integrations-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.integrations-icon-wrapper {
  margin-bottom: var(--spacing-sm);
}

.integrations-icon {
  display: block;
  width: auto;
  height: auto;
}

.integrations-title {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0.96px;
  margin: 0;
}

.integrations-title strong {
  font-weight: 700;
}

.integrations-description {
  color: var(--texto-corrido, #7f859a);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.48px;
  margin: 0;
}

.integrations-description + .integrations-description {
  margin-top: var(--spacing-md);
}

.integrations-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.integrations-image-content {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Integrations Section Responsive */
@media (max-width: 1024px) {
  .integrations-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .integrations-image {
    order: -1;
  }

  .integrations-title {
    font-size: clamp(1.5rem, 4vw, 32px);
    line-height: 1.25;
  }
}

@media (max-width: 768px) {
  .integrations-section {
    padding: var(--spacing-lg) 0;
  }

  .integrations-wrapper {
    gap: var(--spacing-md);
  }

  .integrations-content {
    gap: var(--spacing-sm);
  }

  .integrations-icon-wrapper {
    margin-bottom: var(--spacing-xs);
  }

  .integrations-title {
    font-size: clamp(1.25rem, 5vw, 28px);
    letter-spacing: 0.5px;
  }

  .integrations-description {
    font-size: 14px;
    line-height: 1.5;
  }

  .integrations-description + .integrations-description {
    margin-top: var(--spacing-sm);
  }
}

/* Core Operational Section */
.core-operational-section {
  padding: var(--spacing-xxl) 0;
}

.core-operational-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xxl);
  align-items: center;
  max-width: 1235px;
  margin: 0 auto;
}

.core-operational-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.core-operational-icon-wrapper {
  margin-bottom: var(--spacing-sm);
}

.core-operational-icon {
  display: block;
  width: auto;
  height: auto;
}

.core-operational-title {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0.96px;
  margin: 0;
}

.core-operational-title strong {
  font-weight: 700;
}

.core-operational-description {
  color: var(--texto-corrido, #7f859a);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.48px;
  margin: 0;
}

.core-operational-description + .core-operational-description {
  margin-top: var(--spacing-md);
}

.core-operational-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.core-operational-image-content {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
  border-radius: 16px;
}

/* Core Operational Section Responsive */
@media (max-width: 1024px) {
  .core-operational-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .core-operational-image {
    order: -1;
  }

  .core-operational-title {
    font-size: clamp(1.5rem, 4vw, 32px);
    line-height: 1.25;
  }
}

@media (max-width: 768px) {
  .core-operational-section {
    padding: var(--spacing-lg) 0;
  }

  .core-operational-wrapper {
    gap: var(--spacing-md);
  }

  .core-operational-content {
    gap: var(--spacing-sm);
  }

  .core-operational-icon-wrapper {
    margin-bottom: var(--spacing-xs);
  }

  .core-operational-title {
    font-size: clamp(1.25rem, 5vw, 28px);
    letter-spacing: 0.5px;
  }

  .core-operational-description {
    font-size: 14px;
    line-height: 1.5;
  }

  .core-operational-description + .core-operational-description {
    margin-top: var(--spacing-sm);
  }
}

/* Features Section */
.features-section {
  padding: var(--spacing-xxl) 0;
}

.features-header {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xl);
  max-width: 1235px;
  margin-left: auto;
  margin-right: auto;
}

.features-icon-circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--Hub-Infra-Blue, #14577f);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.features-icon-circle svg {
  display: block;
}

.features-title {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 300;
  line-height: 40px;
  letter-spacing: 0.72px;
  margin: 0;
}

.features-title strong {
  font-weight: 700;
}

.features-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-md);
  max-width: 1235px;
  margin: 0 auto var(--spacing-xl);
}

.features-card {
  background: white;
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: 40px;
}

.features-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.features-item {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-sm);
}

.features-check-icon {
  flex-shrink: 0;
  margin-top: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.features-check-icon svg {
  display: block;
}

.features-item p {
  color: var(--texto-corrido, #7f859a);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.5;
  margin: 0;
}

.features-cta {
  text-align: center;
  max-width: 1235px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-lg);
}

.features-cta-text {
  color: var(--texto-corrido, #7f859a);
  text-align: center;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 700;
  line-height: 144%;
  letter-spacing: 0.48px;
  margin: 0;
}

.features-cta-button {
  background: var(--Hub-Infra-Blue, #14577f) !important;
  color: white !important;
  border: none !important;
}

.features-cta-button:hover {
  background: var(--Dark-Blue, #1c2b60) !important;
  color: white !important;
}

/* Features Section Responsive */
@media (max-width: 1024px) {
  .features-cards {
    grid-template-columns: 1fr;
    gap: var(--spacing-md);
  }

  .features-header {
    margin-bottom: var(--spacing-lg);
  }
}

@media (max-width: 768px) {
  .features-section {
    padding: var(--spacing-lg) 0;
  }

  .features-header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-md);
  }

  .features-icon-circle {
    width: 36px;
    height: 36px;
  }

  .features-icon-circle svg {
    width: 18px;
    height: 18px;
  }

  .features-title {
    font-size: clamp(1.125rem, 4vw, 24px);
    line-height: 1.67;
    letter-spacing: 0.5px;
  }

  .features-card {
    padding: var(--spacing-lg);
  }

  .features-list {
    gap: var(--spacing-sm);
  }

  .features-item p {
    font-size: 14px;
  }

  .features-cta {
    gap: var(--spacing-md);
  }

  .features-cta-text {
    font-size: 14px;
    line-height: 144%;
  }
}

/* Testimonials Section */
.testimonials-section {
  padding: var(--spacing-xxl) 0;
}

.testimonials-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xxl);
  align-items: start;
  max-width: 1235px;
  margin: 0 auto;
}

.testimonials-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.testimonials-icon-wrapper {
  margin-bottom: var(--spacing-sm);
}

.testimonials-icon {
  display: block;
  width: auto;
  height: auto;
}

.testimonials-title {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0.96px;
  margin: 0;
}

.testimonials-description {
  color: var(--texto-corrido, #7f859a);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.48px;
  margin: 0;
}

.testimonials-cards {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.testimonial-card {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  padding: var(--spacing-lg);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.testimonial-image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* Hub Infra: testimonial cards without framed background and larger images */
.hubinfra-testimonials-section .testimonials-wrapper {
  grid-template-columns: 0.95fr 1.05fr;
}

.hubinfra-testimonials-section .testimonial-card {
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
}

/* Testimonials Section Responsive */
@media (max-width: 1024px) {
  .testimonials-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .testimonials-title {
    font-size: clamp(1.5rem, 4vw, 32px);
    line-height: 1.25;
  }
}

@media (max-width: 768px) {
  .testimonials-section {
    padding: var(--spacing-lg) 0;
  }

  .hubinfra-testimonials-section .testimonials-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-md);
  }

  .hubinfra-testimonials-section .testimonials-content {
    order: 1;
  }

  .hubinfra-testimonials-section .testimonials-cards {
    order: 2;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
  }

  .hubinfra-testimonials-section .testimonial-card {
    width: 100%;
  }

  .hubinfra-testimonials-section .testimonial-image {
    width: 100%;
    height: auto;
    object-fit: contain;
  }

  .testimonials-wrapper {
    gap: var(--spacing-md);
  }

  .testimonials-content {
    gap: var(--spacing-sm);
  }

  .testimonials-icon-wrapper {
    margin-bottom: var(--spacing-xs);
  }

  .testimonials-title {
    font-size: clamp(1.25rem, 5vw, 28px);
    letter-spacing: 0.5px;
  }

  .testimonials-description {
    font-size: 14px;
    line-height: 1.5;
  }

  .testimonial-card {
    padding: var(--spacing-md);
  }
}

/* Section Divider */
.section-divider {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;
  background: transparent;
  height: 128px;
}

.section-divider .container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.divider-image {
  width: 100%;
  max-width: 537px;
  height: auto;
  display: block;
  margin: 0 auto;
  position: relative;
  z-index: 11;
}

.hubinfra-divider-heading {
  width: 100%;
  max-width: min(643px, 100%);
  margin: 0 auto;
  position: relative;
  z-index: 11;
  box-sizing: border-box;
  font-family: var(--font-primary);
  font-size: clamp(1.625rem, 2.4vw, 2rem);
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
  letter-spacing: -0.025em;
  text-align: center;
  color: var(--color-navy);
  background: #fff;
  border: 1px solid #bae5ff;
  border-radius: 999px;
  padding: 1.2rem clamp(1.5rem, 4vw, 2.75rem);
}

.hubinfra-divider-heading strong {
  font-weight: var(--font-weight-bold);
}

@media (min-width: 1025px) {
  .page-hub .section-divider .divider-image {
    transform: translateY(62px);
  }

  .section-divider-hubinfra .hubinfra-divider-heading {
    transform: translateY(62px);
  }
}

/* How Hub Works Section */
.how-hub-section {
  padding: 0 0 var(--spacing-xxl);
  padding-top: 40px;
  min-height: 100vh;
  min-height: clamp(600px, 100vh, 1200px);
  background-image: url('../img/como-funciona-hub/bg-hw.svg');
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  position: relative;
}

.how-hub-header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
}

.how-hub-title {
  font-size: 2.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.2;
  margin: 0;
  letter-spacing: 1.2px;
}

.how-hub-content {
  width: 100%;
}

.how-hub-diagram {
  width: 100%;
  max-width: 1235px;
  margin: 0 auto;
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
  min-height: 600px;
  position: relative;
  overflow: visible;
}

.how-hub-section .container {
  position: relative;
}

.how-hub-content.js-hub-diagram {
  position: relative;
}

.how-hub-header {
  margin-bottom: 28px;
}

.how-hub-title {
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  letter-spacing: 0.6px;
}

.hub-diagram-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1
}

.hub-diagram-path {
  fill: none;
  stroke: #0f89d3;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.9;
}

.hub-diagram-path--arrow {
  stroke: #1c2b60;
  stroke-width: 2.6;
}

.hub-node,
.hub-pill,
.hub-destination,
.hub-logo-wrap {
  position: absolute;
  z-index: 2;
}

.hub-connector {
  position: absolute;
  z-index: 1;
}

.hub-mobile-arrow,
.hub-mobile-dash {
  display: none;
  position: absolute;
  z-index: 1;
}

.hub-mobile-cec {
  display: none;
}

.hub-connector img,
.hub-asset-image {
  width: 100%;
  height: auto;
  display: block;

}

.hub-asset-wrap {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  height: auto !important;
}

.hub-node {
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(10, 39, 64, 0.12);
  padding: 16px 18px;
}

.hub-node h3 {
  margin: 0 0 8px;
  color: #1c2b60;
  font-size: 1rem;
  line-height: 1.2;
}

.hub-node p {
  margin: 0;
  color: #30415d;
  font-size: 0.88rem;
  line-height: 1.4;
}

.hub-pill,
.hub-destination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  white-space: nowrap;
}

.hub-pill {
  border: 1px solid rgba(15, 137, 211, 0.25);
  background: rgba(255, 255, 255, 0.98);
  color: #14577f;
}

.hub-destination {
  border: 1px solid rgba(28, 43, 96, 0.18);
  background: #f4f8fd;
  color: #1c2b60;
  height: 40px;
}

.hub-node-user {
  left: 173px;
  top: 238px;
  width: 169px;
  z-index: -1;
}

.hub-pill-receive {
  left: 336px;
  top: 198px;
  width: 140px;
  z-index: -1;
}

.hub-pill-csv {
  left: 379px;
  top: 290px;
  width: 51px;
}

.hub-pill-api-left {
  left: 380px;
  top: 325px;
  width: 49px;
  z-index: -1;
}

.hub-logo-wrap {
  left: 498px;
  top: 220px;
  width: 138px;
}

.hub-logo-image {
  width: 138px;
  height: auto;
}

.hub-node-bottom {
  left: 473px;
  top: 365px;
  width: 184px;
  z-index: -1;
}

.hub-node-convert {
  left: 725px;
  top: 208px;
  width: 184px;
}

.hub-pill-api-right {
  left: 791px;
  top: 315px;
  width: 49px;
}

.hub-pill-csv-right {
  left: 790px;
  top: 347px;
  width: 51px;
}

.hub-pill-email {
  left: 785px;
  top: 379px;
  width: 65px;
  z-index: -1;
}

.hub-pill-send {
  left: 907px;
  top: 147px;
  width: 59px;
  z-index: -1;
}

.hub-destination-1 {
  left: 1050px;
  top: 176px;
  width: 125px;
}

.hub-destination-2 {
  left: 1050px;
  top: 234px;
  width: 125px;
}

.hub-destination-3 {
  left: 1050px;
  top: 288px;
  width: 150px;
}

.hub-connector-left {
  left: 335px;
  top: 254px;
  width: 143px;
}

.hub-connector-right {
  left: 648px;
  top: 254px;
  width: 67px;
}

.hub-connector-down {
  left: 560px;
  top: 288px;
  width: 12px;
}

.hub-connector-up-arc {
  left: 932px;
  top: 164.5px;
  width: 12px;
}

.hub-connector-right-conversao {
  left: 900px;
  top: 193px;
  width: 144px;
}

.hub-connector-api-stack {
  left: 810px;
  top: 270px;
  width: 12px;
}

.hub-connector-left-stack {
  left: 400px;
  top: 215px;
  width: 12px;
}

.js-hub-diagram [data-anim] {
  --from-x: 0px;
  --from-y: 0px;
  --from-scale: 0.96;
  opacity: 0;
  transform: translate3d(var(--from-x), var(--from-y), 0) scale(var(--from-scale));
  transform-origin: center;
  transition: opacity 3000ms cubic-bezier(0.22, 1, 0.36, 1), transform 3000ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--delay, 0ms);
  will-change: transform, opacity;
}

.js-hub-diagram.is-active [data-anim] {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

@media (min-width: 1025px) {
  .how-hub-diagram {
    transform: translate(-72px, -120px);
  }

  .how-hub-certifications {
    margin-top: -146px;
    margin-left: 28px;
    gap: 44px;
  }

  .how-hub-certification-tags {
    margin-left: 26px;
    transform: translateY(8px);
  }

  .how-hub-testimonial-card {
    margin-top: -170px;
    transform: translateX(-22px);
  }
}

.how-hub-certifications {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: -96px;
  margin-left: 24px;
  width: fit-content;
}

.how-hub-certification-oracle {
  width: 131px;
  height: auto;
  display: block;
}

.how-hub-certification-tags {
  width: 520px;
  max-width: calc(100vw - 220px);
  height: auto;
  display: block;
}

.how-hub-testimonial-card {
  display: flex;
  width: 381px;
  padding: 32px;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.2);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.1);
  position: relative;
  bottom: auto;
  right: auto;
  margin-top: -122px;
  margin-left: auto;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 2;
}

.how-hub-testimonial-card .testimonial-icon {
  width: auto;
  height: auto;
  display: block;
  margin-bottom: 0;
}

.how-hub-testimonial-card .testimonial-text {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.54px;
  margin: 0;
  text-align: left;
}

.how-hub-mobile-oracle,
.how-hub-mobile-testimonial {
  display: none;
}

.how-hub-mobile-oracle img,
.how-hub-mobile-testimonial img {
  width: 100%;
  height: auto;
  display: block;
}

@media (min-width: 1025px) and (max-width: 1366px) {
  .how-hub-section {
    padding-bottom: 220px;
  }

  .how-hub-certifications {
    margin-top: -152px;
  }

  .how-hub-testimonial-card {
    margin-top: -82px;
    transform: translateX(32px);
  }
}

@media (max-width: 1024px) {
  .how-hub-section .how-hub-diagram {
    min-height: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    justify-items: center;
  }

  .how-hub-section .hub-diagram-svg {
    display: none;
  }

  .how-hub-section .hub-node,
  .how-hub-section .hub-pill,
  .how-hub-section .hub-destination,
  .how-hub-section .hub-logo-wrap {
    position: static;
    width: auto;
    max-width: 100%;
    min-height: 0;
  }

  .how-hub-section .hub-asset-image,
  .how-hub-section .hub-logo-image {
    width: auto;
    max-width: 100%;
  }

  .how-hub-section .hub-logo-wrap {
    min-height: 84px;
    grid-column: span 2;
  }

  .how-hub-section .hub-connector {
    display: none;
  }

  .how-hub-section .how-hub-certifications {
    margin-top: var(--spacing-md);
    margin-left: 0;
    width: 100%;
    flex-wrap: wrap;
  }

  .how-hub-section .how-hub-certification-tags {
    max-width: 100%;
  }

  .how-hub-section .hub-node-user,
  .how-hub-section .hub-node-bottom,
  .how-hub-section .hub-node-convert,
  .how-hub-section .hub-pill-receive,
  .how-hub-section .hub-pill-csv,
  .how-hub-section .hub-pill-api-left,
  .how-hub-section .hub-pill-api-right,
  .how-hub-section .hub-pill-csv-right,
  .how-hub-section .hub-pill-email,
  .how-hub-section .hub-pill-send,
  .how-hub-section .hub-destination-1,
  .how-hub-section .hub-destination-2,
  .how-hub-section .hub-destination-3 {
    left: auto;
    top: auto;
    width: auto;
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .how-hub-section .how-hub-diagram {
    grid-template-columns: 1fr;
    max-width: 360px;
    margin: 0 auto;
  }

  .how-hub-section .hub-logo-wrap {
    grid-column: span 1;
  }

  .how-hub-section .how-hub-testimonial-card {
    margin-top: var(--spacing-xl) !important;
  }

  .how-hub-section .how-hub-certification-oracle,
  .how-hub-section .how-hub-certification-tags {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .page-hub .how-hub-section:not(.how-hubinfra-section) .how-hub-diagram {
    display: block;
    max-width: 360px;
    min-height: 1200px;
    margin: 0 auto;
    position: relative;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-node,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-destination,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-logo-wrap,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-arrow,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-dash,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-cec {
    position: absolute;
    max-width: none;
    min-height: 0;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-connector {
    display: none;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-arrow,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-dash {
    display: block;
    left: calc(50% - 7px);
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-cec {
    display: block;
    left: calc(50% - 71px);
    top: 830px;
    width: 141px;
    z-index: 2;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-node-user {
    left: calc(50% - 84px);
    top: 0;
    width: 169px;
    z-index: 2;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-arrow-top {
    top: 42px;
    width: 15px;
    z-index: 3;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-receive {
    left: calc(50% - 70px);
    top: 74px;
    width: 140px;
    z-index: 4;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-csv {
    left: calc(50% - 26px);
    top: 112px;
    width: 51px;
    z-index: 4;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-api-left {
    left: calc(50% - 25px);
    top: 150px;
    width: 49px;
    z-index: 4;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-logo-wrap {
    left: calc(50% - 69px);
    top: 210px;
    width: 138px;
    z-index: 2;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-dash-bottom {
    left: calc(50% - 6px);
    top: 294px;
    width: 12px;
    z-index: 1;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-node-bottom {
    left: calc(50% - 92px);
    top: 344px;
    width: 184px;
    z-index: -1;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-arrow-bottom {
    top: 511px;
    width: 15px;
    z-index: 1;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-node-convert {
    left: calc(50% - 92px);
    top: 582px;
    width: 184px;
    z-index: 2;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-api-right {
    left: calc(50% - 25px);
    top: 688px; 
    width: 49px;
    z-index: 5;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-csv-right {
    left: calc(50% - 26px);
    top: 720px;
    width: 51px;
    z-index: 5;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-email {
    left: calc(50% - 33px);
    top: 751px;
    width: 65px;
    z-index: 5;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-pill-send {
    left: calc(50% - 30px);
    top: 782px;
    width: 59px;
    z-index: 5;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-mobile-arrow-through {
    top: 665px;
    width: 15px;
    z-index: 4;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-destination-1 {
    display: none;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-destination-2 {
    display: none;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .hub-destination-3 {
    display: none;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .how-hub-certifications,
  .page-hub .how-hub-section:not(.how-hubinfra-section) .how-hub-testimonial-card {
    display: none;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .how-hub-mobile-oracle {
    display: block;
    width: 211px;
    max-width: 100%;
    margin: -150px auto 0;
  }

  .page-hub .how-hub-section:not(.how-hubinfra-section) .how-hub-mobile-testimonial {
    display: block;
    width: 100%;
    max-width: 360px;
    margin: 20px auto 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .js-hub-diagram [data-anim] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Hubinfra diagram */
.how-hubinfra-section {
  min-height: auto;
  background-image: none;
}

.how-hubinfra-content.js-hub-diagram {
  position: relative;
}

.how-hubinfra-diagram {
  max-width: 930px;
  min-height: 460px;
  transform: none;
  overflow: visible;
}

.hubinfra-item {
  position: absolute;
  z-index: 2;
}

.hubinfra-item img {
  width: 100%;
  height: auto;
  display: block;
}

.hubinfra-connector {
  z-index: 1;
}

.hubinfra-mobile-arrow {
  display: none;
  z-index: 1;
}

.hubinfra-mobile-processamento,
.hubinfra-mobile-professional {
  display: none;
  z-index: 2;
}

.hubinfra-operadoras { left: 4px; top: 22px; width: 192px; z-index: -1;}
.hubinfra-arrow-left-line { left: 190px; top: 114px; width: 143px; }
.hubinfra-dashed-left { left: 260px; top: 124px; width: 12px; }
.hubinfra-csv { left: 240px; top: 152px; width: 51px; }
.hubinfra-api { left: 240px; top: 186px; width: 49px; z-index: -1;}
.hubinfra-logo { left: 345px; top: 72px; width: 149px; }
.hubinfra-arrow-right-main { left: 503px; top: 114px; width: 143px; }
.hubinfra-envio { left: 648px; top: 86px; width: 151px; }
.hubinfra-arrow-right-envio { left: 800px; top: 114px; width: 65px; }
.hubinfra-erps { left: 866px; top: 102px; width: 97px; }
.hubinfra-dashed-right { left: 574px; top: 124px; width: 12px; }
.hubinfra-conversao { left: 488px; top: 174px; width: 184px; z-index: -1;}
.hubinfra-processamento { left: 270px; top: 226px; width: 295px; z-index: -1;}
.hubinfra-arrow-up-center { left: 412px; top: 188px; width: 15px; }
.hubinfra-arrows-down { left: 296px; top: 240px; width: 248px; z-index: -2;}
.hubinfra-monitoramento { left: 192px; top: 336px; width: 151px; }
.hubinfra-habilitacao { left: 356px; top: 336px; width: 122px; }
.hubinfra-gestao { left: 490px; top: 336px; width: 97px; }
.hubinfra-professional { left: 196px; top: 388px; width: 387px; }
.hubinfra-oracle { left: 634px; top: 252px; width: 160px; }

@media (max-width: 768px) {
  .how-hubinfra-section {
    padding-bottom: 24px;
  }

  .how-hubinfra-section .how-hubinfra-diagram {
    max-width: 360px;
    min-height: 1180px;
    position: relative;
    margin: 0 auto;
  }

  .hubinfra-item {
    position: absolute;
  }

  .hubinfra-arrow-left-line,
  .hubinfra-dashed-left,
  .hubinfra-arrow-right-main,
  .hubinfra-arrow-right-envio,
  .hubinfra-dashed-right,
  .hubinfra-arrow-up-center,
  .hubinfra-arrows-down {
    display: none;
  }

  .hubinfra-operadoras { left: calc(50% - 120px); top: 0px; width: 242px; }
  .hubinfra-csv { left: calc(50% - 26px); top: 258px; width: 51px; }
  .hubinfra-api { left: calc(50% - 25px); top: 294px; width: 49px; z-index: 1;}

  .hubinfra-logo { left: calc(50% - 75px); top: 362px; width: 150px; }
  .hubinfra-conversao { left: calc(50% - 95px); top: 522px; width: 190px; z-index: 2;}

  .hubinfra-envio { left: calc(50% - 95px); top: 594px; width: 190px; }
  .hubinfra-erps { left: calc(50% - 56px); top: 726px; width: 112px; }

  .hubinfra-processamento,
  .hubinfra-monitoramento,
  .hubinfra-habilitacao,
  .hubinfra-gestao,
  .hubinfra-professional {
    display: none;
  }

  .hubinfra-mobile-processamento { display: block; left: calc(50% - 92px); top: 794px; width: 184px; }
  .hubinfra-mobile-professional { display: block; left: calc(50% - 102px); top: 1006px; width: 203px; }
  .hubinfra-oracle { left: calc(50% - 138px); top: 1060px; width: 168px; }

  .hubinfra-mobile-arrow {
    display: block;
    left: calc(50% - 7px);
    width: 15px;
  }

  .hubinfra-mobile-arrow-top { top: 232px; z-index: -1; }
  .hubinfra-connector.hubinfra-arrow-up-center { display: none !important; }
  .hubinfra-mobile-arrow-api-logo { top: 306px; z-index: -2;}
  .hubinfra-mobile-arrow-conversao-envio { top: 548px; z-index: 2; }
  .hubinfra-mobile-arrow-envio-erps { top: 676px; z-index: 2;} 
  .hubinfra-mobile-arrow-erps-processamento { top: 474px; }
}

/* Questions Section */
.questions-section {
  padding: var(--spacing-xxl) 0;
}

.questions-grid {
  display: grid;
  grid-template-columns: 605px 1fr;
  gap: 32px;
  align-items: start;
  position: relative;
  overflow: visible;
}

@media (max-width: 1280px) and (min-width: 769px) {
  .questions-grid {
    grid-template-columns: 500px 1fr;
    gap: var(--spacing-md);
  }
}

.questions-left-wrapper {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

.questions-left-card {
  background: #0f89d3;
  border-radius: 16px 16px 0 0;
  padding: 32px;
  color: white;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  position: relative;
  min-height: 379px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
  z-index: 10;
}

.questions-left-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.questions-left-tag {
  width: 200px;
  height: auto;
  display: block;
  object-fit: contain;
}

.questions-left-title {
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  line-height: 1.3;
  margin: 0;
  color: white;
}

.questions-left-text {
  font-size: 0.9375rem;
  line-height: 1.5;
  margin: 0;
  color: white;
  opacity: 0.9;
}

.questions-left-cta {
  margin-top: auto;
  margin-bottom: 32px;
}

.questions-left-cta .btn-primary {
  background: var(--color-navy);
  color: #ffffff;
}

.questions-left-cta .btn-primary:hover {
  background: var(--color-navy);
  color: #ffffff;
  opacity: 0.9;
}

.questions-left-rainbow-line {
  width: 100%;
  height: 5px;
  flex-shrink: 0;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
  border-radius: 0 0 16px 16px;
}

.questions-right {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: relative;
  z-index: 1;
  overflow: visible;
  width: 100%;
}

.questions-title {
  width: 450px;
  max-width: 100%;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.48px;
  color: #1c2b60;
  margin: 0;
}

.questions-header {
  margin-bottom: var(--spacing-xl);
}

.questions-intro {
  font-size: 1rem;
  color: #7f859a;
  line-height: 1.44;
  max-width: 450px;
  margin: 0;
}

.questions-intro-light {
  font-weight: 300;
}

.questions-intro strong {
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
}

.questions-carousel-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 920px;
}

.questions-cards {
  display: flex;
  gap: var(--spacing-md);
  padding-bottom: var(--spacing-lg);
  transition: transform 0.3s ease;
  position: relative;
  z-index: 1;
  width: max-content;
}

.question-card {
  flex: 0 0 290px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: var(--spacing-lg);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  position: relative;
  z-index: 1;
}

.questions-carousel-nav {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
  margin-top: var(--spacing-md);
}

.carousel-btn {
  display: flex;
  width: 28px;
  height: 28px;
  padding: 7px;
  justify-content: center;
  align-items: center;
  border: none;
  cursor: pointer;
  transition: var(--transition-normal);
  border-radius: 80px;
}

.carousel-btn-prev {
  background: transparent;
  border: 1px solid var(--Dark-Blue, #1c2b60);
}

.carousel-btn-prev:hover {
  background: rgba(28, 43, 96, 0.1);
}

.carousel-btn-next {
  background: var(--Dark-Blue, #1c2b60);
}

.carousel-btn-next:hover {
  background: #152045;
}

.carousel-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.carousel-btn svg {
  display: block;
  width: 14px;
  height: 14px;
}

.question-avatar {
  position: relative;
  margin-bottom: var(--spacing-lg);
}

.question-avatar-icon {
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  height: auto;
}

.question-text {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.5;
  margin: 0;
}

.question-text em {
  font-style: italic;
  font-weight: var(--font-weight-bold);
}

.question-text-light {
  font-weight: 300;
}

/* Unique Business Section */
.unique-business-section {
  padding: var(--spacing-xxl) 0;
}

.unique-business-grid {
  display: grid;
  grid-template-columns: 0.4fr 0.7fr;
  gap: 48px;
  align-items: center;
}

.unique-left {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.unique-icon {
  width: 168px;
  height: 23px;
}

.unique-title {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.3;
  margin: 0;
}

.unique-title strong {
  color: var(--color-navy);
}

.unique-description {
  color: var(--texto-corrido, #7f859a);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16.004px;
  font-style: normal;
  font-weight: 300;
  line-height: 144%;
  letter-spacing: 0.48px;
  margin: 0;
}

.unique-description strong {
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
}

.unique-right {
  display: flex;
  justify-content: flex-end;
}

.unique-image-wrapper {
  width: 100%;
  max-width: 760px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  background: transparent;
}

.unique-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  background: transparent;
}

@media (max-width: 1024px) {
  .unique-business-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .unique-right {
    justify-content: center;
  }

  .unique-image-wrapper {
    max-width: 100%;
  }
}

/* Support Section */
.support-section {
  padding: var(--spacing-xxl) 0;
}

.support-header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
}

.support-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: var(--spacing-md);
}

.support-badge-icon {
  width: auto;
  height: auto;
}

.support-title {
  font-size: 2.5rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.2;
  margin-bottom: var(--spacing-md);
  letter-spacing: 1.2px;
}

.support-title-light {
  font-weight: 300;
}

.support-intro {
  font-size: 1rem;
  color: #7f859a;
  line-height: 1.44;
  max-width: 604px;
  margin: 0 auto var(--spacing-md);
}

.support-intro strong {
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
}

.support-subtitle {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: #7f859a;
  text-align: center;
  margin: 0;
}

.support-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-md);
  margin-top: var(--spacing-xl);
}

/* Cards de suporte técnico da seção support-section (página Hub) */
.support-section .support-card {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: var(--spacing-lg);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--spacing-md);
}

.support-section .support-card-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.support-section .support-card-icon svg {
  display: block;
  margin: 0 auto;
}

.support-section .support-card-icon svg svg {
  display: block;
}

.support-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--spacing-xl);
}

.support-section .support-card h3 {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.5;
  margin: 0;
}

.support-section .support-card p {
  font-size: 0.875rem;
  color: #4b597e;
  line-height: 1.4;
  margin: 0;
}

/* Contact Form - Hub Blue Background */
.contact-form-section.bg-hub-blue {
  background: var(--Hub-Blue, #0F89D3);
}

.contact-form-section.bg-hub-blue .contact-form-title,
.contact-form-section.bg-hub-blue .contact-form-subtitle,
.contact-form-section.bg-hub-blue .contact-form-description,
.contact-form-section.bg-hub-blue .form-group label,
.contact-form-section .form-group label,
.contact-form label {
  color: white !important;
}

.contact-form-section.bg-hub-blue .form-group input,
.contact-form-section.bg-hub-blue .form-group select {
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
  color: white;
}

.contact-form-section.bg-hub-blue .form-group input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.contact-form-section.bg-hub-blue .form-group select {
  cursor: pointer;
  appearance: none;
  background-color: rgba(255, 255, 255, 0.1);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23FFFFFF' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}

.contact-form-section.bg-hub-blue .form-group input:focus,
.contact-form-section.bg-hub-blue .form-group select:focus {
  border-color: white;
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2);
}

/* Responsive - Hub Page */
@media (max-width: 1024px) {
  .automation-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-md);
  }

  .automation-card {
    width: 100%;
    max-width: 605px;
    height: auto;
    min-height: 300px;
  }

  .automation-card-text {
    padding: var(--spacing-lg);
  }

  .automation-card-image {
    width: 100%;
    max-width: 605px;
    height: auto;
    min-height: 300px;
  }

  .automation-image {
    min-height: 300px;
  }

  .automation-card-image {
    min-height: 300px;
  }

  .section-divider {
    padding: var(--spacing-lg) 0;
  }

  .divider-image {
    max-width: 100%;
  }

  .hubinfra-divider-heading {
    max-width: 100%;
    font-size: clamp(1.125rem, 4.5vw, 1.625rem);
    padding: 1rem 1.5rem;
  }

  .how-hub-section {
    background-image: none;
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    position: relative;
    min-height: clamp(500px, 80vh, 800px);
  }

  .how-hub-title {
    font-size: 2rem;
  }

  .how-hub-diagram {
    padding: 0;
    min-height: 400px;
    background: transparent;
    border: none;
    box-shadow: none;
  }

  .how-hub-testimonial-card {
    position: static;
    width: 100%;
    max-width: 100%;
    margin-top: var(--spacing-xl);
    margin-left: 0;
    margin-right: 0;
  }

  .hub-automation-card {
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
  }

  .support-cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .questions-grid {
    grid-template-columns: 1fr !important;
    gap: var(--spacing-lg);
    max-width: 100%;
  }

  .questions-left-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .questions-left-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hub-infra-automation-wrapper {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto;
  }

  .hub-infra-card-left {
    grid-row: 1;
    width: 100%;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: var(--spacing-lg);
  }

  .hub-infra-cards-right {
    grid-row: 2;
    width: 100%;
  }

  .questions-cards {
    gap: var(--spacing-sm);
  }

  .questions-carousel-wrapper {
    max-width: 100% !important;
  }

  .questions-right {
    width: 100% !important;
    max-width: 100% !important;
  }

  .question-card {
    flex: 0 0 280px;
    min-width: 280px;
  }
}

@media (max-width: 768px) {
  .page-hub .hero-hub.hero {
    min-height: 0;
    padding-top: var(--spacing-lg);
    padding-bottom: var(--spacing-md);
  }

  .hero-hub .hero-content {
    min-height: auto;
    padding: var(--spacing-lg);
  }

  .hero-hub .hero-title {
    font-size: 1.5rem;
  }

  .hero-hub .hero-description {
    font-size: 0.9375rem;
  }

  .btn-hubinfra-hero-cta {
    width: 100%;
    max-width: 360px;
    justify-content: center;
  }

  .page-hub .hub-card-section {
    padding: var(--spacing-md) 0;
  }

  .hub-card-container {
    width: 100%;
    height: auto;
    min-height: 312px;
  }

  .page-hub .hub-card-container {
    min-height: 0;
  }

  .hub-card-content {
    padding: var(--spacing-lg);
    gap: var(--spacing-sm);
  }

  .hub-card-title {
    font-size: 1.25rem;
  }

  .hub-card-description {
    font-size: 0.9375rem;
  }

  .page-hub .automation-section {
    padding-top: var(--spacing-md);
    padding-bottom: var(--spacing-lg);
  }


  /* HubInfra Hero Responsive */
  .hubinfra-hero-card {
    padding: 40px 24px 32px 24px;
  }

  .hubinfra-hero-badge {
    margin-bottom: 24px;
  }

  .hubinfra-hero-badge-icon {
    width: 120px;
  }

  .hubinfra-hero-title {
    font-size: 24px;
    margin-bottom: 16px;
  }

  .hubinfra-hero-description {
    font-size: 16px;
  }

  .automation-title {
    font-size: 1.25rem;
  }

  .architecture-title,
  .support-title {
    font-size: 1.75rem;
  }

  .support-cards {
    grid-template-columns: 1fr;
  }

  .how-hub-section {
    background-image: none;
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    position: relative;
    min-height: clamp(500px, 80vh, 800px);
  }

  .how-hub-testimonial-card {
    position: static;
    width: 100%;
    max-width: 100%;
    margin-top: 900px;
    margin-left: 0;
    margin-right: 0;
  }

  .hub-automation-card {
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
  }

  .questions-grid {
    grid-template-columns: 1fr !important;
    gap: var(--spacing-lg);
    max-width: 100%;
  }

  .questions-left-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .questions-left-card {
    min-height: auto;
    padding: var(--spacing-lg);
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hub-infra-automation-wrapper {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto;
  }

  .hub-infra-card-left {
    grid-row: 1;
    width: 100%;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: var(--spacing-lg);
  }

  .hub-infra-cards-right {
    grid-row: 2;
    width: 100%;
  }

  .questions-left-tag {
    width: 150px;
  }

  .questions-left-title {
    font-size: 1.25rem;
  }

  .questions-left-text {
    font-size: 0.875rem;
  }

  .questions-cards {
    gap: var(--spacing-xs);
  }

  .questions-carousel-wrapper {
    max-width: 100% !important;
    width: 100% !important;
  }

  .questions-right {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden;
  }

  .question-card {
    flex: 0 0 calc(100vw - 80px);
    min-width: 260px;
    max-width: 320px;
  }
}

@media (max-width: 480px) {
  .questions-carousel-wrapper {
    max-width: 100% !important;
    width: 100% !important;
  }

  .questions-right {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden;
  }

  .question-card {
    flex: 0 0 calc(100vw - 60px);
    min-width: 240px;
    max-width: 280px;
  }

  .question-text {
    font-size: 0.875rem;
  }

  .questions-left-title {
    font-size: 1.125rem;
  }
}

/* ============================
   CONTACT PAGE
   ============================ */
.page-contato {
  padding: 0 0 var(--spacing-xxl);
}

.contact-page-section {
  padding: var(--spacing-lg) 0 var(--spacing-xxl);
}

.contact-page-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-lg);
}

.contact-icon-circle {
  width: 60px;
  height: 60px;
  border-radius: 80px;
  border: 1px solid var(--Light-Blue, #90e0ef);
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  flex-shrink: 0;
}

.contact-icon-circle svg {
  width: 24px;
  height: 24px;
}

.contact-page-title {
  color: #1c2b60;
  text-align: center;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 48px;
  margin: 0;
}

.contact-page-description {
  color: #1c2b60;
  text-align: center;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  margin-bottom: var(--spacing-lg);
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

/* Card de contatos para suporte - centralizado abaixo da descrição */
.page-contato .contact-page-section .container .contact-support-card-wrapper {
  width: 100%;
  text-align: center;
  margin-bottom: var(--spacing-xxl);
}

.page-contato .contact-page-section .container .contact-support-card.contact-support-highlight-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 741px;
  max-width: 100%;
  margin: 0 auto;
  padding: 40px 32px;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  text-align: center;
}

.page-contato .contact-support-highlight-title {
  margin: 0;
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 30px;
}

.page-contato .contact-support-highlight-description {
  margin: 16px 0 0;
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 28px;
}

.page-contato .contact-support-highlight-description strong {
  font-weight: 700;
  color: #1c2b60;
}

.page-contato .contact-support-highlight-inline-phones {
  display: inline;
  margin-left: 8px;
}

.page-contato .contact-support-highlight-separator {
  display: inline-block;
  margin: 0 10px;
}

.page-contato .contact-support-highlight-phones {
  margin: 8px 0 0;
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 28px;
}

.page-contato .contact-support-card-phone {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 28px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  transition: opacity 0.2s;
}

.page-contato .contact-support-card-phone--whatsapp {
  display: inline;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  white-space: nowrap;
}

.page-contato .contact-support-card-phone--whatsapp:hover {
  opacity: 0.8;
}

.whatsapp-icon-inline {
  width: 16px;
  height: 16px;
  display: inline;
  vertical-align: middle;
  margin-right: 3px;
  position: relative;
  top: -1px;
}

.page-contato .contact-support-highlight-question {
  margin: 20px 0 0;
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 28px;
}

.page-contato .contact-support-highlight-btn {
  margin-top: 14px;
  min-width: 324px;
  padding: 12px 24px;
  border-radius: 8px;
  background: #90e0ef;
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  text-decoration: none;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.page-contato .contact-support-highlight-btn:hover {
  background: #77d7ea;
  transform: translateY(-1px);
}

.contact-page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: var(--spacing-lg);
  align-items: flex-start;
}

.contact-page-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.contact-badge {
  display: inline-flex;
  align-items: flex-start;
  width: fit-content;
}

.contact-badge svg {
  width: 16px;
  height: 16px;
}

.contact-content-title {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 40px;
  margin: 0;
}

.contact-content-description {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  margin: 0;
}

.contact-image-wrapper {
  margin-top: var(--spacing-lg);
}

.contact-image {
  width: 100%;
  height: auto;
  border-radius: 16px;
  object-fit: cover;
}

.contact-page-form-wrapper {
  background: var(--Dark-Blue, #1c2b60);
  border-radius: 16px;
  padding-block: var(--spacing-xl);
  padding-inline: var(--spacing-xxl);
  display: flex;
  flex-direction: column;
  width: 100%;
}

.contact-page-form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.contact-page-form .form-group {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.contact-page-form .form-group label,
.contact-page-form label {
  color: #fff !important;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
}

.contact-page-form .form-group input,
.contact-page-form .form-group select,
.contact-page-form input,
.contact-page-form select {
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
  color: #fff !important;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  transition: var(--transition-normal);
}

.contact-page-form select option {
  background: var(--color-navy);
  color: #fff;
}

.contact-page-form .form-group input::placeholder,
.contact-page-form input::placeholder {
  color: rgba(255, 255, 255, 0.6) !important;
}

.contact-page-form select {
  color: #fff !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.contact-page-form .form-group input:focus,
.contact-page-form .form-group select:focus {
  outline: none;
  border-color: var(--Light-Blue, #90e0ef);
  background: rgba(255, 255, 255, 0.15);
}

.contact-page-form .form-group select,
.contact-page-form select {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: rgba(255, 255, 255, 0.1) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23FFFFFF' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
  color: #fff !important;
}

.btn-contact-submit {
  padding: 16px 32px;
  background: var(--Light-Blue, #90e0ef);
  color: var(--Dark-Blue, #1c2b60);
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Merriweather Sans', sans-serif;
  cursor: pointer;
  transition: var(--transition-normal);
  width: 100%;
  margin-top: var(--spacing-sm);
}

.btn-contact-submit:hover {
  background: #caf0f8;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

.contact-page-footer {
  margin-top: var(--spacing-xl);
  text-align: right;
  max-width: 50%;
  margin-left: auto;
}

.contact-footer-text {
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  text-transform: uppercase;
  margin: 0;
}

.contact-footer-phone {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.6px;
  text-decoration: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  display: inline-block;
  margin-top: var(--spacing-xs);
  transition: var(--transition-normal);
}

.contact-footer-phone:hover {
  color: var(--Light-Blue, #90e0ef);
}

/* Responsive - Contact Page */
@media (max-width: 1024px) {
  .contact-page-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
  }

  .contact-page-form-wrapper {
    order: -1;
    max-width: 100%;
  }

  .contact-page-footer {
    max-width: 100%;
    text-align: left;
    margin-left: 0;
  }
}

@media (max-width: 768px) {
  .contact-page-title {
    font-size: clamp(28px, 6vw, 40px);
    line-height: clamp(34px, 7vw, 48px);
  }

  .contact-page-description {
    font-size: clamp(14px, 3vw, 16px);
    padding: 0 var(--layout-inline-padding);
  }

  .page-contato .contact-support-card-wrapper {
    padding: 0 var(--layout-inline-padding);
  }

  .page-contato .contact-page-section .container .contact-support-card.contact-support-highlight-card {
    width: 100%;
    padding: var(--spacing-xl) var(--spacing-lg);
  }

  .page-contato .contact-support-highlight-title {
    font-size: clamp(18px, 4.6vw, 20px);
    line-height: 1.2;
  }

  .page-contato .contact-support-highlight-description,
  .page-contato .contact-support-highlight-phones {
    font-size: 14px;
    line-height: 1.6;
  }

  .page-contato .contact-support-card-phone {
    font-size: clamp(16px, 4vw, 17px);
    line-height: 1.3;
  }

  .page-contato .contact-support-highlight-question {
    font-size: clamp(16px, 4vw, 17px);
    line-height: 1.35;
  }

  .page-contato .contact-support-highlight-btn {
    min-width: 0;
    width: 100%;
    max-width: 460px;
    font-size: clamp(14px, 3.6vw, 16px);
    line-height: 1.25;
    padding: 14px 20px;
  }

  .contact-content-title {
    font-size: clamp(24px, 5vw, 32px);
    line-height: clamp(30px, 6vw, 40px);
  }

  .contact-page-form-wrapper {
    padding: var(--spacing-xl) var(--spacing-lg);
  }

  .contact-page-header {
    flex-wrap: wrap;
  }

  .contact-icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 60px;
  }

  .contact-icon-circle svg {
    width: 20px;
    height: 20px;
  }

  .page-contato {
    padding-bottom: var(--spacing-lg);
  }

  .page-contato .contact-support-section {
    padding-top: var(--spacing-lg);
    padding-bottom: var(--spacing-md);
  }

  .page-contato .newsletter-section.newsletter-contact {
    padding: var(--spacing-lg) 0;
  }

  .page-contato .newsletter-section.newsletter-contact .newsletter-floating-container {
    min-height: 0;
    padding-bottom: 12px;
  }

  .page-contato .newsletter-section.newsletter-contact .newsletter-content {
    padding: var(--spacing-md) var(--spacing-sm);
  }
}

/* ============================
   CONTACT SUPPORT SECTION
   ============================ */
.contact-support-section {
  padding: var(--spacing-xxl) 0;
  background: rgba(240, 247, 255, 0.5);
}

.support-cards-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
  align-items: stretch;
}

.support-card {
  border-radius: 16px;
  padding: var(--spacing-xxl);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  text-align: left;
  align-items: flex-start;
}

.support-card-left {
  background: #fff;
}

.support-card-right {
  background: #def6fb;
}

.support-card-icon {
  width: auto;
  height: auto;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.support-card-icon svg,
.support-card-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.support-card-title {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  margin: 0;
}

.support-card-description {
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin: 0;
  text-align: left;
}

.support-card-cta {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.support-cta-label {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
}

.support-phone-numbers {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  flex-wrap: wrap;
}

.support-phone {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.6px;
  text-decoration: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  transition: var(--transition-normal);
}

.support-phone--whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: underline;
  text-decoration-style: solid;
}

.support-phone--whatsapp:hover {
  color: var(--Light-Blue, #90e0ef);
  opacity: 1;
}

.support-phone--whatsapp .whatsapp-icon-inline {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.support-phone-separator {
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.support-whatsapp-link {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-sm);
  text-decoration: none;
  transition: var(--transition-normal);
}

.support-whatsapp-link svg {
  width: 23px;
  height: 23px;
  flex-shrink: 0;
}

.support-whatsapp-number {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.6px;
  text-decoration: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.support-whatsapp-link:hover .support-whatsapp-number {
  color: var(--Light-Blue, #90e0ef);
}

/* Responsive - Support Section */
@media (max-width: 1024px) {
  .support-cards-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }
}

@media (max-width: 768px) {
  .contact-support-section {
    padding: var(--spacing-xl) 0;
  }

  .support-card {
    padding: var(--spacing-xl) var(--spacing-lg);
  }

  .support-card-title {
    font-size: clamp(20px, 5vw, 24px);
    line-height: clamp(26px, 6vw, 32px);
  }

  .support-card-description {
    font-size: clamp(14px, 3vw, 16px);
  }

  .support-phone {
    font-size: clamp(18px, 4vw, 20px);
  }

  .support-whatsapp-number {
    font-size: clamp(18px, 4vw, 20px);
  }
}

/* ============================
   HUB DE CONTEÚDOS
   ============================ */
.page-conteudos {
  padding: var(--spacing-xxl) 0;
  background: rgba(240, 247, 255, 0.5);
}

.conteudos-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-lg);
  text-align: center;
}

.conteudos-header-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 80px;
  border: 1px solid var(--Light-Blue, #90E0EF);
  padding: 0;
}

.conteudos-header-icon svg {
  width: 21px;
  height: 21px;
}

.conteudos-title {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: clamp(1.75rem, 2.4vw + 0.85rem, 2.5rem);
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -0.02em;
  margin: 0;
  margin-inline: auto;
  max-width: min(52rem, 100%);
  text-align: center;
  text-wrap: balance;
}

.conteudos-description {
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  text-align: center;
  max-width: min(800px, 100%);
  margin: 0 auto var(--spacing-xl);
  text-wrap: balance;
}

.conteudos-filters {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-md);
  flex-wrap: wrap;
}

.filter-btn {
  padding: var(--spacing-sm) var(--spacing-lg);
  border-radius: 80px;
  border: 1px solid var(--Blue-200, #43BFD7);
  background: #fff;
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  cursor: pointer;
  transition: var(--transition-normal);
}

.filter-btn:hover {
  background: rgba(144, 224, 239, 0.2);
  border-color: var(--Blue-200, #43BFD7);
}

.filter-btn.active {
  background: var(--Light-Blue, #90e0ef);
  color: #1c2b60;
  font-weight: 500;
  border-color: var(--Blue-200, #43BFD7);
}

.conteudos-posts-section {
  padding: var(--spacing-xl) 0;
}

.conteudos-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, 395px);
  gap: var(--spacing-xl);
  justify-content: center;
}

.conteudo-card {
  display: flex;
  flex-direction: column;
  background: transparent;
  transition: var(--transition-normal);
}

.conteudo-card:hover {
  transform: translateY(-2px);
}

.conteudo-card-image {
  position: relative;
  display: flex;
  width: 395px;
  height: 216px;
  justify-content: flex-end;
  align-items: center;
  overflow: hidden;
  border-radius: 16px;
}

.conteudo-card-image a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.conteudo-card-image-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Category Badges - Canto inferior esquerdo (versão menor) */
.conteudo-card-badges {
  position: absolute;
  bottom: 12px;
  left: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  z-index: 2;
}

/* Ícone da categoria (esquerda) - menor */
.conteudo-category-icon {
  display: flex;
  width: 24px;
  height: 24px;
  padding: 6px;
  justify-content: center;
  align-items: center;
  border-radius: 80px;
  background: rgba(255, 255, 255, 0.10);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
}

.conteudo-category-icon:hover {
  background: rgba(255, 255, 255, 0.20);
  transform: scale(1.05);
}

.conteudo-category-icon svg {
  width: 12px;
  height: 12px;
  display: block;
}

/* Badge com texto da categoria (direita) - menor */
.conteudo-category-badge-text {
  display: inline-flex;
  padding: 6px 12px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 80px;
  background: rgba(255, 255, 255, 0.10);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
}

.conteudo-category-badge-text:hover {
  background: rgba(255, 255, 255, 0.20);
}

.conteudo-category-badge-text span {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.conteudo-card-content {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  margin-top: var(--spacing-md);
}

.conteudo-card-title {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  margin: 0;
}

.conteudo-card-title a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-normal);
}

.conteudo-card-title a:hover {
  color: var(--Light-Blue, #90e0ef);
}

.conteudo-card-cta {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  transition: var(--transition-normal);
  align-self: flex-start;
}

.conteudo-card-cta:hover {
  color: var(--Light-Blue, #90e0ef);
}

.conteudo-card.hidden {
  display: none;
}

.conteudos-pagination {
  margin-top: var(--spacing-xxl);
  display: flex;
  justify-content: center;
}

/* Responsive - Conteúdos */
@media (max-width: 1300px) {
  .conteudos-posts-grid {
    grid-template-columns: repeat(2, 395px);
  }
}

@media (max-width: 1024px) {
  .conteudos-posts-grid {
    grid-template-columns: 1fr;
    max-width: 395px;
    margin: 0 auto;
  }

  .conteudo-card-image {
    width: 100%;
    height: auto;
    aspect-ratio: 395 / 216;
  }
}

@media (max-width: 768px) {
  .conteudos-header {
    gap: var(--spacing-sm);
  }

  .conteudos-title {
    font-size: clamp(1.5rem, 5.5vw, 1.875rem);
    line-height: 1.25;
    max-width: 100%;
  }

  .conteudos-description {
    font-size: clamp(14px, 3vw, 16px);
    padding: 0 var(--layout-inline-padding);
  }

  .filter-btn {
    font-size: clamp(14px, 3vw, 16px);
    padding: var(--spacing-xs) var(--spacing-md);
  }

  .conteudo-card-image {
    height: auto;
    aspect-ratio: 395 / 216;
  }

  .conteudo-card-badges {
    bottom: 10px;
    left: 10px;
    gap: 6px;
  }

  .conteudo-category-icon {
    width: 20px;
    height: 20px;
    padding: 5px;
  }

  .conteudo-category-icon svg {
    width: 10px;
    height: 10px;
  }

  .conteudo-category-badge-text {
    padding: 5px 10px;
  }

  .conteudo-category-badge-text span {
    font-size: 11px;
  }
}

/* ============================
   SINGLE POST STYLES
   ============================ */

/* Post Hero Section */
.post-hero {
  background: rgba(240, 247, 255, 0.5);
}

.post-hero .container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

/* Featured Image Wrapper */
.post-featured-image-wrapper {
  position: relative;
  width: 1230px;
  height: 258px;
  max-width: 100%;
  border-radius: 16px;
  overflow: hidden;
  margin: 0 auto var(--spacing-lg);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.post-featured-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Category Badges - Canto inferior esquerdo */
.post-category-badges {
  position: absolute;
  bottom: 16px;
  left: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 2;
}

/* Ícone da categoria (esquerda) */
.category-icon {
  display: flex;
  width: 28px;
  height: 28px;
  padding: 7px;
  justify-content: center;
  align-items: center;
  border-radius: 80px;
  background: rgba(255, 255, 255, 0.10);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
}

.category-icon:hover {
  background: rgba(255, 255, 255, 0.20);
  transform: scale(1.05);
}

.category-icon svg {
  width: 14px;
  height: 14px;
  display: block;
}

/* Badge com texto da categoria (direita) */
.category-badge-text {
  display: inline-flex;
  padding: 8px 16px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 80px;
  background: rgba(255, 255, 255, 0.10);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--transition-normal);
}

.category-badge-text:hover {
  background: rgba(255, 255, 255, 0.20);
}

.category-badge-text span {
  color: #fff;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Título Principal do Post */
.post-title-main {
  color: var(--Dark-Blue, #1C2B60);
  font-family: "Merriweather Sans", sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 48px; /* 120% */
  margin: 0 auto;
  max-width: 1230px;
  text-align: left;
}

/* Post Content Section */
.post-content-section {
  padding: var(--spacing-xxl) 0;
  background: rgba(240, 247, 255, 0.5);
}

.post-content-section .container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

.post-content-wrapper {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--spacing-xxl);
  align-items: flex-start;
  max-width: 1230px;
  margin: 0 auto;
}

.post-main-content {
  max-width: 100%;
}

.post-sidebar {
  position: sticky;
  top: 100px;
  height: fit-content;
}

.share-buttons-sticky {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-md);
}

.share-label {
  color: #435285;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  margin: 0;
  text-align: center;
}

.social-share {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.share-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--Light-Blue, #90e0ef);
  color: #1c2b60;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-normal);
  text-decoration: none;
}

.share-btn:hover {
  background: #caf0f8;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

.share-btn svg {
  width: 24px;
  height: 24px;
}

.related-posts-section {
  padding: var(--spacing-xxl) 0;
  background: rgba(240, 247, 255, 0.5);
}

.related-posts-section .container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

.related-posts-title {
  color: var(--Dark-Blue, #1c2b60);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 32px;
  margin: 0 0 var(--spacing-xl);
  text-align: left;
  max-width: 1230px;
}

.related-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, 395px);
  gap: var(--spacing-xl);
  justify-content: flex-start;
  max-width: 1230px;
}

.related-post-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: var(--transition-normal);
}

.related-post-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.related-post-image {
  position: relative;
  width: 395px;
  height: 216px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  overflow: hidden;
}

.related-post-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.related-post-badge {
  position: absolute;
  top: var(--spacing-sm);
  left: var(--spacing-sm);
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-xs) var(--spacing-sm);
  background: rgba(255, 255, 255, 0.9);
  border-radius: 50px;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: #435285;
  z-index: 2;
}

.related-post-badge svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.related-post-content {
  padding: var(--spacing-lg);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.related-post-title {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  margin: 0;
}

.related-post-title a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-normal);
}

.related-post-title a:hover {
  color: var(--Light-Blue, #90e0ef);
}

.related-post-link {
  color: #1c2b60;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  transition: var(--transition-normal);
  align-self: flex-start;
}

.related-post-link:hover {
  color: var(--Light-Blue, #90e0ef);
}

/* Responsive - Single Post */
@media (max-width: 1300px) {
  .post-featured-image-wrapper {
    width: 100%;
    height: auto;
    aspect-ratio: 4.77 / 1;
  }

  .post-title-main {
    font-size: clamp(32px, 4vw, 40px);
    line-height: clamp(40px, 5vw, 48px);
  }

  .related-posts-section .container {
    padding: 0 var(--layout-inline-padding);
  }

  .related-posts-grid {
    grid-template-columns: repeat(2, 395px);
    max-width: 100%;
  }
}

@media (max-width: 1024px) {
  .post-hero .container {
    padding: 0 var(--layout-inline-padding);
  }

  .post-content-section .container {
    padding: 0 var(--layout-inline-padding);
  }

  .related-posts-section .container {
    padding: 0 var(--layout-inline-padding);
  }

  .post-featured-image-wrapper {
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .post-title-main {
    font-size: clamp(28px, 5vw, 32px);
    line-height: clamp(36px, 6vw, 40px);
  }

  .post-content-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
    max-width: 100%;
  }

  .post-sidebar {
    position: static;
    display: flex;
    justify-content: center;
  }

  .share-buttons-sticky {
    flex-direction: row;
    align-items: center;
  }

  .social-share {
    flex-direction: row;
  }

  .related-posts-title {
    max-width: 100%;
  }

  .related-posts-grid {
    grid-template-columns: 1fr;
    max-width: 395px;
    margin: 0 auto;
  }

  .related-post-image {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .post-featured-image-wrapper {
    border-radius: 12px;
    margin-bottom: var(--spacing-md);
  }

  .post-category-badges {
    bottom: 12px;
    left: 12px;
    gap: 8px;
  }

  .category-icon {
    width: 24px;
    height: 24px;
    padding: 6px;
  }

  .category-icon svg {
    width: 12px;
    height: 12px;
  }

  .category-badge-text {
    padding: 6px 12px;
  }

  .category-badge-text span {
    font-size: 12px;
  }

  .post-hero .container {
    padding: 0 var(--layout-inline-padding);
  }

  .post-content-section .container {
    padding: 0 var(--layout-inline-padding);
  }

  .related-posts-section .container {
    padding: 0 var(--layout-inline-padding);
  }

  .post-title-main {
    font-size: clamp(24px, 6vw, 28px);
    line-height: clamp(32px, 7vw, 36px);
    padding: 0;
  }

  .post-content-wrapper {
    max-width: 100%;
  }

  .post-content-section {
    padding: var(--spacing-xl) 0;
  }

  .related-posts-title {
    font-size: clamp(24px, 5vw, 32px);
    line-height: clamp(30px, 6vw, 40px);
    max-width: 100%;
  }

  .related-posts-grid {
    max-width: 100%;
  }

  .related-post-image {
    height: 200px;
  }
}

/* ============================
   QUEM SOMOS PAGE
   ============================ */


/* Quem Somos - Header */
.page-quem-somos .site-header {
  background: transparent !important;
}

.page-quem-somos .site-header .header-content {
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow: 0 4px 24px rgba(28, 43, 96, 0.08) !important;
  border-radius: var(--radius-xl) !important;
  border: 1px solid rgba(255, 255, 255, 0.5) !important;
}

/* Hero Section Quem Somos */
.hero-quem-somos .hero-content {
  min-height: 543px;
  background: transparent;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}

.hero-quem-somos .hero-content-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  z-index: 2;
}

.hero-quem-somos .hero-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto var(--spacing-md);
}

.hero-quem-somos .hero-badge-icon {
  width: auto;
  height: 27px;
  display: block;
  object-fit: contain;
  margin: 0 auto;
}

.hero-quem-somos .hero-title {
  font-family: var(--font-primary);
  font-size: clamp(1.75rem, 2.2vw + 1rem, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--color-navy);
  margin: 0 auto var(--spacing-md);
  max-width: min(42rem, 100%);
  padding-inline: clamp(0px, 2vw, 12px);
  text-align: center;
  text-wrap: balance;
  text-shadow: 0 2px 4px rgba(255, 255, 255, 0.3);
}

.hero-quem-somos .hero-description {
  font-family: var(--font-primary);
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--color-navy);
  max-width: min(40rem, 100%);
  margin-inline: auto;
  padding-inline: clamp(0px, 2vw, 12px);
  text-align: center;
  text-shadow: 0 2px 4px rgba(255, 255, 255, 0.3);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.hero-quem-somos .hero-description p {
  margin: 0;
}

.hero-quem-somos .hero-description strong {
  font-weight: 700;
}

/* Trajetória Section */
.trajetoria-section {
  padding: var(--spacing-xxl) 0 calc(var(--spacing-xxl) * 2);
  background: var(--color-light-gray);
}

.trajetoria-header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
  max-width: min(48rem, 100%);
  margin-inline: auto;
  padding-inline: clamp(0px, 2vw, 12px);
}

.trajetoria-badge-wrapper {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-md);
}

.trajetoria-badge-full {
  height: 23px;
  width: auto;
  display: block;
}

.trajetoria-badge-text {
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
}

.trajetoria-title {
  font-family: var(--font-primary);
  font-size: clamp(1.625rem, 2vw + 1rem, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--color-navy);
  margin: 0 auto var(--spacing-md);
  max-width: 100%;
  text-wrap: balance;
}

.trajetoria-intro {
  font-family: var(--font-primary);
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--color-navy);
  max-width: min(36rem, 100%);
  margin: 0 auto;
  text-wrap: balance;
  opacity: 0.92;
}

/* Timeline */
.timeline-container {
  position: relative;
  max-width: 1235px;
  margin: 0 auto;
  padding: var(--spacing-md) 0 var(--spacing-xl);
  min-height: 100%;
}

.timeline-line {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: calc(100% - 320px);
  background: #d9d9d9;
  border-radius: 8px;
  top: 0;
}

.timeline-item {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: var(--spacing-xxl);
  min-height: 132px;
  padding-bottom: var(--spacing-sm);
}

.timeline-item:last-child {
  margin-bottom: 0;
}

.timeline-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 21px;
  height: 21px;
  z-index: 2;
}

.timeline-dot svg {
  width: 100%;
  height: 100%;
  display: block;
}

.timeline-year {
  position: absolute;
  background: var(--color-cyan);
  padding: 8px 16px;
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 700;
  color: var(--color-navy);
  white-space: nowrap;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
}

.timeline-year-left {
  right: calc(50% + 15px);
  left: auto;
}

.timeline-year-right {
  left: calc(50% + 15px);
  right: auto;
}

.timeline-year-large {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-cyan);
  padding: 8px 16px;
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 24px;
  font-weight: 700;
  color: var(--color-navy);
  white-space: nowrap;
  z-index: 3;
  margin-top: -12px;
}

.timeline-content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  max-width: 360px;
  padding: 0;
}

.timeline-left {
  text-align: right;
  right: calc(50% + 30px);
  left: auto;
}

.timeline-right {
  text-align: left;
  left: calc(50% + 30px);
  right: auto;
}

/* Ajustes específicos para os itens da timeline */
.timeline-item-1 .timeline-content {
  left: calc(50% + 30px);
  right: auto;
}

.timeline-item-2 .timeline-content {
  right: calc(50% + 30px);
  left: auto;
}

.timeline-item-3 .timeline-content {
  left: calc(50% + 30px);
  right: auto;
}

.timeline-item-4 .timeline-content {
  right: calc(50% + 30px);
  left: auto;
}

.timeline-item-5 .timeline-content {
  left: calc(50% + 30px);
  right: auto;
}

.timeline-item-6 .timeline-content {
  right: calc(50% + 30px);
  left: auto;
}

.timeline-item-7 .timeline-content {
  left: calc(50% + 30px);
  right: auto;
}

.timeline-center {
  text-align: center;
  max-width: 469px;
  margin: 0 auto;
  padding-top: var(--spacing-xl);
}

.timeline-title {
  font-family: var(--font-primary);
  font-size: clamp(1.125rem, 1.1vw + 1rem, 1.5rem);
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-navy);
  margin-bottom: var(--spacing-sm);
  letter-spacing: 0.02em;
}

.timeline-text {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.55;
  color: #7f859a;
  letter-spacing: 0.02em;
}

.timeline-item.timeline-today {
  flex-direction: column;
  align-items: center;
  margin-bottom: 0;
  margin-top: 30px;
  position: relative;
  padding-top: 0;
}


.timeline-item.timeline-today .timeline-year-large {
  position: relative;
  left: auto;
  transform: none;
  margin: var(--spacing-sm) 0 var(--spacing-md);
  top: 0;
  z-index: 1;
}

.timeline-item.timeline-today .timeline-content {
  position: relative;
  top: 0;
  transform: none;
  left: auto;
  right: auto;
  padding-top: 0px;
  max-width: 450px;
  text-align: center;
  z-index: 1;
}

/* Elo Section */
.elo-section {
  padding-top: 0px;
  background: var(--color-light-gray);
}

.elo-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-lg);
}

.elo-badge-icon {
  width: auto;
  height: 23px;
  flex-shrink: 0;
  display: block;
}

.elo-badge-icon img {
  width: auto;
  height: 100%;
  display: block;
}

.elo-badge-text {
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
}

.elo-title {
  font-family: var(--font-primary);
  font-size: 40px;
  font-weight: 300;
  line-height: 48px;
  color: var(--color-navy);
  text-align: center;
  max-width: 710px;
  margin: 0 auto var(--spacing-lg);
}

.elo-title strong {
  font-weight: 700;
}

.elo-description {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: var(--color-navy);
  text-align: center;
  max-width: 710px;
  margin: 0 auto var(--spacing-xxl);
}

/* Stats Section */
.stats-section {
  background: var(--color-navy);
  border-radius: var(--radius-lg);
  padding: var(--spacing-xl);
  margin-top: var(--spacing-xxl);
  position: relative;
  overflow: hidden;
}

.stats-badge {
  margin-bottom: var(--spacing-lg);
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: var(--spacing-xl);
  margin-bottom: var(--spacing-lg);
}

.stat-item {
  text-align: left;
}

.stat-number {
  font-family: var(--font-primary);
  font-size: 40px;
  font-weight: 700;
  line-height: 48px;
  color: var(--color-cyan);
  margin-bottom: var(--spacing-xs);
}

.stat-label {
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  line-height: 16px;
  color: var(--color-white);
}

.stats-rainbow-line {
  height: 27px;
  background: linear-gradient(270deg, #E81A7D 0%, #EA7317 41%, #FEC601 51%, #CAF0F8 57%, #90E0EF 63%, #00B4D8 75%, #1C2B60 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

/* Estratégico Section */
.estrategico-section {
  padding: var(--spacing-xxl) 0;
  background: var(--color-light-gray);
}

.estrategico-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-lg);
}

.estrategico-badge-icon {
  width: auto;
  height: 23px;
  flex-shrink: 0;
  display: block;
}

.estrategico-badge-icon img {
  width: auto;
  height: 100%;
  display: block;
}

.estrategico-badge-text {
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
}

.estrategico-title {
  font-family: var(--font-primary);
  font-size: 40px;
  font-weight: 300;
  line-height: 48px;
  color: var(--color-navy);
  text-align: center;
  max-width: 815px;
  margin: 0 auto var(--spacing-xxl);
}

.estrategico-title strong {
  font-weight: 700;
}

.beneficios-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-lg);
  max-width: 1235px;
  margin: 0 auto;
}

@media (max-width: 1200px) and (min-width: 769px) {
  .estrategico-section .beneficios-grid {
    grid-template-columns: repeat(2, minmax(280px, 1fr));
  }

  .estrategico-section .beneficios-grid .beneficio-card:nth-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
    width: 100%;
    max-width: calc((100% - var(--spacing-lg)) / 2);
  }
}

.beneficio-card {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.02);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  text-align: center;
}

.beneficio-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto;
}

.beneficio-card h3 {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  color: var(--color-navy);
  margin: 0;
  letter-spacing: 0.48px;
}

.beneficio-card p {
  font-family: var(--font-primary);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
  color: #4b597e;
  letter-spacing: 0.42px;
  margin: 0;
}

.beneficio-card p strong {
  font-weight: 700;
}

/* Valores Section */
.valores-section {
  padding: var(--spacing-xxl) 0;
  background: var(--color-light-gray);
}

.valores-header {
  max-width: 1235px;
  margin: 0 auto var(--spacing-xxl);
}

.valores-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: var(--spacing-lg);
}

.valores-badge-icon {
  width: auto;
  height: 23px;
  display: block;
}

.valores-badge-icon img {
  width: auto;
  height: 100%;
  display: block;
}

.valores-title {
  font-family: var(--font-primary);
  font-size: 40px;
  font-weight: 300;
  line-height: 48px;
  color: var(--color-navy);
  text-align: left;
  max-width: 100%;
  margin: 0;
}

.valores-title strong {
  font-weight: 700;
}

.valores-content-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
  max-width: 1235px;
  margin: 0 auto;
}

.valores-left-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
}

.valores-right-column {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.valores-card {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  background: #FFF;
  border: none;
  border-radius: 16px;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: var(--spacing-xl);
}

.valores-left-column .valores-card {
  padding: var(--spacing-lg);
  min-height: 375px;
  height: 375px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

@media (max-width: 1366px) and (min-width: 1025px) {
  .valores-content-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: var(--spacing-lg);
    align-items: start;
  }

  .valores-left-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: var(--spacing-md);
    align-self: start;
    align-items: stretch;
  }

  .valores-right-column {
    width: 100%;
    max-width: 520px;
    justify-self: end;
  }

  .valores-card {
    padding: 24px;
    gap: 16px;
  }

  .valores-card.valores-card-full {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .valores-left-column .valores-card {
    height: 100%;
    min-height: clamp(270px, 23vw, 330px);
    align-self: stretch;
  }

  .valores-card p {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  /* Ajuste da grade "Presença nacional" em telas intermediárias */
  .valores-cards-grid > .valores-text-card:nth-child(1),
  .valores-cards-grid > .valores-text-card:nth-child(4),
  .valores-cards-grid > .valores-text-card:nth-child(5) {
    height: auto;
    min-height: 320px;
  }

  .valores-cards-grid > .valores-large-image {
    margin-top: -40px;
  }
}

.valores-card.valores-card-full {
  background: var(--color-navy);
  border: none;
}

.valores-badge {
  width: 23px;
  height: 23px;
  flex-shrink: 0;
}

.valores-card h3 {
  font-family: var(--font-primary);
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-navy);
  margin: 0;
  letter-spacing: 0.72px;
}

.valores-card.valores-card-full h3 {
  color: var(--color-white);
}

.valores-card p {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.44;
  color: #7f859a;
  letter-spacing: 0.48px;
  margin: 0;
}

.valores-card.valores-card-full p {
  color: var(--color-white);
}

.valores-rainbow-line {
  width: 100%;
  height: 33px;
  margin-top: var(--spacing-md);
}

.valores-rainbow-line svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* Seção de Cards e Imagens */
.valores-cards-section {
  margin-top: var(--spacing-xxl);
  max-width: 1235px;
  margin-left: auto;
  margin-right: auto;
}

.valores-cards-grid {
  display: grid;
  grid-template-columns: 500px 605px;
  gap: var(--spacing-lg);
  align-items: stretch;
  max-width: 1129px;
  margin: 0 auto;
}

@media (max-width: 1200px) {
  .valores-cards-grid {
    grid-template-columns: 1fr 1fr;
  }

  .valores-text-card {
    width: 100%;
    max-width: 500px;
  }

  .valores-large-image {
    width: 100%;
    max-width: 605px;
  }
}

.valores-text-card {
  width: 100%;
  min-height: 282px;
  border-radius: 16px;
  background: #FFF;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  padding: var(--spacing-xl);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.valores-cards-grid .valores-text-card {
  justify-content: center;
  align-items: flex-start;
  text-align: left;
}

.valores-cards-grid .valores-text-card .valores-card-badge {
  margin: 0;
}

/* Linha 1: Card texto (pequeno) | Imagem (grande) */
.valores-cards-grid > .valores-text-card:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  max-width: 500px;
  min-height: 282px;
  height: 282px;
}

.valores-cards-grid > .valores-image-card:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
  height: 361px;
  width: 605px;
}

/* Linha 2: Imagem grande (esquerda) | Card texto (direita) */
.valores-cards-grid > .valores-large-image {
  grid-column: 1;
  grid-row: 2;
  margin-top: -80px;
  margin-left: -120px;
  width: calc(100% + 120px);
  height: 424px;
}

.valores-cards-grid > .valores-text-card:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
  min-height: 300px;
  height: 350px;
  width: 500px;
}

/* Linha 3: Card texto (pequeno) | Imagem (grande) */
.valores-cards-grid > .valores-text-card:nth-child(5) {
  grid-column: 1;
  grid-row: 3;
}

.valores-cards-grid > .valores-image-card:nth-child(6) {
  grid-column: 2;
  grid-row: 3;
  height: 350px;
}

.valores-card-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
  width: fit-content;
}

.valores-text-card h3 {
  font-family: var(--font-primary);
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-navy);
  margin: 0;
  letter-spacing: 0.72px;
}

.valores-text-card p {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.44;
  color: #7f859a;
  letter-spacing: 0.48px;
  margin: 0;
  flex: 1;
}

.valores-image-card {
  width: 100%;
  min-height: 282px;
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-light-gray);
}

.valores-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.valores-large-image {
  border-radius: 16px;
  overflow: hidden;
}

.valores-large-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-quem-somos .valores-cards-grid > .valores-large-image img,
.page-quem-somos .valores-cards-grid > .valores-image-card:nth-child(6) img {
  transform: scale(1.32);
  transform-origin: center;
}

.valores-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.valores-list li {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: var(--color-white);
  letter-spacing: 0.48px;
}

.valores-list li svg {
  flex-shrink: 0;
}

@media (max-width: 1200px) and (min-width: 769px) {
  .valores-cards-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--spacing-md);
    max-width: 100%;
  }

  .valores-cards-grid > * {
    min-width: 0;
  }

  .valores-text-card,
  .valores-cards-grid > .valores-text-card:nth-child(1),
  .valores-cards-grid > .valores-text-card:nth-child(4),
  .valores-cards-grid > .valores-text-card:nth-child(5) {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 300px;
  }

  .valores-cards-grid > .valores-image-card:nth-child(2),
  .valores-cards-grid > .valores-image-card:nth-child(6) {
    width: 100%;
    height: 320px;
  }

  .valores-cards-grid > .valores-large-image {
    width: 100%;
    height: 360px;
    margin-top: 0;
    margin-left: 0;
  }

  .valores-text-card p {
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

/* Conectados Section */
.conectados-section {
  padding: var(--spacing-xxl) 0;
  background: var(--color-light-gray);
}

.conectados-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-lg);
}

.conectados-badge-icon {
  width: 23px;
  height: 23px;
  flex-shrink: 0;
}

.conectados-badge-text {
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
}

.conectados-title {
  font-family: var(--font-primary);
  font-size: 40px;
  font-weight: 300;
  line-height: 48px;
  color: var(--color-navy);
  text-align: center;
  max-width: 710px;
  margin: 0 auto var(--spacing-xxl);
}

.conectados-title strong {
  font-weight: 700;
}

.conectados-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-lg);
  max-width: 1235px;
  margin: 0 auto;
}

.conectados-card {
  background: var(--color-white);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  box-shadow: 4.413px 4.413px 39.714px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.conectados-card.conectados-card-dark {
  background: var(--color-navy);
}

.conectados-badge-small {
  width: 23px;
  height: 23px;
  flex-shrink: 0;
}

.conectados-tag {
  display: inline-block;
  padding: 8px 16px;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
  text-transform: uppercase;
  letter-spacing: 0.48px;
  align-self: flex-start;
}

.conectados-card.conectados-card-dark .conectados-tag {
  color: var(--color-navy);
  background: var(--color-white);
  border-color: var(--color-white);
}

.conectados-card h3 {
  font-family: var(--font-primary);
  font-size: 38px;
  font-weight: 700;
  line-height: 48px;
  color: var(--color-navy);
  margin: 0;
}

.conectados-card.conectados-card-dark h3 {
  color: var(--color-white);
}

.conectados-card p {
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: var(--color-navy);
  letter-spacing: 0.48px;
  margin: 0;
}

.conectados-card.conectados-card-dark p {
  color: var(--color-white);
}

.conectados-card p strong {
  font-weight: 700;
}

.conectados-image {
  width: 100%;
  height: 300px;
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-top: var(--spacing-md);
}

.conectados-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Trabalhe Section */
.trabalhe-section {
  padding: var(--spacing-xxl) 0;
}

.trabalhe-floating-container {
  position: relative;
  width: 1234px;
  height: 320px;
  flex-shrink: 0;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 10px;
}

.trabalhe-floating-container::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(
    270deg,
    #e81a7d 0%,
    #ea7317 41%,
    #fec601 51%,
    #caf0f8 57%,
    #90e0ef 63%,
    #00b4d8 75%,
    #1c2b60 100%
  );
  z-index: 10;
}

.trabalhe-section .trabalhe-badge {
  display: block;
  width: auto;
  height: 23px;
  margin: 0 auto var(--spacing-md);
}

.trabalhe-section .newsletter-title {
  margin-bottom: var(--spacing-md);
}

.trabalhe-section .newsletter-description {
  margin-bottom: var(--spacing-lg);
}

.trabalhe-section .trabalhe-cta-wrapper {
  display: flex;
  justify-content: center;
  margin-top: var(--spacing-md);
}

.trabalhe-section .btn-primary.btn-large {
  min-width: 280px;
  background: #90E0EF !important;
  color: #1C2B60 !important;
  border: none;
}

.trabalhe-section .btn-primary.btn-large:hover {
  background: #00B4D8 !important;
  color: #1C2B60 !important;
}


/* Responsive - Trabalhe Conosco */
@media (max-width: 1024px) {
  .trabalhe-floating-container {
    width: 100%;
    max-width: 1234px;
    height: auto;
    min-height: 320px;
    padding: var(--spacing-lg);
  }

  .trabalhe-section {
    padding: var(--spacing-lg) 0;
  }
}

@media (max-width: 768px) {
  .trabalhe-floating-container {
    min-height: 280px;
    padding: var(--spacing-md);
  }

  .trabalhe-section .newsletter-title {
    font-size: 1.75rem;
  }

  .trabalhe-section .btn-large {
    min-width: 100%;
    width: 100%;
  }
}

/* Responsive - Quem Somos */
@media (max-width: 1024px) {
  .hero-quem-somos .hero-content {
    min-height: auto;
    padding: var(--spacing-lg);
  }

  .hero-quem-somos .hero-title {
    font-size: clamp(1.625rem, 4vw, 2rem);
    line-height: 1.22;
  }

  .hero-quem-somos .hero-description {
    font-size: 0.9375rem;
  }

  .timeline-item {
    flex-direction: column;
    align-items: center;
  }

  .timeline-left,
  .timeline-right {
    text-align: center;
    padding: 0;
    max-width: 100%;
  }

  .timeline-line {
    display: none;
  }

  .timeline-dot {
    position: relative;
    left: auto;
    transform: none;
    margin: var(--spacing-md) 0;
  }

  .timeline-year,
  .timeline-year-large {
    position: relative;
    left: auto;
    transform: none;
    margin: var(--spacing-sm) 0;
  }

  .timeline-content {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    text-align: center !important;
    transform: none !important;
    max-width: 100% !important;
  }

  .timeline-item-1 .timeline-content,
  .timeline-item-2 .timeline-content,
  .timeline-item-3 .timeline-content,
  .timeline-item-4 .timeline-content,
  .timeline-item-5 .timeline-content,
  .timeline-item-6 .timeline-content,
  .timeline-item-7 .timeline-content {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    text-align: center !important;
    transform: none !important;
  }

  .valores-content-grid {
    grid-template-columns: 1fr;
  }

  .valores-title {
    font-size: 28px;
    line-height: 36px;
  }

  .valores-left-column {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .valores-header {
    margin-bottom: var(--spacing-lg);
  }

  .valores-badge-wrapper {
    justify-content: center;
  }

  .valores-title {
    text-align: center;
  }

  .valores-cards-grid {
    grid-template-columns: 1fr;
  }

  .valores-text-card {
    width: 100%;
  }

  .valores-large-image {
    width: 100%;
  }

  .conectados-grid {
    grid-template-columns: 1fr;
  }

  .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .hero-quem-somos {
    padding: var(--spacing-xl) 0;
  }

  .hero-quem-somos .hero-content {
    min-height: auto;
    padding: var(--spacing-md);
  }

  .hero-quem-somos .hero-title {
    font-size: clamp(1.5rem, 5.5vw, 1.75rem);
    line-height: 1.24;
  }

  .hero-quem-somos .hero-description {
    text-align: center;
    font-size: 0.9375rem;
    gap: var(--spacing-sm);
  }

  .trajetoria-title {
    font-size: clamp(1.375rem, 5vw, 1.625rem);
    line-height: 1.22;
  }

  .elo-title,
  .estrategico-title,
  .conectados-title {
    font-size: 28px;
    line-height: 36px;
  }

  .stats-grid {
    grid-template-columns: 1fr;
  }

  .beneficios-grid {
    grid-template-columns: 1fr;
  }

  .conectados-card h3 {
    font-size: 28px;
    line-height: 36px;
  }

  .valores-content-grid {
    grid-template-columns: 1fr;
  }

  .valores-title {
    font-size: 24px;
    line-height: 32px;
  }

  .valores-header {
    margin-bottom: var(--spacing-lg);
  }

  .valores-badge-wrapper {
    justify-content: center;
  }

  .valores-title {
    text-align: center;
  }

  .valores-left-column {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .valores-left-column .valores-card {
    width: 100% !important;
    height: auto !important;
    min-height: 260px !important;
  }

  .valores-card {
    padding: var(--spacing-lg);
  }

  .valores-cards-section {
    margin-top: var(--spacing-lg);
    padding: 0 var(--layout-inline-padding);
  }

  .page-quem-somos .valores-cards-section {
    /* Evita padding duplo: a .container ja aplica padding lateral no mobile */
    padding: 0 !important;
  }

  .valores-cards-grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto;
    max-width: 100% !important;
    gap: var(--spacing-md);
  }

  .page-quem-somos .valores-cards-grid {
    gap: 14px !important;
  }

  .valores-text-card {
    width: 100% !important;
    height: auto !important;
    min-height: 250px !important;
  }

  .page-quem-somos .valores-text-card {
    min-height: auto !important;
    padding: 20px !important;
    gap: 12px !important;
  }

  .valores-image-card {
    width: 100% !important;
    height: 280px !important;
  }

  .page-quem-somos .valores-image-card {
    height: 220px !important;
  }

  .valores-cards-grid > .valores-image-card:nth-child(6) img {
    object-position: right center;
  }

  .page-quem-somos .valores-cards-grid > .valores-image-card:nth-child(6) img {
    transform: scale(1.16);
    transform-origin: center;
  }

  .valores-large-image {
    width: 100% !important;
    height: 300px !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
  }

  .page-quem-somos .valores-large-image {
    height: 220px !important;
  }

  .page-quem-somos .valores-large-image img {
    transform: scale(1.16);
    transform-origin: center;
  }

  .page-quem-somos .valores-cards-grid > .valores-text-card:nth-child(4) {
    order: 3;
  }

  .page-quem-somos .valores-cards-grid > .valores-large-image {
    order: 4;
  }

  .valores-cards-grid > * {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  /* Timeline Mobile */
  .timeline-container {
    padding: var(--spacing-md) 0;
  }

  .timeline-line {
    display: block !important;
    left: 20px !important;
    transform: none !important;
    height: calc(100% - 400px) !important;
  }

  .timeline-item {
    flex-direction: column !important;
    align-items: flex-start !important;
    padding-left: 60px !important;
    margin-bottom: var(--spacing-xl) !important;
    position: relative !important;
  }

  .timeline-dot {
    position: absolute !important;
    left: 20px !important;
    top: 0 !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
  }

  .timeline-year,
  .timeline-year-left,
  .timeline-year-right {
    position: static !important;
    transform: none !important;
    margin-bottom: var(--spacing-sm) !important;
    width: fit-content !important;
    left: auto !important;
    right: auto !important;
  }

  .timeline-content,
  .timeline-left,
  .timeline-right {
    position: static !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
    text-align: left !important;
    max-width: 100% !important;
    padding-top: 0 !important;
  }

  .timeline-item-1 .timeline-content,
  .timeline-item-2 .timeline-content,
  .timeline-item-3 .timeline-content,
  .timeline-item-4 .timeline-content,
  .timeline-item-5 .timeline-content,
  .timeline-item-6 .timeline-content,
  .timeline-item-7 .timeline-content {
    position: static !important;
    left: auto !important;
    right: auto !important;
    text-align: left !important;
    transform: none !important;
  }

  .timeline-year-large {
    font-size: 18px !important;
    padding: 6px 12px !important;
  }

  .timeline-item.timeline-today {
    padding-left: 0 !important;
    text-align: left !important;
    align-items: left !important;
    margin-top: var(--spacing-lg) !important;
  }

  .timeline-item.timeline-today .timeline-content {
    text-align: left !important;
  }

  .timeline-title {
    font-size: 18px !important;
    line-height: 26px !important;
  }

  .timeline-text {
    font-size: 14px !important;
    line-height: 22px !important;
  }

  /* Quem Somos — menos vão entre blocos no mobile */
  .page-quem-somos .trajetoria-section {
    padding-top: var(--spacing-xl);
    padding-bottom: var(--spacing-xl);
  }

  .page-quem-somos .timeline-item.timeline-today {
    margin-top: var(--spacing-md) !important;
  }

  .page-quem-somos .elo-section {
    padding-bottom: var(--spacing-md);
  }

  .page-quem-somos .elo-description {
    margin-bottom: var(--spacing-xl);
  }

  .page-quem-somos .estrategico-section,
  .page-quem-somos .valores-section {
    padding: var(--spacing-xl) 0;
  }
}
/* ============================
   PÁGINA DE CARREIRAS
   ============================ */

/* Hero Carreiras */
.hero-carreiras .hero-content-inner {
  text-align: center;
  max-width: 813px;
  margin: 0 auto;
  padding: 0 var(--layout-inline-padding);
}

.carreiras-badge {
  height: 23px;
  margin-bottom: var(--spacing-lg);
  display: block;
}

.hero-carreiras .hero-title {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 48px;
  color: var(--color-navy);
  margin-bottom: var(--spacing-md);
  text-shadow: 0 2px 8px rgba(255, 255, 255, 0.8), 0 4px 12px rgba(28, 43, 96, 0.2);
}

.hero-carreiras .hero-description {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  color: var(--color-navy);
  letter-spacing: 0.48px;
  margin-bottom: var(--spacing-xl);
  max-width: 495px;
  margin-left: auto;
  margin-right: auto;
  text-shadow: 0 2px 6px rgba(255, 255, 255, 0.8), 0 2px 8px rgba(28, 43, 96, 0.15);
}

.hero-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
  flex-wrap: wrap;
}

.hero-buttons .btn {
  min-width: 247px;
}

/* Section Badge Comum */
.section-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: #FFF;
  border: 1px solid var(--Blue-200);
  border-radius: 80px;
  margin-bottom: var(--spacing-md);
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 10px;
  font-weight: 300;
  color: var(--color-navy);
}

.section-badge-img {
  height: 23px;
  margin-bottom: var(--spacing-md);
  display: block;
}

.section-badge-bordered {
  background: transparent;
  border: 1px solid var(--Blue-200);
}

.section-badge-icon svg {
  width: 23px;
  height: 23px;
  flex-shrink: 0;
}

.section-title {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 32px;
  font-weight: 300;
  line-height: 40px;
  color: var(--color-navy);
  margin-bottom: var(--spacing-md);
}

.section-title strong {
  font-weight: 700;
}

.section-description {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.44;
  color: #7f859a;
  letter-spacing: 0.48px;
}

.section-description p {
  margin-bottom: 16px;
}

.section-description strong {
  font-weight: 700;
  color: var(--color-navy);
}

/* Por trás da tecnologia */
.tech-people-section {
  padding: var(--spacing-xxl) 0;
  background: transparent;
}

.tech-people-wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 80px);
  align-items: center;
}

.tech-people-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.tech-people-image {
  position: relative;
  display: flex;
  align-items: flex-start;
  width: 100%;
}

.image-stack {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  height: clamp(240px, 35vw, 361px);
  width: 100%;
}

.image-stack img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.page-carreiras .tech-people-section .image-stack img {
  transform: scale(1.28);
  transform-origin: center;
}

/* O próximo passo da sua carreira */
.career-step-section {
  padding: var(--spacing-xxl) 0;
  background: transparent;
}

.career-step-wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

.career-step-image .image-card {
  border-radius: 16px;
  overflow: hidden;
  height: 361px;
}

.career-step-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-carreiras .career-step-section .career-step-image img {
  transform: scale(1.30);
  transform-origin: top center;
}

.career-step-content .btn-large {
  margin-top: var(--spacing-lg);
  width: fit-content !important;
  white-space: nowrap;
  padding: 12px 24px !important;
  min-width: auto !important;
}

/* Benefícios */
.benefits-section {
  padding: var(--spacing-xxl) 0;
  background: transparent;
}

.benefits-section .benefits-header {
  text-align: left;
  margin-bottom: var(--spacing-xl);
  align-items: flex-start;
}

.page-parcerias .benefits-section .benefits-header {
  text-align: center;
  align-items: center;
}

.page-parcerias .benefits-section .benefits-title {
  text-align: center;
}

.benefits-section .section-badge-img {
  margin-bottom: var(--spacing-md);
}

.page-parcerias .benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: var(--spacing-md);
  max-width: 1235px;
}

.page-parcerias .benefits-grid .benefit-card {
  height: 100%;
}

.big-card {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: var(--spacing-lg);
  box-shadow: 8px 8px 16px 0px rgba(0, 0, 0, 0.02);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
  min-height: 466px;
}

.big-card-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--Light-Blue, #90E0EF);
  border-radius: 12.629px;
  padding: 8px;
}

.big-card-icon svg {
  width: 24px;
  height: 24px;
}

.big-card-title {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-navy);
  letter-spacing: 0.72px;
  margin: 0;
}

.big-card-benefits {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.benefit-item {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

.benefit-item svg {
  flex-shrink: 0;
  margin-top: 4px;
}

.benefit-item p {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: var(--color-navy);
  letter-spacing: 0.48px;
  margin: 0;
}

.benefit-item p strong {
  font-weight: 700;
}

/* Depoimentos */
.testimonials-section {
  padding: var(--spacing-xxl) 0;
  background: transparent;
}

.testimonials-header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.testimonials-header .section-badge-img {
  margin: 0 auto var(--spacing-md) auto;
}

.carreiras-testimonials-carousel {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-md);
  padding: var(--spacing-md) 0;
  max-width: 100%;
}

.carreiras-testimonial-card {
  flex: 1 1 260px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: var(--spacing-lg);
  box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.02);
  position: relative;
  z-index: 1;
}

.carreiras-testimonial-avatar {
  display: flex;
  align-items: center;
  gap: 0;
  margin-bottom: var(--spacing-lg);
}

.carreiras-testimonial-avatar-quote {
  display: flex;
  align-items: center;
  line-height: 1;
}

.carreiras-testimonial-avatar-img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: contain;
  background-color: #fff;
  display: block;
  margin-left: 2px;
}

.carreiras-testimonial-text {
  font-size: 1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-navy);
  line-height: 1.5;
  margin: 0;
}

.carreiras-testimonial-text em {
  font-style: italic;
  font-weight: var(--font-weight-bold);
}

.carreiras-testimonial-text-light {
  font-weight: 300;
}

/* Motivos para fazer parte */
.reasons-section {
  padding: var(--spacing-xxl) 0;
  background: transparent;
}

.reasons-section .container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.reasons-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  align-items: stretch;
  margin-bottom: 32px;
}

.reasons-row-1 {
  margin-bottom: 40px;
  position: relative;
  z-index: 3;
}

.reasons-row-2 {
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}

.reasons-row-3 {
  position: relative;
  z-index: 1;
}

.reasons-content-card .section-badge-img,
.boavista-way-content-card .section-badge-img,
.gptw-content-card .section-badge-img {
  margin-bottom: 16px;
  display: block;
  margin-left: 0;
  margin-right: auto;
}

.reasons-content-card {
  width: 100%;
  min-width: 0;
  min-height: 100%;
  padding: 32px 40px;
  border-radius: 16px;
  background: #FFF;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 16px;
  box-sizing: border-box;
}

.reasons-content-card .section-title {
  margin: 0;
  word-wrap: break-word;
}

.reasons-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: var(--spacing-md);
}

.reasons-content-card .reasons-list {
  margin-top: 0;
}

.reason-item {
  display: flex;
  gap: 12px;
  align-items: center;
}

.reason-item svg {
  flex-shrink: 0;
}

.reason-item p {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: #7f859a;
  letter-spacing: 0.48px;
  margin: 0;
}

.reasons-image-card {
  width: 100%;
  min-height: 360px;
  margin-top: 0;
  border-radius: 16px;
  overflow: hidden;
  flex-shrink: 0;
}

.reasons-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Cards dentro das rows são reaproveitados abaixo */

.gptw-image-card {
  width: 100%;
  min-height: 360px;
  border-radius: 16px;
  overflow: hidden;
  flex-shrink: 0;
  margin-right: 0;
}

.gptw-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-carreiras .reasons-row-3 .gptw-image-card img {
  transform: scale(2);
  transform-origin: center;
}

.gptw-content-card {
  width: 100%;
  min-width: 0;
  min-height: 100%;
  height: auto;
  padding: 40px;
  border-radius: 16px;
  background: #FFF;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 24px;
  box-sizing: border-box;
}

.gptw-content-card .section-title {
  margin: 0;
}

.gptw-logos {
  display: flex;
  gap: var(--spacing-sm);
  margin-top: auto;
}

.gptw-logos img {
  width: 64px;
  height: 64px;
  object-fit: contain;
}

/* Os cards estão agora dentro de .reasons-row */

.boavista-way-content-card {
  width: 100%;
  min-width: 0;
  min-height: 100%;
  height: auto;
  padding: 40px;
  margin-top: 0;
  border-radius: 16px;
  background: #FFF;
  box-shadow: 4.413px 4.413px 39.714px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 24px;
  box-sizing: border-box;
}

.boavista-way-content-card .section-title {
  margin: 0;
}

.boavista-way-image-card {
  width: 100%;
  min-height: 0;
  height: 100%;
  position: relative;
  margin-left: 0;
  margin-top: 0;
  border-radius: 16px;
  overflow: hidden;
  flex-shrink: 0;
}

.boavista-way-image-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 88%;
  display: block;
  transform: scale(1.4);
  transform-origin: center;
}

/* CTA Final */
.final-cta-section {
  position: relative;
  margin: var(--spacing-xxl) 0;
}

.final-cta-background {
  position: absolute;
  inset: 0;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(180deg,
    rgba(28, 43, 96, 0.6) 0%,
    rgba(28, 43, 96, 0.8) 100%
  );
}

.final-cta-overlay {
  position: absolute;
  inset: 0;
  background: var(--color-navy);
  opacity: 0.9;
}

.final-cta-gradient-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 27px;
  background: linear-gradient(270deg,
    rgba(232, 26, 125, 1) 0%,
    rgba(234, 115, 23, 1) 41%,
    rgba(254, 198, 1, 1) 51%,
    rgba(202, 240, 248, 1) 57%,
    rgba(144, 224, 239, 1) 63%,
    rgba(0, 180, 216, 1) 75%,
    rgba(28, 43, 96, 1) 100%
  );
}

.final-cta-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 80px var(--spacing-lg);
  max-width: 603px;
  margin: 0 auto;
}

.section-badge-light {
  background: var(--color-cyan);
  border-color: var(--Blue-200);
}

.section-badge-light span {
  color: var(--color-navy);
}

.final-cta-title {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 48px;
  color: #fff;
  margin: var(--spacing-md) 0;
}

.final-cta-description {
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: #fff;
  letter-spacing: 0.48px;
  margin-bottom: var(--spacing-xl);
}

.final-cta-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
  flex-wrap: wrap;
  margin-top: var(--spacing-lg);
}

.newsletter-carreiras-cta .final-cta-buttons {
  margin-top: var(--spacing-xl);
  gap: 16px;
}

.carreiras-cta-badge-img {
  margin-left: auto;
  margin-right: auto;
}

.btn-light {
  background: var(--color-cyan);
  color: var(--color-navy);
  border: none;
  min-width: 161px;
  padding: 12px 24px;
  border-radius: 8px;
  font-family: 'Merriweather Sans', sans-serif;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}

.btn-light:hover {
  background: #fff;
  transform: translateY(-2px);
}

/* Responsive - Carreiras */
@media (max-width: 1300px) {
  .tech-people-wrapper,
  .career-step-wrapper {
    gap: clamp(24px, 4vw, 48px);
  }

  .reasons-row {
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
    margin-bottom: 0 !important;
    margin-left: 0 !important;
  }


  .reasons-row-1,
  .reasons-row-2 {
    margin-bottom: var(--spacing-xl) !important;
  }


  .reasons-content-card,
  .reasons-image-card,
  .gptw-content-card,
  .gptw-image-card,
  .boavista-way-content-card,
  .boavista-way-image-card {
    width: 100%;
    left: 0;
    height: auto;
    min-height: 300px;
  }

  .benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-parcerias .benefits-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(3, minmax(0, 1fr));
  }

  .image-stack,
  .career-step-image .image-card,
  .reasons-image-card,
  .gptw-image-card,
  .boavista-way-image-card {
    height: 300px;
  }
}

@media (max-width: 1024px) {
  .tech-people-wrapper,
  .career-step-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
  }

  .image-stack {
    height: 320px;
  }

  .career-step-image .image-card {
    height: 320px;
  }

  .career-step-content .btn-large {
    width: 100% !important;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .hero-carreiras.hero {
    min-height: 0;
    padding: 28px 0 24px;
    margin: 12px;
    align-items: flex-start;
  }

  .hero-carreiras .hero-content-inner {
    padding: 0 var(--layout-inline-padding);
    justify-content: flex-start;
  }

  .hero-carreiras .hero-title {
    font-size: 32px;
    line-height: 40px;
    text-shadow: 0 2px 8px rgba(255, 255, 255, 0.8), 0 4px 12px rgba(28, 43, 96, 0.2);
  }

  .hero-carreiras .hero-description {
    text-shadow: 0 2px 6px rgba(255, 255, 255, 0.8), 0 2px 8px rgba(28, 43, 96, 0.15);
  }

  .hero-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-buttons .btn {
    width: 100%;
    min-width: auto;
  }

  .section-title {
    font-size: 24px !important;
    line-height: 32px !important;
  }

  .tech-people-wrapper,
  .career-step-wrapper {
    grid-template-columns: 1fr !important;
    gap: var(--spacing-lg) !important;
  }

  .image-stack {
    height: 260px !important;
  }

  .career-step-image .image-card {
    height: 260px !important;
  }

  .tech-people-content,
  .career-step-content {
    order: 1;
  }

  .tech-people-image,
  .career-step-image {
    order: 2;
    width: 100%;
  }

  .career-step-content .btn-large {
    width: 100% !important;
    text-align: center;
    white-space: normal !important;
  }

  /* Reasons Section Mobile */
  .reasons-section {
    padding: var(--spacing-lg) 0 !important;
  }

  .reasons-section .container {
    padding: 0 var(--layout-inline-padding) !important;
  }

  .reasons-row {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--spacing-md) !important;
    margin-bottom: var(--spacing-xl) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  .reasons-row-1,
  .reasons-row-2,
  .reasons-row-3 {
    margin-bottom: var(--spacing-xl) !important;
  }

  .reasons-content-card,
  .boavista-way-content-card,
  .gptw-content-card {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    height: auto !important;
    padding: var(--spacing-lg) !important;
    margin: 0 !important;
    position: relative !important;
    order: 1;
  }

  .reasons-image-card,
  .boavista-way-image-card,
  .gptw-image-card {
    width: 100% !important;
    max-width: 100% !important;
    height: 260px !important;
    min-height: 260px !important;
    max-height: 260px !important;
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    position: relative !important;
    transform: none !important;
    order: 2;
  }

  .reasons-image-card img,
  .boavista-way-image-card img,
  .gptw-image-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .section-badge-img {
    height: 20px !important;
    max-width: 150px !important;
  }

  .section-title {
    font-size: 24px !important;
    line-height: 32px !important;
  }

  .section-description p {
    font-size: 14px !important;
    line-height: 22px !important;
  }

  .reason-item p {
    font-size: 14px !important;
    line-height: 20px !important;
  }

  .reasons-list {
    gap: 10px !important;
    margin-top: var(--spacing-sm) !important;
  }

  .benefits-grid {
    grid-template-columns: 1fr;
  }

  .page-parcerias .benefits-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .big-card {
    min-height: auto;
  }

  .testimonials-carousel {
    padding-left: var(--spacing-md);
  }

  .final-cta-title {
    font-size: 32px;
    line-height: 40px;
  }

  .final-cta-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .btn-light {
    width: 100%;
  }
}

/* ========================================
   CONTACT FORM 7 - Estilos Customizados
   ======================================== */

/* Integração com formulários existentes */
.wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Labels dos formulários CF7 */
.wpcf7-form p {
  margin: 0;
}

.wpcf7-form label {
  display: block;
  margin-bottom: 0;
}

/* Campos de input - herdam estilos do tema */
.wpcf7-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form select,
.wpcf7-form textarea {
  width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  font-family: var(--font-primary);
  font-size: 16px;
  transition: var(--transition-normal);
}

.wpcf7-form input::placeholder {
  color: rgba(255, 255, 255, 0.6);
}

.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
  outline: none;
  border-color: var(--color-cyan);
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 3px rgba(144, 224, 239, 0.2);
}

/* Select customizado */
.wpcf7-form select {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23FFFFFF' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}

.wpcf7-form select option {
  background: var(--color-navy);
  color: white;
}

/* Grupos condicionais (ocultos por padrão) */
.wpcf7-form [data-class*="conditional-group"] {
  display: none;
  margin-top: 6px;
}

/* Quando ativo, mostra */
.wpcf7-form [data-class*="conditional-group"][style*="display: block"] {
  display: block !important;
}

/* Opt-in checkbox */
.wpcf7-form .wpcf7-acceptance {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 8px;
}

.wpcf7-form .wpcf7-list-item {
  margin: 0;
}

.wpcf7-form input[type="checkbox"] {
  width: auto;
  margin-top: 4px;
  cursor: pointer;
}

.wpcf7-form .wpcf7-list-item-label {
  color: white;
  font-size: 14px;
}

/* Texto do opt-in */
.opt-in-text {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: var(--spacing-md);
  line-height: 1.5;
}

.opt-in-text a {
  color: var(--color-cyan);
  text-decoration: underline;
}

/* Botão de envio CF7 */
.wpcf7-form input[type="submit"],
.wpcf7-form button[type="submit"] {
  width: 100%;
  padding: 16px 32px;
  background: var(--color-cyan);
  color: var(--color-navy);
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: var(--font-weight-bold);
  font-family: var(--font-primary);
  cursor: pointer;
  transition: var(--transition-normal);
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-form button[type="submit"]:hover {
  background: var(--color-cyan-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

/* Mensagens de resposta CF7 */
.wpcf7-response-output {
  margin: var(--spacing-md) 0 0;
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.5;
}

/* Estados de erro do CF7 (v5.8+) */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  color: #fff;
}

.wpcf7-validation-errors {
  background-color: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.3);
  color: #fff;
}

/* Sucesso CF7 – texto branco em fundos escuros (contato / seções navy / hub-blue) */
.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output {
  background-color: rgba(16, 185, 129, 0.1);
  border: 1px solid rgba(16, 185, 129, 0.3);
  color: #fff;
}

/* Em fundo claro, manter contraste escuro na caixa de sucesso */
.bg-light .wpcf7-mail-sent-ok,
.bg-light .wpcf7 form.sent .wpcf7-response-output {
  color: var(--color-navy);
}

/* Garantia extra contra CSS do CF7 ou herança em wrappers escuros */
.contact-page-form-wrapper .wpcf7-response-output.wpcf7-mail-sent-ok,
.contact-form-section .wpcf7-response-output.wpcf7-mail-sent-ok,
.bg-navy .wpcf7-response-output.wpcf7-mail-sent-ok,
.bg-hub-blue .wpcf7-response-output.wpcf7-mail-sent-ok,
.contact-page-form-wrapper .wpcf7 form.sent .wpcf7-response-output,
.contact-form-section .wpcf7 form.sent .wpcf7-response-output,
.bg-navy .wpcf7 form.sent .wpcf7-response-output,
.bg-hub-blue .wpcf7 form.sent .wpcf7-response-output {
  color: #fff !important;
}

.wpcf7-spam-blocked {
  background-color: rgba(251, 191, 36, 0.1);
  border: 1px solid rgba(251, 191, 36, 0.3);
  color: #fff;
}

/* Tooltip de validação */
.wpcf7-not-valid-tip {
  font-size: 12px;
  color: #fff;
  margin-top: 4px;
  display: block;
}

/* Spinner de loading */
.wpcf7-spinner {
  margin: 0 0 0 10px;
  display: inline-block;
}

/* Campos ocultos */
.wpcf7-form input[type="hidden"] {
  display: none;
}

/* Estilos específicos para página de contato */
.contact-page-form-wrapper .wpcf7-form input[type="text"],
.contact-page-form-wrapper .wpcf7-form input[type="email"],
.contact-page-form-wrapper .wpcf7-form input[type="tel"],
.contact-page-form-wrapper .wpcf7-form select {
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.contact-page-form-wrapper .wpcf7-form label {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 4px;
}

/* Estilos para formulários em fundo claro (bg-light) */
.bg-light .wpcf7-form input[type="text"],
.bg-light .wpcf7-form input[type="email"],
.bg-light .wpcf7-form input[type="tel"],
.bg-light .wpcf7-form select {
  border: 1px solid rgba(28, 43, 96, 0.2);
  color: var(--color-navy);
  background: white;
}

.bg-light .wpcf7-form input::placeholder {
  color: rgba(28, 43, 96, 0.4);
}

.bg-light .wpcf7-form label {
  color: var(--color-navy);
}

.bg-light .wpcf7-form select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231C2B60' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
}

.bg-light .wpcf7-form input:focus,
.bg-light .wpcf7-form select:focus {
  background: white;
  border-color: var(--color-turquoise);
  box-shadow: 0 0 0 3px rgba(79, 209, 197, 0.1);
}

.bg-light .opt-in-text {
  color: rgba(28, 43, 96, 0.7);
}

.bg-light .opt-in-text a {
  color: var(--color-navy);
}

.bg-light .wpcf7-list-item-label {
  color: var(--color-navy);
}

/* Garantir labels brancas em fundos escuros */
.bg-navy label,
.bg-navy .form-group label,
.contact-form-section label,
.contact-page-form-wrapper label {
  color: white !important;
}

/* Garantir texto branco em inputs e selects de fundos escuros */
.bg-navy input,
.bg-navy select,
.contact-form-section input,
.contact-form-section select,
.contact-page-form-wrapper input,
.contact-page-form-wrapper select,
.contact-form input,
.contact-form select {
  color: white !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.bg-navy input::placeholder,
.contact-form input::placeholder,
.contact-page-form input::placeholder {
  color: rgba(255, 255, 255, 0.6) !important;
}

/* Options dos selects */
.bg-navy select option,
.contact-form select option,
.contact-page-form select option {
  background: #1c2b60;
  color: white;
}

/* Campos condicionais */
.conditional-group {
  animation: slideDown 0.3s ease-out;
  margin-top: var(--spacing-md);
}

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

/* Opt-in específico */
.form-group-optin {
  margin-top: var(--spacing-md);
}

.opt-in-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  color: #fff !important;
}

.opt-in-label input[type="checkbox"] {
  width: auto;
  min-width: 18px;
  height: 18px;
  margin-top: 2px;
  cursor: pointer;
}

.opt-in-label span {
  color: #fff;
  font-size: 14px;
}

.contact-page-form .opt-in-label,
.contact-page-form .opt-in-label span,
.contact-page-form .opt-in-text {
  color: #fff !important;
}

.contact-form .opt-in-label span {
  color: white;
}

.bg-navy .opt-in-label span,
.bg-navy .opt-in-text {
  color: white !important;
}

/* Botões de submit */
.btn-contact-submit,
.btn-form-submit {
  width: 100%;
  padding: 14px 24px;
  background: var(--Light-Blue, #90e0ef);
  color: var(--Dark-Blue, #1c2b60);
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Merriweather Sans', sans-serif;
  cursor: pointer;
  transition: var(--transition-normal);
}

.btn-contact-submit:hover,
.btn-form-submit:hover {
  background: #caf0f8;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(144, 224, 239, 0.3);
}

/* Responsive - Formulários CF7 */
@media (max-width: 768px) {
  .wpcf7-form {
    gap: 4px;
  }

  .wpcf7-form input[type="submit"],
  .wpcf7-form button[type="submit"] {
    padding: 12px 20px;
    font-size: 15px;
  }

  .conditional-group {
    margin-top: var(--spacing-sm);
  }
}

/* ============================
   MOBILE HARDENING (GLOBAL)
   ============================ */
@media (max-width: 768px) {
  :root {
    --layout-inline-padding: var(--spacing-sm);
  }

  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .container,
  .container-wide {
    padding-inline: var(--layout-inline-padding);
  }

  .site-header .header-content {
    padding: 12px 14px;
  }

  .main-navigation {
    width: min(94vw, 360px);
  }

  .main-navigation,
  .main-navigation * {
    min-width: 0;
  }

  .nav-menu a,
  .nav-menu li a,
  .nav-login {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  button,
  [class*="btn-"],
  .btn,
  .btn-contact-submit,
  .btn-form-submit {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  [class*="grid"] > *,
  [class*="cards"] > *,
  [class*="card"] {
    min-width: 0;
  }

  img,
  svg,
  video,
  iframe {
    max-width: 100%;
    height: auto;
  }

  table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

  /* Home: aumenta só os logos View e Hub no mobile */
  .home .solutions-grid .solution-wrapper:nth-child(1) .solution-icon,
  .home .solutions-grid .solution-wrapper:nth-child(2) .solution-icon {
    width: 108px;
    height: auto;
  }

  .home .solutions-grid .solution-wrapper:nth-child(1) .solution-icon svg,
  .home .solutions-grid .solution-wrapper:nth-child(2) .solution-icon svg {
    width: 100%;
    height: auto;
    display: block;
  }
}

/* Home — parceiros: melhor hierarquia e ritmo (desktop) */
@media (min-width: 769px) {
  .home-page .partners-section {
    padding: var(--spacing-xl) 0 var(--spacing-xxl);
  }

  .home-page .partners-header {
    gap: var(--spacing-sm);
    max-width: 56rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--spacing-lg);
  }

  .home-page .partners-icon {
    margin-bottom: 0;
  }

  .home-page .partners-section .section-title {
    font-size: clamp(1.65rem, 2.8vw, 2.35rem);
    font-weight: 300;
    line-height: 1.3;
    max-width: 48rem;
    margin-bottom: var(--spacing-md);
  }

  .home-page .partners-section .section-title strong {
    font-weight: var(--font-weight-bold);
  }

  .home-page .partners-section .section-subtitle {
    font-size: 1.0625rem;
    line-height: 1.55;
    max-width: 36rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }

  .home-page .partners-carousel {
    padding: var(--spacing-md) 0 var(--spacing-xl);
    margin-top: var(--spacing-sm);
  }

  .home-page .partners-cta {
    margin-top: var(--spacing-lg);
  }
}

/* Home — mobile: espaçamentos mais compactos */
@media (max-width: 768px) {
  .home-page .hero-home.hero {
    min-height: 0;
    padding: 20px 0 36px;
  }

  .home-page .hero-home .hero-content {
    padding: var(--spacing-md) var(--spacing-sm);
  }

  .home-page .hero-home .hero-content-inner .home-hero-subtitle {
    margin-bottom: var(--spacing-sm);
  }

  .home-page .partners-section,
  .home-page .solutions-section {
    padding: 36px 0;
  }

  .home-page .statistics-section,
  .home-page .why-choose-section,
  .home-page .comparison-section,
  .home-page .cases-section {
    padding: 36px 0 !important;
  }

  .home-page .partners-header {
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-md);
    max-width: 36rem;
    margin-left: auto;
    margin-right: auto;
  }

  .home-page .partners-section .section-title {
    font-size: clamp(1.35rem, 5vw, 1.65rem);
    font-weight: 300;
    line-height: 1.32;
    margin-bottom: var(--spacing-md);
  }

  .home-page .partners-section .section-title strong {
    font-weight: var(--font-weight-bold);
  }

  .home-page .partners-section .section-subtitle {
    font-size: 0.9375rem;
    line-height: 1.5;
    margin-bottom: 0;
    max-width: 32rem;
    margin-left: auto;
    margin-right: auto;
  }

  .home-page .partners-icon {
    margin-bottom: 0;
  }

  .home-page .partners-carousel {
    padding: var(--spacing-md) 0 var(--spacing-lg);
    margin-top: var(--spacing-md);
  }

  .home-page .partners-cta {
    margin-top: var(--spacing-lg);
  }

  .home-page .solutions-container {
    gap: var(--spacing-xl);
  }

  .home-page .solutions-header > img {
    margin-bottom: var(--spacing-md);
  }

  .home-page .solutions-title {
    margin-bottom: var(--spacing-sm);
  }

  .home-page .solutions-grid {
    gap: var(--spacing-md);
  }

  .home-page .solution-wrapper {
    gap: var(--spacing-sm);
  }

  .home-page .statistics-top {
    margin-bottom: var(--spacing-lg);
    gap: var(--spacing-xs);
  }

  .home-page .why-choose-content {
    gap: var(--spacing-md);
  }

  .home-page .why-choose-left {
    gap: var(--spacing-md);
  }

  .home-page .why-choose-card,
  .home-page .why-choose-card-right {
    padding: var(--spacing-md);
  }

  .home-page .comparison-header {
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-lg);
  }

  .home-page .comparison-grid {
    gap: var(--spacing-md);
    margin-bottom: var(--spacing-lg);
  }

  .home-page .comparison-cta {
    margin-top: var(--spacing-lg);
  }

  .home-page .cases-header {
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-lg);
  }

  .home-page .cases-grid {
    gap: var(--spacing-md);
  }
}

/* Parcerias - mobile cleanup de espacamentos */
@media (max-width: 768px) {
  .page-parcerias .hero-parcerias.hero {
    min-height: 0;
    padding: var(--spacing-sm) 0 var(--spacing-md) 0;
    align-items: flex-start;
  }

  .page-parcerias .hero-parcerias .hero-content {
    min-height: 0;
    padding: var(--spacing-lg) var(--spacing-md);
  }

  .page-parcerias .valor-section,
  .page-parcerias .comparison-section,
  .page-parcerias .journey-section,
  .page-parcerias .partners-logos-section,
  .page-parcerias .benefits-section {
    padding: 28px 0 !important;
  }

  .page-parcerias .comparison-wrapper,
  .page-parcerias .journey-cards,
  .page-parcerias .statistics-wrapper,
  .page-parcerias .partners-left-column {
    gap: 12px !important;
  }

  /* Linha gradiente colada ao bloco azul (sem vão branco) */
  .page-parcerias .valor-wrapper {
    gap: 0 !important;
  }

  .page-parcerias .valor-content .valor-description {
    margin-bottom: 0;
  }

  .page-parcerias .comparison-wrapper .valor-example-box {
    margin-bottom: 8px !important;
    padding: 12px !important;
  }

  .page-parcerias .journey-header {
    margin-bottom: 10px !important;
  }

  .page-parcerias .partners-logos-section .partners-header {
    margin-bottom: 10px !important;
    width: 100%;
    align-items: center !important;
    text-align: center;
  }

  .page-parcerias .partners-logos-section .partners-header-icon {
    display: flex;
    justify-content: center;
    width: 100%;
  }

  .page-parcerias .partners-logos-section .partners-header-icon img {
    margin-inline: auto;
  }

  .page-parcerias .partners-logos-section .partners-title {
    padding-top: var(--spacing-md);
    padding-bottom: var(--spacing-md);
  }

  .page-parcerias .journey-footer {
    margin-top: 10px !important;
  }

  .page-parcerias .partners-logos-section .partners-content,
  .page-parcerias .partners-content {
    margin-left: 0 !important;
    padding: 0 !important;
  }

  .page-parcerias .partners-logos-section .partners-right-column {
    margin-top: 0 !important;
  }

  .page-parcerias .partners-carousel {
    padding: var(--spacing-xl) 0;
  }

  .page-parcerias .partners-logos-section .partners-cta {
    margin-top: calc(var(--spacing-sm) + var(--spacing-md));
  }

  .page-parcerias .statistics-card-wrapper {
    padding-bottom: 0 !important;
  }

  .page-parcerias .benefits-section .benefits-header {
    margin-bottom: var(--spacing-md);
  }

  .page-parcerias .benefits-section .benefits-title {
    margin-bottom: var(--spacing-sm);
  }
}