/* ########################################################################################################### */
/* reset all */
html,body,body div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,a,article,aside,figure,footer,header,hgroup,menu,nav,section,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}article,aside,figure,footer,header,hgroup,nav,section{display:block;outline:0}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help}table{border-collapse:collapse;border-spacing:0;font-size:inherit;font:100%}th{font-weight:bold;vertical-align:bottom}td{font-weight:normal;vertical-align:middle}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:10px 0;padding:0}input,select{vertical-align:middle;-webkit-font-smoothing:antialiased}pre{white-space:pre;white-space:pre-wrap;white-space:pre-line;word-wrap:break-word}input[type="radio"]{vertical-align:text-bottom}input[type="checkbox"]{vertical-align:bottom}input:focus,textarea:focus{outline:0}input,button,textarea,select{font:inherit}a:hover,a:active{outline:0}small{font-size:85%}strong,th{font-weight:bold}td,td img{vertical-align:top}sub,sup{font-size:75%;line-height:0;position:relative}sup{top:-0.5em}sub{bottom:-0.25em}pre,code,kbd,samp{font-family:monospace,sans-serif}.clickable,label,input[type="button"],input[type="submit"],button{cursor:pointer}body,select,input,textarea{color:gray;-webkit-font-smoothing:antialiased}button,input,select,textarea{margin:0;resize:none}button{width:auto;overflow:visible}ins{background:#fcd700;color:#000;text-decoration:none}mark{background:#fcd700;color:#000;font-style:italic;font-weight:bold}*,*::before,*::after{-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}object{display:none}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}
/* ########################################################################################################### */
/*    */
:root {
    --bgbranco: #ffffff;
    --branco: #ffffff;
    --cyan: #61c1d0;
    --cyan-light: #ebf9fa;
    --cyan-light2: #f1fcfd;
    --cyan-light3: #e0feff;
    --cyan-medium: #54c5cf;
    --cyan-dark: #00aec3;
    --gray: #505050;
    --gray-light: #cccccc;
    --gray-light2: #f9f9f9;;
    --gray-middle: #eeeeee;
    --gray-dark: #767676;
    --gray-dark2: #616161;
    --gray-menu-hamburger: #9C9C9C;
    --green: #00614e;
    --green-light: #00967a;
    --green-medium: #178f91;;
    --green-cyan: #40ADB8;
    --green-dark: #014b3d;
    --red: #d53e36;
    --red-dark: #9e0c08;
    --red-light: #f54851;
    --black: #000000;
    --azul-dark-bic: #0c223c; 
    --rosa:#f0d8c2;
    --filter-to-white: invert(95%) sepia(46%) saturate(83%) hue-rotate(265deg) brightness(108%) contrast(100%);
    --filter-to-cian: invert(71%) sepia(35%) saturate(835%) hue-rotate(140deg) brightness(84%) contrast(84%);
    --filter-to-gray: invert(93%) sepia(0%) saturate(1%) hue-rotate(88deg) brightness(89%) contrast(84%);
    --filter-to-red: invert(30%) sepia(81%) saturate(5069%) hue-rotate(349deg) brightness(94%) contrast(76%);
    --dourado:#c09a4c;
    --creme: #decbb2;
    --violeta: #452151;
    --violeta-escuro: #2d1137;
    
    --animate-duration: 2s;
    --animate-delay: 1s;
}

/* ########################################################################################################### */
/* common */


@import url('https://fonts.googleapis.com/css2?family=Merriweather:ital,opsz,wght@0,18..144,300..900;1,18..144,300..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


.merriweather-bold {
  font-family: "Merriweather", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.montserrat {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.montserrat-bold {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

/*------------------------------------------------------------------------------------------------------------*/
@font-face {
    font-family: "serenity-bold";
    src: url("/fontes/serenity-bold.woff2") format("woff2"),
        url("/fontes/serenity-bold.woff") format("woff"),
        url("/fontes/serenity-bold.otf") format("opentype");
    font-display: swap;
    font-style: normal;
    font-weight: 700;
    font-stretch: normal;
}
@font-face {
    font-family: "serenity-light";
    src: url("/fontes/serenity-light.woff2") format("woff2"),
        url("/fontes/serenity-light.woff") format("woff"),
        url("/fontes/serenity-light.otf") format("opentype");
    font-display: swap;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
}

/*------------------------------------------------------------------------------------------------------------*/
strong {   font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal; !important;}
body {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
    background: var(--bgbranco);
}

header {
    display: flex;
    align-content: center;
    justify-content: start;
    background: var(--cyan-medium);
    margin-bottom: 40px;
    min-height: 220px;
}

header .titulo {
    position: relative;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    color: var(--branco);
    font-size: 40px;
    margin: 0;
}

.container {
    width: 100%;
    max-width: 1310px;
    margin: auto;
    padding: 0 15px;
}

.nopadding {
    padding: 0 !important;
}
.transition {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.transition2 {
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.img_responsive {
    width: 100%;
    height: auto;
}

.shadow {
    box-shadow: 3px 4px 6px 1px rgba(0,0,0,0.3);
    -webkit-box-shadow: 3px 4px 6px 1px rgba(0,0,0,0.3);
    -moz-box-shadow: 3px 4px 6px 1px rgba(0,0,0,0.3);
}

.hideme {
    display: none !important;
}
.dropshadow_light {
    -webkit-box-shadow: 4px 4px 4px -2px rgba(40,40,40,0.1);
    -moz-box-shadow: 4px 4px 4px -2px rgba(40,40,40,0.1);
    box-shadow: 4px 4px 4px -2px rgba(40,40,40,0.1);
}
/* ### */
.preload-blur {
    filter: blur(5px);
    transition: filter 0.5s ease;
}
.preload-ok {
    filter: none !important;
}
/* ### */
.line_gray {
    width: 100%;
    height: 1px;
    background-color: var(--gray-middle);
}
/* ### */
.loader {
    width: 40px;
    height: 40px;
    --c:no-repeat linear-gradient(gray 0 0);
    background: var(--c),var(--c),var(--c),var(--c);
    background-size: 21px 21px;
    animation: l5 1.5s infinite cubic-bezier(0.3,1,0,1);
}
@keyframes l5 {
   0%   {background-position: 0    0,100% 0   ,100% 100%,0 100%}
   33%  {background-position: 0    0,100% 0   ,100% 100%,0 100%;width:60px;height: 60px}
   66%  {background-position: 100% 0,100% 100%,0    100%,0 0   ;width:60px;height: 60px}
   100% {background-position: 100% 0,100% 100%,0    100%,0 0   }
}
/*------------------------------------------------------------------------------------------------------------*/
.youtube_widget {
    display: flex;
    width: 100%;
    height: auto;
    border-radius: 32px;
    margin:40px 0;
    cursor: pointer;
}
.youtube_widget img {
    border-radius: 32px;
    display: block;
    width: 100%;
    height: auto;
    position: relative;
}

.youtube_widget iframe {
    width: 100%;
    height: auto;
    margin: auto;
    aspect-ratio: 16 / 9;
    border-radius: 32px;
    background: var(--black);
}
/*------------------------------------------------------------------------------------------------------------*/
/* ########################################################################################################### */
/* menu */

#menu {
    -webkit-box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.20);
    -moz-box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.20);
    box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.20);
    height: auto;
    background: var(--violeta);
    width: 100%;
    position: relative;
}

#menu .bartop {
    width: 100%;
    height: 8px;
    background: var(--violeta);
}

#menu .group_menu_desktop {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin: 10px 0 10px 0;
    height: 57px;
}

#menu .logo_top {
    width: 100%;
    max-width: 550px;
    height: auto;
    padding:60px;
    margin: auto;
}


