/* =======================================================
   PREVENÇÃO DE FOUC (Menu invisível até o site carregar)
   ======================================================= */
html {
    scroll-behavior: smooth;
    height: 100%;
    -webkit-text-size-adjust: 100%;
}


body {
  /*font-family: 'Roboto', Arial, sans-serif;*/
  font-family: 'Poppins', sans-serif;
  /*font-family: 'Nunito', sans-serif;*
  /*font-family: 'Rubik', sans-serif;*/
 /* font-family: 'Comfortaa', sans-serif;*/
 /*display: flex;*/
    flex-direction: column;
    min-height: 100vh; /* 🔥 ESSENCIAL */
    margin: 0;
    overflow-x: hidden;



}


main {
    flex: 1; /* empurra o footer pra baixo */
}

/*header {
    visibility: hidden;
}*/

/* Quando a página carregar, o JS adiciona .menu-ready ao body */
body.menu-ready header {
    visibility: visible;
}


/* Força font-display nas fontes externas */
@font-face {
  font-family: "Font Awesome 6 Brands";
  font-display: swap;
}

@font-face {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-display: swap;
}

@font-face {
  font-family: "bootstrap-icons";
  font-display: swap;
}

#menu-fixo {
    padding-top: env(safe-area-inset-top);
}

#exames {
    scroll-margin-top: 140px;
    font-family: 'Poppins', sans-serif;
    position: relative;
    width: 100%;
    /*max-height: 100vh; /* garante área mesmo com pouco conteúdo */
    overflow: hidden;        /* 🔥 corta o bg NO FINAL */
}



#sobre-nos {
    padding: 40px 40px;
}


.text-white {font-weight: 500; color: white;}




/*.col-esquerda {
    display: flex;
    justify-content: left;
}

.col-direita {
    display: flex;
    justify-content: right;
}*/



.col-esquerda {
    display: flex;
    justify-content: flex-start;
}

.col-direita {
    display: flex;
    justify-content: flex-end;
}

/* menu */

/* ============================
      MENU — ESTILOS GERAIS
============================ */

.nav-link {
    font-size: 17px;
    font-weight: 500;
    color: #333 !important;
    transition: color 0.3s ease;
}

.nav-link:hover {
    color: #0d6efd !important;
}

.menu-btn-exame {
    background: #34448c;
    color: #fff;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.menu-btn-exame:hover {
    background: #00ffae !important;
    color: #34448c !important;
    transform: scale(1.08);
}


.offset-menu{height:170px;}

/* ============================
   DROPDOWN — DESKTOP (≥992px)
============================ */

@media (min-width: 992px) {

    .navbar .dropdown-menu {
        display: block;
        opacity: 0;
        visibility: hidden;
        transform: translateY(10px);

        transition:
            opacity 0.35s ease,
            transform 0.35s ease,
            visibility 0s linear 0.35s;

        pointer-events: none;
    }

    .navbar .dropdown.show .dropdown-menu,
    .navbar .dropdown:hover .dropdown-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        transition-delay: 0s;
        pointer-events: auto;
    }
}

/* ============================
  DROPDOWN — MOBILE (<992px)
============================ */

@media (max-width: 991px) {
    .navbar .dropdown-menu {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
        display: none;
    }

    .navbar .dropdown-menu.show {
        display: block !important;
    }
}


/*menu fim*/


/* ============================
   ESTILOS GERAIS
============================ 

.nav-link {
    font-size: 17px;
    font-weight: 500;
    color: #333 !important;
    margin-right: 20px;
    transition: color 0.3s ease;
}

.nav-link:hover {
    color: #0d6efd !important;
}

.dropdown-menu {
    border-radius: 10px;
    padding: 10px;
}

.dropdown-item {
    padding: 8px 15px;
    font-size: 16px;
}

/* BOTÃO RESULTADO *
.menu-btn-exame {
    background: #34448c;
    color: #fff !important;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: .3s ease;
}

.menu-btn-exame:hover {
    background: #00ffae;
    color: #34448c !important;
    transform: scale(1.08);
}

/* ============================
   DROPDOWN — DESKTOP (>=992px)
============================ *
@media (min-width: 992px) {

    .navbar .dropdown-menu {
        display: block;
        opacity: 0;
        visibility: hidden;
        transform: translateY(10px);
        transition: .25s ease;
        pointer-events: none;
    }

    .navbar .dropdown:hover .dropdown-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
    }

    .offset-menu{height:140px;}
}

/* ============================
   DROPDOWN — MOBILE (<992px)
============================ *
@media (max-width: 991px) {

    .navbar .dropdown-menu {
        display: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
        transition: none !important;
    }

    .navbar .show > .dropdown-menu {
        display: block !important;
    }

    .offset-menu{height:120px;}
}

*/


.botao-jornada {padding: 20px; display: flex;
    justify-content: center;
    align-items: center;}

/* ============================= */
/* BANNER (SLIDER)               */
/* ============================= */

#banner {
    width: 100%;
    aspect-ratio: 1920 / 600;
    overflow: hidden;
    position: relative;
    margin-top: -32px;
}

#banner-desktop {
    width: 100%;
    aspect-ratio: 1920 / 600;
    overflow: hidden;
    position: relative;
    margin-top: -32px;
    display: none;
}

#banner-mobile {
    width: 100%;
    aspect-ratio: 370 / 370;
    overflow: hidden;
    position: relative;
    margin-top: -2px;
    display: none;
    position: relative;
    z-index: 200;
}

/* Container do slider */
.banner-slider {
    width: 100%;
    height: 100%;
    position: relative;
}

/* SLIDE — agora com animação corrigida */
.banner-slide {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 100%; /* sempre começa fora da tela, à direita */
    opacity: 0;
    transition: left 0.6s ease, opacity 0.6s ease;
}

/* Slide visível */
.banner-slide.active {
    left: 0;
    opacity: 1;
}

/* Slide que está saindo pela esquerda */
.banner-slide.exit-left {
    left: -100%;
    opacity: 0;
}

/* Slide entrando pela direita */
.banner-slide.enter-from-right {
    left: 0;
    opacity: 1;
}

/* Imagem ou vídeo */
.banner-media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}



/* Texto + botão centralizados */
.banner-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

/* Título */
.banner-content h2 {
    color: #fff;
    font-size: 32px;
    text-transform: uppercase;
    font-weight: 800;
    text-shadow: 0 2px 5px rgba(0,0,0,0.6);
    margin-bottom: 15px;
}

/* Botão dentro do banner */
.banner-btn {
    display: inline-block;
    background: #34448c;
    color: #fff;
    padding: 12px 30px;
    border-radius: 50px;
    font-size: 18px;
    text-decoration: none;
    font-weight: 600;
    transition: transform .3s ease, background-color .3s ease;
}

/* Zoom */
.banner-btn:hover {
    transform: scale(1.08);
    background: #00ffae;
    color: #34448c;
}

/* Setas */
.banner-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 12px;
    font-size: 22px;
    color: #fff;
    cursor: pointer;
    background: rgba(0,0,0,0.3);
    border-radius: 40%;
    transition: 0.3s;
    z-index: 100;
}

.banner-arrow:hover {
    background: rgba(0,0,0,0.6);
}

.banner-arrow.left {
    left: 15px;
}

.banner-arrow.right {
    right: 15px;
}

/* Bolinhas */
.banner-dots {
    position: absolute;
    bottom: 15px;
    width: 100%;
    text-align: center;
}

.banner-dots span {
    height: 12px;
    width: 12px;
    margin: 0 5px;
    background: rgba(255,255,255,0.6);
    display: inline-block;
    border-radius: 50%;
    cursor: pointer;
    transition: 0.3s;
}

.banner-dots .active {
    background: #00ffae;
}




/* RESPONSIVO — remove inteiro no mobile */
@media (max-width: 768px) {
    #bannerx {
        display: none !important;
    }

    #banner-mobilex {
        display: none; !important;
    }
}


/* RESPONSIVO — remove inteiro no mobile */
@media (max-width: 768px) {
    #bannerx {
        display: none !important;
    }

    #banner-mobilex {
        display: none; !important;
    }

    #bannerXX {
    min-height: 60vh;
    }
}

/* Smartphones pequenos */
@media (max-width: 550px) {
    #bannerx {
        display: none !important;
    }

    #banner-mobilex {
        display: block; !important;
    }

    #banner-mobilex {
    width: 100%;
    aspect-ratio: 370 / 370;
    overflow: hidden;
    position: relative;
    margin-top: -42px;
 
    }

    #bannerXX {
    min-height: 60vh;
    }
}


/* Smartphones pequenos */
@media (max-width: 480px) {
    #bannerx {
        display: none !important;
    }

    #banner-mobilex {
        display: block; !important;
    }

    #banner-mobilex{
    width: 100%;
    aspect-ratio: 370 / 370;
    overflow: hidden;
    position: relative;
    margin-top: -42px;
 
    }

    /*.banner-arrow { display:none; }*/

    #bannerXX{
    min-height: 60vh;
    }
}

/*fim banner*/

/* Header CSS */
/*#top-header {
    background: #34448c;
    height: 35px;
    display: flex;
    align-items: center;
    color: #fff;
}*/

/*#top-header {
    background: #34448c;
    min-height: 35px;      /* altura mínima *
    padding: 6px 0;        /* permite crescer *
    display: flex;
    align-items: center;
    color: #fff;
}

*/

a[href^="tel"] {
    /*color: inherit;*/
    text-decoration: none;
    /*color: #fff;      /* ou sua cor */
    font-weight: 500;
    color: currentColor;
}

a[href^="tel"]:hover {
    /*color: inherit;*/
    color: currentColor;
    text-decoration: none;
}

#top-header {
    background: #34448c;
    min-height: 25px;
    padding: 3px 0;
    display: flex;
    align-items: center;
    color: #fff;
}








.header-col {
    text-align: center;
}

.teste {
    text-align: center;
    font-weight: 300;
}

.header-col .line-1 i,
.header-col .line-2 i {
    font-size: 16px;
}

/* Centralizar ícone + email na primeira linha */
.line-1 {
display: flex !important;
justify-content: center;
align-items: center;
}

.email-link {
    color: #fff;
    text-decoration: none;
    transition: 0.3s;
}
.email-link:hover {
    color: #00ffae;
}

.social-icons-b {
    display: flex;
    justify-content: center;
}

.social-icons-b a {
    color: #000;
    font-size: 18px;
    transition: 0.3s;
    margin-left: 10px;

}
.social-icons-b a:hover {
    color: #00ffae;
}

.social-icons {
    display: flex;
    justify-content: center;
}

.social-icons a {
    color: #fff;
    font-size: 18px;
    transition: 0.3s;
}
.social-icons a:hover {
    color: #00ffae;
}

.contacts .contact-item {
    margin-right: 15px;
    cursor: pointer;
    transition: 0.3s;
}
.contacts .contact-item:hover {
    color: #00ffae;
}



/* ===============================*/
/* Imagens Fotos Tamanhos*/
/* ===============================*/
.img-small {
    width: 120px;
    height: auto;
}

.img-medium {
    width: 250px;
    height: auto;
}

.img-large {
    width: 500px;
    height: auto;
}

.img-square-150 {
    width: 150px;
    height: 150px;
    object-fit: cover; /* mantém proporção cortando as bordas */
}

.img-small-10 {
    width: 10%;
    height: auto;
    margin-bottom: 25px;
}

.img-small-20 {
    width: 20%;
    height: auto;
    margin-top: 15px;
    margin-bottom: 10px;
}

.img-medium-30 {
    width: 30%;
    height: auto;
    margin-bottom: 15px;
}

.img-large-50 {
    width: 50%;
    height: auto;
}

.img-square-50 {
    width: 50%;
    height: 50%;
    object-fit: cover; /* mantém proporção cortando as bordas */
}


/* ============================= */
/* RESPONSIVIDADE DO HEADER */
/* ============================= */


