/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Geral                                           */

/* //////////////////////////////////////////////////////////////////////////////// */

*{
    outline: none !important;
}

 /* HEADERS */

.header_cookies{
    min-height: 60% !important;
    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.3), rgba(0, 111, 183, 0.3), rgba(33, 31, 94, 0.3)), url(../img/politica_cookies_LFF-9665.jpg) !important;
}

.header_litigios{
    min-height: 60% !important;
    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.3), rgba(0, 111, 183, 0.3), rgba(33, 31, 94, 0.3)), url(../img/litigio_consumo_LF&F-8996.jpg) !important;
}

.header_ficha{
    min-height: 60% !important;
    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.3), rgba(0, 111, 183, 0.3), rgba(33, 31, 94, 0.3)), url(../img/ficha_projeto_LF&F-8897.jpg) !important;
}

/* END HEADERS */

.img_teste{
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    top: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.galery{
    position: relative;
    display: block;
}

.galery-back{
    background-image: linear-gradient(to right bottom, rgb(98, 186, 234), rgb(0, 111, 183), rgb(33, 31, 94)) !important;
}

.myslide_pers{
}

/* Underline From Center */
.hvr-underline-from-center {

  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}

.hvr-underline-from-center:before {

  content: "";
  position: absolute;
  margin-top: 85px;
  z-index: -1;
  left: 50%;
  right: 50%;
  top: 0;
  background: #76777b;
  height: 3px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {

  left: 0;
  right: 0;
}

.hvr-active[aria-expanded="true"] .hvr-underline-from-center:before{
    left: 0;
    right: 0;
}

.change:hover h3 {
    color: #006fb7;
    background-color: transparent;
}

/* Mobile */
.hvr-underline {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: none;
  transform: none;
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}

.hvr-underline:before {
  content: "";
  position: absolute;
  margin-top: 85px;
  z-index: -1;
  left: 50%;
  right: 50%;
  top: 0;
  background: #76777b;
  height: 3px;

}

.hvr-active[aria-expanded="true"] .hvr-underline:before {
    left: 0;
    right: 0;
}


.marginAuto{
    max-height: 75vh;
}

.sizeh3{
    font-size: 21px !important;
}

.text_ficha{
    font-weight: 600;
    color: #006fb7;
    margin-bottom: 0px;
    text-transform: uppercase;
}

.portugal2020{
    margin: auto auto;
    width: 100%;
    top: 0;
}

.area_img_ficha{
    margin-bottom: 80px;
}

.img_margins{
    margin-left: 40px;
    margin-right: 40px;
}

.img_ficha_projeto{
    width: 300px;
}

.patrocinio{
    justify-content: center;
    align-items: center;

}

.linha_cor{
    border-color: white;
}

.text-ajusts{
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.gradientBack{

    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.7), rgba(0, 111, 183, 0.7), rgba(33, 31, 94, 0.7));
}

.modal_btn{
    position: absolute;
    z-index: 10;
    right: 0;
    padding: 15px !important;
    float: right;
    text-shadow: 0 1px 0 #fff;
}

button.modal_btn {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0

}

.img_square{
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;

}

.img_square:after{
    content: "";
    display: block;
    padding-bottom: 100%;
}

.text-color-gray{
    color: #76777b;
}

.text-regular{
    font-weight: 400;
}

.text-semi{
    font-weight: 600;
}

.modal_align{
    height: 93%;
    align-items: center;
    justify-content: center;
    display: flex;
}

.marg-top{
    overflow: hidden;
    margin-top: 80px;
    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.7), rgba(0, 111, 183, 0.7), rgba(33, 31, 94, 0.7));
}

.modal_costum{
    width: 90%;
    margin-top: 80px;
    margin: auto;
}

.noMargin{
    margin: 0px;
}

