@import url('https://fonts.googleapis.com/css?family=Montserrat:100,100i,200,200i,400,400i,500,500i,600,600i,700,700i,800,800i,900');
body,
html {
    font-family: 'Montserrat', sans-serif;
}

margin-0 {
    margin: 0 !important;
}


.white {
    color: #f7f9f9;
}

.display-block {
    display: block;
}


/* ------- HEADER -------- */

.open .back_image {
    background-image: url(../img/header/img-menu.jpg);
    /*max-height: 750px;*/
    height: 81%;
background-size: 100% 101%;
}

.block_menu {
    display: block;
}

.box_logo_snap {
    display: flex;
    align-items: center;
}

.logo-nav,
.logo-nav-menu {
    display: block;
    text-align: center;
}

.logo-nav img,
.logo-nav-menu img {
    height: 60px;
    margin-left: 9%;
    width: 100%;
}

@media (max-width:768px) {
    .logo-nav img,
    .logo-nav-menu img {
        height: 30px;
    }
}

@media (min-width:1200px) and (max-width:1500px) {
    .logo-nav img,
    .logo-nav-menu img {
        height: 40px;
    }
}

.open .box_logo_snap .logo-nav-menu img {
    width: 100%;
    display: block !important;
}

.open .box_logo_snap .logo-nav img {
    width: 100%;
    display: none !important;
}

.logo-nav-menu img {
    display: none;
}

.logo-nav img {
    width: 100%;
    display: block;
}

.header_menu_opened {
    height: 150px;
}

.sub_menu_header{
  font-size: 10px !important;
}
.open .header_menu_opened {
    background-color: #fafbfb;
}

.border_menu_header {
    border-bottom: 1px solid;
    width: 30px;
    display: inline-block;
    color: white;
    /*    margin: 0 10px 0 40px;*/
}

@media (max-width:768px) {
    .border_menu_header {
        display: none;
    }

    .barras-obliqua{
      display: none;
    }
}

.sub_menu_header {
  display: flex;
  align-items: center;
  /* cursor: pointer; */
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 0px;
  margin-left: 7px;
  letter-spacing: 1px;
  font-weight: 500 !important;
}

@media (max-width: 769px) {
    .sub_menu_header {
        display: block;
    }
}

.sub_menu_header a {
    margin: 0 10px;
}

.box_hamburger {
    display: flex;
    align-items: center;
    width: 100%;
}

@media (max-width:768px) {
    .box_hamburger {
        display: block !important;
    }
}

#hamburguer {
    width: 60px;
    height: 42px;
    position: relative;
    /*  margin: 50px auto;*/
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    margin-bottom: 30px;
    margin-top: 30px;
    margin-left: auto;
    float: left;
}

#hamburguer span {
    display: block;
    position: absolute;
    height: 3px;
    width: 45px;
    background: #fff;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

@media (min-width:1200px) and (max-width:1500px) {
    #hamburguer span {
        width: 35px;
    }
    .bar_mini {
        width: 20px !important;
    }
}

@media (min-width:1501px) {
    .bar_mini {
        width: 30px !important;
    }
}

@media (max-width:768px) {
    #hamburguer span {
        width: 35px;
    }
    .bar_mini {
        width: 21px !important;
    }
}

.bar_mini {
    left: 6px !important;
    margin: 0 auto;
    margin-top: 0 !important;
}

.box_logo_snap .open .bar_mini {
    width: 32px !important;
    height: 2px !important;
}

.close_btn_menu_header {
    display: none;
}

.close_btn_menu_header_mobile {
    display: none;
}

.open .box_logo_snap .close_btn_menu_header {
    display: block !important;
    margin-bottom: 5px;
    font-weight: bold;
    position: absolute;
    left: -54px;
    top: 10px;
}

@media (max-width:768px) {
    .open .box_logo_snap .close_btn_menu_header {
        display: none !important;
    }
    .open .box_logo_snap .close_btn_menu_header_mobile {
        display: block !important;
    }
    #hamburguer {
        float: none;
        margin-bottom: 0;
        margin-top: 10px;
    }
}

#hamburguer.open span {
    background: #000000 !important;
}


/* Icon 3 */

#hamburguer span:nth-child(1) {
    top: 0px;
}

#hamburguer span:nth-child(2),
#hamburguer span:nth-child(3) {
    top: 18px;
}

#hamburguer span:nth-child(4) {
    top: 24px;
}

#hamburguer.open span:nth-child(1) {
    top: 18px;
    width: 0%;
    left: 50%;
}

#hamburguer.open span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

#hamburguer.open span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#hamburguer.open span:nth-child(4) {
    top: 18px;
    width: 0%;
    left: 50%;
}


/* ------ FINISH HEADER -------- */


/* ------ GENERAL ------- */

.div-responsive-for-p{
  color: #F7F8F9;
  max-width: 400px;
  text-align: left;
}

.why-btn {
    display: block;
    margin-top: 100%;
    width: 50%;
    text-align: center;
}

#panel-menu .arrow-down {
    width: 0;
    height: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-left: 16px solid #444;
    top: -10px;
    position: absolute;
    left: 48%;
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.panel-first-slide {
    position: relative;
    height: 100vh;
}

.panel-first-slide #arrow {
    display: inline-block;
    width: 90px;
    height: 90px;
    position: absolute;
    left: 49%;
    bottom: 0;
    background-image: url('../img/arrow/arrow.png');
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 40px 27px;
    margin: -45px 0 0 -45px;
    cursor: pointer;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    z-index: 1111;
}

.panel-first-slide #arrow:hover {
    background-position: center 32px;
}

.panel-grid-slide {
    width: 100%;
    height: auto;
}

#page_portfolio .panel-grid-slide {
    min-height: 100vh
}

#page_contact_us .panel-grid-slide {
    height: 100vh;
    !important;
}

#page_portfolio .panel-grid-slide {
    background-color: #f7f9f9;
}

