/* ===== VARIÁVEIS GLOBAIS ===== */
:root{
  --bg-dark: #06021a;          /* Cor de fundo escura */
  --blue-900: #010033;         /* Azul escuro */
  --blue-700: #0b2bff;         /* Azul principal */
  --accent: #070a3f;           /* Cor de destaque */
  --white: #ffffff;            /* Branco */
  --gray-100: #f8f9fa;         /* Cinza claro */
  --gray-200: #e9ecef;         /* Cinza médio claro */
  --gray-600: #6c757d;         /* Cinza médio */
  --gray-800: #343a40;         /* Cinza escuro */
  --gray-900: #000000;         /* Preto */
  --card-bg: #ffffff;          /* Cor de fundo dos cards */
  --shadow: 0 8px 30px rgba(0,0,0,0.12); /* Sombra padrão */
  --dropdown-bg: #ffffff;      /* Cor de fundo dos dropdowns */
  --space-xs: 8px;             /* Espaçamento extra pequeno */
  --space-sm: 16px;            /* Espaçamento pequeno */
  --space-md: 24px;            /* Espaçamento médio */
  --space-lg: 48px;            /* Espaçamento grande */
  --space-xl: 80px;            /* Espaçamento extra grande */
  --ff: 'Poppins', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; /* Fonte padrão */
  --h1: 48px;                  /* Tamanho do H1 */
  --h2: 36px;                  /* Tamanho do H2 */
  --h3: 20px;                  /* Tamanho do H3 */
  --regular: 16px;             /* Tamanho de texto regular */
}

/* ===== RESET E CONFIGURAÇÕES GLOBAIS ===== */
*{box-sizing:border-box}       /* Modelo de caixa border-box para todos os elementos */
html,body{height:100%}         /* Altura 100% para html e body */
body{
  margin:0;                    /* Remove margens padrão */
  font-family:var(--ff);       /* Define a fonte padrão */
  background: #ffffff;         /* Cor de fundo branca */
  color: var(--gray-900);      /* Cor do texto preta */
  -webkit-font-smoothing:antialiased; /* Suavização de fontes no Webkit */
  -moz-osx-font-smoothing:grayscale;  /* Suavização de fontes no Firefox */
  line-height:1.5;             /* Altura da linha */
  overflow-x: hidden;          /* Remove rolagem horizontal */
}

/* ===== CONTAINER PRINCIPAL ===== */
.container{
  width: min(1200px, 92%);     /* Largura máxima de 1200px ou 92% da tela */
  margin: 0 auto;              /* Centraliza o container */
}