/*------------------------------------------------------------------------------------------------------------*/
.desktop_menu {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-evenly;
    gap: 15px;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 13px;
    height: 65px;
}

.bg_rosa {
    background: var(--rosa);
}

.desktop_menu .line_text li {
    text-wrap: nowrap;
}

.desktop_menu .line_text {
    position: relative;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    text-decoration: none;
    color: var(--gray-menu-hamburger);
    font-size: 16px;
}

.desktop_menu .navactive,
.desktop_menu .line_text:hover {
    text-decoration: none;
    color: var(--violeta);
}

.desktop_menu .navactive {
    cursor: default;
}

.desktop_menu .navactive::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    bottom: -2px;
    left: 0;
    background-color: var(--violeta);
    transform: scaleX(1);
    transform-origin: top center;
}



.desktop_menu .line_text:hover::before {
    transform: scaleX(1);
}

.desktop_menu .line_text::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    bottom: -2px;
    left: 0;
    background-color: var(--violeta);
    transform: scaleX(0);
    transform-origin: top center;
    transition: transform 0.5s ease;
}

#menu .bt_resultado_exames {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 8px;
    gap: 8px;
    width: 125px;
    height: 50px;
    background: var(--cyan-light);
    border-radius: 6px;
    color: var(--cyan);
    text-align: left;
    text-decoration: none;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
  font-style: normal;
    border: 1px solid var(--cyan);
}

