/* Home hero: keep the artwork inside the viewport on narrow screens. */
.home .elementor-15965 > .elementor-element-6a2bf65c {
  overflow: hidden;
}

@media (max-width: 767px) {
  .home .elementor-location-header,
  .home .elementor-location-header .elementor-element-79d4cc18,
  .home .elementor-15965,
  .home .elementor-15965 > .elementor-element-6a2bf65c,
  .home .elementor-15965 .elementor-element-75e037c1,
  .home .elementor-15965 .elementor-element-91ad59f {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .home .elementor-15965 .elementor-element-91ad59f {
    padding-inline: 18px;
    overflow: hidden;
  }

  .home .elementor-15965 .elementor-element-62afd38 {
    width: 100%;
    max-width: 100%;
  }

  .home .elementor-15965 .elementor-element-62afd38 img {
    display: block;
    width: min(86vw, 520px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-inline: auto;
  }

  .home .elementor-15965 .elementor-element-f902f14 img {
    display: block;
    width: min(52vw, 222px) !important;
    max-width: 222px !important;
    height: auto !important;
    margin-inline: auto;
  }

  .home .elementor-15965 .elementor-element-1c8a3230 {
    width: 100%;
    max-width: 100%;
  }

  .home .elementor-15965 .elementor-element-1c8a3230 > .elementor-widget-container {
    margin: 0 !important;
    padding: 0 12px clamp(54px, 13vh, 96px) !important;
  }

  .home .elementor-15965 .elementor-element-1c8a3230 .elementor-icon-box-wrapper {
    text-align: center !important;
  }

  .home .elementor-15965 .elementor-element-1c8a3230 .elementor-icon-box-title,
  .home .elementor-15965 .elementor-element-1c8a3230 .elementor-icon-box-title a {
    max-width: 100%;
    font-size: clamp(30px, 9vw, 42px) !important;
    line-height: 0.98 !important;
    overflow-wrap: anywhere;
  }

  .home .elementor-15965 .elementor-element-1c8a3230 .elementor-icon-box-description {
    max-width: 100%;
    font-size: clamp(21px, 6.4vw, 29px) !important;
    line-height: 1.04 !important;
    overflow-wrap: anywhere;
  }

  .home .elementor-location-header .elementor-element-75e9d050 {
    width: auto;
    max-width: 100%;
    margin-left: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home *,
  .home *::before,
  .home *::after {
    scroll-behavior: auto !important;
  }
}