/* ===== FAIXA SUPERIOR FIXA ===== */
.topstrip{
  background: linear-gradient(90deg, var(--accent), #0b2bff); /* Gradiente de fundo */
  color: var(--white);         /* Texto branco */
  text-align:center;           /* Texto centralizado */
  padding: 12px;               /* Espaçamento interno */
  font-size:14px;              /* Tamanho da fonte */
  font-weight: 500;            /* Peso da fonte */
  z-index: 1001;               /* Z-index alto para ficar acima de outros elementos */
  position: fixed;             /* Posição fixa no topo */
  top: 0;                      /* Alinhado ao topo */
  left: 0;                     /* Alinhado à esquerda */
  right: 0;                    /* Alinhado à direita */
}

/* ===== CABEÇALHO PRINCIPAL ===== */
.header{
  padding: 0;                  /* Remove padding padrão */
  position: fixed;             /* Posição fixa */
  top: 44px;                   /* Posiciona abaixo da faixa superior */
  left: 0;                     /* Alinhado à esquerda */
  right: 0;                    /* Alinhado à direita */
  z-index: 1000;               /* Z-index alto */
  background: var(--white);    /* Fundo branco fixo */
  transition: all 0.4s ease;   /* Transição suave para todas as propriedades */
  border-bottom: 1px solid var(--gray-200); /* Borda inferior */
  box-shadow: 0 2px 20px rgba(0,0,0,0.08); /* Sombra suave */
}

/* ===== LINKS DO CABEÇALHO ===== */
.nav__link {
  color: var(--accent);        /* Cor do texto azul */
}

.nav__link:hover,
.nav__link:focus {
  color: var(--accent);        /* Mantém cor azul no hover */
  border-bottom-color: var(--accent); /* Borda inferior azul */
}

/* ===== CONTEÚDO INTERNO DO CABEÇALHO ===== */
.header__inner{
  display:flex;                /* Layout flexbox */
  align-items:center;          /* Alinha itens verticalmente ao centro */
  gap: 40px;                   /* Espaço entre os itens */
  position:relative;           /* Posição relativa */
  height: 80px;                /* Altura fixa */
}

/* ===== LADO ESQUERDO DO CABEÇALHO ===== */
.header__left{display:flex; align-items:center} /* Alinha logo e outros itens */

/* ===== LOGO DO CABEÇALHO ===== */
.header__logo{
  height: 70px;                /* Altura da logo */
  transition: all 0.3s ease;   /* Transição suave */
}

/* ===== LISTA DE NAVEGAÇÃO ===== */
.nav__list{
  display:flex;                /* Layout flexbox */
  gap: 8px;                    /* Espaço entre os itens */
  list-style:none;             /* Remove marcadores da lista */
  padding:0;                   /* Remove padding padrão */
  margin:0;                    /* Remove margem padrão */
  align-items:center;          /* Alinha itens verticalmente */
  height: 100%;                /* Altura total do container */
}

/* ===== ITEM DA NAVEGAÇÃO ===== */
.nav__item{
  position:relative;           /* Posição relativa para dropdowns */
  display:block;               /* Exibição em bloco */
  height: 100%;                /* Altura total do container */
}

/* ===== LINK DA NAVEGAÇÃO ===== */
.nav__link{
  color: var(--accent);        /* Cor do texto azul */
  text-decoration:none;        /* Remove sublinhado */
  font-weight:500;             /* Peso da fonte */
  font-size:15px;              /* Tamanho da fonte */
  padding: 0 20px;             /* Espaçamento interno horizontal */
  display:flex;                /* Layout flexbox */
  align-items:center;          /* Alinha itens verticalmente */
  gap: 8px;                    /* Espaço entre texto e ícone */
  height: 100%;                /* Altura total do container */
  transition: all 0.2s ease;   /* Transição suave */
  position: relative;          /* Posição relativa */
  border-bottom: 3px solid transparent; /* Borda inferior transparente */
  white-space: nowrap;         /* Impede quebra de linha */
}

/* ===== LINK DA NAVEGAÇÃO NO HOVER/FOCUS ===== */
.nav__link:hover,
.nav__link:focus{
  color: var(--accent);        /* Mantém cor azul */
  border-bottom-color: var(--accent); /* Borda inferior azul */
}

/* ===== SETA DO DROPDOWN ===== */
.nav__arrow{
  transition: transform 0.2s ease; /* Transição suave para rotação */
}

/* ===== ROTAÇÃO DA SETA NO HOVER ===== */
.has-mega:hover .nav__arrow,
.has-dropdown:hover .nav__arrow{
  transform: rotate(180deg);   /* Rotaciona 180 graus */
}

/* ===== CALL TO ACTION DO CABEÇALHO ===== */
.header__cta{margin-left:auto; display:flex; align-items:center; gap:16px}

/* ===== BOTÃO PRINCIPAL ===== */
.btn{
  font-family:var(--ff);       /* Fonte padrão */
  cursor:pointer;              /* Cursor de ponteiro */
  border-radius:8px;           /* Bordas arredondadas */
  padding:12px 24px;           /* Espaçamento interno */
  border:0;                    /* Remove borda */
  display:inline-block;        /* Exibição em linha-bloco */
  text-decoration:none;        /* Remove sublinhado */
  text-align:center;           /* Texto centralizado */
  transition: all 0.3s ease;   /* Transição suave */
  font-weight: 600;            /* Peso da fonte */
  font-size: 14px;             /* Tamanho da fonte */
  white-space: nowrap;         /* Impede quebra de linha */
}

/* ===== BOTÃO PRIMÁRIO ===== */
.btn--primary{
  background: #06021a;         /* Fundo escuro */
  color: var(--white);         /* Texto branco */
}

/* ===== BOTÃO PRIMÁRIO NO HOVER ===== */
.btn--primary:hover{
  background: #0b2bff;         /* Fundo azul mais escuro */
  transform: translateY(-2px); /* Move ligeiramente para cima */
  box-shadow: 0 8px 20px rgba(11, 43, 255, 0.3); /* Sombra azul */
}

/* ===== HAMBÚRGUER - DESKTOP ===== */
.hamburger{
  display:none;                /* Oculta por padrão (desktop) */
}

/* ===== MEGA MENU ===== */
.mega-menu{
  position: absolute;          /* Posição absoluta */
  top: 100%;                   /* Posiciona abaixo do item pai */
  left: 0;                     /* Alinhado à esquerda */
  width: 1000px;               /* Largura mais horizontal */
  max-height: 500px;           /* Altura máxima reduzida */
  background: var(--dropdown-bg); /* Cor de fundo */
  box-shadow: var(--shadow);   /* Sombra */
  border-radius: 0 0 12px 12px; /* Bordas arredondadas apenas embaixo */
  opacity: 0;                  /* Inicialmente invisível */
  visibility: hidden;          /* Inicialmente oculto */
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); /* Transição suave */
  z-index: 999;                /* Z-index alto */
  transform: translateY(-10px); /* Posicionado ligeiramente acima */
  border: 1px solid var(--gray-200); /* Borda cinza */
  border-top: none;            /* Remove borda superior */
  padding: 0;                  /* Remove padding padrão */
  display: flex;               /* Layout flexbox */
  overflow-y: auto;            /* Permite rolagem se necessário */
}

