body, html {
  font-family: 'Montserrat-Regular', sans-serif;
  


  /*overflow-x: hidden;*/
  color: #65656c;
  font-size: 20px;
  background: #f7f7f7;
  height: 100%;
}




/*@media (min-width:1200px) {
  .container {
   max-width: 1300px !important;
  }
}*/

a:hover {text-decoration: none !important;}
.center {text-align: center;}
.right {text-align: right;}
.mobile,.none {display: none;}
.vertical {margin: auto 0;}
.vertical_bottom {margin: auto 0 5px;}
.imgtotal img {width: 100%;}
strong {font-family: 'Montserrat-Bold', sans-serif;color: #365B6D;}
.btn.geral {background: #77c3cb;color: #fff;padding: 8px 15px;border-radius: 30px;font-size: 18px;margin-top: 10px;box-shadow: 4px 4px 9px -1px rgba(0,0,0,0.23);border-bottom: 4px solid #ffbd59;}
#iraotopo {position: fixed;bottom: 30px;right: 30px;z-index: 9999;width: 32px;height: 65px;text-align: center;background: #ffbd59;cursor: pointer;border: 0;border-radius: 20px;text-decoration: none;transition: opacity 0.2s ease-out;opacity: 0;}
#iraotopo:hover {background: #77c3cb;}
#iraotopo.show {opacity: 1;}
@keyframes fadeIn {0% { opacity: 0; }100% { opacity: 1; }}

.slideshow,.slideshow .swiper-container.swiper-container-initialized.swiper-container-horizontal.swiper-container-pointer-events {height: 100% !important;}

.blogs .box a {font-size: 20px !important;}


/* HEADER */
header {
    


    /*background: #365B6D url('../images/bg_topo.png');*/
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center center;
    padding: 40px 40px 60px 40px;
    height: 100%;
}
header .logo img {
    width: 80px;
}
header .menu .links {
    cursor: pointer;
}
.slideshow header h1 {
    width: 620px;
}
header h1 {
    font-family: 'ArbutusSlab-Regular', sans-serif;
    color: #fff;
    margin-top: 140px;
    font-size: 40px;
    margin-bottom: 20px;
}
header h2 {
    margin-bottom: 60px;
    font-size: 30px;
    font-family: 'Barlow-Bold', sans-serif;
    text-transform: uppercase;
    color: #ffbd59;
    text-shadow: 2px 2px 10px #333; 
}

header.menuB #menuA {
  display: none;
}
header.menuB #menuB {
  display: block;
}




/* HEADER MENU */
header.menuB {
    background: #365B6D url('../images/bg_topo2.png') !important;
    background-repeat: no-repeat;
    background-size: 100% !important;
    background-position: center center !important;
    padding: 40px 40px 60px 40px;
    color: #fff;
}
header.menuB .logo img {
    width: 80px;
}
header.menuB .acessos {
    margin-top: 120px;
    font-size: 14px;
}
header.menuB .acessos a {
    display: block;
    text-align: left;
    font-size: 25px;
    color: #fff;
    padding-left: 0;
    margin-bottom: 15px;
}
header.menuB .acessos .hvr-underline-from-left::before {
    background: #FFBD59;
    height: 2px;
}
header.menuB .social a {
    padding-left: 30px;
    display: inline-block;
}




/* POPUP */
#newsletter .btn_fechar {
    color: #001f3d;
    font-size: 15px;
    background: #ccc;
}
#newsletter .btn_entrar {
    color: #fff;
    font-size: 15px;
    background: #001f3d;
}
#newsletter .modal-footer {
    border: 0;
    padding-top: 0;
}




/* QUEM SOU */
#quemsou {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
}
#quemsou h2 {
    color: #365B6D;
    font-family: 'Barlow-Bold', sans-serif;
    font-size: 70px;
    margin-bottom: 60px;
}
#quemsou h3 {
    color: #001f3d;
    font-size: 20px;
    font-style: italic;
    margin-top: 40px;
}




