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

    overflow-x: hidden;
}


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;*/
 font-family: 'Outfit', sans-serif;
    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;
}


.navbar-toggler-icon {
    display: inline-block !important;
    width: 1.5em !important;
    height: 1.5em !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 100% !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.outfit-texto1 {
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

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

}*/

#menu-fixo {
    /*padding-top: env(safe-area-inset-top);*/
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

/*#main-menu {
    background: var(--cor-1); /*#000b8c/
}*/

#main-menu {
    background: var(--cor-1); /*#000b8c*/
    position: relative;
    z-index: 9999;
}

/*
.menu-social a {
    color: white;
    font-size: 20px;
    transition: color 0.3s ease, transform 0.3s ease;
}

.menu-social a:hover {
    color: gray;
    transform: translateY(-2px);
}

@media (max-width: 991px) {
    .menu-social {
        display: none !important;
    }
}*/


/* Desktop */
.menu-social {
    display: flex;
    gap: 18px;
}

.menu-social a {
    color: white;
    font-size: 20px;
    transition: all 0.3s ease;
}

.menu-social a:hover {
    color: gray;
    transform: translateY(-2px);
}





@media (max-width: 991px) {

    .menu-social {
        width: 100%;                 /* ocupa linha inteira */
        justify-content: center;     /* centraliza horizontal */
        margin-top: 10px;           /* espaço do menu */
        padding-bottom: 5px;
    }

    .menu-social {
        border-top: 1px solid rgba(255,255,255,0.2);
        padding-top: 12px;
    }

}


#exames {
    scroll-margin-top: 140px;
    /*ont-family: 'Poppins', sans-serif;*/
    font-family: 'Outfit', 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
============================ */

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

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

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

#main-menu .nav-link:hover {
    color: gray !important;
}


.menu-btn-exame {
    background: white;
    color: #000b8c;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s ease;
}

.menu-btn-exame:hover {
    background: gray;
    color: white;
    transform: translateY(-1px);
}

/*.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;}
}

*/


/*

.produtos-menu-categoria {
    padding: 40px 20px;
    display: flex;
    justify-content: center; /* centraliza o container *
}

.produtos-menu-container {
    width: 1200px;
    max-width: 95%;          /* responsivo *
    display: flex;
    justify-content: center; /* centraliza imagens *
    flex-wrap: wrap;
    gap: 30px;
}



.produtos-menu-container img {
    width: 120px;
    height: 120px;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
    display: block;
}

.produtos-menu-container img:hover {
    transform: scale(1.05);
    transition: 0.3s;
}

*/

/*
.produtos-menu-categoria {
    padding: 20px 20px;
    display: flex;
    justify-content: center;


}

.produtos-menu-container {
    width: 1200px;
    max-width: 95%;
    /*display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 55px;*

    width: 1200px;
    max-width: 95%;
    margin: 0 auto;
    border-bottom: 1px solid #16068a; /* aqui é a borda *
}

.produtos-menu-item {
    width: 120px;
    text-align: center;
}

.produtos-menu-item img {
    width: 120px;
    height: 120px;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
    display: block;
}

.produtos-menu-item img:hover {
    transform: scale(1.05);
    transition: 0.3s;
}

.produtos-menu-titulo {
    margin-top: 8px;
    font-size: 14px;
    font-weight: 600;
    /*white-space: nowrap;      /* ← impede quebra */
    /*overflow: hidden;         /* ← corta excesso */
    /*text-overflow: ellipsis;  /* ← adiciona "..." *
}*/

@media (max-width: 768px) {

  body {
    padding-top: 60px;
  }

}

.produtos-menu-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* DESKTOP */
.categorias-row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

.categoria-col {
    width: 150px;
    text-align: center;
}

.categoria-item {
    cursor: pointer;
    transition: .3s;
    padding: 10px;
    border-radius: 12px;
}

.categoria-item img {
    max-width: 60px;
    margin-bottom: 6px;
}

.categoria-ativa {
    background: #f2f4ff;
}

.categoria-titulo {
    font-size: 14px;
}

/* ================= */
/* MOBILE DROPDOWN */
/* ================= *

@media (max-width: 768px) {

    .categorias-row {
        display: none;
        flex-direction: column;
        gap: 0;
        background: white;
        border-radius: 10px;
        box-shadow: 0 15px 40px rgba(0,0,0,.08);
        margin-top: 10px;
    }

    .categorias-row.ativa {
        display: flex;
    }

    .categoria-col {
        width: 100%;
        border-bottom: 1px solid #eee;
        padding: 10px;
    }

    .categoria-item {
        display: flex;
        align-items: center;
        gap: 15px;
        text-align: left;
    }

    .categoria-item img {
        margin: 0;
        width: 40px;
    }

    .categoria-trigger {
        background: #f2f4ff;
        padding: 12px;
        border-radius: 8px;
        text-align: center;
        font-weight: 600;
        cursor: pointer;
    }
}*/


@media (max-width: 768px) {

    .categorias-row {
        display: none;
        flex-wrap: wrap;
        gap: 6px;
        background: white;
        border-radius: 10px;
        box-shadow: 0 15px 40px rgba(0,0,0,.08);
        margin-top: 10px;
        padding: 6px;
    }

    .categorias-row.ativa {
        display: flex;
    }

    .categoria-col {
        width: 46%; /* duas por linha */
        border: none;
        padding: 6px 0;
        text-align: center;
    }

    .categoria-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3px;
        padding: 10px;
        border-radius: 12px;
        background: #f7f8ff;
    }

    .categoria-item:hover {
        transform: translateY(-3px);
    }

    .categoria-item img {
        width: 45px;
        margin: 0;
    }

    .categoria-titulo {
        font-size: 13px;
        text-align: center;
    }

    .categoria-trigger {
        background: #f2f4ff;
        padding: 8px;
        border-radius: 8px;
        text-align: center;
        font-weight: 600;
        cursor: pointer;
    }
}