/* ===== MEGA MENU NO HOVER ===== */
.nav__item.has-mega:hover .mega-menu{
  opacity:1;                   /* Torna visível */
  visibility:visible;          /* Torna visível */
  transform: translateY(0);    /* Posiciona corretamente */
}

/* ===== CONTEÚDO DO MEGA MENU ===== */
.mega-menu__content{
  padding: 30px;               /* Espaçamento interno reduzido */
  flex: 1;                     /* Ocupa espaço disponível */
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
}

/* ===== GRADE DO MEGA MENU ===== */
.mega-menu__grid{
  display: grid;               /* Layout grid */
  grid-template-columns: repeat(3, 1fr); /* Três colunas para acomodar a terceirização */
  gap: 30px;                   /* Espaço entre colunas */
  flex: 1;                     /* Ocupa espaço disponível */
}

/* ===== COLUNA DO MEGA MENU ===== */
.mega-menu__col{
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
}

/* ===== SEÇÃO DO MEGA MENU ===== */
.mega-menu__section{
  flex: 1;                     /* Ocupa espaço disponível */
}

/* ===== TÍTULO DA SEÇÃO DO MEGA MENU ===== */
.mega-menu__section-title {
  font-size: 18px;             /* Tamanho da fonte */
  font-weight: 600;            /* Peso da fonte */
  color: var(--gray-900);      /* Cor do texto */
  margin: 0 0 16px;            /* Margem */
  padding-bottom: 8px;         /* Espaçamento abaixo */
  border-bottom: 1px solid var(--gray-200); /* Linha divisória */
}

/* ===== LISTA DO MEGA MENU ===== */
.mega-menu__list{
  list-style: none;            /* Remove marcadores */
  padding: 0;                  /* Remove padding */
  margin: 0;                   /* Remove margem */
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
  gap: 10px;                   /* Espaço entre itens reduzido */
}

/* ===== LINK DO MEGA MENU ===== */
.mega-menu__link{
  color: var(--gray-800);      /* Cor do texto */
  text-decoration: none;       /* Remove sublinhado */
  font-size: 14px;             /* Tamanho da fonte */
  font-weight: 500;            /* Peso da fonte */
  padding: 6px 0;              /* Espaçamento vertical reduzido */
  display: block;              /* Exibição em bloco */
  transition: all 0.2s ease;   /* Transição suave */
  border-left: 2px solid transparent; /* Borda esquerda transparente */
  padding-left: 12px;          /* Espaçamento à esquerda */
}

/* ===== LINK DO MEGA MENU NO HOVER ===== */
.mega-menu__link:hover{
  color: var(--accent);        /* Cor azul */
  border-left-color: var(--accent); /* Borda esquerda azul */
  padding-left: 16px;          /* Aumenta espaçamento à esquerda */
}

/* ===== SUBLISTA DO MEGA MENU ===== */
.mega-menu__sublist{
  list-style: none;            /* Remove marcadores */
  padding: 0;                  /* Remove padding */
  margin: 8px 0 12px 0;        /* Margem reduzida */
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
  gap: 4px;                    /* Espaço entre itens reduzido */
}

/* ===== LINK FILHO DO MEGA MENU ===== */
.mega-menu__link--child{
  font-weight: 400;            /* Peso da fonte normal */
  color: var(--gray-600);      /* Cor do texto mais clara */
  font-size: 13px;             /* Tamanho da fonte menor */
  padding-left: 20px;          /* Menor espaçamento à esquerda */
}

/* ===== LINK FILHO DO MEGA MENU NO HOVER ===== */
.mega-menu__link--child:hover{
  color: var(--accent);        /* Cor azul */
  padding-left: 24px;          /* Aumenta espaçamento à esquerda */
}

