/* Basic responsive layout inspired by user's mock */
.epc-grid{
  display:flex;
  flex-direction: column;
}
.epc-card{
  width: 100%;
  margin-bottom: 40px;
  position:relative;
  min-height:320px;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.2);
  background:#111;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
.epc-card-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  filter:brightness(.55);
  transition:transform .35s ease;
}
.epc-card:hover .epc-card-bg{ transform:scale(1.04); }
.epc-card-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.65) 0%, rgba(0,0,0,.35) 50%, rgba(0,0,0,.1) 100%);
}
.epc-card-content{
  position:relative;
  z-index:2;
  color:#fff;
  padding:50px;
  /* max-width:60%; */
  display: flex;
  flex-wrap: wrap;
  flex: 1;
}
.epc-sport{
  font-size:.95rem;
  width: 100%;
  font-weight:700;
  text-transform:uppercase;
  margin-bottom:.25rem;
}
.epc-event{
  font-size:3.6rem;
  line-height:1.1;
  margin:.15rem 0  .5rem 0;
  color: #fff;
  font-weight: bold;
  width: 100%;
}
.epc-desc{
  font-size:.95rem;
  width: 100%;
  max-height:6.8rem;
  overflow:hidden;
  color: #ff7a1a;
  text-transform: uppercase;
}
.epc-button {
  margin-top: auto;
  display:inline-block;
  padding:10px 16px;
  border-radius:999px;
  background:#ff7a1a;
  color:#111;
  font-weight:700;
  text-decoration:none;
}
.epc-button:hover {
  background: #1b6980;
  color: #fff;
}
.epc-thumbs{
  /* position:absolute;
  right:18px;
  top:18px;
  bottom:18px; */
  width:50%;
  padding: 50px;
  display:flex;
  gap:12px;
  z-index:3;
}
.epc-thumb{ flex:1; border-radius:10px; overflow:hidden; background:#222; }
.epc-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
@media (max-width:980px){
  .epc-event {
    font-size: 1.6rem;
  }
  .epc-button a {
    width: 100%;
    text-align: center;
  }
  .epc-card-content{ max-width:100%; }
  .epc-thumbs{ position:static; width:100%; flex-direction:row; padding:0 18px 18px; }
}
