/*! HTML5 Boilerplate v5.1.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
/* =========== Fuentes =========== */
@font-face {
    font-family:'Graphik-ThinItalic';
    src: url('../fonts/Graphik-ThinItalic_gdi.eot');
    src: url('../fonts/Graphik-ThinItalic_gdi.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Graphik-ThinItalic_gdi.woff') format('woff'),
        url('../fonts/Graphik-ThinItalic_gdi.ttf') format('truetype'),
        url('../fonts/Graphik-ThinItalic_gdi.otf') format('opentype'),
        url('../fonts/Graphik-ThinItalic_gdi.svg#Graphik-ThinItalic') format('svg');
    font-weight: 250;
    font-style: italic;
    font-stretch: normal;
    unicode-range: U+0020-2265;
}

@font-face {
    font-family:'Graphik-Regular';
    src: url('../fonts/Graphik-Regular_gdi.eot');
    src: url('../fonts/Graphik-Regular_gdi.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Graphik-Regular_gdi.woff') format('woff'),
        url('../fonts/Graphik-Regular_gdi.ttf') format('truetype'),
        url('../fonts/Graphik-Regular_gdi.otf') format('opentype'),
        url('../fonts/Graphik-Regular_gdi.svg#Graphik-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-2265;
}

@font-face {
    font-family:'Graphik-Light';
    src: url('../fonts/Graphik-Light_gdi.eot');
    src: url('../fonts/Graphik-Light_gdi.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Graphik-Light_gdi.woff') format('woff'),
        url('../fonts/Graphik-Light_gdi.ttf') format('truetype'),
        url('../fonts/Graphik-Light_gdi.otf') format('opentype'),
        url('../fonts/Graphik-Light_gdi.svg#Graphik-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-2265;
}

@font-face {
    font-family:'Graphik-Medium';
    src: url('../fonts/Graphik-Medium_gdi.eot');
    src: url('../fonts/Graphik-Medium_gdi.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Graphik-Medium_gdi.woff') format('woff'),
        url('../fonts/Graphik-Medium_gdi.ttf') format('truetype'),
        url('../fonts/Graphik-Medium_gdi.otf') format('opentype'),
        url('../fonts/Graphik-Medium_gdi.svg#Graphik-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-2265;
}

/* =========== Fuentes =========== */
body { overflow-x: hidden; }

a:hover {text-decoration: none !important;}

p,
a,
h1 { font-family: 'Graphik-ThinItalic',arial,sans-serif; }

p,
a { font-weight: bold; }

h2 { font-family: 'Graphik-Light',arial,sans-serif; }

h1.titulo { font-size: 42px; }

p,
a { font-size: 15px; }

.fl-wd {
    float: left;
    width: 100%;
}

.rel { position: relative; }

.abs { position: absolute; }

.bg-oscuro { background-color: #3b3b3b; }

.bg-bco { background-color: #fff; }

.mg-bottom30 { margin-bottom: 30px; }

/* =========== Header =========== */
header a {
    float: right;
    font: 14px 'Graphik-Light';
    color: #fff;
}

header a#tel {
    padding: 10px 0px 10px 40px;
    background: url(../img/top-tel.svg) no-repeat 0% 50%;
}

header a#correo {
    padding: 10px 0;
    width: 100%;
    text-align: right;
    background: url(../img/top-correo.svg) no-repeat 38% 50%;   
}

header a:hover { color: #fff; }

header .bg-bco { position: relative; }

header #linea-header { 
    position: absolute;
    top: 50%;
    left: 0;  
    margin: 0;
    width: 21%;
    border-top: 1px solid #3d3c3c;
}

header .logo {
    margin: 40px 0;
    height: 34px;
    background: #fff url(../img/logo.svg) no-repeat;
}

header .logo a {
    width: 100%;
    height: 100%;
}

header .logo span { display: none; }

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

header .menu-dsk ul li { 
    float: left;
    padding: 45px 0;
    width: 19%;
    display: inline;
    list-style: none;
    border-top: 5px solid #fff; 
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;   
}

header .menu-dsk ul li:hover { border-top: 5px solid #e30513; }

header .menu-dsk ul li:hover a { color: #e30513; }

header .menu-dsk ul li a {
    float: inherit;
    width: 100%;
    font: 18px 'Graphik-Medium'; 
    color: #3c3c3c;
    text-align: center;
}

/* =========== Slider =========== */
#slider { position: relative; }

#slider .bx-wrapper { margin: 0; }

#slider .bx-wrapper .bx-viewport {
    left: 0;
    box-shadow: 0 0 0;
    border: 0px;
}

#slider .bx-wrapper .bx-controls {
    position: absolute;
    bottom: 5%;
    width: 100%;
    z-index: 2;
}

#slider .bx-wrapper .bx-pager.bx-default-pager a {
    width: 19px;
    height: 19px;
    background: #fff;
    border: 1px solid #e01b10;
    border-radius: 10px;
}

#slider .bx-wrapper .bx-pager.bx-default-pager a:hover, 
#slider .bx-wrapper .bx-pager.bx-default-pager a.active { background-color: #e01b10; }

#slider .op-negro {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.6);
    z-index: 1;
}

#slider .cont-slider {
    position: absolute;
    top: 25%;
    width: 100%;
    z-index: 1;
}

