html{
  overflow-x: hidden;
  overflow-y: scroll;
}
html, body{
  height: 100vh;
  margin: 0;
  position: relative;
  background-color: #fff;
}
#wrapper{
  min-height: calc(100vh - 76px);
}
#content{
  position: relative;
}
.largura{
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
}
#footer{
  padding-top: 24px;
  padding-bottom: 15px;
  position: relative;
  width: 100%;
  transition: width 0.2s ease-in-out;
  border-top: 1px solid var(--border);
}
#footer:before{
  display: block;
  content: "";
  height: 5px;
  background-size: 100%;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
#footer .logo{
  vertical-align: middle;
  width: 150px;
}
#footer .menu-footer a{
  display: inline-block;
  padding: 10px;
  color: var(--text);
}
.cookie-notice{
  z-index: 9999;
  position: fixed;
  background: rgba(0,0,0,.9);
  color: #FFF;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 2rem 0;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow:    0px 0px 30px 0px rgba(0, 0, 0, 0.3);
  box-shadow:         0px 0px 30px 0px rgba(0, 0, 0, 0.3);
}
.cookie-notice .close-msg {
    float: right;
    color: var(--gray);
    padding: 4px 10px;
    opacity: 1;
}


/**HOME**/
.bg-top {
    position: relative;
    margin-bottom: 80px;
    width: 100%;
}
.bg-top .largura{
  position: relative;
  z-index: 1;
}
.bg-top:before {
    position: absolute;
    display: block;
    z-index: 0;
    bottom: 60px;
    right: 0;
    background: #cae6ff;
    left: 0;
    top: 0;
    content: "";
}
.bg-top:after{
  position: absolute;
  display: block;
  z-index: 0;
  border-radius: 0 0 50% 50%;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  bottom: -55px;
  width: 185vw;
  padding-bottom: 40%;
  background: rgb(243,249,255);
  background: -moz-linear-gradient(0, rgba(243,249,255,1) 0%, rgba(202,230,255,1) 100%);
  background: -webkit-linear-gradient(0, rgba(243,249,255,1) 0%, rgba(202,230,255,1) 100%);
  background: linear-gradient(0, rgba(243,249,255,1) 0%, rgba(202,230,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#F3F9FF",endColorstr="#CAE6FF",GradientType=1);
}
.bg-top.bg-paciente:before{
  background: #e2f5ff;
}
.bg-top.bg-paciente:after{
  background: rgb(184,233,255);
  background: -moz-linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  background: -webkit-linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  background: linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b8e9ff",endColorstr="#e3f6ff",GradientType=1);
}
.bg-top.bg-profissional:before{
  background: #e1e8fb;
}
.bg-top.bg-profissional:after{
  background: rgb(188,200,241);
  background: -moz-linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  background: -webkit-linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  background: linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#bcc8f1",endColorstr="#e2e9fc",GradientType=1);
}
.bg-top.bg-instituicao:before{
  background: #e7e7e7;
}
.bg-top.bg-instituicao:after{
  background: rgb(232,232,232);
  background: -moz-linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  background: -webkit-linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  background: linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#E8E8E8",endColorstr="#C6C6C6",GradientType=1);
}
.bg-top.bg-empresa:before{
  background: #ffeeb0;
}
.bg-top.bg-empresa:after{
  background: rgb(253,224,150);
  background: -moz-linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  background: -webkit-linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  background: linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fde096",endColorstr="#ffeeb0",GradientType=1);
}
.bg-top .logo img{
  width: 220px;
}
.bg-top .img{
  position: absolute;
  width: 100%;
  z-index: 0;
  left: 50%;
  bottom: -60px;
  transform: translateX(-50%);
}
/* .bg-top .shadow{
  text-shadow: 0px 0px 5px rgba(0,0,0,0.3);
} */
.main-search{
  position: relative;
  background:rgba(0,0,0,.1);
  border-radius: 16px;
  padding: 9px;
  max-width: 750px;
  margin: 0 auto;
}
.main-search > .row{
  background: #FFF;
  border-radius: 10px;
  margin: 0;
}
.main-search > .row .label-search{
  cursor: text;
  display: block;
  padding: 0 15px;
}
.main-search > .row .label-search input{
  padding: 1.5rem 10px;
  width: calc(100% - 25px);
  border:none;
}
.search-results{
  display: none;
  position: absolute;
  z-index: 10;
  top: 100%;
  left: 9px;
  right: 9px;
  background: #FFF;
  margin-top: -18px;
  padding-top: 9px;
  -webkit-box-shadow: 0px 8px 15px -8px rgba(0,0,0,0.2); 
  box-shadow: 0px 8px 15px -8px rgba(0,0,0,0.2);
}
.search-results a{
  color: var(--text);
  text-decoration: none;
}
.search-results a:hover{
  background: var(--hover);
}
.search-results .group{
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.search-results .group:last-child{
  border-bottom: none;
}
.search-results .group a{
  border-bottom: 1px solid var(--border-light);
}


/**FILTRO**/
.main-filter{
  max-width: 750px;
  margin: 0 auto;
}
.main-filter .carousel-cell{
  float: left;
}
.main-filter .tabs a{
  padding: 0 8px 4px 8px;
  border-bottom: 4px solid transparent;
  text-decoration: none;
  display: inline-block;
}
.main-filter .tabs.icones a{
  width: 108px;
  padding: 0 15px 10px 15px;
  min-height: 92px;
}
.main-filter .tabs.icones a p{
  white-space: normal;
  color: var(--gray);
}
.main-filter .tabs a:hover{
  color: var(--text);
}
.main-filter .tabs a.active{
  color: var(--text);
  border-bottom-color: var(--color);
}
.main-filter .tabs a .relative i:nth-child(2){
  position: absolute;
  left: 50%;
  top: 42%;
  transform: translateX(-50%)
}
.main-filter .tabs a .relative i.first-slash{
  position: absolute;
  left: 3px;
  bottom: 2px;
  top: initial;
  transform: initial
}
.main-filter .tabs a .relative i:nth-child(3){
  position: absolute;
  right: 0;
  top: 2px;
  transform: translateX(-50%)
}
.main-filter .flickity-prev-next-button.previous{
  left: -60px;
}
.main-filter .flickity-prev-next-button.next{
  right: -60px;
}
#filtros .tab{
  border-top: 1px solid var(--border);
}

/**search**/
.input-search{
  position: relative;
}
.input-search:before{
  display: block;
  content:"\f002";
  font-family:"Font Awesome 5 Pro";
  font-style:normal;
  font-weight:300;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.input-search > input{
  padding-left: 40px;
}
.input-search > .button{
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  position: absolute;
}
/**PRODUTO**/
#produtos .item{
  display: block;
  text-decoration: none;
  color: var(--text);
  position: relative;
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, 0);
  transition: all .3s ease,  text-indent 1ms ease;
  height: 370px;
}
#produtos .item:hover{
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, .2);
}
.item.bg-empresa{
  background: rgb(253,224,150);
  background: -moz-linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  background: -webkit-linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  background: linear-gradient(0, rgba(253,224,150,1) 0%, rgba(255,238,176,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fde096",endColorstr="#ffeeb0",GradientType=1);
}
.item.bg-profissional{
  background: rgb(188,200,241);
  background: -moz-linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  background: -webkit-linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  background: linear-gradient(0, rgba(188,200,241,1) 0%, rgba(226,233,252,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#bcc8f1",endColorstr="#e2e9fc",GradientType=1);
}
.item.bg-paciente{
  background: rgb(184,233,255);
  background: -moz-linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  background: -webkit-linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  background: linear-gradient(0, rgba(184,233,255,1) 0%, rgba(227,246,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b8e9ff",endColorstr="#e3f6ff",GradientType=1);
}
.item.bg-instituicao{
  background: rgb(232,232,232);
  background: -moz-linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  background: -webkit-linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  background: linear-gradient(180deg, rgba(232,232,232,1) 0%, rgba(198,198,198,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#E8E8E8",endColorstr="#C6C6C6",GradientType=1);
}
.item.bg-paciente,
.item.bg-profissional{
  padding-right: 50%!important;
}
.item.bg-paciente .img-cuidado{
  position: absolute;
  right: -20px;
  bottom: 0;
  max-width: 65%;
}
.item.bg-profissional .img-profissional{
  position: absolute;
  right: -20px;
  bottom: -35px;
  max-width: 55%;
}

.imgs-instituicao{
  width: 100%;
  padding-bottom: 60%;
  position: relative;
}
.imgs-instituicao .carousel{
  z-index: 1;
  position: absolute;
  width: 65%;
  top: 13%;
  left: 50%;
  transform: translateX(-50%);
}
.imgs-instituicao .background{
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
  text-align: center;
}
.instituicao .carousel-cell{
  width: 100%; /* full width */
  padding-bottom: 60%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.instituicao .carousel-cell img{
  display: block;
  position: absolute;
  max-height: 90%;
  max-width: 80%;
  top: 50%;
  transform: translateY(-50%);
}
#como-funciona{
  position: relative;
  background: rgb(228,239,249);
  background: -moz-linear-gradient(245deg, rgba(228,239,249,1) 0%, rgba(236,246,255,1) 100%);
  background: -webkit-linear-gradient(245deg, rgba(228,239,249,1) 0%, rgba(236,246,255,1) 100%);
  background: linear-gradient(245deg, rgba(228,239,249,1) 0%, rgba(236,246,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e4eff9",endColorstr="#ecf6ff",GradientType=1);
}
.img-como-funciona{
  position: absolute;
  right: 0;
  top: 50%;
  max-width: 50% ;
  height: 100%;
  transform: translateY(-50%);
  object-fit: cover;
  object-position: left center;
}

.user-img{
  width: 100px;
  max-width: 100%;
  object-fit: content;
  border-radius: 50%;
}
.user-img.medium{
  width: 60px;
}
.user-img.small{
  width: 28px;
}
.user-img.big{
  width: 220px;
}


/**LISTAGEM**/
#resultado{
  position: relative;
  padding-bottom: 80px;
}
#resultado:before{
  display: block;
  background: var(--light);
  content: "";
  border-radius: 60px 0 0 0;
  position: absolute;
  left: 50%;
  width: 50%;
  margin-left: 122px;
  top: 40px;
  bottom: 0;
}
.areas ul li{
  position: relative;
  padding-left: 2rem;
  line-height: 1.2;
}
.areas ul li:before{
  padding-left: 2rem;
  content: "\2022";
  color: var(--gray);
  position: absolute;
  left: -20px;
}
.box{
  position: relative;
  background: #FFF;
  border-radius: var(--border-radius);
  border: 1px solid var(--border-transparent);
  box-shadow: var(--box-shadow);
}
.box-data{
  max-width: 460px;
  margin: 0 auto;
}
.agenda{
  background: var(--light);
  position: relative;
  padding: 1.5rem 1.5rem 1rem 1.5rem;
  border-radius: var(--border-radius);
}
.agenda .title{
  border: 4px solid var(--light);
  border-radius: 50px;
  display: block;
  background: #FFF;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  padding: 5px 10px;
}
.agenda .horarios a{
  display: block;
  background: var(--color-dark);
  color: #FFFFFF;
  border-radius: 50px;
  padding: 10px;
  text-decoration: none;
  margin: 0 auto .5rem auto;
  width: 75px;
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, 0);
  transition: all .3s ease,  text-indent 1ms ease;
}
.agenda .horarios a.video-presencial{
  background-image: -webkit-linear-gradient(-45deg, var(--color-dark) 50%, var(--green) 50%);
}
.agenda .horarios a.presencial{
  background: var(--green);
}
.agenda .horarios a.half{
  background-image: -webkit-linear-gradient(-45deg, var(--color-dark) 50%, var(--green) 50%);
}
.agenda .horarios a:hover:not(.disabled){
  /* background: var(--color); */
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, .2);
}
.agenda .horarios a.disabled{
  background: #FFF;
  color: var(--text);
  cursor: default;
}
.agenda .arrow{
  position: absolute;
  width: 42px;
  height: 42px;
  border-radius: 50px;
  background: #FFF;
  border: 4px solid var(--light);
  color: var(--text);
  text-decoration: none;
  text-align: center;
  line-height: 34px;
  z-index: 2;
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, 0);
  transition: all .3s ease,  text-indent 1ms ease;
  top: 50%;
  margin-top: -21px;
}
.agenda .arrow:hover{
  border-color: var(--color);
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, .2);
}
.agenda .arrow.prev{
  left: -21px;
}
.agenda .arrow.next{
  right: -21px;
}

.tag-pacote {
  background: #009fd5;
  position: absolute;
  right: 0;
  top: 3px;
  padding: 10px 20px;
  color: #FFF;
}
.tag-pacote p {
    font-size: 10px;
    line-height: 1;
}
.tag-pacote p.medium {
    font-size: 14px;
    font-weight: 600;
}
.tag-pacote:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width:  0 10px 20px 0;
    border-color:  transparent #009fd5 transparent transparent;
    position: absolute;
    left: -10px;
    top: 0;
}
.tag-pacote:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 20px 10px;
    border-color: transparent transparent #009fd5 transparent;
    position: absolute;
    left: -10px;
    bottom: 0;
}


/**PAGAMENTO**/
.pagamento{
  position: relative;
  padding-bottom: 80px;
}
.pagamento:before{
  display: block;
  background: var(--light);
  content: "";
  border-radius: 60px 0 0 0;
  position: absolute;
  left: 50%;
  width: 50%;
  margin-left: 122px;
  top: 40px;
  bottom: 0;
}


/**LOGIN**/
body#page-login{
  background-color: #FFF;
}
body#page-login #wrapper{
  margin-left: 0;
  padding-top: clamp(60px, 15vh, 300px);
  background-position: 0px -30vh;
  background-repeat: no-repeat;
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(28, 162, 220, 0.15) 0%, rgba(28, 162, 220, 0) 100%);
}
body#page-login #wrapper #content{
  padding-top: 0;
}
body#page-login .bg-login{
  position: fixed;
  right: 0;
  top: 0;
  width: 58.333333%;
  height: 100vh;
  overflow: hidden;
}
body#page-login .bg-login img{
  width: 80px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
