:root {
  --primario: #1b97eb; /* #147cc1; */
  --secundario: #020202; /* #681c7b;  */ 
  --terciario: #0d7736; /* #ff867c; */
  --cuaternario: #1606ad; /* #ff5500; */
  --quinario: #8b82dd; /* #2fb5d2; */

  --primario-dark: #284985;
}

/*----------------------------------------
SOBREESCRIBIENDO LOS ESTILOS DE BOOTSTRAP
-----------------------------------------*/
.text-primary{
	/*color: var(--primario)!important;*/
}
.bg-primary {
    /*background-color: var(--primario)!important;*/
}
.btn-primary {
    /*background-color: var(--primario)!important;*/
    /*border-color: darken(var(--primario),20%)!important;*/
}
.btn-primary:hover,
.btn-primary:focus {
    /*background-color: darken(var(--primario),10%)!important;*/
}
.btn-primary:active {
    /*background-color: darken(var(--primario),20%)!important;*/
}
.btn-primary:focus {
    /*box-shadow: 0 0 0 0.2rem rgba(var(--primario),.5)!important;*/
}
a.bg-primary:focus, 
a.bg-primary:hover, 
button.bg-primary:focus, 
button.bg-primary:hover {
    /*background-color: var(--primario)!important;*/
}
.bg-light {
    /*background-color: #f8f9fa!important;*/
}



/*-------------------------------
  ESTILO DEL DISEÑO
-------------------------------*/

html{
   box-sizing: border-box; 
}

body {
    background-color: rgb(255, 255, 255);
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 100;
    font-size: 16px;
    color: #202020;
    padding: 0;
    margin: 0;
}

*, *:before, *:after {
   box-sizing: inherit;
}


/******************************************
 PRELOADER                                    
******************************************/

.preloader {
    background-color: white;
    opacity: 95%;
    /*text-align: center;*/
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 10000;
}
.preloader .pl-container {
    display: inline;
    position: absolute;
    z-index: 10001;
}
.preloader .pl-container img {
    width: 64px;
    height: 64px;
}

/* Small devices */
@media (min-width: 0px) and (max-width: 767.98px) {
    .preloader .pl-container {
        top: 45%;
        left: 44%;
    }
}
/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 88000px) {
    .preloader .pl-container {
        top: 45%;
        left: 48%;
    }
}


/******************************************
NAVEGACION                                    
******************************************/
 
.navegacion.navbar {
    background-image: url(../images/disenio/fondo/fondo-cuadrado-azul-32.png);
}

.navegacion .menu-item a {
    font-weight: bold;
    text-transform: uppercase;
    color: rgb(211, 240, 255) !important;
}

@media (min-width: 768px) { /* PC */

    /* Logo */
    .navbar-brand {
        padding-top: 0rem;
        padding-bottom: 0rem;
        margin-right: 0rem;
        font-size: 1rem;
    }

    /* a link */
    .navegacion .menu-item a {
        padding-right: 8px;
        padding-left: 8px;
        margin-left: 1px;
        margin-right: 1px;
        font-size: .9rem;
        border: 1px solid;
        border-color: transparent;
    }
    .navegacion .menu-item a:hover {
        border-color: rgba(211, 240, 255, 0.5);
    }
}

@media (max-width: 768px) { /* MOBIL */

     /* Logo */
    .navbar-brand {
        padding-top: 0rem;
        padding-bottom: 0rem;
        margin-right: 0rem;
        font-size: 1rem;
    }

    /* a link */
    .navegacion .menu-item a {
        padding-right: 0px;
        padding-left: 0px;
        font-size: .9rem;
    }

    /* ul */
    .navbar-expand-md .navbar-nav {
        margin-top: 16px;
        margin-bottom: 8px;
        padding-top: 4px;
        padding-bottom: 4px;
        padding-right: 4px;
        padding-left: 16px;
        background-color:rgba(0, 87, 147, 0.5);
        border-radius: 4px;
    }
    
}

/* boton menu mobil */
.navbar-dark .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.3);
    opacity: 100%;
}


/******************************************
entradainfo                                    
******************************************/