@media (max-width:768px) {
    .panel-grid-slide {
        text-align: center;
    }

    .no-touch #cd-vertical-nav .cd-dot{
        display: none;
    }

    .panel-first-slide #arrow{
      display: none;
    }

    .box_popup_icon{
        display: none;
    }

    .fa-twitter{
      margin-left: 16px !important;
    }

    .our-customer-title{
    text-align: center;
      font-size: 11px;
      margin-top: 30px;

    }

    .cd-content{
      margin-top: 75px;
    }

    .our-customer-title:nth-child(2n+1){
        margin-top: -30px;
    }

}


/*------ BUTTON SCROLL UP ------*/

.cd-top {
    display: inline-block;
    height: 40px;
    width: 40px;
    position: fixed;
    bottom: 40px;
    right: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    /* image replacement properties */
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
/*
    visibility: hidden;
    opacity: 0;
*/
    -webkit-transition: opacity .3s 0s, visibility 0s .3s;
    -moz-transition: opacity .3s 0s, visibility 0s .3s;
    transition: opacity .3s 0s, visibility 0s .3s;
    background: rgba(12, 4, 4, 0.21) url(../img/arrow/cd-top-arrow.svg) no-repeat center 50%;
    border-radius: 50%;

}

.cd-top.cd-is-visible,
.cd-top.cd-fade-out,
.no-touch .cd-top:hover {
    -webkit-transition: opacity .3s 0s, visibility 0s 0s;
    -moz-transition: opacity .3s 0s, visibility 0s 0s;
    transition: opacity .3s 0s, visibility 0s 0s;
}

.cd-top.cd-is-visible {
    /* the button becomes visible */
    visibility: visible;
    opacity: 1;
}

.cd-top.cd-fade-out {
    /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
    opacity: .5;
}

.no-touch .cd-top:hover {
    background-color: rgba(12, 4, 4, 0.58);
    opacity: 1;
}

@media only screen and (min-width: 768px) {
    .cd-top {
        right: 20px;
        bottom: 20px;
    }
}

@media only screen and (min-width: 1024px) {
    .cd-top {
        height: 60px;
        width: 60px;
        right: 30px;
        bottom: 30px;
    }
}


/*------ FINISH BUTTON SCROLL UP ------*/


/* ------ FINISH GENERAL ------- */


/*----- HOME -----*/


/* ------- HOME PAGE SLIDE --------- */

#page_home .background:first-child {
    background-image: url(../img/home/img-home.jpg);
    -webkit-transform: translateY(0vh);
    -ms-transform: translateY(0vh);
    transform: translateY(0vh);
}

#page_home .background:nth-child(2) {
    background-image: url(../img/home/img-aboutus.jpg);
}

#page_home .background:nth-child(3) {
    background-image: url(../img/home/img-home-case.jpg);
}


/*--------- FINISH HOME PAGE SLIDE -----------*/

#page_home {
    margin: 0;
    padding: 0;
    height: 100vh;
}

.btn_go_to_portfolio {
  border: 2px solid;
border-color: #fff;
background-color: #fff !important;
color: rgba(67, 50, 103, 1) !important;
width: 171px;
padding: 15px 22px;
text-decoration: none !important;
cursor: pointer;
position: absolute;
margin-top: 50px;
text-align: center;
margin-left: 200px;
}
.btn_learn_more_home {
    border: 2px solid;
    border-color: #fff;
    color: #fff !important;
    width: 171px;
    padding: 15px 29px;
    text-decoration: none !important;
    cursor: pointer;
    position: absolute;
    margin-top: 50px;
    text-align: center;
}

.btn_portfolio_span{
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  display:block;
}

@media (min-width:1200px) and (max-width:1500px) {
    .btn_learn_more_home {
        font-size: 13px;
        padding: 12px 23px;
        margin-left: 0px !important;
        text-align: center;
    }
        .btn_go_to_portfolio{
          font-size: 13px;
          padding: 12px 23px;
          margin-left: 200px !important;
          text-align: center;
        }
}


/*----- FINISH HOME -----*/


/* -------- SLIDER --------- */

.background {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    overflow: hidden;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    /*    height: 130vh;*/
    height: auto;
    position: fixed;
    width: 100%;
    -webkit-transform: translateY(20vh);
    -ms-transform: translateY(20vh);
    transform: translateY(20vh);
    -webkit-transition: all 1.4s cubic-bezier(0.22, 0.44, 0, 1);
    transition: all 1.4s cubic-bezier(0.22, 0.44, 0, 1);
}

.background:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.3);
}

.background:first-child .content-wrapper {
    -webkit-transform: translateY(0vh);
    -ms-transform: translateY(0vh);
    transform: translateY(0vh);
}


/* Set stacking context of slides */

.background:nth-child(1) {
    z-index: 2;
}

.background:nth-child(2) {
    z-index: 1;
}

.content-wrapper {
    height: 100vh;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    color: #fff;
    -webkit-transform: translateY(40vh);
    -ms-transform: translateY(40vh);
    transform: translateY(40vh);
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: all 1.9s cubic-bezier(0.22, 0.44, 0, 1);
    transition: all 1.9s cubic-bezier(0.22, 0.44, 0, 1);
}

.contact_us_first_page .content-wrapper {
    height: 120vh;
}

.map_contact_us .content-wrapper {
    background-color: #fff;
}

.content-title {
    font-size: 78px;
    line-height: 1;
    text-align: left;
    font-weight: bold;
    color: #F7F8F9;
}

@media (max-width:769px) {
    .content-title {
        font-size: 30px;
        text-align: center;
    }
    .content-subtitle {
        font-size: 16px !important;
        text-align: center !important;
    }
}

@media (min-width:1200px) and (max-width:1500px) {
    .content-title {
        font-size: 46px;
        line-height: 71px;
        margin-top: -10px;
    }

    .our-customer-title{
      font-size: 13px;
      margin-top: 0px;
    }
}

.our-customer-title{
  margin-bottom: 0px;
}

.content-subtitle {
    font-size: 21px;
    text-align: left;
    font-weight: 300;
    margin-bottom: 45px;
    color: #F7F8F9;
}

.text_title_second_slide{
  font-size: 35px;
  font-weight: 600;
  text-align: center;
  color: #5F708E;
  background-color: #f7f9f9;
  letter-spacing: 5px;
}

@media (min-width:1200px) and (max-width:1500px) {
    .content-subtitle {
        font-size: 16px;
        /*        text-align: center;*/
    }
}


