/* Reset básico e estilos globais */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: 'Lato', sans-serif;
  background-color: #081534;
  color: #fff;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Links */
a {
  color: #081534;
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover,
a:focus {
  color: #F2C94C;
  outline: none;
}

/* Site Header */
.site-header {
  position: sticky;
  top: 0;
  background-color: #081534;
  z-index: 9999;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  height: 120px; /* altura desktop */
  display: flex;
  align-items: center;
}

.header-container {
  max-width: 1650px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 100%;
}

/* Logo */
.header-logo {
  flex-shrink: 0;
}
.header-logo img {
  height: 75px; /* desktop */
  object-fit: contain;
}

/* Desktop Menu */
.header-menu {
  margin: 0 60px;
  flex-grow: 1;
}
.header-menu ul {
    list-style: none;
    margin: 0; padding: 0;
    display: flex; gap:25px; white-space:nowrap;
}
.header-menu ul li a {
    color:#fff; font-weight:400; font-size:.9rem; font-family:'Lato',sans-serif; padding:8px 0; display:inline-block; line-height:1.2
}
.header-menu ul li a:hover,
.header-menu ul li a:focus { color:#F2C94C; outline:none; }
.has-submenu { position:relative;}
.has-submenu > .submenu {
    display:none; position:absolute; left:0; top:100%;
    background:#081534; min-width:110px; box-shadow:0px8px24pxrgba(0,0,0,.20);
    border-radius:6px;padding:6px0;z-index:9999
}
.has-submenu:hover > .submenu,
.has-submenu:focus-within > .submenu {display:block;}
.submenu li {width:100%;}
.submenu a {
    color:#fff !important;padding:12px24px !important;font-size:.98rem !important;font-family:'Lato',sans-serif;font-weight:400;border-bottom:1px solid rgba(255,255,255,.08);transition:.2s background,.2s color;display:block
}
.submenu a:last-child{border-bottom:none;}
.submenu a:hover,
.submenu a.ativo{background:#F2C94C !important;color:#081534 !important;}
.has-submenu > a::after {content:' ▼';font-size:.85em;}

.header-redes {
    display:flex;align-items:center;gap:30px;margin-left:30px
}
.header-redes a {
    color:#fff;font-size:1.3rem;transition:.3s color ease;display:inline-flex;align-items:center;justify-content:center
}
.header-redes a:hover,
.header-redes a:focus{color:#F2C94C;}

.hamburger{
    display:none;
	color: #fff;
    flex-direction:column;
    justify-content:space-between;
    width:25px;height:20px;background:none;border:none;cursor:pointer
}
.hamburger span{
    display:block;height:3px;background-color:#fff;border-radius:2px
}

/* ---------------- MOBILE MENU FULL OVERLAY ------------------- */

/* Esconde o menu mobile por padrão */
.mobile-menu {
    display:none;
    position :fixed ;
    top :0 ; left :0 ; right :0 ; bottom :0 ;
    width :100vw ;
    height :100vh ;
    background-color :#081534 ;
    box-shadow :none ;
    padding :40px    20px    20px ;
    flex-direction :column ;
    justify-content :flex-start ;
    transition :opacity .3s ease , visibility .3s ease ;
    z-index :10000 ;
    opacity :0 ; visibility:hidden ;
}

/* Mostra apenas se estiver aberto e em telas pequenas */
@media (max-width :991px) {
   .mobile-menu.open {
     display:flex !important;
     opacity :1 ; visibility :visible ;
   }
}

/* Mobile menu conteúdo interno */
.mobile-menu ul{
   list-style:none;padding :0;margin :00    30 px    00 ;display:flex ;
   flex-direction :column ;gap :20 px ;
}
.mobile-menu ul li a{
   color:#fff;font-weight:bold;font-size :1.2rem;font-family :'Lato',sans-serif
}
.mobile-menu ul li a:hover,
.mobile-menu ul li a:foc us{color:#F2C94C;}
.mobile-redes{
   margin-top:auto ;display:flex ;gap :20 px ;
}
.mobile-redes a{
   color:#fff;font-size :1.5rem ;display:inline-flex ;
   align-items:center ;justify-content:center ;
}
.mobile-redes a:hover,
.mobile-redes a:foc us{color:#F2C94C;}
.close-menu{
   position:absolute ;top :15 px ;right :15 px ;
   background:none;border:none;color:#fff;font-size :2.5rem ;
   cursor:pointer ;line-height :1 ;
}

/* ----------- RESPONSIVIDADE GERAL HEADER ----------- */

@media (max-width: 991px) {
    .site-header { height: 70px; }
    .header-logo img { height: 40px; }
    .header-menu,
    .header-redes { display: none !important; }
    .hamburger { display: flex !important; }
    .has-submenu > .submenu {
        position: static;
        box-shadow: none;
        background-color: #081534;
        min-width: auto;
        padding-left: 18px;
    }
    .submenu a { font-size: 1.1rem !important; }
    .has-submenu > a::after{ content:'';}
}

@media (max-width:400px) {
     .mobile-menu { width:100vw; }
}
/*==================HERO HOME==========================*/

.header-menu {
   display:flex !important;
}



.hero-section {
  height: 35vh;
  background: url('/assets/imagens/bg-home.jpg') no-repeat center center/cover;
  background-color: #081534; /* fallback */
  color: #fff;
  display: flex;
  align-items: left;
}

.hero-section .container {

max-width: 1650px; /* container maior para mais espaço */
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 100%;
}

.hero-section h1 {
  font-family: 'Times New Roman', serif;
  font-size: 2.8rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
  text-align: left;
}

/*=============BLOCO TEXTO=================*/

/* Bloco de texto abaixo do hero */
.bloco-texto {
  background-color: #081534;
  color: #fff;
  width: 100%;
  padding: 40px 20px;
  text-align: center;
  font-family: 'Lato', sans-serif;
  font-size: 1.2rem;
  margin: 0;
}

/* Container para centralizar texto */
.bloco-texto .container {
  max-width: 900px;
  margin: 0 auto;
  padding: 0;
  background: transparent;
}

/*======================ICONES===============>*/

/* Bloco ícones e textos */
.icones-textos-lista {
  max-width: 1200px;
  margin: 40px auto 80px auto;
  padding: 20px 30px;
  background-color: #081534;
  color: #fff;
  font-family: 'Lato', sans-serif;
  border-radius: 8px;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.icones-textos-lista .item {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.icones-textos-lista .item img {
  max-width: 60px;
  height: auto;
  margin-right: 15px; /* espaço entre ícone e texto */
}

.icones-textos-lista .texto-coluna {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.3;
}

/* Responsividade para mobile */
@media (max-width: 991px) {
  .icones-textos-lista {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }

  .icones-textos-lista .item {
    justify-content: flex-start;
    width: 100%;
    max-width: 320px;
  }

  .icones-textos-lista .item img {
    max-width: 50px;
    margin-right: 15px;
  }

  .icones-textos-lista .texto-coluna {
    font-size: 1rem;
  }
}


/* =================== CORPO HOME======================== */

/* Bloco texto full width com fundo navy */
.bloco-texto {
  background-color: #081534;
  color: #fff;
  width: 100%;
  padding: 40px 20px;
  text-align: center;
  font-family: 'Lato', sans-serif;
  font-size: 1.2rem;
  margin: 0; /* remover margens que podem criar espaços brancos */
}

/* Se você estiver usando container interno, remova fundo branco dele */
.bloco-texto .container {
  max-width: 900px;
  margin: 0 auto;
  padding: 0; /* remover padding se houver */
  background: transparent; /* garantir fundo transparente */
}

/*==========================ICONES HOME=============================*/

/* Container geral */
.icones-textos-lista {
  max-width: 1200px;
  margin: 0px auto;
  padding: 20px 30px;
  background-color: #081534;
  color: #fff;
  font-family: 'Lato', sans-serif;
  border-radius: 8px;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap; /* quebra no mobile */
}

/* Cada item (ícone + texto) */
.icones-textos-lista .item {
  display: flex;           /* Alinha ícone e texto na mesma linha */
  align-items: center;
  margin-bottom: 20px;
}

/* Ícone */
.icones-textos-lista .item img {
  max-width: 60px;
  height: auto;
  margin-bottom: 10px;
}

/* Texto */
.icones-textos-lista .texto-coluna {
  font-size: 1.2rem;
  font-weight: 500;
}
@media (max-width: 991px) {
  /* Logo menor no mobile */
  .header-logo img {
    height: 40px; /* diminui de 75px para 40px */
  }

  /* Menu e redes sociais desktop escondidos */
  .header-menu,
  .header-redes {
    display: none;
  }

  /* Mostrar hamburger */
  .hamburger {
    display: flex;
  }

  /* Bloco ícones e textos: coluna no mobile */
  .icones-textos-lista {
    flex-direction: column;
    align-items: center;
    gap: 30px; /* espaçamento vertical entre itens */
  }

  /* Cada item ocupa 100% da largura e centralizado */
  .icones-textos-lista .item {
    flex-direction: row; /* mantém ícone e texto lado a lado */
    justify-content: flex-start;
    width: 100%;
    max-width: 300px; /* limitar largura para melhor visual */
    margin-bottom: 15px;
  }

  .icones-textos-lista .item img {
    max-width: 50px;
    margin-bottom: 0;
    margin-right: 15px; /* espaço entre ícone e texto */
  }

  .icones-textos-lista .texto-coluna {
    font-size: 1rem;
  }
}

/*=========================QUEM SOMOS======================*/

/* Container padrão */
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 15px;
}

/* Seção Quem Somos */
.quem-somos {
background-color: #fff;
padding: 40px 0;
}

/* Layout flexível para as colunas */
.row {
display: flex;
flex-wrap: wrap;
align-items: center;
}

/* Colunas /
.col-left,
.col-right {
flex: 1;
padding: 15px;
min-width: 300px; / Garante quebra em telas menores */
}

/* Responsividade */
@media (max-width: 768px) {
.row {
flex-direction: column;
}
}


/*===============QUEM SOMOS BLOCO 1 =====================*/

.quem-somos-hero {
  background: #fff;
  padding: 60px 0;
}

.container-quem-somos {
  display: flex;
  align-items: stretch; /* Mantém altura igual dos blocos */
  max-width: 1200px;
  margin: 0 auto;
  gap: 48px;
}

.imagem-box {
  position: relative;
  width: 400px;
  min-width: 320px;
  display: flex;
  align-items: stretch;
}

.imagem-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

.especialidades-card {
  position: absolute;
  bottom: -32px;
  right: 24px;   /* Alinhado à direita */
  left: auto;
  background: #fff;
  box-shadow: 0px 6px 24px rgba(8,21,52,0.08);
  border-radius: 12px;
  display: flex;
  align-items: center;
  padding: 20px;
}

.doc-icon {
    width:48px;   /* Tamanho padrão para ícones grandes */
    height:48px; 
    margin-right:16px; 
    object-fit:contain; 
    display:block
}

.especialidades-card .numero {
   font-size:2.2rem; 
   color:#081534; 
   font-weight:bold; 
   line-height:.9
}
.especialidades-card .legenda {
   font-size:.98rem; 
   color:#333; 
   display:block; 
   margin-top:-4px
}

.conteudo-box {
    flex:1;
    padding-top:10px;
    display:flex;
    flex-direction:column;
    justify-content:center
}
.conteudo-box h2 {
    color:#081534; 
    font-family:'Times New Roman',serif; 
    font-size:.98rem; 
    letter-spacing:.07em; 
    margin-bottom:.6em
}
.conteudo-box h1 {
    color:#081534; 
    font-family:'Times New Roman',serif; 
    font-size:2rem; 
    font-weight:bold; 
    margin-bottom:.7em
}
.conteudo-box p {
    color:#222; 
    font-family:'Lato',Arial,sans-serif; 
    font-size:1.06rem; 
    margin-bottom:.9em
}
.conteudo-box ul {
    list-style:none; 
    padding-left:0
}
.conteudo-box li {
    color:#081534; 
    font-family:'Lato',Arial,sans-serif; 
    font-size:.99rem; 
    margin-bottom:.5em;
    position:relative
}
.check {
   display:inline-block;
   width:18px;
   height:18px;
   background:#F2C94C; /* Amarelo da marca */
   border-radius:50%;
   margin-right:.5em;
   margin-bottom:-3.5px;
   position:relative;
}
.check::after {
    content:'';
    position:absolute;
    left:4px; top:2.5px;
    width:7px; height:12px;
    border-right:2.5px solid #081534; /* Navy Blue */
    border-bottom:2.5px solid #081534;
    transform:rotate(45deg);
}
/* Responsivo */
@media (max-width:900px){
 .container-quem-somos{
     flex-direction:column;
     gap:32px
 }
 .imagem-box,
 .imagem-box img{
     width:auto !important;
     min-width:auto !important
 }
 .especialidades-card{
     position:absolute;left:auto;right:auto;width:auto;padding-left:.7em;padding-right:.7em
 }
}


/*===============QUEM SOMOS BLOCO 2 =====================>*/

.quem-somos-guia {
    padding: 40px 0;
    background: #fff;
}

.quem-somos-guia .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

.quem-somos-guia h2 {
    color: #081534;
    font-family: 'Times New Roman', serif;
    font-size: 2.5rem;
    margin-bottom: 32px;
}

.guia-grid {
    display: grid;
    grid-template-columns: 1fr 2fr; /* Agora a direita é maior */
    gap: 18px 24px;
}

.guia-item,
.guia-item-desc {
    background: #081534;
    color: #fff;
    font-family: 'Lato', Arial, sans-serif;
    font-size: 1.4rem;
    padding: 18px 24px;
    box-shadow: 0 2px 10px rgba(8,21,52,0.05);
}

.guia-item {
    font-weight: bold;
}

.guia-item-desc {
    font-weight: normal;
}

/* Responsividade */
@media (max-width: 800px) {
    .guia-grid {
        grid-template-columns: 1fr; /* Empilha em telas pequenas */
        gap: 16px;
    }
}

/*====================QUEM SOMOS - BLOCO 3===========================*/
.posicionamento {
  width: 100%;
  padding: 48px 0 0 0;
  background: #fff;
}

.posicionamento .container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

.posicionamento h2 {
  color: #081534;
  font-family: 'Times New Roman', serif;
  font-size: 2.3rem;
  margin-bottom: 1.1em;
  text-align: left;
}

.posicionamento-destaque {
  color: #081534;
  font-family: 'Lato', Arial, sans-serif;
  font-size: 1.35rem;
  line-height: 1.35;
  text-align: left;
  margin-bottom: 2.5em;
}

@media (max-width:700px) {
 .posicionamento h2 { font-size:1.4rem; }
 .posicionamento-destaque { font-size:.98rem; }
}
.mvv-centralizado {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 40px auto;
}

.mvv-tabs {
  display: flex;
  gap: 32px;
}

.mvv-btn {
  background: #081534;
  color: #fff;
  border: none;
  border-radius: 4px;
  padding: .9em 3.5em;
  font-family: 'Lato', Arial, sans-serif;
  font-size: 1.15rem;
  font-weight: bold;
  cursor: pointer;
  transition: .15s background, .15s color;
}

.mvv-btn.ativo,
.mvv-btn:hover {
   background:#F2C94C; 
   color:#081534
}

.mvv-content {
   display:none; /* Escondido por padrão */
   background:#fff; 
   border:2px solid #081534; 
   border-radius:6px; 
   padding:32px; 
   color:#081534; 
   font-family:'Lato',Arial,sans-serif; 
   font-size:1.13rem; 
   text-align:left;
   max-width:700px;
   min-width:340px;
   margin-top:24px
}
.mvv-content.ativo { display:block }

@media (max-width:900px){
 .mvv-tabs{flex-direction:column;width:100%;gap:.7em;}
 .mvv-btn{width:auto;}
 .mvv-content{padding:16px;font-size:.99rem;}
}

/*=================================PÁGINA ÁREA DE ATUAÇÃO===================================*/

.banner-areas {
  position: relative;
  margin-bottom: 32px;
}
.banner-areas .container {
  position: absolute;
  top: 40%;
  left: 0;
  right: 0;
  text-align: left;
}
.banner-areas h1 {
  color: #fff;
  font-family: 'Times New Roman', serif;
  font-size: 2.7rem;
}

.areas-cards .container {
  max-width:1200px;
margin-top:50px;
	margin-bottom: 50px;
}

.areas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px,1fr));
  gap:32px;
}

.area-card {
  background: #fff;
  border: 1.5px solid #ededed; /* Borda sutil */
  border-radius: 0;            /* Quadrado */
  box-shadow: none;
  padding: 36px 22px 28px 22px;
  text-align: center;
  min-height: 310px;           /* Para padronizar altura */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.area-card h3 {
   color:#081534;
   font-family:'Times New Roman',serif;
   font-size:1.18em;
   margin-bottom:.7em
}
.area-card p {
   color:#444;font-size:.98em;margin-bottom:28px
}

.card-arrow {
   display:inline-flex;
   align-items:center;justify-content:center;
   width:42px;height:42px;
   background:#ededed;     /* Fundo cinza claro */
   border-radius:6px;      /* Leve arredondamento opcional */
   margin:auto;            /* Centraliza horizontalmente */
   transition:.15s background,.15s color
}
.card-arrow i {
    font-size:1.45em;color:#888
}
.area-card:hover .card-arrow {
    background:#F2C94C;color:#081534
}
.area-card:hover .card-arrow i {
    color:#081534
}

@media (max-width:700px){
 .areas-grid{grid-template-columns:1fr;}
 .area-card{min-height:auto;}
}

/*=======================INTERNA ATUAÇÃO===================*/

/* Banner da área com overlay */
.banner-area-interna {
  position: relative;
  width: 100%;
  min-height: 250px;
  margin-bottom: 36px;
  background: #081534;
  overflow: hidden;
}
.banner-area-interna img {
  width: 100%;
  max-height: 260px;
  object-fit: cover;
  display: block;
}
.banner-area-interna .banner-overlay {
  position: absolute;
  top:0; left:0; right:0; bottom:0;
  background: rgba(8,21,52,0.75); /* Navy Blue translúcido */
  z-index:1;
}
.banner-area-interna .container {
  position: absolute;
  left: 0; right: 0; top:50%; transform:translateY(-50%);
  z-index:2; /* Acima do overlay */
  text-align:left;
}
.banner-area-interna h1 {
  color: #fff;
  font-family:'Times New Roman', serif;
  font-size:2.2rem;
  margin-left:40px;
}

/* Descrição complementar no banner */
.descricao-banner {
    color:#F2C94C; /* Amarelo institucional para destaque */
    font-size:.98rem;
    font-family:'Lato', Arial, sans-serif;
    margin-left:40px;
    margin-top:.5em;
    max-width:700px;
    text-shadow:0px 1.5px #08153470; /* Sombra leve para contraste */
}

@media (max-width:700px){
 .banner-area-interna h1,
 .descricao-banner {margin-left:.6em;}
 .banner-area-interna h1 {font-size:1.3rem;}
 .descricao-banner {font-size:.92rem;}
}

/* Conteúdo principal */
.descricao-area {
    padding-bottom:60px; 
}
.descricao-area .container {
    max-width:800px;
    margin:auto;
    background:#fff;
    border-radius:8px;
    box-shadow:none; /* Minimalista, sem sombra */
    padding:32px 24px; 
}
.descricao-area p {
    color:#222; 
    font-size:1.11rem; 
    line-height:1.7; 
    margin-bottom:1.8em
}

.area-video {
    text-align:center;margin-top:32px;margin-bottom:32px
}
.area-video iframe {
   width:100%;max-width:600px;height:340px;border-radius:8px;border:none
}

.area-cta-btn {
   display:inline-block;margin-top:.5em;padding:.9em 2.3em;background:#F2C94C;color:#081534;font-weight:bold;border-radius:6px;text-decoration:none;font-size:.97em;transition:.15s background
}
.area-cta-btn:hover {background:#ffe083;color:#081534;}



/*=======================CONTATO=========================*/
.contato-main {
  background: #fff;
  padding: 40px 0;
}

.contato-blocos {
  max-width: 1200px;
  margin: auto;
  display: flex;
  gap: 38px;
}

.contato-institucional {
   flex: 0.9; /* Menor largura */
   background: #fff;
   padding: 32px 28px;
   border-radius: 10px;
   font-size: .95em; /* Menor */
}

.contato-institucional h2 {
   color: #081534;
   font-family: 'Times New Roman', serif;
   font-size: 1.18em; /* Menor */
   margin-bottom: .3em
}
.horario-atendimento {
    color:#081534;
    font-size:.93em; /* Menor */
    margin-bottom:.9em;
}
.contato-mapa {margin-bottom:16px;}
.contato-endereco {
    margin-top:.9em;margin-bottom:.9em;font-size:.92em;color:#081534
}

.contato-form-bloco {
   flex:2.1; /* Maior largura */
   background:#232f4e; /* tom navy mais escuro */
   border-radius:10px;
   display:flex;position:relative;min-height:420px;
}

.contato-form-left {
   flex-basis:45%;
   color:#081534;background:#ccc;padding:36px 24px;border-top-left-radius:10px;border-bottom-left-radius:10px;display:flex;flex-direction:column;justify-content:center
}
.contato-form-left h2 {
    font-family:'Times New Roman',serif;font-size:1.12rem;margin-bottom:.5em
}
.contato-destaque {
    font-weight:bold;color:#081534;font-size:.97rem;margin-bottom:.7em;
    line-height:1.35
}
.contato-lista-dados {list-style:none;padding-left:0;margin-top:.7em;font-size:.96em}
.contato-lista-dados li {margin-bottom:.65em;}
.contato-lista-dados i {margin-right:.5em;color:#081534;background:#fff;padding:.18em;border-radius:.25em;}

.contato-formulario {
   flex-basis:55%;
   display:flex;flex-direction:column;justify-content:center;padding:36px 32px;background:#081534;border-top-right-radius:10px;border-bottom-right-radius:10px;position:relative
}
.contato-formulario h3 {
   color:#fff;font-family:'Times New Roman',serif;font-size:1.65rem;margin-bottom:.7em;text-align:left
}
.contato-formulario input,
.contato-formulario textarea {
   width:100%;
   margin-bottom:.6em;
   padding:.60em .8em;
   border:none;
   border-radius:5px;
   font-size:.96em;
   background:#fff;color:#222;outline:none
}
.contato-formulario textarea {resize:none;}

.form-btn-row {
    display:flex;align-items:center;justify-content:flex-start;margin-top:.2em;gap:20px
}

.contato-formulario button {
    padding:.7em 2.1em;
    background:#F2C94C !important; /* Amarelo institucional */
    color:#081534 !important;
    font-weight:bold;
	border:none;
	border-radius:5px;
	font-size:.59em;
	transition:.15s background;
	text-transform:uppercase;
	letter-spacing:.02em
}
.contato-formulario button:hover {background:#ffe083 !important;color:#081534 !important;}

.contato-redes-sociais {
    margin-top:-4px;text-align:left;color:#fff;font-size:.93em;display:flex;align-items:center;gap:.7em
}
.contato-redes-sociais span {margin-right:.5em;}
.contato-redes-sociais a {color:#fff;margin-left:.1em;font-size:1.25em;}
.contato-redes-sociais a:hover {color:#F2C94C;}

.recorte-lateral {
    position:absolute;
    left:-25px;top:50%;transform:translateY(-50%);
    width:50px;height:80px;background:none;
    border-radius:50%;
    box-shadow:-20px 0 30px -15px #232f4e inset;
    z-index:3;
}

/* Responsivo */
@media (max-width:900px){
 .contato-blocos{flex-direction:column;}
 .contato-institucional, .contato-form-bloco{border-radius:10px !important;}
 .contato-form-bloco{flex-direction:column;height:auto;}
 .recorte-lateral{display:none;}
 .contato-form-left, .contato-formulario{flex-basis:auto;width:auto;padding-left:16px;padding-right:16px;}
 .form-btn-row{flex-direction:column;align-items:flex-start;gap:.6em;}
}

/*=======================NOSSO TIME=======================*/
.banner-pagina-simples {
  position: relative;
  width: 100%;
  height: 150px;
  background: #081534;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.banner-pagina-overlay {
  position:absolute;top:0;left:0;right:0;bottom:0;
  background: rgba(8,21,52,0.88); /* Navy Blue forte */
  z-index:1;
}
.banner-pagina-container {
  position: relative;
  z-index:2;
  width:100%;
  text-align:left;
}
.banner-pagina-container h1 {
    color:#fff;
    font-family:'Times New Roman',serif;
    font-size:2.3rem;
    margin:0 auto;
    font-weight:bold;
}

@media (max-width:700px){
 .banner-pagina-simples {height:140px;}
 .banner-pagina-container h1 {font-size:1.2rem;}
}

/*socios moderno*/
.socio-hero {
  display: flex;
  align-items: stretch;
  margin-bottom: 54px;
  background: #fff;
  box-shadow:0 6px 38px #08153416,0 .5px 8px #0001;
  overflow:hidden;
}

.socio-hero-foto {
  flex-basis:44%;
  min-width:300px;
   background-size: cover;
   background-repeat:no-repeat;
   background-position: top center; /* <-- sempre o topo da foto */
  transition:.25s transform,.25s filter;
}

.socio-hero-info {
   flex-basis:56%;
   padding:44px 38px;
   display:flex;flex-direction:column;justify-content:center;background:#fff
}
.socio-hero:hover .socio-hero-foto {
   transform:scale(1.04);
   filter:saturate(1.07) brightness(.97);
}

.socio-contatos-row {
   display:flex;gap:.9em;margin-bottom:.7em
}
.socio-contatos-row a {
   color:#fff;background:#081534;border-radius:50%;width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-size:1.43em;transition:.18s background,.18s color,.18s box-shadow;text-decoration:none
}
.socio-contatos-row a:hover {background:#F2C94C;color:#081534;box-shadow:0 .3em .7em #F2C94C33;}
.socio-hero-info h2 {
   font-family:'Times New Roman',serif;font-size:2.15rem;color:#081534;margin-bottom:.13em;font-weight:bold
}
.socio-cargo {
   color:#081534;font-size:.99em;margin-bottom:.45em;font-weight:bold
}
.socio-mini-bio {
   color:#222;font-size:1.08rem;margin-bottom:.75em;line-height:1.52
}
.socio-detalhes {
   margin-bottom:.9em;color:#222;font-size:.97em;display:flex;gap:.7em
}
.socio-detalhes span {display:inline-flex;align-items:center;gap:.4em;}
.perfil-link-hero {
   display:inline-block;margin-top:.5em;padding:.77em 1.65em;background:#F2C94C;color:#081534;border-radius:8px;text-decoration:none;font-weight:bold;font-size:.99em;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 .5px .8px #F2C94C12,0 .5px .8px #0001;transition:.16s background,.16s color
}
.perfil-link-hero:hover {background:#081534;color:#fff;}

@media (max-width:900px){
  .socio-hero {
    flex-direction: column;
  }
  .socio-hero-foto {
    min-width: auto;
    width: 100%;
    min-height:620px;
    height: 900px; /* aumenta a área visível */
    max-height: none;
    background-position: top center !important; /* <-- mostra o topo da foto */
  }
  .socio-hero-info {
    padding-top: 20px;
    padding-bottom: 24px;
    padding-left: 14px;
    padding-right: 14px;
  }
}
@media (max-width:600px){
  .socio-hero-foto {
    height: 220px !important; /* ainda mostra bem mais da imagem */
    min-height:420px; !important;
    background-position: top center !important; /* garante que o topo sempre aparece */
  }
}
/* ----------- Bloco Sócios ----------- */
.time-socios {
  margin-top: 40px;
  margin-bottom: 48px;
}
.time-socios h2 {
  color: #081534;
  font-family: 'Times New Roman', serif;
  font-size: 2.1rem;
  margin-bottom: 1.3em;
}

.socios-grid {
    display:flex;
    gap:38px;
    flex-wrap:wrap;
    justify-content:center;
    margin-bottom:40px;
}

.socio-card {
    background:#fff;
    border-radius:20px;
    padding:32px 30px 24px 30px;
    width:420px; max-width:98vw;
    box-shadow:
      0 8px 32px rgba(8,21,52,0.11),
      0 .5px 8px #0001;
    display:flex;flex-direction:column;align-items:center;
    transition:.23s box-shadow,.23s transform
}
.socio-card:hover {
   box-shadow:
     0 12px 36px rgba(8,21,52,.19),
     0 .5px 16px #0003;
   transform:translateY(-7px) scale(1.025);
}

.socio-foto-contatos {
   display:flex;align-items:flex-start;gap:22px;margin-bottom:.85em;width:100%;justify-content:center
}
.socio-foto img {
   width:138px;height:178px;object-fit:cover;border-radius:14px;box-shadow:0 .5px 12px #08153412;transition:.18s filter
}
.socio-card:hover .socio-foto img {filter:saturate(1.05) brightness(.98);}

.socio-contatos {
   display:flex;flex-direction:column;gap:.65em;margin-top:.4em;padding-top:.2em
}
.socio-contatos a {
   background:#F2C94C;color:#081534;border-radius:6px;font-size:1.45em;width:39px;height:39px;display:flex;align-items:center;justify-content:center;margin-bottom:.18em;text-decoration:none;transition:.15s background,.15s color, .15s box-shadow
}
.socio-contatos a:hover {background:#081534;color:#F2C94C;box-shadow:0 .5em .8em #F2C94C33;}

.socio-info {width:100%;text-align:left;}
.socio-nome {
   font-family:'Times New Roman',serif;font-size:1.22em;color:#081534;font-weight:bold;margin-bottom:.03em
}
.socio-cargo {color:#081534;font-size:.99em;margin-bottom:.38em;}
.contato-label {color:#081534;font-weight:bold;font-size:.97em;}
.perfil-link {
   display:inline-block;margin-top:.7em;margin-bottom:.6em;color:#081534;text-decoration:none;font-weight:bold;font-size:.98em;padding-right:.5em;border-radius:4.5px;background:none;transition:.17s color
}
.perfil-link:hover {color:#F2C94C;background:#08153408;}
.card-arrow{
   background:#ededed;border-radius:4.5px;padding:.25em .45em;margin-left:.4em;color:#818181;font-size:.99em;transition:.17s background,.17s color
}
.perfil-link:hover .card-arrow{background:#F2C94C;color:#081534;}
.mini-bio {font-size:.97em;color:#333;margin-top:.6em;margin-bottom:-.25em;line-height:1.46}

@media(max-width:900px){
 .socios-grid{flex-direction:column;align-items:center;}
 .socio-card{width:auto;}
 .time-socios h2{font-size:1.35rem;}
}

/* ----------- Bloco Time Técnico ----------- */
.time-tecnico-bloco {
  margin-top:48px;margin-bottom:48px;
}
.time-tecnico-grid {
  display:flex;
  align-items:center;
  gap:48px;
}
.time-tecnico-texto {
   flex:1.05; min-width:240px
}
.time-tecnico-texto h2 {
   color:#081534;font-family:'Times New Roman',serif;font-size:2rem;margin-bottom:.5em
}
.destaque-time-tecnico {
   color:#081534;font-size:1.45rem;font-weight:bold;line-height:1.18;margin-bottom:.8em
}
.time-tecnico-foto {flex:1;display:flex;align-items:center;justify-content:center;}
.time-tecnico-foto img {max-width:420px;width:100%;border-radius:10px;box-shadow:0 2px 16px #00000013}

@media (max-width:900px){
 .socios-grid, .time-tecnico-grid{flex-direction:column;align-items:center;}
 .socio-card, .tecnica-card{width:auto;}
 .time-tecnico-foto img{max-width:100%;}
 .destaque-time-tecnico{font-size:.99rem;}
}

/*=======================PORTAL DE CONTEUDO================*/
.portal-conteudo {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 16px;
  background: #01011B; /* navy blue */
  min-height: 80vh;
}

.conteudos-lista h1 {
  font-family: var(--fonte-titulo);
  font-size: 2.3rem;
  color: #fff; /* título branco */
  margin-bottom: 32px;
}

.conteudos-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(340px,1fr));
  gap: 36px;
}

.conteudo-card {
  background: #fff;
  box-shadow:0px 4px 20px rgba(8,21,52,.06);
  overflow:hidden;
}

.conteudo-card a {
  color:#081534;
  display:block;
  text-decoration:none;
}

.conteudo-card img {
  width:100%;
  height:220px;
  object-fit:cover;
}

.conteudo-card h2 {
  font-family:'Times New Roman',serif;
  font-size:1.18rem;
  margin:0;
}

.conteudo-card p {
  color:#081534;
  margin:12px 14px; 
}

.conteudo-card .data {
   display:block;
   color:#888; 
   font-size:.95rem; 
   margin-left:14px; 
   margin-bottom:14px; 
}
/*=======================CONTEUDOS=======================*/

.portal-conteudo-cards {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 16px;
}

.portal-conteudo-intro {
  text-align: center;
  margin-bottom: 36px;
}
.portal-conteudo-intro h1 {
  font-family: var(--fonte-titulo);
  font-size:2.2rem;
  color:#081534;
}
.portal-conteudo-intro p {
  font-size:1.15rem;
}

.conteudos-cards-grid {
  display:grid;
  grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
  gap:32px;
}

.conteudo-card-portal {
  background:#fff;
  border-radius:0px;
  box-shadow:0px 4px 20px rgba(8,21,52,.08);
  overflow:hidden;
  text-decoration:none;
  color:#081534;
  transition:.25s transform,.25s box-shadow;
}

.conteudo-card-portal:hover,
.conteudo-card-portal:focus {
   transform:translateY(-6px) scale(1.025);
   box-shadow:0px 12px 32px rgba(8,21,52,.13);
   outline:none;
   text-decoration:none;
}

.conteudo-card-portal img {
   width:100%;
   height:180px;
   object-fit:cover;
   display:block;
}

.conteudo-card-portal-body {
   padding:24px;
}

.conteudo-card-portal h2 {
   font-family:'Times New Roman',serif;
   font-size:1.4rem;
   margin-bottom:.7em;
   color:#081534;
}

.conteudo-card-portal p {
   color:#333; 
   font-size:.99rem; 
   margin-bottom:.9em; 
}
.saiba-mais {
   color:#F2C94C; 
   font-weight:bold; 
   letter-spacing:.01em; 
}

/*======================Interna Conteúdo==================*/

/* Container principal */
.conteudo-interna-main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 16px 64px 16px;
  background: #01011B; /* navy blue institucional */
}

/* Breadcrumb */
.breadcrumb-conteudo {
  font-size: 1.05rem;
  color: #fff;
  margin-bottom: 28px;
}

.breadcrumb-conteudo a {
    color: #F2C94C;
    text-decoration: underline;
    transition:.2s color;
}
.breadcrumb-conteudo a:hover { color:#fff; }

/* Título do conteúdo */
.titulo-interno {
  font-family: 'Times New Roman', serif;
  font-size: 2.5rem;
  font-weight: bold;
  color: #fff;
  margin-bottom: 32px;
}

/* Layout flexível */
.interno-flexbox {
    display: flex;
    gap:40px;
    align-items:flex-start;
}

@media (max-width:900px){
    .interno-flexbox { flex-direction:column; gap:24px;}
}

/* Box do autor lateral */
.box-autor {
    min-width:220px; max-width:260px;
    padding:22px 18px;
    color:#fff;
    text-align:left;
    box-shadow:0 4px 20px rgba(8,21,52,.08);
}
.foto-autor {
    width:150px; height:220px; object-fit:cover; border-radius:10%; margin-bottom:14px;
}
.nome-autor { font-weight:bold; font-size:.98rem; margin-bottom:.25em;}
.cargo-autor { font-size:.95rem; color:#F2C94C; margin-bottom:.7em;}

.box-autor a {
   color:#F2C94C; text-decoration:none;font-size:.97rem;margin-right:.6em
}
.box-autor a:hover {color:#fff;text-decoration:none;}
.box-autor i {font-size:1.15em;margin-right:.17em;}

.box-autor div {margin-bottom:.4em;}
.box-autor div:last-child{margin-bottom:.1em;}

.box-autor br {display:none;} /* Para compactar e-mails */

/* Conteúdo principal */
.box-texto-principal {
   background:#fff;
   border-radius:10px;
   padding:34px 30px 34px 30px;
   color:#081534 !important;
   font-family:'Lato',sans-serif !important;
   font-size:1.13rem !important;
   line-height:1.7 !important;
   box-shadow:0 .5rem .9rem rgba(8,21,52,.07);
   width:100%;
}

.box-texto-principal p,
.box-texto-principal div,
.box-texto-principal ul,
.box-texto-principal ol,
.box-texto-principal li {
   color:#081534 !important; 
   font-size:1.13rem !important; 
}

.box-texto-principal strong,
.box-texto-principal b {color:#081534;font-weight:bold;}

@media (max-width:700px){
   .box-texto-principal{padding:18px;font-size:.99rem;}
   .titulo-interno{font-size:1.45rem;}
}

/* Data/tipo no topo direito do artigo */
.box-texto-principal > div:first-child {
   text-align:right!important;color:#888!important;font-size:.97rem!important;margin-top:-12px;margin-bottom:.7em;font-weight:bold!important
}


/*=======================RODAPÉ==========================*/
.site-footer {
  background: #081534;
  color: #fff;
  font-size: 0.97em;
}

.footer-container {
  max-width: 1200px;
  margin: auto;
  display: flex;
  gap: 48px;           /* Mais espaço entre colunas */
  flex-wrap: wrap;
  padding-top: 40px;
  padding-bottom: 18px; /* Espaço extra antes da barra preta */
}

.footer-col {
  flex:1;
  min-width:200px;
}

.footer-col strong {
   font-family:'Times New Roman',serif;font-size:1.08em;color:#fff
}
.footer-col ul {
   list-style:none;padding-left:0;margin-top:.8em;margin-bottom:.8em;font-size:.96em;
}
.footer-col li {margin-bottom:.32em;}
.footer-copy {margin-top:.7em;font-size:.93em;color:#a9a9a9;}

.footer-social-icons a {
   color:#fff !important;          /* Links em branco */
   font-size:1.45em;
   margin-right:.5em;
   transition:.15s color
}
.footer-social-icons a:hover {color:#F2C94C !important;}

.conversar-titulo {
   background:#F2C94C;color:#081534;font-weight:bold;padding:.35em .85em;border-radius:3px;display:inline-block;margin-bottom:.5em;font-family:'Lato',Arial,sans-serif;font-size:.98em;
}
.footer-col-conversar p {font-size:.96em;margin-top:.6em;}

.footer-col-politica a {
    color:#fff !important;           /* Links em branco */
    text-decoration:none;
    font-size:.95em;
    display:block;
    margin-bottom:.22em
}
.footer-col-politica a:hover {color:#F2C94C;text-decoration:underline;}
.footer-col-politica img {margin-top:.7em;border-radius:8px;max-width:90px;}

@media (max-width:900px){
 .footer-container{flex-direction:column;gap:18px;}
}

/* Barra preta final */
.footer-barra-preta {
   background:#000;
   color:#fff;
   text-align:center;
   padding:14px 0 12px 0;      /* Mais espaço vertical */
   font-size:.96em;
   margin-top:10px;            /* Espaço extra acima da barra */
}