#menu .bt_resultado_exames:hover {
    background: var(--cyan);
    color: var(--branco);
}

#menu .icon_resultado_exames {
    filter: var(--filter-to-cian);
    width: 24px;
    height: 24px;
}

#menu .bt_resultado_exames:hover .icon_resultado_exames {
    filter: var(--filter-to-white);
}

/*###*/

#menu .bt_acessar_site {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 8px;
    align-items: center;
    padding: 8px;
    font-size: 16px;
    width: 170px;
    height: 50px;
    border-radius: 6px;
    background: var(--red);
    color: var(--branco);
    text-align: left;
    text-decoration: none;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

#menu .bt_acessar_site:hover {
    background: var(--red-dark);
}

#menu .icon_seta_acessar_site {
    filter: var(--filter-to-white);
    width: 15px;
    height: 15px;
    margin-top: 4px;
}

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

.menu_two {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: start;
    gap: 5px;
    line-height: 180%;
}

.icon_menu_desktop {
    width: 28px;
    height: 28px;
    filter: var(--filter-to-gray);
    scale: 0.9;
}

.menu_two:hover .icon_menu_desktop,
.navactive .icon_menu_desktop {
    scale: 1;
    filter: var(--filter-to-red);
}

/* ############################################################################# */
/* ############################################################################# */
/* ############################################################################# */
#mobile_menu {
    display: none;
}
.mobnav {
    display: none;
}
@media only screen and (max-width: 768px) {

    .fullnav {
        display: none;
    }

    .mobnav {
        display: block;
        position: absolute;
        right: 0px;
        z-index: 999;
        top:0;
    }

    #mobile_menu ul {
        padding: 20px 0;
        margin: 0;
        text-align: center;
    }

    .groupmenu  {
        z-index: 998;
        width: 100%;
        height: auto;
        background: var(--rosa);
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .groupmenu ul li {
        list-style-type: none;
        padding: 15px 0;
    }

    .groupmenu  a {
    text-decoration: none;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-style: normal;
    font-weight: 700;
    font-size: 13px;
    line-height: 100%;
    color: var(--gray-menu-hamburger);
    text-transform: uppercase;
    }

    .groupmenu a:hover, .groupmenu .navactive {
        color: var(--violeta);
    }



    /* ################## BUTTON HAMBURGER START */
#menuToggle
{
    position: absolute;
    top: 30px;
    right: 20px;
}



#menuToggle input
{
  display: block;
  width: 50px;
  height: 40px;
  position: absolute;
  top: -6px;
  left: -5px;
  
  cursor: pointer;
  
  opacity: 0; /* hide this */
  z-index: 2; /* and place it over the hamburger */
  
  -webkit-touch-callout: none;
}

/*
 * Just a quick hamburger
 */
#menuToggle span
{
  display: block;
  width: 40px;
  height: 4px;
  margin-bottom: 7px;
  position: relative;
  
  background: var(--gray-menu-hamburger);
  border-radius: 3px;
  
  z-index: 1;
  
  transform-origin: 4px 0px;
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

#menuToggle span:first-child
{
  transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2)
{
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span
{
  opacity: 1;
  transform: rotate(45deg) translate(-10px, -21px);
  background: var(--gray-menu-hamburger);
}


/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2)
{
    transform: rotate(-45deg) translate(-4px, 15px);
}

}
/* ################## BUTTON HAMBURGER END */
/* ############################################################################# */

#home .box_banner {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    background-image: url('/imagens/bg_banner_home5.webp');
    background-size: cover;
    background-position: center;
    margin: auto;
    width: 100%;
    height: auto;
}