/*
.produtos-menu-categoria {
    padding: 20px 0;
}

.produtos-menu-container {
    max-width: 1200px;
    margin: 0 auto;
}

.categorias-row {
    display: flex;
    justify-content: center; /* centraliza o grupo *
    flex-wrap: wrap;
    gap: 12px; /* controla espaçamento *
}

.categorias-row > div {
    flex: 0 0 auto;
    width: 140px; /* largura fixa elegante *
}

.categoria-item {
    cursor: pointer;
    transition: all .3s ease;
    padding: 10px;
    border-radius: 12px;
}

.categoria-item img {
    max-width: 60px;
    height: auto;
    margin-bottom: 8px;
    transition: .3s;
}

.categoria-titulo {
    font-size: 14px;
    font-weight: 500;
}

/* Hover desktop *
.categoria-item:hover {
    transform: translateY(-5px);
}

/* Categoria ativa *
.categoria-ativa {
    background: #f2f4ff;
}

.categoria-ativa img {
    transform: scale(1.1);
}

.categoria-ativa .categoria-titulo {
    color: #2d3cff;
    font-weight: 600;
}

/* ===================== */
/* MOBILE SCROLL VERSION */
/* ===================== *

@media (max-width: 768px) {

    .produtos-menu-container .row {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: start !important;
        padding-bottom: 15px;
        scroll-behavior: smooth;
    }

    .produtos-menu-container .row::-webkit-scrollbar {
        display: none;
    }

    .produtos-menu-container .col-6 {
        flex: 0 0 auto;
        width: 100px;
    }

    .categorias-row {
        justify-content: center !important;
    }

    .categoria-item {
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .categoria-item img {
        margin: 0 auto 6px auto;
    }

}



.mobile-categoria-select {
    position: relative;
    max-width: 300px;
    margin: 0 auto 20px auto;
}

.categoria-trigger {
    background: #f2f4ff;
    padding: 12px;
    border-radius: 8px;
    text-align: center;
    cursor: pointer;
    font-weight: 600;
}

.categoria-dropdown {
    display: none;
    position: absolute;
    width: 100%;
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    max-height: 300px;
    overflow-y: auto;
    z-index: 10;
}

.categoria-dropdown .categoria-item {
    flex-direction: row;
    justify-content: start;
    padding: 10px;
    border-bottom: 1px solid #eee;
}*/



.botao-baixo2 {padding: 60px; display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;width: 100%}

 



/* Botão */
.btn-baixo2 {
    background: var(--cor-btn-baixo2);
    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;
    
    display: inline-block;

}    

.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: -72px;
}

#banner-desktop {
    width: 100%;
    aspect-ratio: 1920 / 600;
    /*height: calc(100vh - 100px);*/
    overflow: hidden;
    position: relative;
    margin-top: -210px;
    display: none;
}

#banner-mobile {
    width: 100%;
    /*aspect-ratio: 370 / 370;*/
    overflow: hidden;
    position: relative;
    margin-top: -180px !important;
    display: none;
    position: relative;
    z-index: 200;
    aspect-ratio: auto;
    height: 60vh; /* ou o valor que você quer */
}


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

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

/* Garante que o vídeo preencha a tela mantendo proporção */


@media (max-width: 768px) {
    .banner-video {
        width: 100%;
        /*aspect-ratio: 370 / 370;*/
        height: 100vh;
        position: relative;
        margin-top: -25%;
        aspect-ratio: auto;
        height: 80vh; /* ou o valor que você quer */
        /*top: 0;
        left: 100%; /* sempre começa fora da tela, à direita */
        /*opacity: 0;
        transition: left 0.6s ease, opacity 0.6s ease;*/
    }
}        



    

/* 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;
    }

    #banner-mobile {
        margin-top: -35%;
        height: 400px;
    }
}


/* 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;
}

#mensagem-header {
    /*background: var(--cor-mensagem);*/
    position: relative;
    overflow: hidden;
    z-index: 12;
    display: flex;
    height: var(--bloco-mensagem-height);
    align-items: center;
    justify-content: center;
    color: #fff;
    background-color: var(--cor-banner);
    
}

.mensagem-bg {
    position: absolute;
    inset: -20%; /* 🔥 maior área para permitir movimento */
    z-index: 0;
    pointer-events: none;

    background-image: var(--bg-banner);
    
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

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


.mensagem-container {
    /*background-color: var(--cor-banner);*/
    position: relative;
    z-index: 122; /* 🔑 texto acima do BG */
    width: 1000px;
    max-width: 100%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    
}


.mensagem-container .row {
    background-color: var(--cor-banner);
    width: 100%;
    margin: 0;
}

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


.line-m1  {
     font-size: var(--tam-topo-titulo);
     color: var(--cor-topo-titulo);
     display: flex;
    
    justify-content: center;
    align-items: center;
    font-weight: 500;


}
.line-m2  {
    font-size: var(--tam-topo-texto);
    color: var(--cor-topo-texto);
    display: flex;
    
    justify-content: center;
    align-items: center;
    text-align: center;
    
}





.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: #ffffff;
    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-100 {
    width: 100%;
    height: 50%;
    object-fit: cover; /* mantém proporção cortando as bordas */
}


.img-100x {
    width: 100%;
    height: 250px;          /* ← altura fixa */
    object-fit: cover;      /* ← corta sem distorcer */
    object-position: center;/* ← centraliza corte */
    display: block;         /* ← remove espaços estranhos */
}

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

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

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

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

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

.img-small-70 {
    width: 70%;
    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;}

    #mensagem-header {
        background: var(--cor-mensagem);
        display: flex;
        /*height: calc(70vh - 100px);*/
        height: var(--bloco-mensagem-height-m);
        align-items: center;
        justify-content: center;
        color: #fff;
        /*margin-top: 100px;*/
        
    }


    


}


