/* Shared stability fixes for the Samui content cluster. */
html, body { max-width: 100%; overflow-x: clip; }
main, section, article, aside, div { min-width: 0; }
h1, h2, h3, p, a { overflow-wrap: break-word; }
picture { display: block; max-width: 100%; }
img { height: auto; }
.hero-media { position: relative; overflow: hidden; }
.hero-media picture { height: 100%; }
.hero-media img { height: 100%; object-fit: cover; object-position: 50% 50%; }
.editorial-image img { height: auto; aspect-ratio: auto; object-fit: contain; }
.split-media img { height: auto; aspect-ratio: auto; object-fit: contain; }
.wrap > picture img { width: 100%; height: auto; border-radius: var(--radius); }
@media (max-width: 900px) {
  .hero-media { min-height: 0; aspect-ratio: 3 / 2; }
  .hero-media picture, .hero-media img { height: 100%; }
}
@media (max-width: 620px) {
  h1 { font-size: clamp(34px, 11vw, 48px); }
  .hero-copy { min-height: 0; }
  .hero-media { min-height: 0; aspect-ratio: 4 / 3; }
  .nav-shell, .crumbs, .wrap, .wrap-wide, .facts { width: min(100% - 20px, 1120px); }
  .table-wrap { overscroll-behavior-inline: contain; }
}
