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

.site-container--content {
  max-width: var(--ua-container-content);
}

.site-main {
  min-width: 0;
}

.page-content,
.site-main--shop {
  min-width: 0;
}

.ua-section {
  position: relative;
  padding-block: clamp(2.75rem, 7vw, 6.5rem);
}

.ua-section--compact {
  padding-block: clamp(2rem, 5vw, 4rem);
}

.ua-section--surface {
  background: var(--ua-color-surface);
}

.ua-section--gradient {
  overflow: hidden;
  background: var(--ua-gradient-page);
}

.ua-stack {
  display: flex;
  flex-direction: column;
  gap: var(--ua-stack-gap, var(--ua-space-6));
}

.ua-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ua-cluster-gap, var(--ua-space-3));
}

.ua-grid {
  display: grid;
  grid-template-columns: repeat(var(--ua-grid-columns, 3), minmax(0, 1fr));
  gap: var(--ua-grid-gap, var(--ua-space-6));
}

.ua-grid--2 { --ua-grid-columns: 2; }
.ua-grid--3 { --ua-grid-columns: 3; }
.ua-grid--4 { --ua-grid-columns: 4; }

.ua-split {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: clamp(1rem, 3vw, 2rem);
  align-items: start;
}

.ua-prose {
  width: min(100%, var(--ua-container-content));
}

.ua-prose > *:last-child {
  margin-bottom: 0;
}

@media (max-width: 900px) {
  .ua-grid--4 { --ua-grid-columns: 2; }

  .ua-split {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  :root { --ua-gutter: .875rem; }

  .ua-grid,
  .ua-grid--2,
  .ua-grid--3,
  .ua-grid--4 {
    --ua-grid-columns: 1;
  }
}