@media (max-width: 768px) {

  #mensagem-header {
    padding-top: 20px;
    height: var(--bloco-mensagem-height-m);
  }

  .line-m1 { font-size: 40px !important; line-height: 1.1 !important;}
  .line-m2 { font-size: 30px !important; line-height: 1.2 !important;}

}




/*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-produto-corpo {
    z-index: 12;
    background: #ffffff;
    position: relative;
    overflow: hidden;
}


/* Título */
.noticia-corpo-titulo {
    font-size: 45px;
    color: #011754;
    font-weight: 600;
    text-align: left;
    margin-top: 10px;
    margin-bottom: 2px;
}

.noticia-corpo-subtitulo {
    font-size: 25px;
    color: #011754;
    font-weight: 600;
    text-align: left;
    
}


.noticia-corpo-descricao,
.noticia-corpo-descricao p {
    font-size: 18px;
    color: var(--cor-oms-subtitulo);
    text-align: left;
    line-height: 1.3 !important;
    margin-bottom: 8px;
}

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


@media (max-width: 768px) {

  .noticia-corpo-titulo {
    font-size: 28px;
  }

  .noticia-corpo-subtitulo {
    font-size: 18px;
  }

}



/* CAMADA DE BACKGROUND */
.produto-corpo-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;
}

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

    /* FLEX RESPONSIVO */
    display: flex;
    
}


/* Título */
.produto-corpo-titulo-alto {
    font-size: 18px;
    /*color: #16068a;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 500;
    text-align: left;
    border-bottom: 1px solid #16068a; /* aqui é a borda */
    padding-bottom: 3px; /* opcional, para dar um espaçamento entre o texto e a borda */
    text-indent: 6px; /* apenas o texto inicial recuado */
}

/* Título */
.produto-corpo-titulo {
    font-size: 45px;
    /*color: #011754;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 600;
    text-align: left;
    margin-top: 10px;
    margin-bottom: 2px;
}



.produto-corpo-subtitulo {
    font-size: 25px;
    /*color: #011754;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 600;
    text-align: left;
    
}


.produto-corpo-precos {
    display: flex;
    align-items: center; /* alinha verticalmente */
    gap: 10px; /* espaço entre os preços */
}

.produto-corpo-preco-de {
    font-size: 28px;
    /*color: #011754;*/
    /*color: var(--cor-fonte-tit-est);*/
    font-weight: 400;
    text-align: left;
    text-decoration: line-through; /* 🔥 preço riscado */
    opacity: 0.7; /* opcional: deixa mais “apagado” */
    color: #999; /* cinza */
    
}

.produto-corpo-preco-obs {
    font-size: 28px;
    /*color: #011754;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 400;
    text-align: left;

    
}


.produto-corpo-preco-por {
    font-size: 35px;
    /*color: #011754;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 600;
    text-align: left;
    
}



.produto-corpo-modelo {
    font-size: 25px;
    /*color: #011754;*/
    color: var(--cor-fonte-tit-est);
    font-weight: 600;
    text-align: left;
    
}



.produto-corpo-descricao,
.produto-corpo-descricao p {
    font-size: 18px;
    color: var(--cor-oms-subtitulo);
    text-align: left;
    line-height: 1.3 !important;
    margin-bottom: 8px;
}

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

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

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

/* Botão */
.produto-corpo-btn {
    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 */
.produto-corpo-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 */
.produto-corpo-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;
}

.produto-corpo-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) */
.produto-corpo-img-historia-fundo-verde {
    width: 98%;
    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: 98%;
    height: auto;
    background: red;
}

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


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

}

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


.produto-corpo-jornada {
        text-align: center;
    }


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

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

    /* FLEX RESPONSIVO */
   /* display: flex;*/
    
} 

.produto-caracteristicas-dados
{
    margin-top: 0px;
    margin-bottom: 0px;
}


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

.produto-video-container {
    position: relative;
    z-index: 2;
    width: 100%;       /* ocupa 100% do pai */
    max-width: 1200px; /* limite máximo em desktop */
    margin: 0 auto;    /* centraliza */
}

.produto-video-dados {
    margin-top: 30px;
    margin-bottom: 30px;
}
/******************************/

/******************************/

#sessao-jornada {
    z-index: 12;
    background: var(--cor-bloco4);
    position: relative;
    overflow: hidden;
    /*margin-top: 60px;*/
}



/* 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-bg7);
    background-color: var(--cor-7);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

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


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

    /*background-image: url('../midia/full_df9076acf0ac908d0baaff904aae0577_1769548721.webp');*/
    background-image: var(--bg-bg3);
    background-color: var(--cor-3);
    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-oms,
.descricao-jornada-oms p {
    font-size: 18px;
    color: var(--cor-oms-subtitulo);
    text-align: left;
    line-height: 1.3 !important;
    margin-bottom: 8px;
}

.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: var(--cor-btn-baixo2);
    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: 98%;
    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: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 98%;
    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;
     border-radius: 2px;
}

.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: var(--cor-bloco4);
        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: var(--cor-bloco4);
        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;*/
  /*margin-top:-140px;
  z-index: 50;*/
}


.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-oms {
  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: 15px 15px 15px 15px;
  position: relative;
  /*overflow: hidden;*/
  

}


.oms-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-oms-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;


}

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

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


.oms-titulo {
    color: var(--cor-oms-titulo);
    font-size: var(--tam-oms-titulo);
    display: flex;
    margin-bottom: 10px;
    align-items: center;
    text-align: center;
}

/* COLUNA ESQUERDA */
.oms-texto {
    /*flex: 1 1 50%;*/
    
    color: var(--cor-oms-texto);
    font-size: var(--tam-oms-texto);
    line-height: 1.1em;
    margin-bottom: 10px;
    font-weight: 500;
}



