@import url('https://fonts.googleapis.com/css2?family=Muli:wght@400;700&family=Rubik:wght@400;700&display=swap');

.texto-general {
	font-family: 'Rubik', sans-serif;
}
.button1 {
  transition-duration: 0.4s;
}

.button:hover {
  background-color: #4CAF50; /* Green */
  color: white;
}

.texto-destacado {
	font-family: 'Muli', sans-serif;
}

.negrita {
	font-weight: 700;
}
button.ancho-fijo, a.ancho-fijo {
    min-width: 280px;
}

section { padding: 20px 0; }

section.contenidos {
	min-height: 410px;
	padding: 10px 0;
}



footer {
	background-color: #012273;
	padding: 10px;
	border-radius:0px;
}

.lote .card-img-top {
    width: 100%;
    height: 250px;
    object-fit: contain;
}


html,
body {
  position: relative;
  height:100vh; 
  margin:0;
  display:flex; 
  flex-direction:column; 
}

footer{
  margin-top:auto; 
}

.swiper-container {
  height: 400px;
  width: 100%;
}

.swiper-horizontal>.swiper-pagination-bullets, 
.swiper-pagination-bullets.swiper-pagination-horizontal, 
.swiper-pagination-custom, 
.swiper-pagination-fraction {
    bottom: 0px;
}

.swiper-container .card-title{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.swiper-slide {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.swiper-container .card-title{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

      #carouselAmpliado .swiper {
        width: 100%;
        height: 100%;
      }

      #carouselAmpliado .swiper-slide {
        text-align: center;
        font-size: 18px;
        background: #fff;
        /* Center slide text vertically */
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
      }

      #carouselAmpliado .swiper-slide img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
      }


      #carouselAmpliado .swiper {
        width: 100%;
        height: 300px;
        margin-left: auto;
        margin-right: auto;
      }

      #carouselAmpliado .swiper-slide {
        background-size: cover;
        background-position: center;
      }

      #carouselAmpliado .mySwiper2 {
        height: 80%;
        width: 100%;
      }

      #carouselAmpliado .mySwiper {
        height: 20%;
        box-sizing: border-box;
        padding: 10px 0;
      }

      #carouselAmpliado .mySwiper .swiper-slide {
        width: 25%;
        height: 100%;
        opacity: 0.4;
      }

      #carouselAmpliado .mySwiper .swiper-slide-thumb-active {
        opacity: 1;
      }

      #carouselAmpliado .swiper-slide img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
.img-destacado{
	width: 100%;
    height: 200px;
    object-fit: cover;
}
:root {
        --main-color: #012273;
		--main-color-secondary: #36a0e4;
      }

/*------- Pasos para comprar ------- */
.titulo-pasos{
	color: var(--main-color);
}
.numero-pasos{
	width: 4em;
	height: 4em;
	top: -30px;
	border-width: 4px !important; 
	background-color: var(--main-color);
}

      .bg-main {
        max-height: 250px;
        background: var(--main-color);
        background-image: url(https://packglobal-publico.s3.amazonaws.com/ACT021/libreria/imagenes/frame.jpg);
        background-size: cover;
        background-position: 50%;
        height: 100%;
        top: 0;
        left: 0;
        position: relative;
        z-index: 0;
      }
      .bg-main::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--main-color);
        opacity: 0.75;
        /* !!! */
        z-index: -1;
      }
      .banner-brand {
        height: 250px;
        color: #fff;
      }
.foto-portada-catalogo{
	width: 100%;
    max-height: 200px;
    object-fit: cover;
}
/* common */
.ribbon {
  width: 150px;
  height: 150px;
  overflow: hidden;
  position: absolute;
}
.ribbon::before,
.ribbon::after {
  position: absolute;
  z-index: -1;
  content: '';
  display: block;
  border: 5px solid var(--main-color-secondary);
  filter: brightness(85%);
}
.ribbon span {
  position: absolute;
  display: block;
  width: 225px;
  padding: 15px 0;
  background-color: var(--main-color-secondary);
  box-shadow: 0 5px 10px rgba(0,0,0,.1);
  color: #fff;
  font: 700 18px/1 'Lato', sans-serif;
  text-shadow: 0 1px 1px rgba(0,0,0,.2);
  text-transform: uppercase;
  text-align: center;
}