/* SERVICOS */
#servicos {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#servicos h2 {
    color: #365B6D;
    font-family: 'Barlow-Bold', sans-serif;
    font-size: 70px;
    margin-bottom: 40px;
}
#servicos h3 {
    color: #001f3d;
    font-family: 'Madelyn', sans-serif;
    font-size: 33px;
    letter-spacing: 2px;
    margin-top: 35px;
    position: relative;
    z-index: 0;
}
#servicos h3::before {
    content: '';
    position: absolute;
    margin-top: -15px;
    margin-left: -35px;
    z-index: -1;
    background: url('../images/aspas.png');
    width: 71px;
    height: 56px;
    background-repeat: no-repeat;
}




/* AGENDA */
#agenda {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
}
#agenda h2 {
    color: #365B6D;
    font-family: 'Barlow-Bold', sans-serif;
    font-size: 70px;
}
#agenda .right {
    margin-bottom: 25px;
}
#agenda .box {
    padding: 8px 8px 15px;
    box-shadow: 0px 0px 7px 4px rgba(174, 174, 174, 0.2);
    border-radius: 20px;
    margin: 5px 15px;
    background: #fff;
}
#agenda .box a {
    color: #666;
    font-size: 13px;
}
#agenda .box p {
    margin: 0;
}
#agenda .box img {
    border-radius: 15px;
}
#agenda .box h3 {
    color: #365B6D;
    font-size: 23px;
    padding-top: 15px;
    font-family: 'Barlow-Bold', sans-serif;
}
#agenda .box .geral {
    margin-top: 15px;
}




/* DEPOIMENTOS */
.embedsocial-hashtag .es-widget-branding {
  display: none !important;
}

#depoimentos {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #253439;
    color: #fff;
    padding: 50px 0;
}
#depoimentos .logogoogle {
    margin-bottom: 40px;
}
#depoimentos h2 {
    color: #77c3cb;
    font-family: 'Barlow-Bold', sans-serif;
    font-size: 70px;
    margin-bottom: 40px;
}
#depoimentos h3 {
    color: #fff;
    font-size: 20px;
}
#depoimentos strong {
    color: #fff;
}
#depoimentos .swiper-button-prev {
    background-image: url("../images/arrows-left.png") !important;
    left: 0 !important;
    background-repeat: no-repeat !important;
    border-radius: 0 10px 10px 0;
    background-size: 60px 60px !important;
    width: 45px !important;
    background-color: #fff;
    height: 60px !important;
    margin-top: -45px;
}
#depoimentos .swiper-button-next {
    background-image: url("../images/arrows-right.png") !important;
    right: 0 !important;
    background-repeat: no-repeat !important;
    border-radius: 10px 0 0 10px;
    background-size: 60px 60px !important;
    width: 45px !important;
    background-color: #fff;
    height: 60px !important;
    margin-top: -45px;
}
#depoimentos .box {
    background: #fff;
    border-radius: 10px;
    padding: 15px 20px;
    color: #65656c;
    height: 250px;
}
#depoimentos .avatar {
    text-align: left;
}
#depoimentos .avatar .capa {
    width: 40px;
    float: left;
}
#depoimentos .avatar h4 {
    font-size: 14px;
    margin-left: 50px;
    padding-top: 0;
}
#depoimentos .avatar .selo {
    width: 15px;
}
#depoimentos .avatar .estrelas {
    width: 70px;
}
#depoimentos .dep {
    text-align: left;
    font-size: 15px;
    margin-top: 17px;
}
#depoimentos .dep p {
    margin: 0;
}