.oms-texto p {
    
    /*color: #000;*/
    color: var(--cor-oms-texto);
}


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


.oms-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(25% - 15px);
  max-width: calc(25% - 15px);
  min-width: unset;
}

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

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

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


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


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


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


@media (max-width: 768px) {

  .session-oms {
    margin-top: -100px;
    min-height: 250px ;
  }


  .oms-texto {
    text-align: center;
  }

}


/* =========================
   SETAS DO SPLIDE
   ========================= */

.splide__arrow {
    background: rgba(0, 0, 0, 0.6);   /* fundo */
    width: 42px;
    height: 42px;
    border-radius: 50%;
    opacity: 1;
    transition: all 0.3s ease;
    
    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow: 0 4px 10px rgba(0,0,0,0.25);
}

/* ícone */
.splide__arrow svg {
    fill: #ffffff;                     /* cor da seta */
    width: 18px;
    height: 18px;
    transition: all 0.3s ease;
}

/* HOVER */
.splide__arrow:hover {
    background: #ff0000;               /* cor do hover */
    transform: scale(1.08);
    box-shadow: 0 6px 14px rgba(0,0,0,0.35);
}

/* cor da seta no hover */
.splide__arrow:hover svg {
    fill: #ffffff;
}

/* efeito de clique */
.splide__arrow:active {
    transform: scale(0.95);
}

/* =========================
   POSICIONAMENTO OPCIONAL
   ========================= */

.splide__arrow--prev {
    left: -20px;   /* ajuste se quiser */
}

.splide__arrow--next {
    right: -20px;  /* ajuste se quiser */
}

/* =========================
   RESPONSIVO (opcional)
   ========================= */

@media (max-width: 768px) {
    .splide__arrow {
        width: 36px;
        height: 36px;
    }

    .splide__arrow svg {
        width: 16px;
        height: 16px;
    }
}


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


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

.session-produto {
  width: 100%;
  /*background-color: var(--cor-porque-fundo);*/ /* leve tom verde claro 7fb14433 */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 30px;
  /*padding: 0 10px 5px;*/
  position: relative;
  /*overflow: hidden;*/
  margin-top: -64px;
  min-height: auto; 
  height: auto; 
  max-height: 60px;
  background: var(--cor-6); /*#f2f5fe*/
  

}


.produto-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 */
}


.produto-container {
    width: 1200px;
    max-width: 100%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    justify-content: left;
    align-items: left;


    
}


/*.produto-titulo {
    /*color: var(--cor-meio-titulo);*
    color: #000000;
    /*font-size: var(--tam-meio-titulo);*
    font-size: 18px;
    /*display: flex;*/
    /*margin-bottom: 10px;*
    /*align-items: center;
    text-align: center;*
    font-weight: 500;
}*/


.produto-titulo {
    color: #000000;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

.produto-titulo a {
    color: #000000;
    text-decoration: none;
}

/* COLUNA ESQUERDA */
.produto-texto {
    /*flex: 1 1 50%;*/
    
    color: var(--cor-meio-texto);
    font-size: var(--tam-meio-texto);
    line-height: 1.1em;
    /*margin-bottom: 10px;*/
    font-weight: 500;
}



.produto-texto p {
    
    /*color: #000;*/
    color: var(--cor-meio-texto);
}


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


.produto-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(25% - 15px);
  max-width: calc(25% - 15px);
  min-width: unset;
}

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

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

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


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


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


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


@media (max-width: 768px) {

  .session-produto {
    height: auto;
    max-height: none;
    margin-top: -123px; /* ajusta para subir */
    padding: 10px 0;
  }

  .produto-container {
    justify-content: center;
  }

  .produto-titulo {
    font-size: 14px;
    flex-wrap: wrap;        /* permite quebrar linha */
    text-align: center;
    line-height: 1.4;
  }

  .produto-titulo a:last-child {
    display: block;
    margin-top: 4px;
  }

}



@media (max-width: 768px) {

  .card-produto {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0,0,0,.06);
  }

  

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

  .card-produto h5 {
    font-size: 18px;
  }

  .card-produto h6 {
    font-size: 14px;
  }

}

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

/*******/


.session-produto-abert {
  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: 30px 10px 5px;*/
  position: relative;
  /*overflow: hidden;*/
  

}



.session-produto-abert-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;
  margin-top: -30px;


}



.session-produto-abert-container {
    width: 1200px;
    max-width: 95%;
    margin: auto;

    /* FLEX RESPONSIVO */
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: auto;
    height: auto;
    overflow: visible;
}


.session-produto-abert-titulo {
    color: var(--cor-meio-titulo);
    font-size: var(--tam-meio-titulo);
    display: flex;
    margin-bottom: 10px;
    align-items: center;
    text-align: center;
}

/* COLUNA ESQUERDA */
.session-produto-abert-texto {
    /*flex: 1 1 50%;*/
    
    color: var(--cor-meio-texto);
    font-size: var(--tam-meio-texto);
    line-height: 1.1em;
    margin-bottom: 10px;
    font-weight: 500;
}


/*---------------------------*/
/* SESSÃO MEIO NOTÍCIAS */
.session-meio-noticias {
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
  padding: 30px 15px; /* espaçamento uniforme */
  margin-top: -50px;
}

.session-meio-noticias-container {
  max-width: 1200px;
  width: 100%;
  text-align: center; /* centraliza tudo por padrão */
  display: flex;
  flex-direction: column; /* itens empilhados verticalmente */
  gap: 15px; /* espaçamento entre título e texto */
  position: relative;
  z-index: 10;
}

/* TÍTULO */
.meio-noticias-titulo h1 {
  color: var(--cor-meio-titulo);
  font-size: var(--tam-meio-titulo);
  margin: 0;
  font-weight: bold;
}

