* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border: none;
}

.site-container {
  max-width: 640px;
  padding: 1.5rem 1rem 3rem;
  margin: 0 auto;
}

/* Base containers */
.stack  { display: flex; flex-direction: column; }
.row    { display: flex; flex-direction: row; }
.center { text-align: center; align-items: center; justify-content: center; }

/* Gap scale */
.main    { gap: 2rem; }
.section { gap: 1rem; }
.content { gap: 0.5rem; }
.item    { gap: 0.25rem; }

/* Spacers */
.spacer-v-small  { min-height: 0.25rem; }
.spacer-v-medium { min-height: 0.5rem; }
.spacer-v-large  { min-height: 1rem; }

.spacer-h-small  { display: inline-block; min-width: 0.25rem; }
.spacer-h-medium { display: inline-block; min-width: 0.5rem; }
.spacer-h-large  { display: inline-block; min-width: 1rem; }

/* Grid */
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }

/* Site layout */
section { padding: 1.25rem 1.5rem; }

ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-left: 1.25rem;
}

.clinic > h3 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.schedule-item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  row-gap: 0.125rem;
  padding: 0.5rem 0.75rem;
}