.noVerticalMargin{
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

/* SLIDER MOBILE */

.slider-wrap{
    position: relative;
}
.slider_control{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    cursor: pointer;
}
.slider_left_arrow{
    left: 15px;
}

.slider_right_arrow{
    right: 15px;
}

.slider_control img{
    width: 25px;
}

.tab-content>.tab-pane{
    display: block !important;
    height: 0px;
    overflow: hidden;
}

.tab-content>.tab-pane.active{
    display: block !important;
    height: auto;
}

.mobile-slide{
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 60vw;
}

.mobile-slide-info{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
    transition: all 0.5s ease;
    color: #fff;
    text-align: center;
    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.7), rgba(0, 111, 183, 0.7), rgba(33, 31, 94, 0.7));
}

.mobile-slide-info.showinfo{
    opacity: 1;
}

.slide-button{
    z-index: 2;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: white;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 0px 10px 0px #999999;
    cursor: pointer;
}

.slide-button img{
    width: 50%;
}

@media (max-width: 500px){
    .slide-button{
        width: 30px !important;
        height: 30px !important;

    }
    .slider_control img{
         width: 15px !important;
    }
}

/* END SLIDER MOBILE */

.margin-form{
    margin-bottom: 15px;
}

.img-telef{
    width: 55px;
    padding: 10px;
    margin-top: 1px;
}

.img-email{
    width: 40px;
    margin-top: 5px;
}

.img-local{
    width: 25px;
    margin-top: 10px;

}

.contact-marg{
    margin-top: 80px;
}
.contact-email{
    padding: 25px;
}

.contact-pad15{
    padding: 15px;
}

.contact-pad25{
    padding: 25px;
}

@media (max-width: 1999px){
    .contatc-marg{
        margin-top: 20px;
    }
    .contact-email{
        padding: 0 !important;
    }
}

.marginAuto{
    margin: auto;
}

.noPadding{
    padding: 0px;
}

.inLineBlock{
    display: inline-block;
}

.margin{ margin-top: 80px; }

.margin2{ margin-top: 40px; }

.justifyText{

    justify-content: center;
    align-items: center;
    display: flex;
}

.totalSize{
    width: 100%;
    height: 100%;
}

.cor{
    color: #006fb7 !important; 
}

.cor-cinza{
    color: #76777b !important;
}

.verticalAlignCenter{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.AllInCenter{
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    -moz-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
    left: 50%;
}

.horizontalAlignCenter{
    position: absolute;
    top: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%);
    left: 50%;
}

.displayNone{
    display: none;
}

.displayBlock{
    display: block;
}

.positionRelative{
    position: relative;
}

.visibilityhidden{
    visibility: hidden;
}

.fullImages{
    height: 100%;
    position:relative;
    background-size: cover;
    background-position: center;
}

input{
    outline:none;
}

.aNeutro{
    outline: none;
    color: inherit;
    text-decoration: none !important;
    width: 50% !important;
    color: #76777b;
}

/* unvisited link */

.aNeutro:link {
    outline: none;
    color: inherit;
}

/* visited link */

.aNeutro:visited {
    color: inherit;
}


/* mouse over link */

.aNeutro:hover {
    color: inherit;
    text-decoration: underline !important;
    color: #006fb7 !important;
}

/* selected link */

.aNeutro:active {
    color: inherit;
}

/* mouse over link */

.aNeutroNull:hover {
    color: inherit;
    text-decoration: none !important;
}

/*------------Validator-------*/

.formComIcons label.error:after{
    content: url('../icons/Forms/errado.png');
}

.formComIcons label:after{
    position: absolute;
    right: -15px;
    height: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 10;
}



.formComIcons label.error{
    position: absolute;
    right: 30px;
    height: 100%;
    z-index: 10;
}

.formComIcons label.error.valid:after{
    content: url('../icons/Forms/correcto.png');
}

.labelErrorWhite label.error{
    color: #ffffff;
}

/*++++++++++++++Validator+++++++++*/

/* ------------------------------------ Geral ------------------------------------------- */


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Geral no WEBSITE                                           */

/* //////////////////////////////////////////////////////////////////////////////// */

header{
    background-position: top;
}

/* ----------- Menu ------------- */

