/* Grovea display resilience v1.0.0
 * Reflow, text enlargement and user-preference safeguards for the shared
 * grovea.nl shell. Gebouwstudio remains outside this stylesheet.
 */

body.gch-shell-active {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.gch-site-shell,
.gch-shell,
.gch-home,
.gch,
.gch-information,
.gch-my-collections,
.gch-explorer,
.gb,
.gs-page,
.ps,
.gc-page,
.gx,
.gch-home-category,
.gch-home-collection-card,
.gch-principles article,
.gch-blueprint-grid article {
  min-inline-size: 0;
}

.gch-home :is(h1, h2, h3, p, li, small, strong),
.gch :is(h1, h2, h3, p, li, small, strong, dd),
.gch-information :is(h1, h2, h3, p, li, small, strong, dd),
.gch-my-collections :is(h1, h2, h3, p, li, small, strong),
.gch-privacy-module :is(h2, h3, p, dt, dd),
.gb :is(h1, h2, h3, p, li, small, strong),
.gs-page :is(h1, h2, h3, p, li, small, strong),
.ps :is(h1, h2, h3, p, li, small, strong),
.gc-page :is(h1, h2, h3, p, li, small, strong),
.gx :is(h1, h2, h3, p, li, small, strong),
.gch-site-footer :is(a, p, strong, small) {
  overflow-wrap: anywhere;
}

.gch-btn,
.gch-explorer-button,
.gch-my-collections button,
.gch-information a {
  max-inline-size: 100%;
}

.gch-actions,
.gch-final__inner,
.gch-home-local > .gch-shell,
.gch-shared-engine,
.gch-home-collections__shared {
  flex-wrap: wrap;
}

@media (max-width: 520px) {
  .gch-btn,
  .gch-explorer-button,
  .gch-my-collections button {
    block-size: auto;
    min-block-size: 44px;
    white-space: normal;
    line-height: 1.25;
    text-align: center;
  }

  .gch-home-category-note strong,
  .gch-home-local .gch-btn,
  .gch-explorer__progress li button b,
  .gch-my-collection__top > span {
    white-space: normal;
  }

  .gch-explorer__progress li button,
  .gch-my-collection__top,
  .gch-my-collection__actions,
  .gch-my-backup__actions {
    min-inline-size: 0;
  }

  .gch-home-mosaic,
  .gch-home-category,
  .gch-home-category--buildings,
  .gch-home-collections__active,
  .gch-my-collection {
    block-size: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.gch-shell-active *,
  body.gch-shell-active *::before,
  body.gch-shell-active *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }

  .gch-home-mosaic,
  .gch-local-nav__inner,
  .gch-information__local-nav-inner,
  .gch-inspiration-tabs {
    scroll-snap-type: none;
  }

  .gch-hero__visual:hover img,
  .gch-category-grid a:hover,
  .gch-home-category:hover,
  .gch-home-category:hover img,
  .gch-home-collection-card:hover,
  .gch-home-collection-card:hover img,
  .gch-home-mosaic__item:hover img,
  .gch-information__route:hover {
    transform: none !important;
  }
}

@media (prefers-contrast: more) {
  .gch-home-category,
  .gch-home-collection-card,
  .gch-principles article,
  .gch-blueprint-grid article,
  .gch-explorer__form,
  .gch-my-collection,
  .gch-information__route {
    border-color: currentColor;
  }
}

@media (forced-colors: active) {
  .gch-local-runtime,
  .gch-my-collections__runtime,
  .gch-explorer__form,
  .gch-my-collection,
  .gch-information__route {
    border: 1px solid CanvasText;
  }
}