/* ===== DROPDOWN SIMPLES ===== */
.dropdown{
  position:absolute;           /* Posição absoluta */
  top: 100%;                   /* Posiciona abaixo do item pai */
  left: 50%;                   /* Centraliza horizontalmente */
  transform: translateX(-50%) translateY(-10px); /* Centraliza e posiciona ligeiramente acima */
  min-width: 220px;            /* Largura mínima */
  background: var(--dropdown-bg); /* Cor de fundo */
  box-shadow: var(--shadow);   /* Sombra */
  border-radius: 0 0 12px 12px; /* Bordas arredondadas apenas embaixo */
  opacity:0;                   /* Inicialmente invisível */
  visibility:hidden;           /* Inicialmente oculto */
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); /* Transição suave */
  z-index:999;                 /* Z-index alto */
  border: 1px solid var(--gray-200); /* Borda cinza */
  border-top: none;            /* Remove borda superior */
}

/* ===== DROPDOWN NO HOVER ===== */
.nav__item.has-dropdown:hover .dropdown{
  opacity:1;                   /* Torna visível */
  visibility:visible;          /* Torna visível */
  transform: translateX(-50%) translateY(0); /* Posiciona corretamente */
}

/* ===== LISTA DO DROPDOWN ===== */
.dropdown__list{
  list-style:none;             /* Remove marcadores */
  padding: 16px 0;             /* Espaçamento vertical reduzido */
  margin:0;                    /* Remove margem */
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
  gap: 4px;                    /* Espaço entre itens */
}

/* ===== LINK DO DROPDOWN ===== */
.dropdown__link{
  color: var(--gray-800);      /* Cor do texto */
  text-decoration:none;        /* Remove sublinhado */
  display:block;               /* Exibição em bloco */
  font-size:14px;              /* Tamanho da fonte */
  padding: 8px 20px;           /* Espaçamento interno reduzido */
  transition: all 0.2s ease;   /* Transição suave */
  font-weight: 500;            /* Peso da fonte */
}

/* ===== LINK DO DROPDOWN NO HOVER ===== */
.dropdown__link:hover{
  color: var(--accent);        /* Cor azul */
  background: var(--gray-100); /* Fundo cinza claro */
  padding-left: 24px;          /* Aumenta espaçamento à esquerda */
}

