body {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
  }

  h1, h2 {
     font-family: 'Playfair Display', serif;
  }

    /* NAV */

  .navbar .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.navbar-collapse {
    flex-grow: 1;
}

.navbar-nav {
  flex-wrap: wrap;
    width: 100%;
    justify-content: space-evenly;
}

.navbar-nav .nav-link {
    /* font-size: clamp(16px, 2vw, 25px); */
    font-size: clamp(14px, 1.4vw, 22px);
    color: #fff;
    font-weight: 300;
    letter-spacing: 2px;
    transition: all .3s ease;
}

.navbar-nav .nav-link:hover {
    color: #ffd6ff;
}

    .navbar-custom {
      background: rgba(128, 0, 128, 0.50);
     backdrop-filter: blur(1px);
       border-bottom: 2px solid rgba(128, 0, 128, 0.50);
      box-shadow: 0 4px 15px rgba(255, 77, 240, 0.5);
      height: 105px;
    }

    .navbar-custom .nav-link {
      color: #fff;
      font-weight: 500;
      margin: 0 10px;
    }

    .navbar-custom .nav-link:hover {
      color: #f8dfff;
    }

    #logo{
      width: 100px;
      margin-left: 15px;
    }

    .hero {
        position: relative;
        height: 100vh;
        max-height: 870px;
        color: #fff;
        overflow: hidden;
    }

    .hero img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .hero-overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      /* background: rgba(128, 0, 128, 0.5); */
    }

    .hero-content {
      position: absolute;
      top: 50%;
      left: 10%;
      transform: translateY(-50%);
      z-index: 2;
    }

    .hero h1 {
      font-size: 4rem;
      font-family: cursive;
    }

    .hero p { 
      font-size: 1.5rem;
    }

    /* MOBILE */
    @media (max-width: 768px) {
      .hero-content {
        left: 5%;
        right: 5%;
      }

      .hero h1 {
        font-size: 2.5rem;
      }

      .hero p {
        font-size: 1.2rem;
      }
    }

    /* MOBILE */
    @media (max-width: 576px) {
      .navbar-nav .nav-link {
        font-size: 16px !important;
      }

      .hero {
          height: 500px;
          max-height: 500px;
      }

     .hero img {
      object-position: center;
    } 

    }

.productos .container, .guias .container{
    max-width: 1050px;
}

.card-product {
    overflow: hidden;
}

.card-product img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    transition: transform .4s ease;
}


.card-product:hover img {
    transform: scale(1.05);
}


.btn-conoce {
    font-size: 18px;
    color: #333;
    text-decoration: none;
    position: relative;
    font-weight: 500;
}

.btn-conoce::after {
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    background: #f4c542;
    margin: 8px auto 0;
    transition: width .3s ease;
}

.btn-conoce:hover::after {
    width: 120px;
}


.titulo {
    font-size: clamp(22px, 2.5vw, 32px);
    font-weight: 600;
    margin-bottom: 20px;
}

/* TEXTO */
.desc {
    font-size: 19px;
    margin-bottom: 3rem;
}

.footer {
    background: #000;
    color: #fff;
}

/* LOGO */
.footer-logo {
    max-width: 70px;
}

/* LINKS */
.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.footer-links li {
    margin-bottom: 10px;
}

.footer-links a {
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    transition: color .3s ease;
}

.footer-links a:hover {
    color: #ccc;
}

/* TEXTO */
.footer-text {
    font-size: 15px;
    margin-bottom: 20px;
}

/* ICONOS */
.footer-social a {
    color: #fff;
    font-size: 28px;
    margin: 0 10px;
    display: inline-block;
    transition: transform .3s ease;
}

.footer-social a:hover {
    transform: scale(1.1);
}

.footer-social #amazon {
    width: 100px;
}


.box-img{
max-width: 800px;
margin: 0 auto;
text-align: center;
}

.box-text{
max-width: 900px;
margin: 0 auto;
}

.circulo {
    width: 150px;
    height: 150px;
    background: #ffc83d;
    border-radius: 50%;
    margin: 0 auto; /* centrar horizontal */
}

@media (max-width: 992px) {


    .navbar-custom {
      height: auto;
    }


    .card-product img {
        height: 320px;
    }
}


@media (max-width: 768px) {

    .card-product {
        width: 100%;
       max-width: 80%;
        margin: 0 auto;   
        padding-left: 12px;
        padding-right: 12px;
    }
    
    .nav-container {
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .card-product img {
        height: auto;
    }

    .footer-logo {
        margin-bottom: 20px;
    }

    .footer-social a {
        margin: 0 8px;
    }

}

@media (max-width: 576px) {

    #logo{
      width: 50px;
      margin-left: 0px;
    }

}

@media (max-width: 500px){
    .nav-container {
        max-width: 540px !important;
        margin: 0 auto !important;
    }
}