/* ARTIGOS */
#artigos {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#artigos h2 {
    color: #365B6D;
    font-family: 'Barlow-Bold', sans-serif;
    font-size: 70px;
    


    /*margin-bottom: 60px;*/
}
#artigos .swiper-button-prev {
    background-image: url("../images/arrows-left.png") !important;
    left: 0 !important;
    background-repeat: no-repeat !important;
    border-radius: 0 10px 10px 0;
    background-size: 60px 60px !important;
    width: 45px !important;
    background-color: #fff;
    height: 60px !important;
    margin-top: -45px;
}
#artigos .swiper-button-next {
    background-image: url("../images/arrows-right.png") !important;
    right: 0 !important;
    background-repeat: no-repeat !important;
    border-radius: 10px 0 0 10px;
    background-size: 60px 60px !important;
    width: 45px !important;
    background-color: #fff;
    height: 60px !important;
    margin-top: -45px;
}
#artigos .box {
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    margin-bottom: 20px;
    height: 220px;
    box-shadow: 0px 0px 7px 4px rgba(174, 174, 174, 0.2);
    position: relative;
    border: 0;
}
#artigos .hvr-grow {
    display: block;
}
#artigos .box .informacoes {
    padding: 30px 15px 10px;
    border-radius: 0 0 5px 5px;
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 31%, rgba(0,0,0,0.7) 100%);
    position: absolute;
    bottom: 0;
    width: 100%;
}
#artigos .box h3 {
    color: #fff;
    font-size: 20px;
    font-family: 'Barlow-Bold', sans-serif;
}
#artigos .box .btn {
    font-size: 13px;
    padding: 5px 10px;
}




/* INTERNO */
header.ribeiraopreto {
    background: url('../images/bg_topo_ribeiraopreto.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px;
    height: auto;
}
header.barrinha {
    background: url('../images/bg_topo_barrinha.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px;
    height: auto;
}
header.tadeu {
    background: url('../images/bg_topo_tadeu.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px;
    height: auto;
}
header.online {
    background: url('../images/bg_topo_online.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px;
    height: auto;
}
header.ribeiraopreto.menuB,header.barrinha.menuB,header.blog.menuB,header.tadeu.menuB,header.online.menuB {
    background: url('../images/bg_topo2.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px 40px 60px 40px;
    color: #fff;
}
header.blog {
    background: url('../images/bg_topo_blog.jpg');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    padding: 40px;
    height: auto;
}
header#interno h1 {
    text-shadow: 2px 2px 10px #000;
}

#conteudo {
    padding: 70px 0;
    background: #fff;
}
#conteudo .box {
    padding: 8px;
    box-shadow: 0px 0px 7px 4px rgba(174, 174, 174, 0.2);
    border-radius: 20px;
    margin: 5px 15px;
}
#conteudo .box h2 {
    color: #365B6D;
    font-size: 25px;
    padding-top: 25px;
    font-family: 'Montserrat-Bold', sans-serif;
}
#conteudo .box .destaque {
    width: 100%;
    border-radius: 10px;
    margin: 30px 0;
}
#conteudo.blogs .redessociais {
    position: absolute;
    right: 0;
    top: -50px;
}
#conteudo.blogs .redessociais a {
    font-size: 12px !important;
}
#conteudo.blogs .redessociais img {
    width: 30px;
}
#conteudo.blogs .box h3 {
    color: #365B6D;
    font-size: 16px;
    padding-top: 25px;
    font-family: 'Montserrat-Bold', sans-serif;
}
#conteudo.blogs .box img {
    border-radius: 15px;
}
#conteudo.blogs .box a {
    color: #365B6D;
    font-size: 12px;
}
#conteudo.blogs .box {
  padding: 8px;
}
#conteudo.blogs .box .destaque {
    margin-top: 0;
}




/* NOVO LAYOUT */
header.explorar h1 {margin-top: 90px;}
header.explorar h2 {margin-bottom: 0;}

