/* Page-owned styles for Felhasználási feltételek */

.terms-page {
    padding-block: var(--space-xl);
    background-color: var(--color-cream);
}

.terms-page__container {
    max-width: 800px;
    margin-inline: auto;
    padding-inline: var(--container-pad);
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
}

.terms-section {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
}

.terms-section--intro {
    gap: var(--space-lg);
}

.terms-page__title {
    font-size: var(--text-h1);
    line-height: var(--leading-h1);
    margin-block-end: 0;
    color: var(--color-ink);
}

.terms-section__heading {
    font-size: var(--text-h2);
    line-height: var(--leading-h2);
    margin-block-end: 0;
    color: var(--color-ink);
}

.terms-section__subheading {
    font-size: var(--text-h3);
    line-height: var(--leading-h3);
    margin-block-end: var(--space-xs);
    color: var(--color-ink);
}

.terms-section__content {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    min-width: 0;
}

.terms-section__content > * {
    min-width: 0;
}

.terms-section__lead {
    font-size: 1.0625rem;
    line-height: 1.6;
    color: var(--color-ink);
    margin-block-end: 0;
}

.terms-section__content p {
    max-width: 70ch;
    margin-block-end: 0;
}

.terms-section__content ul {
    max-width: 70ch;
    margin-block-end: 0;
}

.terms-list {
    list-style: none;
    padding-inline-start: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}

.terms-list > li {
    position: relative;
    padding-inline-start: 1.5rem;
    overflow-wrap: break-word;
}

.terms-list > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 0.5rem;
    height: 0.5rem;
    border-radius: var(--radius-round);
    background-color: var(--color-terracotta);
}

.terms-list--contact {
    gap: var(--space-sm);
}

.terms-highlight {
    color: var(--color-terracotta-dark);
    font-weight: 700;
}

.terms-section a {
    color: var(--color-terracotta-dark);
    text-decoration: underline;
    text-decoration-color: rgba(211, 162, 151, 0.55);
    text-underline-offset: 0.18em;
    transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

.terms-section a:hover,
.terms-section a:focus-visible {
    color: var(--color-terracotta);
    text-decoration-color: var(--color-terracotta);
}

@media (max-width: 767px) {
    .terms-page {
        padding-block: var(--space-lg);
    }

    .terms-page__container {
        gap: var(--space-lg);
    }

    .terms-section {
        gap: var(--space-sm);
    }

    .terms-section--intro {
        gap: var(--space-md);
    }

    .terms-section__content {
        gap: var(--space-xs);
    }

    .terms-section__content p,
    .terms-section__content ul {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .terms-page {
        padding-block: var(--space-md);
    }

    .terms-page__container {
        padding-inline: var(--space-sm);
        gap: var(--space-md);
    }

    .terms-section {
        gap: var(--space-xs);
    }

    .terms-section--intro {
        gap: var(--space-sm);
    }

    .terms-section__content {
        gap: var(--space-xs);
    }

    .terms-page__title {
        font-size: 1.75rem;
        line-height: 1.3;
    }

    .terms-section__heading {
        font-size: 1.35rem;
        line-height: 1.35;
    }

    .terms-section__subheading {
        font-size: 1.1rem;
        line-height: 1.4;
    }

    .terms-section__lead {
        font-size: 1rem;
        line-height: 1.5;
    }
}