#slider .cont-slider .logo-gde {
    height: 127px;
    background: url(../img/logo-gde.svg) no-repeat left top;
    background-size: 100%;
}

#slider .cont-slider h2 {
    margin: 29px auto 20px;
    padding: 8px 0 10px;
    width: 97%;
    font-size: 35px;
    color: #fff;
    text-align: center;
    background: #e30513; /* Old browsers */
    background: -moz-linear-gradient(left,  #e30513 0%, #e30513 48%, #ffffff 48%, #ffffff 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left,  #e30513 0%,#e30513 48%,#ffffff 48%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right,  #e30513 0%,#e30513 48%,#ffffff 48%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e30513', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
}

#slider .cont-slider span {
    color: #e30513;
    background-color: #fff;
}

#slider .cont-slider p {
    color: #fff;
    text-align: center;
}

#slider .cuadros {
    position: absolute;
    top: 16%;
    right: 0;
    width: 10%;
    z-index: 1;
}

#slider .rojo {
    float: right;
    margin-bottom: 70px;
    width: 100%;
    height: 100px;
    background-color: #e30513;
}

#slider .abs { 
    bottom: 0;
    width: 100%;
    z-index: 1;
}

#slider .slider-bco {
    margin: 0 auto;
    width: 100%;
    height: 58px;
    background: url(../img/slider-bco.png) no-repeat bottom;
    background-size: 100%;
}

/* =========== Quienes =========== */ 
#quienes { background: url(../img/quienes.png) no-repeat -126px -48px; }

#quienes h1 {
    margin-top: 70px;
    margin-bottom: 0;
    font-size: 42px;
    color: #e30513;
}

#quienes h1 span { color: #3b3b3b; }

#quienes hr {
    margin: 20px 0;
    width: 97.4%;
    border-top: 1px solid #e30513;
}

#quienes span#circulo {
    position: absolute;
    right: 0;
    bottom: 9px;
    width: 26px;
    height: 25px;
    background: #fff url(../img/quienes-circulo.png) no-repeat;
}

#quienes p { margin-bottom: 70px; }

/* =========== Nuestros =========== */ 
#servicios { 
    position: relative; 
    padding-bottom: 95px;
    background-color: #ececec;
}

#servicios .fondo-rojo{ 
    top: 0;
    left: 0;
    width: 15%;
    height: 100%;
    background: url(../img/nuestros-fondo.jpg); 
    z-index: 1;
}

#servicios h1 { 
    margin: 40px 0 25px;
    font-size: 42px;
    color: #e30513; 
}

#servicios h1 span { color: #3d3c3c; }

#servicios hr {
    margin: 0;
    left: 0;
    width: 80%;
    border-top: 1px solid #3d3c3c;
    z-index: 0;
}

#servicios .fila-1 { margin-top: 30px; }

#servicios .fila-2 { margin-top: 50px; }

#servicios .formas { 
    margin-top: 25px; 
    padding-left: 2.8%;
}

#servicios .cont-forma {
    float: left;
    margin-right: 7%;
    width: 13%;
}

#servicios .cont-forma:nth-child(5),
#servicios .cont-forma:nth-child(10) { margin-right: 0; }