@media (max-width: 992px) { /* Tablets */


.container {
flex-direction: column !important;
text-align: center;
}


.header-col {
width: 100% !important;
margin-bottom: 20px;
}
}


@media (max-width: 768px) { /* Celulares */



.header-inner {
flex-direction: column;
align-items: center;
}


.header-col {
width: 100% !important;
}


.contacts .contact-item {
display: block;
margin: 5px 0;
}


.social-icons {
justify-content: center !important;
}

.h-redes-sociais{display: none;}
}




/*hidtoria*/
/* =========================== */
/* SESSION SOBRE NOS fundo verde*/
/* =========================== */

.sessao-sobre-nos-top{
    background: #ffffff;
    margin-top: -60px;
    position: relative;
    overflow: hidden;
}

.sobre-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-sobre-nos.webp");*/
    background-image: var(--bg-bg7);
    background-color: var(--cor-7);
    
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}


#sessao-baixo {
    /*background: #e3edda;*/
    z-index: 10;
}

.container-baixo {
    /*background: #e3edda;*/
    z-index: 10;
}

#sessao-historia-fundo-verde {
    background: #e3edda;
    z-index: 10;
}

#sessao-pagina2 {
    z-index: 12;
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

/* CAMADA DE BACKGROUND */
.pagina2-bg {
    position: absolute;
    inset: -20%; /* 🔥 maior área para permitir movimento */
    z-index: 0;

    /*background-image: url('../midia/full_df9076acf0ac908d0baaff904aae0577_1769548721.webp');*/
    background-image: var(--bg-bg1);
    background-color: var(--cor-1);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    transform: translateY(0) scale(1);
    transition: transform 0.05s linear;
    will-change: transform;
}

.pagina2-container {
    position: relative;
    z-index: 2; /* 🔑 texto acima do BG */
    width: 1000px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    
}

/* Título */
.titulo-pagina2 {
    font-size: 25px;
    color: #011754;
    font-weight: 500;
    text-align: left;
}

.descricao-pagina2,
.descricao-pagina2 p {
    font-size: 18px;
    color: #000;
    text-align: left;
    line-height: 1.3 !important;
    margin-bottom: 8px;
}

#sessao-jornada {
    z-index: 12;
    background: #ffffff;
    position: relative;
    overflow: hidden;
}



/* CAMADA DE BACKGROUND */
.jornada-bg {
    position: absolute;
    inset: -20%; /* 🔥 maior área para permitir movimento */
    z-index: 0;

    /*background-image: url('../midia/full_df9076acf0ac908d0baaff904aae0577_1769548721.webp');*/
    background-image: var(--bg-bg1);
    background-color: var(--cor-1);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    transform: translateY(0) scale(1);
    transition: transform 0.05s linear;
    will-change: transform;
}

.jornada-container {
    position: relative;
    z-index: 2; /* 🔑 texto acima do BG */
    width: 1000px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    
}


/* Título */
.titulo-jornada {
    font-size: 25px;
    color: #011754;
    font-weight: 500;
    text-align: left;
}

.descricao-jornada,
.descricao-jornada p {
    font-size: 18px;
    color: #000;
    text-align: left;
    line-height: 1.3 !important;
    margin-bottom: 8px;
}

/* Título */
.titulo-historia-fundo-verde {
    font-size: 33px;
    color: #7fb144;
    font-weight: 700;
    text-align: left;
}

/* Texto */
.descricao-historia-fundo-verde {
    font-size: 20px;
    color: #333;
    text-align: left;
    line-height: 1.6;
}

/* Botão */
.btn-jornada {
    background: #011754;
    color: #fff;
    padding: 12px 85px 12px 85px;
    border-radius: 15px;
    font-size: 17px;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
    transition: transform 0.3s ease, background-color 0.3s ease;
    justify-content: center;

}

/* Botão */
.btn-baixo {
    background: var(--btn-baixo-bg);
    color: var(--btn-baixo-cor);
    padding: 10px 30px;
    border-radius: var(--borda-0);
    font-size: 20px;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

/* Botão */
.btn-historia-fundo-verde {
    background: #7fb144;
    color: #fff;
    padding: 10px 30px;
    border-radius: 50px;
    font-size: 20px;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.btn-historia-fundo-verde:hover {
    background: #34448c;
    transform: scale(1.15);
}

/* Imagem com fade-in lateral */
/*.img-historia {
    width: 100%;
    border-radius: 10px;
    opacity: 0;
    transform: translateX(60px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}*/

/* Imagem com fade-in lateral (começa fora da tela) */
.img-historia-fundo-verde {
    width: 80%;
    border-radius: 10px;
    opacity: 0;
    transform: translateX(150px); /* aumentei a distância */
    transition: opacity 1.2s ease-out, transform 1.2s ease-out;

    /*max-width: 600px;   /* tamanho máximo desejado */
    /*height: auto;       /* mantém proporção */
    display: block;
    margin-bottom: 50px;
    margin-left: auto;
    margin-right: auto;
    max-width: 80%;
    height: auto;
}

/* Classe que ativa o fade */
.fade-in-active-fundo-verde {
    opacity: 1 !important;
    transform: translateX(0) !important;
}


.fade-right-fundo-verde {
    opacity: 0 !important;
    transform: translateX(20px);
    transition: opacity .8s ease-out, transform .8s ease-out;
}

.fade-right-fundo-verde.animate {
    opacity: 1 !important;
    transform: translateX(0);
}



/* =========================== */
/* RESPONSIVIDADE */
/* =========================== */

@media (max-width: 992px) {
    .titulo-historia-fundo-verde,
    .descricao-historia-fundo-verde {
        text-align: center;
    }
}


@media (max-width: 768px) {
    .img-historia-fundo-verde {
        max-width: 400px;
        margin-top: 20px;
    }
    #sessao-jornada {
        background: #ffffff;
        position: relative;
        overflow: hidden;
        margin-top: -60px;
    }

    /* Título */
    .titulo-jornada {
        font-size: 25px;
        color: #011754;
        font-weight: 500;
        text-align: center;
    }

    .descricao-jornada,
    .descricao-jornada p {
        font-size: 18px;
        color: #000;
        text-align: center  !important;
        line-height: 1.3 !important;
        margin-bottom: 8px;
    }

    .botao-jornada {
        text-align: center;
    }
}

@media (max-width: 480px) {
    .img-historia-fundo-verde {
        max-width: 100%;
        margin-top: 20px;
    }
    #sessao-jornada {
        background: #ffffff;
        position: relative;
        overflow: hidden;
        margin-top: -60px;
    }
    .descricao-jornada,
    .descricao-jornada p {
        font-size: 18px;
        color: #000;
        text-align: center  !important;
        line-height: 1.3 !important;
        margin-bottom: 8px;
    }

    .botao-jornada {
        text-align: center;
    }
}
/*fim sobre nos */

/*hidtoria*/
/* =========================== */
/* SESSION HISTÓRIA */
/* =========================== */

#sessao-historia {
    background: #fff;
}

/* Título */
.titulo-historia {
    font-size: 33px;
    color: #7fb144;
    font-weight: 700;
    text-align: left;
}

/* Texto */
.descricao-historia {
    font-size: 20px;
    color: #333;
    text-align: left;
    line-height: 1.6;
}

