*, a:hover {
    -webkit-transition:all .2s ease;
    -moz-transition:all .2s ease;
    -ms-transition:all .2s ease;
    -o-transition:all .2s ease
}
a, img {
    border:0
}
body, html, input, p, ul {
    margin:0
}
a, input {
    outline:0
}
.clear, p {
    clear:both
}
.normal, body, h1, h2, h3, h4, h5, h6, html {
    font-style:normal
}
.escuchar_, .pointer, a {
    cursor:pointer
}
@font-face {
    font-family:icomoon;
    src:url(../sb-fonts/icomoon.eot);
    src:url(../sb-fonts/icomoon.eot) format('embedded-opentype'), url(../sb-fonts/icomoon.ttf) format('truetype'), url(../sb-fonts/icomoon.woff) format('woff'), url(../sb-fonts/icomoon.svg) format('svg');
    font-weight:400;
    font-style:normal
}
[class*=" icon-"], [class^=icon-] {
    font-family: "Roboto", sans-serif;
    speak:none;
    font-style:normal;
    font-weight:400;
    font-variant:normal;
    text-transform:none;
    line-height:1;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale
}
/*.upper, h1, h2, h3, h4, h5, h6, input[type=radio]+label {
    text-transform:uppercase
}*/
.icon-close:before {
    content:"\e900";
    color:#FFF;
    font-size:22px
}
.icon-fa:before, .icon-in:before, .icon-ins:before {
    color:#999;
    font-size:14px
}
.icon-fa:before {
    content:"\e901"
}
.icon-in:before {
    content:"\e902"
}
.icon-ins:before {
    content:"\e903"
}
.icon-menu:before {
    content:"\e904";
    color:#000;
    font-size:22px
}
.icon-tw:before {
    content:"\e905";
    color:#999;
    font-size:14px
}
body, html {
    width:100%;
    height:100%;
    font-family: "Roboto", sans-serif;
    color:#5f6469;
    line-height:25px;
    font-weight:300;
    font-size:16px;
    /*background:#f6f6f6*/
    background:#fff
}
h1, h2 {
    font-family: "Roboto", sans-serif;
}
* {
    transition:all .2s ease;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box
}
a {
    text-decoration:none
}
a:hover {
    transition:all .2s ease
}
ul {
    padding:0
}
h1, h2, h3, h4, h5, h6 {
    font-weight:400;
    margin:0;
    line-height:120%
}
h2, h5 {
    margin-bottom:20px
}
h1 {
    margin-bottom:42px;
    font-weight:700;
    font-size:46px;
    /*color:#272727*/
    color:#e32400;
}
h2 {
    font-weight:300;
    font-size:28px;
    color:#272727
}
h3, h4 {
    margin-bottom:40px;
    font-weight:700;
    font-family: "Roboto", sans-serif;
    color:#272727
}
h3 {
    font-size:42px
}
h4 {
    font-size:34px
}
h5 {
    font-family: "Roboto", sans-serif;
    font-weight:400;
    font-size:18px;
    color:#272727
}
input {
    -webkit-border-radius:0;
    border-radius:0
}
select, textarea {
    outline:0;
    resize:none
}
.none {
    display:none
}
.center {
    text-align:center
}
.left {
    text-align:left
}
.right {
    text-align:right
}
.floatLeft {
    float:left
}
.floatRight {
    float:right
}
.marginAuto {
    margin:auto
}
.marginLeft10 {
    margin-left:10px
}
.marginRight10 {
    margin-right:10px
}
.marginLeft20 {
    margin-left:20px
}
.marginRight20 {
    margin-right:20px
}
.marginBottom28 {
    margin-bottom:28px
}
.escuchar_:active, .pointer:active {
    outline:#fff solid 1px
}
.relative {
    position:relative
}
.absolute {
    position:absolute
}
.bold {
    font-weight:700
}
header {
    width:100%;
    height:84px;
    padding:20px;
    position:fixed;
    z-index:99999;
    background:#FFF
}
header .logo {
    width:222px;
    height:50px
}
header .logo img {
    width:222px;
    height:50px
}
header .logo_black {
    float:right
}
header .menu {
    margin-top:10px;
    float:left;
    display: flex;
    font-weight:400
}
header .menu li {
    list-style:none;
    float:left;
    margin-left:18px;
    position:relative
}
header .menu li:first-child {
    margin-left:0
}
header .menu li a {
    color:#5f6469
}
header .menu li a:hover {
    color:#000
}
header .menu li ul.sub-menu {
    width:274px;
    position:absolute;
    left:0;
    top:20px;
    padding:50px 20px 20px;
    background:#FFF;
    display:none
}
header .menu li ul li {
    width:100%;
    margin:4px 0
}
header .menu li ul li a {
    color:#929aa1
}
header .menu li.services:hover ul.sub-menu {
    display:table-cell;
    -webkit-transition:all .2s ease;
    -moz-transition:all .2s ease;
    -ms-transition:all .2s ease;
    -o-transition:all .2s ease;
    transition:all .2s ease
}
header #menu_responsive {
    width:100%;
    height:100vh;
    background:0 0;
    display:none;
    position:fixed;
    z-index:999999;
    left:0;
    top:-100vh;
    font-size:40px;
    text-align:center;
    background-color:rgba(39, 39, 39, .9);
    transition:all .5s
}
header .logo_white {
    position:absolute;
    left:20px;
    top:20px
}
header #menu_responsive ul {
    width:100%;
    display:table-cell;
    vertical-align:middle
}
header #menu_responsive li {
    width:100%;
    list-style:none;
    padding:18px 0
}
header #menu_responsive li a {
    color:#FFF
}
header #menu_responsive ul li ul {
    width:100%;
    display:block;
    margin:40px 0 0;
    font-size:28px
}
header #menu_responsive ul li ul li {
    width:100%;
    list-style:none;
    padding:10px 0
}
#abrir_modal, #cerrar_modal {
    display:none
}
/* Style the form - display items horizontally */
.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  margin-top: -11px;
  padding-right: 30px;
  position:relative;
}

