/* Movie hub presentation only. Routing, filters and catalogue markup stay in movies.php. */
.movie-v03 .home-stage,
.movie-v03 .movie-results { min-width: 0; }

.movie-v03 .movie-carousel .hero-slide__content { width: min(68%, 590px); }
.movie-v03 .movie-carousel .hero-slide__art {
  display: block;
  position: absolute;
  z-index: 2;
  right: 5%;
  top: 50%;
  width: min(23%, 175px);
  height: auto;
  aspect-ratio: 2 / 3;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 10px;
  box-shadow: 0 20px 46px rgba(0,0,0,.5);
  transform: translateY(-50%);
}
.movie-v03 .movie-carousel .hero-slide__artist {
  display: -webkit-box;
  max-width: 52ch;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
  line-height: 1.45;
}
.movie-v03 .movie-carousel .hero-slide h2 {
  display: -webkit-box;
  max-width: 16ch;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.movie-v03 .movie-carousel .hero-slide__trend-label { margin: 0 0 11px; }
.movie-v03 .movie-carousel .hero-slide__image{filter:saturate(.92) contrast(1.05) brightness(.68)}

.movie-feature-rail .feature-rail__cover { aspect-ratio: 2 / 3; max-height: 310px; }
.movie-feature-rail__list { display: grid; gap: 8px; }
.movie-feature-rail__list > a {
  display: grid;
  grid-template-columns: 70px minmax(0,1fr);
  align-items: center;
  gap: 12px;
  min-height: 96px;
  padding: 7px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--text);
}
.movie-feature-rail__list > a:hover { border-color: var(--border); background: var(--surface-2); }
.movie-feature-rail__thumb { display: block; width: 70px; height: 92px; overflow: hidden; border-radius: 7px; background: var(--surface-2); }
.movie-feature-rail__thumb img, .movie-feature-rail__thumb .img-fallback { width: 100%; height: 100%; object-fit: cover; }
.movie-feature-rail__list strong, .movie-feature-rail__list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.movie-feature-rail__list strong { font-size: .94rem; line-height: 1.3; }
.movie-feature-rail__list small { margin-top: 5px; color: var(--text-dim); font-size: .76rem; }

.movie-results { padding-bottom: 18px; }
.movie-results > .breadcrumbs { margin-bottom: 13px; }
.movie-results > .section { margin-top: 18px; }
.movie-results > header.section { margin-top: 0; }
.movie-results .section-head { flex-wrap: wrap; }
.movie-results .section-head__meta { margin-left: auto; }
.movie-results .prose { max-width: 78ch; }
.movie-results .filters {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-inline: 0;
  padding: 12px;
  flex-wrap: wrap;
  overflow: visible;
  scroll-margin-top: 86px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--bg-soft);
}
.movie-results .filters__group { min-width: 0; max-width: 100%; }
.movie-mode-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  flex: 1 1 100%;
  width: 100%;
  min-width: 0;
}
.movie-mode-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 43px;
  padding: 8px 14px;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: var(--surface-2);
  color: var(--text);
  font-size: .84rem;
  font-weight: 800;
  text-align: center;
  transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
.movie-mode-link:hover,
.movie-mode-link:focus-visible {
  border-color: var(--accent);
  background: var(--accent-soft);
  color: var(--accent-2);
}
.movie-mode-link svg { flex: 0 0 auto; }
.movie-results .filters__form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  flex: 1 1 100%;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.movie-results .filters__form .select { width: 100%; max-width: 100%; min-width: 0; }
.movie-results .grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.movie-results .card { min-width: 0; }
.movie-results .genre-links { display: flex; flex-wrap: wrap; gap: 7px; }
.movie-results .genre-links a { max-width: 100%; }
.movie-country-browser__links {
  max-height: 390px;
  padding: 12px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: var(--border-strong) transparent;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: color-mix(in srgb, var(--bg-soft) 94%, transparent);
}
.movie-country-browser__links:focus-visible { border-color: var(--accent); outline: 2px solid var(--accent-soft); }
.movie-country-browser__links::-webkit-scrollbar { width: 8px; }
.movie-country-browser__links::-webkit-scrollbar-thumb { border-radius: 999px; background: var(--border-strong); }
.movie-results .movie-country-browser { margin-bottom: 0; }
.movie-results { padding-bottom: 0; }

@media (max-width: 1300px) and (min-width: 900px) {
  .movie-results .grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 899px) {
  .movie-v03 .movie-carousel .hero-slide__art { display: none; }
  .movie-v03 .movie-carousel .hero-slide__content { width: 94%; }
  .movie-v03 .movie-carousel .hero-slide__artist { max-width: 40ch; }
  .movie-results .grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .movie-results .grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .movie-results .section-head { align-items: flex-start; }
  .movie-results .section-head__meta { font-size: .7rem; }
  .movie-v03 .movie-carousel .hero-slide__artist { max-width: 31ch !important; }
  .movie-mode-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .movie-mode-link { min-height: 40px; padding: 7px 10px; font-size: .76rem; }
  .movie-results .filters__form { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; width: 100%; }
  .movie-results .filters__form .select { min-height: 40px; padding-inline: 8px 24px; font-size: .67rem; }
}