#servicios .borde {
    float: left;
    margin-bottom: 15px;
    padding: 10px;
    width: 100%;
    height: 143px;
    border-radius: 80px;
    border: 2px dashed #e30513;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms; 
}

#servicios .cont-forma:hover .borde {
    -webkit-transform: scale(1.5);
    -ms-transform: scale(1.5);
    transform: scale(1.5);
}

#servicios .circulo {
    width: 100%;
    height: 100%;
    background-color: #3d3c3c;
    border-radius: 72px;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms; 
}

#servicios .cont-forma:hover .circulo { background-color: #e30513; }

#servicios #c-1,
#servicios #c-2,
#servicios #c-3,
#servicios #c-4,
#servicios #c-5,
#servicios #c-6,
#servicios #c-7,
#servicios #c-8,
#servicios #c-9,
#servicios #c-10 {
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

#servicios #c-1 { background-image: url(../img/serv-1.svg); }

#servicios .cont-forma:hover #c-1 { background-image: none; }

#servicios #c-2 { background-image: url(../img/serv-2.svg); }

#servicios .cont-forma:hover #c-2 { background-image: none; }

#servicios #c-3 { background-image: url(../img/serv-3.svg); }

#servicios .cont-forma:hover #c-3 { background-image: none; }

#servicios #c-4 { background-image: url(../img/serv-4.svg); }

#servicios .cont-forma:hover #c-4 { background-image: none; }

#servicios #c-5 { background-image: url(../img/serv-5.svg); }

#servicios .cont-forma:hover #c-5 { background-image: none; }

#servicios #c-6 { background-image: url(../img/serv-6.svg); }

#servicios .cont-forma:hover #c-6 { background-image: none; }

#servicios #c-7 { background-image: url(../img/serv-7.svg); }

#servicios .cont-forma:hover #c-7 { background-image: none; }

#servicios #c-8 { background-image: url(../img/serv-8.svg); }

#servicios .cont-forma:hover #c-8 { background-image: none; }

#servicios #c-9 { background-image: url(../img/serv-9.svg); }

#servicios .cont-forma:hover #c-9 { background-image: none; }

#servicios #c-10 { background-image: url(../img/serv-10.svg); }

#servicios .cont-forma:hover #c-10 { background-image: none; }

#servicios .circulo p { 
    display: none; 
    padding: 34% 5px 0 5px;
    font-size: 10px;
    color: #fff;
}

#servicios .cont-forma:hover .circulo p { display: block; }

#servicios .cont-forma p { 
    margin-bottom: 0; 
    text-align: center;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;
}

#servicios .cont-forma:hover .nom { color: transparent; }

/* =========== Descanso =========== */  
#descanso {
    height: 380px;
    background-image: url(../img/descanso-2.png),url(../img/descanso-1.jpg); 
    background-attachment: fixed;
    background-position: 50% 50%, 100%;
    background-repeat: no-repeat, repeat;
}

/* =========== Proyectos =========== */ 
#proyectos { 
    padding-bottom: 70px;
    background: url(../img/forma-proyectos.png) no-repeat 115% 0; 
    overflow: hidden;
}

#proyectos h1 { 
    margin: 40px 0;
    font-size: 42px;
    color: #e30513; 
}

#proyectos h1 span { color: #3d3c3c; }

#proyectos .proy { 
    padding-top: 55px; 
    overflow: hidden;
}

#proyectos .nom-p { 
    top: 0;
    width: 100%;
    z-index: 1;
}

#proyectos .nom-p p {
    margin-top: 10px; 
    font: 19px 'Graphik-Regular';
    color: #e30513;
    line-height: 17px;
    z-index: 1;
}

#proyectos .cuadro-proy {
    float: left;
    margin-right: 5px;
    width: 75px;
    height: 68px;
    background: #3d3c3c url(../img/cuadro-proyectos.svg) no-repeat 50% 50%;
}

#proyectos hr { 
    margin: 0;
    width: 80%;
    height: 1px;
    border-top: 0;
    background-color: #3d3c3c;
}

#proyectos .contorno {
    top: 0;
    width: 95%;
    height: 100%;
    background: url(../img/contorno.png) no-repeat 50%;
}

#proyectos .ver {
   bottom: 0;
   margin: 0;
   width: 40%;
   height: 50px;
   background-color: rgba(227,5,19,0.8); 
   background-image: url(../img/ver.svg);
   background-repeat: no-repeat;
   background-position: 50%; 
   -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;   
}

