/* Accessibility fixes for WCAG 2.2 AA (site audit 2026-09-29).
   Loaded after the theme so these win. Colours keep the site's rose palette,
   only darker so text reaches at least 4.5:1 contrast on white. */

/* Links: theme pink #ffadad was 1.8:1 */
a, .post-edit-link { color: #b84a55; }
a:hover, a:focus { color: #8f3540; }

/* Links inside text must not rely on colour alone (WCAG 1.4.1) */
.fl-page-content p a, .fl-page-content li a, .fl-page-content h5 a, .fl-page-content h6 a,
.fl-post-meta a, .fl-post-cats-tags a, .fl-comment-content a, .instagram-updates a { text-decoration: underline; text-underline-offset: 2px; }
.fl-page-content a.fl-button, .fl-page-content .fl-archive-nav a { text-decoration: none; }

/* Pink text colours typed into posts (were 2.0-3.9:1) */
[style*="#ff99cc"], [style*="#ff99cc"] a, [style*="#FF99CC"], [style*="#FF99CC"] a,
[style*="#f774b6"], [style*="#f774b6"] a, [style*="#d65e9a"], [style*="#d65e9a"] a { color: #b0467b !important; }
[style*="#f547c1"], [style*="#f547c1"] a { color: #a53a86 !important; }
[style*="#808080"] { color: #707070 !important; }

/* Top bar: current page / hover colour #eac9e1 was 1.5:1 */
.fl-page-bar a:hover, .fl-page-bar a:focus, .fl-page-bar a:hover *, .fl-page-bar a:focus *,
.fl-page-bar .navbar-nav li > a:hover, .fl-page-bar .navbar-nav li > a:focus,
.fl-page-bar .navbar-nav li.current-menu-ancestor > a, .fl-page-bar .navbar-nav li.current-menu-parent > a,
.fl-page-bar .navbar-nav li.current-menu-item > a,
.fl-page-bar-nav > li > ul.sub-menu a:hover, .fl-page-bar-nav > li > ul.sub-menu a:focus,
.fl-page-bar-nav > li > ul.sub-menu li.current-menu-item > a { color: #8e4a7b; }

/* Footer link #428bca was 3.6:1 */
.fl-page-footer a, .fl-page-footer a *, .fl-page-footer-widgets a { color: #2a6496; }

/* Form placeholders (the only visible labels on the contact form) were ~2.3:1 */
input::placeholder, textarea::placeholder { color: #6b6b6b; opacity: 1; }

/* Keyboard users: always show where focus is (theme removed outlines on buttons and fields) */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible,
select:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid #1a1a1a !important;
  outline-offset: 2px;
}

/* Keyboard users: open the Photography drop-down (portfolio, pricing, getting ready) on focus, not only on hover */
.fl-page-bar-nav > li:focus-within > ul.sub-menu { left: auto; }

/* Skip link: visible and readable when focused */
.fl-screen-reader-text:focus { display: inline-block; padding: 8px 12px; background: #fff; color: #1a1a1a; z-index: 100000; }

/* Touch targets at least 24x24 px (WCAG 2.5.8) for the small top-bar links and icons */
.fl-page-bar .fl-social-icons a, .fl-page-bar-nav > li > a, .fl-page-bar-nav > li > ul.sub-menu li a {
  display: inline-block; min-height: 24px; min-width: 24px; line-height: 24px; text-align: center;
}
.fl-page-bar-nav > li > ul.sub-menu li a { display: block; text-align: left; }
.instagram-updates summary { min-height: 24px; line-height: 24px; }
/* Link lists inside posts: give each link a 24px-tall target */
.fl-page-content li > a, .fl-page-content li > span > a { display: inline-block; min-height: 24px; line-height: 24px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
