/* Global responsive, motion, and cross-page WordPress layout fixes. */

@media (max-width: 782px) {
  .wp-site-blocks {
    padding: 10px 0 28px;
  }
  
  .hd-page-shell {
    width: calc(100% - 18px);
  }
  
  .hd-chrome {
    border-radius: var(--hd-radius-lg);
  }
  
  .hd-panel,
  .hd-glass-card {
    padding: 20px;
  }

  .hd-footer.wp-block-group {
    padding: 1.4rem 1rem 1.05rem !important;
    border-radius: 0 0 calc(var(--hd-radius-lg) - 1px) calc(var(--hd-radius-lg) - 1px);
  }

  .hd-footer > .wp-block-columns.alignwide {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.9rem 1.1rem !important;
    margin-bottom: 0.8rem;
  }

  .hd-footer > .wp-block-columns.alignwide > .wp-block-column {
    min-width: 0;
    flex-basis: auto !important;
  }

  .hd-footer > .wp-block-columns.alignwide > .wp-block-column:first-child {
    grid-column: 1 / -1;
  }

  .hd-footer p,
  .hd-footer h6,
  .hd-footer ul {
    margin-top: 0;
    margin-bottom: 0;
  }

  .hd-footer p.has-xl-font-size {
    font-size: clamp(1.15rem, 6vw, 1.45rem) !important;
    line-height: 1.1;
  }

  .hd-footer h6.wp-block-heading {
    margin-bottom: 0.35rem;
    font-size: 0.72rem;
    line-height: 1.2;
  }

  .hd-footer ul {
    padding-left: 0.9rem;
  }

  .hd-footer li {
    margin-bottom: 0.2rem;
    font-size: 0.82rem;
    line-height: 1.32;
  }

  .hd-footer p:not(.has-xl-font-size) {
    font-size: 0.82rem;
    line-height: 1.35;
  }

  .hd-footer a {
    overflow-wrap: anywhere;
  }

  .hd-footer .wp-block-separator {
    margin-top: 0.95rem;
    margin-bottom: 0.8rem;
  }

  .hd-footer > .wp-block-group.alignwide {
    margin-top: 0;
  }

  .hd-footer > .wp-block-group.alignwide p {
    margin-bottom: 0;
  }

  .hd-footer-legal {
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hd-booking-cta {
    transition: none;
  }
}
