/* ========================================================
   RESPONSIVE DESIGN & MEDIA QUERIES - VENESANA
   Adaptabilidad para Smartphones, Tablets y Pantallas Grandes
   ======================================================== */

/* TABLETS Y PANTALLAS MEDIANAS (<= 1024px) */
@media (max-width: 1024px) {
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .hero-visual {
    max-width: 600px;
    margin: 0 auto;
  }

  .tech-grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .commercial-grid {
    grid-template-columns: 1fr;
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
  }

  .configurator-grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .location-grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
  }

  .modal-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .modal-image-wrapper {
    height: 220px;
  }
}

/* SMARTPHONES Y TABLETS VERTICALES (<= 768px) */
@media (max-width: 768px) {
  .section {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }

  /* Navegación Móvil */
  .mobile-toggle {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    width: 32px;
    height: 28px;
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
  }

  .mobile-toggle span {
    width: 100%;
    height: 2.5px;
    background-color: var(--color-primary-dark);
    border-radius: 2px;
    transition: all 0.25s ease;
  }

  .mobile-toggle.is-active span:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
  }

  .mobile-toggle.is-active span:nth-child(2) {
    opacity: 0;
  }

  .mobile-toggle.is-active span:nth-child(3) {
    transform: translateY(-9px) rotate(-45deg);
  }

  .nav-menu-wrapper {
    position: fixed;
    top: var(--spacing-header-height);
    left: 0;
    width: 100%;
    background-color: #ffffff;
    padding: 1.5rem;
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-lg);
    display: none;
    flex-direction: column;
    gap: 1.25rem;
    z-index: 99;
  }

  .nav-menu-wrapper.open {
    display: flex;
  }

  .nav-menu {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    width: 100%;
  }

  .nav-link {
    font-size: 1.05rem;
    padding: 0.5rem 0;
    width: 100%;
    border-bottom: 1px solid var(--color-border-light);
  }

  .header-actions .btn {
    display: none;
  }

  /* Hero */
  .hero-section {
    padding: 2.5rem 0 3.5rem 0;
  }

  .hero-cta-group {
    flex-direction: column;
    gap: 0.75rem;
  }

  .hero-cta-group .btn {
    width: 100%;
  }

  .hero-stat-row {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }

  /* Ribbon */
  .ribbon-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  /* Consultorios Filter Responsive */
  .consultorios-filter-container {
    margin-bottom: 2.25rem;
    width: 100%;
  }

  .filter-segmented-wrapper {
    justify-content: flex-start;
    padding: 4px 0.5rem;
  }

  .filter-pills-track {
    justify-content: flex-start;
    padding: 0.3rem;
    border-radius: var(--radius-pill);
    flex-wrap: nowrap;
    width: max-content;
  }

  .filter-chip {
    padding: 0.5rem 0.85rem;
    font-size: 0.82rem;
    white-space: nowrap;
    flex-shrink: 0;
  }

  .filter-status-bar {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.35rem;
    padding: 0.5rem 1rem;
    border-radius: var(--radius-md);
    margin-top: 0.85rem;
    width: 100%;
  }

  .consultorios-grid {
    grid-template-columns: 1fr;
  }

  .tech-showcase-box {
    padding: 2rem 1.25rem;
  }

  .configurator-wrapper {
    padding: 2rem 1.25rem;
  }

  .configurator-form {
    grid-template-columns: 1fr;
  }

  .patient-help-box,
  .equipment-curiosity-banner {
    flex-direction: column;
    text-align: center;
    padding: 2rem 1.5rem;
  }

  .medical-tower-banner {
    padding: 2rem 1.25rem;
    margin-bottom: 2.5rem;
  }

  .tower-features-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .equipment-curiosity-banner .curiosity-action .btn {
    width: 100%;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .floating-whatsapp span {
    display: none;
  }

  .floating-whatsapp {
    padding: 0.9rem;
    border-radius: 50%;
  }

  .modal-dialog {
    max-height: 95vh;
    border-radius: var(--radius-lg);
  }

  .modal-content-area {
    padding: 1.5rem;
  }
}

/* SMARTPHONES PEQUEÑOS (<= 480px) */
@media (max-width: 480px) {
  .brand-logo {
    font-size: 1.45rem;
  }

  .hero-badge {
    font-size: 0.75rem;
    padding: 0.35rem 0.85rem;
  }

  .trust-item {
    width: 100%;
  }

  .card-media-wrapper {
    height: 190px;
  }

  .card-footer {
    flex-direction: column;
  }

  .card-footer .btn {
    width: 100%;
  }
}