/* Botão */
.btn-historia {
    background: #7fb144;
    color: #fff;
    padding: 10px 30px;
    border-radius: 50px;
    font-size: 20px;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.btn-historia:hover {
    background: #34448c;
    transform: scale(1.15);
}

/* Imagem com fade-in lateral */
/*.img-historia {
    width: 100%;
    border-radius: 10px;
    opacity: 0;
    transform: translateX(60px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}*/

/* Imagem com fade-in lateral (começa fora da tela) */
.img-historia {
    width: 100%;
    border-radius: 10px;
    opacity: 0;
    transform: translateX(150px); /* aumentei a distância */
    transition: opacity 1.2s ease-out, transform 1.2s ease-out;
}

/* Classe que ativa o fade */
.fade-in-active {
    opacity: 1 !important;
    transform: translateX(0) !important;
}


.fade-right {
    opacity: 0 !important;
    transform: translateX(20px);
    transition: opacity .8s ease-out, transform .8s ease-out;
}

.fade-right.animate {
    opacity: 1 !important;
    transform: translateX(0);
}



/* =========================== */
/* RESPONSIVIDADE */
/* =========================== */

@media (max-width: 992px) {
    .titulo-historia,
    .descricao-historia {
        text-align: center;
    }
}

@media (max-width: 768px) {
    .img-historia {
        margin-top: 20px;
    }
}
/*fim historia */

.sessao-icons {
  position: relative;
  width: 100%;
  padding: 30px 0;
  overflow: hidden; /* agora funciona */
  /*background-color: var(--cor-bg-v);*/
  /*background-color: #ccc;*/
}


.icons-bg {
    position: absolute;
    inset: 0; /* top:0 right:0 bottom:0 left:0 */
    z-index: 10;

    /*background-image: var(--bg-bg9);
    background-color: var(--cor-9);*/

    /*background-image: ;*/
   /* background-color: #ccc;*/
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    /*transform: scale(1.2); /* aumenta sem gerar scroll */
    transform: scale(1.4) translateY(0);
    will-change: transform;
    pointer-events: none;
}


.icons-container {
    
  position: relative;
  z-index: 52; /* 🔑 texto acima do BG */
  width: 1000px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  color: black;
  margin: 0 auto;
 
}


/* Estado inicial: invisível e deslocado */
.icons-col {
  /*opacity: 0;*/
  /*transform: translateY(30px);*/
  transition: opacity 1.1s ease-out, transform 1.1s ease-out;
  width: 33%;
  min-width: 280px; /* evita que fique espremido */
  text-align: center;
  /*color: var(--cor-fonte-v); /*#7fb144;*/
  color: var(--cor-fonte-v); /*#7fb144;*/
 
  flex: 1; /* melhora a distribuição */
}


/* Quando aparecer */
.icons-col.show {
  opacity: 1;
  transform: translateY(0);
}

/* Ícones */
.icons-col .icon i {
  font-size: 50px;
  margin-bottom: 10px;
}

/* Título */
.icons-col .titulo {
  font-size: 18px;
  font-weight: 500;
}


/* Título */
.icons-col .descricao {
  font-size: 16px;
  font-weight: 300;
}


/* Título */
.icons-col .titulo-valores {
  font-size: 26px;
  font-weight: 600;
}


/* DESCRICAO VALORES */
.icons-col .descricao-valores {
  margin-top: 10px;
  font-size: 16px;
  /*color: #494949;*/
  
}


/* =========================== */
/* SESSION VALORES */
/* =========================== */
.sessao-valores {
  position: relative;
  width: 100%;
  padding: 30px 0;
  overflow: hidden; /* agora funciona */
  background-color: var(--cor-bg-v);
}

.valores-bg {
    position: absolute;
    inset: 0; /* top:0 right:0 bottom:0 left:0 */
    z-index: 10;

    background-image: var(--bg-bg9);
    background-color: var(--cor-9);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    /*transform: scale(1.2); /* aumenta sem gerar scroll */
    transform: scale(1.4) translateY(0);
    will-change: transform;
    pointer-events: none;
}



.valores-container {
    
  position: relative;
  z-index: 52; /* 🔑 texto acima do BG */
  width: 1000px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  color: black;
  margin: 0 auto;
 
}

/* Estado inicial: invisível e deslocado */
.valores-col {
  /*opacity: 0;*/
  /*transform: translateY(30px);*/
  transition: opacity 1.1s ease-out, transform 1.1s ease-out;
  width: 33%;
  min-width: 280px; /* evita que fique espremido */
  text-align: center;
  color: var(--cor-fonte-v); /*#7fb144;*/
 
  flex: 1; /* melhora a distribuição */
}

/* Quando aparecer */
.valores-col.show {
  opacity: 1;
  transform: translateY(0);
}

/* Ícones */
.valores-col .icon i {
  font-size: 50px;
  margin-bottom: 10px;
}

/* Título */
.valores-col .titulo {
  font-size: 18px;
  font-weight: 500;
}


/* Título */
.valores-col .descricao {
  font-size: 16px;
  font-weight: 300;
}


/* Título */
.valores-col .titulo-valores {
  font-size: 26px;
  font-weight: 600;
}


/* DESCRICAO VALORES */
.valores-col .descricao-valores {
  margin-top: 10px;
  font-size: 16px;
  /*color: #494949;*/
  
}


/**/

/* =========================== */
/* SESSION SESSION 5 */
/* =========================== */
.session5 {
  width: 100%;
  background-color: var(--cor-fundo-s5); /* leve tom verde claro 7fb14433 */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px 0;
}

.session5-container {
  width: 1140px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
}

/* Estado inicial: invisível e deslocado */
.session5-col {
    position: relative;
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.1s ease-out, transform 1.1s ease-out;
  text-align: center;
  color: var(--cor-fonte-pq); /*#7fb144;*/
  flex: 1; /* melhora a distribuição */
  background: var(--cor-porque-fundo);;
  padding: 10px;
  border-radius: 5px;
  /*width: 100%;
  min-width: auto;*/
  flex: 0 0 calc(50% - 15px);
  max-width: calc(50% - 15px);
  min-width: unset;
}

/* Quando aparecer */
.session5-col.show {
  opacity: 1;
  transform: translateY(0);
}

/* Ícones */
.session5-col .icon i {
  font-size: 50px;
  margin-bottom: 10px;
}

/* Título */
.session5-col .title {
  font-size: 20px;
  font-weight: 500;
}


/* Título */
.session5-col .descricao {
  font-size: 18px;
  font-weight: 300;
}


/* Título */
.session5-col .title-valores {
  font-size: 26px;
  font-weight: 600;
}


/* DESCRICAO VALORES */
.session5-col .descricao-valores {
  margin-top: 10px;
  font-size: 20px;
  color: #494949;
  padding: 10px;
}

/* =========================== */
/* RESPONSIVIDADE */
/* =========================== */

/* Tablets */
@media (max-width: 992px) {
  .session5-container {
    gap: 40px;
  }
  
  .session5-col {
    width: 45%;
  }
}

/* Celulares */
@media (max-width: 768px) {
    .session-porque-container {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    align-items: stretch;   /* MUITO IMPORTANTE */
    gap: 20px;              /* opcional */
  }

  .session5-container {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }

  .session5-col {
    width: 100%;  /* vira uma linha */
    max-width: 500px;
  }

  .session5-col .title {
    font-size: 18px;
  }
}


/* Celulares */
@media (max-width: 580px) {
  .session-porque-container {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    align-items: stretch;   /* MUITO IMPORTANTE */
    gap: 20px;              /* opcional */
  }

  .session5-container {
    flex-direction: column;
    gap: 40px;
   
    align-items: stretch; /* ← ESSENCIAL */
  }

  .session5-col {
    
    width: 100%;
    max-width: none; /* ← importante no mobile */
  }

  .session5-col .title {
    font-size: 18px;
  }
}
/**/



/*servicos*/
/* =========================== */
/* SESSÃO SERVIÇOS */
/* =========================== */

.servicos-section {
    width: 100%;
    background: var(--cor-fundo-ss);
    color: var(--cor-texto-ss);
    padding: 40px 0;
    display: flex;
    justify-content: center;
}


.servicos-container {
    width: 1200px;
    max-width: 95%;
    text-align: center;
}

.servicos-title {
    font-size: 32px;
    font-weight: bold;
    color: var(--cor-texto-titulo-ss);
    margin-bottom: 35px;
}

/* GRID RESPONSIVO COM FLEX */
.servicos-grid {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 25px;
    flex-wrap: wrap; /* PERMITE QUEBRA NATURAL */
}

.servico-item {
    flex: 1 1 calc(25% - 25px);
    min-width: 230px; /* Evita esmagar no tablet */
    max-width: 300px;
    border: 2px solid var(--cor-borda-ss);
    border-radius: 20px;
    padding: 25px 15px;
    text-align: center;
    transition: transform 0.3s ease;
}

/* Hover */
.servico-item:hover {
    transform: scale(1.05);
}

/* Imagens */
.servico-item img {
    width: 180px;
    height: auto;
    margin-bottom: 15px;
}

/* Título */
.servico-item p {
    font-size: 20px;
    font-weight: 600;
}

/* =========================== */
/* RESPONSIVIDADE */
/* =========================== */

/* Tablets */
@media (max-width: 992px) {
    .servico-item {
        flex: 1 1 calc(45% - 25px); /* 2 por linha */
        max-width: 100%;
    }

    .servico-item p {
        font-size: 18px;
    }
}

/* Celulares */
@media (max-width: 768px) {

    .servicos-title {
        font-size: 28px;
    }

    .servico-item {
        flex: 1 1 100%;  /* 1 por linha */
        max-width: 100%;
    }

    .servico-item p {
        font-size: 18px;
    }
}



.titulo-sobre-nos-topo {
    width: 1200px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    z-index: 15;

}

/* COLUNA ESQUERDA */
.titulo-sobre-nos-texto {
    flex: 1 1 50%;
    margin-top: 20px;   
    z-index: 16;
}

.titulo-sobre-nos-titulo {
    color: #011754;
    font-size: 32px;
    margin-bottom: 20px;
    text-align: center;
    z-index: 17;
}

.col-sobre {
    display: flex;
    align-items: flex-start;   /* topo */
}

/*
.descricao-sobre-top {
    display: flex;
    align-items: flex-start;   /* topo no eixo vertical *
    justify-content: center;   /* centro no eixo horizontal (opcional) *
    text-align: left;
    column-count: 1;
    column-gap: 0;
    columns: 1;
}*/


 .sobre-conteudo{margin-top:30px; z-index: 18;}

/*.descricao-sobre-top,*/
.descricao-sobre-top  {
    position: relative;
    column-count: auto !important;
    columns: auto !important;
    column-gap: normal !important;
    width: 90%;
    z-index: 20;
}


#qualidade-estrutura {
    /*width: 100%;*/
    background: #ffffff;
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

/* CAMADA DE BACKGROUND */
.qualidade-bg {
    position: absolute;
    inset: -20%; /* 🔥 maior área para permitir movimento */
    z-index: 0;

    /*background-image: url("../imagens/bg-04-sobre-nos.webp");*/
    background-image: var(--bg-bg8);
    background-color: var(--cor-8);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    transform: translateY(0) scale(1);
    transition: transform 0.05s linear;
    will-change: transform;
}

.qualidade-container {
    position: relative;
    z-index: 2; /* 🔑 texto acima do BG */
    width: 1000px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;

}

/* COLUNA ESQUERDA */
.qualidade-texto-t {
    position: relative;
    z-index: 3; /* segurança */
    flex: 1 1 50%;
    align-items: center;
    justify-content: flex-start;
    text-align: center;

    /*background: rgba(255,255,255,0.85);*/

}

/* COLUNA ESQUERDA */
.qualidade-texto {
    position: relative;
    z-index: 3; /* segurança */
    /*flex: 1 1 50%;*/
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    display: flex;
    flex-wrap: wrap; /* 🔥 ISSO resolve */
    /*background: rgba(255,255,255,0.85);*/
    padding: 0 20px;

}

.qualidade-titulo {
    color: #011754;
    font-size: 25px;
    margin-bottom: 20px;
    text-align: center;
}

/* COLUNA DIREITA – IMAGENS */
.qualidade-imagem {
    /*flex: 1 1 50%;
    
    flex-wrap: wrap;           /* AUTOMÁTICO */
    display: flex;
    flex-wrap: wrap; /* 🔥 ISSO resolve */
    align-items: center;     /* centro vertical */
    justify-content: center;
    margin-left: 20px;
    
}

/* Imagens desalinhadas (dinâmicas) */
.img-qualidade {
    
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    
    
}


@media (max-width: 768px) {

    .qualidade-container {
        flex-direction: column; /* empilha */
        text-align: center;
    }

    .qualidade-texto,
    .qualidade-imagem {
        width: 100%;
    }

    .qualidade-imagem img {
        max-width: 100%;
        height: auto;
        margin-top: 20px;
    }
}

/*---------------------------*/
.session-pagina2 {
  width: 100%;
  /*background-color: var(--cor-porque-fundo2); /* leve tom verde claro 7fb14433 */
  display: flex;
  justify-content: center;
  align-items: center;
  /*padding: 30px 30px;*/
  padding: 50px 50px 60px;
  position: relative;
  /*overflow: hidden;*/
  /*background-color: yellow !important;*/

}

.pagina2b-bg {
    position: absolute;
    bottom: 20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    
    background-color: var(--cor-4);
    background-image: var(--bg-bg4);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    /*top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;*/
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    max-height: 150vh; /* limite absoluto */
}


.session-pagina2b-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;


}


.pagina2b-container {
    width: 1200px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    
}

/* COLUNA ESQUERDA */
.pagina2b-texto {
    flex: 1 1 50%;
}

.pagina2b-titulo {
    color: var(--cor-porque-titulo2);
    font-size: 32px;
    margin-bottom: 20px;
    text-align: center;
    z-index: 500;
}

.pagina2b-texto p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    color: #000;
}


.pagina2b-texto2 p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    color: #000;
    text-align: center;
}


/* Estado inicial: invisível e deslocado */
.pagina2b-col {
  position: relative;
  /*opacity: 0;*/
  transform: translateY(30px);
  transition: opacity 1.1s ease-out, transform 1.1s ease-out;
  text-align: center;
  color: var(--cor-fonte-pq2); /*#7fb144;*/
  flex: 1; /* melhora a distribuição */
  background: var(--cor-porque-fundo2);
  padding: 10px;
  border-radius: 5px;
  /*width: 100%;
  min-width: auto;*/
  flex: 0 0 calc(50% - 15px);
  max-width: calc(50% - 15px);
  min-width: unset;
}

/* Quando aparecer */
.pagina2b-col.show {
  opacity: 1;
  transform: translateY(0);
}

/* Ícones */
.pagina2b-col .icon i {
  font-size: 50px;
  margin-bottom: 10px;
}

/* Título */
.pagina2b-col .title {
  font-size: 20px;
  font-weight: 500;
}


/* Título */
.pagina2b-col .descricao {
  font-size: 18px;
  font-weight: 300;
}


/* Título */
.pagina2b-col .title-valores {
  font-size: 26px;
  font-weight: 600;
}


/* DESCRICAO VALORES */
.pagina2b-col .descricao-valores {
  margin-top: 10px;
  font-size: 20px;
  color: #494949;
  padding: 10px;
}

/*---------------------------*/

.session-porque {
  width: 100%;
  /*background-color: var(--cor-porque-fundo);*/ /* leve tom verde claro 7fb14433 */
  display: flex;
  justify-content: center;
  align-items: center;
  /*padding: 30px 30px;*/
  padding: 50px 50px 60px;
  position: relative;
  /*overflow: hidden;*/
  

}


.porque-bg {
    position: absolute;
    bottom: 20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    
    background-color: var(--cor-4);
    background-image: var(--bg-bg4);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    /*top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;*/
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    max-height: 150vh; /* limite absoluto */
}

.session-porque-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;


}


.porque-container {
    width: 1200px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    
}

/* COLUNA ESQUERDA */
.porque-texto {
    flex: 1 1 50%;
}

.porque-titulo {
    color: var(--cor-porque-titulo);
    font-size: 32px;
    margin-bottom: 20px;
    text-align: center;
}

.porque-texto p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    color: #000;
}


.porque-texto2 p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    color: #000;
    text-align: center;
}