#proyectos .oculto {
    bottom: -100%;
    width: 98%;
    height: 100%;
    background: url(../img/oculto.png) no-repeat bottom;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;   
}

#proyectos .proy:hover .oculto { bottom: 0; }

#proyectos .proy:hover .ver { bottom: -100%; }

#proyectos .oculto p { 
    padding: 26% 26px 0;
    color: #fff; 
}

/* =========== Clientes =========== */ 
#clientes { 
    padding-bottom: 11px;
    background-color: #ececec; 
}

#clientes h1 { 
    margin: 40px 0 25px;
    font-size: 42px;
    color: #e30513; 
}

#clientes h1 span { color: #3d3c3c; }

#clientes hr { 
    width: 97.8%;
    border-top: 1px solid #e30513; 
}

#clientes span#circulo {
    position: absolute;
    right: 0;
    bottom: 3px;
    width: 26px;
    height: 25px;
    background: url(../img/quienes-circulo.png) no-repeat;
}

#clientes .bx-wrapper .bx-viewport {
    background: #ececec;
    -moz-box-shadow: 0 0 0;
    -webkit-box-shadow: 0 0 0;
    box-shadow: 0 0 0;
    border: 0;
}

#clientes .blanco { display: block; }

#clientes .color { display: none; }

#clientes .bx-wrapper li:hover .blanco { display: none; }

#clientes .bx-wrapper li:hover .color { display: block; }

#clientes .bx-wrapper .bx-pager { display: none; }

#clientes .bx-wrapper .bx-controls-direction a { top: 107%; }

#clientes .bx-wrapper .bx-prev,
#clientes .bx-wrapper .bx-next{
    width: 48px;
    height: 45px;
}

#clientes .bx-wrapper .bx-prev { 
    left: 44%;
    background: url(../img/left-white.svg) no-repeat 0 0 !important; 
}

#clientes .bx-wrapper .bx-prev:hover { background: url(../img/left-red.svg) no-repeat 0 0 !important;  }

#clientes .bx-wrapper .bx-next { 
    right: 46%;
    background: url(../img/right-white.svg) no-repeat 0 0 !important; 
}

#clientes .bx-wrapper .bx-next:hover { background: url(../img/right-red.svg) no-repeat 0 0 !important;  }

#clientes .bx-wrapper .bx-controls-direction a.disabled { display: block !important; }

/* =========== Contacto =========== */ 
footer .contacto {
    padding: 65px 0 55px;  
    background: url( ../img/fondo-pie.jpg ) no-repeat bottom;
    background-attachment: fixed;
    background-size: cover;
}

footer .trans-rojo { 
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(224,27,16,0.8); 
}

footer .logo-footer { 
    margin: 60px 0 30px;
    background: url(../img/logo-footer.svg) no-repeat;
    height: 30px;
}

