/* =======================================================================
   _a11y.css — WCAG 2.1 AA universal layer (palette-agnostic)
   Focus, reduced motion, skip link, link affordance, SR helpers.
   Site-specific contrast fixes are appended below this block per site.
   ======================================================================= */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,
[role="button"]:focus-visible,[role="link"]:focus-visible{
  outline:3px solid #1B5FBF !important;outline-offset:2px !important;border-radius:2px;}
@supports not selector(:focus-visible){
  a:focus,button:focus,input:focus,select:focus,textarea:focus,summary:focus,[tabindex]:focus{
    outline:3px solid #1B5FBF !important;outline-offset:2px !important;}}
header a:focus-visible,nav a:focus-visible,footer a:focus-visible,.on-dark a:focus-visible{
  outline-color:#E0B96A !important;}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important;}}
.skip-link{position:absolute;left:-9999px;top:0;z-index:10000;}
.skip-link:focus{left:0;padding:10px 16px;background:#0B1F3A;color:#fff;text-decoration:none;border:2px solid #C4973A;}
.sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
html{-webkit-text-size-adjust:100%;}
footer a{text-decoration:underline !important;}
@media (forced-colors: active){
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
    outline:3px solid CanvasText !important;}}

/* ===== Newporter contrast remediation (WCAG 2.1 AA) ===== */
/* Gold accents on LIGHT cream/white sections -> dark antique gold */
.section-eyebrow, .card-eyebrow, .price-eyebrow,
.program-card .day, .program .lbl, .info-card .eyebrow,
.section h2 em, .callout .eyebrow,
.form-wrap > div { color:#6f5410 !important; }
/* Gold + text on DARK green tiles -> light gold / brighter sage */
.tile-eyebrow, .tile-desc strong { color:#e6c074 !important; }
.tile-desc { color:#c6d7c2 !important; }
/* green-lt on darkest-green backgrounds -> brighter green */
.brand em, footer h5, .footer h5 { color:#57bf5a !important; }
/* coral site-credit link on dark green footer */
a[href*="videocartel.net"] { color:#ff9d9d !important; }
/* brand wordmark: light gold by default (dark hero/footer), dark gold in cream nav */
.brand em { color:#e0b96a !important; }
nav .brand em, header .brand em { color:#6f5410 !important; }
/* gold-lt used inline on DARK cards / callout strong on cream */
.card-eyebrow[style*="gold-lt"], .sisters .section-eyebrow { color:#e0b96a !important; }
.callout strong { color:#6f5410 !important; }
/* index has a dark-green nav -> brand wordmark needs light gold there */
body.home nav .brand em { color:#e0b96a !important; }