#home .adjust_selo {
  display: flex;
  justify-content: end;
  margin-right: 30px;
  padding-top: 30px;
}

#home .selo_banner {
    width: 70px;
    height: auto;
}

    #home .hide_group_banner {
        display: flex;
    }

@media only screen and (max-width: 768px) {
    #home .hide_group_banner {
        display: none !important;
    }

    #home .bg_alphawhite {
    border-radius: 20px !important;
    }


}

#home .bg_alphawhite {
    background: rgba(255, 255, 255, 0.6);
    border-radius: 0 20px 20px 0;
}

#home .group_banner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex:1;
    padding: 10px;
    min-width: 50%;
    box-sizing: border-box;
    height: 100%;
}

#home .banner_topo {
    width: 50%;
    border-radius: 20px 0 0 20px;

}

#home .titulo_banner {
    width: 100%;
    margin: auto;
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 42px;
    color: var(--violeta);
    /*text-shadow: 2px 2px 3px rgba(0,0,0,0.6);*/
    text-align: center;
    padding-bottom: 30px;
}

#home .text {
    /* text-indent: 30px; */
    padding: 0 8px;
    text-align: justify;
    color: var(--black);
    margin-bottom: 10px;
    font-size: 16px;
}

#home .nobottommargin {
    margin-bottom: 0 !important;
}

#home 

#icon_whatsapp_branco {
    width: 30px;
    height: 30px;
}

#home .inside_icon_whatsapp_home {
    fill: #25d366;
    width: 20px;
    height: 20px;
}

.bt_branco {
    /*width: 230px;
    height: 50px;*/
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 16px;
    background: var(--branco);
    border-radius: 20px 20px 20px 20px / 20px 0px 20px 0px;
    text-decoration: none;
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--violeta);
    text-shadow:none !important;
    font-size: 20px;
    padding: 20px;
}

.bt_branco:hover {
    background: var(--violeta);
    color: var(--branco);
}
@media only screen and (max-width: 1200px) {
    #home .text {
        font-size: 17px;
    }
}
@media only screen and (max-width: 998px) {
    #home .text {
        font-size: 18px;
    }
}

@media only screen and (max-width: 768px) {

    .bt_branco {
        width: 100%;
    }


}

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

#home {
  padding: 60px 0;
  background: var(--rosa);
  background-image: url("/imagens/padrao_1.webp");
}

#home .historia {
    width: 100%;
    height: auto;
    background: var(--violeta);
}
#home .historia .group_historia {
    display: flex;
    flex-direction: row-reverse;
    gap: 20px;
    width: 100%;
    justify-content: center;
    align-items: center;
    padding-top: 60px;
}

#home .historia .titulo {
    font-family: "Merriweather", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings: "wdth" 100;
    font-size: 36px;
    color: var(--branco);
    width: 35%;
}
#home .historia .text {
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--branco);
    font-size: 18px;
    width: 65%;
    padding-right: 30px;
    border-right: 5px solid #fff;
}


.bt_violeta {
    width: 250px;
    height: auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 16px;
    border-radius: 20px 20px 20px 20px / 20px 0px 20px 0px;
    text-decoration: none;
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    text-shadow:none !important;
    font-size: 20px;
    background: var(--violeta);
    color: var(--branco);
    border: 1px solid var(--branco);
    padding: 20px;
}

.bt_violeta:hover {
    background: var(--branco);
    color: var(--violeta);
    border: 1px solid var(--violeta);
}

.group_bt {
  padding: 30px 0 60px 0;
}


#home .titulo2 {
    height: 100%;
    width: 100%;
    margin: auto;
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 42px;
    color: var(--violeta);
    text-align: center;
    margin: 100px 0 30px 0;
}


#home .img_banner_equipe {
    filter:grayscale(1);
    border-radius: 10px;
}