/*////pagina2*/
#nossa-pagina2 {
    width: 100%;
    background: #ffffff;
    padding: 30px 0;
    position: relative;
    overflow: hidden;

}

/*.pagina2-bg2 {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*
    background-image: var(--bg-bg3);
    background-color: var(--cor-3);
    /*background-size: cover;*
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto *
}*/

.pagina2-bg2 {
    position: absolute;
    inset: 0; /* substitui top/left/right/bottom */
    z-index: 0;

    background-image: var(--bg-pg2);
    background-color: var(--cor-3);

    background-size: 100% auto;   /* 👈 largura fixa, altura proporcional */
    background-position: top center;
    background-repeat: no-repeat;

    pointer-events: none;
}

/*.pagina2-container2 {
    position: relative;
    width: 1200px;
    max-width: 99%;
    margin: auto;

    /* FLEX RESPONSIVO *
    display: flex;
    z-index: 10;
    /*display: flex;*
    /*flex-wrap: wrap;           /* AUTOMÁTICO *
    
    justify-content: center;
    
    
    
}*/

.pagina2-container2 {
    position: relative;
    width: 1200px;
    max-width: 100%;
    margin: auto;
    display: flex;
    justify-content: center;
    z-index: 10;

    
}



/* COLUNA ESQUERDA */
.pagina2-texto2 {
    flex: 1 1 50%;
}


.pagina2-texto2 .post-conteudo img {
    max-width: 100% !important;
    height: auto !important;
    padding: 20px;
}

.pagina2-titulo2 {
    color: var(--cor-fonte-tit-est2);
    font-size: 32px;
    margin-bottom: 20px;
    text-align: center;
    margin: 10px;
    
}

/*.pagina2-texto2 p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    margin: 20px;
}*/

.pagina2-texto2 p {
    font-size: 18px;
    margin: 20px ;   /* 👈 remove margens agressivas */
    line-height: 1.7em;

}


/* COLUNA DIREITA – IMAGENS */
.pagina2-imagens2 {
    display: flex;
    flex-wrap: wrap;           /* AUTOMÁTICO */
    
    justify-content: center;
}



@media (max-width: 768px) {

    .pagina2-titulo2 {
        font-size: 24px;
        margin: 10px 0;
    }

    .pagina2-texto2 p {
        font-size: 16px;
        line-height: 1.6em;
    }

    /*.pagina2-bg2 {
        background-size: cover; 
    }*/

    /*.pagina2-bg2 {
        background-size: 180% auto; 
        background-position: top center;

    }*/

    .pagina2-bg2 {
        background-size: cover;
        transform: scale(1.25); /* aumenta a presença visual */
    }
}



/*fim servicos*/

/*estrutura*/
/* ================================ */
/* SESSÃO - NOSSA ESTRUTURA         */
/* ================================ */

#nossa-estrutura {
    width: 100%;
    background: #ffffff;
    padding: 60px 0;
    position: relative;
    overflow: hidden;

}

.laboratorio-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg3);
    background-color: var(--cor-3);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}

.estrutura-container {
    position: relative;
    width: 1200px;
    max-width: 99%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    z-index: 10;
    /*display: flex;*/
    /*flex-wrap: wrap;           /* AUTOMÁTICO */
    
    justify-content: center;
    
    
    
}

/* COLUNA ESQUERDA */
.estrutura-texto {
    flex: 1 1 50%;
}

.estrutura-titulo {
    color: var(--cor-fonte-tit-est);
    font-size: 32px;
    margin-bottom: 20px;
    text-align: center;
}

.estrutura-texto p {
    font-size: 18px;
    margin-bottom: 16px;
    line-height: 1.7em;
    color: #000;
}

/* COLUNA DIREITA – IMAGENS */
.estrutura-imagens {
    display: flex;
    flex-wrap: wrap;           /* AUTOMÁTICO */
    
    justify-content: center;
}

.img-wrap {
    width: 33%;
    aspect-ratio: 800 / 552;   /* 👈 reforço extra */
    padding: 1%;
}

.img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--borda-img);

    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
}


/* Imagens desalinhadas (dinâmicas) */
.img-estrutura20 {

    width: 33%;
    height: auto;              /* 👈 evita distorção */
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    /*margin-left: 1%;*/
    padding: 1%;
    aspect-ratio: 800 / 552;   /* 👈 reforço extra */
    
}
/* Imagens desalinhadas (dinâmicas) */
.img-estrutura21 {
    width: 31%;
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    margin-left: 3.1%;
}

/* Imagens desalinhadas (dinâmicas) */
.img-estrutura22 {
    width: 31%;
    border-radius:var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    margin-left: 3.1%;
}

/* Imagens desalinhadas (dinâmicas) */
.img-estrutura23 {
    width: 31%;
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    margin-left: 3.1%;
}

/* Imagens desalinhadas (dinâmicas) */
.img-estrutura24 {
    width: 31%;
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    margin-left: 3.1%;
}

/* Imagens desalinhadas (dinâmicas) */
.img-estrutura25 {
    width: 31%;
    border-radius: var(--borda-img);
    position: relative;
    opacity: 0;
    transform: translateX(120px);
    transition: opacity 1s ease, transform 1s ease;
    margin-bottom: 15px;
    margin-left: 3.1%;
}


/* Pequena variação de posicionamento */
.img-estrutura:nth-child(1) {
    margin-top: 30px;
    right: 10px;

}

.img-estrutura:nth-child(2) {
    margin-top: 60px;
    right: 10px;
}

.img-estrutura:nth-child(3) {
    margin-top: 5px;
    right: 10px;
}

.img-estrutura:nth-child(4) {
    margin-top: 40px;
    right: 10px;
}

.img-estrutura:nth-child(5) {
    margin-top: 5px;
    right: 10px;
}

.img-estrutura:nth-child(6) {
    margin-top: 40px;
    right: 10px;
}

/* EFEITO ATIVO */
.fade-in-active {
    opacity: 1 !important;
    transform: translateX(0) !important;
}

/* DELAYS */
.delay1 { transition-delay: 0.3s; }
.delay2 { transition-delay: 0.6s; }
.delay3 { transition-delay: 0.9s; }
.delay4 { transition-delay: 1.2s; }
.delay5 { transition-delay: 1.5s; }

/* ================================ */
/* RESPONSIVIDADE */
/* ================================ */

/* TABLETS */
@media (max-width: 992px) {

    .estrutura-container {
        flex-direction: column;
        gap: 50px;
        text-align: center;
    }

    .estrutura-imagens {
        /*display: grid;*/
        display: flex;
        flex-wrap: wrap;           /* AUTOMÁTICO */
        /*grid-template-columns: repeat(2, 1fr); /* 2 colunas */
        /*grid-template-columns: 1fr; /* 1 coluna */
        gap: 20px;                              /* espaçamento uniforme */
        width: 100%;
    }

    .img-estrutura {
        width: 100%;               /* ocupar a coluna */
        margin: 0 !important;      /* removemos margens personalizadas */
        right: 0 !important;       /* remove deslocamento lateral */
        margin-top: 0 !important;  /* remove desalinhamento vertical */
    }
}



/* CELULARES */
@media (max-width: 600px) {

    .estrutura-titulo {
        font-size: 28px;
    }

    .estrutura-texto p {
        font-size: 17px;
    }

    .estrutura-imagens {
        display: flex;
        flex-wrap: wrap;
        /*grid-template-columns: 1fr; /* 1 coluna */
        gap: 20px;                  /* espaçamento padrão */
        width: 100%;
    }

    .img-estrutura {
        width: 100%;
        margin: 0 !important;      /* remove offsets */
        right: 0 !important;
        margin-top: 0 !important;
    }

    .descricao-sobre-top {
        padding: 0 10px;   /* respiro interno */
        margin: 0;
        width: 100%;
        text-align: center;
        z-index: 21;
    }

    .descricao-sobre-top p {
        text-align: center;
        z-index: 22;
    }

    .img-estrutura20 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }

    .img-estrutura21 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }


    .img-estrutura25 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }
}


@media (max-width: 580px) {
    .session-pagina2b-container {


      width: 100%;
      max-width: 100%;
      flex-direction: column;
      align-items: stretch;   /* MUITO IMPORTANTE */
      gap: 20px;              /* opcional */
    }


    .pagina2b-container {
    flex-direction: column;
    gap: 40px;
   
    align-items: stretch; /* ← ESSENCIAL */
  }

  .pagina2b-col {
    width: 100%;  /* vira uma linha */
    max-width: 500px;
  }

  .pagina2b-col .title {
    font-size: 18px;
  }

  

  

  

}

/* CELULARES */
@media (max-width: 480px) {

    .estrutura-titulo {
        font-size: 28px;
    }

    .estrutura-texto p {
        font-size: 17px;
    }

    .estrutura-imagens {
        display: flex;
        flex-wrap: wrap;
        /*grid-template-columns: 1fr; /* 1 coluna */
        gap: 20px;                  /* espaçamento padrão */
        width: 100%;
    }

    .img-estrutura {
        width: 100%;
        margin: 0 !important;      /* remove offsets */
        right: 0 !important;
        margin-top: 0 !important;
    }

    .descricao-sobre-top {
        padding: 0 10px;   /* respiro interno */
        margin: 0;
        width: 100%;
        text-align: center;
        z-index: 25;
    }

    .descricao-sobre-top p {
        text-align: center;
    }

    .img-estrutura20 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }

    .img-estrutura21 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }

    .img-estrutura25 {
        width: 80%;
        border-radius: 10px;
        position: relative;
        opacity: 0;
        transform: translateX(120px);
        transition: opacity 1s ease, transform 1s ease;
        margin-bottom: 15px;
        margin-left: 3.1%;
    }
}

/*fim estrutura*/

/*convenios*/

.exames-section {
  font-family: 'Poppins', sans-serif;
  width: 100%;
  /*background: #E0F0C8;*/
  padding: 50px 50px 60px;
}

.exames-bg {
    position: absolute;
    /*bottom: -20%;*/
    z-index: 0;

    /*background-image: url("../imagens/bg-04-sobre-nos.webp");*/
    
    background-color: var(--cor-2);
    background-image: var(--bg-bg2) !important;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    max-height: 100vh; /* limite absoluto */
}

.exames-container {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  text-align: center;
  z-index: 90;

}


.exames-title {
  position: relative;
  font-size: 32px;
  color: #011754; /*011754*/
  margin-bottom: 30px;
  z-index: 100;
}



.convenios-section {
  width: 100%;
  /*background: #e3edda;*/
  padding: 50px 50px;
  position: relative;
  overflow: hidden;
}

.convenios-bg {
    position: absolute;
    bottom: 0%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg5);
    background-color: var(--cor-3);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}

.convenios-container {
  width: 1200px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 10;

}



.convenios-title {
  font-size: 32px;
  color: #7fb144;
  margin-bottom: 30px;
}

/* Estilizar os slides */
.splide__slide img {
  width: 180px;
  height: auto;
  object-fit: contain;
  border-radius: var(--borda-img);
  margin: 0 auto;
}

/* COLUNA DIREITA – IMAGENS */
.convenios-imagens {
    display: flex;
    flex-wrap: wrap;           /* AUTOMÁTICO */
    
    justify-content: center;
}


/* Estilizar os slides */
.convenios-imagens img {
  width: 300px;
  height: auto;
  object-fit: contain;
  /*margin: 0 auto;*/
  padding: 20px;
}


.exames-btn-area { margin-top: 40px; }

.convenios-btn-area { margin-top: 40px; }

.estrutura-btn-area { margin-top: 40px;   display: flex;
  justify-content: center; position: relative; z-index: 100;align-items: center;}

.pagina2-btn-area2 { margin-top: 40px;   display: flex;
  justify-content: center; position: relative; z-index: 100;
  align-items: center;}

  /* Botão */
