body {
    font-family: 'Nunito', sans-serif;
    color: #b5b5b5;
    font-size: 17px;
    background: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
}

a {
    color: #597CB9;
}

a:hover {
    text-decoration: none;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #fff;
  opacity: 1;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #fff;
  opacity: 1;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #fff;
  opacity: 1;
}
:-moz-placeholder { /* Firefox 18- */
  color: #fff;
  opacity: 1;
}

img{
   max-width: 100%;
}


@media screen and (max-width:999px){
   .container{
      max-width:100%;
   }
}

header{
   position: absolute;
   top:0;
   width: 100%;
   left:0;
   right:0;
   z-index: 100;
   padding: 35px 0;
}

header.header-fix {
    transition: 200ms;
    -webkit-transition: 200ms;
    -moz-transition: 200ms;
    z-index: 999;
    position: fixed;
    top: 0;
    padding: 15px 0;
    background: #597CB9;
}

header .logo{
   max-width: 250px;
   display: inline-block;
   margin-right: 52px;
}

header.header-fix .logo{
   max-width: 160px;
}

header.header-fix .logo h1{
   margin:0;
}

header .navbar{
   padding: 0;
}

header .navbar-menu{
   display: inline-block;
}

header .navbar-menu ul{
   margin:0;
   padding: 0;
}

header .navbar-menu li{
   display: inline-block;
   padding-right: 10px;
}

header .navbar-menu li:last-child{
   padding-right: 0;
}

header .navbar-menu li a{
   color:#fff;
   font-size: 12px;
   font-weight: 400;
   padding: 0;
   text-transform: uppercase;
   letter-spacing: 2.5px;
   line-height: 16px;
   transition: all 0.1s ease 0s;
   -webkit-transition: all 0.1s ease 0s;
}

header .navbar-menu li a:hover{
   color:#FFD600;
}

header .navbar-menu li a.link-cadastre{
   color:#FFD600;
   font-weight: 700;
}

#inicio{
   overflow: hidden;
   background: url(../images/bg-banner.jpg) no-repeat center top;
   padding: 170px 0 100px;
   background-size: cover;
}

#inicio h1{
   color:#fff;
   font-size: 30px;
   font-weight: 300;
   line-height: 35px;
   margin-bottom: 35px;
}

#inicio h1 strong{
   font-weight: 700;
}

#inicio h2 strong{
   font-weight: 700;
}

.app-buttons a{
   padding-bottom: 30px;
}

.app-buttons a{
   display: inline-block;
   margin-right: 25px;
}

.app-buttons a:hover {
    opacity: 0.8;
}

.inicio-cadastro{
   border-top:1px solid #fff;
   padding-top: 30px;
}

.inicio-cadastro p{
   font-weight: 300;
   line-height: 17px;
   font-size: 14px;
   color:#fff;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   margin:0 0 5px;
}

.inicio-cadastro p a{
   color:#FFD600;
   font-weight: 700;
}

.inicio-cadastro span{
   font-weight: bold;
   line-height: 28px;
   font-size: 23px;
   letter-spacing: 0.1em;
   color:#fff;
   display: block;
   text-transform: uppercase;
}

.video-content{
   -webkit-border-radius: 20px;
   border-radius: 20px;
   position: relative;
}

.video-content img{
   -webkit-border-radius: 20px;
   border-radius: 20px;
}

.video-content a{
   transition: all 0.1s ease 0s;
   -webkit-transition: all 0.1s ease 0s;
}

.video-content a:hover:after{
   content:"";
   position: absolute;
   top:0;
   left:0;
   right:0;
   width: 100%;
   height: 100%;
   display: block;
   background: rgba(0,0,0,0.1);
   z-index: 10;
   -webkit-border-radius: 20px;
   border-radius: 20px;
}

.icon-play{
   background: url(../images/icon-play.png) no-repeat 0 0;
   width: 71px;
   height: 81px;
   display: block;
   position: absolute;
   top:50%;
   -webkit-transform: translate(0,-50%);
   transform: translate(0,-50%);
   left:0;
   right:0;
   margin: 0 auto;
   z-index: 50;
}

.bg-blue{
   height: 81px;
   background: #68C3E7;
   width: 100%;
}

#sobre{
   padding: 100px 0;
   overflow: hidden;
   position: relative;
   background: #fff url(../images/simbolo-refricode.png) no-repeat center -190%;
}

#sobre h2{
   font-weight: bold;
   line-height: 33px;
   font-size: 30px;
   color: #597CB9;
   margin: 0 0 30px;
}

#sobre p{
   line-height: 27px;
   font-size: 18px;
   color: #9B9B9B;
}

#sobre figure{
   margin:0 auto 30px;
   text-align: center;
}

#sobre h3{
   font-weight: bold;
   line-height: 33px;
   font-size: 30px;
   color: #597CB9;
   margin: 0 0 30px;
   text-transform: uppercase;
}

#sobre span{
   font-size: 20px;
   display: block;
   font-weight: 300;
   color: #597CB9;
}

#sobre > .container > .row:first-child{
   margin-bottom: 60px;
}