.entradainfo-imagen{
	background-image: linear-gradient(
      rgba(0, 0, 0, 0.4),
      rgba(0, 0, 0, 0.4)
    ), url(../images/banner/header-banner-free-keyboard.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.entradainfo .titulo1 {
    color: rgb(255, 255, 255);
    text-shadow: 0px 0px 10px #000000;
    font-weight: 900;
    font-size: 2.2rem;
}

.entradainfo .titulo2 {
    color: #41b3ff;
    text-shadow: 0px 0px 10px #000000;
    font-weight: 900;
    font-size: 1.4rem;
    font-style: italic;
}

.imgtranslucido{
    opacity: 0.0;
}

/******************************************
Productos                                    
******************************************/

section#productos {
    /* background: #f5f5f5 !important; */
    background-image: url(../images/disenio/fondo/fondo-cuadrado-gris-32dark.png);
}

.jj-card {
    border: none;
    margin-top: 15px;
    margin-bottom: 15px; 
    background-color: transparent;
}

/* Efecto Hover: hvr-grow */
.jj-card .hvr-grow {
    background-color: #fefefe;
    padding: 1rem;
    border: 2px solid #fefefe;
    border-radius: 10px;
    height: 100%;
-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
   -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
        box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);

    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
}
.jj-card .hvr-grow:hover {
    background-color: #fefefe;
    padding: 1rem;
    border: 2px solid var(--primario);
    border-radius: 10px;
    height: 100%;
-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
   -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
        box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);

    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.jj-card-name {
    padding-top: 16px;
    font-weight:bold;
    font-size: 1.1rem;
    color: #222;
    text-align: center;
}
.jj-card-type {
    font-weight:500;
    font-size: 1rem;
    color: #646464;
    text-align: center;
}
.jj-card-price {
    padding-top: 16px;
    padding-bottom: 16px;
    font-weight:700;
    font-size: 1.4rem;
    color: var(--primario);
    text-align: center;
}
.jj-card-btn {
    border-color: var(--primario);
    color: #222 !important;
}
.jj-card-btn:hover {
    border-color: var(--primario);
    color: #fff !important;
}



/******************************************
Cursos : flipper: Cards reversibles                                   
******************************************/

section#cursos {
    background: #ffffff !important;
    /* background-image: url(../images/disenio/fondo/fondo-cuadrado-gris-32.png); */
}

section#cursos .card {
    border: 1px !important;
    background: #f5f5f5 !important;    
}

.image-flip:hover .backside,
.image-flip.hover .backside {
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    transform: rotateY(0deg);
    border-radius: .25rem;
}

.image-flip:hover .frontside,
.image-flip.hover .frontside {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.mainflip {
    -webkit-transition: 1s;
    -webkit-transform-style: preserve-3d;
    -ms-transition: 1s;
    -moz-transition: 1s;
    -moz-transform: perspective(1000px);
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transition: 1s;
    transform-style: preserve-3d;
    position: relative;
}

.frontside {
    position: relative;
    -webkit-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    z-index: 2;
    margin-bottom: 30px;
}

.backside {
    position: absolute;
    top: 0;
    left: 0;
    background: white;
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    -webkit-box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
    -moz-box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
    box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
}

.frontside,
.backside {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: 1s;
    -webkit-transform-style: preserve-3d;
    -moz-transition: 1s;
    -moz-transform-style: preserve-3d;
    -o-transition: 1s;
    -o-transform-style: preserve-3d;
    -ms-transition: 1s;
    -ms-transform-style: preserve-3d;
    transition: 1s;
    transform-style: preserve-3d;
}

.frontside .card,
.backside .card {
    min-height: 312px;
}

.backside .card a {
    font-size: 18px;
    color: #ff867c !important;
}
.backside .card a:hover {
    text-decoration: none;
    color: #ff5500 !important;
}

.frontside .card .card-title,
.backside .card .card-title {
    color: #681c7b !important; /* #007b5e */
}

.frontside .card .card-body img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
}



/******************************************
servicios                                    
******************************************/

section#servicios {
    /* background: #f5f5f5 !important; */
    background-image: url(../images/disenio/fondo/fondo-cuadrado-gris-32.png);
}

.servicios article {
    border: none;
    margin-top: 15px;
    margin-bottom: 15px; 
}

.servicios article.servicio.card {
    background-color: transparent;
}

.servicios .servicio .marco {
    background-color: #fcfcfc;
    padding: 1rem;
    border: 1px solid #ccc;
    border-radius: 10px;
    height: 100%;
-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
   -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
        box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
}
.servicios .servicio .marco:hover {
    background-color: #fcfcfc;
    padding: 1rem;
    border: 1px solid #007bff;
    border-radius: 10px;
    height: 100%;
-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
   -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
        box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
}