footer p,
footer a { color: #fff; }

footer p { margin: 0; }

footer a:hover { color: #fff; }

footer .sub-dir,
footer .sub-tel { font: 23px 'Graphik-Regular',arial,sans-serif; }

footer .sub-dir { margin: 60px 0 15px; }

footer .sub-tel { margin: 40px 0 15px; }

footer .txt-form { 
    margin-bottom: 15px;
    font-size: 18px; 
}

footer .input-group { width: 100%; }

footer .input-group input,
footer .input-group textarea { 
    font: 12px 'Graphik-Light',arial,sans-serif;
    color: #fff;
    background-color: transparent;
    border-radius: 0;
    border-color: #fff;
}

footer .input-group label { 
    width: 100%;
    font: 12px 'Graphik-Light',arial,sans-serif;
    color: #fff; 
}

footer .input-group input { min-height: 45px; }

footer .input-group textarea { min-height: 95px; }

footer .input-group .form-control { margin-bottom: 10px; }

form .input-group input::-webkit-input-placeholder { color: #fff; }

form .input-group input:-moz-placeholder { color: #fff; }

form .input-group input::-moz-placeholder { color: #fff; }

form .input-group textarea:-ms-input-placeholder { color: #fff; }

form .input-group textarea::-webkit-input-placeholder { color: #fff; }

form .input-group textarea:-moz-placeholder { color: #fff; }

form .input-group textarea::-moz-placeholder { color: #fff; }

form .input-group textarea:-ms-input-placeholder { color: #fff; }

.form-control:focus {
    border-color: #fff;
    -webkit-box-shadow: inset 0 0 0 rgba(0,0,0,.075),0 0 0 rgba(102,175,233,.6);
    box-shadow: inset 0 0 0 rgba(0,0,0,.075),0 0 0 rgba(102,175,233,.6);
}

footer .btn-group .btn { 
    float: right; 
    padding: 11px 42px;
    color: #fff;
    background-color: transparent;
    border-color: #fff;
    border-radius: 0;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;
}

footer .btn-group .btn:hover {
    color: #e01b10;
    background-color: #fff; 
}

footer .txt-derechos { 
    margin: 25px 0 20px;
    font: 18px 'Graphik-Regular';
    color: #3d3c3c;
    text-align: center;
}

footer .logo-xpectare {
    width: 28px;
    height: 28px;
    background: url(../img/logo-xpectare.png) no-repeat 50%;
    float: right;
}

footer .logo-xpectare a { height: 100%; }

#loadingFormContacto {
    display: none;
    position: absolute;
    bottom: 20%;
    left: 50%;
    width: 24px;
    height: 24px;
    background: url(../img/loadingForm.gif) no-repeat;
    z-index: 2;
}

footer #mensaje-enviado {
    display: none;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff url(../img/gracias.jpg) no-repeat 50%;
    background-size: 100%;
    border-top: 5px solid #3d3b3c;
    z-index: 2;
}

.back-to-top {
    background: url(../img/flecha.png) no-repeat 50% 50%;
    background-size: 100%;
    width: 100px;
    height: 94px;
    position: fixed;
    right: 3%;
    bottom: 0;
    display: none;
    z-index: 102;
}

/* =========== INTERNAS =========== */ 
/* =========== 404 =========== */ 
#error {
    background-color: #646464;
}

#error h1 { 
    margin: 300px 0 50px;
    padding: 10px 0;
    font-size: 56px;
    text-align: center;
    background: #e30513;
    background: -moz-linear-gradient(left, #e30513 0%, #e30513 49%, #ffffff 49%, #ffffff 100%);
    background: -webkit-linear-gradient(left, #e30513 0%,#e30513 49%,#ffffff 49%,#ffffff 100%);
    background: linear-gradient(to right, #e30513 0%,#e30513 49%,#ffffff 49%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e30513', endColorstr='#ffffff',GradientType=1 );
}

#error h1,
#error a {
    font-family: 'Graphik-Light',arial,sans-serif;
    color: #fff;
}

#error span { color: #646464; }

#error a { 
    margin-bottom: 270px;
    padding: 11px 0;
    font-size: 32px;
    text-align: center;
    font-weight: 100;
    background-color: transparent;
    border: 1px solid #fff;
    -webkit-transition: all 180ms ease-out 180ms;
       -moz-transition: all 180ms ease-out 180ms;
         -o-transition: all 180ms ease-out 180ms;
            transition: all 180ms ease-out 180ms;   
}

#error a:hover {
    color: #646464;
    background-color: #fff;
}

/* ==========================================================================
   Jquery
   ========================================================================== */
@media (max-width: 1700px) { #servicios .fondo-rojo { width: 11%; } }

@media (max-width: 1500px) { #servicios .fondo-rojo { width: 1%; } }

@media (max-width: 1400px) { #slider .cuadros { display: none; } }

/* -- Desktop md --*/
@media (min-width: 992px)  and (max-width: 1199px){ 
    /* =========== Header =========== */ 
    header a#correo { background-position: 19% 50% }

    /* =========== Slider =========== */ 
    #slider .cont-slider { top: 10%; }

    #slider .cont-slider h2 { font-size: 32px; }
    
    /* =========== Servicios =========== */ 
    #servicios .fondo-rojo { display: none; }

    #servicios .cont-forma {
        margin-right: 5%;
        width: 16%;
    }
    
    /* =========== Descanso =========== */ 
    #descanso { height: 280px; }
    
    /* =========== Proyectos =========== */ 
    #proyectos .contorno {
        width: 100%;
        background-size: 110% 87%;
    }

    #proyectos .oculto { 
        width: 100%; 
        background-size: 100% 93%;
    }

    #proyectos .nom-p p { font-size: 16px; }
    
    /* =========== INTERNAS =========== */ 
    /* =========== 404 =========== */ 
    #error h1 { font-size: 52px; }

}

/* -- Ipad/Tablet --*/
@media (min-width: 768px)  and (max-width: 991px){
    /* =========== Header =========== */
    header a#correo { background-position: 24% 50% }

    header #linea-header {
        top: 48%;
        width: 9%;
    }

    header .logo { background-size: cover; } 

    header .menu-dsk ul li { 
        padding: 40px 0;
        width: 25%; 
    }

    /* =========== Slider =========== */
    #slider .cont-slider { top: 8%; }

    #slider .cont-slider .logo-gde { height: 82px; }

    #slider .cont-slider h2 {
        margin: 20px auto 20px;
        width: 100%;
        font-size: 24px;
    }

    #slider .bx-wrapper .bx-controls { bottom: 9%; }
    
    /* =========== Servicios =========== */
    #servicios .fondo-rojo { display: none; }

    #servicios .cont-forma { 
        margin-right: 6%;
        width: 15%; 
    }

    #servicios .borde { height: 100px; }

    #servicios .circulo p {
        padding: 14% 5px 0 8px;
        font-size: 9px;
    }
    
    /* =========== Proyectos =========== */
    #proyectos .cuadro-proy {
        width: 60px;
        height: 60px;
    }

    #proyectos .nom-p p { font-size: 14px; }

    #proyectos .contorno { display: none; }

    #proyectos .oculto { 
        bottom: 0; 
        width: 100%;
        background: rgba(224,27,16,0.8);
    }

    #proyectos .oculto p { 
        padding: 36% 15px 0;
        text-align: center;
        font-size: 12px;
    }

    #proyectos .ver { display: none; }
    
    /* =========== Clientes =========== */
    #clientes .bx-wrapper .bx-prev { left: 40%; }

    #clientes .bx-wrapper .bx-next { right: 43%; }
    
    /* =========== Footer =========== */
    footer .logo-footer { 
        margin: 0 0 30px; 
        background-size: contain;
        background-position: 50%;
    }

    footer .sub-dir { margin: 0 0 15px; }
    
    footer .txt-form,
    footer p { font-size: 12px; }

    /* =========== INTERNAS =========== */ 
    /* =========== 404 =========== */ 
    #error h1 { 
        margin: 150px 0 50px;
        font-size: 38px; 
    }

    #error a {  
        margin-bottom: 150px;
        font-size: 24px; 
    }
}

