/*
|==========================================================================
| Geeklopers - Document CSS
|==========================================================================
|
| Sergio Carreon
| - Estilos para el Sitio Web
|
| Morado: #7F446F;
|
*/

h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 800; }
h1 { font-size: 30px; }
h3 { font-size: 24px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }
a { cursor: pointer !important; color: #202020; }
a:hover { color: #202020; }
p { margin: 0; }

body { font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; color: #202020; }
body img { max-width: 100%; }

:focus-visible { outline: none !important; }

.animate { -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; }
.hidden { display: none !important; }
.visible-mobile { display: none; }
.visible-desktop { display: block; }
.visible-desktop-menu { display: block; }
.visible-mobile-libros { display: none; }
.visible-mobile-producto { display: none; }
.w-md-100 { width: 100%; }

.m-zero { margin: 0px; }
.mt-15 { margin-top: 15px; }
.ml-15 { margin-left: 15px; }
.mr-15 { margin-right: 15px; }
.mb-15 { margin-bottom: 15px; }
.mb-30 { margin-bottom: 30px; }

.txt-vertical { vertical-align: middle !important; }

.alert { border-radius: 10px; }

.owl-theme .owl-dots .owl-dot { outline: none; }
.owl-theme .owl-dots .owl-dot.active span { background: #7F446F; }

.btn { height: 57px; border-radius: 10px; padding: 18px 24px; font-size: 14px; }
.btn:focus { outline: none; }
.btn.btn-primary { background-color: #7F446F; border-color: #7F446F; color: white; }
.btn.btn-primary:active { background-color: #7F446F !important; border-color: #7F446F !important; color: white !important; }
.btn.btn-primary:focus { box-shadow: 0 0 0 0.2rem rgb(127 68 111 / 50%) !important; }

.btn.btn-secondary { background-color: #053039; border-color: #053039; color: white; }
.btn.btn-secondary:active { background-color: #053039 !important; border-color: #053039 !important; color: white !important; }
.btn.btn-secondary:focus { box-shadow: 0 0 0 0.2rem rgb(5 48 57 / 50%) !important; }

.btn.btn-clean { background-color: transparent; border: 1px solid black; }

header { background-color: white; padding: 42px 0; overflow: hidden; }
header .logo { float: left; }
header .logo img { padding-top: 7px; }
header .buscar { float: left; position: relative; }
header .buscar input { background-color: #F3F3F3; border: 0; padding: 18px 32px; border-radius: 10px; width: 100%; margin-left: 30px; }
header .buscar button { position: absolute; top: 0; right: -30px; padding: 18px; border-radius: 10px; border: 0; background-color: transparent; cursor: pointer; }
header .buscar button:focus { outline: none; }
header nav { float: right; }
header nav ul { margin: 0; padding: 0; }
header nav ul li { display: inline-block; margin-right: 20px; }
header nav ul li:last-child { margin-right: 0; }
header nav ul li a { display: block; padding: 18px; color: #202020; position: relative; }
header nav ul li a .circle { width: 8px; height: 8px; position: absolute; left: 3px; top: 22.5px; border-radius: 4px; background-color: #7F446F; }
header nav ul li a:hover { color: #202020; text-decoration: none; }
header nav ul li a.active { font-weight: bold; color: #7F446F; }
header .btn-cerrar-sesion { float: right; margin-left: 15px; }

footer { background-color: #7F446F; color: white; padding: 42px 0; }
footer .logo { float: left; }
footer .menu { float: right; display: flex; }
footer .columna { text-align: left; }
footer .columna:last-child { margin-right: 0; }
footer .columna h6 { margin-bottom:  8px; }
footer .columna ul { margin-bottom:  0; padding: 0; }
footer .columna ul li { list-style: none; margin-bottom: 8px; }
footer .columna ul li a { color: white; }

section  { padding: 0 0 42px 0;  min-height: calc(100vh - 366px); }

/* section .libros { width: 100%; } */
section .libros .libro { margin-bottom: 30px; }
section .libros .libro a:hover { text-decoration: none; }
section .libros .libro img { margin-bottom: 8px; border-radius: 10px; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
section .libros .libro h6 { overflow: hidden; text-overflow: ellipsis; }
section .libros .libro .subtitulo { color: #A2A2A2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

section .direcciones .direccion { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 30px; margin-bottom: 15px; }
section .direcciones .direccion .informacion { width: 100%; }
section .direcciones .direccion .acciones { text-align: right; width: 100%; }

section .formulario { max-width: 500px; }
section .formulario form .campo { margin-bottom: 15px; }
section .formulario form .campo input { background-color: white; border-radius: 10px; border: 0; padding: 18px 32px; width: 100%; border: 1px solid rgba(0,0,0,.1) }
section .formulario form .campo textarea { background-color: white; border-radius: 10px; border: 0; padding: 18px 32px; width: 100%; min-height: 200px; border: 1px solid rgba(0,0,0,.1) }
section .formulario form .campo select { background-color: white; border-radius: 10px; border: 0; padding: 18px 32px; width: 100%; border: 1px solid rgba(0,0,0,.1) }

section .inicio .slider { margin-bottom: 30px; }
section .inicio .slider .owl-stage-outer { background-color: #E4F6F5; border-radius: 10px; padding: 32px 64px; min-height: 247px; background-image: url('../images/slider-background.png'); background-position: right bottom; background-repeat: no-repeat; }
section .inicio .slider .owl-stage-outer .ilustracion { float: left; margin-right: 32px; }
section .inicio .slider .owl-stage-outer .ilustracion img { width: auto; border-radius: 10px; }
section .inicio .slider .owl-stage-outer .descripcion { float: left; }
section .inicio .slider .owl-stage-outer .descripcion .badge { min-height: 60px; }
section .inicio .slider .owl-stage-outer .descripcion .nuevo { background-color: #E75141; color: white; padding: 9px 24px; width: 95px; display: block; }
section .inicio .slider .owl-stage-outer .descripcion .subtitulo { font-weight: 400; margin-top: 5px; }
section .inicio .recientes h5 { margin-bottom: 15px; }


section .categorias { margin-bottom: -42px; }
section .categorias .categoria { text-align: center; margin-bottom: 42px; }
section .categorias .categoria a:hover { text-decoration: none; }
section .categorias .categoria img { max-width: 100%; margin-bottom: 8px; }
section .categorias .categoria h6 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

section .productos aside { background-color: #F3F3F3; margin-right: 30px; padding: 30px; border-radius: 10px;}
section .productos aside ul { margin: 0; padding: 0; }
section .productos aside ul li { list-style: none; margin-bottom: 15px; }
section .productos aside ul li:last-child { margin-bottom: 0; }
section .productos aside ul li a { color: #8E8E8E; }
section .productos aside ul li a.active { color: #3B3B3B; font-weight: 700; }
section .productos .buscar { margin-bottom: 15px; }

section .producto .detalle { margin-bottom: 30px; }
section .producto .detalle a { text-decoration: none; }
section .producto .detalle h5 { margin-bottom: 15px; }
section .producto .ilustracion img { width: 100%; }
section .producto .descripcion { width: 400px; padding-top: 30px; }
section .producto .relacionados h5 { margin-bottom: 15px; }

section .contacto h3 { margin-bottom: 15px; }
section .contacto .background { min-height: 660px; background-image: url('../images/background-contacto.png'); background-position: right top; background-repeat: no-repeat; }

section .iniciar { min-height: 100vh; }
section .iniciar a.a-login { color: #7F446F; }
section .iniciar .logo { margin-bottom: 30px; }
section .iniciar .columna { width: 50%; min-height: 100vh; }
section .iniciar .columna.ilustracion { background-image: url('../images/background-iniciar.png'); background-position: center; background-repeat: no-repeat; background-size: cover; }
section .iniciar .columna .formulario { width: 400px; margin: auto; margin-top: calc(50vh - 280px); }
section .iniciar .columna .formulario button { width: 100%; }

section .iniciar.registro .columna .formulario { margin-top: calc(50vh - 375px); }

section .cuenta aside { width: 250px; margin-right: 30px; padding: 30px; border-right: 1px solid rgba(0,0,0,.1); }
section .cuenta aside ul { margin: 0; padding: 0; }
section .cuenta aside ul li { list-style: none; margin-bottom: 15px; }
section .cuenta aside ul li:last-child { margin-bottom: 0; }
section .cuenta aside ul li a { color: #8E8E8E; }
section .cuenta aside ul li a.active { color: #3B3B3B; font-weight: 700; }
section .cuenta .contenido { width: 100%; }
section .cuenta .contenido h5 { margin-bottom: 15px; }

section .cuenta.cuenta-pedidos .pedidos .pedido { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 30px; margin-bottom: 15px; }
section .cuenta.cuenta-pedidos .pedidos .pedido .informacion { width: 100%; }
section .cuenta.cuenta-pedidos .pedidos .pedido .acciones { text-align: right; width: 125px; margin-left: 30px; }

section .cuenta.cuenta-direcciones .direcciones .direccion { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 30px; margin-bottom: 15px; }
section .cuenta.cuenta-direcciones .direcciones .direccion .informacion { width: 100%; }
section .cuenta.cuenta-direcciones .direcciones .direccion .acciones { width: 100%; }

section .cuenta.cuenta-pedidos-detalle .detalle { max-width: 300px; margin-left: 30px; }

section .carrito h3 { margin-bottom: 15px; }
section .carrito a { text-decoration: none; }
section .carrito h5 { margin-bottom: 15px; }
section .carrito .steps { background-color: #F3F3F3; margin-bottom: 1rem; border-radius: 10px; }
section .carrito .steps .step { padding: 21px; }
section .carrito .steps .step .circulo { margin-right: 10px; position: relative; border: 2px solid #7F446F; width: 20px; height: 20px; border-radius: 10px; text-align: center; }
section .carrito .steps .step .circulo span { position: absolute; top: -2px; left: 4px; }
section .carrito .steps .step.step-1 .circulo span { left: 6px; }
section .carrito .steps .step.active .circulo { background-color: #7F446F; }
section .carrito .steps .step.active .circulo span { color: white; }
section .carrito .libros { margin-bottom: 0; }
section .carrito .libros .libro { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 30px; margin-bottom: 1rem; }
section .carrito .libros .libro .ilustracion { max-width: 90px; }
section .carrito .libros .libro .ilustracion img { max-height: 100%; margin-bottom: 0; }
section .carrito .libros .libro .atributo .titulo { margin-bottom: 30px; }
section .carrito .libros .libro .atributo.atributo-nombre { width: 100%; max-width: 300px; }
section .carrito .libros .libro .atributo.atributo-cantidad { text-align: center; }
section .carrito .libros .libro .acciones { text-align: right; margin-left: auto; margin-top: 41px; }

section .carrito.carrito-confirmacion .detalle { max-width: 300px; margin-left: 1rem; }
section .carrito.carrito-confirmacion .detalle .d-flex { display: block !important; }
section .carrito.carrito-confirmacion .detalle .informacion { width: 238px; }
section .carrito.carrito-confirmacion .detalle .acciones { width: 100%; margin-left: 0; margin-top: 15px; }

/*
| =================
| Loading
| =================
*/

.lock { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 100000; background-color: rgba( 255,255,255, 0.8 ); }

.sk-spinner-wave.sk-spinner {
  margin: 0 auto;
  height: 30px;
  top: 40%;
  position: relative;
  text-align: center;
  color: #303030;
}
.sk-spinner-wave div {
  background-color: #7F446F;
  height: 100%;
  width: 6px;
  display: inline-block;
  -webkit-animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
  animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
}
.sk-spinner-wave p {
  font-weight: bold;
}
.sk-spinner-wave .sk-rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}
.sk-spinner-wave .sk-rect3 {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
.sk-spinner-wave .sk-rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
.sk-spinner-wave .sk-rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}
@-webkit-keyframes sk-waveStretchDelay {
  0%,
  40%,
  100% {
    -webkit-transform: scaleY(0.4);
    transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@keyframes sk-waveStretchDelay {
  0%,
  40%,
  100% {
    -webkit-transform: scaleY(0.4);
    transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}

/* Responsive */

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (max-width: 1200px) {
  .visible-mobile{ display: block; }
  .visible-desktop{ display: none; }
  header .buscar { float: none; position: relative; }
  header .buscar-desktop { float: left; position: relative; margin-left: 30px; }
  header .buscar-mobile { display: none; }
  header .buscar input { background-color: #F3F3F3; border: 0; padding: 18px 32px; border-radius: 10px; width: 100%; margin: 0; }
  header .buscar button { position: absolute; right: 0; padding: 18px; border-radius: 10px; border: 0; background-color: transparent; cursor: pointer; }
} 

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (max-width: 992px) {
 .iniciar .ilustracion { display: none; }
 section .iniciar .columna { width: 100%; min-height: 100vh; }
 section .iniciar .columna .formulario { max-width: 400px; width: 100%; margin: auto; margin-top: calc(50vh - 280px); padding-right: 1rem; padding-left: 1rem;}
 section .carrito.carrito-confirmacion .detalle { width: 100%; max-width: none; margin-left: 0; }
 section .cuenta.cuenta-pedidos-detalle .detalle { max-width: none; margin-left: 0; }
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (max-width: 768px) {
  header .buscar-mobile { display: block; }
  header .buscar-desktop { display: none; }
  footer .columna { text-align: center; margin-top: 2rem; }
  .visible-desktop-libros { display: none; }
  .visible-mobile-libros { display: block; }
  section .productos aside { width: 100%; margin: 0 0 30px 0; border-radius: 10px; }
  .visible-desktop-producto { display: none; }
  section .producto .descripcion { width: 100%; padding-top: 0; }
  section .producto .descripcion button { width: 100%; }
  section .producto .detalle { margin-bottom: 0; }
  section .producto .detalle h5 { margin-bottom: 30px; }
  .visible-mobile-producto { display: block; }
  section .carrito .libros .libro .acciones { text-align: right; margin-left: auto; margin-top: 1rem; }
  section .cuenta aside { width: 100%; margin-right: 0; padding: 0; border-right: none; }
  section .inicio .slider .owl-stage-outer .ilustracion { float: none; }
  section .inicio .slider .owl-stage-outer .descripcion { margin-top: 1rem; }
}

@media only screen and (width: 768px) {
  section .cuenta aside { width: 250px; margin-right: 30px; padding: 30px; border-right: 1px solid rgba(0,0,0,.1); }
  .producto .row { margin-bottom: 30px; }
  header .buscar-mobile { display: block; }
  header .buscar-desktop { display: none; }
  footer .columna { text-align: left; margin-top: 0; }
  .visible-desktop-producto { display: block; }
  section .producto .descripcion { width: 100%; padding-top: 30px; }
  section .producto .descripcion button { width: initial; }
  section .producto .detalle { margin-bottom: 0; }
  section .producto .detalle h5 { margin-bottom: 30px; }
  .visible-mobile-producto { display: none; }
  section .carrito .libros .libro .acciones { text-align: right; margin-left: auto; margin-top: 41px; }
  section .carrito .libros .libro .atributo.atributo-nombre { max-width: 250px; }
  section .inicio .slider .owl-stage-outer .descripcion { margin-top: 0; }
  section .inicio .slider .owl-stage-outer .ilustracion { float: left; }
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
  .visible-desktop{ display: none; }
  .menu-mobile{ position: absolute; top: 102px !important; left: 15px; right: 15px !important; background-color:  #ffffff; z-index: 1000; border-radius: 10px; box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; }
  section .carrito .libros .libro .ilustracion { max-width: 150px; max-height: none; }
  .w-sm-100 { width: 100%; }
  .margin-top-btn{ margin-top: 1rem;}
  .w-md-100 { width: auto; }
}

.burger-menu{ position: absolute; right: 1.5rem; top: 50%; transform: translateY(-50%);}
.burger-menu i{ font-size: 36px; }
.menu-mobile{ display: none; position: absolute; top: 94px; background-color:  #ffffff; z-index: 1000; border-radius: 10px; box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; }
.opciones-menu{ display: flex; flex-direction: column; align-items: center; }
.opciones-menu a {margin: 1rem; position: relative; }
.botones-menu{ display: flex; justify-content: center; }
.botones-menu a{ width: 100%; }
.botones-menu button{ width: 100%; }
.menu-desktop { display: flex; float: right; }
.mt-4 {margin-top: 2rem !important;}


/* .scale-in-tr{-webkit-animation:scale-in-tr .5s cubic-bezier(.25,.46,.45,.94) both;animation:scale-in-tr .5s cubic-bezier(.25,.46,.45,.94) both} */

/* ----------------------------------------------
 * Generated by Animista on 2022-3-10 8:32:26
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

 /* @-webkit-keyframes scale-in-tr{0%{-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}100%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}}@keyframes scale-in-tr{0%{-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}100%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}} */




 /* .scale-out-tr{-webkit-animation:scale-out-tr .5s cubic-bezier(.55,.085,.68,.53) both;animation:scale-out-tr .5s cubic-bezier(.55,.085,.68,.53) both} */

 /* ----------------------------------------------
 * Generated by Animista on 2022-3-10 8:31:48
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/* @-webkit-keyframes scale-out-tr{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}100%{-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}}@keyframes scale-out-tr{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}100%{-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:100% 0;transform-origin:100% 0;opacity:1}} */