.events-intro{background:var(--navy-2);padding:7rem clamp(24px,5vw,80px)}
  .events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:3.5rem}
  .event-card{background:var(--navy-3);overflow:hidden;transition:background .2s}
  .event-card:hover{background:var(--navy-4)}
  .event-img{width:100%;height:260px;overflow:hidden;position:relative}
  .event-img img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(.75);transition:filter .4s,transform .5s;display:block}
  .event-card:hover .event-img img{filter:brightness(.7) saturate(.85);transform:scale(1.04)}
  .event-badge{position:absolute;top:1.25rem;right:1.25rem;background:var(--soft);color:var(--navy);font-size:.6rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;padding:.35rem .8rem}
  .event-body{padding:2rem 2rem 2.5rem}
  .event-type{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin-bottom:.75rem;display:block;opacity:.85}
  .event-body h3{font-family:var(--display);font-size:1.55rem;font-weight:600;color:var(--white);line-height:1.2;margin-bottom:.75rem}
  .event-body p{font-size:.85rem;color:rgba(255,255,255,.55);line-height:1.75}
  .upcoming-banner{background:var(--soft);padding:5rem clamp(24px,5vw,80px);display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
  .upcoming-banner h2{font-family:var(--display);font-size:clamp(2rem,4vw,3.5rem);font-weight:700;color:var(--navy);line-height:1.05}
  @media(max-width:1100px){.events-grid{grid-template-columns:1fr 1fr}.upcoming-banner{grid-template-columns:1fr}}
  @media(max-width:600px){.events-grid{grid-template-columns:1fr}}
