/* FlixMomo 1.0.6 — mobile-first finishing layer.
   Loaded AFTER us.css to preserve the original black + yellow visual identity. */
.cs-hero-copy,.cs-episode-content,.cs-episode-card,.cs-episode-grid,.cs-footer-legal{min-width:0}
.cs-episode-card:focus-visible,.cs-season-btn:focus-visible,.cs-hero-actions a:focus-visible,.cs-mobile-dock a:focus-visible{outline:2px solid #ffd12e;outline-offset:3px}
.cs-footer-about p{max-width:400px;margin:13px 0 0;line-height:1.75;color:#adb0b9}
.cs-footer-about p:first-child{margin-top:13px}
.cs-footer-about a,.cs-footer-legal a{color:#ffe173!important;text-decoration:underline;text-underline-offset:2px}
.cs-footer-top:has(>.cs-footer-brand:only-child){grid-template-columns:1fr}
.cs-footer-legal{flex:1;max-width:720px;overflow-wrap:anywhere}
.cs-footer-legal p{max-width:100%;text-align:right;line-height:1.65;margin:0 0 7px}
.cs-footer-legal p:last-child{margin-bottom:0}
.cs-tmdb-attribution{font-size:11px;opacity:.86}
@media (max-width:980px){
  .cs-hero-panel-card{max-width:100%}
  .cs-hero-inner{min-height:unset}
}
@media (max-width:760px){
  /* A cinematic image area comes first; the readable synopsis follows below. */
  .cs-hero:not(.cs-empty-hero){background:#08090e}
  .cs-hero:not(.cs-empty-hero):before{
    top:0;right:0;bottom:auto;left:0;
    height:clamp(258px,76vw,440px);
    background-size:cover;
    background-position:center 29%;
    opacity:1;filter:saturate(1.08) contrast(1.04);
  }
  .cs-hero:not(.cs-empty-hero):after{
    top:0;right:0;bottom:auto;left:0;
    height:clamp(260px,79vw,458px);
    background:linear-gradient(180deg,rgba(7,8,13,.03) 0%,rgba(7,8,13,.04) 34%,rgba(7,8,13,.25) 60%,#08090e 100%);
  }
  .cs-hero:not(.cs-empty-hero) .cs-hero-inner{
    display:block;
    min-height:0;
    padding:clamp(242px,70vw,405px) 18px 30px;
  }
  .cs-hero:not(.cs-empty-hero) .cs-hero-copy{max-width:100%;position:relative;z-index:1}
  .cs-hero .cs-eyebrow{font-size:10px;letter-spacing:.095em;line-height:1.4}
  .cs-hero h1{font-size:clamp(32px,9vw,48px);line-height:1.08;letter-spacing:-.05em;margin:9px 0 11px;overflow-wrap:anywhere}
  .cs-hero .cs-hero-details{gap:7px 10px;font-size:12px;line-height:1.5}
  .cs-hero .cs-hero-details span+span:before{margin-right:7px}
  .cs-hero .cs-hero-details span:nth-child(n+4){display:none}
  .cs-hero p{font-size:13px;line-height:1.62;margin:12px 0 0;color:#d4d5d9;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  .cs-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:19px;width:100%}
  .cs-hero-actions .cs-primary-btn,.cs-hero-actions .cs-secondary-btn{
    width:100%;max-width:100%;min-width:0;min-height:46px;white-space:normal;
    padding:9px 10px;font-size:12px;line-height:1.2;text-align:center;box-shadow:none;
  }
  .cs-hero-stats,.cs-hero-panel{display:none!important}
  .cs-empty-hero .cs-hero-inner{min-height:0;padding:64px 18px 48px}
  .cs-empty-hero .cs-hero-actions{display:flex}
  /* The three explore highlights remain swipeable without a full-screen stack. */
  .cs-home-highlights{
    display:flex;grid-template-columns:none;gap:11px;
    overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;
    margin:0 auto 16px;padding-top:14px;padding-bottom:12px;
    scrollbar-width:none;
  }
  .cs-home-highlights::-webkit-scrollbar{display:none}
  .cs-highlight-card{flex:0 0 min(78vw,300px);scroll-snap-align:start;padding:17px 18px;border-radius:15px;box-shadow:none}
  .cs-highlight-card strong{font-size:17px}
  .cs-highlight-card small{font-size:12px;line-height:1.5}
  .cs-rail-track{grid-auto-columns:clamp(130px,38vw,180px)}
  .cs-home-rails{padding-top:4px}
  /* Remove empty height below the TV detail heading. */
  .cs-detail-hero{min-height:0}
  .cs-detail-layout{padding-bottom:26px}
  .cs-episodes{padding-top:18px;padding-bottom:12px;scroll-margin-top:75px}
  .cs-section-heading{margin-bottom:15px}
  .cs-section-heading h2{font-size:clamp(23px,6.7vw,30px);line-height:1.18;margin-top:5px}
  .cs-section-heading p{font-size:13px;line-height:1.55;max-width:540px}
  .cs-season-buttons{
    min-width:0;max-width:100%;display:flex;flex-wrap:nowrap;
    padding:3px 0 12px;gap:9px;overflow-x:auto;
    overscroll-behavior-inline:contain;scroll-snap-type:x proximity;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
    margin-bottom:13px;
  }
  .cs-season-buttons::-webkit-scrollbar{display:none}
  .cs-season-btn{flex:0 0 auto;scroll-snap-align:start;min-width:116px;padding:10px 12px;line-height:1.45;white-space:nowrap}
  .cs-season-btn small{margin-top:2px}
  /* Portrait phones: episode artwork above all text; no text can slide under it. */
  .cs-episode-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:15px;width:100%}
  .cs-episode-card{display:flex;flex-direction:column;min-width:0;width:100%;height:auto;border-radius:16px;overflow:hidden;transform:none}
  .cs-episode-art{display:block;position:relative;width:100%;height:auto;flex:0 0 auto;aspect-ratio:16/9;min-width:0;overflow:hidden}
  .cs-episode-art img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .cs-episode-content{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%;padding:14px 16px 16px;overflow-wrap:anywhere;word-break:normal}
  .cs-episode-content strong{display:block;font-size:16px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
  .cs-episode-content small{display:block;font-size:12px;line-height:1.5}
  .cs-episode-content>span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.55;white-space:normal;overflow-wrap:anywhere}
  .cs-episode-content b{font-size:12px;line-height:1.4;margin-top:4px}
  .cs-episode-card:hover{transform:none}
  .cs-ep-play{width:47px;height:47px;font-size:18px}
  .cs-footer-bottom{display:flex;align-items:flex-start;flex-direction:column;gap:12px}
  .cs-footer-legal{max-width:100%;width:100%}
  .cs-footer-legal p{max-width:100%;text-align:left;font-size:11px;line-height:1.7}
  .cs-footer-inner{padding-bottom:26px}
  .cs-mobile-dock{padding-left:max(5px,env(safe-area-inset-left));padding-right:max(5px,env(safe-area-inset-right));padding-bottom:max(7px,env(safe-area-inset-bottom))}
  .cs-mobile-dock a{min-width:0;min-height:51px;gap:3px}
  .cs-mobile-dock a span{font-size:10px;line-height:1.15;white-space:nowrap}
  .cs-mobile-dock a[aria-current="page"]{color:#ffd12e!important}
  .cs-mobile-dock a[aria-current="page"] svg{color:#ffd12e!important}
  .cs-footer{padding-bottom:calc(65px + env(safe-area-inset-bottom))}
}
@media (min-width:541px) and (max-width:760px){
  /* Larger phones/tablets may show the horizontal version, with safe grid cells. */
  .cs-episode-card{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%)}
  .cs-episode-art{height:100%;min-height:168px;aspect-ratio:auto}
  .cs-episode-content{justify-content:center;padding:16px 18px}
}
@media(max-width:360px){
  .cs-hero:not(.cs-empty-hero) .cs-hero-inner{padding-top:clamp(214px,68vw,252px)}
  .cs-hero .cs-eyebrow{font-size:9px}
  .cs-hero h1{font-size:32px}
  .cs-hero-actions .cs-primary-btn,.cs-hero-actions .cs-secondary-btn{font-size:11px;padding:9px 7px}
  .cs-episode-content{padding:12px 13px 14px}
  .cs-mobile-dock a span{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.cs-episode-card,.cs-highlight-card{transition:none!important}}
