/* OHYC shared foundations. Linked before each page's <style> block, so page
   rules of equal specificity keep winning via cascade order. Only rules that
   are byte-identical across pages AND inert where previously absent live
   here (keyframes and class/id selectors unused on a page match nothing). */
:root {
  --ohyc-navy: #17263B;
  --ohyc-red: #A33327;
  --ohyc-gold: #E8B04B;
  --ohyc-gold-bright: #F0BE60;
  --ohyc-cream: #FAF9F6;
  --ohyc-taupe: #8A8371;
}
@keyframes fadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.field:focus { border-color: #17263B; }
.hov-gold-btn:hover, .hov-gold-btn:focus-visible { background: #F0BE60; }
.hov-gold:hover, .hov-gold:focus-visible { color: #E8B04B; }
.hov-red:hover, .hov-red:focus-visible { color: #A33327; }
.hov-red-link:hover, .hov-red-link:focus-visible { color: #A33327; }
.hov-cream-link:hover, .hov-cream-link:focus-visible { color: #FAF9F6; }
.hov-bg-white:hover, .hov-bg-white:focus-visible { background: #FFFFFF; }
.hov-bg-red:hover, .hov-bg-red:focus-visible { background: #A33327; }
#lightbox { position: fixed; inset: 0; z-index: 300; display: none; align-items: center; justify-content: center; background: rgba(13,24,40,0.9); padding: 24px; }
#lightbox.open { display: flex; }
#lightbox img { max-width: 92vw; max-height: 92vh; border-radius: 6px; box-shadow: 0 20px 60px rgba(0,0,0,0.5); }
#lightbox .lb-close { position: absolute; top: 16px; right: 22px; background: none; border: none; color: #FFFFFF; font-size: 36px; line-height: 1; cursor: pointer; }
