/* ===== MBPHA visual polish ===== */

/* Smooth everything */
html { scroll-behavior: smooth; }

/* Section headings: gold underline accent */
.section-title { position: relative; padding-bottom: 14px; }
.section-title::after { content: ''; position: absolute; left: 0; bottom: 0;
  width: 56px; height: 4px; border-radius: 2px;
  background: linear-gradient(90deg, var(--gold, #F2B705), var(--leaf, #1C7A34)); }
.section-head[style*="center"] .section-title::after,
[style*="text-align:center"] .section-title::after { left: 50%; transform: translateX(-50%); }

/* Cards: softer default, richer hover */
.card, .board-card { box-shadow: 0 2px 8px rgba(20,48,92,0.05); }
.card:hover { box-shadow: 0 14px 34px rgba(20,48,92,0.13); }

/* Buttons: subtle lift + press */
.btn { transition: all .18s ease; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(20,48,92,0.18); }
.btn:active { transform: translateY(0); }

/* Links in body text: animated underline */
.section p a:not(.btn) { text-decoration: none; background-image: linear-gradient(var(--leaf,#1C7A34), var(--leaf,#1C7A34));
  background-size: 0% 2px; background-repeat: no-repeat; background-position: left bottom;
  transition: background-size .25s; padding-bottom: 2px; }
.section p a:not(.btn):hover { background-size: 100% 2px; }

/* Scroll-in reveal (elements fade+rise as they enter view) */
.reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; transition: none; } }

/* Page hero: gentle gradient sheen over the flag photo */
.page-hero.hero-photo { position: relative; }
.page-hero.hero-photo::after { content:''; position:absolute; left:0; right:0; bottom:0; height:4px;
  background: linear-gradient(90deg, var(--gold,#F2B705), var(--leaf,#1C7A34), var(--navy,#14305C)); }

/* Footer: slight top glow line */
.site-footer { border-top: 4px solid var(--gold, #F2B705); }

/* Tables (facilities etc.): zebra + hover */
table tr:nth-child(even) td { background: rgba(20,48,92,0.025); }
table tr:hover td { background: rgba(242,183,5,0.07); }

/* Selection colour */
::selection { background: var(--gold, #F2B705); color: var(--navy, #14305C); }

/* Scrollbar (Chrome/Edge) */
::-webkit-scrollbar { width: 11px; }
::-webkit-scrollbar-track { background: #f0efe9; }
::-webkit-scrollbar-thumb { background: var(--navy, #14305C); border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: var(--leaf, #1C7A34); }