/* ---------- FINISH SLIDER ------------ */


/*------ PAGE CONTACT US-------*/

#page_contact_us .panel-first-slide #gradient {
    background-image: url(../img/contact_us/img-contacts.jpg);
}

#page_contact_us {
    margin: 0;
    padding: 0;
}

.row_contact_us_first_slide {
    margin-top: 15%;
    margin-right: 0px;
}

@media (max-width:768px) {
    .row_contact_us_first_slide {
        margin-top: 110px !important;
    }

    .navbar-default-home{
        position: absolute !important;
    }
}

.box_info_contact_us {
    padding-left: 70px;
}

.box_info_contact_us .col-md-6 {
    padding: 0;
}

.box_info_contact_us>.col-md-6 {
    padding-right: 15px;
    height: 100px;
}

@media (max-width:768px) {
    .box_info_contact_us {
        padding-left: 36px;
    }
}

.box_input_text_contact_us {
    margin-top: 130px;
    text-align: center;
}

@media (max-width:768px) {
    .box_input_text_contact_us {
        display: none;
    }
}

.box_input_text_contact_us_mobile {
    display: none;
}

.box_input_text_contact_us_mobile input[type=text]:not(.browser-default),
.box_input_text_contact_us_mobile textarea.materialize-textarea,
.box_input_text_contact_us_mobile textarea.materialize-textarea:focus:not([readonly]),
.box_input_text_contact_us_mobile input[type=text]:not(.browser-default):focus:not([readonly]) {
    border-bottom: 1px solid #5f718f;
}

.box_input_text_contact_us_mobile .input-field label,
.box_input_text_contact_us_mobile textarea.materialize-textarea:focus:not([readonly])+label,
.box_input_text_contact_us_mobile input[type=text]:not(.browser-default):focus:not([readonly])+label {
    color: #5f718f;
}

.box_input_text_contact_us_mobile .btn_message_contact_us {
    padding: 11px 37px;
}

.box_input_text_contact_us_mobile .btn_message_contact_us {
    color: #fff !important;
    background-color: #5f718f;
    border: 1px solid #5f718f;
}

.box_input_text_contact_us_mobile .text_contact_us,
.box_input_text_contact_us_mobile .big_text_contact_us {
    border-color: #5f718f;
    color: #5f718f;
}

.box_input_text_contact_us_mobile .big_text_contact_us {
    height: 100px;
    margin-top: 0;
}

.box_input_text_contact_us_mobile ::-webkit-input-placeholder {
    /* Chrome */
    color: #5f718f;
}

.box_input_text_contact_us_mobile :-ms-input-placeholder {
    /* IE 10+ */
    color: #5f718f;
}

.box_input_text_contact_us_mobile ::-moz-placeholder {
    /* Firefox 19+ */
    color: #5f718f;
    opacity: 1;
}

.box_input_text_contact_us_mobile :-moz-placeholder {
    /* Firefox 4 - 18 */
    color: #5f718f;
    opacity: 1;
}

@media (max-width:768px) {
    .box_input_text_contact_us_mobile {
        display: block;
        margin-bottom: 60px;
        padding-top: 30px;
    }
}

.text_contact_us {
    background-color: transparent;
    border: 0;
    /*    border-bottom: 1px solid;*/
    border-color: #F7F8F9;
    color: #F7F8F9;
    width: 29%;
    float: left;
}

@media (max-width:768px) {
    .text_contact_us {
        width: 100%;
        margin-bottom: 20px;
        margin-top: 20px;
    }
}

.text_contact_us:focus,
.big_text_contact_us:focus {
    outline-color: transparent;
}

.text_contact_us:nth-child(1),
.text_contact_us:nth-child(2) {
    margin-right: 22px;
}

.big_text_contact_us {
    background-color: transparent;
    border: 0;
    /*    border-bottom: 1px solid;*/
    border-color: #F7F8F9;
    color: #F7F8F9;
    width: 97%;
    float: left;
    margin-top: 110px;
    margin-bottom: 40px;
}

.btn_message_contact_us {
    color: #000 !important;
    background-color: #F7F8F9;
    padding: 17px 47px;
    border: 1px solid #F7F8F9;
    text-decoration: none !important;
    font-weight: bold;
    font-size: 18.68px;
    cursor: pointer;
}

::-webkit-input-placeholder {
    /* Chrome */
    color: #F7F8F9;
    font-size: 10px;
}

:-ms-input-placeholder {
    /* IE 10+ */
    color: #F7F8F9;
    font-size: 10px;
}

::-moz-placeholder {
    /* Firefox 19+ */
    color: #F7F8F9;
    opacity: 1;
    font-size: 10px;
}

:-moz-placeholder {
    /* Firefox 4 - 18 */
    color: #F7F8F9;
    opacity: 1;
    font-size: 10px;
}

.container_map_part {
    display: flex;
    align-items: center;
    /*    height: 100%;*/
    /*    margin-top: 15%;*/
    height: 47vh;
}

@media (min-width: 1200px) {
    .container_map_part {
        /*        width: 1330px;*/
    }
}

.contact_title_contact_us {
    text-align: left;
    text-transform: uppercase;
    font-size: 13px;
    color: #F7F8F9;
    font-weight: 500;
}

.contact_sub_title_contact_us {
    text-align: left;
    font-weight: 400;
    color: #F7F8F9;
    font-size: 12px;
}

@media (max-width:768px) {
    .contact_title_contact_us,
    .contact_sub_title_contact_us,
    .box_follow_us {
        text-align: center !important;
    }
}

.cidade_contact_us {
    color: #5f718f;
    font-size: 25px;
    text-align: left;
    font-weight: 500;
}

@media (max-width:768px) {
    .cidade_contact_us {
        font-size: 25px;
    }
}

.morada_cidade_contact_us {
    color: #34373b;
    text-align: left;
    font-size: 15px;
    line-height: 35px;
    width: 67%;
}

@media (max-width:768px) {
    .cidade_contact_us,
    .morada_cidade_contact_us {
        text-align: center;
    }
    .morada_cidade_contact_us {
        font-size: 14px;
        line-height: 20px;
        width: 100%;
    }
}

