/* Page-owned styles for Terms and Conditions */

.terms-main {
    width: 100%;
    background-color: var(--color-ink);
    color: var(--color-cream);
}

.terms-article {
    width: 100%;
}

/* Hero */
.terms-hero {
    width: 100%;
    padding-block: var(--space-9) var(--space-7);
    background: linear-gradient(180deg, var(--color-felt-deep) 0%, var(--color-ink) 100%);
    border-bottom: var(--border-wood-40);
}

.terms-hero__inner {
    width: 100%;
    max-width: var(--container-narrow);
    margin-inline: auto;
    padding-inline: var(--space-5);
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}

.terms-hero__eyebrow {
    align-self: flex-start;
}

.terms-hero__title {
    margin-block-end: 0;
    color: var(--color-cream);
}

.terms-hero__lede {
    font-size: var(--font-size-body-large);
    line-height: 1.65;
    color: var(--color-cream-muted);
    max-width: 65ch;
    margin-block-end: 0;
}

.terms-hero__date {
    font-size: var(--font-size-caption);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 500;
    color: var(--color-brass);
    margin-block-end: 0;
}

/* Body container */
.terms-body {
    width: 100%;
    padding-block: var(--space-8) var(--space-9);
}

/* Sections */
.terms-section {
    width: 100%;
    margin-block-end: var(--space-7);
}

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

.terms-section__inner {
    width: 100%;
    max-width: var(--container-narrow);
    margin-inline: auto;
    padding-inline: var(--space-5);
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
}

.terms-section__inner--reading {
    max-width: var(--container-narrow);
}

.terms-section__inner--panel {
    border-radius: var(--radius-2);
    padding: var(--space-6);
    border: var(--border-wood);
}

.terms-section__inner--felt {
    background-color: var(--color-felt);
}

.terms-section__inner--felt-deep {
    background-color: var(--color-felt-deep);
}

.terms-section__inner--burgundy {
    background-color: var(--color-burgundy);
}

.terms-section__inner--wood-border {
    border-left: 4px solid var(--color-wood);
    padding-left: var(--space-6);
}

.terms-section h2 {
    margin-block-end: 0;
    padding-block-end: var(--space-3);
    border-bottom: 1px solid rgba(176, 141, 87, 0.4);
}

.terms-content-block {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.terms-content-block h3 {
    margin-block-end: 0;
}

.terms-content-block p {
    max-width: 65ch;
    margin-block-end: 0;
}

.terms-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    margin-block-start: var(--space-2);
    padding-inline-start: var(--space-5);
}

.terms-list li {
    position: relative;
    padding-inline-start: var(--space-2);
    line-height: 1.6;
    color: var(--color-cream);
}

.terms-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-brass);
}

.terms-definition-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    margin-block-start: var(--space-2);
}

.terms-definition-item {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.terms-definition-item dt {
    font-weight: 600;
    color: var(--color-cream);
}

.terms-definition-item dd {
    margin-inline-start: 0;
    color: var(--color-cream-muted);
    line-height: 1.6;
}

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

.terms-contact-list li {
    color: var(--color-cream);
    line-height: 1.6;
}

.terms-contact-list a {
    color: var(--color-cream-muted);
    border-bottom: 1px solid var(--color-brass);
    transition: color var(--transition-fast), border-color var(--transition-fast);
}

.terms-contact-list a:hover {
    color: var(--color-signal);
    border-bottom-color: var(--color-signal);
}

/* Tablet */
@media (min-width: 768px) {
    .terms-hero {
        padding-block: var(--space-10) var(--space-8);
    }

    .terms-hero__inner,
    .terms-section__inner {
        padding-inline: var(--space-6);
    }

    .terms-section__inner--panel {
        padding: var(--space-7);
    }

    .terms-body {
        padding-block: var(--space-9) var(--space-10);
    }

    .terms-section {
        margin-block-end: var(--space-8);
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .terms-hero__inner,
    .terms-section__inner {
        padding-inline: var(--space-8);
    }

    .terms-section__inner--panel {
        padding: var(--space-8);
    }

    .terms-body {
        padding-block: var(--space-10) var(--space-11);
    }

    .terms-section {
        margin-block-end: var(--space-9);
    }
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .terms-hero {
        padding-block: var(--space-7) var(--space-6);
    }

    .terms-hero__inner {
        padding-inline: var(--space-5);
    }

    .terms-section__inner {
        padding-inline: var(--space-5);
    }

    .terms-section__inner--panel {
        padding: var(--space-5);
        border-radius: var(--radius-2);
    }

    .terms-section__inner--wood-border {
        border-left-width: 2px;
        padding-left: var(--space-4);
    }

    .terms-body {
        padding-block: var(--space-6) var(--space-7);
    }

    .terms-section {
        margin-block-end: var(--space-6);
    }

    .terms-content-block p {
        max-width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .terms-contact-list a,
    .terms-contact-list a:hover {
        transition-duration: 0.01ms;
    }
}
