/* Mobile presentation only. Shared desktop styles and form behaviour stay intact. */
@media screen and (max-width:700px) {
  /* Let a card's photograph determine its height instead of leaving an empty strip. */
  .section--service-chapters .home-service-stories .media-story > figure,
  .section--service-chapters .home-service-stories .media-story__picture {
    height: auto;
    min-height: 0;
  }
  .section--service-chapters .home-service-stories .media-story__picture {
    aspect-ratio: 4 / 3;
  }
  .section--service-chapters .home-service-stories .media-story__picture img {
    display: block;
    height: 100%;
    object-fit: cover;
  }
  /* Long Danish compounds must remain inside their column, including SEO pages. */
  main h1, main h2, main h3 { overflow-wrap: anywhere; }
  .estimate-starter__form .button,
  .property-start .button { white-space: normal; }

  @media (max-width:360px) {
    /* Six choices remain visible, with useful touch targets on narrow phones. */
    .estimate-starter__bedrooms > div,
    .property-start__bedrooms > div {
      grid-template-columns: repeat(3,minmax(0,1fr));
      overflow: hidden;
    }
    .estimate-starter__bedrooms label:nth-child(3) span,
    .property-start__bedrooms label:nth-child(3) span { border-right: 0; }
    .estimate-starter__bedrooms label:nth-child(-n+3) span,
    .property-start__bedrooms label:nth-child(-n+3) span { border-bottom: 1px solid var(--line); }
    .estimate-starter__bedrooms span,
    .property-start__bedrooms span { min-height: 48px; }
  }
  @media (max-width:340px) {
    /* Give the full calculation basis its own line rather than squeezing the word. */
    .management-price__fee { column-gap: .75rem; }
    .management-price__fee > p:last-of-type {
      grid-column: 1 / -1;
      grid-row: 3;
      max-width: none;
      margin-top: .65rem;
    }
    .management-price__fee .button { margin-top: 1rem; }
  }
}