/* TEXTO */
.meio-noticias-texto p {
  color: var(--cor-meio-texto);
  font-size: var(--tam-meio-texto);
  line-height: 1.4;
  margin: 0;
  font-weight: 500;
}

/* RESPONSIVO */
@media (max-width: 768px) {
  .session-meio-noticias {
    padding: 20px 10px;
    margin-top: -100px;
  }

  .meio-noticias-titulo h1 {
    font-size: calc(var(--tam-meio-titulo) * 0.8); /* ajusta tamanho no mobile */
  }

  .meio-noticias-texto p {
    font-size: calc(var(--tam-meio-texto) * 0.9);
  }
}



/*****************************/

.session-meio {
  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: 30px 10px 5px;*/
  position: relative;
  /*overflow: hidden;*/
  margin-top: 50px;
  

}


.meio-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-meio-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;
  margin-top: -30px;


}

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

    /* FLEX RESPONSIVO */
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: auto;
    height: auto;
    overflow: visible;
}


.meio-titulo {
    color: var(--cor-meio-titulo);
    font-size: var(--tam-meio-titulo);
    display: flex;
    margin-bottom: 10px;
    align-items: center;
    text-align: center;
}

/* COLUNA ESQUERDA */
.meio-texto {
    /*flex: 1 1 50%;*/
    
    color: var(--cor-meio-texto);
    font-size: var(--tam-meio-texto);
    line-height: 1.1em;
    margin-bottom: 10px;
    font-weight: 500;
}



.meio-texto p {
    
    /*color: #000;*/
    color: var(--cor-meio-texto);
}


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


.meio-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(25% - 15px);
  max-width: calc(25% - 15px);
  min-width: unset;
}

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

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

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


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


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


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



@media (max-width: 768px) {

  .session-meio { margin-top: 30px;}
  .session-produto-abert { margin-top: -80px;}

}


@media (max-width: 768px) {

  .session-meio {
    padding: 30px 10px;
  }

  .meio-texto {
    font-size: 25px;
    line-height: 1.6em;
    font-weight: 500;
    text-align: center;
  }


  .session-produto-abert {
    padding: 0px 10px;
  }

  .session-produto-abert-texto {
    font-size: 25px;
    line-height: 1.6em;
    font-weight: 500;
    text-align: center;
  }

}

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



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

.session-noticias {
  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;*/
  

}


.noticias-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-noticias-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;


}

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

    /* FLEX RESPONSIVO */
    display: flex;
    
}

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

.noticias-titulotitulo {
    color: var(--cor-baixo-titulo);
    font-size: var(--tam-baixo-titulo);
    margin-bottom: 10px;
    text-align: center;
    font-weight: 500;
}

.noticias-titulotexto {
    color: var(--cor-baixo-texto);
    font-size: var(--tam-baixo-texto);
    margin-bottom: 10px;
    text-align: center;
}

.noticias-texto p {
    font-size: var(--tam-baixo-texto);
    margin-bottom: 16px;
    line-height: 1.1em;
    color: #000;
}

.noticias-titulotexto p {
    /*font-size: var(--tam-baixo-texto);*/

    font-size: 30px;
    margin-bottom: 16px;
    line-height: 1.1em;
    color: #ccc;
}


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


.noticias-col {
  position: relative;
  /*opacity: 0;*/
  transform: translateY(30px);
  transition: opacity 1.1s ease-out, transform 1.1s ease-out;
  text-align: left;
  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(33% - 15px);
  max-width: calc(33% - 15px);
  min-width: unset;
}

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

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

/* Título */
.noticias-col .title {
  font-size: 20px;
  font-weight: 500;
  align-items: left;
}


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


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


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



@media (max-width: 768px) {

  .session-noticias {
    padding: 40px 20px;
  }

  .session-noticias-container {
    width: 100%;
    gap: 20px;
  }

  .noticias-container {
    width: 100%;
  }

  .noticias-col {
    flex: 0 0 100%;
    max-width: 100%;
    text-align: center;
  }

  .noticias-col .title {
    text-align: center;
  }

  .noticias-col .descricao {
    font-size: 16px;
    line-height: 1.5em;
  }

}

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

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

.session-produtos {
  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;*/
  background-color: #f1f5fe;
  

}


.session-produtos-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-produtos-container {
  width: 1200px;
  max-width: 95%;
  margin: 0 auto;
  /*display: flex;
  justify-content: space-between;
  align-items: flex-center;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;

   /*background-color: #f1f5fe;*/
   background-color: var(--cor-4);


}

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

    /* FLEX RESPONSIVO */
    display: flex;

     background-color: #f1f5fe;
    
}

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

.produtos-titulotitulo {
    color: var(--cor-baixo-titulo);
    font-size: var(--tam-baixo-titulo);
    margin-bottom: 10px;
    text-align: center;
    font-weight: 500;
}

.produtos-titulotexto {
    color: var(--cor-baixo-texto);
    font-size: var(--tam-baixo-texto);
    margin-bottom: 10px;
    text-align: center;
}

.produtos-texto p {
    font-size: var(--tam-baixo-texto);
    margin-bottom: 16px;
    line-height: 1.1em;
    color: #000;
}

.produtos-titulotexto p {
    /*font-size: var(--tam-baixo-texto);*/

    font-size: 30px;
    margin-bottom: 16px;
    line-height: 1.1em;
    color: #ccc;
}


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


.produtos-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(33% - 15px);
  max-width: calc(33% - 15px);
  min-width: unset;
}

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

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

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


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


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


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

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



/******************************/



/* ============================= */
/* SESSION ICONS 3 */
/* ============================= */

.session-icons3 {
  width: 100%;
  padding: 60px 20px;
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden; /* impede scroll lateral */

}

.icons3-bg {
  position: absolute;
  inset: 0;
  background-color: var(--cor-2);
  background-image: var(--bg-bg2);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
  pointer-events: none;
}

