/* ─── Tablet (≤1024px) ─── */

@media (max-width: 1024px) {
  .card-grid-3d.wp-block-columns {
    flex-wrap: wrap !important;
  }
  .card-grid-3d.wp-block-columns > .wp-block-column {
    flex-basis: calc(50% - 1rem) !important;
    min-width: calc(50% - 1rem);
  }

  .mission-section .wp-block-columns {
    flex-direction: column !important;
  }
  .mission-section .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }
}

/* ─── Mobile (≤768px) ─── */

@media (max-width: 768px) {
  .card-grid-3d.wp-block-columns > .wp-block-column {
    flex-basis: 100% !important;
    min-width: 100%;
  }

  .card-grid-2col.wp-block-query .wp-block-post-template {
    grid-template-columns: 1fr !important;
  }

  /* Footer columns stack */
  .site-footer-content .wp-block-columns {
    flex-direction: column !important;
  }
  .site-footer-content .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    margin-bottom: 2rem;
  }

  /* Reduce vertical padding on big sections */
  .alignfull[style*="spacing--80"] {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
}

/* ─── Small mobile (≤480px) ─── */

@media (max-width: 480px) {
  .hero-aloha__cta .wp-block-button__link,
  .stand-with-us__cta .wp-block-button__link {
    padding: 14px 28px !important;
    font-size: 0.95rem !important;
  }
}

/* ─── Touch (no hover) ─── */

@media (hover: none) and (pointer: coarse) {
  .card-3d:hover .wp-block-image img,
  .card-3d:hover .card-image img {
    transform: none;
  }
}

/* ─── Print ─── */

@media print {
  .site-header,
  .stand-with-us,
  #hero-particles {
    display: none !important;
  }
}