body#page-login .logo{
  max-width: 400px;
  margin:0 auto;
}
body#page-login .logo img{
  width: 300px;
}
.box-login{
  max-width: 400px;
  margin: 0 auto;
  background: #FFF;
}
.box-login input{
  background: transparent;
}
.show-hide-senha{
  position: absolute;
  right: 0;
  top: 34px;
  z-index: 2;
}
.senha-info{
  position: absolute;
  bottom: 50px;
  padding: 15px;
  z-index: 1;
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow:    0px 0px 10px 0px rgba(0, 0, 0, 0.3);
  box-shadow:         0px 0px 10px 0px rgba(0, 0, 0, 0.3);
}
.senha-info:after{  
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #ffffff transparent transparent transparent;
  position: absolute;
  bottom: -9px;
  left: 20px;
}
.show-senha{
  position: absolute;
  right: 0;
  bottom: 8px;
  display: block;
}

/**CONTATO**/
#page-contato #wrapper,
#page-contato #wrapper .bg-top,
#page-contato #wrapper .bg-top:before{
  background: #f0f7ff;
}
#page-contato #wrapper .bg-top:after,
#page-contato #wrapper .bg-top .img{
  display: none;
}

/**MANUTENCAO**/
#page-manutencao #wrapper{
  min-height: initial;
}
#page-manutencao #wrapper,
#page-manutencao #wrapper .bg-top,
#page-manutencao #wrapper .bg-top:before{
  background: #f0f7ff;
}
#page-manutencao #wrapper .bg-top:after,
#page-manutencao #wrapper .bg-top .img{
  display: none;
}