#home .img_banner_equipe:hover {
    filter:grayscale(0);
}

.slider-container > * {
    display: flex;
    justify-content: center;
}


@media only screen and (max-width: 768px) {
    #home .historia .group_historia {
        flex-direction: column;
        padding-top: 30px;
    }
    #home .historia .titulo {
        width: 100%;
        text-align: center;
        max-width: 500px;
    }
    #home .historia .text {
        width: 100%;
        padding-right: 0;
        border-right: none;
    }
    .group_bt {
        padding: 30px 0;
    }
    .bt_violeta {
        width: 100%;
    }
}
/*------------------------------------------------------------------------------------------------------------*/

    #home .main_group {
        display: flex;
        gap: 30px;
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: center;

}

    #home .area_img {
        display: none;
    }

    #home .area_item {
        width: 100%;
        max-width: 230px;
        min-height: 175px;
        height: 100%;
        padding: 20px;
        margin-bottom: 20px;
        background: var(--violeta);
        border-radius: 10px;
        filter: grayscale(0.5);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;

    }

       #home .area_item .saibamais {
            color: var(--dourado);
            margin: auto;
            text-align: center;
            position: absolute;
            bottom: 6px;
            left: 30%;
        }

    #home .area_item:hover {
           filter: grayscale(0);
    }

    #home .area_text {
        opacity: 1;
        bottom: 43%;
        height: auto;
        position: unset;
        padding-top: 20px;
        width: 100% !important;
        height: 100% !important;
    }

    #home .area_item:hover .area_text {
        height: auto;
    }

    #home .area_img {
        opacity: 0;
    }

    #home .area_item_titulo {
        position: unset;
        top: 27%;
        font-size: 20px;
        padding-top: 20px;
        text-align: center;
        color: var(--branco);
    }

    #home .area_icon {
        margin:20px;
        height: 60px;
        margin: auto;
    }

    #home #publicacoes-list {
        display: grid;
        grid-gap: 25px;
        grid-template-columns: repeat(auto-fit, minmax(412px, 1fr));
    }

    #home .link_home_areas {
        text-decoration: none;
    }

    #home #publicacoes-list article {
        padding: 25px;
        background-color: rgba(255, 255, 255, 0.5);
        border-radius: 10px;
    }



/*------------------------------------------------------------------------------------------------------------*/
#publicacoes-list article {
  padding: 25px 0;
}

#publicacoes-list article h2 {
    margin-bottom: 12px;
    color: var(--violeta);
    font-size: 20px;
    font-family: "Merriweather", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings:
    "wdth" 100;
}

#publicacoes-list article h2 a {
    text-decoration: none;
    color: var(--violeta);
    font-size: 20px;
    font-family: "Merriweather", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings:
    "wdth" 100;
}

#publicacoes-list article h2 a:hover {
    color: var(--violeta);
    text-decoration: underline;
}

#publicacoes-list article p {
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    color: var(--gray);
    line-height: 150%;
    margin-bottom: 12px;
}

#publicacoes-list article .read-more {
    text-decoration: none;
    color: var(--violeta);
}

#publicacoes-list article .read-more:hover {
    color: var(--violeta);
    text-decoration: underline;
}

#publicacoes-list .pagination {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 15px;
}


#publicacoes-list .pagination .page-numbers {
    background: var(--dourado);
    padding: 15px;
    border-radius: 10px;
    text-decoration: none;
    color: var(--violeta);
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;

}

#publicacoes-list .pagination .page-numbers:hover, #publicacoes-list .pagination .current {
    background: var(--violeta);
    color:var(--dourado);
}
/*------------------------------------------------------------------------------------------------------------*/
/* equipe */

#equipe {
    padding: 60px 0;
    background: var(--rosa);
    background-image: url("/imagens/padrao_1.webp");
}

#equipe .group_equipe {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-content: center;
  padding-bottom: 40px;
}

#equipe .box {
    background: var(--violeta);
    padding: 30px;
    border-radius: 0 20px 20px 0;
}

#equipe .foto_equipe {
    background-size: cover;
    background-position: center top;
    min-width: 350px;
    height: auto;
    border-radius: 20px 0 0 20px;
    min-height: 420px;
}

