/* Animations */
@-webkit-keyframes e-hotspot-soft-beat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1); }
    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1); } }
@keyframes e-hotspot-soft-beat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1); }
    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1); } }

@-webkit-keyframes e-hotspot-expand {
    from {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        opacity: 1; }
    to {
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
        opacity: 0; } }

@keyframes e-hotspot-expand {
    from {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        opacity: 1; }
    to {
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
        opacity: 0; } }

/* Hotspot Wrapper */
.elementor-widget-twbb_hotspot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: var(--background-align);
    -ms-flex-pack: var(--background-align);
    justify-content: var(--background-align); }
.elementor-widget-twbb_hotspot .elementor-widget-container {
    position: relative;
    display: inline-block;
    width: var(--container-width);
    max-width: var(--container-max-width);
    height: var(--container-height); }
.elementor-widget-twbb_hotspot .elementor-widget-container > img {
    display: block;
    width: var(--image-width, auto);
    height: var(--container-height);
    opacity: var(--opacity, 1); }

/* Each Hotspot */
.e-hotspot {
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    /* Hotspot Button Animations */
    /* End: Hotspot Button Animations */ }
.e-hotspot--position-left.e-hotspot--position-top {
    -webkit-transform: translate(calc( -1 * var( --hotspot-translate-x )), calc( -1 * var( --hotspot-translate-y )));
    -ms-transform: translate(calc( -1 * var( --hotspot-translate-x )), calc( -1 * var( --hotspot-translate-y )));
    transform: translate(calc( -1 * var( --hotspot-translate-x )), calc( -1 * var( --hotspot-translate-y ))); }
.e-hotspot--position-left.e-hotspot--position-bottom {
    -webkit-transform: translate(calc( -1 * var( --hotspot-translate-x )), var(--hotspot-translate-y));
    -ms-transform: translate(calc( -1 * var( --hotspot-translate-x )), var(--hotspot-translate-y));
    transform: translate(calc( -1 * var( --hotspot-translate-x )), var(--hotspot-translate-y)); }
.e-hotspot--position-right.e-hotspot--position-top {
    -webkit-transform: translate(var(--hotspot-translate-x), calc( -1 * var( --hotspot-translate-y )));
    -ms-transform: translate(var(--hotspot-translate-x), calc( -1 * var( --hotspot-translate-y )));
    transform: translate(var(--hotspot-translate-x), calc( -1 * var( --hotspot-translate-y ))); }
.e-hotspot--position-right.e-hotspot--position-bottom {
    -webkit-transform: translate(var(--hotspot-translate-x), var(--hotspot-translate-y));
    -ms-transform: translate(var(--hotspot-translate-x), var(--hotspot-translate-y));
    transform: translate(var(--hotspot-translate-x), var(--hotspot-translate-y)); }
.e-hotspot--active {
    z-index: 2; }
.e-hotspot__outer-circle, .e-hotspot__inner-circle {
    content: "";
    display: inline-block;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    border-radius: 50%; }
.e-hotspot__inner-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: var(--hotspot-color);
    padding: calc( var(--hotspot-size, 18px) / 2); }
.e-hotspot__outer-circle {
    background-color: var(--hotspot-color);
    padding: var(--hotspot-padding, 4px);
    width: var(--hotspot-size, 18px);
    height: var(--hotspot-size, 18px); }
.e-hotspot--icon .e-hotspot__button {
    line-height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    font-size: var(--hotspot-size, 18px);
    width: var(--hotspot-size, 18px);
    height: var(--hotspot-size, 18px); }
.e-hotspot__icon, .e-hotspot__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
.e-hotspot__icon svg, .e-hotspot__label svg {
    width: var(--hotspot-size, 18px);
    height: auto; }
.e-hotspot__button {
    cursor: pointer;
    position: relative;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: var(--hotspot-color);
    font-size: var(--hotspot-size, 18px);
    min-width: var(--hotspot-button-width);
    min-height: var(--hotspot-button-height); }
.e-hotspot__button:before {
    z-index: -2;
    content: "";
    width: 100%;
    height: 100%;
    left: -5px;
    top: -5px;
    position: absolute;
    padding: 5px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box; }
.e-hotspot__button svg {
    fill: var(--hotspot-color); }
.e-hotspot:not(.e-hotspot--circle) .e-hotspot__button {
    min-width: var(--hotspot-min-width);
    min-height: var(--hotspot-min-height);
    background-color: var(--hotspot-box-color);
    padding: var(--hotspot-padding, 4px);
    border-radius: var(--hotspot-border-radius, 3px); }