/* Add some margins for each label */
.form-inline label {
  margin: 5px 10px 5px 0;
  font-size: 14px;
}

/* Style the input fields */
.form-inline input {
  vertical-align: middle;
  margin: 5px 10px 5px 0;
  padding: 10px;
  background-color: #fff;
  border: 1px solid #ddd;
  width: 140px;
}

.form-inline input:active, .form-inline input:focus {
  border: 1px solid #e79223;
  box-shadow: 0 0 3px #e79223;
}

/* Style the submit button */
.form-inline a {
  padding: 0;
  background-color: transparent;
  color: black;
  cursor:pointer;
  text-transform:uppercase;
}

.form-inline a:hover {
    /*background: #ddd;
    color: #272727;*/
    text-decoration: underline;
}
.login {
    display:none;
}
.loginmobile {
    display: none;
}

/* Add responsiveness - display the form controls vertically instead of horizontally on screens that are less than 800px wide */
input[type=radio]+label {
    width:24px;
    height:24px;
    overflow:hidden;
    position:absolute;
    z-index:999;
    display:none;
    cursor:pointer
}
.texthidden {
    display:none;
    position:absolute;
    left: 45px;
    top: 43px;
    font-size: 14px;
    color:#d20000;
}
.hero, .hero img {
    position:relative
}
input[type=radio]#abrir_modal+label {
    left:20px;
    top:30px;
    color:#000
}
input[type=radio]#cerrar_modal+label {
    left:20px;
    top:14px;
    color:#FFF
}
input[type=radio]#abrir_modal:checked~#menu_responsive {
    top:0
}
input[type=radio]#cerrar_modal:checked~#menu_responsive {
    top:-100vh
}
header .contact_number {
    width:15em;
    margin:10px auto 0;
    font-family: "Roboto", sans-serif;
    font-weight:700;
    font-size:16px;
    text-align:center
}
.block, .container, .hero, .hero img, .list_servies, .prehero, .wrapper {
    width:100%;
}
.hero2 {
    width:100%;
    text-align:center;
    padding:15px 0 40px;
    background:#f6f6f6
}