.btn-pagina2 {
  display: inline-block;
  /*padding: 10px 35px;*/
  padding: 12px 85px 12px 85px;
  background: var(--cor-btn2);
  color: white;
  border-radius: 17px;
  font-size: 17px;
  text-decoration: none;
  transition: transform .3s ease, opacity .3s ease;
  text-align: center;
  justify-content: center;
} 

/* Botão */
.btn-estrutura {
  display: inline-block;
  /*padding: 10px 35px;*/
  padding: 12px 85px 12px 85px;
  background: var(--cor-btn);
  color: white;
  border-radius: 8px;
  font-size: 17px;
  text-decoration: none;
  transition: transform .3s ease, opacity .3s ease;
  text-align: center;
}

/* Botão */
.btn-exames {
  display: inline-block;
  /*padding: 10px 35px;*/
  padding: 12px 85px 12px 85px;
  background: #011754;
  color: white;
  border-radius: 8px;
  font-size: 17px;
  text-decoration: none;
  transition: transform .3s ease, opacity .3s ease;
}

/* Botão */
.btn-convenios {
  display: inline-block;
  /*padding: 14px 35px;*/
  padding: 12px 85px 12px 85px;
  background: #7fb144;
  color: white;
  border-radius: 8px;
  font-size: 20px;
  text-decoration: none;
  transition: transform .3s ease, opacity .3s ease;
}

.btn-convenios:hover {
  transform: scale(1.08);
  opacity: 0.9;
}


/* SETAS DO SPLIDE – AFASTADAS PARA FORA */
.splide__arrow {
    background: rgba(255,255,255,0.9);
    border-radius: 10px;
    width: 35px;
    height: 35px;
    opacity: 1;
    box-shadow: 0px 3px 5px rgba(0,0,0,0.15);
    transition: 0.3s ease;
}

.splide__arrow:hover {
    background: #7fb144;
    transform: scale(1.1);
}

/* seta esquerda */
.splide__arrow--prev {
    left: -55px !important;   /* AFASTA PARA ESQUERDA */
}

/* seta direita */
.splide__arrow--next {
    right: -55px !important;  /* AFASTA PARA DIREITA */
}




/* Descer as bolinhas de paginação */
.splide__pagination {
    bottom: -25px !important;   /* Desce os pontos */
    position: absolute;
}

/* Melhorar visual dos pontinhos */
.splide__pagination__page {
    background: #7fb144 !important;
    opacity: 0.6;
    width: 10px;
    height: 10px;
}

.splide__pagination__page.is-active {
    background: #34448c !important;
    opacity: 1;
    transform: scale(1.3);
}



/* ==========================================================
   RESPONSIVO - SESSÃO CONVÊNIOS (Splide)
   ========================================================== */

/* Tablets */
@media (max-width: 991px) {

    .convenios-container {
        width: 95%;
    }

    .convenios-title {
        font-size: 26px;
    }

    /* Ajusta as setas */
    .splide__arrow--prev {
        left: -25px !important;
    }

    .splide__arrow--next {
        right: -25px !important;
    }
}

/* Smartphones */
@media (max-width: 768px) {

    .convenios-title {
        font-size: 24px;
    }

    /* Remove setas muito afastadas */
    .splide__arrow--prev {
        left: 5px !important;
    }

    .splide__arrow--next {
        right: 5px !important;
    }

    /* Ajusta número de logos visíveis */
    .splide__slide img {
        width: 250px;
        height: auto;
    }


    /* Ajusta número de logos visíveis */
    .splide__slide2 img {
        width: 100px;
        height: auto;
    }
}


/* Smartphones */
@media (max-width: 550px) {

    .convenios-title {
        font-size: 24px;
    }

    /* Remove setas muito afastadas */
    .splide__arrow--prev {
        left: 5px !important;
    }

    .splide__arrow--next {
        right: 5px !important;
    }

    /* Ajusta número de logos visíveis */
    .splide__slide img {
        width: 250px;
        height: auto;
    }


    /* Ajusta número de logos visíveis */
    .splide__slide2 img {
        width: 100px;
        height: auto;
    }
}

/* Smartphones pequenos */
@media (max-width: 480px) {

    .splide__slide img {
        width: 250px;
    }

    .convenios-btn-area {
        margin-top: 25px;
    }

    .btn-convenios {
        font-size: 16px;
        padding: 12px 25px;
    }

     .descricao-sobre-top {
        padding: 0 10px;   /* respiro interno */
        margin: 0;
        width: 100%;
        text-align: center;
        z-index: 60;
    }

    .descricao-sobre-top p {
        text-align: center;
        z-index: 70;
    }
}



/* fim convenios*/

/*rodape*/

/* ========== RODAPÉ ========== */
.footer-section {
    width: 100%;
    background: #000;
    padding: 10px 0;
    color: #fff;
    /*border-top: 1px solid #ddd; /* separação elegante */
    border-top: 3px solid #ddd;
    box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.15);
    position: relative;
    overflow: hidden;
}

.footer-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg6);
    background-color: var(--cor-6);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}



.footer-container {

    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
    gap: 5px;
    position: relative;
    z-index: 10;
}

.footer-col {
    width: 33%;
    font-size: 16px;
    line-height: 22px;
    text-align: left;
}

.footer-title {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 15px;
    font-weight: bold;
}

.footer-title2 {
    color: #000000;
    font-size: 18px;
    margin-bottom: 15px;
    font-weight: 500;
}

.footer-col i {
    margin-right: 8px;
    color: #fff;
}

/* Coluna de redes sociais */
.social-col {
    text-align: center !important;
}

.social-icons {
    display: flex;
    justify-content: center;
    gap: 15px;
    font-size: 25px;
    margin-bottom: 10px;
}





/* cookies  */

/* ===========================================
   COOKIES - BARRA FIXA
=========================================== */

body.cookies-open {
    padding-bottom: 140px; /* espaço suficiente para a barra */
}

.cookies-section {
    width: 100%;
    background: #ffffff;
    color: #000;
    padding: 20px 0;
    border-top: 1px solid #ddd;
    position: fixed;
    bottom: 0;
    left: 0;
    display: none; /* só aparece se não tiver cookie */
    z-index: 9999;
}

/* ===========================================
   CONTAINER RESPONSIVO
=========================================== */
.cookies-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
    padding: 0 20px; /* ajuda no mobile */
    box-sizing: border-box;
}

/* ===========================================
   BOTÕES
=========================================== */
.cookies-buttons {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap; /* permite quebrar linha */
    gap: 12px;
    justify-content: center;
}

.cookies-buttons button {
    padding: 10px 25px;
    border: none;
    background: #7fb144;
    color: white;
    border-radius: 6px;
    cursor: pointer;
    transition: .3s ease;
    font-size: 16px;
}

.cookies-buttons button:hover {
    transform: scale(1.08);
}

/* ===========================================
   RESPONSIVO
=========================================== */
@media (max-width: 600px) {

    .cookies-buttons button {
        width: 100%;        /* cada botão ocupa uma linha */
        padding: 14px 0;
        font-size: 17px;
    }

    .cookies-container {
        padding: 0 15px;
    }
}


@media (max-width: 600px) {
    .cookies-section {
        padding-bottom: env(safe-area-inset-bottom, 20px);
    }

    body {
        /*padding-bottom: 280px; /* reserva espaço fixo */
    }
}


/* final cookies  */

/* ==== Créditos ==== */
/*
.creditos-section {
    width: 100%;
    background: #ffffff;
    padding: 20px 0;
}

.creditos-container {
    width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.creditos-container p {
    color: #000000;
    font-size: 16px;
}

.creditos-privacidade {
    color: #34448c;
    font-weight: bold;
    text-decoration: none;
}

.creditos-privacidade:hover {
    text-decoration: underline;
}

.creditos-privacidade i {
    margin-right: 5px;
}*/


/* ============================= */
/*  SEÇÃO CRÉDITOS               */
/* ============================= */

.creditos-section {
    width: 100%;
    background: #ffffff;
    padding: 10px 0;
    border-top: 1px solid #ddd; /* separação elegante */
}

.creditos-container {
    width: 1200px;
    max-width: 95%;
    margin: 0 auto;
    text-align: center;

}

.creditos-container-link {
    width: 100%;
    max-width: 95%;
    margin: 0 auto;
    margin-top: 10px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
    color: #ccc !important;
}

.creditos-container-link a{
    color: #ccc !important;
}

.creditos-container p {
    color: #000000;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}

.creditos-privacidade {
    color: #34448c;
    font-weight: 500;
    text-decoration: none;
    transition: .3s;
    margin-top: 20px;
}

.creditos-privacidade:hover {
    text-decoration: underline;
}

.creditos-privacidade i {
    margin-right: 6px;
}


#cookiesBar {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 99999;
}


/* ========= MOBILE ========= */
@media (max-width: 600px) {

    .creditos-container p {
        font-size: 11px;
        line-height: 1.1;

        /* Permite quebra de linha natural em telas pequenas */
        display: flex;
        flex-direction: column;
        gap: 8px; /* espaçamento bonito */
    }

    .creditos-privacidade {
        display: inline-block;
        margin-top: 6px;
    }
}




/* ==========================================================
   RESPONSIVO - RODAPÉ
   ========================================================== */

/* -------------------- RESPONSIVO DO RODAPÉ -------------------- */

.footer-section {
    width: 100%;
    background: #ffffff;
    color: #000000;
    
    padding: 1px; 
}

.footer-container {
    width: 1200px;
    margin-top: 20px;
    /*margin: 10px auto;*/
    display: flex;
    flex-wrap: wrap; /* permite quebrar em linhas */
    justify-content: space-between;
    gap: 1px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
}

.footer-col1
{
    width: 32%;
    font-size: 15px;
    color: #000;
    font-weight: 500;
    text-align: left;
    

}

.footer-col1 p {
    font-weight: 300;

    line-height: .3 !important;
}

.footer-col2 {
    display: flex;           /* 🔑 essencial */
    width: 32%;
    font-size: 16px;
    line-height: 1.2;
    align-items: center;
    justify-content: center;

}

.footer-col3 {
    width: 32%;
    font-size: 16px;
    line-height: 1.2;
    align-items: center;
    justify-content: center;

}

/* map em desktop */
.footer-map iframe {
    width: 100%;
    /*height: 200px;*/
    border: 0;
    border-radius: 10px;
}


/* --------------------- TABLETS (até 992px) --------------------- */
@media (max-width: 992px) {
    .footer-container {
        width: 95%;
    }

    .footer-col {
        width: 45%; /* 2 colunas por linha */
    }

    .footer-map iframe {
        /*height: 200px;*/
    }
}


/* --------------------- CELULARES (até 768px) --------------------- */
@media (max-width: 768px) {

    .footer-container {
        flex-direction: column;
        width: 92%;
    }

    .footer-col {
        width: 100%;  /* 1 por linha */
        text-align: left;
    }

    .footer-map iframe {
        /*height: 260px; /* mapa maior em celular */
    }

    .footer-col.icons {
        text-align: center; /* redes sociais no centro */
    }


    .footer-col1
    {
        width: 32%;
        font-size: 15px;
        color: #000;
        font-weight: 500;
        text-align: center;
        

    }

    .footer-col1 p {
        font-weight: 300;

        line-height: 1 !important;
    }

    .footer-col2 {
        display: flex;           /* 🔑 essencial */
        margin-top: 20px;
        width: 100%;
        font-size: 16px;
        line-height: 1.2;
        align-items: center;
        justify-content: center;

    }

    .footer-col3 {
        margin-top: 20px;
        width: 32%;
        font-size: 16px;
        line-height: 1.2;
        align-items: center;
        justify-content: center;

    }
}


