.gba-agenda,
.gba-agenda * { box-sizing:border-box; }
.gba-agenda {
  --gba-navy:#182238;
  --gba-navy-2:#24314e;
  --gba-gold:#c7a968;
  --gba-gold-dark:#9e7f3f;
  --gba-cream:#f7f3ec;
  --gba-soft:#f5f7fa;
  --gba-text:#252a34;
  --gba-muted:#667085;
  --gba-white:#fff;
  --gba-border:#e3e6eb;
  --gba-shadow:0 12px 32px rgba(19,31,54,.08);
  color:var(--gba-text);
  font-family:inherit;
  line-height:1.6;
}
.gba-agenda a { text-decoration:none; }
.gba-inner { width:min(1180px, calc(100% - 40px)); margin:0 auto; }
.gba-kicker { display:inline-flex; align-items:center; gap:8px; color:var(--gba-gold-dark); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.gba-kicker::before { content:""; width:28px; height:2px; background:currentColor; }
.gba-section-head { max-width:760px; margin:0 auto 30px; text-align:center; }
.gba-section-head h2, .gba-left-head h2 { margin:8px 0 0; color:var(--gba-navy); font-size:clamp(28px,4vw,42px); line-height:1.12; }
.gba-section-head p { margin:12px 0 0; color:var(--gba-muted); }

.gba-agenda-home { padding:70px 0; }
.gba-home-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }

.gba-card { display:grid; grid-template-columns:86px 1fr; overflow:hidden; border:1px solid var(--gba-border); border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(19,31,54,.05); transition:transform .18s ease, box-shadow .18s ease; }
.gba-card:hover { transform:translateY(-3px); box-shadow:var(--gba-shadow); }
.gba-card-featured { border-color:#d7c28d; box-shadow:0 10px 28px rgba(158,127,63,.12); }
.gba-date-block { display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:150px; padding:16px 10px; color:#fff; background:var(--gba-navy); text-align:center; }
.gba-date-block strong { font-size:32px; line-height:1; }
.gba-date-block span { margin-top:7px; color:#efd79d; font-size:12px; font-weight:850; letter-spacing:.08em; }
.gba-card-body { padding:21px 22px; }
.gba-card-category { color:var(--gba-gold-dark); font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.gba-card-title { margin:6px 0 0; font-size:20px; line-height:1.3; }
.gba-card-title a { color:var(--gba-navy) !important; }
.gba-card-meta { display:grid; gap:6px; margin-top:13px; }
.gba-meta-row { display:flex; gap:7px; align-items:flex-start; color:var(--gba-muted); font-size:13px; }
.gba-meta-row svg { flex:0 0 auto; width:15px; height:15px; margin-top:2px; fill:none; stroke:var(--gba-gold-dark); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.gba-card-excerpt { margin:13px 0 0; color:var(--gba-muted); font-size:14px; }
.gba-card-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:15px; }
.gba-detail-link, .gba-map-link { color:var(--gba-navy) !important; font-size:13px; font-weight:800; }
.gba-map-link { color:var(--gba-gold-dark) !important; }
.gba-card-compact { grid-template-columns:76px 1fr; }
.gba-card-compact .gba-date-block { min-height:128px; }
.gba-card-compact .gba-card-body { padding:18px; }
.gba-card-compact .gba-card-title { font-size:18px; }

.gba-more-wrap { margin-top:28px; text-align:center; }
.gba-more-btn { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:12px 20px; border-radius:999px; color:#fff !important; background:var(--gba-navy); font-size:13px; font-weight:800; }
.gba-empty { padding:24px; border:1px dashed #cfd4dc; border-radius:15px; color:var(--gba-muted); background:#fff; text-align:center; }

.gba-hero { padding:86px 0 78px; color:#fff; background:radial-gradient(circle at 86% 15%,rgba(199,169,104,.15),transparent 25%),linear-gradient(135deg,#111a2d 0%,#182238 55%,#24314e 100%); }
.gba-hero .gba-kicker { color:#efd79d; }
.gba-hero h1 { margin:12px 0 0; color:#fff; font-size:clamp(42px,6vw,68px); line-height:1.04; letter-spacing:-.04em; }
.gba-hero p { max-width:760px; margin:20px 0 0; color:rgba(255,255,255,.78); font-size:18px; }
.gba-main-section { padding:62px 0 76px; background:var(--gba-soft); }
.gba-toolbar { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:44px; }
.gba-filter { appearance:none; border:1px solid #d8dce3; border-radius:999px; padding:9px 13px; color:var(--gba-navy); background:#fff; font:inherit; font-size:12px; font-weight:750; cursor:pointer; }
.gba-filter:hover, .gba-filter.is-active { border-color:var(--gba-navy); color:#fff; background:var(--gba-navy); }
.gba-left-head { max-width:none; margin:0 0 24px; text-align:left; }
.gba-list { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.gba-card.is-hidden { display:none !important; }
.gba-archive-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-top:60px; padding-top:38px; border-top:1px solid #dfe3e8; }
.gba-archive-head h2 { margin:7px 0 0; color:var(--gba-navy); font-size:30px; }
.gba-archive-toggle { border:1px solid #cfd4dc; border-radius:999px; padding:10px 15px; color:var(--gba-navy); background:#fff; font:inherit; font-size:12px; font-weight:800; cursor:pointer; }
.gba-archive { margin-top:20px; }
.gba-list-past { opacity:.88; }

.gba-agenda a:focus-visible, .gba-agenda button:focus-visible { outline:3px solid var(--gba-gold); outline-offset:3px; }

@media (max-width:980px) {
  .gba-home-grid { grid-template-columns:1fr; }
  .gba-list { grid-template-columns:1fr; }
}
@media (max-width:680px) {
  .gba-inner { width:min(100% - 28px,1180px); }
  .gba-agenda-home { padding:54px 0; }
  .gba-hero { padding:66px 0 62px; }
  .gba-card, .gba-card-compact { grid-template-columns:70px 1fr; }
  .gba-date-block, .gba-card-compact .gba-date-block { min-height:130px; }
  .gba-date-block strong { font-size:27px; }
  .gba-card-body, .gba-card-compact .gba-card-body { padding:17px; }
  .gba-toolbar { margin-bottom:34px; }
  .gba-archive-head { align-items:flex-start; flex-direction:column; }
}
@media (max-width:430px) {
  .gba-card, .gba-card-compact { grid-template-columns:1fr; }
  .gba-date-block, .gba-card-compact .gba-date-block { min-height:auto; flex-direction:row; justify-content:flex-start; gap:7px; padding:12px 16px; }
  .gba-date-block strong { font-size:20px; }
  .gba-date-block span { margin:0; }
}
@media (prefers-reduced-motion:reduce) {
  .gba-agenda *, .gba-agenda *::before, .gba-agenda *::after { transition:none !important; scroll-behavior:auto !important; }
}
