/*
 * =========================================================
 * Skip link
 * =========================================================
 */

a[href="#tm-main"] {
    position: fixed !important;
    top: 1rem !important;
    left: 1rem !important;
    z-index: 999999 !important;

    display: block !important;
    width: auto !important;
    height: auto !important;

    padding: 0.75rem 1rem !important;

    background: #fff !important;
    color: #000 !important;

    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;

    border: 2px solid #000 !important;
    border-radius: 0.25rem !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;

    transform: translateY(-150%) !important;
}

a[href="#tm-main"]:focus,
a[href="#tm-main"]:focus-visible {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;

    transform: translateY(0) !important;

    outline: 3px solid #000 !important;
    outline-offset: 3px !important;
}

#tm-main[tabindex="-1"]:focus {
    outline: none;
}


/*
 * =========================================================
 * Video player focus
 * =========================================================
 */

video:focus,
video:focus-visible {
    outline: 4px solid #000 !important;
    outline-offset: -4px !important;
}

@supports selector(video:focus-visible) {
    video:focus:not(:focus-visible) {
        outline: none !important;
    }
}


/*
 * =========================================================
 * ALL UIkit dot navigation
 * WCAG 2.2 - Target Size (Minimum)
 * =========================================================
 */

.uk-dotnav > * {
    padding-left: 4px !important;
}

.uk-dotnav > * > a {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;

    position: relative !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
}


/*
 * Visual 10 × 10 px dot inside the
 * 24 × 24 px interactive target.
 */

.uk-dotnav > * > a::before {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 10px;
    height: 10px;

    box-sizing: border-box;

    background-color: rgba(70, 167, 225, 0.15);

    transform: translate(-50%, -50%);
}


/*
 * Active dot
 */

.uk-dotnav > .uk-active > a::before {
    background-color: #0b5282;
    outline: 2px solid #0b5282;
}


/*
 * Keyboard focus
 */

.uk-dotnav > * > a:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 2px !important;
}