/* Ochrona przed poziomym przewijaniem — wspólna dla całego serwisu. */
html {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

@media (max-width: 760px) {
  .wrap {
    width: calc(100% - 32px);
    max-width: 600px;
  }

  .hero,
  .hero-content,
  .hero-art,
  .categories,
  .nearby-location,
  .regions,
  .region-list,
  .region-selected,
  .region-categories,
  .city-picker,
  .city-choices,
  .business-grid,
  .business,
  .directory-results,
  .directory-results .wrap,
  .featured,
  .featured .wrap,
  .owner-cta,
  .order-form,
  .panel,
  .admin-main,
  .admin-header {
    min-width: 0;
    max-width: 100%;
  }

  .business h1,
  .business h2,
  .business h3,
  .directory-info,
  .owner-cta,
  .profile-content,
  .order-form,
  .admin-main {
    overflow-wrap: anywhere;
  }
}

/* Karta zamówienia wyróżnienia pod profilem firmy. */
@media (max-width: 760px) {
  .owner-cta {
    grid-template-columns: 28px minmax(0, 1fr);
    row-gap: 10px;
  }

  .owner-cta > div {
    grid-column: 2;
  }

  .owner-cta a {
    grid-column: 2;
    grid-row: 2;
    margin-top: 2px;
    white-space: normal;
  }
}

/* Pełny profil firmy (profile.php). */
@media (max-width: 700px) {
  .owner {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    align-items: start;
    padding-bottom: 22px;
    row-gap: 10px;
  }

  .owner > div {
    grid-column: 2;
  }

  .owner a {
    position: static;
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    margin: 2px 0 0;
    white-space: normal;
  }
}

/* Domknięcie układów mobilnych: brak wyjścia poza ekran i zawijanie stopki. */
@media (max-width: 760px) {
  .header,
  .footer,
  .footer .wrap,
  .crumbs,
  .crumbs .wrap,
  .content,
  .article,
  .address,
  .listing-content,
  .listing-hero .wrap,
  .phone-dialog {
    min-width: 0;
    max-width: 100%;
  }

  .crumbs .wrap,
  .footer .wrap,
  .profile-updated {
    overflow-wrap: anywhere;
  }

  .footer > div {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    flex-wrap: wrap;
    column-gap: 16px;
    row-gap: 10px;
  }

  .footer small {
    grid-column: 1 / -1;
    white-space: normal;
  }

  .footer a {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .award-certificate.award-certificate--premium {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
  }

  .award-certificate--premium .award-certificate__content,
  .award-certificate__visual {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .award-certificate--premium .award-certificate__body h2 {
    overflow-wrap: anywhere;
  }
}
