/* === Responsive Design === */

/* Pantallas pequeñas: celulares (≤ 768px) */
@media (max-width: 768px) {
 .container.container-form{
  width: 95% ;
}
  #ofertas-container {
    grid-template-columns: repeat(2, 1fr);
  }
  .navbar .container {
    position: relative;
    justify-content: space-between;
    align-items: flex-start;
    padding: 10px;
  }

  .navbar-brand {
    width: 100%;
    justify-content: space-between;
  }

  .mobile-menu-toggle {
    display: block;
    background: none;
    border: none;
    font-size: 2rem;
    color: #333;
  }

  .navbar-nav {
    position: absolute;
    background-color: rgb(244, 244, 244);
    flex-direction: column;
    width: 100%;
    display: none;
    margin-top: 60px;
    height: 400px;
  }

  .navbar-nav.active {
    display: flex;
  }
  .nav-link.btn-secondary {
    /* background-color: green; */
    padding: 10px 20px;
  }
  .nav-item {
    width: 100%;
    text-align: left;
  }

  .hero {
    padding: 40px 20px;
    height: auto;
    text-align: center;
  }

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

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

  .buttons-container {
    flex-direction: column;
    gap: 1rem;
    height: auto;
  }
  .container {
    padding: 10px;
  }

  .service-grid,
  .clients-grid {
    grid-template-columns: 1fr;
  }

  .testimonials {
    width: 100%;
  }

  .page-top.btn-primary {
    width: 40px !important;
    height: 40px !important;
  }

  .page-top i {
    font-size: 1.5rem;
  }

  form input,
  form textarea {
    width: 100%;
  }

  .not-found {
    flex-direction: column;
    text-align: center;
  }

  .not-found h1 {
    font-size: 6rem;
  }
 
}

/* Pantallas medianas: tablets (769px - 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
 
  #ofertas-container {
    grid-template-columns: repeat(3, 1fr);
  }

  .navbar-nav {
    width: 120%;
    justify-content: space-between;
    /* background-color: beige; */
  }
  .navbar-nav .nav-item .nav-link {
    font-size: 0.75rem;
  }
  .nav-link.btn-secondary {
    padding: 5px;
  }
  .hero h1 {
    font-size: 2.5rem;
  }

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

  .service-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .clients-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .buttons-container {
    flex-wrap: wrap;
    gap: 1.5rem;
  }
}