.session-icons3-container {
  width: 100%;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  position: relative;
  z-index: 2;

}

/* BLOCO DE TEXTO */
.icons3-container {
  width: 100%;
  display: flex;
  justify-content: center;
}

.icons3-texto {
  width: 100%;
  text-align: center;
}

.icons3-titulotitulo {
  font-size: clamp(24px, 5vw, 36px);
  margin-bottom: 15px;
  color: var(--cor-baixo-titulo);
}

.icons3-titulotexto {
  font-size: clamp(18px, 4vw, 24px);
  margin-bottom: 30px;
  color: var(--cor-baixo-texto);
}

/* ============================= */
/* COLUNAS DOS ICONES */
/* ============================= */

.icons3-col {
  width: 100%;
  background: var(--cor-porque-fundo);
  padding: 25px 20px;
  border-radius: 12px;
  text-align: center;
  transition: transform .3s ease, box-shadow .3s ease;
}

.icons3-col:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0,0,0,.08);
}

.icons3-col .icon img {
  max-width: 250px;
  height: auto;
  margin-bottom: 15px;
}

.icons3-col .title {
  color: var(--cor-baixo-titulo);
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
}

.icons3-col .descricao {
  color: var(--cor-baixo-titulo);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5em;
}

/* ============================= */
/* RESPONSIVO */
/* ============================= */

/* Tablet */
@media (min-width: 600px) {
  .icons3-col {
    width: calc(50% - 20px);
  }
}

/* Desktop */
@media (min-width: 992px) {
  .icons3-col {
    width: calc(33.333% - 20px);
  }
}


@media (max-width: 768px) {

    .session-icons3 {
    padding: 30px 15px; /* reduz topo e base */
  }

   .session-icons3 .produto-item {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .session-icons3 .card-produto img {
    width: 100%;
    height: auto;
    border-radius: 8px;
  }

  .session-icons3 .card-body h5 {
    font-size: 18px;
  }

  .session-icons3 .card-body h6 {
    font-size: 14px;
  }

}


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

.session-icons4 {
  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;*/
  

}


.icons4-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-icons4-container {
  width: 1200px;
  max-width: 95%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 3px;
  flex-wrap: wrap; /* PERMITE QUE AS COLUNAS DESÇAM AUTOMATICAMENTE */
  z-index: 10;
  position: relative;


}

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

    /* FLEX RESPONSIVO */
    display: flex;
    
}

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

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

.icons4-texto p {
    font-size: 35px;
    margin-bottom: 16px;
    line-height: 1.1em;
    color: #000;
}


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


.icons4-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(25% - 15px);
  max-width: calc(25% - 15px);
  min-width: unset;
}

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

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

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


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


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


/* DESCRICAO VALORES */
.icons4-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: 'Outfit', 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;
}

/******** baixo4 ***************/

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



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

    /*background-image: url("../imagens/bg-04-uni.webp");*/
    background-image: var(--bg-bg5);

    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 */
}

.baixo4-container {
  width: 100%;          /* ocupa 100% da tela */
  max-width: 1200px;    /* mas não passa de 1200px em telas grandes */
  margin: 0 auto;       /* centraliza horizontalmente */
  text-align: center;
  position: relative;
  z-index: 1;
  /*background: var(--cor-tit-geral);*/
  
  
  padding: 0 20px;      /* dá um espaçamento nas laterais em telas pequenas */
}


.baixo4-container::before{
  content:"";
  position:absolute;
  inset:0;

  background: var(--cor-5);
  opacity:0.7;

  z-index:-1;
}

/*.baixo4-container {
  width: 1200px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 10;
  background: var(--cor-tit-geral);

}
*/


.baixo4-title {
  font-size: 20px;
  color: white;
  padding: 30px 2px 2px 30px;
  z-index: 180;
  
}


.baixo4-texto {
  font-size: 40px;
  color: white;
  padding: 0px 2px 2px 0px;
  z-index: 181;
  
}

.baixo4-texto2 {
  font-size: 20px;
  color: white;
  
  padding: 0px 2px 2px 0px;
  z-index: 182;
}


/* texto grande no desktop, menor no celular */
.baixo4-texto {
  font-size: 40px;
  z-index: 184;
}

.baixo4-texto2 {
  font-size: 20px;
  z-index: 185;
}

/* ajuste via media queries */
@media screen and (max-width: 768px) {
  .baixo4-texto {
    font-size: 28px;
  }
  .baixo4-texto2 {
    font-size: 16px;
  }
  .btn-baixo4 {
    padding: 10px 20px;
    font-size: 16px;
  }
}



/* Botão */
.baixo4-btn-area { margin-top: 5px; padding: 20px; margin-bottom: 10px;}

.btn-baixo4 {
  display: inline-block;
  /*padding: 14px 35px;*/
  padding: 12px 85px 12px 85px;
  background: white;
  color: var(--cor-tit-geral);
  border-radius: 8px;
  font-size: 20px;
  text-decoration: none;
  transition: transform .3s ease, opacity .3s ease;
}

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

/************************/
/**************************/

.h-section {
  width: 100%;
  background: #F5F8FD;
  padding: 50px 50px;
  position: relative;
  overflow: hidden;

}

.h-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 */
}

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

}*/


.h-container {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
}



.h-title {
  font-size: 32px;
  color: var(--cor-tit-geral);
  margin-bottom: 30px;
  text-align: left;   /* ← resolve */

}

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


/*.splide__slide img {
  width: 100%;
  max-width: 280px;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
}*/

#splide-servicos .splide__slide img {
  width: 100%;
  max-width: 280px;   /* mantém limite no desktop */
  height: auto;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}

.splide-historia .splide__slide img {
  width: 100%;
  max-width: 280px;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}

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


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