/**PROFISSIONAIS**/
.title-plano{
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  background: #f0f0f4;
}
.button-plano{
  position: absolute;
  left: 50%;
  margin-left: -95px;
  bottom: -30px;
}

/**PRODUTO**/
#box-quem-somos .box{
  min-height: 260px;
}

/**FAQ**/
#faq-list .item{
  position: relative;
}
#faq-list .item:before{
  position: absolute;
  content:"";
  display: block;
  width: 50%;
  top: 0;
  bottom: 0;
  left: 0;
  background: var(--light);
}
#faq-list .item.odd:before{
  right: 0;
  left: initial;
}

/**PACIENTES**/
.icone{
  width: 75px;
  height: 75px;
  border-radius: 20px;
  display: inline-block;
  color:#FFF;
  line-height: 75px;
  font-size: 32px;
}
.pacientes .carousel-cell {
  min-height: 100%;
  border: 1px solid #E5E7F5;
  border-radius: 30px;
  margin-right: 2vw;
}
.pacientes .flickity-prev-next-button{
  top: -100px;
  width: 42px;
  height: 42px;
  background: var(--color);
  border-radius: 10px;
}
.pacientes .flickity-prev-next-button .flickity-button-icon{
  fill: #FFF;
  left: 30%;
  top: 30%;
  width: 40%;
  height: 40%;
}
.pacientes .flickity-prev-next-button.previous{
  right: calc(5% + 50px);
  left: initial;
}
.pacientes .flickity-prev-next-button.next{
  left: initial;
  right: 5%;
}

    #timeline:before {
        content: "";
        width: 1px;
        height: 100%;
        background: #d4d4e7;
        left: 50%;
        top: 0;
        position: absolute
    }

    #timeline:after {
        content: "";
        clear: both;
        display: table;
        width: 100%
    }

    #timeline .timeline-small-item {
        padding: .875rem 1.25rem;
        background-color: #f0f0f4;
        max-width: 9.125rem;
        font-weight: 600;
        line-height: 1.42;
        letter-spacing: .025rem;
        text-align: center;
        color: #9294b6;
        text-transform: uppercase;
        font-size: .75rem;
        border-radius: 1rem
    }

    #timeline .timeline-item {
        position: relative
    }

        #timeline .timeline-item:after,
        #timeline .timeline-item:before {
            content: "";
            display: block;
            width: 100%;
            clear: both;
        }

        #timeline .timeline-item .timeline-item-content {
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%)
        }

        #timeline .timeline-item .white-box {
            width: 9.125rem;
            height: 6.25rem;
            background: #fff;
            overflow: hidden;
            position: relative;
            display: flex;
            flex-direction: column;
            justify-content: center
        }

        #timeline .timeline-item .white-box--bottom:before {
            bottom: 0
        }

        #timeline .timeline-item .white-box--bottom:before,
        #timeline .timeline-item .white-box--top:after {
            content: "";
            position: absolute;
            left: 50%;
            width: .4375rem;
            height: .4375rem;
            border: .0625rem solid #d4d4e7;
            transform: translateX(-50%);
            border-radius: 50%
        }

        #timeline .timeline-item .white-box--top:after {
            top: 0
        }

        #timeline .timeline-item .white-box--absolute {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%)
        }

        #timeline .timeline-item .white-box--top-center {
            position: absolute;
            top: 50%;
            transform: translateY(-50%)
        }

        #timeline .timeline-item .white-box--last {
            width: auto;
            height: 10rem
        }

        #timeline .timeline-item .timeline-icon {
            background: #fff;
            width: 50px;
            height: 50px;
            position: absolute;
            top: 50%;
            left: 50%;
            overflow: hidden;
            border: .0625rem solid #d4d4e7;
            color: var(--color);
            font-size: 1rem;
            font-weight: 600;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transform: translate(-50%,-50%)
        }

        #timeline .timeline-item .timeline-content {
            width: 41%;
            padding: 2.5rem;
            background-color: #fff;
            border: .0625rem solid #d4d4e7;
            border-radius: 1.25rem;
            transition: all .2s ease-in-out
        }

            #timeline .timeline-item .timeline-content h5 {
                margin-bottom: 1rem
            }

            #timeline .timeline-item .timeline-content p {
                line-height: 1.63;
                color: var(--gray-color)
            }

                #timeline .timeline-item .timeline-content p:last-child {
                    margin-bottom: 0;
                }

            #timeline .timeline-item .timeline-content.right {
                float: right;
            }

