/*
 * Font-face
*/
@font-face {
    font-family: 'Avenir Next LT Pro Bold';
    src: url('../fonts/AvenirNextLTPro-Bold.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next LT Pro Regular';
    src: url('../fonts/AvenirNextLTPro-Regular.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next LT Pro DemiCn';
    src: url('../fonts/AvenirNextLTPro-DemiCn.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-DemiCn.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next LT Pro BoldCn';
    src: url('../fonts/AvenirNextLTPro-BoldCn.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-BoldCn.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next LT Pro Demi';
    src: url('../fonts/AvenirNextLTPro-Demi.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-Demi.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next LT Pro It';
    src: url('../fonts/AvenirNextLTPro-It.woff2') format('woff2'),
        url('../fonts/AvenirNextLTPro-It.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}



/*
 * Default
*/

body, html {
    padding: 0;
    margin: 0
}

ul, ul li {
    margin: 0;
    padding: 0;
    list-style: none
}

.hidden, .not-view {
    visibility: hidden
}

.float-left, .pull-left {
    float: left
}

.float-right, .pull-right {
    float: right
}

a, button {
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

a.cursor-default {
    cursor: default
}

.p-r-0 {
    padding-right: 0px !important;
}
.m-t-0{
    margin-top: 0px !important;
}
.text-center-justify{
    text-align: justify;
    text-align-last: center;
}

/* 
 * Custon 5 colluns
 */

.col-md-2-5 {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
    position:relative;
    float: left;
    padding-left: 15px;
    padding-right: 15px;
}

.visible-xs {
    display: none
}

.img-fluid {
    display: block;
    max-width: 100%
}

.center-block {
    display: block;
    margin: 0 auto
}

/*
 * Main
*/

body {
    font-family: 'Avenir Next LT Pro Regular';
    font-size: 16px;
    color: #868686;
    background: #CBE4DD;
}

.header {
    position: fixed;
    top: 0px;
    z-index: 99;
    width: 100%;
}

.header>div {
    background: #FFF;
    -webkit-border-bottom-right-radius: 1rem;
    -webkit-border-bottom-left-radius: 1rem;
    -moz-border-radius-bottomright: 1rem;
    -moz-border-radius-bottomleft: 1rem;
    border-bottom-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
}

.logo {
    padding: 1rem 1rem 1rem 2rem;
}

.header-nav ul {
    width: 95%;
    max-width: 100%;
    float: right;
    list-style: none;
    padding: 0px;
    margin: 0px;
    height: 100%;
}

.header-nav ul li {
    float: left;
    width: 20%;
    height: auto;
    list-style: none;
    height: 100%;
    text-align: center;
}
.header-nav ul li:first-child{
    width: auto;
}
.header-nav ul li:first-child a{
    padding: 1rem 2rem;    
}

.header-nav ul li.active {
    background: #41CEA4;
    color: #FFF;
}
.header-nav ul li .home-icon{
    color: #777777;
    fill:#777777;
}
.header-nav ul li.active .home-icon,
.header-nav ul li.active a{
    color: #FFF !important;
    fill: #fff;
}
.header-nav ul li>span {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}

.header-nav ul li a, .header-nav ul li a:visited {
    font-size: 1.3rem;
    color: #777777;
    text-decoration: none;
    display: block;
    text-align: center;
    width: 100%;
}

.header-nav ul li a:focus, .header-nav ul li a:hover
.header-nav ul li:focus, .header-nav ul li:hover {
    background: #41CEA4;
    color: #FFF !important;
    fill: #fff !important;
}
.header-nav ul li:hover a,
.header-nav ul li:hover .home-icon{
    color: #fff !important;
    fill: #fff !important;
}
.header-nav ul li.active:hover a{
    background: #41CEA4;
    color: #FFF;
}



/*Sections*/

#slider, #main, #footer {
    position: relative;
    float: left;
    width: 100%;
    max-width: 100%;
    padding: 0px;
    margin: 0px;
}

/*Slider*/

.carousel, .carousel-inner, .carousel-item {
    height: 800px;
}

.carousel {
    background-image: url('../images/slider.png');
    background-repeat: no-repeat;
    background-size: cover;
}

.carousel-caption {
    right: 0;
    bottom: 0;
    left: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    top: 0;
}

.carousel-caption>div {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}

.carousel-caption>div>div {
    position: relative;
    display: block;
    width: 100%;
    padding: 2.5rem 0rem;
    text-align: center;
    background: rgba(36, 71, 85, .56);
    align-items: center;
}
.carousel-caption>div>div::after{    
    position: absolute;
    float: left;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .2);
    content: "";
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    z-index: -1;
}

.carousel-caption h5 {
    font-size: 4.375rem; /*70*/
    font-family: 'Avenir Next LT Pro Bold';
    font-weight: bold;
    font-style: normal;
    margin-bottom: 0px;
    padding-bottom: 0rem;
}
.carousel-caption p{
    font-size: 1.5625rem; /*25px*/
    font-family: 'Avenir Next LT Pro Bold';
    font-weight: bold;
    font-style: normal;
    margin-bottom: 0px;
}
.carousel-control-prev, .carousel-control-next{
    width: 5%;
    z-index: 100;
}
.carousel-control-prev-icon, .carousel-control-next-icon{
    background-color:#244755;
    width: 50px;
    height: 50px;
    background-size: 50%;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    
}
/*main*/
#main > div{
 background: #FFF;
 -webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px; 
-webkit-border-bottom-right-radius: 50px;
-webkit-border-bottom-left-radius: 50px;
-moz-border-radius-bottomright: 50px;
-moz-border-radius-bottomleft: 50px;
border-bottom-right-radius: 50px;
border-bottom-left-radius: 50px;
}
.default-bottom-border-radius{
    -webkit-border-bottom-right-radius: 50px;
-webkit-border-bottom-left-radius: 50px;
-moz-border-radius-bottomright: 50px;
-moz-border-radius-bottomleft: 50px;
border-bottom-right-radius: 50px;
border-bottom-left-radius: 50px;
}
#main > div, .bg-gray, .bg-green{
    padding-top:4rem;
    margin-top: 2rem;
}
#parceiros{
    padding-top:4rem;
}
.bg-gray, .bg-green{
    padding-bottom:4rem !important;
}
.bg-gray.min-padding-bottom{
    padding-bottom:2rem !important;
}
.bg-green{
    margin-top: 0px;
}
#main{
    margin-bottom: 1rem;
}
/* titles and texts */
.big-title,
.title,
.small-title{
    font-family: 'Avenir Next LT Pro Bold';
}
.text-green{
    color:#219774;
}
.big-title{
    font-size: 3.125rem; /*50px*/
    line-height: 1;
}
.title{
    font-size: 1.875rem;/*50px*/
    line-height: 1;
}
.small-title{
    font-size: .95rem; /*15.3px*/
    line-height: 1.2;
}
.extra-line-height{
    line-height: 1.8;
}

.btn-theme{
    background: none;
    border: 1px solid #FFF;
    color: #FFF;
    font-weight: bold;
    box-shadow: none;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 5px 70px
}
.btn-theme:hover{
    background: #fff;
    color: #219774;
}

.big-text{
    font-size: 1.5625rem; /*25px*/
    line-height: 1;
}
.text{
    font-size: .95rem; /*15.3px*/
    line-height: 1.2;
}
.default-padding-bottom{
    padding-bottom: 1rem;
}
.default-padding-top{
    padding-top: 1rem;
}
.default-padding-left{
    padding-left: 1.5625rem;
}
.default-padding-right{
    padding-right: 1.5625rem;
}
/*Serviços*/
.bg-gray{
    background:#E8E8E8;
    margin-left: -15px;
    margin-right: -15px;
}
.service-item img{
    padding-top:2rem; 
    max-width: 100px;
    margin-bottom: 1rem;
}
img.margin-top-tree{
    padding-top:1rem !important; 
}
/*parceiros*/
.parceiro-box img{
    max-width: 140px;
    margin-bottom:2rem; 
}
/*Contact*/
.bg-green{
    background:#1A7255;
    margin-left: -15px;
    margin-right: -15px;
    color: #FFF;
}
.bg-green .text-green{
    color: #FFF;
}
.bg-green .big-text{
    font-size:1.3rem;
}
.bg-green h3{
    font-size:1.1rem;
    font-family: 'Avenir Next LT Pro Bold';
}
.sociables{
    display: inline-block;
    background: #219774;
    width: 32px;
    height: 32px;
    border-radius:50%;
    text-align: center;
    
}
.sociables > img{
    max-width: 75%;
    max-height: 75%;
    margin: 4px auto 0px auto; 
}
/*
    formulário
*/

input.error,
input.error:focus,
textarea.error,
textarea.error:focus{
    border-color: red;
}
/*languages*/
#languages{
    position: fixed;
    float: left;
    width: auto;
    height: 38px;
    top: 0px;
    right: 15px;
    z-index: 99999;
}



#languages ul,
#languages ul li,
ul.languages,
ul.languages li{
    list-style: none;
    padding: 0px !important;
    margin: 0px !important;
}

#languages ul li,
ul.languages li{
    display: inline-block;
}

#languages ul li a{
    background: #fff;
    padding: 10px 5px;
}

#languages ul li:first-child a,
ul.languages li:first-child a{
    -webkit-border-bottom-left-radius: 7px;
    -moz-border-radius-bottomleft: 7px;
    border-bottom-left-radius: 7px;
    padding-left: 10px;
}
#languages ul li:last-child a,
ul.languages li:last-child a{
    -webkit-border-bottom-right-radius: 7px;
    -moz-border-radius-bottomright: 7px;
    border-bottom-right-radius: 7px;
    padding-right: 10px;
}

#languages ul li a img,
ul.languages li a img{
    opacity:0.5;
}
#languages ul li a:hover img,
#languages ul li a.active img,
ul.languages li a.active img, 
ul.languages li a:hover img{
    opacity:1;
}