/* #### Misc Components #### */

/* Vertical Center Block */
.vertical-centered-block {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    z-index: 100;
}

.vertical-centered-block .v-holder {
    display: table-cell;
    vertical-align: middle;
}

/* WP Video */
.wp-video-shortcode {
    border-radius: var(--df-border-radius);
    margin-bottom: var(--df-margin-unit);
    overflow: hidden;
}

/* Responsive Video Embeds */
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    /*16:9*/
    padding-top: 3rem;
    margin-bottom: 6rem;
    height: 0;
    overflow: hidden;
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.1);
}

.video-container iframe,
.video-container object,
.video-container embed,
.video-container .video-thumb {
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.video-container .video-thumb {
    z-index: 2;
    cursor: pointer;
    pointer-events: none;
}

.video-container iframe {
    display: block;
}

/* Avatar */
img.avatar {
    border-radius: 50%;
    box-shadow: none;
    max-width: 100%;
}

/* Circled Char */
.circled-char {
    position: relative;
    left: 0;
    display: inline-block;
    width: 3rem;
    height: 3rem;
    background: rgba(0, 0, 0, 0.17);
    text-align: center;
    color: #fff;
    font-weight: normal;
    margin-right: 0.8rem;
    padding: 0.4rem;
    font-size: 1.4rem;
    border-radius: 50%;
    transform: scale(0.95);
}

/* Query Monitor tab */
.sh-iframe-preview #query-monitor-main {
    display: none;
    pointer-events: none;
    visibility: hidden;
}

/* Lazy Loaded Images */
img[loading="lazy"] {
    height: auto;
}

/* Iframe Map Holder */
.iframe-map-holder {
    font-size: 0;
    margin-bottom: 1.5rem;
    border: .4rem solid #fff;
    box-shadow: 0 .2rem .4rem rgba(0, 0, 0, .05);
    background: var(--light-bg-color);
}

.iframe-map-holder iframe {
    width: 100%;
    height: 12rem;
    margin: 0;
}

/* Content Scroll Progress Bar */
#content-scroll-progress-bar {
    display: none;
    pointer-events: none;
}

@media(max-width: 992px) {
    #content-scroll-progress-bar {
        position: absolute;
        bottom: -.3rem;
        left: 0;
        display: block;
        height: .3rem;
        background: var(--highlight-color-alt);
    }

    .menu-active #content-scroll-progress-bar {
        display: none;
    }
}