@media (max-width: 768px) {

  /* Diminui tamanho do botão */
  #splide-servicos .splide__arrow {
    width: 32px;
    height: 32px;
  }

  /* Diminui o ícone interno */
  #splide-servicos .splide__arrow svg {
    width: 14px;
    height: 14px;
  }

  /* Aproxima da esquerda */
  #splide-servicos .splide__arrow--prev {
    left: 15px;
  }

  /* Aproxima da direita */
  #splide-servicos .splide__arrow--next {
    right: 15px;
  }

}


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

  #splide-servicos .splide__slide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

}*/


/************************/

/**************************/

.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: var(--cor-tit-geral);
  margin-bottom: 30px;
}

/* Estilizar os slides */
.splide__slide img {
  width: 230px;
  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: -55px !important;
    }

    .splide__arrow--next {
        right: -55px !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: -45px !important;
    }

    .splide__arrow--next {
        right: -45px !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: var(--cor-1);
    padding: 10px 0;
    color: #ffffff;
    /*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: space-between; /* melhor que center */
    align-items: center;
    gap: 20px;
}

.footer-col1,
.footer-col2,
.footer-col3 {
    flex: 1;
}

/*.footer-col1 {
    text-align: right !important;
}*/


.footer-container .footer-col1 {
    text-align: right;
}

.footer-container .footer-col2 {
    text-align: center;
}

.footer-container .footer-col3 {
    text-align: left;
}
/*
.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-col1,
.footer-col2,
.footer-col3 {
    width: 33.33%;
    
}


.footer-col1 {
    text-align: right !important;
}*/

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

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

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

/* 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;
}


/* ============================= */
/* FOOTER RESPONSIVO */
/* ============================= */

@media (max-width: 768px) {

  .footer-container {
    width: 100%;
    padding: 30px 20px;
    flex-direction: column;
    text-align: center;
    gap: 30px;
  }


  .footer-container .footer-col1,
  .footer-container .footer-col2,
  .footer-container .footer-col3 {
    width: 100%;
    text-align: center;
    padding: 10px;
  }


  
  .footer-col1 p {
    margin-bottom: 10px;
  }

  .footer-title2 {
    margin-bottom: 12px;
  }

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

  .creditos-container-link {
    margin-top: 15px;
  }

  .footer-section {
    padding: 40px 0;
  }

  .footer-container img {
    margin-bottom: 10px;
  }

  .footer-col1 a {
    display: inline-block;
    padding: 5px 0;
  }

}





/* 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: #FFFFFF !important;
}

.creditos-container-link a{
    color: #FFFFFF !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: var(--cor-1);
    
    color: #ffffff;
    padding: 1px; 
}

.footer-container {
    width: 1200px;
    margin-top: 20px;
    background: var(--cor-1);
    /*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: left;
    justify-content: left;

}

.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: #29262c;
    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: var(--cor-btn-baixo2);
    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: #553a70;
    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: Outfit, 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 */


/* ===== WRAPPER CENTRAL ===== */
/*
.galeria-wrapper {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}



.galeria-container {
    width: 1140px;
    height: 600px;

    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: 1fr;

    gap: 12px;

    grid-auto-flow: dense;      
    overflow: hidden;
}



.galeria-item {
    position: relative;
    width: 100%;
    height: 100%;

    border-radius: 14px;
    overflow: hidden;

    background: #f3f3f3;
    cursor: pointer;
}



.galeria-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;       
    display: block;

    transition: transform 0.35s ease, filter 0.35s ease;
}



.galeria-item:hover img {
    transform: scale(1.06);
    filter: brightness(1.05);
}



.galeria-item:nth-child(7n) {
    grid-column: span 2;
}

.galeria-item:nth-child(11n) {
    grid-row: span 2;
}



.lightbox-overlay {
    position: fixed;
    inset: 0;

    background: rgba(0,0,0,0.92);

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

    z-index: 99999;
    cursor: pointer;

    animation: fadeIn 0.2s ease;
}

.lightbox-overlay img {
    max-width: 90%;
    max-height: 90%;
    border-radius: 12px;
}



@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}



@media (max-width: 1200px) {

    .galeria-container {
        width: 95%;
        height: auto;

        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 180px;
    }

    .galeria-item:nth-child(7n),
    .galeria-item:nth-child(11n) {
        grid-column: span 1;
        grid-row: span 1;
    }
}*/
/*final galeria */



/* ===== WRAPPER ===== */

.galeria-wrapper {
    width: 1140px;
    margin: 40px auto;
}

/* CABEÇALHO */

.galeria-cabecalho {
    text-align: center;
    margin-bottom: 25px;
}

.galeria-cabecalho h1 {
    font-size: 32px;
    color: var(--cor-tit-geral);
    margin: 0;
    /*font-weight: 600;*/  
}


/* ===== CONTAINER FIXO ===== */



.galeria-container {
    width: 1200px;
    height: 480px;

    display: grid;

    /* 🔥 GRID SIMÉTRICO */
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: 1fr;

    gap: 22px;
    overflow: hidden;
   
}

/* ===== ITENS UNIFORMES ===== */

.galeria-item {
    width: 100%;
    height: 100%;

    border-radius: 12px;
    overflow: hidden;
    background: #f2f2f2;
}

/* ===== IMAGENS SEM DISTORÇÃO ===== */

.galeria-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;   /* 🔥 ESSENCIAL */
    display: block;

    transition: transform 0.3s ease;
}

.galeria-item:hover img {
    transform: scale(1.06);
}

/* ===== LIGHTBOX (mantém o seu funcionando) ===== */

.lightbox-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.92);

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

    z-index: 99999;
    animation: fadeIn 0.2s ease;
}

/* IMAGEM LIMITADA A 80% DA TELA */

.lightbox-overlay img {
    max-width: 80vw;
    max-height: 80vh;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.6);
}

/* BOTÕES */

