/**
 * Eye Doctor — accessibility + performance layer (2026-10-08 audit).
 * Shared verbatim by every eye-doctor install. Keep the copies identical.
 */

/* Visible keyboard focus. The parent's reflex.css sets `* { outline: none }`. */
:focus-visible {
    outline: 3px solid var(--ed-sky, #0066B3) !important;
    outline-offset: 3px;
}
.ed-header :focus-visible,
.ed-footer :focus-visible,
.ed-on-navy :focus-visible,
.ed-videohero :focus-visible,
.devq-mobile-menu :focus-visible {
    outline-color: #fff !important;
}

/* Skip link */
.ed-skip-link {
    position: absolute;
    left: 12px;
    top: -60px;
    z-index: 1000;
    background: var(--ed-navy, #172E56);
    color: #fff;
    font-family: var(--font1, 'Poppins', sans-serif);
    font-weight: 600;
    font-size: 15px;
    padding: 12px 20px;
    border-radius: 0 0 10px 10px;
    text-decoration: none;
    transition: top .15s ease;
}
.ed-skip-link:focus { top: 0; color: #fff; }
#main-content:focus { outline: none; }

/* Desktop dropdowns open for keyboard users too */
.ed-nav li:focus-within > .dropdown-menu,
.ed-nav li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.ed-nav > li:focus-within i.fa-caret-down { transform: rotate(180deg); }

/* Gold labels sitting on light backgrounds (tagged by a11y.js) */
.ed-eyebrow.ed-eyebrow--onlight,
.ed-bloghero__eyebrow.ed-eyebrow--onlight { color: #946000 !important; }

/* Contrast fixes */
.ed-footer__poweredby, .ed-footer__poweredby a { color: rgba(255,255,255,.78) !important; }
.ed-callout__em { color: #fff !important; }
.single-nav-label { color: #5f6368 !important; }

/* Hero video pause control */
.ed-hero-pause {
    position: absolute;
    left: 24px;
    bottom: 24px;
    z-index: 6;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.85);
    background: rgba(0,0,0,.35);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 15px;
    transition: background .2s ease;
}
.ed-hero-pause:hover { background: rgba(0,0,0,.55); }

/* The hero heading is the LCP element; don't hold it back behind a fade-in */
.ed-videohero [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

@media (prefers-reduced-motion: reduce) {
    [data-aos] { opacity: 1 !important; transform: none !important; transition: none !important; }
    html { scroll-behavior: auto !important; }
}

/* Rendia click-to-load placeholder */
.ed-rendia-facade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    background: linear-gradient(135deg, var(--ed-navy, #172E56) 0%, var(--ed-sky, #0066B3) 100%);
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 20px;
    font-family: var(--font1, 'Poppins', sans-serif);
    font-weight: 600;
    font-size: 17px;
    text-align: center;
}
.ed-rendia-facade__play {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: rgba(255,255,255,.95);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s ease;
}
.ed-rendia-facade__play::before {
    content: "";
    margin-left: 6px;
    border-style: solid;
    border-width: 13px 0 13px 22px;
    border-color: transparent transparent transparent var(--ed-navy, #172E56);
}
.ed-rendia-facade:hover .ed-rendia-facade__play { transform: scale(1.08); }
var[data-rendia-id] { position: relative; }

/* Ported patient-education sections (inline colors from the content port) */
.ed-cond-body a,
.ed-cond-body h4,
[style*="color:#3E9BC4"],
[style*="color:#2E7DA0"] { color: #1F6587 !important; }