#equipe .priscila {
    background-image: url('/imagens/equipe/priscila_pamela.webp');
}

#equipe .luciana {
    background-image: url('/imagens/equipe/luciana.webp');
}
#equipe .mariane {
    background-image: url('/imagens/equipe/mariane.webp');
}
#equipe .renata {
    background-image: url('/imagens/equipe/renata.webp');
}
#equipe .beatriz {
    background-image: url('/imagens/equipe/beatriz.webp');
}
#equipe .juliana {
    background-image: url('/imagens/equipe/juliana.webp');
}
#equipe .luiz {
    background-image: url('/imagens/equipe/luiz.webp');
}
#equipe .millena {
    background-image: url('/imagens/equipe/millena.webp');
}
#equipe .cristiane {
    background-image: url('/imagens/equipe/cristiane.webp');
}

#equipe .group_equipe .titulo {
    font-family: "serenity-bold", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    color: var(--branco);
    font-size: 26px;
    padding-bottom:10px;
}

#equipe .group_equipe .cargo {
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--branco);
    font-size: 20px;
    padding-bottom: 15px;
}

#equipe .group_equipe .text {
    color: var(--gray-menu-hamburger);
}

#equipe .text {
  font-size: 18px;
}


@media only screen and (max-width: 768px) {

    #equipe .group_equipe {
        flex-direction: column;
    }

    #equipe .foto_equipe {
        border-radius: 20px 20px 0 0;
        height: 100vw;
    }

    #equipe .box {
        border-radius: 0 0 20px 20px;
    }


}
/*------------------------------------------------------------------------------------------------------------*/
/* contato */

#contato {
  padding: 60px 0;
  background: var(--rosa);
  background-image: url("/imagens/padrao_1.webp");
}


/* FORM BEGIN   ############# */



#contato #formulario {
    color: var(--black);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 30px;
}

#contato #formulario input, #contato #formulario select, #contato #formulario textarea {
    width: 100%;
    background: var(--gray-light2);
    border-radius: 10px;
    border:0;
    padding:10px;
}

#contato #formulario input[required] + label:after, select[required] + label:after, #contato #formulario .require:after, #contato textarea + label:after  {
	content: '*';
	color: red;
}

/* ########### */

#contato #formulario .filefield {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 24px 40px;
    gap: 10px;
    width: 276px;
    height: 77px;
    border: 1px solid #D53E36;
    filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.1));
    border-radius: 8px;
}


#contato #formulario .filefield_ativo {
    background:#8cc63e !important;
    border: 2px solid var(--green) !important;
}


#contato #formulario .button-text {
    font-family: 'arboria-bold';
    font-size: 24px;
    line-height: 120%;
    color: var(--red);
}

#contato #formulario .button-text_ativo {
    color: var(--branco) !important;
}

#contato #formulario .custom-file-input:hover .button-text {
        color: var(--red-dark);
}

#contato #formulario .custom-file-input:hover .button-text_ativo {
        color: var(--branco) !important;
}


/* ########### */


#contato #formulario .radio-option {
  display: flex;
  gap: 5px;
}


#contato #formulario .group_single {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: start;
    gap: 10px;
    margin:10px 0;
}

#contato #formulario .group_radio {
    width: 100%;
    display: flex;
    flex-direction: row-reverse;
    justify-content: start;
    align-items: center;
    gap: 15px;
}

#contato #formulario .group_plus {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap:30px;
}

@media only screen and (max-width: 768px) {
    #contato #formulario .group_plus {
        flex-direction: column;
        gap:0;
    }
}

#contato #formulario .titulo {
  font-family: "serenity-bold", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    color: var(--violeta);
    font-size: 48px;
    padding-bottom: 20px;
}

#contato #formulario .spacetop {
    padding-top: 30px;
}

#contato #formulario label {
    font-size: 16px;
    line-height: 120%;
    color: var(--gray);
}

#contato #formulario .filespecs {
    font-size: 14px;
    line-height: 120%;
    color:var(--gray);
}