#mainNav{
    height: 81px;
    background-color: #ffffff;
}

#mainNav .navbar-header{
    height: 80px;
}

#mainNav .navbar-right{
    color: #000000;
}

#mainNav button.navbar-toggle{
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0;
}

#mainNav .navbar-right li a:hover{
    color: #006fb7;
}

#mainNav .logo{
    margin: 0;
    padding: 0;
    height: 100%;
}

#mainNav .logo img{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.navbar-default .nav > li.active>a, .navbar-default .nav>li.active>a:focus {
    color: #006fb7 !important;
    background-color: transparent;
}

#mainNav #bs-example-navbar-collapse-1{
    background-color: #ffffff;
}

#mainNav .lang-xs{
    padding-left: 15px;
    padding-top: 10px;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;
}

#mainNav .lang-xs span a{
    cursor: pointer;
}

#mainNav .lang-xs a + a{
    margin-left: 10px;
}

.lang-xs a.active{
    color: #04819f;
}


@media (min-width: 768px){

    .galery{
        width: 100%;
        height: 30vw;
    }

    .navbar-default .nav > li>a, .navbar-default .nav>li>a:focus {
        color: #76777b;
    }

    #mainNav .navbar-right{
        position: absolute;
        right: 10px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        color: #76777b;
    }

}

@media (max-width: 410px){

    #mainNav .logo img{
        width: 200px;
    }
}

@media (min-width:768px) and (max-width: 840px){

    #mainNav .logo img{
        width: 256px;
    }
}

/* ++++++++++++ Menu +++++++++++++++ */

.corPadrao{
    color: #04819f;
}

.fundoAzul{
    background-image: linear-gradient(to right bottom, rgb(98, 186, 234), rgb(0, 111, 183), rgb(33, 31, 94));
}

.textWhite{
  color: #ffffff;
}



a {
    color: #04819f;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

a:hover,
a:focus {
    color: #02738e;
}

.bg-primary{
    background-image: linear-gradient(to right bottom, rgb(98, 186, 234), rgb(0, 111, 183), rgb(33, 31, 94));
}


.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary{
    border-color: #62baea;
    color: #fff;
    background-image: linear-gradient(to right bottom, rgb(98, 186, 234), rgb(33, 31, 94));
}


.btn-primary {
    border-color: #006fb7;
    color: #fff;
    background-color: #006fb7;
}


hr{
    border-color: #006fb7;
}


/* //////////////////////////////////////////////////////////////////////////////// */


/*                                  About                                           */


/* //////////////////////////////////////////////////////////////////////////////// */


#about p{
    margin-bottom: 0 !important;
}

#about h1{
    font-size: 35px !important;
    font-weight: 600 !important;
}


/* -------------------------------------------------------------------------------  */


/* //////////////////////////////////////////////////////////////////////////////// */


/*                                  Projetos                                         */


/* //////////////////////////////////////////////////////////////////////////////// */

.ulTabProjetos li{
    font-weight: 600!important;
    list-style-type: none;
    display: inline-block;
    text-align: center;
    margin-bottom: 0px;

}


.ulTabProjetos li h3{
    font-weight: 600!important;
    color: #76777b;
}


.ulTabProjetos li a{
    font-weight: 800!important;
    background-color: transparent;
    position: relative;
    width: 100%;
    color: #04819f;
    border: 1px solid transparent;
    border-radius: 10px;
    display: block;
    padding: 25px;
}

.ulTabProjetos li.active a{
    color: #04819f;
}

.portfolio-box .portfolio-box-caption {

    background: transparent;

}

.portfolio-box .portfolio-box-caption:hover{

    background-image: linear-gradient(to right bottom, rgba(98, 186, 234, 0.7), rgba(0, 111, 183, 0.7), rgba(33, 31, 94, 0.7));

}

.modal-backdrop{
    display: none;
}



.project-name .infoTitle{

    font-size: 12pt;

    font-weight: 600;

}



.project-name .infoText{

    font-size: 11pt;

}



