
/* --- Hero title "MAKE CINEMA MOVE" robustness --- */
.hero .title { margin: 18px 0 14px !important; line-height: .92 !important; }
.hero .title__line { display:block !important; white-space:nowrap; }
@media (max-width: 520px){ .hero .title__line { white-space:normal !important; } }
.hero .title__line--stroke{
  color: transparent !important;
  -webkit-text-stroke: 2px rgba(255,255,255,.92) !important;
  text-stroke: 2px rgba(255,255,255,.92) !important;
  paint-order: stroke fill;
}
@supports not (-webkit-text-stroke: 1px #fff){
  .hero .title__line--stroke{
    color: rgba(255,255,255,.96) !important;
    text-shadow:
      1px 0 0 rgba(0,0,0,.55),
      -1px 0 0 rgba(0,0,0,.55),
      0 1px 0 rgba(0,0,0,.55),
      0 -1px 0 rgba(0,0,0,.55);
  }
}

/* --- News cards: stacked layout --- */
article.newsCard{
  display:flex !important;
  flex-direction:column !important;
  gap: 14px !important;
}
.newsCard__media{
  position: relative !important;
  overflow: hidden;
  border-radius: 16px;
  height: 220px;
  flex: 0 0 auto;
}
.newsCard__media .newsCard__img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.newsCard__in{
  position: relative !important;
  inset: auto !important;
  transform: none !important;
}

/* --- Single news page (plugin template) --- */
.yufp-news{
  max-width: 980px;
  margin: 0 auto;
  padding: 28px 20px 56px;
}
.yufp-news__hero{
  border-radius: 18px;
  overflow:hidden;
  margin: 14px 0 18px;
}
.yufp-news__hero img{
  width:100%;
  height:auto;
  display:block;
}
.yufp-news__title{
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1.05;
  margin: 6px 0 10px;
}
.yufp-news__meta{
  opacity: .8;
  font-size: 14px;
  margin-bottom: 18px;
}
.yufp-news__content{
  font-size: 18px;
  line-height: 1.7;
}
.yufp-news__back{
  display:inline-block;
  margin-top: 22px;
  text-decoration: none;
}