.map_box {
    margin-left: 0;
    margin-right: 0;
    height: 100%;
    bottom: 0;
    position: absolute;
    width: 100%;
}

@media (max-width:768px) {
    .map_box {
        height: 250px;
        position: relative;
        margin-top: 70px;
    }
}

.map_box div {
    height: 100%;
}

.box_follow_us {
    text-align: left;
}

.icon_follow_us {
    cursor: pointer;
    margin: 21px 21px 21px 0;
    color: #F7F8F9;
}


/*------ FINISH CONTACT US------*/


/* ----- START PORTFOLIO PAGE------ */

#page_portfolio {
    padding: 0;
    margin: 0;
}


/*
#page_portfolio .panel-first-slide {
    margin-bottom: 100% !important;
}
*/

.portfolio_title_blue {
    background-color: #00ADBE;
}

.title_box_portfolio {
    margin-bottom: 9%;
    margin-top: 20%;
    margin-right: 0px !important;
}

@media (max-width:1920px) {
  .portfolio_title_citation {
    font-size: 17px;
    margin-left: 585px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
}

}



@media (max-width:1440px) {
  .main-menu {
    float: left;
    margin-top: 0vh !important;
    bottom: -100px;
    position: relative;
    margin-left: 2%;
}

.open .back_image {
    background-image: url(../img/header/img-menu.jpg);
    max-height: 750px;
    height: 66% !important;
}

}

@media (max-width:768px) {
  .main-menu{
    margin-top: 12vh !important;
  }
}

@media (max-width:768px) {

  .open .back_image {
      background-image: url(../img/header/img-menu.jpg);
      max-height: 750px;
      height: 70% !important;
  }

    .title_box_portfolio {
        margin-top: 33%;
        margin-left: -6px;
    }
}

.portfolio_title {
    font-size: 35px;
    font-weight: 600;
    text-align: center;
    color: #fff;
    margin-top: -58px;
}

.portfolio_title_citation{
  font-size: 17px;
  margin-left: 910px;
    font-weight: 200;
    text-align: left;
    color: #fff;
}

@media (max-width:1440px) {
  .portfolio_title_citation{
  margin-left: 345px;
}
}

@media (max-width:768px) {
    .portfolio_title {
        font-size: 23px;
        margin-top: 0px;
    }
    .portfolio_title_citation{
      font-size: 13px;
      text-align: center;
      margin-left: 0;
    }

    .box_clients_portfolio{
      margin-top: 30px !important;
    }
}

.container_icons_first_slide {
    text-align: center;
    color: #fff;
    margin-top: -35px;
}

.icon_portfolio {
    width: 100%;
    max-width: 80px;
    height: auto;
}

@media (max-width:768px) {
    .icon_portfolio {
        width: 50%;
    }
}

.box_logo_first_slide_portfolio {
    height: 110px;
}

@media (min-width:460px) and (max-width:770px) {
    .box_logo_first_slide_portfolio {
        height: 150px;
    }
}

.text_icons_portfolio {
    font-size: 15px;
    font-weight: 500;
    line-height: 23px;
}


/*----- SECOND SLIDE ------*/


/* ------- POPUP -------- */

.modal.fade.in {
    padding: 0 !important;
}

.popup_portfolio p {
    color: #fff !important;
}

.popup_portfolio p a {
    color: #fff !important;
    text-decoration: none !important;
}

.text_popup {
    font-size: 16px;
    font-weight: 400;
    line-height: 23px;
    margin-bottom: 40px;
}

.area_web_site {
    font-weight: 300 !important;
    font-size: 23px !important;
}

.popup_portfolio {
    width: 100%;
    margin: 0;
    padding: 0;
    border-radius: 0 !important;
    height: 100%;
}

.box_popup_icon {
    text-align: center;
}

.modal-content {
    padding: 0 7%;
    height: auto;
    min-height: 100%; 
}

.modal-content::after {
  background-color: rgba(0, 0, 0, 0.86);
}

.popup_portfolio .modal-content {
    border-radius: 0 !important;
    background-color: rgba(0, 0, 0, 0.86);
}

.popup_portfolio .modal-content::after {
    border-radius: 0 !important;
    background-color: rgba(0, 0, 0, 0.86);
}

.popup_portfolio .modal-content:before {
    /*background-image: url(../img/home/img-home.jpg);*/
    content: ' ';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0.2;
    background-repeat: no-repeat;
    background-position: 50% 0;
    -ms-background-size: cover;
    -o-background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
}

@media (max-width: 768px) {
  .background_popup, .background_popup_black{

width: auto !important;
height: 100% !important;
left: 0 !important;
opacity: 0.5;
}
}

.background_popup, .background_popup_black{
  position: absolute;
width: 100%;
left: 0;
opacity: 0.5;
height: 100%;

}

.background_popup_black{
  opacity: 0.1;
}



.background_popup::after{
  background-color: black;
}

.modal-content .modal-header {
    border: 0;
    text-align: right;
}

.popup_portfolio .close_btn_menu_header {
    display: inline-block;
    margin: 10px 0 10px;
    color: #fff;
    z-index: 2;
}

.popup_portfolio #hamburguer {
    margin: 0;
    width: 45px;
    float: right !important;
    background-color: transparent;
    border: 0;
    z-index: 2;
}

.popup_portfolio .bar_mini {
    width: 40px !important;
}

.popup_portfolio #hamburguer.open span {
    background: #fff !important;
}

.popup_portfolio #hamburguer span {
    height: 1.5px !important;
}

.popup_portfolio .modal-body {
    z-index: 2;
}

.row_popup {
    padding-left: 50px;
}

@media(max-width: 768px){
    .row_popup {
    padding-left: 0px;
}

}

.popup_portfolio .icon_portfolio {
    margin-bottom: 30px;
}

.text_icon_popup {
    margin-bottom: 30px;
}

.text_site_popup {
  font-size: 18px;
font-weight: bold;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}


/* ------- FINISH POPUP -------- */

.portfolio_title_second_slide {
    margin: 0;
    text-align: center;
}

.portfolio_title_second_slide::after {
    position: absolute;
    top: 50%;
    left: 20%;
    overflow: hidden;
    width: 60%;
    height: 1px;
    content: '';
    background-color: #5F708E;
    z-index: -1;
}