/* --------------------- EXTRA PEQUENO (até 480px) --------------------- */
@media (max-width: 480px) {
    .footer-map iframe {
        /*height: 300px;*/
    }

    .footer-col1
    {
        width: 100%;
        font-size: 15px;
        color: #000;
        font-weight: 500;
        text-align: center;
        

    }

    .footer-col1 p {
        font-weight: 300;

        line-height: 1 !important;
    }


    .footer-col2 {
        display: flex;           /* 🔑 essencial */
        margin-top: 20px;
        width: 100%;
        font-size: 16px;
        line-height: 1.2;
        align-items: center;
        justify-content: center;

    }


    .footer-col3 {
        margin-top: 20px;
        width: 100%;
        font-size: 16px;
        line-height: 1.2;
        align-items: center;
        justify-content: center;

    }
}
/*fim rodape*/


/* icons bootstrap */
.foguete {
    font-size: 32px;      /* opcional */
    transform: rotate(45deg);  /* inclina o foguete */
    display: inline-block;      /* necessário para rotacionar */
}


/* sessao profissionais */

/* Container Geral da Sessão */
/* ===========================
   CONTAINER GERAL DA SESSÃO
   =========================== */
.sessao-medicos {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}


/* ===========================
   CARD DE CADA MÉDICO
   =========================== */
.card-medico {
    display: flex;
    gap: 30px;
    background: #fff;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);
    margin-bottom: 35px;
    align-items: flex-start;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.7s ease forwards;
}

/* Fade-in suave */
@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ===========================
   COLUNA ESQUERDA – IMAGEM
   =========================== */
.coluna-esquerda {
    flex: 0 0 auto;
}

.foto {
    width: 100%;
    max-width: 300px;
    border-radius: 12px;
    display: block;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.foto[data-loaded="true"] {
    opacity: 1;
}


/* ===========================
   COLUNA DIREITA – TEXTOS
   =========================== */
.coluna-direita {
    flex: 1;
}

.titulo {
    color: #7fb144;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 15px;
}

.especificacoes {
    margin-top: 15px;
    padding-left: 18px;
    line-height: 1.5rem;
}

.especificacoes li {
    margin-bottom: 8px;
}


/* ===========================
   RESPONSIVIDADE
   =========================== */
@media (max-width: 900px) {
    .card-medico {
        padding: 20px;
        gap: 20px;
    }

    .titulo {
        font-size: 1.4rem;
    }
}

/* MOBILE */
@media (max-width: 650px) {

    .card-medico {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }

    .coluna-esquerda {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .foto {
        max-width: 220px;
    }

    /* LISTA MAIS LEVE PARA MOBILE */
    .especificacoes {
        padding-left: 0;
        margin-top: 20px;
        list-style: none; /* remove o bullet padrão */
    }

    .especificacoes li {
        margin-bottom: 12px;
        font-size: 0.95rem;
        padding: 10px 12px 10px 28px; /* espaço para o novo bullet */
        background: #f8f8f8;
        border-radius: 8px;
        text-align: left;
        position: relative; /* necessário para o bullet */
    }

    /* Bullet personalizado */
    .especificacoes li::before {
        content: "•";
        position: absolute;
        left: 12px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.2rem;
        color: #7fb144; /* verde do título */
        font-weight: bold;
    }
}


/* trabalhe conosoco */

.sessao-trabalhe {
    max-width: 1200px;
    margin: 1px auto;
    /*padding: 0 20px;*/
    margin-top: 20px;
}


#trabalhe {
    /*position: relative;
    overflow: hidden; /* 🔥 ISSO é essencial */
    position: relative;
    width: 100%;
    /*max-height: 100vh; /* garante área mesmo com pouco conteúdo */
    overflow: hidden;        /* 🔥 corta o bg NO FINAL */


}

/* Container das duas colunas */
.trabalhe-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%;
    
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 20px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
}

.trabalhe-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg11);
    background-color: var(--cor-11);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}


.trabalhe-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%;
    
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 40px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
}





.titulo-trabalhe{
    text-align: center;
    font-size: 2rem;
    color: #011754;
    margin-bottom: 1px;
    font-weight: 500;
    margin: 0 auto;
}



#trabalhe-form {
    padding: 20px 20px;
    /*background: #f2f2f2;*/
    font-weight: 400;
}


#trabalhe-form h2 {
    padding: 30px 30px;
    /*background: #f2f2f2;*/
    font-weight: 400;
}

/* Fade-in */
#trabalhe-form .fade-in {
    opacity: 0;
    animation: fadeIn 1.2s forwards;
}
@keyframes fadeIn {
    to { opacity: 1; }
}

/* Fade para imagens */
#trabalhe-form .fade-img {
    opacity: 0;
    transition: opacity 1s ease-in;
}
#trabalhe-form .fade-img.loaded {
    opacity: 1;
}

/* Títulos */
#trabalhe-form h2,
#trabalhe-form h3 {
    color: #011754;
    font-size: 18px;
    font-weight: 400;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* Container */
#trabalhe-form .container {
    width: 1200px;
    max-width: 100%;
    margin: auto;
    display: flex;
    gap: 30px;
    align-items: flex-start;
    padding: 10px 10px;
}

/* Cards */
#trabalhe-form .card {
    background: #fff;
    padding: 50px 50px;
    /*border-radius: 12px;*/
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}


/* Coluna esquerda */
#trabalhe-form .col-esquerda {
    flex: 1;
}

#trabalhe-form .col-esquerda form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#trabalhe-form label {
    font-weight: 500;
    margin-top: 10px;
    padding: 10px;
}

#trabalhe-form input {
    padding: 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 8px;
}

/* Botão */
#trabalhe-form .btn-enviar {
    background: #011754;
    color: #fff;
    border: none;
    padding: 10px 30px 10px 30px;
    cursor: pointer;
    font-size: 18px;
    border-radius: 12px;
    width: auto;
    display: block;
    margin: 15px auto 0 auto;
    transition: 0.2s ease;
}
#trabalhe-form .btn-enviar:hover {
    background: #6c9939;
    transform: scale(1.03);
}

/* Coluna direita */
#trabalhe-form .col-direita {
    flex: 1;
}

#trabalhe-form .redes-sociais {
    display: flex;
    gap: 20px;
    font-size: 25px;
    margin: 15px 0 30px 0;
}

#trabalhe-form .redes-sociais i {
    color: #7fb144;
    transition: 0.2s;
}
#trabalhe-form .redes-sociais i:hover {
    transform: scale(1.15);
}

/* Unidades */
#trabalhe-form .unidade {
    margin-bottom: 40px;
}

#trabalhe-form .mapa1 {
    width: 100%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}


#trabalhe-form .mapa2 {
    width: 100%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}


.linha-dupla {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.campo {
    display: flex;
    flex-direction: column;
}

/* final trabalhe*/


/* politica privacidade */
#politica {
    /*position: relative;
    overflow: hidden; /* 🔥 ISSO é essencial */
    position: relative;
    width: 100%;
    /*max-height: 100vh; /* garante área mesmo com pouco conteúdo */
    overflow: hidden;        /* 🔥 corta o bg NO FINAL */


}


.politica-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%;
    
    max-width: 1200px;
    margin: 0 auto;
    padding: 1px 1px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
}


.politica-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    
    background-image: var(--bg-bg13);
    background-color: var(--cor-13);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 250vh; /* limite absoluto */
}

.titulo-politica{
    text-align: center;
    font-size: 2rem;
    color: #011754;
    margin-bottom: 1px;
    font-weight: 500;
}



#politica-form {
    padding: 1px 0;
    /*background: #f2f2f2;*/
    font-weight: 400;
    width: 1200px;
}


/* contato */


#contato {
    /*position: relative;
    overflow: hidden; /* 🔥 ISSO é essencial */
    position: relative;
    width: 100%;
    /*max-height: 100vh; /* garante área mesmo com pouco conteúdo */
    overflow: hidden;        /* 🔥 corta o bg NO FINAL */


}


.contato-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%;
    
    max-width: 1200px;
    margin: 0 auto;
    padding: 5px 5px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */
}

.contato-informe {
    /*position: relative;
    z-index: 2;

    justify-content: space-between;

    
    
    max-width: 1200px;
    margin: 0 auto;
    
    justify-content: center; /* centro horizontal */
    /*align-items: center;     /* centro vertical */

    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}


.contato-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    
    background-image: var(--bg-bg12);
    background-color: var(--cor-12);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}


.titulo-contato{
    position: relative;
    text-align: center;
    font-size: 2rem;
    color: #011754;
    margin-bottom: 1px;
    font-weight: 500;
    z-index: 100;
    margin-top: 10px;
}



#contato-form {
    padding: 10px 0;
    /*background: #f2f2f2;*/
    font-weight: 400;
    width: 1200px;
}

/* Fade-in */
#contato-form .fade-in {
    opacity: 0;
    animation: fadeIn 1.2s forwards;
}
@keyframes fadeIn {
    to { opacity: 1; }
}

/* Fade para imagens */
#contato-form .fade-img {
    opacity: 0;
    transition: opacity 1s ease-in;
}
#contato-form .fade-img.loaded {
    opacity: 1;
}

/* Títulos */
#contato-form h2,
#contato-form h3 {
    color: #011754;
    font-size: 18px;
    font-weight: 400;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* Container */
#contato-form .container {
    width: 1200px;
    max-width: 100%;
    margin: auto;
    display: flex;
    gap: 30px;
    align-items: flex-start;
    padding: 10px;
}

/* Cards */
#contato-form .card {
    background: #fff;
    padding: 20px;
    /*border-radius: 12px;*/
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

/* Coluna esquerda */
#contato-form .col-esquerda {
    flex: 1;
}

#contato-form .col-esquerda form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#contato-form label {
    font-weight: 500;
    margin-top: 10px;
}

#contato-form input {
    padding: 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 8px;
}


#contato-form textarea {
    padding: 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 8px;
    width: 100%;
    min-height: 120px;
    resize: vertical; /* permite só crescer pra baixo */
    box-sizing: border-box;
}

/* Botão */
#contato-form .btn-enviar {
    background: #011754;
    color: #fff;
    border: none;
    padding: 10px 30px 10px 30px;
    cursor: pointer;
    font-size: 18px;
    border-radius: 12px;
    width: auto;
    display: block;
    margin: 15px auto 0 auto;
    transition: 0.2s ease;
}
#contato-form .btn-enviar:hover {
    background: #6c9939;
    transform: scale(1.03);
}

/* Coluna direita */
#contato-form .col-direita {
    flex: 1;
}

#contato-form .redes-sociais {
    display: flex;
    gap: 20px;
    font-size: 25px;
    margin: 15px 0 30px 0;
}

#contato-form .redes-sociais i {
    color: #7fb144;
    transition: 0.2s;
}
#contato-form .redes-sociais i:hover {
    transform: scale(1.15);
}

/* Unidades */
#contato-form .unidade {
    margin-bottom: 40px;
}

#contato-form .mapa1 {
    width: 100%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}


#contato-form .mapa2 {
    width: 100%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}


/* final contato*/



/* sessao unidades*/

/* ===========================
   SESSÃO UNIDADES
=========================== */
.sessao-unidades {
    max-width: 1200px;
    margin: 1px auto;
    /*padding: 0 20px;*/
    margin-top: 20px;
}

#unidades {
    /*position: relative;
    overflow: hidden; /* 🔥 ISSO é essencial */
    position: relative;
    width: 100%;
    /*max-height: 100vh; /* garante área mesmo com pouco conteúdo */
    overflow: hidden;        /* 🔥 corta o bg NO FINAL */


}

/* Container das duas colunas */
.unidades-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%;
    
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
    justify-content: center; /* centro horizontal */
    align-items: center;     /* centro vertical */


}

.unidades-bg {
    position: absolute;
    bottom: -20%;
    z-index: 0;

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg10);
    background-color: var(--cor-10);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: transform;
    pointer-events: none;
    top: -20%;
    left: -20%;
    right: -20%;
    bottom: -20%;
    max-height: 150vh; /* limite absoluto */
}


