:root {
    --tobii-base-font-size: 1rem;
    --tobii-transition-duration: .5s;
    --tobii-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    --tobii-zoom-icon-background: rgba(25, 41, 56, 0.94);
    --tobii-zoom-icon-color: #fff;
    --tobii-lightbox-background: rgba(0, 0, 0, 0.85);
    --tobii-lightbox-z-index: 1337;
    --tobii-caption-background: rgba(0, 0, 0, 0.8);
    --tobii-caption-color: #fff;
    --tobii-counter-background: transparent;
    --tobii-counter-color: #fff;
    --tobii-button-background: transparent;
    --tobii-button-navigation-background: rgba(0, 0, 0, 0.85);
    --tobii-button-color: #fff;
    --tobii-loader-color: #fff;
    --tobii-slide-max-height: calc(100vh - 5em);
    --tobii-slide-max-width: 100vw
}

.tobii-zoom {
    border: 0;
    box-shadow: none;
    display: inline-block;
    position: relative;
    text-decoration: none
}

.tobii-zoom img {
    display: block
}

.tobii-zoom__icon {
    align-items: center;
    background-color: var(--zoom-icon-background, var(--tobii-zoom-icon-background));
    color: var(--zoom-icon-color, var(--tobii-zoom-icon-color));
    display: flex;
    height: 1.78em;
    justify-content: center;
    line-height: 1;
    position: absolute;
    right: .5em;
    top: .5em;
    width: 1.78em
}

.tobii-zoom__icon svg {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    stroke: currentColor;
    height: 1.5em;
    pointer-events: none;
    width: 1.5em
}

.tobii-is-open {
    overflow-y: hidden
}

.tobii-image,
.tobii-is-open {
    touch-action: none
}

.tobii {
    background-color: var(--lightbox-background, var(--tobii-lightbox-background));
    bottom: 0;
    box-sizing: border-box;
    contain: strict;
    font-size: var(--base-font-size, var(--tobii-base-font-size));
    left: 0;
    line-height: 1.5;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    z-index: var(--lightbox-z-index, var(--tobii-lightbox-z-index))
}

.tobii[aria-hidden=true] {
    display: none
}

.tobii *,
.tobii :after,
.tobii :before {
    box-sizing: inherit
}

.tobii__slider {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 3.125em;
    will-change: transform
}

.tobii__slider[aria-hidden=true] {
    display: none
}

@media screen and (prefers-reduced-motion:no-preference) {
    .tobii__slider--animate:not(.tobii__slider--is-dragging) {
        transition-duration: var(--transition-duration, var(--tobii-transition-duration));
        transition-property: transform;
        transition-timing-function: var(--transition-timing-function, var(--tobii-transition-timing-function))
    }
}

.tobii__slider--is-draggable [data-type] {
    cursor: grab
}

.tobii__slider--is-dragging [data-type] {
    cursor: grabbing
}

.tobii__slide {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    width: 100%
}

.tobii__slide:not(.tobii__slide--is-active) {
    visibility: hidden
}

@media screen and (prefers-reduced-motion:no-preference) {
    .tobii__slide:not(.tobii__slide--is-active) {
        transition-duration: var(--transition-duration, var(--tobii-transition-duration));
        transition-property: visibility;
        transition-timing-function: var(--timing-function, var(--tobii-transition-timing-function))
    }
}

.tobii__slide [data-type] {
    -ms-scroll-chaining: none;
    max-height: 100%;
    max-width: var(--slide-max-width, var(--tobii-slide-max-width));
    overflow: hidden;
    overflow-y: auto;
    overscroll-behavior: contain
}

.tobii__slide iframe,
.tobii__slide video {
    display: block !important
}

.tobii__slide figure {
    margin: 0;
    position: relative
}

.tobii__slide figure>img {
    display: block;
    height: auto;
    max-height: var(--slide-max-height, var(--tobii-slide-max-height));
    max-width: var(--slide-max-width, var(--tobii-slide-max-width));
    width: auto
}