@media (min-width:1201px) {
    #timeline .timeline-item .timeline-content.shift {
        position: relative;
        top: -90px
    }
}

#timeline .timeline-item .timeline-content--extended-margin {
    margin-top: 4.375rem
}

@media (min-width:1201px) {
    #timeline .timeline-item.shift {
        height: 180px;
        overflow: visible
    }
}

#timeline .timeline-item:last-child {
    top: -6.25rem
}

#timeline .timeline-item--last {
    top: 0 !important;
    margin-top: 8.125rem
}

#timeline .timeline-item--extended-padding {
    padding-top: 4.5rem;
    margin-bottom: -1.875rem
}

@media screen and (max-width:1201px) {
    #timeline {
        margin: 30px;
        padding: 0;
        width: 90%
    }

        #timeline:before {
            left: 0
        }

        #timeline .timeline-item .timeline-content {
            width: 90%;
            float: right;
            margin-bottom: 2.1875rem
        }

            #timeline .timeline-item .timeline-content.right:before,
            #timeline .timeline-item .timeline-content:before {
                left: 10%;
                margin-left: -6px;
                border-left: 0;
                border-right: 7px solid red
            }

        #timeline .timeline-item .white-box--absolute {
            left: 0
        }

        #timeline .timeline-item .white-box--smaller {
            width: 4.375rem
        }

        #timeline .timeline-item .white-box--last h5 {
            font-size: 1rem
        }

        #timeline .timeline-item .timeline-item-content {
            left: 0;
            display: flex;
            justify-content: center
        }

        #timeline .timeline-item--extended-padding {
            padding-top: 6.25rem
        }

        #timeline .timeline-item .margin-60 {
            margin-top: 3.75rem
        }
}