.portfolio_second_slide .content-wrapper {
    flex-flow: row nowrap;
    background-color: #5F708E;
}

.second_title_box_portfolio {
    width: 100%;
    top: 20%;
    position: relative;
    /*    margin-top: 150px;*/
}

#page_portfolio .second_title_box_portfolio {
    margin-top: 150px;
}

@media (max-width:768px) {
    .second_title_box_portfolio {
        padding-top: 145px;
        margin-left: 0;
        margin-right: 0;
    }
    #page_portfolio .second_title_box_portfolio {
        margin-top: 0 !important;
    }

    .div-responsive-for-p{
      margin-left: 10px;
      margin-right: 10px;
      color: white;
      text-align: center;
    }
    .content-title{
      margin-top: 0px;
    }

    .box_logo_snap{
      margin-top: 10px;
    }

    .cd-section{
      margin-top: -10px;
      background-size: 250% 100% !important;
      background-position: center !important;
    }

    .btn_learn_more_home{
      margin-left: -75px;
position: absolute;
margin-top: 37px;
}

.btn_go_to_portfolio {
    border: 2px solid;
    border-color: #fff;
    background-color: #fff !important;
    color: rgba(67, 50, 103, 1) !important;
    width: 171px;
    padding: 15px 22px;
    text-decoration: none !important;
    cursor: pointer;
    position: absolute;
    margin-top: 135px;
    text-align: center;
    margin-left: -75px;
}

.icon_follow_us{
      margin-left: 25px;
}

    }
}

.text_title_second_slide {
    background-color: #5F708E;
    padding: 0 30px;
    font-size: 33px;
    font-weight: 500;
    line-height: 52px;
    color: #fff;
    letter-spacing: 2px;
}

@media (max-width:768px) {
    .text_title_second_slide {
        font-size: 28px !important;
        line-height: 40px !important;
        padding: 0;
        letter-spacing: 0;
    }

    .row-mobile{
      margin-top: 50px;
    }

    .box_logo_first_slide_portfolio:nth-child(3n){
        margin-top: 50px;
    }

    .box_logo_first_slide_portfolio:nth-child(4n){
        margin-top: 50px;
    }
}




/* responsive portfolio-title_client */

@media screen and (min-width: 2500px), screen and (min-height: 1000px){
   .portfolio_title_citation {
    font-size: 17px;
    margin-left: 910px !importants;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
} 

@media screen and (max-width: 1440px), screen and (max-height: 612px){
   .portfolio_title_citation {
    font-size: 17px;
    margin-left: 346px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
}

@media screen and (max-width: 1366px), screen and (max-height: 768px){
   .portfolio_title_citation {
    font-size: 17px;
    margin-left: 301px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
}



/* responsive portfolio-title_client  iPAD  E iPAD PRO*/

@media screen and (max-width: 1024px){
   .portfolio_title_citation {
    font-size: 17px;
    margin-left: 140px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
} 

/* responsive portfolio-title_client  iPHONE 6 PLUS*/

@media screen and (max-width: 414px){
   .portfolio_title_citation {
    font-size: 14px;
    margin-left: 35px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
}

/* responsive portfolio-title_client  iPHONE 6 */

@media screen and (max-width: 375px){
   .portfolio_title_citation {
    font-size: 14px;
    margin-left: 16px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
}

/* responsive portfolio-title_client  iPHONE 5, NEXUS 6 E NEXUS 5X */

@media screen and (max-width: 375px){
   .portfolio_title_citation {
    font-size: 12px;
    margin-left: 39px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
} 

/* responsive portfolio-title_client  GALAXY S5*/

@media screen and (max-width: 360px){
   .portfolio_title_citation {
    font-size: 12px;
    margin-left: 32px !important;
    font-weight: 200;
    text-align: left;
    color: #fff;
    }
} 






.portfolio_clients {
    border: 1px solid #5F708E;
    height: 300px;
    display: flex;
    align-items: center;
}

@media (max-width:767px) {
    .portfolio_clients {
        border: 0;
    }
}

@media (width:768px) {
    .portfolio_clients {
        height: 170px;
    }
    .popup_img {
        width: 100% !important;
        margin-right: auto;
        margin-left: auto;
    }
}

.portfolio_clients .img_clients {
    display: block;
    max-height: 180px;
    width: auto;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}

/*
.popup_img {
  
    margin-bottom: 50px;
    height: 100%;
    width: 53%;
    max-width: 625px;
}
*/




 .popup_portfolio p {
    color: #fff !important;

}

.popup_img{
    max-height: 100px;
    margin-bottom: 50px;
}

}
@media screen and (min-width: 1440px) {

 .popup_portfolio p {
    color: #fff !important;

}

}



 .popup_portfolio p {
    color: #fff !important;

}

}

@media (max-width:768px) {
    .popup_img {
        width: 52%;
        max-height: 100%;

    }
    .row_popup {
        padding: 0;
    }
    .text_popup {
        width: 100%;
    }

    .row-responsive{
      margin-right: 0px !important;
    }

    .cd-fixed-background{
      background-size: 300% 100% !important;
      background: linear-gradient(rgba(67, 50, 103, 0.5), rgba(67, 50, 103, 0.5)), url(http://localhost/snap/storage/app/uploads/public/59c/12b/a82/59c12ba….jpg);
      background-position: center !important;
    }


}


/*
.panel-first-slide {
    display: block;
    max-height: 180px;
    width: auto;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}
*/

.panel-first-slide #gradient {
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(../img/portfolio/background-portfolio.jpg);
    opacity: 1;
    z-index: 1111;
}

.box_clients_portfolio {
    margin-left: 33px;
    margin-right: 33px;
}

.padding .box_clients_portfolio:nth-child(2) {
    margin-top: 130px;
}

.clients_portfolio_first_colun .portfolio_clients {
    border-top: 0;
}

.clients_portfolio_first_colun .portfolio_clients:first-child,
.clients_portfolio_medium_colun .portfolio_clients:first-child,
.clients_portfolio_last_colun .portfolio_clients:first-child {
    border-left: 0;
}

.clients_portfolio_first_colun .portfolio_clients:last-child,
.clients_portfolio_medium_colun .portfolio_clients:last-child,
.clients_portfolio_last_colun .portfolio_clients:last-child {
    border-right: 0;
}

.clients_portfolio_last_colun .portfolio_clients {
    border-bottom: 0;
}

.plus_icon_portfolio {
    position: absolute;
    bottom: 5%;
    width: 32px !important;
    height: 32px !important;
    right: 5%;
}


/* ----- FINISH PORTFOLIO PAGE------ */



/* ------ PAGE ABOUT US-------- */

#page_about_us .panel-first-slide #gradient {
    background-image: url(../img/about_us/img-aboutus.jpg);
    background-size: 100% 100%;
}

#page_about_us .box_teammate_our_team:nth-child(2n) .box_img_team_our_team{
    float: right;
}

@media (min-width:992px) {
    #page_about_us .box_teammate_our_team:nth-child(2n-1) .box_img_team_our_team{
        margin-left: 12.666%;
    }

    #page_about_us .box_teammate_our_team:nth-child(2n) .box_info_team_our_team{
        margin-left: 13%;
    }
    #page_about_us .box_teammate_our_team:nth-child(2n) .box_img_team_our_team{
        margin-right: 17.6666%;
    }
}






