/* v10.1.6 — Single event poster lock
   Main event poster must stay 4:5 and must not shrink because of long event titles.
   Long titles are allowed to shrink/wrap instead of compressing the poster column. */

body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero__content{
  grid-template-columns:minmax(320px, 360px) minmax(0, 1fr) !important;
  align-items:center !important;
  gap:clamp(28px, 4vw, 56px) !important;
}

body.single-event .tfe-page-wrapper > .tfe-hero .tfe-poster{
  width:clamp(320px, 29vw, 380px) !important;
  min-width:320px !important;
  max-width:380px !important;
  aspect-ratio:4 / 5 !important;
  height:auto !important;
  min-height:auto !important;
  flex:0 0 auto !important;
  align-self:center !important;
  justify-self:center !important;
  overflow:hidden !important;
  transform:translateY(clamp(18px, 3vw, 34px)) !important;
}

body.single-event .tfe-page-wrapper > .tfe-hero .tfe-poster img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:4 / 5 !important;
  object-fit:cover !important;
  object-position:center top !important;
  flex:0 0 auto !important;
}

body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero-info{
  min-width:0 !important;
  max-width:100% !important;
}

body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero-title{
  max-width:100% !important;
  min-width:0 !important;
  font-size:clamp(30px, 4.8vw, 64px) !important;
  line-height:1.02 !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  hyphens:auto !important;
}

@media (min-width:769px) and (max-width:1080px){
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero__content{
    grid-template-columns:minmax(300px, 330px) minmax(0, 1fr) !important;
  }
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-poster{
    width:clamp(300px, 31vw, 330px) !important;
    min-width:300px !important;
    max-width:330px !important;
  }
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero-title{
    font-size:clamp(28px, 4.2vw, 52px) !important;
  }
}

@media (max-width:768px){
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero__content{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    text-align:center !important;
    gap:22px !important;
  }
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-poster{
    width:min(100%, 340px) !important;
    min-width:0 !important;
    max-width:340px !important;
    aspect-ratio:4 / 5 !important;
    transform:none !important;
    margin:0 auto 18px !important;
  }
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero-title{
    font-size:clamp(28px, 9vw, 44px) !important;
    line-height:1.04 !important;
    text-align:center !important;
  }
}

@media (max-width:380px){
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-poster{
    width:min(100%, 318px) !important;
    max-width:318px !important;
  }
  body.single-event .tfe-page-wrapper > .tfe-hero .tfe-hero-title{
    font-size:clamp(25px, 8.2vw, 36px) !important;
  }
}