/* Efecto Hover: hvr-grow */
.servicios .hvr-grow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
}
.servicios .hvr-grow:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.servicios .servicio .titulo {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.servicios article .subtitulo {
    color: #000;
    font-weight: bold;
}

.servicios article .parrafo {
    color: #000;
}




/******************************************
Blog : flipper: Cards reversibles                                   
******************************************/

section#blog {
    background: #ffffff !important;
    /* background-image: url(../images/disenio/fondo/fondo-cuadrado-gris-32.png); */
}

section#blog .card {
    border: 1px !important;
    background: #f5f5f5 !important;    
}

.image-flip:hover .backside,
.image-flip.hover .backside {
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    transform: rotateY(0deg);
    border-radius: .25rem;
}

.image-flip:hover .frontside,
.image-flip.hover .frontside {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.mainflip {
    -webkit-transition: 1s;
    -webkit-transform-style: preserve-3d;
    -ms-transition: 1s;
    -moz-transition: 1s;
    -moz-transform: perspective(1000px);
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transition: 1s;
    transform-style: preserve-3d;
    position: relative;
}

.frontside {
    position: relative;
    -webkit-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    z-index: 2;
    margin-bottom: 30px;
}

.backside {
    position: absolute;
    top: 0;
    left: 0;
    background: white;
    -webkit-transform: rotateY(-180deg);
    -moz-transform: rotateY(-180deg);
    -o-transform: rotateY(-180deg);
    -ms-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    -webkit-box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
    -moz-box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
    box-shadow: 5px 7px 9px -4px rgb(158, 158, 158);
}

.frontside,
.backside {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: 1s;
    -webkit-transform-style: preserve-3d;
    -moz-transition: 1s;
    -moz-transform-style: preserve-3d;
    -o-transition: 1s;
    -o-transform-style: preserve-3d;
    -ms-transition: 1s;
    -ms-transform-style: preserve-3d;
    transition: 1s;
    transform-style: preserve-3d;
}

.frontside .card,
.backside .card {
    min-height: 312px;
}

.backside .card a {
    font-size: 18px;
    color: #ff867c !important;
}
.backside .card a:hover {
    text-decoration: none;
    color: #ff5500 !important;
}

.frontside .card .card-title,
.backside .card .card-title {
    color: #681c7b !important; /* #007b5e */
}

.frontside .card .card-body img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
}



/******************************************
Acerca de                                   
******************************************/