/*
@media (max-width:768px) {
    #page_about_us {
        margin-top: 80px;
    }
}
*/

@media (min-width: 1500px) {
  .title_box_about_us{
    margin-top: 30% !important;
  }
}

.title_box_about_us {
    display: flex;
    margin-top: 22%;
    /*    position: absolute;*/
    position: relative;
    /*    top: 50%;*/

}

.big_title_about_us {
    font-size: 36px;
    font-weight: 600;
    color: #F7F8F9;
    letter-spacing: 1px;
    line-height: 40px;
}

@media (max-width:768px) {
    .title_box_about_us {
        display: block;
        margin-left: 0;
        top: 25%;
        margin-top: 170px;
    }
    .big_title_about_us {
        width: 100%;
        font-size: 20px;
        line-height: 20px;
        text-align: center;
    }
}

@media (min-width:1500px) {
    .big_title_about_us {
        font-size: 36px;
        letter-spacing: 1px;
        line-height: 56px;
    }
}

.second_title_about_us,
.last_title_about_us {
    color: #F7F8F9;
    font-weight: 300;
    font-size: 15px;
    line-height: 21px;
    padding-top: 10px;
    margin-left: 0px;
}

@media (max-width:768px) {
    .second_title_about_us,
    .last_title_about_us {
        width: 85%;
        margin-left: 0;
        text-align: center;
        margin: 0 auto;
        font-size: 14.16px;
    }

    #page_about_us .panel-first-slide #gradient {
    background-image: url(../img/about_us/img-aboutus.jpg);
    background-size: 250% 100%;
    background-position: center;
  }

}

@media (min-width:1500px) {
    .second_title_about_us,
    .last_title_about_us {
        font-weight: 300;
        font-size: 17.16px;
        line-height: 26px;
        padding-top: 10px;
        /*        width: 16%;*/
    }
}

#page_about_us .padding {
    background-color: #F7F8F9;
}

.box_digital_expertise {
    margin-top: 15%;
    margin-bottom: 15%;
    text-align: center;
}

.title_digital_expertise {
    font-size: 31px;
    color: #5F708E;
    font-weight: 600;
    line-height: 52px;
}

@media (max-width:768px) {
    .title_digital_expertise {
        font-size: 34px;
    }
    .text_digital_expertise {
        font-size: 16px !important;
        line-height: 30px !important;
        width: 85% !important;
        margin-top: 50px !important;
        margin-bottom: 60px !important;

    }
    .pergunta_digital_expertise {
        font-size: 18px;
        margin-bottom: 30px !important;
    }
    .btn_contact_us_digital_expertise {
        padding: 6px 14px;
    }
}

.text_digital_expertise {
    width: 55%;
    margin: 0 auto;
    font-size: 22px;
    color: #575769;
    line-height: 45px;
    font-weight: 300;
}

.pergunta_digital_expertise {
    margin-top: 9%;
    margin-bottom: 4%;
    font-size: 26px;
    color: #424256;
}

.btn_contact_us_digital_expertise {
    border: 1.40px solid black;
    padding: 10px 20px;
    color: black !important;
    text-decoration: none !important;
    cursor: pointer;
}

.box_conversation_part {
    background-color: #5F708E;
}

.texte_conversation_part {
    color: #F7F8F9;
    width: 83%;
    font-size: 18px;
    font-weight: 500 !important;
    line-height: 30px;
}


.img_conversation_part {
    width: 20%;
    padding-bottom: 30px;
}

.mini_box_conversation_part {
    min-height: 350px;
    margin-top: 125px;
}

.mini_box_conversation_part:nth-child(odd){
  padding-left: 170px;
  padding-right: 75px;
}

.mini_box_conversation_part:nth-child(even){
  padding-right: 170px;
  padding-left: 75px;
}

.mini_box_conversation_part:nth-child(1n+3){
  margin-top: 83px;
}

.mini_box_conversation_part:nth-child(4){
  margin-top: 83px;
}

.mini_box_conversation_part p{
  color: white;
  font-size: 13px;
  font-weight: 300;
}


@media (max-width:768px) {
    .mini_box_conversation_part {
        text-align: center;
        margin-top: 80px;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    .img_conversation_part {
        width: 40%;
    }
    .texte_conversation_part {
        margin: 0 auto;
        width: 100%;
        line-height: 25px;
        font-size: 16px;
    }
}

.row_conversation_part {
    margin-bottom: 80px;
}

.box_teammate_our_team {

    margin-bottom: 107px;
}

.box_teammate_our_team p{
    /*margin-right: 38%;*/
    max-width: 600px;
}

@media (max-width:768px) {
    .box_teammate_our_team {
        display: block;
        margin-top: 79px;
    }
    .box_teammate_our_team p{
        margin-right: 0px;
    }
}

.title_our_team {
    font-size: 31px;
    font-weight: 800;
    line-height: 30px;
    color: #5F708E;
    margin-bottom: 79px;
    margin-top: 138px;
    display: inline-block;
    margin-left: 149px;
}

@media (max-width:768px) {
    .title_our_team {
        margin-right: auto;
        margin-left: auto;
        font-size: 34px;
        margin-top: 79px;
    }
    .text_our_team {
        margin: 0 auto !important;
        line-height: 25px !important;
        font-size: 20px !important;
        margin-top: -35px !important;
    }

    .panel-first-slide #gradient{
      background-position: right;
      background-size: 250% 100%;
    }
}