.hero2 img {
    width:1100px;
}
header .contact_number a {
    color:#272727
}
.contact_number_responsive {
    width:100%;
    padding:6% 4%;
    margin:auto;
    display:none;
    text-align:center;
    font-weight:700;
    font-size:20px;
    background:#e79223
}
.contact_number_responsive a {
    color:#FFF
}
.container {
    padding-top:84px
}
.prehero {
    padding:8% 5%
}
.contactpage {
    margin-top:-100px;
}
.contactform {
    margin-top:-20px;
}
.block, .prehero {
    max-width:1200px;
    margin:auto;
}
.prehero h2 {
    font-family: "Roboto", sans-serif;
    font-size:1.6em;
}
.wrapper {
    padding:4% 5%;
    background:#f6f6f6
}
.bgWhite {
    background:#FFF !important
}
.block p {
    margin-bottom:20px
}
.hero {
    height:600px;
    overflow:hidden
}
.hero img {
    margin-top:-140px;
}
.cols2, .intro, .item-service, .list_servies {
    min-height:100px;
    height:auto;
    overflow:hidden
}
.intro {
    width:75%
}
.form, .sub_services {
    width:50%;
    padding:2%;
    float:left
}
.sub_services li {
    list-style:none;
    margin-bottom:40px
}
.sub_services li h5 {
    margin-bottom:4px
}
.sub_services li a {
    font-weight:400;
    color:#272727
}
.form li {
    list-style:none;
    margin-bottom:20px
}
.form ul li input[type=text], .form ul li input[type=email], .form ul li input[type=tel], .form ul li textarea {
    width:100%;
    height:52px;
    border:0;
    padding:14px;
    font-size:18px;
    border-bottom:1px solid #d4d4d4;
    background:#F6F6F6;
    font-family: "Roboto", sans-serif;
    font-weight:400
}
.form ul li input[type=text]:hover, .form ul li input[type=email]:hover, .form ul li input[type=tel]:hover, .form ul li textarea:hover {
    border-bottom:1px solid #bebebe
}
.form ul li textarea:focus {
    height:140px
}
.form ul li input[type=submit] {
    border:0;
    text-transform:uppercase
}

.item-service {
    width: 23%;
    padding: 4%;
    float: left;
    text-align: center;
    background-color: #f1f1f1;
    margin-right: 30px;
    border: 1px solid #e9e9e9;
}

