:root{--cw-bg:#080706;--cw-bg2:#110d08;--cw-card:#15120e;--cw-card2:#20180e;--cw-text:#f8f4ed;--cw-dim:#a59c90;--cw-blue:#e7a52e;--cw-blue2:#ffd16a;--cw-gold:#e7a52e;--cw-line:rgba(231,165,46,.24)}
body{background:radial-gradient(circle at 85% 0,rgba(231,165,46,.14),transparent 34rem),linear-gradient(180deg,#070706,#0b0907 55%,#050505)}
.cw-shell,
.cw-shell button,
.cw-shell input,
.cw-shell select,
.cw-shell textarea{
  font-family:"Assistant","Heebo",Arial,sans-serif!important;
}
.cw-shell h1,
.cw-shell h2,
.cw-shell h3,
.cw-shell h4,
.cw-shell strong,
.cw-shell b{
  font-family:"Assistant","Heebo",Arial,sans-serif!important;
  letter-spacing:0!important;
}
.cw-nav{background:rgba(7,7,7,.94);border-bottom-color:rgba(231,165,46,.18)}
.cw-brand img{border-radius:14px;filter:drop-shadow(0 0 12px rgba(231,165,46,.35))}
.cw-brand:hover img{filter:drop-shadow(0 0 18px rgba(231,165,46,.6))}
.cw-nav-links a:hover,.cw-nav-links a.active,.cw-nav-search button:hover{color:#ffd16a}
.cw-hero{background:radial-gradient(circle at 14% 24%,rgba(231,165,46,.16),transparent 24rem),linear-gradient(135deg,rgba(27,21,14,.97),rgba(8,7,6,.99))}
.cw-kicker{color:#efb640}
@media(max-width:900px){.cw-nav-links{display:none}.cw-nav-search{margin-inline-start:auto}.cw-nav-search button{display:none}}
.cw-binge-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid #8b621c;border-radius:12px;background:linear-gradient(135deg,#2b1e09,#15110a);color:#f0bd5d!important;text-decoration:none;font-weight:900}.cw-binge-cta:hover{background:#d99b2b;color:#100b02!important}

/* Dense poster catalogue */
.cw-catalog-tools{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1.25rem;
  margin:1.35rem 0 1rem;
  padding-top:1.1rem;
  border-top:1px solid rgba(231,165,46,.14);
}
.cw-catalog-tools strong{display:block;color:var(--cw-text);font-size:1.08rem;font-weight:900}
.cw-catalog-tools span{display:block;margin-top:.2rem;color:var(--cw-dim);font-size:.82rem}
.cw-genre-filters{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.45rem}
.cw-genre-filters button{
  min-height:36px;
  padding:.42rem .8rem;
  border:1px solid rgba(231,165,46,.22);
  border-radius:999px;
  background:#0d0c0a;
  color:#c8c0b5;
  font:800 .78rem "Heebo",Arial,sans-serif;
  cursor:pointer;
  transition:.2s ease;
}
.cw-genre-filters button:hover{color:#fff1cb;border-color:rgba(231,165,46,.62);transform:translateY(-1px)}
.cw-genre-filters button.active{color:#130d03;background:linear-gradient(135deg,#d8941f,#f5c75d);border-color:#f2bd4e;box-shadow:0 8px 24px rgba(220,147,24,.18)}
.cw-movie-rail{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(148px,1fr))!important;
  gap:1rem!important;
  overflow:visible!important;
  margin:0!important;
  padding:.15rem 0 .5rem!important;
  scrollbar-width:none;
}
.cw-materials-credit{
  margin:1.15rem 0 0;
  padding-top:.9rem;
  border-top:1px solid rgba(231,165,46,.12);
  color:#8f887e;
  font-size:.72rem;
  line-height:1.65;
  text-align:center;
}
#cwTicketCta[hidden]{display:none!important}
.cw-movie-card{
  position:relative;
  display:flex!important;
  flex:unset!important;
  min-width:0!important;
  padding:0!important;
  flex-direction:column;
  align-items:stretch!important;
  gap:0!important;
  overflow:hidden;
  text-align:right;
  border-radius:18px!important;
  border:1px solid rgba(231,165,46,.18)!important;
  background:#0f0e0c!important;
  box-shadow:0 15px 35px rgba(0,0,0,.2);
}
.cw-movie-card:hover{transform:translateY(-5px)!important;border-color:rgba(231,165,46,.58)!important;box-shadow:0 18px 42px rgba(0,0,0,.42)}
.cw-movie-card.active{background:#11100e!important;border-color:#e5a52f!important;box-shadow:0 0 0 2px rgba(231,165,46,.13),0 18px 42px rgba(0,0,0,.4)!important}
.cw-movie-card{content-visibility:auto;contain-intrinsic-size:auto 310px}
.cw-movie-card img{background:linear-gradient(110deg,#17130d 28%,#292013 45%,#17130d 62%);transition:opacity .18s ease}
.cw-screening-list{content-visibility:auto;contain-intrinsic-size:auto 900px}

/* Stable single-row cinema masthead on phones; prevents the search form from
   appearing as a detached overlay above the hero. */
@media(max-width:700px){
  .cw-nav{
    position:sticky!important;top:0!important;display:grid!important;
    grid-template-columns:minmax(0,1fr) 48px!important;grid-template-areas:"search brand"!important;
    align-items:center!important;width:100%!important;height:68px!important;min-height:68px!important;
    padding:8px 12px!important;gap:9px!important;overflow:visible!important;
  }
  .cw-brand{grid-area:brand!important;display:grid!important;place-items:center!important;width:48px!important;height:48px!important;min-width:48px!important;padding:0!important}
  .cw-brand img{width:44px!important;height:44px!important;flex:0 0 44px!important;margin:0!important}
  .cw-brand span{display:none!important}
  .cw-nav-search{
    grid-area:search!important;display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;
    align-items:center!important;width:100%!important;height:44px!important;min-height:44px!important;
    margin:0!important;padding:0 12px!important;gap:8px!important;border-radius:14px!important;
  }
  .cw-nav-search>span{display:grid!important;place-items:center!important;width:22px!important;height:22px!important;font-size:0!important}
  .cw-nav-search>span::before{content:"";display:block;width:13px;height:13px;border:2px solid #b7afa3;border-radius:50%;box-shadow:6px 6px 0 -5px #b7afa3;transform:translate(-2px,-2px)}
  .cw-nav-search input,.cw-nav-search input:focus{width:100%!important;height:42px!important;min-width:0!important;padding:0!important;font-size:13px!important;text-overflow:ellipsis!important}
  .cw-nav-search button,.cw-nav-links{display:none!important}
  .cw-shell{padding-top:12px!important}
}
.cw-movie-card>img,.cw-movie-card>.cw-card-poster{
  display:block;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2/3;
  object-fit:cover;
  border-radius:0!important;
  background:linear-gradient(145deg,#2a2115,#0d0b08)!important;
}
.cw-movie-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;width:100%;min-width:0;padding:.78rem .75rem .85rem}
.cw-movie-card-copy strong{width:100%;color:#fffaf1;font-size:.91rem;line-height:1.35;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.cw-movie-card-copy em{margin-top:.32rem;color:#e5a52f;font:800 .68rem "Heebo",Arial,sans-serif;font-style:normal}
.cw-movie-card-copy small{margin-top:auto;padding-top:.55rem;color:#aaa195!important;font-size:.68rem;line-height:1.35}

/* The catalogue rail is a visual poster picker. Film metadata and aggregated
   availability belong to the selected-film panel, not beneath every poster. */
.cw-movie-card{aspect-ratio:2/3!important;min-height:0!important}
.cw-movie-card>img,.cw-movie-card>.cw-card-poster{height:100%!important;aspect-ratio:2/3!important;border-radius:inherit!important}
.cw-edition-badge{position:absolute;z-index:3;right:8px;bottom:8px;max-width:calc(100% - 16px);padding:6px 9px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(8,9,12,.9);box-shadow:0 4px 16px rgba(0,0,0,.55);color:#fff;font:900 10px/1 "Heebo",Arial,sans-serif;letter-spacing:.02em;white-space:nowrap;backdrop-filter:blur(8px)}
.cw-demand-rank{
  position:absolute;
  top:.55rem;
  left:.55rem;
  z-index:2;
  display:grid;
  place-items:center;
  min-width:32px;
  height:32px;
  padding:0 .35rem;
  border:1px solid rgba(255,209,106,.5);
  border-radius:999px;
  background:rgba(7,6,5,.88);
  color:#ffd16a;
  font:900 .78rem "Heebo",Arial,sans-serif;
  backdrop-filter:blur(8px);
}

@media(max-width:1050px){.cw-movie-rail{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important}}
@media(max-width:700px){
  .cw-catalog-tools{display:block;margin-top:1rem}
  .cw-genre-filters{margin-top:.8rem;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.25rem;scrollbar-width:none}
  .cw-genre-filters button{flex:0 0 auto}
  .cw-movie-rail{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.65rem!important}
  .cw-movie-card{border-radius:14px!important}
  .cw-movie-card-copy{padding:.62rem .55rem .68rem}
  .cw-movie-card-copy strong{font-size:.78rem}
  .cw-movie-card-copy em{font-size:.6rem}
  .cw-movie-card-copy small{font-size:.58rem}
  .cw-demand-rank{top:.38rem;left:.38rem;min-width:27px;height:27px;font-size:.66rem}
}
@media(max-width:430px){.cw-movie-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Mobile cinema layout: a purpose-built compact view, not a scaled desktop page. */
@media (max-width: 700px) {
  *, *::before, *::after { box-sizing: border-box; }

  html, body {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    overflow-x: hidden;
  }

  .cw-nav {
    position: sticky;
    top: 0;
    height: auto;
    min-height: 72px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .65rem;
    padding: .65rem .85rem;
  }

  .cw-brand {
    order: 1;
    gap: .55rem;
    min-width: 0;
  }

  .cw-brand img {
    width: 42px;
    height: 42px;
    border-radius: 12px;
  }

  .cw-brand strong { font-size: 1rem; }
  .cw-brand small { font-size: .66rem; white-space: nowrap; }
  .cw-nav-links { display: none !important; }

  .cw-nav-search {
    order: 2;
    grid-column: 1;
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: .25rem .65rem;
    border-radius: 13px;
  }

  .cw-nav-search input,
  .cw-nav-search input:focus {
    width: 100%;
    min-width: 0;
    font-size: .82rem;
  }

  .cw-nav-search button { display: none; }

  .cw-shell {
    width: 100%;
    max-width: 100vw;
    min-width: 0;
    margin: 0 auto 3rem;
    padding: .8rem .75rem 0 !important;
    overflow: hidden;
  }

  .cw-shell > *,
  .cw-hero,
  .cw-catalog,
  .cw-movie-info,
  .cw-showtimes,
  .cw-picker,
  .cw-catalog-tools {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .cw-hero {
    display: block !important;
    margin: .25rem 0 .9rem;
    padding: 1.25rem 1rem !important;
    min-height: 0 !important;
    border-radius: 20px !important;
    text-align: right;
  }

  .cw-hero-copy { width: 100%; }
  .cw-hero .cw-kicker {
    padding: .38rem .68rem;
    border: 1px solid rgba(231,165,46,.24);
    border-radius: 999px;
    font-size: .67rem;
    letter-spacing: 0;
  }

  .cw-hero h1 {
    width: 100%;
    max-width: 100%;
    margin: .8rem 0 .6rem;
    font-family: Heebo, Arial, sans-serif !important;
    font-size: clamp(2rem, 10.5vw, 2.85rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.045em !important;
    text-wrap: balance;
  }

  .cw-hero p {
    width: 100%;
    max-width: 100% !important;
    margin: 0;
    font-size: .92rem !important;
    line-height: 1.7 !important;
  }

  .cw-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin-top: 1rem;
  }

  .cw-stats div {
    min-width: 0;
    padding: .7rem .8rem;
    border-radius: 14px;
  }

  .cw-stats strong { font-size: 1.22rem; }
  .cw-stats span { font-size: .69rem; }
  .cw-hero-card,
  .cw-hero-card:empty { display: none !important; }

  .cw-catalog,
  .cw-movie-info,
  .cw-showtimes {
    margin-bottom: .8rem;
    padding: 1rem !important;
    border-radius: 20px !important;
  }

  .cw-section-head {
    display: grid;
    gap: .75rem;
    align-items: start;
    margin-bottom: .85rem;
  }

  .cw-section-head h2 {
    margin-top: .25rem;
    font-size: 1.75rem;
  }

  .cw-section-head p {
    font-size: .86rem;
    line-height: 1.55;
  }

  .cw-mode-tabs {
    width: 100%;
    padding: .25rem;
    border-radius: 14px;
  }

  .cw-mode-tabs button { width: 100%; padding: .62rem .8rem; }
  .cw-picker,
  .cw-filters { grid-template-columns: 1fr !important; gap: .55rem; }
  .cw-picker label,
  .cw-filters label { padding: .6rem; border-radius: 14px; }
  .cw-picker input,
  .cw-picker select,
  .cw-filters select { height: 42px; }

  .cw-movie-rail { gap: .65rem; margin-inline: -.15rem; }
  .cw-movie-card {
    flex-basis: 228px;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: .65rem;
    padding: .6rem;
    border-radius: 17px;
  }

  .cw-movie-card img,
  .cw-card-poster { width: 56px; height: 76px; border-radius: 11px; }
  .cw-movie-card strong { font-size: .9rem; }

  .cw-info-grid { grid-template-columns: 1fr !important; gap: 1rem; }
  .cw-info-grid h2 { font-size: 1.7rem; margin: .35rem 0; }
  .cw-synopsis { font-size: .9rem; line-height: 1.7; }
  .cw-info-actions { grid-template-columns: 1fr !important; gap: .55rem; }
  .cw-ticket-cta,
  .cw-trailer-cta,
  .cw-binge-cta,
  .ab-save-btn { min-height: 44px; border-radius: 13px; font-size: .86rem; }

  .cw-date-strip { gap: .5rem; padding-bottom: .7rem; }
  .cw-date-strip button { flex-basis: 78px; min-height: 66px; border-radius: 14px; }
  .cw-smart-filter { gap: .4rem; padding: .6rem; border-radius: 14px; }
  .cw-smart-filter strong { width: 100%; font-size: .85rem; }
  .cw-smart-filter button { padding: .5rem .7rem; font-size: .72rem; }
  #cwClearFilters,
  .cw-refresh { width: 100%; min-height: 44px; }
}

/* Mobile cinema is a purpose-built layout, not a scaled desktop canvas. */
@media (max-width: 700px) {
  body {
    background-size: 52px 52px !important;
  }

  .cw-nav {
    position: relative !important;
    z-index: 20 !important;
    align-items: center !important;
    border-bottom: 1px solid rgba(231, 165, 46, .16) !important;
  }

  .cw-brand {
    justify-content: flex-start !important;
    direction: rtl !important;
  }

  .cw-nav-search {
    border-radius: 13px !important;
    background: #111 !important;
    border: 1px solid rgba(231, 165, 46, .24) !important;
    box-shadow: none !important;
  }

  .cw-nav-search input,
  .cw-nav-search input:focus {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    padding: 0 !important;
    font-size: .86rem !important;
  }

  .cw-shell {
    width: 100% !important;
    padding: .7rem !important;
    padding-top: .7rem !important;
  }

  .cw-hero {
    min-height: auto !important;
    margin: 0 0 .8rem !important;
    padding: 1rem !important;
    text-align: right !important;
    background:
      radial-gradient(circle at 0 100%, rgba(231,165,46,.12), transparent 46%),
      linear-gradient(145deg, #17130e, #0d0c0b) !important;
  }

  .cw-hero .cw-kicker,
  .cw-hero-kicker {
    margin: 0 0 .55rem !important;
    padding: .3rem .58rem !important;
    font: 800 .62rem/1.2 "Heebo", Arial, sans-serif !important;
    letter-spacing: 0 !important;
  }

  .cw-hero h1 {
    max-width: 18ch !important;
    margin: 0 0 .5rem !important;
    font-size: clamp(1.65rem, 8.4vw, 2.05rem) !important;
    line-height: 1.08 !important;
  }

  .cw-hero p {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
    font-size: .8rem !important;
    line-height: 1.55 !important;
  }

  .cw-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .45rem !important;
    margin-top: .8rem !important;
  }

  .cw-stats > div {
    min-height: 62px !important;
    padding: .55rem !important;
    border-radius: 13px !important;
  }

  .cw-stats strong { font-size: 1.05rem !important; }
  .cw-stats span { font-size: .64rem !important; }

  .cw-catalog,
  .cw-movie-info,
  .cw-showtimes {
    margin: 0 0 .8rem !important;
    padding: .8rem !important;
    border-radius: 18px !important;
  }

  .cw-catalog h2,
  .cw-movie-info h2,
  .cw-showtimes h2,
  .cw-section-head h2 {
    margin: 0 0 .35rem !important;
    font-size: 1.25rem !important;
  }

  .cw-picker,
  .cw-filters {
    margin-top: .7rem !important;
  }

  .cw-movie-rail,
  .cw-date-strip {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overscroll-behavior-inline: contain !important;
    scrollbar-width: none !important;
  }

  .cw-movie-rail::-webkit-scrollbar,
  .cw-date-strip::-webkit-scrollbar { display: none !important; }

  img,
  video,
  iframe {
    max-width: 100% !important;
  }
}

/* Final mobile containment layer: older cinema-widget rules use desktop widths
   and !important declarations, so keep every public cinema component inside
   the real viewport instead of scaling the desktop page down. */
@media (max-width: 700px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  html,
  body {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .cw-nav {
    position: sticky !important;
    inset: 0 0 auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    padding: 0.65rem 0.8rem !important;
    gap: 0.55rem !important;
    transform: none !important;
  }

  .cw-brand {
    order: 1 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    gap: 0.55rem !important;
  }

  .cw-brand img {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 12px !important;
  }

  .cw-brand strong {
    font-size: 1rem !important;
    line-height: 1.05 !important;
  }

  .cw-brand small {
    font-size: 0.64rem !important;
    line-height: 1.2 !important;
  }

  .cw-nav-links,
  .cw-nav-actions {
    display: none !important;
  }

  .cw-nav-search {
    order: 2 !important;
    flex: 1 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 0.85rem !important;
    transform: none !important;
  }

  .cw-shell,
  .cw-hero,
  .cw-hero-copy,
  .cw-catalog,
  .cw-movie-info,
  .cw-showtimes,
  .cw-section-head,
  .cw-picker,
  .cw-filters,
  .cw-info-grid,
  .cw-date-strip,
  .cw-results,
  .cw-grid {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    transform: none !important;
  }

  .cw-shell {
    padding: 0.65rem !important;
    margin: 0 auto 2rem !important;
  }

  .cw-hero {
    display: block !important;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 1.15rem !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  .cw-hero::before,
  .cw-hero::after,
  .cw-hero-art,
  .cw-hero-rank {
    display: none !important;
  }

  .cw-hero-copy {
    padding: 0 !important;
  }

  .cw-hero-kicker {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 0 0.8rem !important;
    padding: 0.38rem 0.65rem !important;
    font-size: 0.68rem !important;
  }

  .cw-hero h1 {
    max-width: 100% !important;
    margin: 0 0 0.7rem !important;
    font-family: "Heebo", Arial, sans-serif !important;
    font-size: clamp(1.75rem, 9vw, 2.35rem) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.04em !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .cw-hero p {
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 0.84rem !important;
    line-height: 1.55 !important;
  }

  .cw-stats {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 0.55rem !important;
    margin-top: 1rem !important;
  }

  .cw-stats > * {
    min-width: 0 !important;
    padding: 0.75rem 0.5rem !important;
  }

  .cw-stats strong {
    font-size: 1.25rem !important;
  }

  .cw-catalog,
  .cw-movie-info,
  .cw-showtimes {
    padding: 0.9rem !important;
    border-radius: 20px !important;
  }

  .cw-section-head {
    display: block !important;
    padding: 0 !important;
  }

  .cw-section-head h2,
  .cw-catalog h2,
  .cw-movie-info h2,
  .cw-showtimes h2 {
    font-size: 1.45rem !important;
    line-height: 1.15 !important;
  }

  .cw-section-head p,
  .cw-catalog p,
  .cw-movie-info p,
  .cw-showtimes p {
    font-size: 0.82rem !important;
    line-height: 1.5 !important;
  }

  .cw-picker,
  .cw-filters,
  .cw-info-grid,
  .cw-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0.65rem !important;
  }

  input,
  select,
  textarea,
  button,
  .cw-btn {
    max-width: 100% !important;
  }
}

/* Hard mobile containment: every cinema section starts at the viewport edge
   and the catalogue stays compact without horizontal drift. */
@media (max-width: 700px) {
  html,
  body {
    direction: rtl !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }

  .cw-nav,
  .cw-shell {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    inset-inline: auto !important;
    transform: none !important;
  }

  .cw-shell {
    padding: 0.65rem !important;
  }

  .cw-shell > *,
  .cw-catalog > *,
  .cw-movie-info > *,
  .cw-showtimes > * {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .cw-movie-rail {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.7rem !important;
    overflow: visible !important;
  }

  .cw-movie-card {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}
.cw-trailer-cta {
  appearance: none;
  border: 1px solid rgba(226, 166, 54, .55);
  background: linear-gradient(135deg, #d5911b, #f2bf55);
  color: #171109;
  cursor: pointer;
  font: 800 14px/1 "Heebo", "Assistant", Arial, sans-serif;
  padding: 12px 18px;
  border-radius: 999px;
  transition: transform .2s ease, box-shadow .2s ease;
}
.cw-trailer-cta:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(226,166,54,.22); }
.cw-trailer-modal[hidden] { display: none !important; }
.cw-trailer-modal { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: clamp(16px, 3vw, 40px); direction: rtl; }
.cw-trailer-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(0,0,0,.86); backdrop-filter: blur(10px); cursor: pointer; }
.cw-trailer-modal__panel { position: relative; z-index: 1; width: min(1080px, 100%); background: #0c0b09; border: 1px solid rgba(226,166,54,.45); border-radius: 24px; overflow: hidden; box-shadow: 0 30px 90px rgba(0,0,0,.7); }
.cw-trailer-modal__header { padding: 20px 76px 18px 24px; border-bottom: 1px solid rgba(226,166,54,.18); }
.cw-trailer-modal__header span { color: #e2a636; font: 800 12px/1.2 "Heebo", "Assistant", Arial, sans-serif; }
.cw-trailer-modal__header h2 { color: #fff; margin: 7px 0 0; font: 900 clamp(22px, 3vw, 34px)/1.15 "Heebo", "Assistant", Arial, sans-serif; }
.cw-trailer-modal__frame { aspect-ratio: 16 / 9; background: #000; }
.cw-trailer-modal__frame iframe, .cw-trailer-modal__frame video { display: block; width: 100%; height: 100%; border: 0; object-fit: contain; }
.cw-trailer-modal__close { position: absolute; z-index: 2; top: 16px; left: 16px; width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(226,166,54,.4); background: #15130f; color: #fff; cursor: pointer; font: 400 30px/1 Arial, sans-serif; display: grid; place-items: center; }
body.cw-trailer-open { overflow: hidden; }
@media (max-width: 600px) {
  .cw-trailer-modal { padding: 10px; }
  .cw-trailer-modal__panel { border-radius: 18px; }
  .cw-trailer-modal__header { padding: 17px 62px 15px 18px; }
  .cw-trailer-modal__close { width: 38px; height: 38px; top: 12px; left: 12px; }
}

/* Final cinema mobile-nav lock. Keep last to override legacy responsive passes. */
@media(max-width:700px){
  body>.cw-nav{
    position:sticky!important;inset:0 0 auto!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) 48px!important;
    grid-template-rows:52px!important;grid-template-areas:"search brand"!important;
    align-items:center!important;width:100%!important;height:68px!important;min-height:68px!important;
    margin:0!important;padding:8px 12px!important;gap:9px!important;overflow:visible!important;
  }
  body>.cw-nav>.cw-brand{
    grid-area:brand!important;grid-column:2!important;grid-row:1!important;
    display:grid!important;place-items:center!important;align-self:center!important;justify-self:center!important;
    flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;margin:0!important;padding:0!important;
  }
  body>.cw-nav>.cw-brand img{width:44px!important;height:44px!important;min-width:44px!important;margin:0!important}
  body>.cw-nav>.cw-brand span{display:none!important}
  body>.cw-nav>.cw-nav-search{
    grid-area:search!important;grid-column:1!important;grid-row:1!important;order:initial!important;
    display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;
    align-items:center!important;align-self:center!important;justify-self:stretch!important;
    flex:0 1 auto!important;width:100%!important;max-width:none!important;height:44px!important;min-height:44px!important;
    margin:0!important;padding:0 12px!important;gap:8px!important;border-radius:14px!important;
  }
  body>.cw-nav>.cw-nav-search>span{display:grid!important;place-items:center!important;width:22px!important;height:22px!important;font-size:0!important}
  body>.cw-nav>.cw-nav-search>span::before{content:"";display:block;width:13px;height:13px;border:2px solid #b7afa3;border-radius:50%;box-shadow:6px 6px 0 -5px #b7afa3;transform:translate(-2px,-2px)}
  body>.cw-nav>.cw-nav-search input,body>.cw-nav>.cw-nav-search input:focus{width:100%!important;height:42px!important;min-width:0!important;padding:0!important;font-size:13px!important;text-overflow:ellipsis!important}
  body>.cw-nav>.cw-nav-search button,body>.cw-nav>.cw-nav-links{display:none!important}
  body>.cw-shell{padding-top:12px!important}

  body>.cw-shell>.cw-catalog,body>.cw-shell>.cw-showtimes{padding:14px!important;border-radius:20px!important}
  .cw-section-head{display:block!important;margin-bottom:14px!important}
  .cw-section-head p{font-size:13px!important;line-height:1.55!important}
  .cw-mode-tabs{width:100%!important;margin-top:12px!important}
  .cw-mode-tabs button{width:100%!important;min-height:44px!important}
  .cw-picker{grid-template-columns:1fr!important;gap:9px!important;margin-bottom:12px!important}
  .cw-picker label{padding:10px!important;border-radius:14px!important}

  /* A touch carousel keeps the film catalogue useful without producing a
     twenty-screen wall of desktop cards. */
  .cw-movie-rail{
    display:flex!important;grid-template-columns:none!important;gap:10px!important;
    width:auto!important;max-width:none!important;min-height:292px!important;height:auto!important;
    margin-inline:-14px!important;padding:2px 14px 12px!important;
    overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;
    scroll-padding-inline:14px!important;-webkit-overflow-scrolling:touch!important;
  }
  .cw-movie-card{
    display:flex!important;flex:0 0 146px!important;width:146px!important;min-width:146px!important;max-width:146px!important;
    height:219px!important;min-height:219px!important;margin:0!important;padding:0!important;
    flex-direction:column!important;align-items:stretch!important;scroll-snap-align:start!important;
    contain:none!important;content-visibility:visible!important;border-radius:16px!important;
  }
  .cw-movie-card>img,.cw-movie-card>.cw-card-poster{width:100%!important;height:100%!important;aspect-ratio:2/3!important;border-radius:15px!important}
  .cw-movie-card-copy{flex:1!important;padding:10px 9px 11px!important}
  .cw-movie-card-copy strong{font-size:13px!important;line-height:1.35!important}
  .cw-movie-card-copy small{font-size:10px!important}

  .cw-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .cw-filters label{padding:9px!important;border-radius:14px!important}
  .cw-filters select{height:44px!important;padding-inline:8px!important;font-size:12px!important}
  #cwClearFilters{grid-column:1/-1!important;min-height:44px!important}
  .cw-date-strip{margin-inline:-2px!important;scroll-snap-type:x proximity!important}
  .cw-date-strip button{flex-basis:82px!important;min-height:66px!important;scroll-snap-align:start!important}

  .cw-day-group{grid-template-columns:1fr!important;gap:9px!important}
  .cw-day-title{position:static!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:10px 12px!important;border-radius:14px!important}
  .cw-day-title strong{font-size:18px!important}
  .cw-cinema-card{border-radius:16px!important}
  .cw-cinema-head{grid-template-columns:54px minmax(0,1fr)!important;padding:11px!important;gap:10px!important}
  .cw-network-logo{width:54px!important;height:42px!important;border-radius:10px!important}
  .cw-cinema-head strong{font-size:15px!important}
  .cw-cinema-head small{font-size:11px!important}
  .cw-variants{padding:3px 11px 11px!important}
  .cw-variant{grid-template-columns:1fr!important;gap:8px!important;padding:11px 0!important}
  .cw-times{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:3px!important;scroll-snap-type:x proximity!important}
  .cw-time{flex:0 0 148px!important;min-width:148px!important;padding:8px 6px!important;scroll-snap-align:start!important}
  .cw-pagination{padding:10px!important;gap:7px!important;border-radius:15px!important}
  .cw-page-summary{order:-1;flex-basis:100%!important}
}

/* Safe, usable cinema navigation on phones. */
.cw-menu-toggle{display:none}
.cw-movie-info{scroll-margin-top:calc(92px + env(safe-area-inset-top,0px))}
.cw-synopsis-title{margin:22px 0 7px;color:#e6ad40;font-size:13px;font-weight:950}
.cw-synopsis{white-space:pre-line}
.cinema-overview-page>.gz-site-header,.screenings-page>.gz-site-header{position:sticky;top:0;z-index:500}
.cinema-overview-page header:not(.gz-site-header),.screenings-page header:not(.gz-site-header){position:static;inset:auto;min-height:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.cinema-overview-page>.cw-shell,.screenings-page>.cw-shell{padding-top:clamp(18px,3vw,42px)}
@media(max-width:700px){
  body>.cw-nav{grid-template-columns:minmax(0,1fr) 66px 48px!important;grid-template-areas:"search menu brand"!important;height:auto!important;min-height:calc(102px + env(safe-area-inset-top,0px))!important;padding:max(34px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px))!important}
  body>.cw-nav>.cw-brand{grid-column:3!important}
  body>.cw-nav>.cw-nav-search{grid-column:1!important}
  body>.cw-nav>.cw-menu-toggle{grid-area:menu;grid-column:2;grid-row:1;display:grid;min-height:42px;place-items:center;padding:0 9px;border:1px solid rgba(225,173,67,.35);border-radius:13px;background:#12100c;color:#e9bd63;font:900 11px Heebo;cursor:pointer}
  body>.cw-nav>.cw-nav-links.is-open{position:absolute;top:100%;right:12px;left:12px;display:flex!important;align-items:stretch;flex-direction:column;gap:0;padding:8px;border:1px solid rgba(225,173,67,.28);border-radius:16px;background:rgba(9,8,7,.98);box-shadow:0 18px 45px rgba(0,0,0,.55)}
  body>.cw-nav>.cw-nav-links.is-open a{min-height:44px;padding:11px 13px;border-radius:10px;color:#f1e6d2}
  body>.cw-nav>.cw-nav-links.is-open a:after{display:none}
}
/* Separate the editorial cinema catalog from the focused showtimes page. */
.cinema-overview-page .cinema-background-showtimes{display:none!important}
.cw-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cw-hero-actions a{display:inline-flex;min-height:52px;align-items:center;justify-content:center;border-radius:14px;font-weight:900}
.cw-hero-screenings{position:relative;min-width:285px;padding:0 24px;background:linear-gradient(135deg,#c78920,#f1c15c);color:#130d04;text-decoration:none!important;font-size:15px;font-weight:950;letter-spacing:0;box-shadow:0 12px 30px rgba(204,139,25,.2)}
.cw-hero-binge{min-width:165px;padding:0 22px;border:1px solid rgba(225,173,67,.42);background:rgba(12,10,7,.72);color:#efc66f;text-decoration:none!important;font-size:14px;font-weight:900}
.cw-hero-actions a:hover{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:640px){.cw-hero-actions{display:grid;grid-template-columns:1fr;margin-top:18px}.cw-hero-actions a,.cw-hero-screenings,.cw-hero-binge{width:100%;min-width:0}.cw-hero-screenings{justify-content:center;font-size:14px}}