.text_our_team {
    font-weight: 400;
    margin-bottom: 158px;
    margin-left: 148px;
    margin-right: 148px;
    font-size: 20px;
    margin-top: -50px;
}

.img_team_our_team {
    float: right;
    height: 100%;
    width: auto;
    max-height: 260px;
    max-width: 400px;
}



@media (max-width:768px) {
    .img_team_our_team {
        float: none;
        /*width: 100%;*/
        height: auto;
        margin-bottom: 30px;
        /*max-height: 215px;*/
        background-size: 100% 100%;
            max-height: 340px !important;
    }


    .text_team_our_team{
      margin-bottom: 27px !important;
    }
}


.name_team_our_team {
    color: #3D3D51;
    font-size: 22px;
    font-weight: 600;
    line-height: 30px;
    text-transform: uppercase;
    margin-top: 0px;
}

.text_team_our_team {
    width: 45%;
    margin-bottom: 25px;
}

@media (max-width:768px) {
    .text_team_our_team {
        width: 100%;
        line-height: 25px !important;
        font-size: 16px !important;
    }
}

.icon_our_team {
    margin-right: 15px;
}


/* ------ FINISH PAGE ABOUT US-------- */



/* --------------------------------

Primary style

-------------------------------- */
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}


@media only screen and (min-width: 1048px) {
  body {
    /* hide horizontal scroll bar in IE */
    overflow-x: hidden;
  }
}

a {
  color: #93a748;
  text-decoration: none;
}

/* --------------------------------

Main Components

-------------------------------- */
.cd-header {
  position: relative;
  height: 100%;
  background-color: #93a748;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  z-index: 1;
}
.cd-header h1 {
  width: 90%;
  color: #f2e6cd;
  text-align: center;
  font-size: 2.2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .cd-header h1 {
    font-size: 3.6rem;
    font-weight: 300;
  }
}

.cd-fixed-background {
  position: relative;
  padding: 3em 5% 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
/*
.cd-fixed-background::before{
background-color: rgba(0, 0, 0, 0.86);
content: ' ';
display: block;
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 1;
opacity: 0.2;
background-repeat: no-repeat;
background-position: 50% 0;
-ms-background-size: cover;
-o-background-size: cover;
-moz-background-size: cover;
-webkit-background-size: cover;
background-size: cover;
}*/
/*
.cd-fixed-background h2, .cd-fixed-background p {
  color: #f2e6cd;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.cd-fixed-background h2 {
  font-size: 2.4rem;
  margin-bottom: 1em;
}
*/
/*
.cd-fixed-background p {
  line-height: 1.6;
  font-family: "Merriweather", serif;
}
*/
.cd-fixed-background .light-background h2, .cd-fixed-background .light-background p {
  color: #0f594d;
}
.cd-fixed-background .cd-content::after {
  /* phone image on small devices */
  content: '';
  display: block;
  width: 100%;
  padding: 60% 0;
  margin: 2em auto 0;
}
.cd-fixed-background.img-1 {

}
.cd-fixed-background.img-2 {
  background-color: #f2e6cd;
}
.cd-fixed-background.img-2 .cd-content::after {
  background: url("../img/img-mobile-2.jpg") no-repeat;
  background-size: 100% auto;
}
.cd-fixed-background.img-3 {
  background-color: #0f594d;
}
.cd-fixed-background.img-3 .cd-content::after {
  background: url("../img/img-mobile-3.jpg") no-repeat;
  background-size: 100% auto;
}
.cd-fixed-background.img-4 {
  background-color: #db9537;
}
.cd-fixed-background.img-4 .cd-content::after {
  background: url("../img/img-mobile-4.jpg") no-repeat;
  background-size: 100% auto;
}
@media only screen and (min-width: 768px) {
  .cd-fixed-background {
    height: 100%;
    padding: 0;
  }
/*
  .cd-fixed-background h2 {
    font-size: 3.6rem;
    font-weight: 300;
  }
*/
/*
  .cd-fixed-background p {
    font-size: 1.8rem;
    line-height: 1.8;
  }
*/
  .cd-fixed-background .cd-content {
    width: 50%;
    position: absolute;
    left: 5%;
    top: 50%;
    bottom: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .cd-fixed-background .cd-content::after {
    display: none !important;
  }
  .cd-fixed-background.img-1 {
    background-image: url(../img/home/img-home.jpg);
  }
  .cd-fixed-background.img-2 {
    background-image: url(../img/home/img-home-case.jpg);
  }
  .cd-fixed-background.img-3 {
    background-image: url("../img/img-3.jpg");
  }
  .cd-fixed-background.img-4 {
    background-image: url("../img/img-4.jpg");
  }
}
@media only screen and (min-width: 1048px) {
  .cd-fixed-background {
    background-attachment: fixed;
  }
    .cd-fixed-background.is-visible {
    background-attachment: inherit !important;
  }
  .cd-fixed-background .cd-content {
    width: 40%;
    left: 10%;
  }
}

.cd-vertical-nav {
  position: fixed;
  z-index: 2;
  left: 50%;
    bottom: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  display: none;
    padding: 0;
}
.cd-vertical-nav a {
  display: block;
  height: 40px;
    width: 50px;
  /* image replace */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: transparent url(../img/arrow/arrow.png) no-repeat center center;
  -webkit-transition: opacity 0.2s 0s, visibility 0.2s 0s;
  -moz-transition: opacity 0.2s 0s, visibility 0.2s 0s;
  transition: opacity 0.2s 0s, visibility 0.2s 0s;
    background-size: 45px;
}
.cd-vertical-nav a.cd-prev {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  margin-bottom: 10px;
}
.cd-vertical-nav a.inactive {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s 0s, visibility 0s 0.2s;
  -moz-transition: opacity 0.2s 0s, visibility 0s 0.2s;
  transition: opacity 0.2s 0s, visibility 0s 0.2s;
}
@media only screen and (min-width: 1200px) {
  .cd-vertical-nav {
    display: block;
  }
}

.no-js .cd-vertical-nav {
  display: none;
}
ol, ul {
	list-style: none;
}

/**/


.cd-img-replace {
  /* replace text with a background-image */
  display: inline-block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

/* --------------------------------

Main components

-------------------------------- */
.cd-section {
  min-height: 100%;
  position: relative;
  padding: 2em 0;
}


/*
.cd-section:nth-of-type(odd) {
  background-color: #3e3947;
}
.cd-section:nth-of-type(odd) p {
  color: #898099;
}
.cd-section:nth-of-type(even) {
  background-color: #745360;
}
.cd-section:nth-of-type(even) p {
  color: #bda3ad;
}
*/
/*
.cd-section h1, .cd-section p {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  width: 90%;
  max-width: 768px;
  text-align: center;
}
*/
/*
.cd-section h1 {
  color: white;
  font-weight: 300;
  text-transform: uppercase;
  font-size: 20px;
  font-size: 1.25rem;
}
.cd-section p {
  line-height: 1.6;
}
*/
@media only screen and (min-width: 768px) {
/*
  .cd-section h1 {
    font-size: 30px;
    font-size: 1.875rem;
  }
  .cd-section p {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 2;
  }
}
*/

.cd-scroll-down {
  position: absolute;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 20px;
  width: 38px;
  height: 44px;
  background: url("../img/cd-arrow-bottom.svg") no-repeat center center;
}

/* No Touch devices */
.cd-nav-trigger {
  display: none;
}

}

.no-touch #cd-vertical-nav {
  position: fixed;
  right: 40px;
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1;
}
.no-touch #cd-vertical-nav li {
  text-align: right;
}
.no-touch #cd-vertical-nav a {
  display: inline-block;
  /* prevent weird movements on hover when you use a CSS3 transformation - webkit browsers */
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.no-touch #cd-vertical-nav a:after {
  content: "";
  display: table;
  clear: both;
}
.no-touch #cd-vertical-nav a span {
  float: right;
  display: inline-block;
  -webkit-transform: scale(0.6);
  -moz-transform: scale(0.6);
  -ms-transform: scale(0.6);
  -o-transform: scale(0.6);
  transform: scale(0.6);
}
.no-touch #cd-vertical-nav a:hover span {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.no-touch #cd-vertical-nav a:hover .cd-label {
  opacity: 1;
}
.no-touch #cd-vertical-nav a.is-selected .cd-dot {
  background-color: white;
}
.no-touch #cd-vertical-nav .cd-dot {
  position: relative;
  /* we set a top value in order to align the dot with the label. If you change label's font, you may need to change this top value*/