@media screen and (max-width:768px) {
    #timeline {
        margin: 0;
        width: 100%
    }

        #timeline:before {
            display: none
        }

        #timeline .timeline-item .timeline-content {
            width: 100%
        }

        #timeline .timeline-item .timeline-content--extended-margin {
            margin-top: 0
        }

        #timeline .timeline-item .white-box--smaller {
            display: none
        }

        #timeline .white-box--absolute {
            transform: unset !important
        }

            #timeline .white-box--absolute:after,
            #timeline .white-box--absolute:before {
                display: none
            }

        #timeline .margin-60 {
            margin-top: 0 !important
        }

        #timeline .timeline-item .white-box--top:after,
        #timeline .timeline-item .white-box--top:before {
            display: none
        }

        #timeline .timeline-item--small .white-box {
            width: 100%;
            position: unset
        }

            #timeline .timeline-item--small .white-box .timeline-small-item {
                max-width: 100%;
                width: 100%;
                height: 4rem;
                align-items: center;
                align-content: center;
                display: flex;
                justify-content: center;
                margin-bottom: 2.5rem
            }

        #timeline .timeline-item--small .timeline-item-content {
            position: unset;
            transform: unset
        }

        #timeline .timeline-item--extended-padding {
            padding-top: 0
        }

        #timeline .timeline-item--last {
            margin-top: .625rem
        }

            #timeline .timeline-item--last .white-box {
                margin-top: 0 !important;
                width: 100%;
                display: flex !important;
                position: unset !important;
                flex-direction: row !important;
                height: unset !important;
                justify-content: flex-start !important
            }

                #timeline .timeline-item--last .white-box h5 {
                    margin-left: 1.875rem
                }
}


