/* Club Los Molinos — ajustes para celulares y tablets */
.m-nav-toggle { display: none; }
img, iframe { max-width: 100%; }

@media (max-width: 900px) {
  .m-cols4 { grid-template-columns: repeat(2, 1fr) !important; }
  .m-stack { grid-template-columns: 1fr !important; gap: 24px !important; }
  .m-logos { grid-template-columns: repeat(2, 1fr) !important; }
  .m-gallery { grid-template-columns: repeat(2, 1fr) !important; }
  .m-untilt { transform: none !important; margin-top: 0 !important; }
}

@media (max-width: 1100px) {
  .m-header { padding: 10px 20px !important; flex-wrap: wrap; }
  .m-nav-toggle {
    display: flex; flex-direction: column; gap: 5px; order: 3;
    background: none; border: 0; padding: 10px; cursor: pointer;
  }
  .m-nav-toggle span { width: 24px; height: 2px; background: var(--color-text, #222); border-radius: 2px; }
  .m-nav {
    display: none !important; order: 4; width: 100%;
    flex-direction: column; align-items: flex-start !important; gap: 4px !important;
    padding: 12px 0 8px;
  }
  .m-nav a { padding: 10px 0; font-size: 17px !important; width: 100%; }
  .m-header.m-open .m-nav { display: flex !important; }
  .m-header-cta { order: 2; margin-left: auto; margin-right: 8px; }
}

@media (max-width: 640px) {
  .m-px { padding-left: 20px !important; padding-right: 20px !important; }
  .m-pt { padding-top: 56px !important; }
  .m-pb { padding-bottom: 56px !important; }
  .m-box { padding: 28px 20px !important; }
  .m-h1 { font-size: 34px !important; }
  .m-h2 { font-size: 26px !important; }
  .m-hero { height: auto !important; min-height: 520px; }
  .m-photo { height: 300px !important; }
  .m-img { height: 260px !important; }
  .m-cols4 { grid-template-columns: 1fr !important; }
  .m-actions { flex-direction: column; }
  .m-actions > a { width: 100%; justify-content: center; display: flex; }
  .m-hero-dots { right: 20px !important; bottom: 20px !important; }
  .m-header-cta { display: none; }
  .m-form-frame { height: 1500px; }
}

/* Logo suelto al final de la grilla de sponsors: centrado */
@media (min-width: 901px) {
  .m-logos > .m-logo-center { grid-column: 2; }
}
@media (max-width: 900px) {
  .m-logos > .m-logo-center { grid-column: 1 / -1; justify-self: center; width: calc(50% - 12px); }
}

/* Campaña Nuestra Huella */
@media (max-width: 640px) {
  .m-huella-num { font-size: 110px !important; }
  .m-huella-trail { opacity: 0.5; }
}
