/* RYVEX CINEMA: film first, interface second. No cards-as-panels, no mobile bottom navigation. */
.site-header{position:fixed;inset-block-start:0;inset-inline:0;height:75px;z-index:85;background:linear-gradient(#050505db,#0505058f 65%,transparent);transition:background .25s,box-shadow .25s}
.site-header.scrolled{background:#141414fa;box-shadow:0 2px 22px #0006}
.header-inner{height:100%;padding-inline:var(--gutter);display:flex;align-items:center;gap:40px;max-width:1900px;margin:0 auto}
.brand-link{flex-shrink:0;display:inline-flex;align-items:center}
.brand{font-family:Impact,"Arial Narrow",Arial,sans-serif;font-size:clamp(26px,2.6vw,39px);line-height:1;font-stretch:condensed;font-weight:900;letter-spacing:-.058em;color:#e50914;display:inline-flex;align-items:end;text-shadow:0 1px 1px #0004}
.brand-tv{color:#eee;letter-spacing:0;font-size:8px;font-family:Arial,sans-serif;font-weight:800;margin:0 0 2px 5px;opacity:.95}
.desktop-nav{display:flex;align-items:center;gap:clamp(15px,1.75vw,29px);white-space:nowrap}
.desktop-nav a{font-size:14px;font-weight:450;color:#e5e5e5;transition:color .15s}.desktop-nav a:hover{color:#999}.desktop-nav a.current{color:#fff;font-weight:750}
.header-actions{display:flex;align-items:center;gap:22px;margin-inline-start:auto}
.header-icon{display:grid;place-items:center;flex-shrink:0;width:30px;height:38px;color:#fff}.header-icon .icon{width:23px;height:23px}.header-icon:hover{color:#c4c4c4}
.header-language{font-size:14px;font-weight:750;min-width:27px}.header-language:hover{color:#ddd}
.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:2px}
.mobile-menu{display:none}.preview-mark{position:fixed;inset-block-start:80px;inset-inline-end:var(--gutter);z-index:86;border:1px solid #ffffff44;background:#000b;padding:6px 10px;border-radius:3px;font-size:9px;letter-spacing:.13em;color:#eee}
#main{min-height:65vh}
.picture{display:block;position:relative;overflow:hidden;background:#222;isolation:isolate}.picture img{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0;z-index:1;transition:opacity .3s}.picture-fallback{position:absolute;inset:0;background:linear-gradient(138deg,#2f3037,#101115 61%,#171719);display:block;z-index:0}.picture-fallback:after{content:"";position:absolute;width:110%;height:1px;inset-block-start:48%;inset-inline-start:-5%;transform:rotate(-30deg);background:#ffffff0a}.picture-fallback i{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 28%,#ffffff09,transparent 58%)}.picture img[hidden]{display:none}
/* Edge-to-edge cinematic billboard */
.billboard{height:clamp(580px,55vw,840px);min-height:570px;position:relative;overflow:hidden;background:#080808;isolation:isolate}
#feature-view{position:absolute;inset:0}.billboard-art,.billboard-art .picture{position:absolute;inset:0;width:100%;height:100%}
.billboard-art .picture img{object-fit:cover;object-position:55% 31%}.billboard-art .picture-fallback{background:linear-gradient(130deg,#171a1e,#1d222b 55%,#100e12)}
.billboard-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080809ed 0%,#090a0be0 14%,#0c0e0f83 39%,#05050508 78%),linear-gradient(0deg,#141414 0%,#141414b8 9%,#14141415 37%,transparent 65%),linear-gradient(180deg,#0009 0%,transparent 20%)}
.billboard-copy{position:absolute;z-index:2;inset-inline-start:var(--gutter);inset-block-end:clamp(130px,12vw,190px);width:min(39vw,620px);max-width:calc(100% - 30px);text-align:start}
.eyeline{display:flex;align-items:center;gap:10px;color:#dcdcdc;font-size:14px;letter-spacing:.22em;font-weight:700;margin-bottom:15px}
.brand-letter{display:inline-block;font-family:Impact,"Arial Narrow",Arial,sans-serif;font-size:29px;font-weight:900;line-height:1;color:#e50914;letter-spacing:-.06em}
.billboard-title{font-family:Arial,"Helvetica Neue",sans-serif;font-size:clamp(53px,5.35vw,104px);line-height:.99;font-weight:900;letter-spacing:-.064em;max-width:700px;text-wrap:balance;text-shadow:0 3px 15px #0009}
.billboard-tagline{font-weight:760;font-size:clamp(15px,1.5vw,23px);line-height:1.2;margin-top:20px;text-shadow:0 2px 9px #000b}
.billboard-desc{font-size:clamp(14px,1.2vw,19px);line-height:1.4;font-weight:460;color:#f7f7f7;max-width:590px;text-shadow:0 2px 10px #000d;margin-top:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.billboard-cta{display:flex;gap:12px;margin-top:23px;flex-wrap:wrap}
.billboard-cta .button{height:47px;padding-inline:clamp(18px,2vw,30px);font-size:16px}.billboard-cta .button .icon{width:25px;height:25px}
.billboard-genres{font-size:12px;color:#d7d7d7;margin-top:26px;letter-spacing:.025em}
.billboard-rating{position:absolute;inset-inline-end:0;inset-block-end:195px;background:#333b;color:#eee;border-inline-start:3px solid #c0c0c0;padding:9px 52px 9px 14px;min-width:122px;font-size:14px}
.hero-dots{position:absolute;z-index:8;inset-inline-end:var(--gutter);inset-block-end:123px;display:flex;gap:5px;align-items:center}
.hero-dots button{padding:12px 2px}.hero-dots button span{display:block;width:23px;height:3px;background:#ffffff61;transition:background .15s,width .15s}.hero-dots button.selected span{background:#fff;width:31px}
/* Classic floating streaming shelves */
.home-rows{position:relative;margin-top:-105px;z-index:4;padding-bottom:45px}
.shelf{position:relative;margin-bottom:36px;isolation:isolate}.shelf:focus-within{z-index:8}.shelf:hover{z-index:8}
.section-head{margin-inline:var(--gutter);display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:13px;min-height:29px}
.section-head h2{font-size:clamp(17px,1.65vw,25px);font-weight:800;letter-spacing:-.02em;line-height:1.26}
.section-all{font-size:12px;font-weight:650;color:#a5a5a5;display:inline-flex;align-items:center;gap:2px}.section-all .icon{width:15px;height:15px}.section-all:hover{color:#fff}
.poster-rail,.continue-rail{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;scroll-padding-inline:var(--gutter);padding:2px var(--gutter) 27px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
.poster-rail::-webkit-scrollbar,.continue-rail::-webkit-scrollbar{display:none}
.tile{position:relative;flex:0 0 auto;scroll-snap-align:start;width:clamp(195px,17.6vw,325px);min-width:0;z-index:1;contain:layout style;transition:transform .18s ease,box-shadow .18s ease}
.tile-landscape{aspect-ratio:16/9}.tile-portrait{width:clamp(128px,12.4vw,215px);aspect-ratio:2/3}
.tile:hover,.tile:focus-within{z-index:9;transform:scale(1.045);box-shadow:0 12px 30px #0009}
.tile-link{position:absolute;inset:0;display:block;overflow:hidden;border-radius:3px;background:#242424;isolation:isolate}
.tile-link .picture{width:100%;height:100%}.tile-link .picture img{object-fit:cover;transform:scale(1);transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.tile:hover .tile-link .picture img{transform:scale(1.055)}
.tile-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(0deg,#000d 0%,#0005 19%,transparent 60%)}
.tile-caption{position:absolute;inset-inline:12px;inset-block-end:11px;z-index:3;font-size:clamp(13px,1.1vw,17px);line-height:1.12;letter-spacing:-.015em;font-weight:820;text-shadow:0 2px 6px #000b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:2.35em}
.tile-soon{position:absolute;z-index:4;inset-inline-start:0;inset-block-start:12px;color:#fff;font-size:10px;letter-spacing:.03em;background:#e50914;padding:4px 8px;font-weight:760}
.tile-progress{position:absolute;z-index:5;inset-inline:0;inset-block-end:0;height:3px;background:#646464}.tile-progress i{display:block;height:100%;background:#e50914}
.tile-hover{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;justify-content:flex-end;padding:14px;background:linear-gradient(0deg,#121212 0%,#151515e6 30%,transparent 72%);opacity:0;pointer-events:none;transition:opacity .16s}
.tile:hover .tile-hover,.tile:focus-within .tile-hover{opacity:1;pointer-events:auto}
.tile-hover strong{font-size:14px;max-width:95%;line-height:1.1;text-shadow:0 2px 3px #000}.tile-hover small{font-size:10px;color:#ddd;margin-top:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tile-controls{display:flex;gap:6px;margin-bottom:9px;align-items:center}.tile-controls .round-action,.tile-controls a{width:32px;height:32px;border:1.6px solid #fff9;border-radius:50%;display:grid;place-items:center;background:#222b}.tile-controls .icon{width:18px;height:18px}.tile-controls .tile-play{background:#fff;color:#151515;border-color:#fff}.tile-controls .tile-more{margin-inline-start:auto}.tile-controls a:hover,.tile-controls button:hover{border-color:#fff}.tile-meta{display:flex;gap:9px;align-items:center;color:#ddd;font-size:11px;margin-top:6px}.tile-maturity{border:1px solid #aaa9;padding:0 3px;font-size:9px}
.tile-portrait .tile-hover{padding:11px}.tile-portrait .tile-caption{font-size:clamp(13px,1.12vw,17px)}
.progress-tile{margin-bottom:30px}.continue-play{position:absolute;z-index:3;inset:0;display:grid;place-items:center;opacity:0}.continue-play .icon{width:45px;height:45px;padding:8px;border:2px solid white;border-radius:50%;background:#0005}.progress-tile:hover .continue-play{opacity:1}
.continue-info{position:absolute;inset-inline:0;top:calc(100% + 8px);display:flex;align-items:baseline;gap:6px;flex-direction:column}.continue-info strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.continue-info span{font-size:11px;color:#aaa}
.remove-history{position:absolute;z-index:8;inset-block-start:7px;inset-inline-end:7px;background:#0009;width:24px;height:24px;opacity:0}.remove-history .icon{width:16px;height:16px}.progress-tile:hover .remove-history,.progress-tile:focus-within .remove-history{opacity:1}
.rail-controls{position:absolute;inset-inline-end:var(--gutter);inset-block-start:0;display:flex;gap:5px}.rail-controls[hidden]{display:none!important}.rail-controls button{height:25px;width:24px;border-radius:0}.rail-controls .icon{width:17px;height:17px}.rail-controls button[disabled]{visibility:hidden}
/* Search and preferences: one calm overlay, not a dashboard */
.search-dialog,.preferences-dialog{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:none;background:#141414f7;color:#fff;overflow-y:auto}
.search-dialog::backdrop,.preferences-dialog::backdrop{background:#000d}
.search-inner,.prefs-inner{max-width:900px;margin:0 auto;padding:clamp(85px,10vw,140px) var(--gutter) 90px}
.search-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.search-top h2{font-size:clamp(27px,3vw,40px)}.search-top .icon-button{border:1px solid #666}
.search-field{display:flex;align-items:center;gap:12px;border:1px solid #888;background:#191919;padding:10px 14px}.search-field .icon{width:22px;height:22px}.search-field input{background:transparent;border:none;width:100%;font-size:20px;min-height:38px;outline:none!important}
.search-summary{margin:24px 0 15px;font-size:13px;color:#bbb}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.search-result{display:flex;align-items:center;gap:15px;padding:7px;border-radius:3px;background:#242424}.search-result:hover{background:#333}.search-result .picture{width:103px;aspect-ratio:16/9;flex:none}.search-result .result-copy{flex:1;min-width:0}.search-result .result-copy strong{display:block;line-height:1.2;font-size:14px}.search-result .result-copy small{display:block;color:#aaa;margin-top:5px}.search-result>.icon{width:18px}
.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid #333;padding:20px 0}.setting-row select{padding:10px 28px 10px 12px}.privacy-note{font-size:13px;color:#999;max-width:500px;margin-top:24px}
/* Browse and collection search */
.browse-page{max-width:1880px;margin:0 auto;padding:135px var(--gutter) 100px;min-height:85vh}
.browse-heading{margin-bottom:35px}.browse-overline{font-size:12px;letter-spacing:.15em;font-weight:750;color:#e50914;margin-bottom:12px}.browse-heading h1{font-size:clamp(37px,4.2vw,64px);letter-spacing:-.05em;line-height:1.05}.browse-heading>p:last-child{margin-top:11px;color:#c4c4c4;font-size:14px}
.browse-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:23px}.browse-tabs{display:flex;gap:7px;align-items:center}.browse-chip{padding:10px 17px;border:1px solid #555;font-size:13px;font-weight:650;border-radius:2px}.browse-chip.active{background:#fff;border-color:#fff;color:#151515}.browse-chip:hover:not(.active){background:#333}
.browse-search{margin-inline-start:auto;display:flex;gap:8px;align-items:center;border:1px solid #777;background:#181818;padding:0 10px;min-width:185px}.browse-search .icon{width:17px}.browse-search input{height:38px;min-width:0;width:170px;background:transparent;border:none;outline:0!important;font-size:13px}
.browse-genre{position:relative}.browse-genre select{height:40px;appearance:none;border:1px solid #666;background:#1b1b1b;padding:0 36px 0 12px;font-size:13px}.browse-genre .icon{pointer-events:none;position:absolute;top:10px;right:10px;width:17px}
.browse-result-count{font-size:12px;color:#999;margin:0 0 15px}.browse-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px 9px}.browse-grid .tile{width:100%;aspect-ratio:16/9}.browse-empty{grid-column:1/-1;padding:80px;text-align:center;color:#aaa}
/* Movie/series details: cinema modal instead of boxy content pages */
.detail-veil{position:fixed;inset:0;background:#000e;z-index:86}.detail-page{position:relative;z-index:87;padding:65px var(--gutter) 80px;min-height:100vh;display:flex;justify-content:center}
.detail-modal{position:relative;width:min(100%,970px);align-self:flex-start;border-radius:7px;overflow:hidden;box-shadow:0 12px 80px #000e;background:#181818}
.detail-top{height:clamp(360px,44vw,560px);position:relative;overflow:hidden;background:#121212}.detail-visual,.detail-visual .picture{position:absolute;inset:0;width:100%;height:100%}.detail-visual .picture img{object-fit:cover;object-position:center 22%}.detail-visual-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#181818 0%,#1818184d 37%,transparent 70%),linear-gradient(90deg,#0009,transparent 75%)}
.detail-close{position:absolute;inset-inline-end:20px;inset-block-start:18px;width:35px;height:35px;display:grid;place-items:center;background:#181818;border-radius:50%;z-index:10}.detail-close:hover{background:#444}.detail-close .icon{width:19px;height:19px}
.detail-hero-copy{position:absolute;inset-inline-start:45px;inset-inline-end:40px;inset-block-end:32px}.detail-overline{display:flex;align-items:center;gap:8px;color:#ddd;font-size:13px;font-weight:730;letter-spacing:.24em;margin-bottom:10px}.detail-overline .brand-letter{font-size:25px}.detail-hero-copy h1{font-size:clamp(48px,5.5vw,79px);font-weight:900;line-height:1;letter-spacing:-.055em;text-wrap:balance;max-width:740px;text-shadow:0 2px 10px #0009}.detail-tagline{max-width:550px;font-size:17px;margin-top:10px;font-weight:650;text-shadow:0 2px 6px #000c}.detail-buttons{display:flex;align-items:center;gap:12px;margin-top:24px}.detail-buttons .round-action{display:grid;place-items:center;width:43px;height:43px;border:2px solid #aaa;border-radius:50%}.detail-buttons .round-action:hover{border-color:#fff}.detail-buttons .round-action .icon{width:22px}
.detail-body{padding:18px clamp(25px,4.1vw,52px) 34px}.detail-summary{display:grid;grid-template-columns:1.5fr 1fr;gap:38px;align-items:start}.detail-metadata{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px;font-size:15px}.detail-metadata .title-meta{display:flex;align-items:center;gap:13px}.title-meta{display:flex;align-items:center;gap:11px;color:#d2d2d2;font-size:14px}.title-meta .rating{border:1px solid #aaa9;padding:0 4px;font-size:10px}.detail-available{font-size:13px;color:#46d369;font-weight:800}.detail-about>p{font-size:15px;line-height:1.52;max-width:570px}.detail-facts{font-size:12px;line-height:1.7;color:#e0e0e0}.detail-facts p{margin-bottom:9px}.detail-facts span{color:#8e8e8e}
.episode-section{margin-top:50px}.episode-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.episode-section-head h2{font-size:24px}.season-selector{position:relative}.season-selector select{appearance:none;background:#242424;color:#fff;border:1px solid #555;border-radius:3px;padding:12px 38px 12px 15px;font-weight:650;cursor:pointer}.season-selector .icon{position:absolute;top:13px;right:12px;width:18px;pointer-events:none}
.episode-row{display:grid;grid-template-columns:24px minmax(140px,215px) minmax(0,1fr);gap:16px;align-items:center;padding:16px 10px;border-top:1px solid #ffffff26;min-height:125px}.episode-number{font-size:21px;color:#d2d2d2;text-align:center}.episode-thumb{display:block;position:relative;aspect-ratio:16/9;border-radius:3px;overflow:hidden}.episode-thumb .picture{width:100%;height:100%}.episode-play{position:absolute;inset:0;display:grid;place-items:center;opacity:0;background:#0004;transition:opacity .15s}.episode-play .icon{border:2px solid #fff;border-radius:50%;width:49px;height:49px;padding:12px}.episode-row:hover{background:#ffffff0d}.episode-row:hover .episode-play,.episode-thumb:focus-visible .episode-play{opacity:1}
.episode-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.episode-heading h3{font-size:15px;font-weight:750;line-height:1.25}.episode-heading span{font-size:12px;white-space:nowrap}.episode-info>p{color:#bbb;font-size:13px;line-height:1.45;margin-top:9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.episode-info small{color:#e50914}
.detail-similar{margin-top:45px}.detail-similar .section-head{margin:0 0 18px}.similar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.similar-grid .tile{width:100%;aspect-ratio:16/9}.detail-footer{border-top:1px solid #ffffff18;color:#777;font-size:10px;margin-top:30px;padding-top:15px}
/* Low-key closing credits */
.footer{margin:20px auto 0;padding:35px var(--gutter) 60px;max-width:1800px;display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff0f;color:#777;align-items:center}.footer .brand{font-size:24px}.footer .brand-tv{font-size:6px}.footer p{font-size:12px;margin-top:9px}.footer small{font-size:11px;max-width:430px;text-align:end;line-height:1.6}
@media(max-width:1100px){.desktop-nav{gap:15px}.desktop-nav a{font-size:12px}.header-inner{gap:25px}.tile{width:clamp(190px,23vw,300px)}.tile-portrait{width:clamp(130px,17vw,210px)}.browse-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.billboard-copy{width:min(48vw,620px)}.billboard-title{font-size:clamp(52px,6vw,88px)}}
@media(max-width:750px){:root{--gutter:24px}.site-header{height:67px;background:linear-gradient(#000d,#0002)}.header-inner{gap:15px}.brand{font-size:30px}.desktop-nav,.desktop-list{display:none!important}.header-actions{gap:12px}.header-icon{width:30px}.header-language{font-size:13px}.menu-toggle{display:flex}.mobile-menu{display:none;position:fixed;z-index:88;inset-block-start:65px;inset-inline:0;background:#141414f8;box-shadow:0 12px 28px #000a;padding:14px 24px 25px;flex-direction:column;gap:0}.mobile-menu.open{display:flex}.mobile-menu a,.mobile-menu button{padding:15px 5px;text-align:start;border-bottom:1px solid #fff2;font-size:15px}.mobile-menu a.current{font-weight:800}.preview-mark{top:68px;right:var(--gutter);font-size:8px}.billboard{height:clamp(510px,85vh,730px);min-height:0}.billboard-art .picture img{object-position:65% 20%}.billboard-shade{background:linear-gradient(0deg,#141414 0%,#141414a0 13%,#08080855 34%,#0005 53%,transparent 85%),linear-gradient(90deg,#0009,transparent 100%)}.billboard-copy{width:calc(100% - 48px);inset-inline-start:var(--gutter);inset-block-end:122px;max-width:430px}.billboard-title{font-size:clamp(46px,9vw,72px);max-width:390px}.eyeline{font-size:11px;margin-bottom:11px}.brand-letter{font-size:23px}.billboard-tagline{margin-top:12px;font-size:17px}.billboard-desc{margin-top:11px;max-width:370px;font-size:14px;-webkit-line-clamp:3}.billboard-cta{margin-top:19px;gap:9px}.billboard-cta .button{font-size:14px;padding-inline:17px;min-height:43px;height:43px}.billboard-cta .button .icon{width:20px;height:20px}.billboard-genres{display:none}.billboard-rating{display:none}.hero-dots{inset-block-end:95px;inset-inline-start:var(--gutter);inset-inline-end:auto}.home-rows{margin-top:-72px}.shelf{margin-bottom:22px}.section-head{margin-bottom:10px;min-height:25px}.section-head h2{font-size:19px}.tile{width:clamp(190px,44vw,285px)}.tile-portrait{width:clamp(118px,29vw,166px)}.tile-caption{font-size:14px}.tile:hover{transform:none}.tile-hover{display:none}.poster-rail,.continue-rail{gap:7px;padding-bottom:20px}.rail-controls{display:none!important}.browse-page{padding:108px var(--gutter) 70px}.browse-heading h1{font-size:43px}.browse-controls{align-items:stretch;gap:8px}.browse-tabs{width:100%;overflow-x:auto;padding-bottom:3px}.browse-chip{white-space:nowrap}.browse-search{margin:0;flex:1;min-width:130px}.browse-search input{width:100%}.browse-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 9px}.browse-grid .tile{width:100%}.detail-page{padding:62px 0 0}.detail-modal{border-radius:0;width:100%;min-height:100vh}.detail-top{height:420px}.detail-hero-copy{inset-inline:24px;inset-block-end:27px}.detail-hero-copy h1{font-size:clamp(40px,8vw,64px)}.detail-tagline{font-size:15px}.detail-body{padding:22px var(--gutter) 60px}.detail-summary{grid-template-columns:1fr;gap:17px}.detail-facts{font-size:12px}.detail-metadata{font-size:13px}.episode-row{grid-template-columns:18px minmax(100px,37%) minmax(0,1fr);gap:10px;padding:14px 0;min-height:85px}.episode-number{font-size:16px}.episode-heading{align-items:start}.episode-heading h3{font-size:13px}.episode-heading span{font-size:10px}.episode-info>p{font-size:11px;line-height:1.3;margin-top:5px;-webkit-line-clamp:2}.episode-play{opacity:1;background:transparent}.episode-play .icon{width:35px;height:35px;padding:7px}.similar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.footer{flex-direction:column;align-items:start;padding-bottom:32px}.footer small{text-align:start}.search-results{grid-template-columns:1fr}}
@media(max-width:440px){:root{--gutter:17px}.site-header{height:61px}.mobile-menu{top:60px}.brand{font-size:28px}.header-actions{gap:9px}.billboard{height:clamp(530px,78svh,700px)}.billboard-art .picture img{object-position:67% 18%}.billboard-copy{width:calc(100% - 34px);inset-block-end:112px}.billboard-title{font-size:clamp(44px,10.5vw,56px)}.billboard-tagline{font-size:15px}.billboard-desc{font-size:13px;line-height:1.4}.billboard-cta .button{padding-inline:14px;min-height:41px}.billboard-cta .button span{font-size:13px}.home-rows{margin-top:-61px}.section-head h2{font-size:17px}.tile{width:48vw}.tile-portrait{width:33vw}.tile-caption{font-size:12px;inset-inline:9px;inset-block-end:10px}.browse-page{padding-top:102px}.browse-heading{margin-bottom:24px}.browse-heading h1{font-size:38px}.browse-chip{font-size:12px;padding:9px 12px}.browse-genre select{height:38px;max-width:146px;font-size:11px}.browse-genre .icon{top:9px}.detail-top{height:350px}.detail-hero-copy h1{font-size:clamp(37px,9vw,52px)}.detail-hero-copy{inset-inline:18px}.detail-body{padding-inline:18px}.episode-section{margin-top:35px}.episode-section-head h2{font-size:21px}.episode-row{grid-template-columns:17px 35% 1fr;gap:8px}.episode-info>p{display:none}.detail-close{inset-inline-end:12px}}

/* RYVEX CINEMA 4.1 — layout refinement. Same cinema identity, calmer rhythm.
   Spacing is deliberate across navigation, rails, detail, browse, RTL and touch.
   No new dependencies, images, animation engines or UI widgets. */
:root{--cinema-card-gap:clamp(18px,1.45vw,24px);--cinema-section-gap:clamp(40px,3.15vw,58px)}
.header-inner{gap:clamp(25px,2.8vw,46px)}
.desktop-nav{gap:clamp(18px,1.75vw,30px)}
.header-actions{gap:clamp(17px,1.5vw,24px)}
.billboard-title,.detail-hero-copy h1{overflow-wrap:break-word}
.billboard-cta{row-gap:12px}
.billboard-genres{margin-top:24px}
.hero-dots{inset-block-end:130px}
.home-rows{padding-bottom:clamp(50px,5vw,76px)}
.shelf{margin-bottom:var(--cinema-section-gap)}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:20px;row-gap:9px;min-height:34px;margin-bottom:17px}
.section-head h2{min-width:0;line-height:1.3;overflow-wrap:break-word}
.section-all{flex-shrink:0;min-height:32px;white-space:nowrap;gap:5px}
.poster-rail,.continue-rail{gap:var(--cinema-card-gap);padding-top:9px;padding-bottom:32px}
.tile:hover,.tile:focus-within{transform:translateY(-3px) scale(1.026)}
.tile-hover{padding:16px}
.tile-controls{gap:9px;margin-bottom:12px}
.tile-controls .round-action,.tile-controls a{width:35px;height:35px}
.tile-hover strong{line-height:1.3}
.tile-hover small{margin-top:8px}
.tile-meta{gap:12px;margin-top:8px}
.continue-info{top:calc(100% + 11px);gap:5px}
.progress-tile{margin-bottom:33px}
.browse-heading{margin-bottom:38px}
.browse-controls{gap:16px;margin-bottom:25px}
.browse-tabs{gap:9px}
.browse-chip{padding-inline:18px}
.browse-grid{column-gap:var(--cinema-card-gap);row-gap:32px}
.browse-grid .tile:hover,.browse-grid .tile:focus-within{transform:translateY(-3px) scale(1.015)}
.browse-result-count{margin-bottom:19px}
.search-results{gap:16px}
.search-result{padding:11px;gap:16px}
.search-summary{margin-block:28px 18px}
.detail-hero-copy{inset-block-end:36px}
.detail-tagline{margin-top:14px;line-height:1.4}
.detail-buttons{margin-top:27px;gap:15px;flex-wrap:wrap}
.detail-body{padding-block:28px 46px}
.detail-summary{gap:clamp(28px,3vw,44px)}
.detail-metadata{column-gap:16px;row-gap:12px;margin-bottom:22px}
.detail-metadata .title-meta{column-gap:13px;row-gap:9px;flex-wrap:wrap}
.detail-facts p{margin-bottom:12px}
.episode-section{margin-top:54px}
.episode-section-head{gap:18px;margin-bottom:22px;min-width:0}
.episode-section-head h2{min-width:0}
.episode-row{column-gap:20px;padding-block:21px;row-gap:14px}
.episode-info{min-width:0}
.episode-heading{gap:14px;align-items:start}
.episode-heading h3{min-width:0;overflow-wrap:break-word;line-height:1.36}
.episode-heading span{flex-shrink:0}
.episode-info>p{margin-top:11px;line-height:1.6}
.season-selector{flex-shrink:0}
.season-selector select{padding-inline:15px 38px}
.season-selector .icon{right:auto;inset-inline-end:12px}
.browse-genre select{padding-inline:12px 36px}
.browse-genre .icon{right:auto;inset-inline-end:10px}
.detail-similar{margin-top:50px}
.detail-similar .section-head{margin-bottom:20px}
.similar-grid{gap:18px}
.detail-footer{margin-top:36px;padding-top:20px}
.footer{margin-top:28px;padding-top:42px;padding-bottom:72px;gap:30px}
[dir="rtl"] .section-all .icon{transform:scaleX(-1)}
@media(max-width:1100px){
  :root{--cinema-card-gap:18px;--cinema-section-gap:40px}
  .header-inner{gap:25px}
  .desktop-nav{gap:16px}
  .header-actions{gap:16px}
}
@media(max-width:750px){
  :root{--cinema-card-gap:13px;--cinema-section-gap:34px}
  .header-inner{gap:14px}
  .header-actions{gap:9px}
  .header-icon{width:38px;height:42px}
  .header-language{min-width:31px;height:42px}
  .menu-toggle{width:38px}
  .section-head{column-gap:13px;row-gap:8px;min-height:31px;margin-bottom:14px}
  .section-all{min-height:30px}
  .poster-rail,.continue-rail{gap:var(--cinema-card-gap);padding-top:7px;padding-bottom:27px}
  .shelf{margin-bottom:var(--cinema-section-gap)}
  .home-rows{padding-bottom:52px}
  .tile:hover,.tile:focus-within{transform:none;box-shadow:none}
  .browse-page{padding-bottom:88px}
  .browse-controls{gap:12px;margin-bottom:25px}
  .browse-tabs{gap:9px}
  .browse-grid{column-gap:13px;row-gap:26px}
  .browse-grid .tile:hover,.browse-grid .tile:focus-within{transform:none}
  .browse-result-count{margin-bottom:16px}
  .detail-body{padding-block:28px 70px}
  .detail-summary{gap:24px}
  .detail-metadata{row-gap:12px;column-gap:15px}
  .detail-hero-copy{inset-block-end:32px}
  .detail-tagline{margin-top:12px}
  .detail-buttons{margin-top:24px}
  .episode-section{margin-top:43px}
  .episode-section-head{gap:14px;margin-bottom:18px}
  .episode-row{column-gap:12px;padding-block:17px;min-height:100px}
  .episode-info>p{margin-top:8px}
  .similar-grid{gap:13px}
  .footer{margin-top:35px;padding-top:34px;padding-bottom:42px}
}
@media(max-width:440px){
  :root{--cinema-card-gap:12px;--cinema-section-gap:32px}
  .site-header{height:62px}
  .header-inner{gap:12px}
  .header-actions{gap:8px}
  .header-icon{width:39px;height:42px}
  .header-language{min-width:33px;height:42px}
  .menu-toggle{width:39px}
  .billboard-copy{inset-block-end:124px}
  .hero-dots{inset-block-end:77px}
  .home-rows{margin-top:-61px}
  .section-head{column-gap:10px;margin-bottom:14px}
  .section-head h2{line-height:1.36}
  .section-all{font-size:11px;gap:4px}
  .poster-rail,.continue-rail{gap:12px}
  .browse-grid{column-gap:12px;row-gap:24px}
  .browse-heading{margin-bottom:27px}
  .detail-top{height:370px}
  .detail-hero-copy{inset-block-end:28px}
  .detail-body{padding-top:26px}
  .detail-metadata{margin-bottom:20px}
  .episode-section{margin-top:42px}
  .episode-section-head{margin-bottom:19px}
  .episode-section-head h2{font-size:20px}
  .episode-row{grid-template-columns:16px minmax(0,34%) minmax(0,1fr);column-gap:10px;padding-block:18px}
  .episode-heading{gap:7px}
  .episode-heading h3{line-height:1.4}
  .episode-heading span{font-size:10px}
  .detail-similar{margin-top:43px}
  .footer{gap:23px}
}
@media(max-width:350px){
  .billboard-cta{gap:8px}
  .billboard-cta .button{padding-inline:12px}
  .billboard-title{font-size:clamp(39px,11.8vw,48px)}
  .detail-hero-copy h1{font-size:clamp(36px,11.5vw,48px)}
  .detail-hero-copy{inset-inline:16px}
  .detail-body{padding-inline:16px}
  .episode-row{grid-template-columns:15px minmax(0,33%) minmax(0,1fr);column-gap:9px}
}
/* Rail paging is a third grid column — never laid over the "Explore all" link. */
@media(min-width:751px){
  .section-head{grid-template-columns:minmax(0,1fr) auto auto}
  .rail-controls{position:static;inset:auto;align-self:center;justify-self:end;display:flex;gap:8px}
  .rail-controls button{width:32px;height:32px;border:1px solid #ffffff30;border-radius:50%}
  .rail-controls button:hover:not(:disabled){border-color:#ffffff8a;background:#ffffff15}
}
@media(min-width:441px) and (max-width:750px){
  .billboard{min-height:590px}
  .billboard-copy{inset-block-end:160px}
  .hero-dots{inset-block-end:92px}
}
/* The full-screen title sheet has its own close button; don't stack the site header behind it. */
.details-mode .site-header{opacity:0;pointer-events:none}


/* CINEMA 4.2: polish without layout movement. Tiny compositor-only entrances. */
@media (prefers-reduced-motion: no-preference) {
  @keyframes rvx-page-enter {from{opacity:.88;transform:translate3d(0,8px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
  @keyframes rvx-billboard-fade {from{opacity:.84}to{opacity:1}}
  .billboard-copy{animation:rvx-billboard-fade .24s ease-out both}
  .detail-modal,.browse-heading{animation:rvx-page-enter .24s ease-out both}
  .picture img[loading="lazy"]{opacity:0;transition:opacity .22s ease-out}
  .picture.image-ready img[loading="lazy"]{opacity:1}
}
/* Hovered card copy is visual information, not a click shield. Preserve
   actionable hover controls while allowing the card image to open details. */
@media (hover:hover) {
  .tile:hover .tile-hover,.tile:focus-within .tile-hover{pointer-events:none}
  .tile-hover .tile-controls a,.tile-hover .tile-controls button{pointer-events:auto}
}
.detail-art-credit{margin-top:38px;color:#999;font-size:11px}
.detail-art-credit a{text-decoration:underline;text-underline-offset:3px}