/* ===== SEÇÃO HERO (BANNER PRINCIPAL) ===== */
.hero{
  padding: 180px 0 80px;       /* Espaçamento interno (topo aumentado para cabeçalho fixo) */
  position:relative;           /* Posição relativa */
  overflow:hidden;             /* Esconde overflow */
  background: linear-gradient(135deg, #0200B2, var(--blue-900), #000000); /* Gradiente de fundo */
}

/* ===== CONTEÚDO INTERNO DO HERO ===== */
.hero__inner{
  display:flex;                /* Layout flexbox */
  align-items:center;          /* Alinha itens verticalmente */
  justify-content: space-between; /* Espaço entre os elementos */
  gap:60px;                    /* Espaço entre conteúdo e imagem */
  min-height:500px;            /* Altura mínima */
}

/* ===== CONTEÚDO DO HERO ===== */
.hero__content{
  max-width:600px;             /* Largura máxima aumentada */
  display: flex;               /* Layout flexbox */
  flex-direction: column;      /* Direção coluna */
  align-items: flex-start;     /* Alinha itens à esquerda */
}

/* ===== TÍTULO DO HERO ===== */
.hero__title{
  font-size: 48px;             /* Tamanho da fonte */
  margin: 0 0 20px 0;          /* Margem */
  font-weight: 700;            /* Peso da fonte */
  color: var(--white);         /* Cor do texto branca */
  line-height: 1.2;            /* Altura da linha */
}

/* ===== SUBTÍTULO DO HERO ===== */
.hero__subtitle{
  color: rgba(255,255,255,0.9); /* Cor do texto com menos transparência */
  font-weight: 400;            /* Peso da fonte */
  font-size: 20px;             /* Tamanho da fonte aumentado */
  margin-bottom: 30px;         /* Espaço abaixo */
  max-width: 700px;            /* Largura máxima aumentada */
  line-height: 1.6;            /* Altura da linha */
}

/* ===== SEÇÃO DE METODOLOGIA ===== */
.method{
  background: var(--gray-100); /* Fundo cinza claro */
  padding:80px 0;              /* Espaçamento interno */
}

/* ===== TÍTULO DA SEÇÃO DE METODOLOGIA ===== */
.methodology-title-section {
  text-align: center;          /* Texto centralizado */
  margin-bottom: 50px;         /* Espaço abaixo */
}

.methodology-title-section h2 {
  font-size: 32px;             /* Tamanho da fonte */
  font-weight: 700;            /* Peso da fonte */
  color: var(--gray-900);      /* Cor do texto */
  margin: 0 0 10px;            /* Margem */
}

.methodology-title-section p {
  font-size: 18px;             /* Tamanho da fonte */
  color: var(--gray-600);      /* Cor do texto */
  margin: 0;                   /* Remove margem */
}

/* ===== CARDS DE METODOLOGIA ===== */
.methodology-cards {
  display: grid;               /* Layout grid */
  grid-template-columns: repeat(2, 1fr); /* 2 colunas para melhor responsividade */
  gap: 30px;                   /* Espaço entre cards */
}

.methodology-card {
  background: var(--white);
  border-radius: 14px;
  padding: 32px;
  box-shadow: var(--shadow);
  border: 1px solid var(--gray-200);
  display: flex;
  flex-direction: column;
}

/* ===== CARD DE METODOLOGIA NO HOVER ===== */
.methodology-card:hover {
  transform: translateY(-5px); /* Move ligeiramente para cima */
  box-shadow: 0 15px 30px rgba(0,0,0,0.15); /* Aumenta sombra */
}

/* ===== ÍCONE DA METODOLOGIA ===== */
.methodology-icon {
  width: 50px;                 /* Largura reduzida */
  height: 50px;                /* Altura reduzida */
  margin: 0 0 20px;            /* Margem apenas abaixo */
  background: var(--accent);   /* Fundo azul */
  border-radius: 50%;          /* Forma circular */
  display: flex;               /* Layout flexbox */
  align-items: center;         /* Centraliza verticalmente */
  justify-content: center;     /* Centraliza horizontalmente */
  color: var(--white);         /* Cor do texto branca */
  font-size: 20px;             /* Tamanho da fonte reduzido */
  font-weight: 700;            /* Peso da fonte */
}

/* ===== TÍTULO DA METODOLOGIA ===== */
.methodology-title {
  font-size: 20px;             /* Tamanho da fonte */
  font-weight: 600;            /* Peso da fonte */
  margin: 0 0 15px;            /* Margem */
  color: var(--gray-900);      /* Cor do texto */
}

/* ===== DESCRIÇÃO DA METODOLOGIA ===== */
.methodology-description {
  color: var(--gray-600);      /* Cor do texto */
  font-size: 16px;             /* Tamanho da fonte */
  line-height: 1.6;            /* Altura da linha */
  margin: 0;                   /* Remove margem */
}

/* ===== SEÇÃO DE CONTEÚDOS EM DESTAQUE ===== */
.featured{
  background: var(--white);    /* Fundo branco */
  padding:80px 0;              /* Espaçamento interno */
}

/* ===== TÍTULO DA SEÇÃO DE CONTEÚDOS ===== */
.featured .section-title{
  text-align:center;           /* Texto centralizado */
  margin-bottom: 20px;         /* Espaço abaixo */
}

/* ===== DESCRIÇÃO DA SEÇÃO DE CONTEÚDOS ===== */
.featured__lead{
  text-align:center;           /* Texto centralizado */
  margin:0 auto 40px;          /* Centraliza e adiciona espaço abaixo */
  max-width:600px;             /* Largura máxima */
  color: var(--gray-600);      /* Cor do texto */
  font-size: 18px;             /* Tamanho da fonte */
}

/* ===== GRADE DE CARDS ===== */
.cards{
  display:grid;                /* Layout grid */
  grid-template-columns: repeat(2,1fr); /* 2 colunas de tamanho igual */
  gap:30px;                    /* Espaço entre cards */
  margin-top:40px;             /* Espaço acima */
}

/* ===== CARD INDIVIDUAL ===== */
.card{
  background:var(--card-bg);   /* Cor de fundo */
  border-radius:12px;          /* Bordas arredondadas */
  overflow:hidden;             /* Esconde overflow */
  box-shadow: 0 4px 20px rgba(0,0,0,0.08); /* Sombra suave */
  display:flex;                /* Layout flexbox */
  flex-direction:column;       /* Direção coluna */
  transition: all 0.3s ease;   /* Transição suave */
  border: 1px solid var(--gray-200); /* Borda cinza */
}

/* ===== CARD NO HOVER ===== */
.card:hover{
  transform: translateY(-8px); /* Move para cima */
  box-shadow: 0 20px 40px rgba(0,0,0,0.12); /* Aumenta sombra */
}

/* ===== MÍDIA DO CARD (IMAGEM) ===== */
.card__media img{
  width:100%;                  /* Largura total */
  display:block;               /* Exibição em bloco */
  height:200px;                /* Altura fixa */
  object-fit:cover;            /* Ajusta imagem para preencher o container */
}

/* ===== CORPO DO CARD ===== */
.card__body{
  padding:24px;                /* Espaçamento interno */
  flex:1;                      /* Ocupa espaço disponível */
  display:flex;                /* Layout flexbox */
  flex-direction:column;       /* Direção coluna */
}

/* ===== CATEGORIA DO CARD ===== */
.card__kicker{
  font-weight:600;             /* Peso da fonte */
  margin:0 0 8px 0;            /* Margem */
  color:var(--accent);         /* Cor azul */
  font-size: 14px;             /* Tamanho da fonte */
  text-transform: uppercase;   /* Texto em maiúsculas */
  letter-spacing: 0.5px;       /* Espaçamento entre letras */
}

/* ===== TÍTULO DO CARD ===== */
.card__title{
  margin:0 0 12px;             /* Margem */
  font-weight:600;             /* Peso da fonte */
  font-size: 18px;             /* Tamanho da fonte */
  color: var(--gray-900);      /* Cor do texto */
}

/* ===== RESUMO DO CARD ===== */
.card__excerpt{
  flex:1;                      /* Ocupa espaço disponível */
  color:var(--gray-600);       /* Cor do texto */
  margin-bottom:20px;          /* Espaço abaixo */
  line-height: 1.6;            /* Altura da linha */
}

/* ===== BOTÃO PEQUENO ===== */
.btn--small{
  background:var(--accent);    /* Fundo azul */
  color:var(--white);          /* Texto branco */
  padding:10px 20px;           /* Espaçamento interno */
  border-radius:6px;           /* Bordas arredondadas */
  font-weight:500;             /* Peso da fonte */
  font-size: 14px;             /* Tamanho da fonte */
  align-self: flex-start;      /* Alinha à esquerda */
}

/* ===== BOTÃO PEQUENO NO HOVER ===== */
.btn--small:hover{
  background: #0b2bff;         /* Fundo azul mais escuro */
  transform: translateY(-2px); /* Move ligeiramente para cima */
}

/* ===== BOTÃO "VER MAIS" ===== */
.featured__more{
  display:flex;                /* Layout flexbox */
  justify-content:center;      /* Centraliza horizontalmente */
  margin-top:50px;             /* Espaço acima */
}

/* ===== BOTÃO EM FORMATO DE PÍLULA ===== */
.btn--pill{
  background:var(--accent);    /* Fundo azul */
  color:var(--white);          /* Texto branco */
  padding:14px 32px;           /* Espaçamento interno */
  border-radius:25px;          /* Bordas muito arredondadas */
  font-weight:600;             /* Peso da fonte */
}

/* ===== BOTÃO EM FORMATO DE PÍLULA NO HOVER ===== */
.btn--pill:hover{
  background: #0b2bff;         /* Fundo azul mais escuro */
  transform: translateY(-2px); /* Move ligeiramente para cima */
}

/* ===== RODAPÉ ===== */
.footer{
  background-color: #000000;   /* Fundo preto */
  color:rgba(255,255,255,0.8); /* Cor do texto com transparência */
  padding:60px 0 0;            /* Espaçamento interno (sem padding inferior) */
}

/* ===== FORMULÁRIO DO RODAPÉ ===== */
.footer__form {
    flex: 0 0 420px;
}

/* ===== CONTEÚDO INTERNO DO RODAPÉ ===== */
.footer__inner{
  display: flex;                /* Layout flexbox */
  align-items: flex-start;      /* Alinha itens ao topo */
  flex-wrap: wrap;              /* Permite quebra de linha */
}

.footer__brand img {
  width: auto;                  /* Mantém proporção original */
  display: block;               /* Remove espaços indesejados */
}

/* ===== COLUNAS DO RODAPÉ ===== */
.footer__cols{
  display: flex;                /* Layout flexbox */
  gap: 30px;                    /* Espaço entre colunas */
  flex: 2;                      /* Ocupa o espaço restante */
  flex-wrap: wrap;              /* Permite quebra de linha */
  justify-content: flex-end;    /* Alinha colunas à direita */
}

/* ===== TÍTULO DAS COLUNAS DO RODAPÉ ===== */
.footer__col h4{
  margin:0 0 20px 0;           /* Margem */
  font-size:16px;              /* Tamanho da fonte */
  color: var(--white);         /* Cor do texto branca */
  font-weight: 600;            /* Peso da fonte */
}

/* ===== LISTA DAS COLUNAS DO RODAPÉ ===== */
.footer__col ul{
  list-style:none; 
  padding:0; 
  margin:0;
}

/* ===== ITENS DA LISTA DO RODAPÉ ===== */
.footer__col li{
  margin-bottom: 12px;         /* Espaço entre itens */
}

/* ===== LINKS DO RODAPÉ ===== */
.footer__col li a{
  color: rgba(255,255,255,0.7); /* Cor do texto com transparência */
  text-decoration: none;       /* Remove sublinhado */
  transition: color 0.2s ease; /* Transição suave para cor */
  font-size: 14px;             /* Tamanho da fonte */
}

/* ===== LINKS DO RODAPÉ NO HOVER ===== */
.footer__col li a:hover{
  color: var(--white);         /* Cor branca no hover */
}

/* ===== PARTE INFERIOR DO RODAPÉ ===== */
.footer__bottom{
  background: rgba(0,0,0,0.8); /* Fundo preto com transparência */
  padding: 20px 0;             /* Espaçamento interno */
  border-top: 1px solid rgba(255,255,255,0.1); /* Linha divisória superior */
}

/* ===== DIREITOS AUTORAIS ===== */
.footer__copyright{
  text-align: center;          /* Texto centralizado */
  color: rgba(255,255,255,0.6); /* Cor do texto com transparência */
  font-size: 14px;             /* Tamanho da fonte */
}

/* ===== CARD PRINCIPAL ===== */
.contact-card {
  background: white;
  padding: 30px;
  border-radius: 16px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
  max-width: 1000px;
  width: 100%;
  margin: 40px auto;
  font-family: "Inter", sans-serif;
}

.contact-card h3 {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 20px;
  color: #222;
}

/* ===== FORMULÁRIO ===== */
.contact-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* ===== GRUPO DE CAMPO ===== */
.form-group {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.form-group label {
  font-size: 0.95rem;
  color: #333;
  font-weight: 500;
}

.form-group input {
  padding: 12px 14px;
  border: 1.5px solid #dcdcdc;
  border-radius: 8px;
  font-size: 0.95rem;
  outline: none;
  transition: border 0.2s ease, box-shadow 0.2s ease;
}

.form-group input:focus {
  border-color: #007bff;
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.15);
}

/* ===== CHECKBOX E BOTÃO ===== */
.form-footer {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-top: 10px;
}

.checkbox-group {
  display: flex;
  align-items: center;
  gap: 10px;
}

.checkbox-group input[type="checkbox"] {
  width: 18px;
  height: 18px;
}

/* ===== BOTÃO ===== */
.btn-submit {
  padding: 12px 20px;
  background: #007bff;
  color: #fff;
  font-size: 1rem;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 600;
}

.btn-submit:hover {
  background: #005fcc;
  transform: translateY(-2px);
}

.btn-submit:active {
  transform: translateY(0px);
}

/* ===== RESPONSIVIDADE - TABLET GRANDE (ATÉ 1100px) ===== */
@media (max-width:1100px){
  .footer__brand img {
    height: 100px;             /* Reduz altura da logo no rodapé */
  }
  
  .footer__cols {
    flex: 1;
    display: flex;
    gap: 80px; 
    justify-content: flex-end; 
  }
  
  .footer__inner {
    gap: 30px;                 /* Reduz espaço entre logo e colunas */
  }
}

/* ===== RESPONSIVIDADE - TABLET (ATÉ 900px) ===== */
@media (max-width:900px){
  /* ===== HAMBURGUER MENU MOBILE ===== */
  .hamburger {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    width: 30px;
    height: 24px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1001;
    margin-left: auto;
  }
  
  .hamburger span {
    display: block;
    width: 100%;
    height: 3px;
    background: var(--accent);
    border-radius: 3px;
    transition: all 0.3s ease;
  }
  
  .hamburger.active span:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
  }
  
  .hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  
  .hamburger.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
  }
  
  /* ===== MOBILE NAVIGATION ===== */
  .nav {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(10px);
    z-index: 1000;
    padding: 120px 20px 40px;
    overflow-y: auto;
  }
  
  .nav.nav--open {
    display: block;
  }
  
  .nav__list {
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
  }
  
  .nav__item {
    width: 100%;
    border-bottom: 1px solid rgba(7, 10, 63, 0.1);
    height: auto;
  }
  
  .nav__link {
    padding: 16px 20px;
    width: 100%;
    justify-content: space-between;
    border-bottom: none !important;
    font-size: 18px;
    color: var(--accent) !important;
    height: auto;
  }
  
  .nav__arrow {
    transition: transform 0.3s ease;
  }
  
  .nav__item.open .nav__arrow {
    transform: rotate(180deg);
  }
  
  /* ===== MEGA MENU MOBILE ===== */
  .mega-menu {
    position: static !important;
    width: 100% !important;
    max-height: 0 !important;
    overflow: hidden;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    background: var(--gray-100);
    border: none;
    border-radius: 0;
    margin: 0;
    padding: 0 !important;
    transition: max-height 0.3s ease;
    display: block !important;
  }
  
  .mega-menu.menu-open {
    max-height: 500px !important;
    padding: 20px !important;
  }
  
  .mega-menu__grid {
    grid-template-columns: 1fr !important;
    gap: 20px;
  }
  
  .mega-menu__section {
    margin-bottom: 20px;
  }
  
  .mega-menu__section-title {
    font-size: 16px;
    margin-bottom: 12px;
  }
  
  .mega-menu__link {
    padding: 8px 0;
    font-size: 14px;
  }
  
  /* ===== DROPDOWN MOBILE ===== */
  .dropdown {
    position: static !important;
    width: 100% !important;
    min-width: auto !important;
    max-height: 0;
    overflow: hidden;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    background: var(--gray-100);
    border: none;
    border-radius: 0;
    margin: 0;
    padding: 0 !important;
    transition: max-height 0.3s ease;
  }
  
  .dropdown.menu-open {
    max-height: 300px;
    padding: 15px 20px !important;
  }
  
  .dropdown__list {
    gap: 8px;
  }
  
  .dropdown__link {
    padding: 8px 15px;
    font-size: 14px;
  }
  
  /* ===== HIDE HEADER CTA ON MOBILE ===== */
  .header__cta {
    display: none !important;
  }
  
  /* ===== ADJUST HEADER FOR MOBILE ===== */
  .header__inner {
    height: 70px;
    gap: 20px;
  }
  
  .header__logo {
    height: 50px;
  }
  
  /* ===== ADJUST HERO FOR MOBILE ===== */
  .hero {
    padding: 140px 0 60px;
  }
  
  .hero__inner {
    flex-direction: column;
    gap: 30px;
  }
  
  .hero__content {
    text-align: center;
    align-items: center;
  }
  
  .hero__title {
    font-size: 32px;
    text-align: center;
  }
  
  .hero__subtitle {
    font-size: 16px;
    text-align: center;
  }
  
  /* ===== ADJUST CARDS FOR MOBILE ===== */
  .cards,
  .methodology-cards {
    grid-template-columns: 1fr !important;
  }
  
  /* ===== ADJUST FOOTER FOR MOBILE ===== */
  .footer__inner {
    flex-direction: column;
    gap: 40px;
  }
  
  .footer__cols {
    flex-direction: column;
    gap: 30px;
    width: 100%;
    justify-content: center;
  }
  
  .footer__form {
    flex: 0 0 auto;
    width: 100%;
  }
  
  .footer__brand img {
    height: 80px;
    margin: 0 auto;
  }
  
  .methodology-title-section h2 {
    font-size: 28px;
  }
  
  .methodology-title-section p {
    font-size: 16px;
  }
}