.tobii__slide figure>figcaption {
    background-color: var(--caption-background, var(--tobii-caption-background));
    bottom: 0;
    color: var(--caption-color, var(--tobii-caption-color));
    font-size: 1.125em;
    padding: 1.5em .5em 1em;
    position: absolute;
    white-space: pre-wrap;
    width: 100%;
    text-align: center;
}

.tobii__slide [data-type=html] video {
    cursor: auto;
    max-height: var(--slide-max-height, var(--tobii-slide-max-height));
    max-width: var(--slide-max-width, var(--tobii-slide-max-width))
}

.tobii__slide [data-type=html] audio {
    max-width: 100%
}

.tobii__slide [data-type=iframe] {
    -webkit-overflow-scrolling: touch;
    transform: translateZ(0)
}

.tobii__slide [data-type=iframe] iframe {
    height: var(--slide-max-height, var(--tobii-slide-max-height));
    width: var(--slide-max-width, var(--tobii-slide-max-width))
}

.tobii__btn {
    -webkit-appearance: none;
    appearance: none;
    background-color: var(--button-background, var(--tobii-button-background));
    border: 1px solid transparent;
    color: var(--button-color, var(--tobii-button-color));
    cursor: pointer;
    font: inherit;
    line-height: 1;
    margin: 0;
    opacity: 1;
    position: absolute;
    touch-action: manipulation;
    will-change: opacity;
    z-index: 1;
}

.tobii__btn:hover {
    opacity: .75
}

@media screen and (prefers-reduced-motion:no-preference) {
    .tobii__btn {
        transition-duration: var(--transition-duration, var(--tobii-transition-duration));
        transition-property: opacity, transform;
        transition-timing-function: var(--transition-timing-function, var(--tobii-transition-timing-function));
        will-change: opacity, transform
    }
}

.tobii__btn svg {
    height: 2em;
    pointer-events: none;
    width: 2em
}

.tobii__btn--next,
.tobii__btn--previous {
    background-color: var(--button-navigation-background, var(--tobii-button-navigation-background));
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    padding: 1em;
    width: 4rem;
    height: 4rem;
    transition: .25s;
}

.tobii__btn--next svg,
.tobii__btn--previous svg{
    height: 100%;
    transform: scale(1);
    width: 100%
}

.tobii__btn--next:hover,
.tobii__btn--previous:hover {
    border-radius: 0;
}

.tobii__btn--previous {
    left: 1em
}

.tobii__btn--next {
    right: 1em
}

.tobii__btn--close {
    background-color: var(--button-navigation-background, var(--tobii-button-navigation-background));
    border-radius: 50%;
    height: 4rem;
    opacity: 1;
    right: 1.5em;
    top: 1.5em;
    width: 4rem;
    padding: 1em;
    transition: .25s;
}

.tobii__btn--close:hover {
    border-radius: 0;
}

.tobii__btn--close svg {
    height: 100%;
    transform: scale(.75);
    width: 100%
}

.tobii__btn:disabled,
.tobii__btn[aria-hidden=true] {
    cursor: default;
    visibility: hidden
}

.tobii__counter {
    background-color: var(--counter-background, var(--tobii-counter-background));
    color: var(--counter-color, var(--tobii-counter-color));
    font-size: 1em;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
    position: absolute;
    top: 1.5em;
    z-index: 1
}

.tobii__counter[aria-hidden=true] {
    display: none
}

.tobii__loader {
    display: inline-block;
    height: 6em;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 6em
}

.tobii__loader:before {
    animation: spin 1s infinite;
    border: 2px solid #949ba3;
    border-radius: 100%;
    border-top: 2px solid var(--loader-color, var(--tobii-loader-color));
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

@keyframes spin {
    to {
        transform: rotate(1turn)
    }
}

.tobii__slide .tobii-html {
    background: #fff;
    font-size: 1.125em;
    max-width: 800px;
    padding: 10px 20px
}