/*  top: 8px;*/
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.48);
  -webkit-transition: -webkit-transform 0.2s, background-color 0.5s;
  -moz-transition: -moz-transform 0.2s, background-color 0.5s;
  transition: transform 0.2s, background-color 0.5s;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
.no-touch #cd-vertical-nav .cd-label {
  position: relative;
  margin-right: 10px;
  padding: .4em .5em;
  color: white;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
  -moz-transition: -moz-transform 0.2s, opacity 0.2s;
  transition: transform 0.2s, opacity 0.2s;
  opacity: 0;
  -webkit-transform-origin: 100% 50%;
  -moz-transform-origin: 100% 50%;
  -ms-transform-origin: 100% 50%;
  -o-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

/* Touch devices */
.touch .cd-nav-trigger {
  display: block;
  z-index: 2;
  position: fixed;
  bottom: 30px;
  right: 5%;
  height: 44px;
  width: 44px;
  border-radius: 0.25em;
  background: rgba(255, 255, 255, 0.9);
}
.touch .cd-nav-trigger span {
  position: absolute;
  height: 4px;
  width: 4px;
  background-color: #3e3947;
  border-radius: 50%;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
.touch .cd-nav-trigger span::before, .touch .cd-nav-trigger span::after {
  content: '';
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  background-color: inherit;
  border-radius: inherit;
}
.touch .cd-nav-trigger span::before {
  top: -9px;
}
.touch .cd-nav-trigger span::after {
  bottom: -9px;
}

.touch #cd-vertical-nav {
  position: fixed;
  z-index: 1;
  right: 5%;
  bottom: 30px;
  width: 90%;
  max-width: 400px;
  max-height: 90%;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  -webkit-transform-origin: right bottom;
  -moz-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
  -o-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  transition-property: transform;
  -webkit-transition-duration: 0.2s;
  -moz-transition-duration: 0.2s;
  transition-duration: 0.2s;
  border-radius: 0.25em;
  background-color: rgba(255, 255, 255, 0.9);
}
.touch #cd-vertical-nav a {
  display: block;
  padding: 1em;
  border-bottom: 1px solid rgba(62, 57, 71, 0.1);
}
.touch #cd-vertical-nav a span:first-child {
  display: none;
}
.touch #cd-vertical-nav a.is-selected span:last-child {
  color: #d88683;
}
.touch #cd-vertical-nav.open {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.touch #cd-vertical-nav.open + .cd-nav-trigger {
  background-color: transparent;
}
.touch #cd-vertical-nav.open + .cd-nav-trigger span {
  background-color: rgba(62, 57, 71, 0);
}
.touch #cd-vertical-nav.open + .cd-nav-trigger span::before, .touch #cd-vertical-nav.open + .cd-nav-trigger span::after {
  background-color: #3e3947;
  height: 3px;
  width: 20px;
  border-radius: 0;
  left: -8px;
}
.touch #cd-vertical-nav.open + .cd-nav-trigger span::before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 1px;
}
.touch #cd-vertical-nav.open + .cd-nav-trigger span::after {
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
  bottom: 0;
}
.touch #cd-vertical-nav li:last-child a {
  border-bottom: none;
}

@media only screen and (min-width: 768px) {
  .touch .cd-nav-trigger, .touch #cd-vertical-nav {
    bottom: 40px;
  }

}