header.novoLayout {
    padding: 0;
}
header.novoLayout.explorar .espaco {
  padding: 40px 40px 89px 40px;
}
header.novoLayout.treinamento .espaco {
  padding: 40px 40px 82px 40px;
}
header.novoLayout.eventos .espaco {
  padding: 40px 40px 82px 40px;
}
header.novoLayout .espaco {
    padding: 40px 40px 137px 40px;
}
header.novoLayout h1 {
    color: #001f3d;
}
header.novoLayout h2 {
    color: #001f3d;
    font-family: 'Barlow-Light';
    text-shadow: none;
    font-size: 25px;
}
header.novoLayout h3 { 
    color: #fff;
    font-family: 'Montserrat-Bold';
    margin-top: 200px;
    font-size: 65px;
    margin-bottom: 20px;
}
header.novoLayout h4 {
    margin: 0;
    font-size: 17px;
    font-weight: bold;
}
header.novoLayout h4 img {
    margin-bottom: 17px;
}
.novoLayout.explorar .cores .cor1, .novoLayout.explorar .cores .cor2, .novoLayout.explorar .cores .cor3, .novoLayout.explorar .cores .cor4 {
  padding: 35px 0;
}
.novoLayout .cores .cor1,.novoLayout .cores .cor2,.novoLayout .cores .cor3,.novoLayout .cores .cor4 {
    padding: 50px 0;
}
.novoLayout .cor1 {
    background: #ff914d;
}
.novoLayout .cor2 {
    background: #ffbd59;
}
.novoLayout .cor3 {
    background: #9c9d77;
}
.novoLayout .cor4 {
    background: #76c3cb;
}
.novoLayout .cor1 a,.novoLayout .cor2 a,.novoLayout .cor3 a,.novoLayout .cor4 a {
    color: #001f3d;
}


/* PSICOTERAPIA */
#camadapsico1,#camadapsico2,#camadapsico3,#camadapsico4 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#camadapsico1 h2,#camadapsico2 h2,#camadapsico3 h2,#camadapsico4 h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 40px;
    margin-bottom: 35px;
}
#camadapsico1 img,#camadapsico2 img,#camadapsico3 img {
    width: 100%;
    border-radius: 30px;
}

/* EVENTOS */
#camadaeventos {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}
#camadaeventos h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 35px;
    margin-bottom: 0;
}
#camadaeventos h2 span {
  position: absolute;
  left: -60px;
  font-size: 50px;
  margin-top: -3px;
}
#camadaeventos p {
    margin-bottom: 50px;
}
#camadaeventos p.ultimo {
    margin-bottom: 0;
}
#camadaeventos h3 {
    color: #ffbd59;
    font-family: Montserrat-Bold;
    font-size: 38px;
}
#camadaeventos a {
    background: #9c9c76;
    color: #fff;
    margin-top: 20px;
    text-transform: uppercase;
    width: 100%;
}

#calendario {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#calendario img {
    width: 100%;
    border-radius: 30px;
}
#calendario .box {
    background: #ffbd59;
    border-radius: 20px;
    padding: 30px;
}
#calendario .box h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 40px;
    margin-bottom: 25px;
}
#calendario .box .topico {
    font-size: 15px;
    border-bottom: 1px solid #fff;
    margin-top: 20px;
}
#calendario .box .topico strong {
    color: #001f3d;
    font-size: 17px;
}
#calendario .box .topico a {
    color: #001f3d;
    font-size: 15px;
}

#linksuteis {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#linksuteis h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 40px;
    text-align: center;
    margin-bottom: 40px;
}
#linksuteis .box {
    background: #ffbd59;
    border-radius: 15px;
    padding: 15px 15px 30px;
    margin-bottom: 20px;
}
#linksuteis .box h3 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 20px;
    margin: 0;
    padding-top: 30px;
    padding-left: 140px;
}
#linksuteis .box img {
    width: 120px;
    float: left;
    border-radius: 5px;
}
#linksuteis .box a {
    color: #001f3d;
    font-size: 15px;
    padding: 0 0 0 20px;
}

#acervo {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    background: #fff;
}
#acervo h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 40px;
    text-align: center;
    margin-bottom: 40px;
}
#acervo .box {
    padding: 10px 10px 5px;
    box-shadow: 0px 0px 7px 4px rgba(174, 174, 174, 0.2);
    border-radius: 15px;
    font-size: 17px;
}
#acervo .box h3 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 20px;
}
#acervo .box .redondo {
    border-radius: 5px;
}
#acervo .box a {
    color: #001f3d;
    font-size: 15px;
    border: 1px solid #001f3d;
}
#acervo .box a:hover {
    color: #ffff;
    font-size: 15px;
    background: #001f3d;
}