.titulo-unidades {
    position: relative;
    text-align: center;
    font-size: 2rem;
    color: #011754;
    /*margin-bottom: 10px;*/
    margin-top: 30px;
    font-weight: 500;
    z-index: 100;
}





/* CARD DA UNIDADE */


/*.unidade-card {
    width: 32%;
    background: #F6FAF0;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);

    display: flex;
    flex-direction: column;
    gap: 1px;

    min-height: 380px; 
    
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s ease forwards;
    margin-bottom: 20px;
}*/


.unidade-card {
    width: 32%;
    background: #F6FAF0;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);

    display: flex;
    flex-direction: column;
    gap: 6px;

    height: 690px; /* ⭐ altura fechada e igual pra todos */

    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s ease forwards;
    margin-bottom: 20px;
}


.unidade-card2 {
    width: 48%;
    background: var(--cor-bg-unidades-g);
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);

    display: flex;
    flex-direction: column;
    gap: 6px;

    height: 220px; /* ⭐ altura fechada e igual pra todos */

    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s ease forwards;
    margin-bottom: 20px;


}


/* Fade-in CSS */
@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.unidade-destaque { 
    width: fit-content;
    display: inline-block;        /* 🔑 faz o fundo acompanhar o texto */
    background: var(--cor-bg-unidades);           /* verde claro */
    padding: 6px 12px;
    border-radius: 6px;
    font-weight: 500;
    color: #0b2a00;
    margin-bottom: 5px;
    }

/*.unidade-destaque span {
    display: inline;
    background: linear-gradient(
        to bottom,
        transparent 40%,
        #dff0c2 40%
    );
    padding: 4px 6px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
} */   

/* CONTAINER DAS IMAGENS */
.unidade-fotos {
    display: flex;
    gap: 12px; /* espaço entre as imagens */
    width: 100%;
    margin-bottom: 15px;
    align-items: center;
    justify-content: center;
}

/* IMAGEM PRINCIPAL – 65% */
.unidade-foto {

    flex: 0 0 65%;
    max-width: 65%;
    border-radius: var(--borda-img);
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.8s ease;
    
}

/* IMAGEM LATERAL / MAPA – 35% */
.unidade-mapa {
    flex: 0 0 35%;
    max-width: 35%;
    border-radius: 12px;
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.fade-in.appear img {
    opacity: 1;
}



/* FOTO */
.unidade-fotox {
    width: 70%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}

/* FOTO */
.unidade-mapax {
    width: 30%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.8s ease;
}

.unidade-foto[loading="lazy"] {
    opacity: 1;
}

.unidade-mapa[loading="lazy"] {
    opacity: 1;
}


@media (max-width: 768px) {
    .unidade-fotos {
        flex-direction: column;
    }

    .unidade-foto,
    .unidade-mapa {
        flex: 1 1 100%;
        max-width: 100%;
    }

    /* Cards */
    #trabalhe-form .card {
    background: #fff;
    padding: 30px 30px;
    /*border-radius: 12px;*/
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}
}


/* TÍTULO DA UNIDADE */
.unidade-nome {
    font-size: 1.2rem;
    font-weight: 500;
    color: #333;
    margin-top: 10px;
}



/* ITENS */
.unidade-item {
    display: flex;
    
    align-items: center;
    font-size: 1rem;
    color: #444;
    
    margin: 2px 0; /* controla espaço entre os blocos */
    line-height: 1.3;
}

.unidade-item-texto
{
   
   line-height: 1.2x;
}

.unidade-item i {
    
    color: #000000;
    font-size: 1.2rem;
    margin-right: 6px;
}


/* ========================
   RESPONSIVIDADE
======================== */

/* Tablet */
@media (max-width: 900px) {
    .unidades-container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2%;
        
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
        justify-content: center; /* centro horizontal */
        align-items: center;     /* centro vertical */
    }
    .unidade-card {
        width: 100%;
    }

    .unidade-card2 {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .unidades-container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2%;
        
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
        justify-content: center; /* centro horizontal */
        align-items: flex-start;     /* centro vertical */
    }
    
    .unidade-card {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .unidade-card2 {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }
}

@media (max-width: 768px) {
    .unidades-container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2%;
        
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
        justify-content: center; /* centro horizontal */
        align-items: flex-start;     /* centro vertical */
    }
    
    .unidade-card {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .unidade-card2 {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .linha-dupla {
        grid-template-columns: 1fr;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .unidade-nome {
        font-size: 1.1rem;
    }

    .unidade-item {
        font-size: 0.95rem;
    }

    /* Cards */
    #trabalhe-form .card {
    background: #fff;
    padding: 30px 30px;
    /*border-radius: 12px;*/
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);


    #contatoForm label { padding: 20px 20px; margin: 20px; width: 300px;}
    #contatoForm input { padding: 20px 20px; margin: 20px; width: 300px;}


    .unidades-container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2%;
        
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
        justify-content: center; /* centro horizontal */
        align-items: flex-start;     /* centro vertical */
    }
    
    .unidade-card {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .unidade-card2 {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }
}


@media (max-width: 480px) {
    .unidades-container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 2%;
        
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
        justify-content: center; /* centro horizontal */
        align-items: flex-start;     /* centro vertical */
    }
    
    .unidade-card {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .unidade-card2 {
        width: 100%;
        height: auto;          /* garante */
        min-height: unset;     /* remove qualquer mínimo */
    }

    .linha-dupla {
        grid-template-columns: 1fr;
    }
}

/*final unidades*/


/*noticias*/
/* =============================
   ESTRUTURA GERAL
============================= */
* { box-sizing: border-box; margin: 0; padding: 0; }

/*body {
    /*font-family: Arial, sans-serif;*
    background: #f8f8f8;
    color: #222;
}*/

/* Wrappper centralizado com largura máxima de 1200px */
.site-wrapper {
    max-width: 1200px;
    margin: 30px auto 30px;
    padding: 0 20px;
}

/* título */
.noticias-titulo {
    font-size: 33px;
    color: #7fb144;
    margin-bottom: 20px;
    font-weight: 700;
    text-align: center;
}

/* =============================
   CATEGORIAS
============================= */
.categorias-container {
    width: 100%;
    margin-bottom: 28px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.categoria-btn {
    background: #4259bf;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 25px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    line-height: 1;
}

.categoria-btn:hover,
.categoria-btn.active {
    background: #7fb144;
    color: #fff;
}

/* =============================
   LISTA DE NOTÍCIAS (CARDS)
============================= */
.noticias-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start; /* cards começam à esquerda dentro do wrapper central */
}

/* cada card usa a classe .noticia — consistente com o JS abaixo */
.noticia {
    width: calc(33.333% - 13.333px); /* 3 colunas com gap */
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease;
}

.noticia:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(0,0,0,0.12); }

/* foto + tag de categoria sobre a foto */
.foto-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.foto-container img {
    width: 100%;
    display: block;
    height: 400px;
    object-fit: cover;
}

/* tag da categoria sobre a imagem (canto direito) */
.categoria-sobre {
    position: absolute;
    right: 10px;
    top: 10px;
    background: #7fb144;
    color: #fff;
    padding: 6px 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

/* conteúdo do card */
.noticia h3 {
    padding: 16px;
    font-size: 20px;
    font-weight: 600;
    color: #7fb144;
    margin-bottom: 6px;
}

.resumo {
    padding: 0 16px 16px;
    color: #444;
    font-size: 14px;
    line-height: 1.4;
    flex: 1 0 auto; /* força o botão para baixo */
}

/* botão leia mais */
.btn-leia {
    display: inline-block;
    background: #4259bf;
    color: #fff;
    padding: 10px 18px;
    border-radius: 20px;
    text-decoration: none;
    margin: 0 16px 16px;
    align-self: flex-start;
}

.btn-leia:hover {
    background: #7fb144;
    color: #4259bf;
}

/* =============================
   PAGINAÇÃO
============================= */
.paginacao {
    width: 100%;
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.page-btn {
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid rgba(0,0,0,0.05);
    background: transparent;
    cursor: pointer;
    color: #7fb144;
}

.page-btn:hover {
    background: #4259bf;
    color: #7fb144;
}

.page-btn.ativo {
    background: #7fb144;
    color: #4259bf;
    box-shadow: 0 4px 10px rgba(0,0,0,0.06);
}


.conteudo-img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 20px auto;
    border-radius: 8px;
    object-fit: contain;
}

/* Galerias */
.figura-conteudo {
    max-width: 250px;
    margin: 30px auto;
}

/* Galeria do WordPress *
/*
.wp-block-gallery,
.wp-block-group .wp-block-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin: 30px 0;
}

/* cada imagem *
.wp-block-gallery figure,
.wp-block-gallery img {
    width: 100%;
}

/* imagem interna *
.wp-block-gallery img {
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}
*/

.wp-block-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

@media (max-width: 900px) {
    .wp-block-gallery {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .wp-block-gallery {
        grid-template-columns: 1fr;
    }

    #contatoForm label { padding: 20px 20px;  width: 300px;}
    #contatoForm input { padding: 20px 20px;  width: 300px;}


}

/*

.conteudo {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.conteudo-img {
    width: calc(33.333% - 12px);
}

@media (max-width: 768px) {
    .conteudo-img {
        width: calc(50% - 8px);
    }
}

@media (max-width: 480px) {
    .conteudo-img {
        width: 100%;
    }
}



/* =============================
   RESPONSIVO
============================= */
@media (max-width: 1100px) {
    .noticia { width: calc(50% - 10px); }
}

@media (max-width: 700px) {
    .noticia { width: 100%; }
    .foto-container img { height: 220px; }
}


@media (max-width: 768px) {
  .hide-mobile {
    display: none !important;
  }
}


/*final noticias*/






/* Responsivo */
@media (max-width: 900px) {
    #contato .container {
        flex-direction: column;
        width: 95%;
    }

    #contato .mapa {
        max-width: 100%;
    }
}

/*final contato*/


/* exames */

/* ===========================================
   CONTAINER PADRÃO
=========================================== */
.exames-container {
    width: 100%;
    max-width: 1200px;
    margin: 40px auto 0 auto;
    padding: 0 20px;
    
    
}

/* ===========================================
   TÍTULO PRINCIPAL
=========================================== */
.exames-titulo-principal {
    text-align: left;
    color: #7fb144;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 40px;
}

/* ===========================================
   BLOCOS
=========================================== *
.exames-bloco {
    margin-bottom: 50px;
}*/

/* FLEX PRINCIPAL */
.exames-bloco-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

/* ===========================================
   TIPOGRAFIA
=========================================== */
.exames-titulo-azul {
    color: #4259bf;
    font-size: 22px;
    margin-bottom: 15px;
    font-weight: 700;
}

.exames-subtitulo-verde {
    color: #7fb144;
    font-size: 22px;
    margin-left: 30px;
    margin-top: 25px;
    font-weight: 700;
}

.exames-container p,
.exames-container li {
    color: #000;
    font-size: 18px;
    line-height: 1.6;
}

.exames-lista {
    margin-left: 30px;
    margin-top: 10px;
}

/* ===========================================
   BLOCO ESQUERDA
=========================================== *
.exames-left {
    flex: 1 1 49%;
    max-width: 49%;
    border-radius: 12px;
    opacity: 1;
    transition: opacity 0.8s ease;
}

/* ===========================================
   BLOCO DIREITA (IMAGEM)
=========================================== */
/*.exames-right {
    flex: 1 1 49%;
    max-width: 46%;
    display: flex;
    justify-content: center;
}

.exames-right img {
    width: 100%;
    height: auto;
    border-radius: 12px;

    opacity: 0;
    transform: translateY(10px);
    animation: fadeInImg 0.9s ease forwards;
}*/

/* Permite que várias imagens fiquem em coluna *
.exames-right {
    flex: 1 1 49%;
    max-width: 46%;
    display: flex;
    flex-direction: column; /* empilhar imagens *
    align-items: center;
    gap: 12px; /* espaço entre as imagens */
}

