﻿.teaser .teaser__col {
    display: flex;
    flex-direction: column
}

.teaser .tag {
    margin-right: 16px
}

.teaser .teaser__format-tags, .teaser .teaser__tags {
    display: flex;
    flex-wrap: wrap
}

    .teaser .teaser__format-tags .tag, .teaser .teaser__tags .tag {
        margin-bottom: 16px
    }

.teaser .teaser__product-tags {
    display: flex;
    flex-wrap: wrap;
    padding: 8px 0
}

.teaser .teaser__title {
    font-family: DM Sans,sans-serif;
    font-size: 23px;
    line-height: 120%;
    font-weight: 700;
    display: block;
    margin-bottom: 8px;
    line-height: 1.4
}

.teaser .teaser__dates {
    color: #707070;
    display: flex
}

@media (max-width: 375px) {
    .teaser .teaser__dates {
        flex-direction: column
    }

        .teaser .teaser__dates .bullet {
            display: none
        }

        .teaser .teaser__dates .teaser__date, .teaser .teaser__dates .teaser__time {
            margin: 0
        }
}

.teaser .teaser__date {
    margin-right: 4px;
    margin-bottom: 4px
}

.teaser .teaser__time {
    margin-left: 4px;
    color: #707070
}

.teaser .teaser__subtext {
    color: #707070;
    margin-bottom: 12px
}

.teaser .teaser__long-text, .teaser .bio-teaser {
    margin-bottom: 12px
}

.teaser .purchase-options-wrap {
    display: flex;
    align-items: center;
    margin: 24px 0
}

@media (max-width: 991px) {
    .teaser .purchase-options-wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px
    }
}

.teaser .purchase-options {
    cursor: pointer;
    border: 2px solid #000000;
    display: block;
    width: 327px;
    position: relative;
    margin-right: 24px
}

    .teaser .purchase-options:after {
        content: "";
        background-image: url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%grey%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%grey%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E);
        background-repeat: no-repeat;
        background-size: 12px;
        width: 12px;
        height: 12px;
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-50%)
    }

    .teaser .purchase-options.open:after {
        transform: translateY(-50%) rotate(180deg)
    }

    .teaser .purchase-options .purchase-option__name {
        font-weight: 700;
        font-size: 1rem
    }

    .teaser .purchase-options .purchase-option__cost {
        font-size: .875rem
    }

    .teaser .purchase-options span {
        color: #ccc
    }

    .teaser .purchase-options .selected-option {
        cursor: pointer;
        max-width: 100%;
        padding: 16px
    }

    .teaser .purchase-options .options-list {
        display: none;
        position: absolute;
        z-index: 1;
        width: 327px;
        border: 2px solid #000000;
        margin-left: -2px;
    }

        .teaser .purchase-options .options-list li {
            background-color: #fff;
            display: block;
            padding: 16px;
        }

            .teaser .purchase-options .options-list li:hover {
                background-color: #f6f8f8;
            }

.teaser--w-calendar {
    display: flex;
    flex-wrap: nowrap;
    gap: 24px
}

.teaser__col-vert-center {
    align-self: center;
}

@media (max-width: 820px) {
    .teaser--w-calendar {
        flex-direction: column
    }

        .teaser--w-calendar .cta-date {
            align-self: baseline
        }
}

.teaser--w-purchase {
    border-bottom: 1px solid #c7cac9;
    padding-bottom: 24px;
    margin-bottom: 24px
}

@media (min-width: 821px) {
    .teaser--w-image {
        display: flex;
        gap: 16px;
        flex-direction: row-reverse;
        gap: 24px
    }
}

@media (min-width: 821px) and (min-width: 821px) {
    .teaser--w-image {
        gap: 32px
    }
}

@media (min-width: 821px) {
    .teaser--w-image > *:first-of-type {
        flex: 1 1 calc(33.3333333333% - 16px);
        width: calc(33.3333333333% - 16px)
    }
}

@media (min-width: 821px) and (min-width: 821px) {
    .teaser--w-image > *:first-of-type {
        flex: 1 1 calc(33.3333333333% - 32px);
        width: calc(33.3333333333% - 32px)
    }
}

@media (min-width: 821px) {
    .teaser--w-image > *:last-of-type {
        flex: 1 1 calc(66.6666666667% - 16px);
        width: calc(66.6666666667% - 16px)
    }
}

@media (min-width: 821px) and (min-width: 821px) {
    .teaser--w-image > *:last-of-type {
        flex: 1 1 calc(66.6666666667% - 32px);
        width: calc(66.6666666667% - 32px)
    }
}

@media (max-width: 820px) {
    .teaser--w-image .teaser__image {
        margin-bottom: 24px
    }
}