#sugestoes {
    background: #fff;
    padding-bottom: 60px;
}
#sugestoes img {
    width: 100%;
    margin-bottom: 40px;
}
#sugestoes h2 {
    color: #001f3d;
    font-family: Montserrat-Bold;
    font-size: 40px;
}
#sugestoes a {
    background: #001f3d;
    color: #fff;
    text-transform: uppercase;
    width: 100%;
}



/* FOOTER */
footer {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items:center;
    justify-content:center;
    


    /*height: 100%;*/
    background: #253439;
    color: #fff;
    padding: 50px 0;
}
footer .logo {
    width: 95px;
}
footer .logonome {
    display: block;
    margin: 20px 0 80px;
}
footer h2 {
    color: #fff;
    font-family: 'ArbutusSlab-Regular', sans-serif;
    font-size: 50px;
    margin: 20px 0 40px;
}
footer .social a {
    padding-right: 30px;
}
footer .creditos {
    margin-top: 40px;
    font-size: 14px;
}
footer .creditos a {
    color: #ccc;
}
footer .mapas {
    font-size: 12px;
}
footer .mapas h3 {
    color: #ffbd59;
    font-family: 'ArbutusSlab-Regular', sans-serif;
    font-size: 25px;
}
footer .mapas h3 span {
    color: #fff;
    font-size: 16px;
}
footer .mapas hr {
    border: 1px solid #515151;
}




/* FORMULÁRIOS */
#form_contato {
  background: #fff;
  padding: 40px 40px 20px;
  border-radius: 20px;
  box-shadow: 0px 0px 17px -6px rgba(0,0,0,0.14);
}

.faleconosco select.form-control:not([size]):not([multiple]) {
    height: calc(3rem + 2px);
}
:root {
  --input-padding-x: .75rem;
  --input-padding-y: .75rem;
}
.form-label-group {
    position: relative;
    margin-bottom: 1rem;
}
.form-label-group > input,.form-label-group > textarea,.form-label-group > label {
    padding: var(--input-padding-y) var(--input-padding-x);
}
.form-control {
    border-radius: 0.3rem;
}
.form-label-group > select {
    font-size: 14px;
}
.form-label-group > label {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    font-size: 14px;
    width: 100%;
    margin-bottom: 0;
    line-height: 1;
    color: #495057;
    border: 1px solid transparent;
    border-radius: 0.6rem;
    transition: all .1s ease-in-out;
}
.form-label-group input::-webkit-input-placeholder,.form-label-group textarea::-webkit-input-placeholder {
    color: transparent;
}
.form-label-group input:-ms-input-placeholder,.form-label-group textarea:-ms-input-placeholder {
    color: transparent;
}
.form-label-group input::-ms-input-placeholder,.form-label-group textarea::-ms-input-placeholder {
    color: transparent;
}
.form-label-group input::-moz-placeholder,.form-label-group textarea::-moz-placeholder {
    color: transparent;
}
.form-label-group input::placeholder,.form-label-group textarea::placeholder {
    color: transparent;
}
.form-label-group input:not(:placeholder-shown) {
    padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
    padding-bottom: calc(var(--input-padding-y) / 3);
}
.form-label-group input:not(:placeholder-shown) ~ label {
    padding-top: calc(var(--input-padding-y) / 3);
    padding-bottom: calc(var(--input-padding-y) / 3);
    font-size: 12px;
    color: #777;
}
.form-label-group textarea:not(:placeholder-shown) {
    padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
    padding-bottom: calc(var(--input-padding-y) / 3);
}
.form-label-group textarea:not(:placeholder-shown) ~ label {
    padding-top: calc(var(--input-padding-y) / 3);
    padding-bottom: calc(var(--input-padding-y) / 3);
    font-size: 12px;
    color: #777;
}




/* Fallback for Edge
-------------------------------------------------- */
@supports (-ms-ime-align: auto) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input::-ms-input-placeholder,.form-label-group textarea::-ms-input-placeholder {
    color: #777;
  }
}




/* Fallback for IE
-------------------------------------------------- */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input:-ms-input-placeholder,.form-label-group textarea:-ms-input-placeholder {
    color: #777;
  }
}