.ap-main { }

.ap-intro-container {
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
}

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

.ap-gastro-grid {
  display: grid;
  grid-template-columns: minmax(0, 60%) minmax(0, 40%);
  gap: var(--space-5);
  align-items: start;
}

.ap-gastro-text { min-width: 0; }
.ap-gastro-image img { width: 100%; border-radius: var(--radius-md); }

.ap-poker-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.ap-poker-grid img { margin-top: var(--space-3); border-radius: var(--radius-md); }

.ap-access-container {
  max-width: 700px;
  margin-inline: auto;
}

.ap-access-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

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

.ap-steps-container {
  max-width: 900px;
  margin-inline: auto;
}

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

.ap-responsible-container {
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
}

.ap-conclusion-container {
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
}

@media (max-width: 900px) {
  .ap-vision-grid,
  .ap-model-grid,
  .ap-steps-grid {
    grid-template-columns: 1fr;
  }

  .ap-gastro-grid,
  .ap-poker-grid {
    grid-template-columns: 1fr;
  }
}