#funcionalidades{
   overflow: hidden;
   position: relative;
   background: url(../images/bg-funcionalidades.jpg) no-repeat center top;
   background-size: cover;
   background-attachment: fixed;
   padding: 80px 0;
}

#funcionalidades .header-title{
   text-align: center;
   padding: 0 0 70px;
   position: relative;
   overflow: hidden;
}

#funcionalidades .header-title h2{
   color:#fff;
   font-size: 30px;
   font-weight: 700;
   margin: 0 0 15px;
}

#funcionalidades .header-title:after{
   content:"";
   display: block;
   background: #fff;
   width: 57px;
   height: 5px;
   border-radius: 20px;
   -webkit-border-radius: 20px;
   text-align: center;
   margin:0 auto;
}

#funcionalidades .box-icon{
   position: relative;
   margin-bottom: 30px;
}

#funcionalidades .box-icon figure{
   margin-bottom: 0;
   position: absolute;
   top:50%;
   left: 0;
   -webkit-transform: translate(0,-50%);
   transform: translate(0,-50%);
}

#funcionalidades .box-icon h3{
   color:#fff;
   font-weight: bold;
   line-height: 25px;
   font-size: 20px;
   margin:0;
   padding-left: 71px;
}

#funcionalidades .box-icon p{
   font-size: 18px;
   color:#fff;
   clear:both;
}

#funcionalidades .box-center{
   margin-bottom: 25px;
   position: relative;
}

#cadastro{
   background: url(../images/bg-cadastro.jpg) no-repeat center top;
   background-size: cover;
   padding: 80px 0 100px;
   overflow: hidden;
}

#cadastro h2{
   color: #fff;
   font-weight: bold;
   line-height: 40px;
   font-size: 30px;
   text-align: center;
   margin: 0 0 10px;
}

#cadastro h3{
   font-weight: bold;
   line-height: 33px;
   font-size: 21px;
   text-align: center;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: #234888;
   margin: 0 0 30px;
}

#cadastro h3:after{
   content:"";
   display: block;
   background: #fff;
   width: 57px;
   height: 5px;
   border-radius: 20px;
   -webkit-border-radius: 20px;
   text-align: center;
   margin:15px auto;
}

#cadastro span.error{
   font-size: 13px;
   color: #d51810;
   text-align: left;
   padding: 0 10px;
}

#cadastro .info-cadastro{
   max-width: 570px;
   margin: 45px auto 0;
}

#cadastro figure{
   float:left;
   margin-right: 30px;
}

#cadastro p{
   color:#fff;
   font-size: 18px;
   margin: 0;
   padding-top: 4px;
}

#loader {
    display: inline-block;
    border: 6px solid #fff;
    border-radius: 50%;
    border-top: 6px solid #597CB9;
    width: 50px;
    height: 50px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
    position: absolute;
    margin: 0 0px 0 20px;
    margin-left: 3%;
}

#loader.hidden{
    display:none;
}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.content-form{
   max-width: 570px;
   margin:60px auto 0;
}

.content-form .form-group{
   margin-bottom: 20px;
}

.content-form .form-group label{
   font-size: 14px;
   letter-spacing: 0.07em;
   text-transform: uppercase;
   display: block;
   font-weight: 400;
   color: #fff;
   margin: 0 10px 0;
   background: none;
}

.content-form .form-group .input-control{
   background: none;
   border:none;
   border-bottom:3px solid #fff;
   width: 100%;
   font-size: 16px;
   letter-spacing: 0.03em;
   color: #000;
   padding: 7px 10px;
   transition: all 0.1s ease 0s;
   -webkit-transition: all 0.1s ease 0s;
}

.content-form .form-group .input-control:focus, .custom-file-input:focus, .content-form .custom-select:focus{
   box-shadow: none;
   outline: none;
   border-color:#597CB9;
}

.content-form .form-group textarea.input-control{
   resize:none;
}

.content-form .custom-select{
   background: transparent url(../images/arrow-select.png) no-repeat right .75rem center;
   border:none;
   border-bottom:3px solid #fff;
   color:#fff;
   border-radius: 0px;
   font-size: 16px;
   letter-spacing: 0.03em;
   padding: 7px 10px;
}

.content-form .custom-select option{
   color:#666;
}

.content-form .form-group .custom-file-label{
   border:none;
   border-bottom:3px solid #fff;
   color:#fff;
   border-radius: 0px;
   text-transform: none;
   font-size: 16px;
   letter-spacing: 0.03em;
   padding: 7px 10px;
   margin:0;
}

.custom-file-label:after {
   color: #fff;
   background: none;
   font-weight: 600;
   line-height: 12px;
   font-size: 7px;
   text-align: center;
   letter-spacing: 0.25em;
   text-transform: uppercase;
   border: 2px solid #FFFFFF;
   border-radius: 20px;
   height: 25px;
   padding: 5px 9px;
}

.custom-file-input:lang(en) ~ .custom-file-label:after {
    content: "Selecionar";
}

.custom-file-input:focus ~ .custom-file-label {
    border-color: #fff;
    box-shadow: none;
}

