.page-style {
  --surface-accent: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(245, 245, 247, 0.78));
}

.home-shell {
  display: flex;
  flex-direction: column;
}

.page-style .page-shell,
.page-style .home-shell {
  gap: clamp(18px, 4vw, 28px);
}

.page-style .page-body.card {
  background: var(--surface-accent);
}

.home-grid,
.feature-grid {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 3vw, 22px);
}

.info-card {
  padding: clamp(22px, 3vw, 30px);
}

.home-grid .info-card h2,
.feature-grid .info-card h2 {
  margin-top: 0;
}

.note-list {
  margin-top: 12px;
}

.page-style .page-body {
  background: var(--surface-accent);
}

.page-style .page-body :first-child {
  margin-top: 0.25rem;
}

.group-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 10px;
}

.page-style .group-block {
  padding: 10px 12px;
  border: 1px solid rgba(15, 23, 42, 0.06);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.7);
}

.page-style .group-block h3 {
  font-size: 1.05rem;
}

@media screen and (max-width: 600px) {
  .info-card {
    padding: clamp(18px, 5vw, 26px);
  }
}
