:root {
    --font: "Stych", sans-serif;
}

.fs-4x {
    font-size: 4rem;
}

.fs-5x {
    font-size: 5rem;
}

.pb-12x {
    padding-bottom: 12rem;
}

.block-bg {
    position: relative;
}

.block-bg .bbg-bg,
.block-bg .bbg-bg video {
    width: 100%;
    height: auto;
}

.block-bg .bbg-bg:after {
    content: '';
    display: block;
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.block-bg .bbg-content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

@keyframes breathe {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}

.trigger-video {
    cursor: pointer;
}

.trigger-video .play-btn-overlay img {
    width: 8rem;
    -webkit-filter: drop-shadow(5px 5px 5px #222);
    filter: drop-shadow(5px 5px 5px #222);
}

.trigger-video:hover .play-btn-overlay img {
    animation: breathe 1000ms linear infinite;
}

/* BEGIN: Bootstrap Carousel */
.carousel-control-prev:hover,
.carousel-control-next:hover {
    background-color: rgba(0, 0, 0, 0.4);
}

.carousel-indicators [data-bs-target] {
    width: 22px;
    height: 22px;
    margin: 3px 4px;
    border-radius: 50%;
}

.carousel-indicators .active {
    width: 28px;
    height: 28px;
    margin: 0 4px;
}
/* END: Bootstrap Carousel */
