.crisp-cards,
.crisp-cards * {
    box-sizing: border-box;
}

.crisp-cards {
    background-color: #eaeaea;
    color: #201d1d;
    font-family: Haffer, Arial, sans-serif;
    position: relative;
    overflow: hidden;
    min-height: min(42rem, 82vh);
}

.crisp-cards.is--hidden {
    opacity: 0;
    visibility: hidden;
}

.crisp-cards__stage {
    min-height: inherit;
    padding: clamp(1.5rem, 2.4vw, 2.5rem);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: clamp(1.5rem, 3vw, 2.25rem);
}

.crisp-cards__top,
.crisp-cards__bottom {
    width: 100%;
    display: flex;
    justify-content: center;
}

.crisp-cards__eyebrow,
.opc-CrispHeroSlider-preview__label {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    letter-spacing: .28em;
    text-transform: uppercase;
    font-size: .72rem;
    color: rgba(32, 29, 29, .72);
}

.crisp-cards__eyebrow::before,
.opc-CrispHeroSlider-preview__label::before {
    content: "";
    width: 2.5rem;
    height: 1px;
    background: rgba(32, 29, 29, .28);
}

.crisp-loader {
    justify-content: center;
    align-items: center;
    width: 100%;
    font-size: 1vw;
    display: flex;
    position: relative;
    overflow: hidden;
}

.crisp-loader__wrap {
    justify-content: center;
    align-items: center;
    display: flex;
    position: relative;
}

.crisp-loader__groups {
    position: relative;
    overflow: hidden;
}

.crisp-loader__group {
    border-radius: .5em;
    justify-content: center;
    align-items: center;
    display: flex;
    position: relative;
}

.crisp-loader__single {
    padding-left: 1em;
    padding-right: 1em;
    position: relative;
}

.crisp-loader__media {
    border-radius: .5em;
    justify-content: center;
    align-items: center;
    width: 10em;
    height: 10em;
    display: flex;
    position: relative;
}

.crisp-loader__cover-img {
    object-fit: cover;
    border-radius: inherit;
    width: 100%;
    height: 100%;
    position: absolute;
}

.crisp-loader__group.is--relative {
    position: relative;
    left: 100%;
}

.crisp-loader__group.is--duplicate {
    position: absolute;
}

.crisp-loader__cover-img.is--scale-down {
    will-change: transform;
}

.crisp-loader__fade {
    pointer-events: none;
    background-image: linear-gradient(90deg, #eaeaea 20%, #0000);
    width: 5em;
    height: calc(100% + 2px);
    position: absolute;
    top: -1px;
    left: -1px;
}

.crisp-loader__fade.is--duplicate {
    left: auto;
    right: -1px;
    transform: scaleX(-1);
}

.crisp-cards__thumbs {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    padding: 1em;
    display: flex;
    overflow: hidden;
}

.crisp-cards__thumb {
    border: 1px solid transparent;
    border-radius: .25em;
    width: 3.5em;
    height: 3.5em;
    position: relative;
}

.crisp-cards__thumb.is--current {
    border-color: #201d1d;
}

.crisp-cards--empty {
    min-height: min(34rem, 70vh);
    display: grid;
    place-content: center;
    padding: clamp(2rem, 4vw, 4rem);
}

.crisp-cards__empty {
    text-align: center;
    display: grid;
    gap: 1rem;
}

.crisp-cards__empty-title,
.opc-CrispHeroSlider-preview__title {
    margin: 0;
    font-family: Haffer XH, Arial, sans-serif;
    font-size: clamp(1.7rem, 4vw, 3rem);
    line-height: .96;
    letter-spacing: -.04em;
}

.crisp-cards__empty-copy,
.opc-CrispHeroSlider-preview__meta {
    margin: 0;
    color: rgba(32, 29, 29, .68);
    font-size: 1rem;
}

.opc-CrispHeroSlider-preview {
    position: relative;
    min-height: 18rem;
    padding: 1.5rem;
    overflow: hidden;
    border-radius: .55rem;
    background:
        linear-gradient(180deg, rgba(24, 18, 12, .08) 0%, rgba(24, 18, 12, .64) 100%),
        #dcd4c7 center / cover no-repeat;
    color: #f6f1e8;
}

.opc-CrispHeroSlider-preview__overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 18%, rgba(195, 162, 107, .25), transparent 30%),
        linear-gradient(180deg, rgba(24, 18, 12, .08) 0%, rgba(24, 18, 12, .68) 100%);
}

.opc-CrispHeroSlider-preview__copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: .75rem;
    max-width: 24rem;
}

@font-face {
    font-family: 'Haffer';
    src: url('https://cdn.prod.website-files.com/69158db916f2854de7fae735/69158dbc16f2854de7fae7d9_HafferRegular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Haffer XH';
    src: url('https://cdn.prod.website-files.com/69158db916f2854de7fae735/69158dbc16f2854de7fae7d0_HafferXHRegular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@media (max-width: 767.98px) {
    .crisp-cards {
        min-height: min(34rem, 72vh);
    }

    .crisp-cards__stage {
        padding: 1.25rem;
    }

    .crisp-loader {
        font-size: 1.8vw;
    }
}