.content-form .btn-enviar{
   color:#fff;
   text-align: center;
   font-size: 14px;
   float:right;
   letter-spacing: 0.25em;
   text-transform: uppercase;
   background: none;
   font-weight: 600;
   -webkit-border-radius: 50px;
   border-radius: 50px;
   height: 40px;
   max-width: 115px;
   width: 100%;
   display: block;
   margin:10px auto;
   border: 2px solid #FFFFFF;
   cursor:pointer;
   transition: all 0.1s ease 0s;
   -webkit-transition: all 0.1s ease 0s;
}

.content-form .btn-enviar:hover{
   color:#597CB9;
   border-color: #597CB9;
}

#contato{
   background: #fff;
   padding: 90px 0 70px;
   overflow: hidden;
}

#contato h2{
   font-weight: bold;
   line-height: 35px;
   font-size: 30px;
   text-align: center;
   color: #597CB9;
   margin: 0 0 65px;
}

#contato h2:after{
   content:"";
   display: block;
   background: #597CB9;
   width: 57px;
   height: 5px;
   border-radius: 20px;
   -webkit-border-radius: 20px;
   text-align: center;
   margin:15px auto;
}

#contato .box-info {
   margin-bottom: 30px;
}

#contato .box-info p {
   margin-bottom: 0;
   line-height: 29px;
   font-size: 18px;
   color: #9B9B9B;
}

#contato .box-info p a{
   color: #9B9B9B;
}

#contato .box-info p a:hover{
   color: #9B9B9B;
   text-decoration: underline;
}

.box-center-icon{
   position: relative;
   margin-bottom: 25px;
}

.box-center-icon h3{
   font-weight: bold;
   line-height: 25px;
   font-size: 20px;
   color: #597CB9;
   margin:0;
   padding-left: 68px;
}

.box-center-icon i{
   position: absolute;
   top: 50%;
   left: 0;
   -webkit-transform: translate(0,-50%);
   transform: translate(0,-50%);
}

.icon-end{
   background: url(../images/icon-end.png) no-repeat 0 0;
   width:50px;
   height: 54px;
   display: block;
}

.icon-mail{
   background: url(../images/icon-mail.png) no-repeat 0 0;
   width:50px;
   height: 54px;
   display: block;
}

.icon-tel{
   background: url(../images/icon-tel.png) no-repeat 0 0;
   width:50px;
   height: 54px;
   display: block;
}

footer{
   clear:both;
   color:#fff;
   background: url(../images/bg-footer.jpg) no-repeat center top;
}

footer .footer-top{
   padding: 100px 0;
}

footer .footer-bottom{
   background: rgba(255, 255, 255, 0.15);
   color:#fff;
   padding: 20px 0;
   overflow: hidden;
}

footer .footer-top .logo-footer img{
   max-width: 250px;
   margin:0 auto;
   text-align: center;
   display: block;
}

footer .footer-top p{
   font-size: 18px;
   color:#fff;
   padding: 0 10px 0 22px;
   margin:0;
}

footer .footer-top .buttons-footer a {
    color: #fff;
    display: inline-block;
    font-size: 14px;
    vertical-align: middle;
    margin-right: 20px;
}

footer .footer-top .buttons-footer a:hover {
   opacity: 0.8;
}

footer .footer-top a.btn-facebook{
   margin-left:20px;
   margin-right:0;
}

.icon-app-store{
   position: relative;
   top: -4px;
}

footer .footer-bottom .copyright{
   float:left;
}

footer .footer-bottom p{
   margin:5px 0 0;
   font-size: 12px;
   letter-spacing: 2px;
   text-transform: uppercase;
}

footer .footer-bottom .by{
   float:right;
}

footer .footer-bottom .by span{
   display: inline-block;
   font-size: 10px;
   letter-spacing: 1px;
   text-transform: uppercase;
   vertical-align: middle;
   margin-right: 10px;
   margin-top: 7px;
}

footer .footer-bottom .by a{
   vertical-align: middle;
   display: inline-block;
}

.logo-mobile{
   display: none;
}

.modal-header{
   border:none;
   padding: 4px 15px 0;
}

.modal-header .close {
    padding: 15px 15px 0;
    margin: -1rem -1rem 0 auto;
}

.modal-body {
    padding: 0.4rem 1rem 1rem;
}

.swal2-popup .swal2-title{
   color:#68A3E7!important;
   font-size: 20px!important;
   font-weight: 700!important;
   border-bottom: 1px solid #68A3E7!important;
   padding-bottom: 10px!important;
   margin-bottom: 40px!important;
}

.swal2-popup #swal2-content p{
   color:#9B9B9B!important;
   font-size: 16px!important;
}

.swal2-popup{
   padding: 2.25em!important;
   border-radius: 20px!important;
}

.swal2-popup .swal2-styled.swal2-cancel{
   border-radius: 30px!important;
   background: #68A3E7!important;
   text-transform: uppercase!important;
   letter-spacing: 1px!important;
   font-size: 15px!important;
   font-weight: 700!important;
   margin:0!important;
}

.swal2-popup .swal2-styled.swal2-cancel.btn-danger{
   background: #C83637!important;
}