/* Efecto Hover: Image Effect Style : Demo - 14 */
.box14Efecto{position:relative}
.box14Efecto:before{content:"";width:100%;height:100%;background:rgba(0,0,0,.5);position:absolute;top:0;left:0;opacity:0;transition:all .35s ease 0s}
.box14Efecto:hover:before{opacity:1}
.box14Efecto img{width:100%;height:auto}
.box14Efecto .box-content{width:90%;height:90%;position:absolute;top:5%;left:5%}
.box14Efecto .box-content:after,.box14Efecto .box-content:before{content:"";position:absolute;top:0;left:0;bottom:0;right:0;opacity:0;transition:all .7s ease 0s}
.box14Efecto .box-content:before{border-bottom:1px solid rgba(255,255,255,.5);border-top:1px solid rgba(255,255,255,.5);transform:scale(0,1);transform-origin:0 0 0}
.box14Efecto .box-content:after{border-left:1px solid rgba(255,255,255,.5);border-right:1px solid rgba(255,255,255,.5);transform:scale(1,0);transform-origin:100% 0 0}
.box14Efecto:hover .box-content:after,.box14Efecto:hover .box-content:before{opacity:1;transform:scale(1);transition-delay:.15s}
.box14Efecto .title{font-size:21px;font-weight:700;color:#fff;margin:15px 0;opacity:0;transform:translate3d(0,-50px,0);transition:transform .5s ease 0s}
.box14Efecto:hover .title{opacity:1;transform:translate3d(0,0,0)}
.box14Efecto .post{font-size:14px;color:#fff;padding:10px;background:var(--primario);opacity:0;border-radius:8px 8px;transform:translate3d(0,-50px,0);transition:all .7s ease 0s}
.box14Efecto:hover .post{opacity:1;transform:translate3d(0,0,0);transition-delay:.15s}
.box14Efecto .descripcion {padding: 10px; width:100%;position:absolute;bottom:-10px;left:0;opacity:0;z-index:1;height:auto;line-height:25px;border:none;transition:all .4s ease 0s}
.box14Efecto:hover .descripcion{bottom:20px;opacity:1;transition-delay:.15s; }
.box14Efecto .descripcion .desc-texto {border:1px solid #aaa;border-radius:8px 8px;font-size:14px;color:#fff;}

/* Marco */
.acercade .marco {
    padding: 1rem;
    border: 1px solid #ccc;
    border-radius: 10px;
    height: 100%;
-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
   -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
        box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
}

/* Efecto Hover: hvr-shutter-in-horizontal */
.acercade .hvr-shutter-in-horizontal:hover:before, 
.acercade .hvr-shutter-in-horizontal:focus:before, 
.acercade .hvr-shutter-in-horizontal:active:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}
.acercade .hvr-shutter-in-horizontal:before {
    border-radius: 8px;
    width: 100%;
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;/*Color inicial*/
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.acercade .hvr-shutter-in-horizontal:hover, 
.acercade .hvr-shutter-in-horizontal:focus, 
.acercade .hvr-shutter-in-horizontal:active {
    color: #ccc;
}
.acercade .hvr-shutter-in-horizontal {
    width: 100%;
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
    background: #272727; /*#3f5165;Color que recubrirá*/
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

.acercade .subtitulo {
    font-weight: bold;
}


/******************************************
CONTACTO                                   
******************************************/

section.contacto {
    background-color: #eee;
}

section.contacto .derecha {
    background-color: #fff;
    padding: 1rem;
    border: 1px solid var(--primario);
}

section.contacto .izquierda {
    background-color: var(--primario);
    padding: 1rem;
    border: 1px solid var(--primario);
}

section.contacto .verificacion {
    /*background-color: var(--primario);*/
    padding-bottom: 1rem;
    border: 1px solid #ccc;
}

/* Media queries: Responsive breakpoints

 // Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) and (max-width: 767.98px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) and (max-width: 991.98px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) and (max-width: 1199.98px) { ... }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }
*/

@media (min-width: 0px) and (max-width: 767.98px) { 
    section.contacto .row {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    section.contacto .izquierda {
        border-radius: 20px 20px 0px 0px;
    }
    section.contacto .derecha {
        border-radius: 0px 0px 20px 20px;
    }
    section.contacto .codigo-img {
        display: block;
        margin: auto;
        width: 100%;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 88000px) { 
    section.contacto .izquierda {
        border-radius: 20px 0px 0px 20px;
    }
    section.contacto .derecha {
        border-radius: 0px 20px 20px 0px;
    }
}


/******************************************
PIE DE PAGINA                                   
******************************************/

footer.piedepagina {
    background-color: #000 !important;
    color: #ccc !important;
    font-size: .9rem;
}








/******************************************
CARRUSEL                                  
******************************************/

section.producto-detalle {
    /* background: #f5f5f5 !important; */
    background-image: url(../images/disenio/fondo/fondo-cuadrado-gris-32.png);
}

.carousel-indicators li {
    width: 20px;
    height: 8px;
    margin-right: 2px;
    margin-left: 2px;
    background-color: var(--primario);
    border: 1px solid;
    border-color: var(--primario);
    opacity: .3;
}

.carousel-control-next-icon, 
.carousel-control-prev-icon {
    display: inline-block;
    width: 50px;
    height: 50px;
    background: transparent no-repeat center center;
    background-size: 100% 100%;
    color: var(--primario);
    font-size: 2rem;
    font-weight: 900;
}

.jj-carrusel,
.jj-prodfull-descripcion,
.jj-prodfull-terminosycondiciones,
.jj-prodfull-descarga,
.jj-prodfull-tutorial,
.jj-prodfull-metododepago,
.jj-prodfull-contacto {
    border: 1px solid;
    border-color: var(--primario);
    margin-top: 10px;
    margin-bottom: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.6);
}
.jj-carrusel {
    padding-left: 10px;
    padding-right: 10px;
}

/******************************************
PRODUCTO-DETALLE                                  
******************************************/

section.producto-detalle .cuadro {
    border-bottom: 1px solid #999;
    width: 100%;
    padding: 10px 0;
    margin-bottom: 10px;
}

section.producto-detalle .titulo {
    font-weight: bold;
    font-size: 1.6rem;
    color: var(--primario);
}

section.producto-detalle .subtitulo {
    font-weight: bold;
    font-size: 1.2rem;
    color: #555;
    margin-top: 1.5rem !important;
    margin-bottom: .5rem !important;

}

section.producto-detalle .negrita {
    font-weight: bold;
}

section.producto-detalle p {
    font-size: 1rem;
    color: #444;
    margin-top: .2rem;
    margin-bottom: .2rem;
}

section.producto-detalle ul {
    font-size: 1rem;
    color: #444;
    padding-left: 16px;
}