/* -- Mobile Landscape --*/
@media (min-width: 480px)  and (max-width: 767px){
    /* =========== Header =========== */ 
    header a#tel,
    header a#correo { background: none; } 
    
    header a#tel { padding: 10px 0; }

    header a { float: left; }

    header .logo {
        margin: 20px 0;
        height: 54px;
        background-position: 50%;
        background-size: contain;
    }

    header #linea-header { display: none; }
    
    header .navbar { margin-bottom: 0; }

    header .navbar-inverse .navbar-toggle,
    header .navbar-inverse .navbar-toggle:focus, 
    header .navbar-inverse .navbar-toggle:hover,
    header .navbar-inverse {
        background-color: #3b3b3b;
        border-color: transparent;
    }

    header .navbar-nav>li>a {
        width: 100%;
        font-size: 18px;
        color: #fff !important;
        text-align: center;
    }
    
    /* =========== Slider =========== */ 
    #slider .cont-slider { top: 5%; }

    #slider .cont-slider .logo-gde { 
        height: 45px;
        background-position: 50%;
        background-size: contain;
    }

    #slider .cont-slider h2 {
        margin: 10px auto 20px;
        padding: 1px 0 10px;
        width: 44%;
        font-size: 18px;
        line-height: 24px;
        background: #e30513;
        background: -webkit-linear-gradient(left, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        background: -o-linear-gradient(left, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        background: linear-gradient(to right, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e30513', endColorstr='#ffffff',GradientType=1 );
    }

    #slider .cont-slider span {
        float: left;
        width: 100%;
    }
    
    #slider .cont-slider p { font-size: 12px; }
    
    #slider .slider-bco { display: none; }

    #slider .bx-wrapper .bx-pager { display: none; }
    
    /* =========== Servicios =========== */ 
    #servicios { padding-bottom: 30px; }

    #servicios .fondo-rojo { display: none; }
    
    #servicios .cont-forma { 
        float: initial;
        margin: 15px auto;
        width: 160px;
    }
    
    #servicios .cont-forma:nth-child(5), 
    #servicios .cont-forma:nth-child(10) { margin-right: auto; }
    
    #servicios .borde { height: 156px; }

    #servicios .cont-forma:hover .borde { 
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
    
    #servicios .cont-forma:hover #c-1 { background-image: url(../img/serv-1.svg); }

    #servicios .cont-forma:hover #c-2 { background-image: url(../img/serv-2.svg); }

    #servicios .cont-forma:hover #c-3 { background-image: url(../img/serv-3.svg); }

    #servicios .cont-forma:hover #c-4 { background-image: url(../img/serv-4.svg); }

    #servicios .cont-forma:hover #c-5 { background-image: url(../img/serv-5.svg); }

    #servicios .cont-forma:hover #c-6 { background-image: url(../img/serv-6.svg); }

    #servicios .cont-forma:hover #c-7 { background-image: url(../img/serv-7.svg); }

    #servicios .cont-forma:hover #c-8 { background-image: url(../img/serv-8.svg); }

    #servicios .cont-forma:hover #c-9 { background-image: url(../img/serv-9.svg); }

    #servicios .cont-forma:hover #c-10 { background-image: url(../img/serv-10.svg); }
    
    #servicios .cont-forma:hover .circulo { background-color: #3d3c3c; }
    
    #servicios .cont-forma:hover .nom { color: inherit; }

    #servicios .cont-forma:hover .circulo p { display: none; } 
    
    /* =========== Descanso =========== */ 
    #descanso { height: 250px; }

    /* =========== Proyectos =========== */ 
    #proyectos .proy { margin-top: 20px; }

    #proyectos .proy img { width: 100%; }
    
    #proyectos .ver,
    #proyectos .contorno { display: none; }
    
    #proyectos .oculto { 
        bottom: 0;
        width: 100%;
        background: rgba(227,5,19,0.8); 
    }

    #proyectos .oculto p { padding: 15% 26px 0; }
    
    /* =========== Clientes =========== */ 
    #clientes .bx-wrapper { margin: 0 auto 30px; }

    #clientes .bx-controls-direction { display: none; }
    
    /* =========== Footer =========== */ 
    footer .logo-footer { 
        margin: 0px 0 30px; 
        background-position: 50%;
    }

    footer .mg-bottom30 { margin-bottom: 10px; }

    footer p,
    footer a { 
        float: left;
        width: 100%;
        text-align: center; 
    }

    footer .sub-dir,
    footer .sub-tel { margin: 30px 0 15px; } 

    footer .btn-group .btn { width: 100%; }
    
    .back-to-top { display: none !important; }

    /* =========== INTERNAS =========== */ 
    /* =========== 404 =========== */ 
    #error h1 { 
        margin: 150px 0 50px;
        font-size: 30px; 
    }

    #error a {  
        margin-bottom: 150px;
        font-size: 20px; 
    }
}   