/**PROFISSIONAL**/
.accordion-item {
    border: 1px solid #F8F8FC;
    margin-bottom: 1rem;
    border-radius: 30px;
}

    .accordion-item.active {
        border: 1px solid #d4d4e7;
        background: #FFF;
    }

    .accordion-item .accordion-title {
        background: #F8F8FC;
        border-radius: 30px;
        padding: 1rem;
        transition: all 0.2s ease-in-out;
        color: var(--gray-color);
    }

    .accordion-item.active .accordion-title {
        background: #FFF;
        border-radius: 30px 30px 0 0;
        color: var(--color-dark);
    }

    .accordion-item .accordion-title .fa {
        opacity: 0;
        position: absolute;
        right: 1rem;
        font-size: 20px;
        top: 50%;
        transform: translateY(-50%);
        transition: all 0.2s ease-in-out;
    }

    .accordion-item:hover .accordion-title {
        color: var(--color-dark);
    }

    .accordion-item .accordion-title:hover {
        background: #F8F8FC;
    }

    .accordion-item:hover .accordion-title .fa {
        opacity: 1;
    }

    .accordion-item .accordion-content {
        padding: 0 75px 1rem 75px;
    }

.square-number {
    display: inline-block;
    top: -100px;
    font-size: 12px;
    width: 42px;
    height: 42px;
    background: var(--color);
    border-radius: 15px;
    line-height: 42px;
    text-align: center;
    transition: all 0.2s ease-in-out;
}

.accordion-item .accordion-title .square-number {
    background: none;
    border: 1px solid #d4d4e7;
    color: var(--gray-color);
}

.accordion-item.active .accordion-title .square-number {
    background: var(--color);
    border: 1px solid var(--color);
    color: #FFF;
}

.computer {
    position: relative;
    text-align: center;
}

    .computer .img {
        width: 170%;
    }

    .computer .screen {
        position: absolute;
        width: 100%;
        left: 17%;
        top: 5%;
    }



/**EMPRESA**/
.box-border {
    min-height: 100%;
    border: 1px solid #E5E7F5;
    border-radius: 30px;
}

.img-empresa {
    height: 7.1875rem;
    width: auto;
    max-width: 100%;
}
i.shadow{
  text-shadow: -4px 4px 0px #FFFFFF, -5px 5px 0px #CFD0DF;
}
.box-border .tag-ssp{
  position: absolute;
  left: 14px;
  bottom: 2.5rem;
  background: #f34165;
  padding: 5px;
}
.box-border .tag-ssp:after{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 10px 0 0;
  border-color: #f34165 transparent transparent transparent;
  position: absolute;
  top: 0;
  right: -9px;
}
.box-border .tag-ssp:before{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 0 0 10px;
  border-color: transparent transparent transparent #f34165;
  position: absolute;
  bottom: 0;
  right: -9px;
}
/**INSTITUICAO**/
.carousel-instituicao > .flickity-prev-next-button {
    width: 42px;
    height: 42px;
    background: var(--color);
    border-radius: 10px;
}

    .carousel-instituicao > .flickity-prev-next-button .flickity-button-icon {
        fill: #FFF;
        left: 30%;
        top: 30%;
        width: 40%;
        height: 40%;
    }

    .carousel-instituicao > .flickity-prev-next-button.previous {
        left: 50%;
        margin-left: -720px;
    }

    .carousel-instituicao > .flickity-prev-next-button.next {
        left: 50%;
        margin-left: 720px;
    }