.item-service-last-child {
    margin-right: 0 !important;
}
.item-service h5 a {
    color:#272727;
}
.item-service h5 a:hover {
    text-decoration:underline;
}
.text_first_level {
    font-size:24px
}
.item-service li {
    list-style:none;
    margin-bottom:2px;
    font-weight:400
}
.spaceBottom {
    padding-bottom:20px
}
.btn {
    width:fit-content;
    height:auto;
    display:block;
    padding: 0;
    color:#000;
    text-align:center;
    font-size:16px;
    margin-top:20px;
    background:transparent;
}
.item-service .btn {
    width:fit-content;
    height:auto
}
.item-service .btn {
    background: transparent
}
.btn:hover, .item-service a.btn:hover {
    /*background:#ddd;
    color:#272727;*/
    text-decoration: underline;
}
.item-service h5 {
    height: 2.2em;
}
.form input::-webkit-input-placeholder {
    font-size:16px;
    word-wrap:break-word;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form input:-moz-placeholder {
    font-size:16px;
    vertical-align:text-top;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form input::-moz-placeholder {
    font-size:16px;
    vertical-align:text-top;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form input:-ms-input-placeholder {
    font-size:16px;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form textarea::-webkit-input-placeholder {
    font-size:16px;
    word-wrap:break-word;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form textarea:-moz-placeholder {
    font-size:16px;
    vertical-align:text-top;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form textarea::-moz-placeholder {
    font-size:16px;
    vertical-align:text-top;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.form textarea:-ms-input-placeholder {
    font-size:16px;
    font-family: "Roboto", sans-serif;
    font-weight:300;
    color:#5f6469;
    text-transform:uppercase
}
.alignjustify {
    text-align: justify;
}
footer {
    width:100%;
    display:flex;
    justify-content: space-between;
    min-height:62px;
    height:auto;
    overflow:hidden;
    padding:20px;
    font-size:12px;
    background-color: #ffffff !important;
}
footer a {
    font-size: 16px;
    color: #5f6469;
    cursor:pointer;
    font-weight: 400;
}
footer a:hover {
    color: #000;
}
footer .copyright {
    float:left;
    line-height:140%
}
footer .tel {
    float:right
}
footer .redes {
    float:right;
    margin-left:40px
}
footer .redes ul {
    width:136px
}
footer .redes li {
    list-style:none;
    float:left;
    margin-left:18px
}
footer .redes li:first-child {
    margin-left:0
}
footer .redes li a {
    width:20px;
    height:20px;
    display:table-cell;
    vertical-align:middle
}

@media only screen and (max-width:1240px) {
    .item-service {
        margin-right: 20px;
    }
}
@media only screen and (max-width:1700px) {
    .hero img {
    margin-top:0px;
}
}
@media only screen and (max-width:1100px) {
    .hero2 img {
    width:100%;
    height:auto;
}
.contactpage {
    margin-top:-50px;
}
}
@media screen and (max-width:1024px) {
    header {
        display: flex;
        flex-direction: row-reverse;
        padding-right: 0;
        padding-left: 0;
    }
    header .menu {
        display:none
    }
    header #menu_responsive, input[type=radio]+label {
        display:flex;
        flex-direction: column;
    }
    h3 {
        font-size:58px
    }
    header .logo {
        margin-right: 17px;
    }
    .login {
        display:block;
        position:absolute;
        top: 30px;
        left: 78px;
    }
    .login p {
        font-size: 20px;
        font-weight: bold;
    }
    .login p a {
        color: #000000 !important;
    }
    .form-inline input {
        margin: 0 15px 0 0;
      }
    .texthiddentwo {
        display:none;
        position:absolute;
        text-align:left;
        font-size: 14px;
        color:#d20000;
        font-weight: bold;
        top: 35px;
    }
    .loginmobileaction {
        position: absolute;
       display: flex;
       background: #ffffff;
       width: 100%;
       padding: 30px 20px 20px;
       justify-content: center;
       margin-top: 40px;
       margin-left: 20px;
       margin-bottom: 20px;
    }
}
@media screen and (max-width:900px) {
    .item-service {
        width: 22%;
    }
}
@media screen and (max-width:800px) {
    .contact_number {
        display:none
    }
    .contact_number_responsive {
        display:flex;
        flex-direction: column
    }
}
@media screen and (max-width:768px) {
    header .menu {
        display:none
    }
    header #menu_responsive {
        display:flex;
        flex-direction: column
    }
    .hero {
        height:381px
    }

    .intro {
        width:100%
    }
    h3 {
        font-size:50px
    }
    .item-service {
        width:100%;
        text-align:center;
        margin: 0 auto 20px;
    }
}
@media screen and (max-width:736px) {
    input[type=radio]#cerrar_modal+label {
        top:30px
    }
    .hero {
        height:365px
    }
    header #menu_responsive {
        font-size:24px
    }
    header #menu_responsive li {
        padding:9px 0
    }
    header #menu_responsive ul li ul li {
        padding:4px 0
    }
    header #menu_responsive ul li ul {
        margin:10px 0 0;
        font-size:18px
    }
    h4 {
        font-size:20px
    }
    .form, .sub_services {
        width:100%
    }
    .form ul li input[type=submit] {
        margin:20px auto auto
    }
    .contactform {
        margin-top:-0px;
    }
}
@media screen and (max-width:667px) {
    .hero {
        height:331px
    }
    footer {
        flex-direction: column-reverse;
    }
    footer .privacy {
        text-align:center;
        white-space: nowrap;
        padding-bottom: 20px;
    }
}
@media screen and (max-width:568px) {
    header {
        height: 64px;
        padding: 17px 0 0;
    }
    header .logo {
        width:150px;
        height:auto;
    }
    header .logo img {
        width:150px;
        height:auto;
    }
    input[type=radio]#abrir_modal+label{
        top:22px;
        right: 17px;
    }
    .login {
        top: 20px;
        left: 65px;
    }
    .loginmobileaction {
        padding: 20px 5px;
    }
    .copyright, .redes, .tel {
        width:100%;
        text-align:center
    }
    .hero {
        height:282px
    }
    .tel {
        margin:auto
    }
    .redes {
        margin:20px auto
    }
    .redes ul {
        margin:auto
    }
    .contactpage {
    margin-top:-0px;
}
}
@media screen and (max-width:450px) {
    .form-inline {
        padding-right: 0px;
    }
    .form-inline input {
        margin: 0 10px 0px 0;
        width: 120px;
    }
    .form-inline a {
        padding: 5px 10px;
    }
}
@media screen and (max-width:414px) {
    .hero {
        height:205px
    }
    h3 {
        font-size:36px
    }
    .text_first_level {
        font-size:18px
    }
}
@media screen and (max-width:375px) {
    .hero {
        height:186px
    }
    .item-service {
        width:100%;
        padding:8% 4%
    }
    .form-inline input {
        width: 110px;
    }
}
@media screen and (max-width:350px) {
    .form-inline input {
        width: 100px;
    }
}
@media screen and (max-width:320px) {
    .hero {
        height:158px
    }
}