/* Page-scoped styles for Terms and Conditions */
.terms-main {
    width: 100%;
}

.terms-section {
    padding-block: var(--space-large-section);
}

.terms-section-sage {
    background-color: var(--color-sage);
}

.terms-section-mist {
    background-color: var(--color-mist);
}

.terms-content {
    width: 100%;
    max-width: 800px;
    margin-inline: auto;
    padding-inline: var(--container-padding);
}

.terms-content-narrow {
    max-width: 800px;
}

.terms-lead {
    font-size: var(--text-h3);
    line-height: var(--leading-h3);
    margin-bottom: var(--space-comfortable);
}

.terms-address-box {
    background-color: var(--color-sage);
    border-radius: var(--radius-extra-large);
    padding: var(--space-comfortable);
    margin-bottom: var(--space-base);
}

.terms-address-box p {
    margin-bottom: 0;
}

.terms-callout {
    border-radius: var(--radius-extra-large);
    padding: var(--space-comfortable);
    margin-top: var(--space-comfortable);
}

.terms-callout-peach {
    background-color: var(--color-peach);
}

.terms-subheading {
    font-size: var(--text-h3);
    line-height: var(--leading-h3);
    margin-bottom: var(--space-tight);
}

.terms-disclaimer-card {
    width: 100%;
    max-width: 700px;
    margin-inline: auto;
    padding: var(--space-roomy);
    background-color: var(--color-peach);
    border-radius: var(--radius-extra-large);
    box-shadow: var(--shadow-soft);
}

.terms-disclaimer-card h2 {
    margin-bottom: var(--space-comfortable);
}

.terms-disclaimer-card h3 {
    margin-top: var(--space-comfortable);
    margin-bottom: var(--space-tight);
}

.terms-disclaimer-card p {
    margin-bottom: var(--space-base);
}

.terms-disclaimer-card ul {
    margin-bottom: var(--space-base);
}

.terms-list {
    padding-left: var(--space-comfortable);
    margin-bottom: var(--space-comfortable);
}

.terms-list li {
    margin-bottom: var(--space-tight);
}

.terms-contact-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: var(--space-comfortable);
}

.terms-contact-list li {
    margin-bottom: var(--space-tight);
}

.terms-effective-date {
    display: inline-block;
    background-color: var(--color-peach);
    border-radius: var(--radius-medium);
    padding: var(--space-tight) var(--space-base);
    font-weight: var(--weight-bold);
    margin-top: var(--space-comfortable);
}

@media (max-width: 768px) {
    .terms-section {
        padding-block: var(--space-section);
    }

    .terms-disclaimer-card {
        padding: var(--space-comfortable);
    }

    .terms-content,
    .terms-disclaimer-card {
        padding-inline: var(--container-padding);
    }

    .terms-lead {
        font-size: var(--text-h3);
        line-height: var(--leading-h3);
    }
}

@media (max-width: 480px) {
    .terms-disclaimer-card {
        max-width: 100%;
    }

    .terms-effective-date {
        display: block;
        text-align: center;
    }
}