.carousel-instituicao .screen {
    width: 100%;
    max-width: 1000px;
    border-radius: 2vw;
    border: 2vw solid #FFF;
    -webkit-box-shadow: 0px 0px 30px 0px rgba(100,108,156,.2);
    -moz-box-shadow: 0px 0px 30px 0px rgba(100,108,156,.2);
    box-shadow: 0px 0px 30px 0px rgba(100,108,156,.2);
}
.carousel-instituicao .screen .relative img{
  width: 100%;
  max-width: 1000px;
  display: block;
}
.carousel-sites {
  overflow: hidden;
  white-space: nowrap;
}
.carousel-sites .carousel-cell {
  display: inline;
  width: 100%;
}

.custom-pages .button {
    width: 42px;
    height: 42px;
    text-align: center;
    padding: 0;
    line-height: 42px;
}


/**BANNER PACOTES**/
.banner-pacotes {
    position: absolute;
    left: 5%;
    width: 300px;
    z-index: 5;
    top: 230px;
    background: rgba(40,51,73,.9);
}
.banner-pacotes .fecha-pacotes{
  position: absolute;
  right: 10px;
  top:10px;
  color: #FFF;
  padding: 10px;
}

/**BANNER SSP**/
.banner-ssp{
  position: absolute;
  display: block;
  left: 5%;
  width: 300px;
  z-index: 5;
  top: 230px;
}
.banner-ssp .fecha-pacotes{
  position: absolute;
  right: 10px;
  top:10px;
  color: #f34165;
  padding: 10px;
}
.banner-ssp > a:not(.fecha-pacotes){
  display: block;
  border: 3px solid #f34165;
  border-radius: var(--border-radius);
  color: var(--text);
}
.banner-ssp > a:not(.fecha-pacotes):hover{
  background: #f7e9ec;
  text-decoration: none;
}

/**BANNER APP**/
.banner-app{
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 6;
}
.banner-app .fecha-app{
  position: absolute;
  top: 7%;
  left: 52%;
}
.banner-app img{
  width: 100%;
  display: block;
}
.banner-app .buttons-banner{
  position: absolute;
  top: 0;
  left: 0;
  margin: 68% 43% 0 18%;
}

/* curriculum */
.curriculum{
  margin: 0 auto;
}
.curriculum .bg-light{
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}
.curriculum .areas ul li{
  margin-bottom: .5rem;
}


/**INSTAGRAM FOOTER**/
/* .instagram-feed {
  max-width: 350px;
  min-height: 208px;
} */
.instagram-feed .instagram-image,
.instagram-feed .instagram-video{
  display: block;
  position: relative;
  overflow: hidden;
  width: 14%!important;
  margin: 0 3px 3px 0 !important;
}
.instagram-feed .instagram-image img ,
.instagram-feed .instagram-video img {
  display: block;
  width: 100%;
  text-indent: -9999999px;
}

/** MEDIA QUERIES **/
@media only screen and (max-width: 1800px) {
    .banner-pacotes {
        left: 2%;
    }
}
@media only screen and (max-width: 1600px) {
    .largura {
        max-width: initial;
        padding-left: 5%;
        padding-right: 5%;
    }

    #resultado:before,
    #pagamento:before {
        right: 0;
        left: initial;
        width: 42.3333%;
        margin-left: 0;
    }

    .carousel-instituicao .flickity-prev-next-button.previous {
        left: 5%;
        margin-left: initial;
    }

    .carousel-instituicao .flickity-prev-next-button.next {
        left: initial;
        margin-left: initial;
        right: 5%;
    }
} 
@media only screen and (max-width: 1400px) {
}
@media only screen and (max-width: 1200px) {
    #resultado:before,
    .pagamento:before {
        width: 50%;
        top: 90px;
    }
  .curriculum{
    max-width: 460px;
  }
  .curriculum .bg-light{
    border-radius: var(--border-radius) var(--border-radius) 0 0;
  }
  .instagram-feed .instagram-image{
    width: 25%!important;
  }
}
@media only screen and (max-width: 991px) {
    .largura {
        padding-left: 15px;
        padding-right: 15px;
    }

    .pagamento:before {
        display: none;
        top: 90px;
    }

    .pacientes .flickity-prev-next-button.previous {
        right: calc(65px);
        left: initial;
    }

    .pacientes .flickity-prev-next-button.next {
        left: initial;
        right: 15px;
    }

    .carousel-instituicao .flickity-prev-next-button.previous {
        left: 15px;
        margin-left: initial;
    }

    .carousel-instituicao .flickity-prev-next-button.next {
        left: initial;
        margin-left: initial;
        right: 15px;
    }
}

