/* Page-specific styles for Általános Szerződési Feltételek */

.aszf-page {
  padding-block: var(--space-3xl);
}

/* Section spacing */
.aszf-section {
  margin-block-end: var(--space-2xl);
}

.aszf-section:last-child {
  margin-block-end: 0;
}

/* Intro section */
.aszf-intro {
  margin-block-end: var(--space-2xl);
}

.aszf-intro__text-block {
  max-width: 720px;
  margin-inline: auto;
  text-align: center;
}

.aszf-intro__text-block h1 {
  margin-block-end: var(--space-md);
}

/* Table of Contents */
.aszf-toc {
  margin-block-end: var(--space-2xl);
}

.aszf-toc__container {
  max-width: 720px;
  margin-inline: auto;
}

.aszf-toc__container h2 {
  margin-block-end: var(--space-md);
}

.aszf-toc__container p {
  margin-block-end: var(--space-md);
}

.aszf-toc__list {
  list-style: decimal inside;
  padding-left: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.aszf-toc__list li {
  margin: 0;
}

.aszf-toc__list a {
  color: var(--accent-pink);
  text-decoration: none;
  transition: text-shadow 0.2s ease-in-out;
}

.aszf-toc__list a:hover {
  text-shadow: 0 0 8px rgba(255, 105, 180, 0.5);
}

/* Content blocks for sections */
.aszf-section__content-block {
  max-width: 720px;
  margin-inline: auto;
}

.aszf-section__content-block h2 {
  margin-block-end: var(--space-md);
}

.aszf-section__content-block h3 {
  margin-block-start: var(--space-lg);
  margin-block-end: var(--space-sm);
}

.aszf-section__content-block p {
  margin-block-end: var(--space-md);
}

.aszf-section__content-block p:last-child {
  margin-block-end: 0;
}

/* Links */
.aszf-link {
  color: var(--accent-pink);
  text-decoration: none;
  transition: text-shadow 0.2s ease-in-out;
}

.aszf-link:hover {
  text-shadow: 0 0 8px rgba(255, 105, 180, 0.5);
}

/* Responsive adjustments */
@media (max-width: 48em) {
  .aszf-page {
    padding-block: var(--space-2xl);
  }

  .aszf-intro__text-block,
  .aszf-toc__container,
  .aszf-section__content-block {
    max-width: 100%;
    padding-inline: var(--space-md);
  }

  .aszf-intro__text-block {
    text-align: left;
  }
}