.lightbox-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);

    width: 50px;
    height: 50px;

    border-radius: 50%;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(6px);

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

    color: white;
    font-size: 26px;
    cursor: pointer;

    transition: 0.2s ease;
    user-select: none;
}

.lightbox-btn:hover {
    background: rgba(255,255,255,0.35);
}

/* POSIÇÕES */

.lightbox-prev { left: 40px; }
.lightbox-next { right: 40px; }

/* FECHAR AO CLICAR FORA */

.lightbox-overlay::after {
    content: "✕";
    position: absolute;
    top: 30px;
    right: 40px;

    font-size: 28px;
    color: white;
    cursor: pointer;
    opacity: 0.8;
}

.lightbox-overlay::after:hover {
    opacity: 1;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}


/* ===== RESPONSIVO LIMPO ===== */

@media (max-width: 1200px) {
    .galeria-container {
        width: 95%;
        height: auto;

        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 160px;
    }
}




/**************************/
/* ===== SETAS SPLIDE CUSTOM ===== */

.splide .splide__arrow {
    background: #16068a;
    width: 42px;
    height: 42px;
    opacity: 1;
    border-radius: 50%;
    transition: all 0.3s ease;
    
    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow: 0 4px 10px rgba(0,0,0,0.25);
}

/* ícone */
.splide .splide__arrow svg {
    fill: #ffffff;
    width: 18px;
    height: 18px;
    transition: all 0.3s ease;
}

/* hover */
.splide .splide__arrow:hover:not(:disabled) {
    background: #ffcccc;
    transform: scale(1.08);
}

/* clique */
.splide .splide__arrow:active {
    transform: scale(0.95);
}

/* desabilitada */
.splide .splide__arrow:disabled {
    opacity: 0.35;
}

/* posição (opcional) */
.splide .splide__arrow--prev {
    left: -18px;
}

.splide .splide__arrow--next {
    right: -18px;
}




.categoria-item {
    cursor: pointer;
    transition: 0.3s;
   /* padding: 30px 30px;*/
   text-align: center;   /* força centralização */
}

.categoria-item img {
    display: block;
    margin: 0 auto 8px auto;  /* força centralização */
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 10px;
}

.categoria-item:hover {
    transform: translateY(-5px);
}

.categoria-ativa {
   /* border-bottom: 3px solid #0d6efd;*/
}

.card-produto {
    transition: 0.3s;
    /*border-radius: 12px;*/
    border: none !important;
    box-shadow: none; /* opcional, se quiser remover sombra também */
    overflow: hidden;
}

.card-produto:hover {
    transform: scale(1.03);
}

.card-produto img {
    height: 340px;
    object-fit: cover;
}

.card-produto {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.card-produto .card-body {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.produto-item {
    display: none;
    border: none !important;
    box-shadow: none; /* opcional, se quiser remover sombra também */
}

#produtosContainer {
  min-height: 300px; /* altura suficiente para 2 linhas */
}


.carousel-container {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.carousel-slides img {
    width: 100%;
    display: none;
    transition: opacity 0.5s ease;
}

.carousel-slides img.active {
    display: block;
    opacity: 1;
}

.carousel-bullets {
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
}

.carousel-bullets .bullet {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    background-color: #d0a077; /*#ffcccc*/
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
}

.carousel-bullets .bullet.active {
    background-color: #64290c ; /* cor da bolinha ativa #16068a*/
}





/* css noticia ler ======= CARROSSEL ======= */

.news-splide {
  max-width: 600px;
  margin: 0 auto;
}

.news-splide img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

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

.news-title {
  font-size: 2rem;
  font-weight: 700;
}

.news-subtitle {
  color: #666;
  font-weight: 400;
}

.news-content p {
  font-size: 1.1rem;
  line-height: 1.7;
  margin-bottom: 1rem;
}

/* ======= MAIS NOTÍCIAS ======= */

.more-news {
  background: #f8f8f8;
  width: 100%;

}

.news-card {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  height: 100%;
  transition: 0.3s;
}

.news-card img {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 15px;
}

.news-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.news-card h5 {
  font-weight: 600;
}

.news-card a {
  display: inline-block;
  margin-top: 10px;
  text-decoration: none;
  font-weight: 600;
  color: #007bff;
}




@media (max-width: 768px) {

    #sessao-produto-corpo .news-splide {
        position: relative;
    }

  /* Reduz altura do slide */
  #sessao-produto-corpo .news-splide .splide__slide {
    display: flex;
    justify-content: center;
    align-items: center;

  }

  /* Força imagem menor */
  #sessao-produto-corpo .news-splide .splide__slide img {
    max-height: 280px;   /* controla tamanho */
    width: auto;
    max-width: 100%;
    object-fit: contain;
    border-radius: 8px;  /* opcional - fica bonito */
    left: 15px;
  }
  #sessao-produto-corpo .news-splide .splide__arrow {
    width: 32px;
    height: 32px;
    opacity: 0.9;
    /*margin-left: 5px;*/
  }


  #sessao-produto-corpo .news-splide .splide__arrow {
    position: absolute !important;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    opacity: 0.9;
    z-index: 10;
  }

  #sessao-produto-corpo .news-splide .splide__arrow--prev {
    left: -3px !important;
  }

  #sessao-produto-corpo .news-splide .splide__arrow--next {
    right: -8px !important;
  }

  
  
}

  /* Ajusta track para não colar nas bordas *
  #sessao-produto-corpo .news-splide .splide__track {
    padding: 0 35px; /* espaço para as setas ficarem dentro *
  }

  /* Deixa as setas menores *
  #sessao-produto-corpo .news-splide .splide__arrow {
    width: 32px;
    height: 32px;
    opacity: 0.9;
  }

  /* Move setas para dentro *
  #sessao-produto-corpo .news-splide .splide__arrow--prev {
    left: 15px;
  }

  #sessao-produto-corpo .news-splide .splide__arrow--next {
    right: 15px;
  }

}
*/