@media (max-width: 767px) {

    .infoTitle{
        font-size: 10pt;
    }

    .infoText{
        font-size: 9pt;
    }

    .galery{
        height: 50vw !important;
    }

    .ulTabProjetos{
        padding: 0;
    }

    .ulTabProjetos li{
        display: block;
        margin-bottom: 0;
    }

    .ulTabProjetos li a{
        margin-top: 20px;
    }

}


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Form                                            */

/* //////////////////////////////////////////////////////////////////////////////// */


.input-group{
    width: 100%;
}


::-webkit-input-placeholder { /* WebKit browsers */
    color: #76777b;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #76777b;
    opacity: 1;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #76777b;
    opacity: 1;
}

:-ms-input-placeholder { /* Internet Explorer 10+ */
    color: #76777b;
}


input{
    width: 100% !important;
    height: 45px!important;
    margin: 0 auto!important;
    margin-top:10px!important;
    border: none !important;
    border-radius: 300px!important;
    padding-left:15px!important;
    background-color: white;
    color: #76777b;
}

textarea{
    width: 100% !important;
    height: 170px!important;
    margin: 0 auto!important;
    margin-top:10px!important;
    border: none !important;
    border-radius: 15px!important;
    padding-left:15px!important;
    padding-top: 15px !important;
    background-color: white;
    color: #76777b;
}

.btn-Form{
    width: 50% !important;
    background-color: white !important;
    color: #76777b;
}


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Mapa                                            */

/* //////////////////////////////////////////////////////////////////////////////// */

#google_maps, .wrapperMap{
    height: 300px;
}


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Modal                                           */

/* //////////////////////////////////////////////////////////////////////////////// */

#myModal .modal-backdrop{
    background-color: #04819f;
}

#myModal .modal-dialog{
    max-width: 100%;
    margin-top: 50vh;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
}

#myModal .modal-body{
    padding: 0;
}

#myModal .modal-header{
    border: none;
    position: absolute;
    z-index: 1;
    right: 0;
}

#IDMaquinacao .modal-header{
    border-bottom: none;
}

#myModal .modal-header button{
    color: #ffffff;
    opacity: 1;
}


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Select Lingua                                           */

/* //////////////////////////////////////////////////////////////////////////////// */

.wrapper-dropdown-5 {
    /* Size & position */
    position: relative;
    width: 65px;
    margin: 0 auto;
    margin-top: 10px;
    padding-top: 5px;
    padding-bottom:5px;
    padding-left: 15px;
    margin-left: 20px;
    margin-right: 10px;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;

    /* Styles */
    background: #fff;
    border-radius: 5px;
    cursor: pointer;
    outline: none;
    transition: all 0.3s ease-out;
}

.wrapper-dropdown-5:after { /* Little arrow */
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -3px;
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #006fb7 transparent;
}

.wrapper-dropdown-5 .dropdown {
    /* Size & position */
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding-left: 0;

    /* Styles */
    background: #fff;
    border-radius: 0 0 5px 5px;
    border: 1px solid rgba(0,0,0,0.2);
    border-top: none;
    border-bottom: none;
    list-style: none;
    transition: all 0.3s ease-out;

    /* Hiding */
    max-height: 0;
    overflow: hidden;
}

.wrapper-dropdown-5 .dropdown li {
    padding: 0 10px ;
}

.wrapper-dropdown-5 .dropdown li a {
    display: block;
    text-decoration: none;
    color: #76777b;
    padding: 5px 0;
    transition: all 0.3s ease-out;
    border-bottom: 1px solid #e6e8ea;
}

.wrapper-dropdown-5 .dropdown li:last-of-type a {
    border: none;
}

.wrapper-dropdown-5 .dropdown li i {
    margin-right: 5px;
    color: inherit;
    vertical-align: middle;
}


/* Hover state */
.wrapper-dropdown-5 .dropdown li:hover a {
    color: #57a9d9;
}

/* Active state */

