body {
  width: 100%;
  position: relative;
  background: linear-gradient(silver, black 80%);
}

body, aside {
  height: 100%;
}

.line {
  width: 100%;
  margin-top: 1vh;
  margin-bottom: 1vh;
  border: 1px solid #b0cb1f;
}

.navbar {
  min-height: 10vh;
  font-family: "ABeeZee", Arial, Helvetica, sans-serif;
  font-weight: bold;
}

.nav-link {
  color: rgba(0,0,0,0.5);
  text-decoration: none;
}

.nav-item a {
  vertical-align: middle;
}

.nav-item a.nav-link{
  text-transform: uppercase;
}
.header-nav-icon {
  font-size: 1.25em;
}

.navbar-toggler {
  border: none;
}

main, #top, #footer-data {
  width: 90%;
  margin-left: auto;
  margin-right: 0;
  background-color: white;
}

#product {
  min-height: 90vh;
  background-color: white;

}

.side-nav {
  width: 10%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

.element-container {
  width: 75%;
}

.side-logo-holder {
  width: 100%;
  height: 10vw;
  background-image: url("../images/favicon.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  margin: 1em 0;
}

.main-nav-link, .side-nav-link {
  font-family: 'Teko', Arial, Helvetica, sans-serif;
  font-weight: 400;
  line-height: 1.25rem;
  text-decoration: none;
  color: white;
}

.main-nav-link {
  font-size: xx-large;
}

.side-nav-link {
  font-size: x-large;
  display: block;
  padding-bottom: 1rem;
}

.nav-ul {
  padding-left: 0;
  width: 100%;
}

.nav-ul li {
  list-style: none;
}

.nav-ul a:hover, .main-nav-link:hover, .main-nav-link.active, .side-nav-link:hover {
  color: #b0cb1f;
}

#product-carousel .carousel-indicators {
  position: relative;
}

#product-carousel .carousel-indicators [data-bs-target] {
  height: auto;
  background-color: transparent;
}

#product-carousel .carousel-indicators li {
  width: auto;
  text-indent: 0px;
  list-style-type: none;
  max-height: 60px;
  overflow-y: clip;
}

.carousel-item{
  position: relative;
  height: 70vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

#product-carousel .carousel-item {
  background-size: contain;
  background-position: bottom;
}

.carousel-image-indicator {
  width: 10vh;
}

@keyframes fade-in{
  0% {background-color: transparent;}
  100% {background-color: rgba(0, 0, 0, 0.25);}
}

@keyframes down-fade-in{
  0% {bottom: 100%; opacity: 0%;}
  100% {bottom: 50%; opacity: 100%;}
}

@keyframes up-fade-in{
  0% {top: 50%; opacity: 0%;}
  100% {top: 10%; opacity: 100%;}
}

@keyframes rise-up {
  0% {box-shadow: 0px 0px -5px rgba(0, 0, 0, 0.5);}
  100% {box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5); transform: translateY(-2px);}
}

.carousel-title{
  position: absolute;
  left:50%;
  transform: translateX(-50%);
  font-family: 'Teko', sans-serif;
  font-size: 6em;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 0.75em;
  color: white;
  text-shadow: 0px 8px black;
  animation-name: down-fade-in;
  animation-duration: 1s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
}

.carousel-btn{
  position: relative;
  animation-name: up-fade-in;
  animation-duration: 1s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
}

#slide-00{
  background-image: url(../images/slide-0.jpg);
}

.carousel-snap {
  /* apearance */
  gap: 5px;
  max-width: 100%;
  overflow-x: scroll;
  /* snap */
  scroll-snap-type: x mandatory;
}

.carousel-snap-item {
  /* appearance */
  flex: 0 0 20%;
  border-radius: 10px;
  color: #444;
  font-size: 0.75em;
  /* snap */
  scroll-snap-align: start;
  scroll-margin: 5px;
}

.carousel-snap-item:hover{
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08), 0 6px 20px 0 rgba(0, 0, 0, 0.07);
}

.empty-category{
  position: relative;
  min-height: 60vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 10px;
}

.text-soft{
  font-family: 'ABeeZee', Arial, Helvetica, sans-serif;
  color: rgba(0, 0, 0, 0.5);
}

.carousel-control-prev, .carousel-control-next{
  width: 8%;
}

.carousel-control-prev:hover, .carousel-control-next:hover {
  animation-name: fade-in;
  animation-duration: 0.3s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
}

.bs-carousel-icon{
  color:#00ff14;
  font-size: 3rem;
  text-shadow: 0px 0px 5px black;
}

.carousel-indicators [data-bs-target]{
  background-color: #00ff14;
}

.main-nav{
  background-color: black;
  min-height: 10vh;
}

.black-divider-top{
  height: 5vh;
  background-color: black;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIzN3B4IiB2aWV3Qm94PSIwIDAgMTI4MCAxNDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZmZmZiI+PHBhdGggZD0iTTY0MCAxNDBMMTI4MCAwSDB6IiBmaWxsLW9wYWNpdHk9Ii41Ii8+PHBhdGggZD0iTTY0MCA5OGw2NDAtOThIMHoiLz48L2c+PC9zdmc+);
  background-size: 100% 5vh;
}