#contato #formulario .bt_enviar {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 12px 40px;
    gap: 10px;
    width: 100%;
    max-width: 350px;
    height: 77px;
    background: var(--violeta);
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
    font-size: 24px;
    color:var(--branco);
    border: 0;
    margin:30px 0;
}

#contato #formulario .bt_enviar:hover {
    background: var(--violeta-escuro);
}

#contato #formulario .bt_enviar:disabled {
    filter: grayscale(100%);
}

#contato #formulario #filewarning {
    font-family: 'arboria-bold';
    font-size: 14px;
    color: var(--red);
}





#contato #formulario #contato .file-input-container {
    position: relative;
    margin: 20px 0;
}

/* Esconde o input original */
#contato #formulario .file-input-container input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

#contato #formulario .file-input-container input[type="file"][required] + label::after {
    display:none;
}

/* Estiliza o label para parecer um botÃ£o */
#contato #formulario .custom-file-input {
    display: inline-block;
    padding: 24px 40px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    border: 2px solid var(--red);
    border-radius: 8px;
    width: 280px;
}

#contato #formulario .custom-file-input:hover {
    border: 2px solid var(--red-dark);

}



#contato .obrigado {
    padding: 150px 0;
    font-family: 'arboria-black';
    font-size: 48px;
    line-height: 120%;
    color: var(--gray-light);
    text-align: center;
}


.main_titulo {
  font-family: "serenity-bold", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    color: var(--violeta);
    font-size: 48px;
    padding-bottom: 20px;
}



/*------------------------------------------------------------------------------------------------------------*/
/* areas atuação */

#areas {
  padding: 60px 0;
  background: var(--rosa);
  background-image: url("/imagens/padrao_1.webp");
}

#areas .main_group {
    display: flex;
    flex-direction: row;
    gap: 32px;
    justify-content: start;
    flex-wrap: wrap;
    align-items: flex-start;
    min-height: 650px;
}

#areas .area_item {
    width: 100%;
    height: auto;
    background: var(--violeta);
    border-radius: 10px;
    padding: 10px 10px 20px 20px;
    cursor: pointer;
    transition: all 0.8s ease-in-out;
    position: relative; /* Para elementos absolutos internos */
    overflow: hidden; /* Para conter o conteúdo expandido */
    min-height: 100px;

}

/* Adicione estas novas regras */
#areas .area_item.active {
    z-index: 10; /* Traz o item ativo para frente */
}

#areas .area_text {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 140%;
    color: #FFFFFF;
    display: none; /* Ocultar por padrão */
    margin-top: 15px;
    transition: none !important;
    border-left: 3px solid var(--dourado);
    padding-left: 10px;
    border-radius: 4px;
}

#areas .overflowbox {
    overflow-y: auto;
    max-height: 450px;
    padding-right: 5px;
}

#areas .area_item_titulo {
  font-family: "serenity-bold", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 25px;
  line-height: 140%;
  color: #FFFFFF;
  text-align: left;
  position: relative;
}


.area_item_titulo::before {
  content: "+";
  position: absolute;
  right: 20px;
}

#areas .area_item.active .area_item_titulo::before {
  content: "-";
}

/*
@media only screen and (max-width: 1310px) {
    #areas .main_group {
        max-width: 842px;
        margin: auto;

    }
}

@media only screen and (max-width: 870px) {
        #areas .main_group {
            max-width: unset;
            justify-content: center;
        }
}

@media only screen and (max-width: 768px) {

    #areas .main_group {
        min-height: auto;
    }

    #areas .area_item {
        padding: 25px;
    }

    #areas .area_img {
        display: none;
    }

    #areas .area_item {
        width: 100%;
        height: auto;
    }

    #areas .area_text {
        opacity: 1;
        bottom: 43%;
        height: auto;
        position: unset;
        padding-top: 20px;
        width: 100% !important;
        height: 100% !important;
    }

    #areas .area_item:hover .area_text {
        height: auto;
    }

    #areas .area_img {
        opacity: 0;
    }

    #areas .area_item_titulo {
        position: unset;
        top: 27%;
        font-size: 20px;
        
    }

    #areas .area_icon {
        position: unset;
        opacity: 1;
        right: 40%;
        width: unset;
    }

    .overflowbox {
        overflow-y:auto !important;
        height:auto !important;
        padding-right: unset !important;
    }

}
*/
/*------------------------------------------------------------------------------------------------------------*/
/* publicacoes */