/* -- Mobile Portrait --*/
@media (min-width: 319px)  and (max-width: 479px){ 
    /* =========== Header =========== */ 
    header a { 
        float: left; 
        font-size: 12px;
    }
    
    header a#tel,
    header a#correo { background: none; }
    
    header a#tel { padding: 10px 0; }

    header .logo {
        margin: 20px 0;
        height: 54px;
        background-position: 50%;
        background-size: contain;
    }

    header #linea-header { display: none; }
    
    header .navbar { margin-bottom: 0; }

    header .navbar-inverse .navbar-toggle,
    header .navbar-inverse .navbar-toggle:focus, 
    header .navbar-inverse .navbar-toggle:hover,
    header .navbar-inverse {
        background-color: #3b3b3b;
        border-color: transparent;
    }

    header .navbar-nav>li>a {
        width: 100%;
        font-size: 18px;
        color: #fff !important;
        text-align: center;
    }
    
    /* =========== Slider =========== */ 
    #slider .cont-slider { top: 21%; }

    #slider .cont-slider .logo-gde { 
        display: none;
    }

    #slider .cont-slider h2 {
        margin: 10px auto 20px;
        padding: 1px 0 10px;
        width: 100%;
        font-size: 20px;
        line-height: 24px;
        background: #e30513;
        background: -webkit-linear-gradient(left, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        background: -o-linear-gradient(left, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        background: linear-gradient(to right, #e30513 0%, #e30513 48.5, #ffffff 48.5, #ffffff 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e30513', endColorstr='#ffffff',GradientType=1 );
    }

    #slider .cont-slider span {
        float: left;
        width: 100%;
    }
    
    #slider .cont-slider p { 
        display: none;
    }
    
    #slider .slider-bco { display: none; }

    #slider .bx-wrapper .bx-pager { display: none; }

    /* =========== Quienes =========== */ 
    #quienes h1 { margin-top: 30px; }
    
    /* =========== Servicios =========== */ 
    #servicios { padding-bottom: 30px; }

    #servicios .fondo-rojo { display: none; }
    
    #servicios .cont-forma { 
        float: initial;
        margin: 15px auto;
    }

    #servicios .cont-forma { width: 125px; }
    
    #servicios .cont-forma:nth-child(5), 
    #servicios .cont-forma:nth-child(10) { margin-right: auto; }
    
    #servicios .borde { height: 125px; }

    #servicios .cont-forma:hover .borde { 
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
    
    #servicios .cont-forma:hover #c-1 { background-image: url(../img/serv-1.svg); }

    #servicios .cont-forma:hover #c-2 { background-image: url(../img/serv-2.svg); }

    #servicios .cont-forma:hover #c-3 { background-image: url(../img/serv-3.svg); }

    #servicios .cont-forma:hover #c-4 { background-image: url(../img/serv-4.svg); }

    #servicios .cont-forma:hover #c-5 { background-image: url(../img/serv-5.svg); }

    #servicios .cont-forma:hover #c-6 { background-image: url(../img/serv-6.svg); }

    #servicios .cont-forma:hover #c-7 { background-image: url(../img/serv-7.svg); }

    #servicios .cont-forma:hover #c-8 { background-image: url(../img/serv-8.svg); }

    #servicios .cont-forma:hover #c-9 { background-image: url(../img/serv-9.svg); }

    #servicios .cont-forma:hover #c-10 { background-image: url(../img/serv-10.svg); }
    
    #servicios .cont-forma:hover .circulo { background-color: #3d3c3c; }
    
    #servicios .cont-forma:hover .nom { color: inherit; }

    #servicios .cont-forma:hover .circulo p { display: none; }
    
    /* =========== Descanso =========== */ 
    #descanso { height: 250px; }

    /* =========== Proyectos =========== */ 
    #proyectos .proy { margin-top: 20px; }

    #proyectos .proy img { width: 100%; }
    
    #proyectos .ver,
    #proyectos .contorno { display: none; }
    
    #proyectos .oculto { 
        bottom: 0;
        width: 100%;
        background: rgba(227,5,19,0.8); 
    }

    #proyectos .oculto p { 
        padding: 8% 26px 0; 
        font-size: 12px;
    }
    
    /* =========== Clientes =========== */ 
    #clientes .bx-wrapper { margin: 0 auto 30px; }

    #clientes .bx-controls-direction { display: none; }
    
    /* =========== Footer =========== */ 
    footer .logo-footer { 
        margin: 0px 0 30px; 
        background-position: 50%;
    }

    footer .mg-bottom30 { margin-bottom: 10px; }

    footer p,
    footer a { 
        float: left;
        width: 100%;
        text-align: center; 
    }

    footer .sub-dir,
    footer .sub-tel { margin: 30px 0 15px; } 
    
    footer .btn-group .btn { width: 100%; }

    footer .txt-derechos { 
        margin: 17px 0 13px;
        font-size: 10px; 
    }

    footer .logo-xpectare {
        width: 20px;
        height: 20px;
        background-size: 100%;
    }
    
    .back-to-top { display: none !important; }

    /* =========== INTERNAS =========== */ 
    /* =========== 404 =========== */ 
    #error h1 { 
        margin: 150px 0 50px;
        font-size: 18px; 
    }

    #error a {  
        margin-bottom: 150px;
        font-size: 14px; 
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