.black-divider-bottom{
  height: 5vh;
  background-color: black;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIyMHB4IiB2aWV3Qm94PSIwIDAgMTI4MCAxNDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZmZmZiI+PHBhdGggZD0iTTY0MCAxMzlMMCAwdjE0MGgxMjgwVjBMNjQwIDEzOXoiLz48L2c+PC9zdmc+);
  background-size: 100% 5vh;
}

.green-divider-top{
  height: 8vh;
  background-color:green;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDBweCIgdmlld0JveD0iMCAwIDEyODAgMTQwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiNmZmZmZmYiPjxwYXRoIGQ9Ik0xMjgwIDBMNjQwIDcwIDAgMHYxNDBsNjQwLTcwIDY0MCA3MFYweiIgZmlsbC1vcGFjaXR5PSIuNSIvPjxwYXRoIGQ9Ik0xMjgwIDBIMGw2NDAgNzAgNjQwLTcweiIvPjwvZz48L3N2Zz4=);
  background-size: 100% 8vh;
}

.green-divider-bottom{
  height: 4vh;
  background-color:green;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSI2MHB4IiB2aWV3Qm94PSIwIDAgMTI4MCAxNDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI2ZmZmZmZiI+PHBhdGggZD0iTTY0MCAxMzlMMCAwdjE0MGgxMjgwVjBMNjQwIDEzOXoiLz48L2c+PC9zdmc+);
  background-size: 100% 4vh;
}

.about-us{
    font-family: 'Montserrat', arial, sans-serif;
}

.about-us-title{
    font-size: 2.5em;
    font-weight: 800;
}

.section-container{
  min-height: 50vh;
  font-weight: 400;
}

h1, .section-title{
  color: red;
  font-family: "Teko", Arial, Helvetica, sans-serif;
  font-size: 3em;
  text-transform: uppercase;
}

.section-title{
  font-size: 2.5em;
}

#product-info * {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

#product-info h1{
  font-size: 2em;
  font-weight: bold;
  color: black;
  text-transform: none;
}
.cta-container{
  margin-top: 10vh;
  min-height: 50vh;
  font-family: "Teko", Arial, Helvetica, sans-serif;
  font-weight: 400;
}

.card{
  font-family: "ABeeZee", Arial, Helvetica, sans-serif;
  margin-bottom: 2em;
  border-color: transparent;
}

.card img{
  margin: 1em 1em 0 1em;
}

.card-img-top {
    width: 100%;
    max-height: 40vh;
    object-fit: contain;
}

.card-title{
  font-weight: bold;
}

/*
.card-text{
  font-size: 0.8em;
}
*/

.card-footer{
  border-top-color: transparent;
  padding-bottom: 1em;
}

#contacto{
  background-image: linear-gradient(180deg,rgba(24,30,36,0.9) 0%,rgba(48,124,21,0.69) 100%), url(../images/footer_bg_image.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  color: white;  
}

.contact-title{
  font-family: 'Teko', Arial, Helvetica, sans-serif;
  text-transform: uppercase;
  font-weight: 500;
}

.contact-item{
  color: white;
  font-family: "ABeeZee", Arial, Helvetica, sans-serif ;
  font-weight: 400;
}

.form-container{
  background-color: rgba(54,183,47,0.85);
}

.contact-form{
  font-family: "ABeeZee", Arial, Helvetica, sans-serif;
}

.form-text{
  font-size: 0.75em;
}

.recaptcha{
  width: 300px;
  max-width: 100%;
}

.btn-float{
  position:fixed;
	width:50px;
	height:50px;
	border-radius:50%;
	text-align:center;
  font-size:32px;
	box-shadow: 0px 0px -5px rgba(0, 0, 0, 0.5);
  z-index:100;
}

.btn-float:hover{
  animation-name: rise-up;
  animation-duration: 0.3s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}

.whatsapp-scheme{
  background-color:#25d366;
	bottom:20px;
	right:20px;
}

.instagram-scheme{
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);
	bottom:80px;
	right:20px;
}

.facebook-scheme{
  background-color:#4267b2;
	bottom:140px;
	right:20px;
}

.social-link {
  text-decoration: none;
  color: white;
}

footer, #footer-data {
  background-color: black;
}

footer h3 {
  font-family: "Teko", Arial, Helvetica, sans-serif;
  font-weight: bold;
}

.btn-whatsapp {
  color: white;
  font-weight: bold;
  background-color: #25d366;
}

.btn-whatsapp:hover {
  color: white;
  background-color: #128C7E;
}

/*media queries*/

@media (max-width: 767px) {
  main, #top, #footer-data {
    width: 100svw;
  }

  .ubicacion {
    width: 100%;
  }

  .carousel-title{
    font-size: 4em;
  }

  .carousel-item{
    height: 50vh;
  }

  #product-carousel .carousel-item {
    height: 40vh;
  }

  .carousel-control-prev, .carousel-control-next{
    width: 12%;
  }
  
  .carousel-control-prev:hover, .carousel-control-next:hover {
    animation-name: none;
  }
}