@media only screen and (max-width: 960px) {
  #wrapper{
    min-height: calc(100vh - 148px);
  }
}
@media only screen and (max-width: 767px) {
  #resultado:before{
    display: none;
  }
  #faq-list .item:before{
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .bg-top:before{
    bottom: 0;
  }
    .bg-top .text-60 {
        font-size: 40px;
    }

    #produtos .item {
        min-height: 370px;
        height: auto;
    }

    .item.bg-empresa .responsive {
        margin-bottom: -100px;
    }

    .item .imgs-instituicao {
        margin-bottom: -80px;
    }
}
@media only screen and (max-width: 575px) {
}
@media only screen and (max-width: 480px) {
    #page-manutencao .text-30 {
        font-size: 20px;
    }

    #page-manutencao .text-60 {
        font-size: 40px;
    }
}
@media only screen and (max-height: 480px){
}
@media only screen and (max-width: 370px) {
}
@media (min-width: 992px) {
}
@media (min-width: 640px) {
}

@media print {
  html, body {
    width: auto;
    height: auto;
    background: #FFF;
    position: relative;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
  }
}

/**search**/
.search{
  position: relative;
}
.search:before{
  display: block;
  content:"\f002";
  font-family:"Font Awesome 5 Pro";
  font-style:normal;
  font-weight:300;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.search > input{
  padding-left: 40px;
}
.search > .button{
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  position: absolute;
}
/**DATAPICKER**/
.calendar{
  position: relative;
}
.calendar:before{
  display: block;
  content:"\f073";
  font-family:"Font Awesome 5 Pro";
  font-style:normal;
  font-weight:300;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.calendar > input{
  padding-left: 40px;
}
.calendar > .button{
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  position: absolute;
}
.list-diagnostico .box .bg-white{
  height: 95px;
}

/**IMC**/
.text-disabled-imc{
  position: absolute;
  background: rgba(255,255,255,.97);
  text-align:center;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  padding: 1rem;
  font-weight: 600;
}
.imc {
  width: 15px;
  border-radius: 50px;
  margin: 0px 130px;
}
.imc > div {
  height: 36px;
  text-align: center;
  position: relative;
  padding-top: 5px;
}
.imc > div:first-child {
  border-radius: 30px 30px 0px 0px;
}
.imc > div:last-child {
  border-radius: 0px 0px 30px 30px;
}
.imc p.medium {
  position: absolute;
  right: 30px;
  width: 130px;
  text-align: right;
  top: 50%;
  transform: translateY(-50%);
}
.imc p.regular {
  position: absolute;
  left: 30px;
  width: 130px;
  text-align: left;
  top: 50%;
  transform: translateY(-50%);
}
.imc > div.active::before {
  content: "";
  width: 25px;
  height: 25px;
  display: block;
  background: inherit;
  border-width: 5px;
  border-style: solid;
  border-color: rgb(255, 255, 255);
  border-image: initial;
  margin: 0 0 0 -5px;
  border-radius: 50%;
}

/** DEPOIMENTOS**/
#depoimentos .carousel{
  white-space: nowrap;
  margin-bottom: 40px;
}
#depoimentos .flickity-page-dots{
  bottom: -35px;
}
#depoimentos .carousel-cell{
  width: 100%;
  display: inline-block;
  white-space: initial;
}
.img-depoimento{
  display: inline-block;
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  background: var(--color);
  border-radius: 50%;
  color: #FFF;
}
.img-depoimento img{
  display: block;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: contain;
}
.loading-div {
    position: fixed;
    top: 0px;
    left: 0px;
    background-color: rgba(255,255,255,0.8);
    z-index: 1000000;
    width: 100%;
    height: 100%;
}

.box-loading {
    width: 270px;
    text-align: center;
    left: 50%;
    position: absolute;
    margin-left: -135px;
    top: 50%;
    margin-top: -50px;
}
