/**
 * Terms of Service page styles.
 */

 .terms-wrapper {
    padding-top: 7rem;
    padding-bottom: 6rem;
}

.terms-main-title {
    color: var(--az-navy);
    font-family: Georgia, "Times New Roman", serif;
}

.toc-label {
    letter-spacing: 0.08em;
}

.terms-sidebar {
    position: sticky;
    top: 8rem;
}

.terms-nav-link {
    display: block;
    min-height: 2.75rem;
    padding: 0.65rem 0 0.65rem 1rem;
    border-left: 3px solid transparent;
    color: #5f6770;
    font-size: 0.95rem;
    text-decoration: none;
}

.terms-nav-link:hover,
.terms-nav-link.active,
.terms-nav-link[aria-current="location"] {
    border-left-color: var(--az-bronze);
    color: var(--az-navy);
    font-weight: 700;
}

.terms-nav-link[aria-current="location"] {
    text-decoration: underline;
    text-decoration-thickness: 0.1em;
    text-underline-offset: 0.25em;
}

.terms-nav-link.nav-counterfeit {
    color: #a12424;
}

.terms-content [id] {
    scroll-margin-top: 9rem;
}

.terms-content h2 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #e2e5e8;
    color: var(--az-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.75rem;
}

.terms-content section:first-child h2 {
    margin-top: 0;
}

.terms-content h3 {
    margin-top: 1.5rem;
    color: #3f4a56;
    font-size: 1.2rem;
    font-weight: 700;
}

.terms-content p,
.terms-content li {
    color: #465463;
    font-size: 1rem;
    line-height: 1.7;
}

.terms-content p {
    margin-bottom: 1rem;
}

.terms-content ul,
.terms-content ol {
    margin-bottom: 1.5rem;
}

.alert-policy {
    margin: 2rem 0;
    padding: 1.5rem;
    border-left: 4px solid #a12424;
    border-radius: 0.25rem;
    background: #fff4f4;
}

.terms-content .alert-policy h2 {
    margin: 0 0 0.75rem;
    padding: 0;
    border: 0;
    color: #a12424;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
}

.terms-footer-note {
    margin-top: 3rem;
}

@media (max-width: 1199.98px) {
    .terms-content [id] {
        scroll-margin-top: 12rem;
    }
}

@media (max-width: 991.98px) {
    .terms-wrapper {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .terms-sidebar {
        position: static;
        margin-bottom: 2rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .terms-nav-link {
        transition: none;
    }
}