/* =====================================================
   TicketsFest.com.ua v9.9.109 — unified responsive event cards
   Same catalogue structure across the whole public site.
   Tablet: 3 columns. Phone: 2 columns. Poster: locked 4:5.
   ===================================================== */

@media (max-width: 1024px){
  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:clip!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"],
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-inline:auto!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] > .tfe-grid,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] > .tfe-grid,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] > .tfe-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    align-items:stretch!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding-inline:clamp(12px,2.5vw,22px)!important;
    gap:clamp(18px,2.5vw,28px) clamp(12px,2vw,20px)!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    transform:none!important;
    touch-action:auto!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] > .tfe-grid > .tfe-card-item,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] > .tfe-grid > .tfe-card-item,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] > .tfe-grid > .tfe-card-item{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    flex:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    transform:none!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-inner,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-inner,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-inner{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    contain:none!important;
    content-visibility:visible!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-inner > img.tfe-poster,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-inner > img.tfe-poster,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-inner > img.tfe-poster,
  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-poster--empty,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-poster--empty,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-poster--empty{
    order:1!important;
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4 / 5!important;
    object-fit:cover!important;
    object-position:center top!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:clamp(13px,2.2vw,20px)!important;
    background:#e5e7eb!important;
    box-shadow:0 8px 22px rgba(15,23,42,.09)!important;
    overflow:hidden!important;
    transform:none!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-poster--empty,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-poster--empty{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption{
    order:2!important;
    position:static!important;
    inset:auto!important;
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:clamp(9px,1.8vw,13px) 0 0!important;
    background:transparent!important;
    color:#0f172a!important;
    text-align:center!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:none!important;
    text-shadow:none!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-title,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-title,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-title{
    order:1!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:2.28em!important;
    margin:0 0 clamp(6px,1.4vw,9px)!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    color:#111827!important;
    font-size:clamp(14px,2.3vw,18px)!important;
    line-height:1.14!important;
    font-weight:900!important;
    letter-spacing:-.025em!important;
    text-align:center!important;
    text-shadow:none!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-top,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-top,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-top{
    order:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:1.35em!important;
    margin:0 0 clamp(5px,1.1vw,8px)!important;
    gap:5px!important;
    text-align:center!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-date,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-date,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-date{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#334155!important;
    font-size:clamp(11px,1.65vw,13px)!important;
    line-height:1.35!important;
    font-weight:800!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
    text-transform:none!important;
    letter-spacing:0!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-promo,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-promo,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-promo{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:19px!important;
    padding:3px 6px!important;
    border-radius:999px!important;
    background:#eef2ff!important;
    color:#1d4ed8!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:900!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-meta,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-meta,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-meta{
    order:3!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:2.65em!important;
    margin:0 0 clamp(7px,1.5vw,10px)!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    color:#334155!important;
    font-size:clamp(11px,1.65vw,13px)!important;
    line-height:1.32!important;
    font-weight:650!important;
    white-space:normal!important;
    text-align:center!important;
    text-shadow:none!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-row,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-row,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-row{
    order:4!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-top:auto!important;
    padding:0!important;
    gap:clamp(7px,1.5vw,10px)!important;
    text-align:center!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-price,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-price,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-price{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:1.3em!important;
    margin:0!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    color:#111827!important;
    font-size:clamp(12px,1.8vw,14px)!important;
    line-height:1.3!important;
    font-weight:900!important;
    white-space:normal!important;
    text-align:center!important;
    text-shadow:none!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-cta,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-cta,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-caption-cta{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    height:auto!important;
    margin:0!important;
    padding:10px clamp(7px,1.5vw,12px)!important;
    border-radius:999px!important;
    background:#ffcc00!important;
    color:#111827!important;
    box-shadow:none!important;
    font-size:clamp(11px,1.7vw,13px)!important;
    line-height:1.1!important;
    font-weight:900!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
    text-shadow:none!important;
    box-sizing:border-box!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-overlay,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-overlay,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-overlay,
  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-item::after,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-item::after{
    display:none!important;
    content:none!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-link,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-link,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] .tfe-card-link{
    position:absolute!important;
    inset:0!important;
    z-index:20!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-item:hover,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-item:hover,
  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-item:hover .tfe-card-caption,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-item:hover .tfe-card-caption{
    transform:none!important;
    opacity:1!important;
  }

  body .tfe-load-more-wrap{
    width:100%!important;
    max-width:100%!important;
    padding-inline:clamp(12px,2.5vw,22px)!important;
    margin-top:26px!important;
    box-sizing:border-box!important;
  }

  /* Custom/fallback event cards used by a few theme templates. */
  body .tfe-events-grid:has(.tfe-event-card){
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(18px,2.5vw,28px) clamp(12px,2vw,20px)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-inline:auto!important;
    padding-inline:clamp(12px,2.5vw,22px)!important;
    box-sizing:border-box!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-img{
    width:100%!important;
    aspect-ratio:4/5!important;
    height:auto!important;
    overflow:hidden!important;
    border-radius:clamp(13px,2.2vw,20px)!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-img img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-info,
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-title,
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-meta,
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-footer,
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-price{
    min-width:0!important;
    max-width:100%!important;
    text-align:center!important;
    align-items:center!important;
    justify-content:center!important;
    overflow-wrap:anywhere!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-footer{
    flex-direction:column!important;
    gap:9px!important;
  }
  body .tfe-events-grid:has(.tfe-event-card) .tfe-event-btn{
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    box-sizing:border-box!important;
  }
}

@media (max-width: 767px){
  body .tfe-wrap.tfe-instance[data-layout="grid"] > .tfe-grid,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] > .tfe-grid,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] > .tfe-grid,
  body .tfe-events-grid:has(.tfe-event-card){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:clamp(20px,5.5vw,30px) clamp(9px,3.4vw,16px)!important;
    padding-inline:clamp(10px,3.6vw,18px)!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-title,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-title{
    font-size:clamp(13px,3.8vw,18px)!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-date,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-date,
  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-meta,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-meta{
    font-size:clamp(10.5px,3vw,13px)!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-price,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-price{
    font-size:clamp(11.5px,3.2vw,14px)!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-cta,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-cta{
    min-height:clamp(38px,10vw,44px)!important;
    font-size:clamp(10.5px,3vw,13px)!important;
  }
}

@media (max-width: 360px){
  body .tfe-wrap.tfe-instance[data-layout="grid"] > .tfe-grid,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] > .tfe-grid,
  body .tfe-slider-lock .tfe-instance[data-layout="grid"] > .tfe-grid,
  body .tfe-events-grid:has(.tfe-event-card){
    gap:20px 8px!important;
    padding-inline:9px!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption{
    padding-top:8px!important;
  }

  body .tfe-wrap.tfe-instance[data-layout="grid"] .tfe-card-caption-title,
  body .tfe-instance[data-mobile-slider="1"][data-layout="grid"] .tfe-card-caption-title{
    font-size:12.5px!important;
  }
}