/* ===== RESPONSIVIDADE - MOBILE (ATÉ 480px) ===== */
@media (max-width:480px){
  /* ===== AJUSTES DE TIPOGRAFIA ===== */
  :root{
    --h1: 36px;                /* Reduz tamanho do H1 */
    --h2: 28px;                /* Reduz tamanho do H2 */
  }
  
  .hero{
    padding: 120px 0 40px;     /* Ajusta espaçamento interno */
  }
  
  .hero__title{
    font-size: 28px;           /* Reduz tamanho do título */
  }
  
  .hero__subtitle {
    font-size: 14px;           /* Reduz tamanho do subtítulo */
  }
  
  .methodology-card {
    padding: 20px 16px;        /* Reduz espaçamento interno dos cards */
  }
  
  .methodology-title {
    font-size: 18px;           /* Reduz tamanho do título da metodologia */
  }
  
  .methodology-description {
    font-size: 14px;           /* Reduz tamanho da descrição da metodologia */
  }
  
  .methodology-title-section h2 {
    font-size: 24px;           /* Reduz tamanho do título da metodologia */
  }
  
  .card__body {
    padding: 16px;
  }
  
  .contact-card {
    padding: 20px;
    margin: 20px auto;
  }
  
  .nav {
    padding: 100px 15px 30px;
  }
  
  .nav__link {
    padding: 14px 15px;
    font-size: 16px;
  }
}

/* ===== WHATSAPP FLOAT ===== */
.whatsapp-float {
  position: fixed !important;
  bottom: 20px !important;
  right: 20px !important;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #25d366;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  z-index: 2147483647 !important;
  text-decoration: none;
  cursor: pointer;
  transition: transform .16s ease;
  -webkit-tap-highlight-color: transparent;
}

.whatsapp-float:hover,
.whatsapp-float:focus {
  transform: scale(1.06);
  outline: none;
}

.whatsapp-icon {
  width: 34px;
  height: 34px;
  display: block;
}

@media (max-width: 420px) {
  .whatsapp-float { width: 52px; height: 52px; bottom: 16px; right: 14px; }
  .whatsapp-icon { width: 28px; height: 28px; }
}

/* Desktop-safe overrides */
@media (min-width: 901px) {
  .hamburger { 
    display: none !important; 
  }
}