.wrapper-dropdown-5.active {
    border-radius: 5px 5px 0 0;
    background: #006fb7;
    box-shadow: none;
    border-bottom: none;
    color: white;
}

.wrapper-dropdown-5.active:after {
    border-color: white transparent;
}

.wrapper-dropdown-5.active .dropdown {
    border-bottom: 1px solid rgba(0,0,0,0.2);
    max-height: 400px;
}


/* No CSS3 support */

.no-opacity       .wrapper-dropdown-1 .dropdown,
.no-pointerevents .wrapper-dropdown-1 .dropdown {
    display: none;
    opacity: 1; /* If opacity support but no pointer-events support */
    pointer-events: auto; /* If pointer-events support but no pointer-events support */
}

.no-opacity       .wrapper-dropdown-1.active .dropdown,
.no-pointerevents .wrapper-dropdown-1.active .dropdown {
    display: block;
}


/* //////////////////////////////////////////////////////////////////////////////// */

/*                                  Modal                                           */

/* //////////////////////////////////////////////////////////////////////////////// */

.textFooter{
    color: #76777b;
    font-size: 9pt;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 0;
    float: right;
    margin-right: 23px;
}

/* FOOTER */
.footer {
    min-height: 80px;
    position: relative;
    padding: 0 30px;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    color: #76777b !important;
}

.footer-mid {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

.footer-mid img {
  height: 45px;
}


.footer-right {
  text-align: right;
  align-self: flex-end;
}

.footer-right a {
  text-transform: uppercase;
  list-style: none;
}

.footer-list li a {
  color: #76777b;
  text-transform: uppercase;
}

.footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.copy {
    text-transform: uppercase;
}
.copy a {
    color: #6F6F6E;
    text-decoration: none;
}

.copy a:hover, .copy a:focus, .copy a:active, .copy a:active {
    color: #6F6F6E;
    text-decoration: none;
}

.copy a:hover {
    text-decoration: underline;
}

.cut-word{ word-wrap: break-word; }

@media(max-width: 991px){

    .margin2{

        margin-top: 80px;
    }

    .mid-li{
        margin: 0 5px;
    }

    .footer-list li {
        display: inline-block;
    }
    
    .footer {
        padding: 30px 5px;
        display: block;
        text-align: center;
    }

    .copy {
        display: inline-block;
    }

    .footer-left, .footer-mid {
        position: relative;
        left: auto;
        transform: none;
    }

    .footer-mid img {
        width: 95%;
        margin: 0 auto;
        margin-top: 10px;
    }

}
/* END FOOTER */

.imgFooter{
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 0;
    text-align: center;
    margin: auto;
}

.icons_footer{
    width: 600px;
    margin: auto;
}

.textleftFooter{
    color: #76777b;
    font-size: 9pt;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 0;
    float: left;
    margin-left: 15px;
}

.textleftFooter:hover{
    color: #76777b;
    text-decoration: none;
}


/* -------------------------------------------------------------------------------  */

#services{
    padding-bottom: 0px!important;
}

.modal-dialog{
    width: 75%;
}

.slides img{
    max-width: inherit !important;
    width: 100% !important;
}

@media(max-width: 767px){

    header .header-content{
        padding: 20px 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: calc(100vh - 80px);
        min-height: 400px;
    }

    header .header-c-home {
        height: auto;
        min-height: 550px;
    }

    #mainNav .logo img{
        padding-left: 15px;
    }
}

@media(max-width: 991px){
    .img-marg{
        margin-bottom: 35px
    }
    .footer{
        min-height: auto;
    }
}

@media (min-width: 1200px){
    .galery{
        height: 17.7vw;
    }

    .nopadding {
        padding: 0;
    }
}

@media (min-width: 991px){
    .footer-left{
    text-align: left;
}
}

@media (max-width: 380px){
    .footer{
        font-size: 10px; 
    }
}


.force_marg {
    margin-bottom: 20px !important;
}


.noPadding h2{
    font-size: 30px;
}

.noPadding h3{
    font-size: 24px;
}