/**
 * Components Page
 * Organized showcase of all design system components
 */

.components-page__container.container {
    padding-top: 80px;
    padding-bottom: 80px;
}

.components-page {
    grid-column: 1 / -1;
    width: 100%;
}

.components-page__header {
    margin-bottom: 60px;
    text-align: center;
}

.components-page__title {
    margin: 0 0 12px 0;
    font-family: var(--font-display);
    font-size: var(--font-size-display-2-desktop);
    font-weight: 400;
    line-height: var(--line-height-display-2-desktop);
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: var(--color-content);
}

.components-page__subtitle {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--font-size-body-3-desktop);
    font-weight: 300;
    color: var(--color-content-a40);
}

.components-page__section {
    margin-bottom: 80px;
}

.components-page__section:last-child {
    margin-bottom: 0;
}

.components-page__section-title {
    margin: 0 0 32px 0;
    font-family: var(--font-display);
    font-size: var(--font-size-display-3-desktop);
    font-weight: 400;
    line-height: var(--line-height-display-3-desktop);
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: var(--color-content);
    padding-bottom: 16px;
    border-bottom: 1px solid var(--color-border-a8);
}

.components-page__item {
    margin-bottom: 40px;
}

.components-page__item--full {
    width: 100%;
}

.components-page__label {
    display: block;
    margin-bottom: 16px;
    font-family: var(--font-body);
    font-size: var(--font-size-body-4-desktop);
    font-weight: 400;
    color: var(--color-content-a40);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.components-page__hint {
    margin: -8px 0 12px 0;
    font-family: var(--font-body);
    font-size: var(--font-size-body-4-desktop);
    font-weight: 300;
    color: var(--color-content-a40);
    line-height: 1.3;
}

.resource-card-demo {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

@media (max-width: 768px) {
    .resource-card-demo {
        flex-direction: column;
        gap: 24px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .components-page__header {
        margin-bottom: 48px;
    }

    .components-page__section {
        margin-bottom: 64px;
    }

    .components-page__item {
        margin-bottom: 32px;
    }
}

@media (max-width: 768px) {
    .components-page__header {
        margin-bottom: 40px;
    }

    .components-page__title {
        font-size: var(--font-size-display-2-mobile);
        line-height: var(--line-height-display-2-mobile);
    }

    .components-page__subtitle {
        font-size: var(--font-size-body-3-mobile);
    }

    .components-page__section {
        margin-bottom: 48px;
    }

    .components-page__section-title {
        font-size: var(--font-size-display-3-mobile);
        line-height: var(--line-height-display-3-mobile);
        margin-bottom: 24px;
        padding-bottom: 12px;
    }

    .components-page__item {
        margin-bottom: 24px;
    }

    .components-page__label {
        font-size: var(--font-size-body-4-mobile);
        margin-bottom: 12px;
    }
}