/* Todas as imagens continuam com o efeito *
.exames-right img {
    width: 100%;
    height: auto;
    border-radius: 12px;

    opacity: 0;
    transform: translateY(10px);
    animation: fadeInImg 0.9s ease forwards;
}
*/


@keyframes fadeInImg {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Quando NÃO existir bloco de imagem, o left vira 100% */
.exames-bloco-flex:not(:has(.exames-right)) .exames-left {
    flex: 1 1 100% !important;
    max-width: 100% !important;
}



.exames-bloco-botao {
    margin-bottom: 20px;
    margin-top: -20px;
}


/* FLEX PRINCIPAL */
.exames-bloco-botao-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}


.exames-bloco-botao-central {
    flex: 1 1 100%;
    max-width: 100%;
    border-radius: 12px;
    opacity: 1;
    transition: opacity 0.8s ease;
}



/* começo teste ===========================================
   BLOCOS
=========================================== */
.exames-bloco {
    width: 100%;
    max-width: 1200px;
    margin: 20px auto;
    padding: 10px;
    overflow: hidden; /* garante que o float não vaze */
    font-family: Arial, sans-serif;
}

/* ===========================================
   IMAGENS À DIREITA
=========================================== */
.exames-right {
    float: right;
    width: 45%;
    max-width: 600px;
    margin-left: 30px;
}

/* efeito de entrada das imagens: fade+slide-up */
.exames-right img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    margin-bottom: 12px;

    /* estado inicial */
    opacity: 0;
    transform: translateY(10px);

    /* animação */
    animation-name: fadeInImg;
    animation-duration: 0.9s;
    animation-timing-function: ease;
    animation-fill-mode: forwards; /* mantém o estado final (opacity:1) */
    animation-delay: 0.08s; /* pequeno delay para garantir paint */
    will-change: opacity, transform;
}

/* keyframes */
@keyframes fadeInImg {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ===========================================
   TEXTO À ESQUERDA
=========================================== */
.exames-left {
    font-size: 18px;
    line-height: 1.6;
}

/* ===========================================
   TÍTULO
=========================================== */
.exames-titulo-azul {
    font-size: 26px;
    margin-bottom: 10px;
}

/* ===========================================
   RESPONSIVIDADE
=========================================== */
@media (max-width: 992px) {
    .exames-right {
        float: none;
        width: 100%;
        max-width: 100%;
        margin: 0 0 20px 0;
    }

    .exames-left {
        width: 100%;
    }
}

/*fim teste bloco imagem texto ---*/

/* ===========================================
   BOTÕES
=========================================== */
.exames-btn-azul {
    background: #4259bf;
    color: #fff;
    padding: 15px 30px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 10px auto;
    transition: .3s ease;
}

.exames-btn-azul:hover {
    background: #7fb144;
    transform: scale(1.05);
}


.exames-btn-whatsapp {
    background: #4259bf;
    color: #fff;
    padding: 10px 30px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 10px auto;
    transition: .3s ease;
}

.exames-btn-whatsapp:hover {
    background: #7fb144;
    transform: scale(1.05);
}

/* ===========================================
   RESPONSIVO GERAL
=========================================== */
@media (max-width: 900px) {

    .exames-left,
    .exames-right {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: center;
    }

    .exames-right img {
        max-width: 430px;
    }

    .exames-titulo-azul {
        font-size: 26px;
    }

    .exames-container p,
    .exames-container li {
        font-size: 17px;
    }

    .exames-lista {
        margin-left: 25px;
    }
}

/* ===========================================
   MOBILE MENOR
=========================================== */
@media (max-width: 600px) {
    .exames-container {
        padding: 0 15px;
    }

    .exames-titulo-principal {
        font-size: 30px;
        text-align: center;
    }

    .exames-right img {
        max-width: 100%;
    }

    .exames-btn-whatsapp {
        padding: 20px 30px;
        font-size: 18px;
    }
}





/* ===========================================
   ACCORDION (RESPONSIVO)
=========================================== */
.exames-accordion {
    margin-top: 25px;
    width: 100%;           /* garante fluidez */
    max-width: 100%;
}

.exames-accordion * {
    max-width: 100%;
    box-sizing: border-box;
}

.exames-accordion h3,
.exames-accordion button {
    width: 100%;
    text-align: left;
}

/* Se o accordion tiver listas internas */
.exames-accordion ul,
.exames-accordion li {
    width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* final exames  */

.acc-item {
    margin-bottom: 12px;
}

.acc-pergunta {
    background: #fff;
    border: 2px solid #7fb144;
    padding: 15px;
    font-size: 20px;
    cursor: pointer;
    border-radius: 10px;
}

.acc-resposta {
    display: none;
    background: #f8f8f8;
    border: 2px solid #4259bf;
    border-top: none;
    padding: 15px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}


/* DROPDOWN EM COLUNAS APENAS NO MOBILE */
/*@media (max-width: 991px) {  
    .navbar .dropdown-menu {

        display: grid !important;
        grid-template-columns: 1fr 1fr; /* duas colunas *//*
        gap: 5px;
        padding: 10px;
    }

    .navbar .dropdown-menu .dropdown-item {
        white-space: normal; /* permite título quebrar linha *//*
        padding: 8px 10px;
        border-radius: 6px;
    }
}
*/


/* MOBILE: dropdown em 2 colunas + fade/slide controlado por max-height */
@media (max-width: 991px) {

    /* CONTÊINER FECHADO */
    .navbar .dropdown .dropdown-menu {
        overflow: hidden; /* fechado = sem scroll */
    }

    /* CONTÊINER ABERTO COM SCROLL */
    .navbar .dropdown .dropdown-menu.show {
        overflow-y: auto; /* libera scroll */
        max-height: 75vh; /* impede passar da tela */
        -webkit-overflow-scrolling: touch; /* scroll suave no iPhone */
    }

    .navbar-collapse {
        max-height: 80vh;   /* ocupa no máximo 80% da tela */
        overflow-y: auto;   /* ativa o scroll vertical */
        -webkit-overflow-scrolling: touch; /* scroll suave no iPhone */
        padding-bottom: 20px; /* espaço extra no final */
    }

    /* estado fechado (grid presente, mas escondido) */
    .navbar .dropdown .dropdown-menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        box-sizing: border-box;

        /* controle de visibilidade e animação */
        max-height: 0;               /* começa fechado */
        overflow: hidden;
        opacity: 0;
        transform: translateY(-8px);

        transition:
            max-height 0.36s ease,
            opacity 0.28s ease,
            transform 0.28s ease;

        /* impede clicks quando fechado */
        pointer-events: none;

        /* padding lateral mínimo para não "pular" */
        padding: 0 10px;
    }

    /* estado aberto */
    .navbar .dropdown .dropdown-menu.show {
        max-height: 900px;          /* alto suficiente para 2 colunas */
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
        padding: 10px;              /* padding completo só ao abrir */
    }

    /* itens */
    .navbar .dropdown .dropdown-menu .dropdown-item {
        white-space: normal;
        padding: 8px 10px;
        border-radius: 6px;
    }

    /* garantir que o conteúdo não force linha única */
    .navbar .dropdown .dropdown-menu .dropdown-item > * {
        width: 100%;
        box-sizing: border-box;
    }
}




/*final exames*/

.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}

/*

.img-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    inset: 0;
    background: rgba(0,0,0,.9);
    align-items: center;
    justify-content: center;
}

.img-modal img {
    max-width: 90%;
    max-height: 90%;
    border-radius: 10px;
}

.img-modal .close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;
}

.img-modal .nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 40px;
    color: #fff;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
}

.img-modal .prev { left: 20px; }
.img-modal .next { right: 20px; }

.img-modal .nav:hover,
.img-modal .close:hover {
    opacity: .7;
}

*/

.img-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0,0,0,.9);

    /*display: flex;*/
    align-items: center;
    justify-content: center;
}

.img-wrapper {
    max-width: 90vw;
    max-height: 90vh;

    display: flex;
    align-items: center;
    justify-content: center;
}

.img-wrapper img {
    max-width: 100%;
    max-height: 100%;

    width: auto;
    height: auto;

    object-fit: contain;
    border-radius: 10px;
}

/* Botões */
.img-modal .close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;
}

.img-modal .nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 40px;
    color: #fff;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
}

.img-modal .prev { left: 20px; }
.img-modal .next { right: 20px; }

.img-modal .nav:hover,
.img-modal .close:hover {
    opacity: .7;
}

/* MOBILE */
@media (max-width: 768px) {
    .img-wrapper {
        max-width: 95vw;
        max-height: 80vh;
    }
}


@media (max-width: 768px) {
    #top-header {
        min-height: 50px;
        padding: 6px 0;
    }

    #top-header .header-container {
        flex-direction: column;
        gap: 4px;
        text-align: center;
    }

    #top-header .header-col {
        width: 100%;
        justify-content: center;
    }

    #top-header .social-icons {
        justify-content: center;
    }
}


@media (max-width: 768px) {
    .col-esquerda,
    .col-direita {
        justify-content: center;
        text-align: center;
    }
}


@media (max-width: 576px) {

    #top-header .header-container {
        min-height: 50px;
        flex-direction: column;
        align-items: center;
        gap: 3px;
        text-align: center;
    }

    #top-header .header-col {
        width: 100%;
        justify-content: center;
    }

    #top-header .line-1 {
        font-size: 11px;
        line-height: 1.1;
    }

    #top-header .social-icons {
        justify-content: center;
        margin-top: 5px;
    }
}


@media (max-width: 576px) {
    #top-header .col-6 {
        flex: 0 0 100%;
        max-width: 100%;
        line-height: 1.1;
    }
}


/* botao rodapé fixo */
/* ===== BOTÃO FIXO MOBILE ===== */

.mobile-cta {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
    
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.85),
        rgba(0, 0, 0, 0.0)
    );

    display: flex;
    justify-content: center;
    z-index: 9999;
    pointer-events: none; /* evita bloquear elementos atrás */
}

/* Botão */

.mobile-cta-btn {
    pointer-events: auto; /* reativa clique */

    width: 100%;
    max-width: 480px;

    background: var(--btn-cor-rodape-m); /* verde moderno (pode trocar) #22c55e*/
    color: white;
    text-decoration: none;

    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.3px;

    padding: 14px 20px;
    border-radius: 14px;

    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow: 0 10px 30px rgba(0,0,0,0.35);

    transition: transform 0.15s ease,
                box-shadow 0.15s ease,
                background 0.2s ease;
}

/* Feedback visual */

.mobile-cta-btn:active {
    transform: translateY(1px) scale(0.99);
    box-shadow: 0 6px 18px rgba(0,0,0,0.35);
}

/* ===== MOSTRAR SOMENTE NO MOBILE ===== */

@media (min-width: 768px) {
    .mobile-cta {
        display: none;
    }
}
/* final botao rodape fixo */


/* css summernote */

.note-editor-content {
    max-width: 100%;
    overflow: hidden;
}

.note-editor-content * {
    box-sizing: border-box;
    max-width: 100%;
}

.note-editor-content img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin: 10px 0;
}

.note-editor-content img[style*="width"] {
    width: auto !important;
    max-width: 100% !important;
}

.note-editor-content img[style*="height"] {
    height: auto !important;
}

/* Float RIGHT sempre vence */
.note-editor-content img.note-float-right {
    float: right !important;
    margin: 10px 0 10px 20px !important;
    display: block;
}

/* Float LEFT sempre vence */
.note-editor-content img.note-float-left {
    float: left !important;
    margin: 10px 20px 10px 0 !important;
    display: block;
}

/* note-float-none NÃO deve interferir */
.note-editor-content img.note-float-none {
    float: unset !important;
}


@media (max-width: 768px) {
    .note-editor-content img {
        float: none !important;
        margin: 10px auto !important;
    }
}

/*final summernote */






