:root {
    --tobii-base-font-size: 1rem;
    --tobii-transition-duration: 0.3s;
    --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: #eee;
    --tobii-counter-background: transparent;
    --tobii-counter-color: #fff;
    --tobii-button-background: transparent;
    --tobii-button-navigation-background: rgba(0, 0, 0, 0.5);
    --tobii-button-color: #fff;
    --tobii-loader-color: #fff;
    --tobii-slide-max-height: calc(100vh - 3.125em);
    --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: 0.5em;
    top: 0.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: 0.25em 0.5em;
    position: absolute;
    white-space: pre-wrap;
    width: 100%;
}
.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: 0.5;
    padding: 0;
    position: absolute;
    touch-action: manipulation;
    will-change: opacity;
    z-index: 1;
}
.tobii__btn:hover {
    opacity: 1;
}
@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 {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1;
    stroke: currentColor;
    height: 3.75em;
    pointer-events: none;
    width: 3.75em;
}
.tobii__btn--next,
.tobii__btn--previous {
    background-color: var(--button-navigation-background, var(--tobii-button-navigation-background));
    border-radius: 5px;
    top: 50%;
    transform: translateY(-50%);
}
.tobii__btn--previous {
    left: 1em;
}
.tobii__btn--next {
    right: 1em;
}
.tobii__btn--close {
    height: 2.5em;
    opacity: 0.75;
    right: 0.25em;
    top: 0.25em;
    width: 2.5em;
}
.tobii__btn--close svg {
    height: 100%;
    transform: scale(1.4);
    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: 1.25em;
    left: 0.875em;
    line-height: 1;
    opacity: 0.8;
    position: absolute;
    top: 0.875em;
    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;
}
