html {
    @media (prefers-reduced-motion: no-preference) {
        scroll-behavior: initial !important;
    }
}

html:has(.is--smooth) {
    @media (prefers-reduced-motion: no-preference) {
        scroll-behavior: smooth !important;
    }
}

.downloadcenter-filter {
    --_filter-row-gap: var(--filter-row-gap, 5rem);
    --_filter-group-color: var(--filter-group-color, var(--bs-body-color, #000));
    --_filter-group-bg: var(--filter-group-bg, var(--bs-light, #f1f1f1));
    --_filter-header-bg: var(--filter-header-bg, var(--_filter-group-bg, var(--bs-light, #f1f1f1)));
    --_filter-group-padding-y: var(--filter-group-padding-y, 1.5rem);
    --_filter-group-padding-x: var(--filter-group-padding-x, 1.5rem);
    --_download-item-bg: var(--download-item-bg, var(--bs-light, #f1f1f1));
    --_download-item-border-width: var(--download-item-border-width, var(--bs-border-width, 2px));
    --_download-item-border-color: var(--download-item-border-color, var(--bs-border-color, var(--_download-item-bg, #f1f1f1)));

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: var(--_filter-row-gap);

    .filter-group {
        color: var(--_filter-group-color);
        background-color: var(--_filter-group-bg);
        padding-block: var(--_filter-group-padding-y);
        padding-inline: var(--_filter-group-padding-x);
    }

    .downloadcenter-filter-header {
        background-color: var(--_filter-header-bg);
    }

    .downloadcenter-filter-form,
    .downloadcenter-filter-results {
        width: 100%;
    }
}

.download-placeholder-thumbnail {
    --_thumbnail-bg: var(--thumbnail-bg, var(--bs-white, #f1f1f1));

    aspect-ratio: 5 / 7;
    background-color: var(--_thumbnail-bg);
    display: flex;
    justify-content: center;
    align-items: center;
}

.download-item {
    --_item-bg: var(--item-bg, var(--bs-light, #f1f1f1));
    --_item-padding-y: var(--item-padding-y, 1.5rem);
    --_item-padding-x: var(--item-padding-x, 1.5rem);

    background-color: var(--_item-bg);
    padding-block: var(--_item-padding-y);
    padding-inline: var(--_item-padding-x);

    .document-name {
        hyphens: auto;
    }

    .download-text p:last-child {
        margin-bottom: 0;
    }

    &.is--list {
        --_item-bg: var(--item-bg, transparent);
        --_item-padding-y: var(--item-padding-y, 1rem);
        --_item-padding-x: var(--item-padding-x, 1rem);
    }

    &.is--table {
        background-color: var(--_download-item-bg);

        @media screen and (width >= 992px) {
            background-color: transparent;
            border-bottom: var(--_download-item-border-width) solid var(--_download-item-border-color);
        }
    }

    &.is--table-card {
        --_item-bg: var(--item-bg, var(--_download-item-bg, #f1f1f1));
        --_item-padding-y: var(--item-padding-y, 1rem);
        --_item-padding-x: var(--item-padding-x, 1rem);
    }
}

.downloadcenter-single {
    --_min-breakpoint-width: var(--min-breakpoint-width, 515px);

    container-name: downloadcenter-item-container;
    container-type: inline-size;

    .download-item {
        --_item-row-gap: var(--item-row-gap, 1.25rem);
        --_item-column-gap: var(--item-column-gap, 1.25rem);

        display: flex;
        row-gap: var(--_item-row-gap);
        column-gap: var(--_item-column-gap);
    }

    .download-item-media {
        flex-shrink: 0;
        width: 100%;
        min-width: 6.875rem;
        max-width: 15rem;
    }

    .download-item-content {
        flex-grow: 0;
    }

    @container downloadcenter-item-container (width < 472px) {
        .download-item {
            flex-direction: column;
            align-items: flex-start;
        }
    }
}