/* top left*/
.ribbon-top-left {
  top: -10px;
  left: -10px;
}
.ribbon-top-left::before,
.ribbon-top-left::after {
  border-top-color: transparent;
  border-left-color: transparent;
}
.ribbon-top-left::before {
  top: 0;
  right: 0;
}
.ribbon-top-left::after {
  bottom: 0;
  left: 0;
}
.ribbon-top-left span {
  right: -25px;
  top: 30px;
  transform: rotate(-45deg);
}

.separator{
  width: 200px;
  display:flex;
  align-items: center;
}

.separator .line{
  height: 2px;
  flex: 1;
  background-color: #fff;
}

.separator i{
  padding: 0 1rem;
}

/*------- Contador Home ------- */

      .block {
        display: flex;
        flex-direction: column;
      }
      .text {
        color: var(--main-color-secondary);
        font-size: 14px;
        text-align: center;
      }
      .digit {
        color: #ecf0f1;
        font-size: 36px;
        text-align: center;
		margin-bottom: 0px;
      }
	  .countdown h4{
	  color: var(--main-color-secondary);
      margin-bottom: 0;
      margin-top: 10px;
      }

.titulo-principal {
    position: relative;
    margin-top: 20px;
    font-family: 'Roboto', sans-serif;
    color: #5a5a5f;
    text-align: center;
    position: relative;
    margin-top: 20px;
}
.titulo-principal:before,.titulo-principal:after {
    content: "";
    display: block;
    border-top: solid 1px var(--main-color-secondary);
    border-bottom: solid 1px var(--main-color-secondary);
    height: 5px;
    width: 100%;
    height: 5px;
    position: absolute;
    top: 50%;
    z-index: 1;
}
.titulo-principal span {
    background: #fff;
    padding: 0 20px;
    position: relative;
    z-index: 5;
}

/*------- Calendario Home ------- */

.container-calendario {
    width: 200px;
    height: 250px;
    background-color: #f2f2f2;
    border-radius: 20px;
}

.container-2-calendario {
    width: 200px;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.mes {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 200px;
    background-color: var(--main-color-secondary);
    height: 70px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    font-size: 30px;
    font-weight: 900;
    color: #f2f2f2;
}

.dia {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 500;
}

.numero {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 70px;
    font-weight: 800;
    margin-bottom: 5px;
    margin-top: 5px;
}

.año {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 500;
}

/*
************* Btn whatsapp *************
*/

.btn-whatsapp{
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #42c451;
    border: 2px solid #fff;
    width: 50px;
    height: 50px;
    display: block;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
	z-index: 999;
}
.btn-whatsapp i {
    color: #fff;
    margin: 0;
    position: relative;
    left: 0px;
    top: 0px;
    font-size: 2em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.btn-whatsapp:hover {
    background: #5a5a5f;
}
.btn-whatsapp:hover i {
    color: #fff;
    top: 5px;
}

/*
************* Scroll Top *************
*/

#return-to-top {
    position: fixed;
    bottom: 80px;
    right: 20px;
    background: var(--main-color-secondary);
    width: 50px;
    height: 50px;
    display: block;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    display: none;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
	z-index: 999;
}
#return-to-top i {
    color: #fff;
    margin: 0;
    position: relative;
    left: 16px;
    top: 13px;
    font-size: 19px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#return-to-top:hover {
    background: #5a5a5f;
}
#return-to-top:hover i {
    color: #fff;
    top: 3px;
}

.titulo-destacado{
    font-size: 1.5em;
	text-align: left;
    position: relative;
	display: flex;
    justify-content: start;
    align-items: center;
}
.titulo-destacado::before {
  content: "";
    display: block;
    border-top: solid 1px var(--main-color);
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    z-index: 1;
}
.titulo-destacado i{
    background: var(--main-color);
    z-index: 5;
    padding: 10px;
    position: relative;
    border-radius: 50%;
    color: #fff;
}
.titulo-destacado span{
    background: #fff;
    padding: 0 20px 0 10px;
    position: relative;
    z-index: 5;
}
svg .svg-main-color{
	fill: var(--main-color);
}
