/* Famyro Area Guide — layout v1.0 */
.famyro-container {
  width: min(var(--famyro-container-wide), calc(100% - (var(--famyro-page-gutter) * 2)));
  margin-inline: auto;
}

.famyro-container--narrow {
  width: min(var(--famyro-container-narrow), calc(100% - (var(--famyro-page-gutter) * 2)));
  margin-inline: auto;
}

.famyro-container--medium {
  width: min(var(--famyro-container-medium), calc(100% - (var(--famyro-page-gutter) * 2)));
  margin-inline: auto;
}

.famyro-section {
  padding-block: clamp(64px, 9vw, 120px);
}

.famyro-section--compact {
  padding-block: clamp(42px, 6vw, 76px);
}

.famyro-stack {
  display: flex;
  flex-direction: column;
  gap: var(--famyro-space-5);
}

.famyro-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--famyro-space-4);
}

.famyro-grid {
  display: grid;
  gap: var(--famyro-space-6);
}

.famyro-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.famyro-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.famyro-auto-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: var(--famyro-space-6);
}

@media (max-width: 767px) {
  .famyro-grid--2,
  .famyro-grid--3 {
    grid-template-columns: 1fr;
  }
}