.e-hotspot:not(.e-hotspot--circle) .e-hotspot__button:before {
    border-radius: var(--hotspot-border-radius, 3px); }
.e-hotspot:not(.e-hotspot--circle) .e-hotspot--expand::before {
    background-color: var(--hotspot-box-color); }
.e-hotspot--overlay {
    opacity: 0.7;
    -webkit-transition: opacity 0.2s;
    -o-transition: opacity 0.2s;
    transition: opacity 0.2s; }
.e-hotspot--overlay:hover,
.e-hotspot--active .e-hotspot--overlay {
    opacity: 1; }
.e-hotspot--soft-beat {
    -webkit-animation: e-hotspot-soft-beat 0.7s infinite alternate;
    animation: e-hotspot-soft-beat 0.7s infinite alternate;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease; }
.e-hotspot--expand .e-hotspot__outer-circle {
    -webkit-animation: e-hotspot-expand 2s infinite;
    animation: e-hotspot-expand 2s infinite; }
.e-hotspot:not(.e-hotspot--circle) .e-hotspot--expand::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    opacity: 0;
    -webkit-animation: e-hotspot-expand 2s infinite;
    animation: e-hotspot-expand 2s infinite; }
.e-hotspot--sequenced {
    -webkit-animation: fadeIn 0.3s;
    animation: fadeIn 0.3s;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both; }
.e-hotspot__direction-mask {
    overflow: hidden;
    position: absolute;
    pointer-events: none; }
.e-hotspot__tooltip {
    white-space: var(--white-space, nowrap);
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    -o-transition-property: transform, opacity;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-duration: var(--tooltip-transition-duration, 500ms);
    -o-transition-duration: var(--tooltip-transition-duration, 500ms);
    transition-duration: var(--tooltip-transition-duration, 500ms);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    position: absolute;
    pointer-events: none;
    color: var(--tooltip-text-color, #FFF);
    text-align: var(--tooltip-align);
    min-width: var(--tooltip-min-width);
    padding: var(--tooltip-padding, 8px);
    border-radius: var(--tooltip-border-radius);
    background-color: var(--tooltip-color); }
.e-hotspot__tooltip p:last-of-type {
    margin-bottom: 0; }
.e-hotspot__direction-mask .e-hotspot__tooltip {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    position: static; }
.e-hotspot--active .e-hotspot__tooltip {
    pointer-events: visible; }
.e-hotspot--fade-in-out {
    opacity: 0; }
.e-hotspot--active .e-hotspot--fade-in-out {
    opacity: 1; }
.e-hotspot--fade-grow {
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0); }
.e-hotspot--active .e-hotspot--fade-grow {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
.e-hotspot--tooltip-animation-from-top, .e-hotspot--override-tooltip-animation-from-top {
    -webkit-transform: translate(0, calc(-100% - 1px));
    -ms-transform: translate(0, calc(-100% - 1px));
    transform: translate(0, calc(-100% - 1px)); }
.e-hotspot--tooltip-animation-from-left, .e-hotspot--override-tooltip-animation-from-left {
    -webkit-transform: translate(calc(-100% - 1px), 0);
    -ms-transform: translate(calc(-100% - 1px), 0);
    transform: translate(calc(-100% - 1px), 0); }
.e-hotspot--tooltip-animation-from-right, .e-hotspot--override-tooltip-animation-from-right {
    -webkit-transform: translate(calc(100% + 1px), 0);
    -ms-transform: translate(calc(100% + 1px), 0);
    transform: translate(calc(100% + 1px), 0); }
.e-hotspot--tooltip-animation-from-bottom, .e-hotspot--override-tooltip-animation-from-bottom {
    -webkit-transform: translate(0, calc(100% + 1px));
    -ms-transform: translate(0, calc(100% + 1px));
    transform: translate(0, calc(100% + 1px)); }
.e-hotspot--fade-direction {
    opacity: 0; }
.e-hotspot--active .e-hotspot--slide-direction,
.e-hotspot--active .e-hotspot--fade-direction {
    -webkit-transform: translate(0, 0) scale(1);
    -ms-transform: translate(0, 0) scale(1);
    transform: translate(0, 0) scale(1);
    opacity: 1; }
.e-hotspot--show-tooltip {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    opacity: 1;
    pointer-events: visible;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
