/* EMPIXO mobile responsive layer — desktop unchanged */
@media (max-width: 782px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .wp-site-blocks,
  main,
  header,
  footer,
  .wp-block-group,
  .wp-block-cover,
  .wp-block-columns,
  .wp-block-column {
    box-sizing: border-box;
    max-width: 100%;
  }

  .has-global-padding,
  .wp-site-blocks > header,
  .wp-site-blocks > main,
  .wp-site-blocks > footer {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .wp-block-columns {
    flex-direction: column !important;
    gap: 24px !important;
  }

  .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  h1,
  .wp-block-post-title {
    font-size: clamp(2rem, 9vw, 2.65rem) !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere;
  }

  h2 {
    font-size: clamp(1.65rem, 7vw, 2.15rem) !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere;
  }

  h3 {
    font-size: clamp(1.3rem, 5.5vw, 1.7rem) !important;
    line-height: 1.2 !important;
  }

  p,
  li,
  label,
  input,
  select,
  textarea {
    font-size: max(16px, 1rem);
    line-height: 1.6;
  }

  img,
  video,
  iframe,
  embed,
  object,
  form,
  input,
  select,
  textarea {
    max-width: 100% !important;
  }

  img,
  video {
    height: auto !important;
  }

  iframe,
  embed,
  object {
    width: 100% !important;
  }

  .wp-block-buttons {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100%;
  }

  .wp-block-button,
  .wp-block-button__link,
  input[type="submit"],
  button[type="submit"] {
    box-sizing: border-box;
    min-height: 48px;
    width: 100% !important;
  }

  .wp-block-button__link,
  input[type="submit"],
  button[type="submit"] {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    padding: 12px 18px !important;
    white-space: normal;
  }

  .wp-block-table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .wp-block-spacer {
    height: clamp(24px, 8vw, 56px) !important;
  }

  .wp-block-navigation__responsive-container-open {
    min-height: 44px;
    min-width: 44px;
  }

  header .wp-block-navigation__container,
  footer .wp-block-navigation__container {
    flex-wrap: wrap;
  }

  footer .wp-block-columns {
    align-items: stretch !important;
  }
}

@media (max-width: 390px) {
  .has-global-padding,
  .wp-site-blocks > header,
  .wp-site-blocks > main,
  .wp-site-blocks > footer {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  h1,
  .wp-block-post-title {
    font-size: clamp(1.9rem, 9vw, 2.3rem) !important;
  }

  .wp-block-cover,
  .wp-block-group {
    min-width: 0 !important;
  }
}