/* Hasteh v6.36 — actual business.php mobile details layout fix */
@media (max-width: 820px) {
  html,
  body[data-page="business-details"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: hidden !important;
  }

  @supports (overflow: clip) {
    html,
    body[data-page="business-details"] {
      overflow-x: clip !important;
    }
  }

  body[data-page="business-details"] {
    position: relative !important;
    padding-inline: 0 !important;
    padding-bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
  }

  body[data-page="business-details"] *,
  body[data-page="business-details"] *::before,
  body[data-page="business-details"] *::after {
    box-sizing: border-box !important;
  }

  body[data-page="business-details"] .site-header,
  body[data-page="business-details"] .page-shell,
  body[data-page="business-details"] .business-page {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    transform: none !important;
  }

  body[data-page="business-details"] .site-header {
    overflow-x: hidden !important;
  }

  body[data-page="business-details"] .site-header > .container,
  body[data-page="business-details"] .business-page > .container {
    width: calc(100% - 20px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 20px) !important;
    margin-right: 10px !important;
    margin-left: 10px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    transform: none !important;
  }

  body[data-page="business-details"] .site-header__inner {
    min-width: 0 !important;
    max-width: 100% !important;
    gap: .5rem !important;
  }

  body[data-page="business-details"] .site-header__inner .brand {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: 112px !important;
    overflow: hidden !important;
  }

  body[data-page="business-details"] .site-header__inner .brand__word {
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  body[data-page="business-details"] .site-header__inner .header-actions {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin-inline-start: auto !important;
  }

  body[data-page="business-details"] .business-page.section-band--compact {
    padding: 14px 0 calc(94px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
  }

  body[data-page="business-details"] [data-business-details],
  body[data-page="business-details"] .business-details-v2,
  body[data-page="business-details"] .business-overview,
  body[data-page="business-details"] .business-cover-large,
  body[data-page="business-details"] .business-summary,
  body[data-page="business-details"] .business-summary__header,
  body[data-page="business-details"] .business-summary__header > *,
  body[data-page="business-details"] .business-subline,
  body[data-page="business-details"] .business-action-row,
  body[data-page="business-details"] .business-contact-strip,
  body[data-page="business-details"] .details-main-grid,
  body[data-page="business-details"] .details-main-grid > *,
  body[data-page="business-details"] .details-card,
  body[data-page="business-details"] .stack,
  body[data-page="business-details"] .info-list,
  body[data-page="business-details"] .info-list > div,
  body[data-page="business-details"] .services-grid,
  body[data-page="business-details"] .gallery-row,
  body[data-page="business-details"] iframe {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    transform: none !important;
  }

  body[data-page="business-details"] [data-business-details],
  body[data-page="business-details"] .business-details-v2 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body[data-page="business-details"] .seo-business-preload {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    overflow: hidden !important;
  }

  body[data-page="business-details"] .details-breadcrumb {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 2px !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body[data-page="business-details"] .business-overview {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    contain: inline-size layout paint;
  }

  /* Fixed frame + complete image: no horizontal crop and no escape from the card. */
  body[data-page="business-details"] .business-cover-large {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: var(--color-surface-secondary) !important;
  }

  body[data-page="business-details"] .business-cover-large > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: inherit !important;
    transform: none !important;
  }

  body[data-page="business-details"] .business-summary {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 2px 2px !important;
    overflow: visible !important;
  }

  body[data-page="business-details"] .business-summary__header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px !important;
    align-items: start !important;
    gap: 10px !important;
    width: 100% !important;
  }

  body[data-page="business-details"] .business-summary__header > div:first-child {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body[data-page="business-details"] .business-summary__logo {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body[data-page="business-details"] .business-summary__logo img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
  }

  body[data-page="business-details"] .business-summary h1 {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 1.45rem !important;
    line-height: 1.45 !important;
    text-align: right !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
  }

  body[data-page="business-details"] .business-subline {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 7px 9px !important;
    width: 100% !important;
    margin: 7px 0 !important;
    font-size: .75rem !important;
    text-align: right !important;
    overflow: visible !important;
  }

  body[data-page="business-details"] .business-summary > p,
  body[data-page="business-details"] .business-subline span,
  body[data-page="business-details"] .contact-mini span,
  body[data-page="business-details"] .details-card p,
  body[data-page="business-details"] .details-card a,
  body[data-page="business-details"] .info-list strong,
  body[data-page="business-details"] .info-list p {
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body[data-page="business-details"] .business-action-row,
  body[data-page="business-details"] .business-contact-strip,
  body[data-page="business-details"] .details-main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    gap: 9px !important;
  }

  body[data-page="business-details"] .business-action-row .button,
  body[data-page="business-details"] .business-contact-strip > *,
  body[data-page="business-details"] .details-main-grid > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body[data-page="business-details"] .details-main-grid {
    margin-top: 12px !important;
  }

  body[data-page="business-details"] .details-card {
    padding: 14px !important;
  }

  body[data-page="business-details"] .services-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body[data-page="business-details"] .gallery-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body[data-page="business-details"] .gallery-row img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    aspect-ratio: 4 / 3 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 10px !important;
    background: var(--color-surface-secondary) !important;
    transform: none !important;
  }

  body[data-page="business-details"] > .mobile-bottom-nav,
  body[data-page="business-details"] .mobile-bottom-nav {
    position: fixed !important;
    z-index: 1000001 !important;
    right: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: .45rem .4rem calc(.45rem + env(safe-area-inset-bottom, 0px)) !important;
    border-right: 0 !important;
    border-left: 0 !important;
    border-bottom: 0 !important;
    border-radius: 18px 18px 0 0 !important;
    transform: none !important;
  }

  body[data-page="business-details"] .mobile-bottom-nav a {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body[data-page="business-details"] .mobile-bottom-nav a span {
    display: block !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 360px) {
  body[data-page="business-details"] .site-header > .container,
  body[data-page="business-details"] .business-page > .container {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-right: 8px !important;
    margin-left: 8px !important;
  }

  body[data-page="business-details"] .business-summary__header {
    grid-template-columns: minmax(0, 1fr) 54px !important;
  }

  body[data-page="business-details"] .business-summary__logo {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
  }
}