#publicacoes {
    padding:60px 0;
    background: var(--rosa);
    background-image: url("/imagens/padrao_1.webp");
}

#publicacoes article {
  padding: 25px;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 10px;
  margin-bottom: 20px;
}

#publicacoes article h2 {
    margin-bottom: 12px;
    color: var(--violeta);
    font-size: 20px;
    font-family: "Merriweather", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings:
    "wdth" 100;
}

#publicacoes article h2 a {
    text-decoration: none;
    color: var(--violeta);
    font-size: 20px;
    font-family: "Merriweather", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings:
    "wdth" 100;
}

#publicacoes article h2 a:hover {
    color: var(--violeta);
    text-decoration: underline;
}

#publicacoes article p {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
    font-size: 16px;
    color: var(--gray);
    line-height: 150%;
    margin-bottom: 12px;
}

#publicacoes article .read-more {
    text-decoration: none;
    color: var(--violeta);
}

#publicacoes article .read-more:hover {
    color: var(--violeta);
    text-decoration: underline;
}

#publicacoes .pagination {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 15px;
}


#publicacoes .pagination .page-numbers {
    background: var(--dourado);
    padding: 15px;
    border-radius: 10px;
    text-decoration: none;
    color: var(--violeta);
    font-family: "serenity-light", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;

}

#publicacoes .pagination .page-numbers:hover, #publicacoes .pagination .current {
    background: var(--violeta);
    color:var(--dourado);
}

#single-post {
    margin: auto;
    width: 100%;
}

#single-post time {
  font-size: 14px;
}

#single-post .post-content {
    padding: 20px 0;
}

#single-post h2 {
    margin-bottom: 0 !important;
}

#single-post article img {
    border-radius: 20px;
    margin: auto;
    margin-bottom: 20px;
    width: 100%;
    height: auto;
    max-width: 768px;
}
/*------------------------------------------------------------------------------------------------------------*/
/* footer */
footer {
    padding:60px 0;
    background: var(--violeta);
}

footer .logo_rodape {
    width: 250px;
    height: auto;
    margin-bottom: 15px;
}

footer .text {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: var(--gray-menu-hamburger);
  font-size: 18px;
  padding-bottom: 25px;
}

footer .text span {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    font-variation-settings: "wdth" 100;
    font-size: 20px;
    color: var(--gray-menu-hamburger);
}
.group_rs.topo_rs {
  position: absolute;
  top: 0;
  right: 10%;
}

.group_rs {
    display: flex;
    flex-direction: row;
    gap:15px;
    padding-top: 30px;
}
.icon_rs {
  width: 28px;
  height: 28px;
  opacity: 0.5;
}

.icon_rs:hover {
    opacity: 1;
}

footer .link_rodape {
  color: var(--gray-menu-hamburger);
  text-decoration: none;
  font-size: 20px;
}

footer .link_rodape:hover {
    color: var(--branco);
    text-decoration: underline;
}

footer .group_contacts {
    display: flex;
    flex-direction: column;
}

.img_sede_rodape {
  max-width: 230px;
  border-radius: 5px;
  filter: grayscale(1);
}

.img_sede_rodape:hover {
    filter: grayscale(0);
}

footer .group_single {
    max-width: 300px;
}


footer .group_plus {
    padding:30px 0;
    display: flex;
    justify-content: space-evenly;
    gap:50px;
}

footer .border_r {
    border-radius: 5px;
    margin-bottom: 20px;
}


@media only screen and (max-width: 768px) {

    .group_rs.topo_rs {
        right: 40%;
    }
    footer .group_plus {
        flex-direction: column;
        justify-content: center;
    }

    footer .group_single {
        max-width: unset !important;
        justify-content: center;
        align-items: center;
    }

    footer .group_contacts {
    justify-content: center;
    align-items: center;
    }

    footer .group_plus {
    padding: 0;
    }

    footer {
        padding: 20px;
    }

}
/*------------------------------------------------------------------------------------------------------------*/