/* 
 Theme Name:   GeneratePress Child
 Theme URI:    
 Description:  
 Author:       admin
 Author URI:   https://thebrunchaffair.ro
 Template:     generatepress
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

 /* == Add your own styles below this line ==
--------------------------------------------*/
/* ---------- Month filter nav ---------- */
.tba-events{
  display:flex;
  flex-direction:column;
  max-width:75%;
  margin:0 auto;
  padding:0 1.5rem;
}

.tba-months{
  max-width:1200px;
  margin:0 auto;
  padding:1.5rem;
  display:flex;
  gap:2rem;
  justify-content:center;
  flex-wrap:wrap;
}
.tba-month{
  font-family:inherit;
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#000;
  background:none;
  border:0;
  padding:0;
  cursor:pointer;
}
.tba-month:hover{opacity:.6; color:#ab2eba!important}
.tba-month.is-active{color:#ab2eba!important}

/* ---------- Event list ---------- */
.tba-events{display:flex;flex-direction:column}

.tba-card{
  border-top:1px solid #e5e5e5;
  padding:1.25rem 0 4rem;
}

/* Header row: date / time / title / tickets */
.tba-card__head{
  display:grid;
  grid-template-columns:1fr 1fr 1fr auto;
  gap:1rem;
  align-items:baseline;
  margin-bottom:2.5rem;
}
.tba-card__head span,
.tba-card__head a{
  font-size:.85rem;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#000;
  text-decoration:none;
}
.tba-card__tickets{
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}
.tba-card__tickets:hover{opacity:.6}

/* Content row: poster left, excerpt third column */
.tba-card__cols{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  gap:1rem;
}
.tba-card__media{grid-column:1}
.tba-card__img{width:100%;height:auto;display:block}

.tba-card__text{grid-column:3}
.tba-card__excerpt{
  font-size:.9rem;
  line-height:1.6;
  color:#000;
  margin:0;
}

.tba-empty{
  text-align:center;
  padding:3rem 0;
  color:#999;
}

@media(min-width:769px){
  .tba-card{position:relative}
  .tba-card__label{
    position:absolute;top:1.25rem;left:50%;
    font-size:.85rem;font-weight:700;text-transform:uppercase;margin:0;
  }
  .tba-card__tickets{position:absolute;top:1.25rem;right:0}
}

/* ---------- Mobile ---------- */
@media(max-width:768px){
  .tba-months{gap:1.25rem;padding:1rem 0}
  .tba-month{font-size:.8rem}

  .tba-card{padding:0 0 2.5rem;border-top:1px solid #e5e5e5}

  /* header becomes a compact meta row; title & tickets move out of it */
  .tba-card__head{
    display:flex;
    flex-wrap:wrap;
    gap:.35rem 1rem;
    margin:0 0 .75rem;
    padding-top:1rem;
  }
  .tba-card__head span,
  .tba-card__head a{font-size:.75rem;color:#999}

  /* image first */
  .tba-card__cols{display:flex;flex-direction:column;gap:0}
  .tba-card__media{order:-1;margin:0 -0 1rem}
  .tba-card__img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

  /* big title */
  .tba-card__label{
    order:1;
    display:block;
    width:100%;
    font-size:1.6rem;
    line-height:1.1;
    color:#000;
    margin:.25rem 0 .5rem;
  }

  /* larger excerpt */
  .tba-card__text{order:2}
  .tba-card__excerpt{font-size:1rem;line-height:1.65;color:#333}

  /* tickets as a real button, last */
  .tba-card__tickets{
    order:3;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:.5rem;
    width:100%;
    margin-top:1.25rem;
    padding:.9rem 1rem;
    background:#000;
    color:#fff !important;
    font-size:.85rem;
    letter-spacing:.06em;
  }
  .tba-card__tickets:active{opacity:.8}
}