
/* source: css/studio-guest-headings.css */
/* Guest heading details use the selected accent; content tone never replaces the visitor's palette. */
.guest-section-heading {
 --section-accent:var(--studio-color-accent);display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px;min-width:0;
}
.guest-section-heading__label {
 display:flex;align-items:center;gap:12px;position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;
 width:235px;min-height:54px;max-width:100%;padding:7px 10px;border:1px solid color-mix(in srgb,var(--section-accent) 22%,var(--studio-color-border));
 border-radius:18px 18px 8px 18px;background:linear-gradient(115deg,color-mix(in srgb,var(--section-accent) 13%,var(--studio-color-surface)),color-mix(in srgb,var(--studio-color-canvas) 65%,var(--studio-color-surface)));
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--section-accent) 15%,transparent),0 8px 24px #00000008;
}
[dir=ltr] .guest-section-heading__label {border-radius:18px 18px 18px 8px}
.guest-section-heading__label::after {content:'';position:absolute;inset-inline-start:52px;bottom:0;width:64px;height:2px;border-radius:4px;background:linear-gradient(90deg,var(--section-accent),transparent)}
.guest-section-heading__label>div {min-width:0;flex:0 1 auto}
.guest-section-heading .guest-section-heading__label h2 {margin:1px 0 0!important;font-size:16px!important;line-height:1.45!important;font-weight:800;color:var(--studio-color-text);overflow-wrap:anywhere}
.guest-section-heading__eyebrow {display:block;font-size:8.5px;line-height:1.4;letter-spacing:.035em;font-weight:700;text-align:start;color:var(--studio-color-text-muted);overflow-wrap:anywhere}
.guest-section-heading__icon {position:relative;display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;border:1px solid color-mix(in srgb,var(--section-accent) 34%,transparent);color:var(--section-accent);background:color-mix(in srgb,var(--section-accent) 11%,var(--studio-color-canvas));box-shadow:0 0 20px color-mix(in srgb,var(--section-accent) 9%,transparent)}
.guest-section-heading__icon svg {width:17px;height:17px}
.guest-section-heading__spark {position:absolute;inset-inline-end:9px;bottom:9px;font-size:10px;color:var(--section-accent);opacity:.7}
.guest-section-heading__controls {display:flex;gap:8px;flex-shrink:0}
.guest-section-heading__controls button {display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--studio-color-border);background:var(--studio-color-surface);color:var(--section-accent);border-radius:14px;font-size:21px;cursor:pointer;transition:background .2s,border-color .2s}
.guest-section-heading__controls button:hover {background:color-mix(in srgb,var(--section-accent) 12%,var(--studio-color-surface));border-color:var(--section-accent)}
.guest-section-heading button:focus-visible {outline:2px solid var(--section-accent);outline-offset:3px}
body.studio-theme [data-guest-landing] :is(.builder-memberships__container,.studio-exact-latest) {box-sizing:border-box;width:100%;max-width:1600px;margin-inline:auto;padding-inline:clamp(16px,4vw,60px)}
.guest-membership-description {color:var(--studio-color-text-muted);font-size:14px;line-height:1.8;margin:0 0 24px}
@media(max-width:820px) {
 .guest-section-heading__label {width:235px;max-width:100%}
}
@media(max-width:480px) {
 /* Let the label shrink beside the controls while keeping both touch targets intact. */
 .guest-section-heading {gap:8px;flex-wrap:nowrap;margin-bottom:22px}.guest-section-heading__label {min-width:0;width:220px;max-width:100%;min-height:50px;padding:6px 8px;gap:7px;border-radius:16px 16px 7px 16px}
 [dir=ltr] .guest-section-heading__label {border-radius:16px 16px 16px 7px}
 .guest-section-heading .guest-section-heading__label h2 {font-size:14px!important}
 .guest-section-heading__icon {width:29px;height:29px;flex-basis:29px;border-radius:9px}.guest-section-heading__icon svg {width:16px;height:16px}
 .guest-section-heading__eyebrow {font-size:7.5px}.guest-section-heading__controls {gap:4px}.guest-section-heading__label::after {inset-inline-start:45px;width:54px}
}
@media(prefers-reduced-motion:reduce) {.guest-section-heading__controls button {transition:none}}

/* The first catalogue section needs breathing room below the guest hero. */
body.studio-theme [data-guest-landing] .studio-exact-latest {margin-top:56px}
@media(max-width:820px){body.studio-theme [data-guest-landing] .studio-exact-latest {margin-top:40px}}
@media(max-width:480px){body.studio-theme [data-guest-landing] .studio-exact-latest {margin-top:30px}}


/* source: css/studio-discovery-bridges.css */
/* Discovery interludes: contained scenes, seamless canvas, theme-aware artwork and motion. */
.discovery-bridge {
 --bridge-accent:var(--studio-color-accent); --bridge-glow:var(--studio-color-accent); --bridge-ink:var(--studio-color-text); --bridge-muted:var(--studio-color-text-muted);
 position:relative; isolation:isolate; display:block;
 width:100%; max-width:1600px; box-sizing:border-box;
 margin:0 auto; padding:38px clamp(16px,4vw,60px); min-width:0; border:0; border-radius:0; background:transparent; color:var(--bridge-ink);
}
.discovery-bridge button,.discovery-bridge a {font:inherit;cursor:pointer;text-decoration:none}
.discovery-bridge :is(button,a):focus-visible {outline:3px solid var(--studio-color-accent);outline-offset:4px}
.discovery-bridge [data-bridge-panel][hidden] {display:none!important}
.bridge-body {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,4vw,64px);align-items:center;min-width:0;padding:18px 0}
.bridge-intro {min-width:0;position:relative;z-index:2}



.bridge-intro>p {font-size:20px;line-height:1.9;margin:0 0 25px;max-width:420px;color:var(--bridge-muted)}
.bridge-atmosphere {position:absolute;inset:65px clamp(16px,4vw,60px) 0;z-index:-1;pointer-events:none;overflow:hidden;border-radius:50%;mask-image:radial-gradient(ellipse,#000 35%,transparent 73%)}
.bridge-atmosphere>span {position:absolute;width:70%;height:80%;top:10%;left:0;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--bridge-glow) 23%,transparent),transparent 70%);animation:bridge-tide 16s ease-in-out infinite alternate}
.bridge-atmosphere>span:nth-child(2) {left:auto;right:0;top:30%;width:55%;height:65%;opacity:.55;animation-delay:-9s}
.bridge-atmosphere svg {position:absolute;width:100%;height:100%;inset:0;color:var(--bridge-accent);overflow:visible;opacity:.4}
.bridge-atmosphere path {stroke-width:1;animation:bridge-current 18s linear infinite;stroke-dasharray:240 380;stroke-linecap:round}
.bridge-atmosphere path:nth-child(2) {opacity:.5;animation-delay:-6s}.bridge-atmosphere path:nth-child(3) {opacity:.3;animation-delay:-12s}
.bridge-destinations {display:flex;flex-direction:column;gap:5px;max-width:340px}
.bridge-destinations button {display:flex;align-items:center;gap:15px;padding:10px 13px;min-height:46px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--bridge-ink);text-align:start;font-size:14px;transition:background .25s,border-color .25s}
.bridge-destinations button>b {font:10px Arial,sans-serif;color:var(--bridge-muted)}
.bridge-destinations button>span {margin-inline-start:auto;font-size:20px;opacity:0;transition:.25s}
.bridge-destinations button[aria-selected=true] {border-color:color-mix(in srgb,var(--bridge-accent) 30%,transparent);background:linear-gradient(110deg,color-mix(in srgb,var(--bridge-accent) 15%,transparent),color-mix(in srgb,var(--bridge-accent) 3%,transparent));box-shadow:0 8px 30px color-mix(in srgb,var(--bridge-glow) 5%,transparent)}
.bridge-destinations button[aria-selected=true]>span {opacity:1;color:var(--studio-color-accent)}
.bridge-passport {min-width:0;position:relative;padding:25px 18px 0;color:var(--bridge-ink)}
.bridge-orbit {position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.bridge-orbit>i {position:absolute;width:320px;height:320px;left:-5px;top:20px;border:1px solid color-mix(in srgb,var(--bridge-accent) 13%,transparent);border-radius:50%;transform:rotate(-28deg) scaleY(.75)}
.bridge-orbit>i:nth-child(2) {width:370px;height:370px;left:-30px;top:-5px;opacity:.6}
.bridge-orbit>span {position:absolute;bottom:25px;inset-inline-start:12px;font:900 76px Arial,sans-serif;letter-spacing:-6px;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--bridge-accent) 12%,transparent)}
.bridge-orbit>b {position:absolute;left:225px;top:15px;color:var(--bridge-accent);font-size:25px;animation:bridge-star 7s ease-in-out infinite}
.bridge-orbit>em {position:absolute;width:6px;height:6px;background:var(--bridge-accent);border-radius:50%;left:100px;bottom:32px;box-shadow:0 0 18px var(--bridge-accent);animation:bridge-star 8s ease-in-out -4s infinite}
.bridge-passport-panel {position:relative;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:25px;align-items:center;min-height:320px;padding-bottom:20px}
.bridge-passport-copy {min-width:0;z-index:2}.bridge-passport-copy>small {display:block;color:var(--bridge-muted);font-size:10px;line-height:1.6}
.bridge-passport-copy h3 {margin:6px 0;font-size:26px;line-height:1.5;color:var(--bridge-ink)}
.bridge-passport-copy>strong {display:block;font-size:16px;line-height:1.7;margin:5px 0;color:var(--bridge-ink)}
.bridge-secondary {display:block;font-size:11px;line-height:1.7;color:var(--bridge-muted);overflow-wrap:anywhere}
.bridge-flight-path {display:flex;align-items:center;gap:10px;max-width:125px;margin:16px 0;color:var(--bridge-accent)}
.bridge-flight-path i {height:1px;flex:1;background:linear-gradient(90deg,transparent,currentColor)}.bridge-flight-path i:last-child {transform:rotate(180deg)}.bridge-flight-path b {font-size:16px}
.bridge-passport-copy>a {display:flex;align-items:center;gap:12px;min-height:44px;margin-top:8px;color:var(--studio-color-accent);font-size:11px;font-weight:750}.bridge-passport-copy>a>span {font-size:20px}
.bridge-poster-stack {position:relative;width:185px;height:274px;margin:0 auto;perspective:900px;isolation:isolate}
.bridge-poster-halo {position:absolute;inset:-25px;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--bridge-accent) 24%,transparent),transparent 70%);animation:bridge-tide 12s ease-in-out infinite alternate;z-index:-3}
.bridge-poster-echo {position:absolute;inset:8px 5px;border:1px solid color-mix(in srgb,var(--bridge-accent) 30%,transparent);border-radius:15px;overflow:hidden;pointer-events:none;box-shadow:0 12px 24px #0002;z-index:-1}
.bridge-poster-echo img {width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.75)}
.bridge-poster-echo-1 {transform:translateX(20px) rotate(9deg) scale(.91);opacity:.65}
.bridge-poster-echo-2 {transform:translateX(-20px) rotate(-12deg) scale(.91);opacity:.4;z-index:-2}
.bridge-passport-poster {display:block;position:relative;width:100%;height:100%;padding:0;border:1px solid #ffffff30;border-radius:15px;overflow:hidden;background:#0b1d29;box-shadow:0 22px 35px #0004;transform:rotate(-3deg);transition:transform .4s,box-shadow .4s;animation:bridge-float 9s ease-in-out infinite}
.bridge-passport-poster:hover {box-shadow:0 26px 45px #0005}
.bridge-passport-poster::after {content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 25%,#ffffff24 45%,transparent 65%);transform:translateX(-150%);animation:bridge-sheen 12s ease-in-out infinite}
.bridge-passport-poster img,.bridge-ticket-art img {display:block;width:100%;height:100%;object-fit:cover}
.bridge-passport-poster>span:last-child:not([data-vip-badge]) {position:absolute;bottom:9px;inset-inline-end:9px;width:29px;height:29px;display:grid;place-items:center;background:var(--studio-color-control);color:var(--bridge-accent);border-radius:50%}
.bridge-passport-footer {position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;font-size:8px;color:var(--bridge-muted)}
.bridge-passport-footer>span {letter-spacing:.08em;direction:ltr}.bridge-passport-footer>b {font-weight:500}
.bridge-destination-progress {display:flex;gap:5px}.bridge-destination-progress span {width:6px;height:6px;border-radius:9px;background:var(--studio-color-border);transition:width .4s,background .4s}.bridge-destination-progress .is-active {width:25px;background:var(--bridge-accent)}
.bridge-cinema 
.bridge-length {display:flex;flex-wrap:wrap;gap:7px;margin-bottom:17px}
.bridge-length button {border:1px solid var(--studio-color-border);border-radius:999px;min-height:40px;padding:7px 14px;background:transparent;color:var(--bridge-muted);font-size:11px}
.bridge-length button[aria-pressed=true] {background:color-mix(in srgb,var(--bridge-accent) 12%,transparent);border-color:color-mix(in srgb,var(--bridge-accent) 50%,var(--studio-color-border));color:var(--bridge-ink)}
.bridge-shuffle {display:inline-flex;gap:10px;align-items:center;min-height:46px;border:0;padding:7px 0;background:transparent;color:var(--bridge-ink);font-size:13px;font-weight:750}
.bridge-shuffle svg {width:20px;height:20px;transition:transform .35s}.bridge-shuffle:hover svg {transform:rotate(-20deg)}.bridge-shuffle:disabled {opacity:.5;cursor:default}
.bridge-ticket-stage {position:relative;min-width:0;isolation:isolate;padding:10px 0}
.bridge-projector {position:absolute;inset:-40px -15px;z-index:-1;pointer-events:none;overflow:hidden;mask-image:radial-gradient(ellipse,#000 35%,transparent 72%)}
.bridge-projector i {position:absolute;width:70%;height:160%;top:-30%;left:35%;transform:rotate(-30deg);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bridge-accent) 12%,transparent),transparent);animation:bridge-project 14s ease-in-out infinite alternate}
.bridge-projector i:nth-child(2) {left:15%;width:30%;animation-delay:-9s;opacity:.65}.bridge-projector span {position:absolute;top:17px;left:15%;color:var(--bridge-accent);font-size:20px;animation:bridge-star 7s ease-in-out infinite}
.bridge-ticket {position:relative;display:grid;grid-template-columns:185px minmax(0,1fr) 48px;min-height:320px;background:linear-gradient(125deg,color-mix(in srgb,var(--studio-color-surface) 86%,var(--studio-color-canvas)),color-mix(in srgb,var(--bridge-accent) 9%,var(--studio-color-canvas)));color:var(--bridge-ink);border-radius:20px;box-shadow:0 18px 42px #0002;overflow:hidden;border:0}
.bridge-ticket-art {position:relative;border:0;padding:0;background:#18212c;overflow:hidden}
.bridge-ticket-art img {transition:transform .8s}.bridge-ticket-art:hover img {transform:scale(1.045)}
.bridge-ticket-art::after {content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 60%,#07152044)}
.bridge-ticket-copy {min-width:0;padding:25px 20px;display:flex;flex-direction:column;align-items:flex-start}
.bridge-ticket-copy>small {font-size:10px;color:var(--bridge-muted);line-height:1.7}.bridge-ticket-copy h3 {font-size:22px;line-height:1.6;margin:10px 0 4px;color:var(--bridge-ink)}
.bridge-ticket-facts {display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;font-size:11px;color:var(--bridge-muted)}.bridge-ticket-facts span+span:before {content:'·';margin-inline-end:8px;color:var(--bridge-accent)}
.bridge-ticket-copy p {font-size:11px;line-height:1.6;color:var(--bridge-muted);margin:7px 0 14px}
.bridge-ticket-copy .bridge-ticket-synopsis {font-size:11px;line-height:1.8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 14px}
.bridge-ticket-open {display:flex;align-items:center;gap:18px;justify-content:space-between;width:100%;margin-top:auto;border:0;background:transparent;color:var(--bridge-ink);font-size:12px;font-weight:800;min-height:46px;padding:10px 0 0}
.bridge-ticket-stub {position:relative;border-inline-start:1px dashed color-mix(in srgb,var(--bridge-accent) 25%,transparent);display:flex;align-items:center;justify-content:center;gap:15px;flex-direction:column;padding:14px 8px;color:var(--bridge-accent)}
.bridge-ticket-stub>span {writing-mode:vertical-rl;font-size:8px;letter-spacing:.1em;max-height:110px}.bridge-ticket-stub>strong {font:900 28px Georgia,serif;color:var(--bridge-ink)}.bridge-ticket-stub>i {font:15px Arial,sans-serif;writing-mode:vertical-rl;font-style:normal}.bridge-ticket-stub>small {font-size:6px;letter-spacing:.06em}
.bridge-ticket-caption {display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:18px;font-size:10px;color:var(--bridge-muted)}.bridge-ticket-caption>b {font:11px Arial,sans-serif;letter-spacing:.1em}
.bridge-motion-toggle {display:flex;align-items:center;gap:6px;min-height:34px;margin-top:12px;padding:4px 0;background:none;border:0;color:var(--bridge-muted);font-size:9px!important;opacity:.75}
.bridge-motion-toggle svg {width:12px;height:12px}
.discovery-bridge :is(.bridge-atmosphere>span,.bridge-atmosphere path,.bridge-orbit>b,.bridge-orbit>em,.bridge-poster-halo,.bridge-passport-poster,.bridge-projector i,.bridge-projector span) {animation-play-state:paused}
.discovery-bridge.is-in-view:not(.is-motion-paused) :is(.bridge-atmosphere>span,.bridge-atmosphere path,.bridge-orbit>b,.bridge-orbit>em,.bridge-poster-halo,.bridge-passport-poster,.bridge-projector i,.bridge-projector span) {animation-play-state:running}
@keyframes bridge-tide {from {transform:translate(-4%,-3%) scale(.92)}to {transform:translate(5%,6%) scale(1.1)}}
@keyframes bridge-current {to {stroke-dashoffset:-1240}}
@keyframes bridge-star {50% {transform:translateY(-7px) rotate(12deg);opacity:.4}}
@keyframes bridge-float {50% {transform:translateY(-7px) rotate(-1deg)}}
@keyframes bridge-sheen {0%,65% {transform:translateX(-150%)}85%,100% {transform:translateX(150%)}}
@keyframes bridge-project {to {transform:translateX(-15%) rotate(-15deg);opacity:.4}}
@media(max-width:1100px) {
 .bridge-body {gap:28px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
 .bridge-passport-panel {grid-template-columns:minmax(0,1fr) 160px;gap:18px}.bridge-poster-stack {width:137px;height:213px}.bridge-passport-copy h3 {font-size:24px}.bridge-passport {padding-inline:10px}
 .bridge-ticket {grid-template-columns:135px minmax(0,1fr) 40px}.bridge-ticket-copy {padding:22px 15px}.bridge-ticket-copy h3 {font-size:20px}
}
@media(max-width:820px) {
 .bridge-body {grid-template-columns:minmax(0,1fr);gap:24px;max-width:620px;margin-inline:auto;padding:12px 0}
 .bridge-intro>p {max-width:none;margin-bottom:16px}.bridge-destinations {flex-direction:row;max-width:none;flex-wrap:wrap}.bridge-destinations button {font-size:12px;gap:8px;flex:1;white-space:nowrap}.bridge-destinations button>span {display:none}
 .bridge-passport-panel {grid-template-columns:minmax(0,1fr) 225px;gap:30px;min-height:310px}.bridge-poster-stack {width:185px;height:274px}.bridge-passport {padding:12px 24px 0}.bridge-passport-copy h3 {font-size:26px}
 .bridge-ticket {grid-template-columns:175px minmax(0,1fr) 48px;min-height:305px}.bridge-ticket-copy h3 {font-size:22px}
 .bridge-length {display:inline-flex;margin:0 0 10px}.bridge-shuffle {display:flex}.bridge-motion-toggle {position:absolute;bottom:-3px;inset-inline-end:0}
 .bridge-atmosphere {inset:18% 16px 0}.bridge-passport-footer {min-height:35px}
}
@media(max-width:480px) {
 .discovery-bridge {width:100%;padding:24px 16px}.bridge-body {gap:26px}
 .bridge-intro>p {font-size:15px;padding-inline-end:0}
 .bridge-destinations {gap:5px}.bridge-destinations button {padding:8px;font-size:11px;gap:5px;justify-content:center}.bridge-destinations button>b {display:none}
 .bridge-passport {padding:10px 6px 0}.bridge-passport-panel {grid-template-columns:minmax(0,1fr) 118px;gap:14px;min-height:240px}.bridge-poster-stack {width:99px;height:161px}
 .bridge-passport-copy h3 {font-size:20px}.bridge-passport-copy>strong {font-size:13px}.bridge-passport-copy>small {font-size:9px}.bridge-secondary {font-size:10px}.bridge-passport-copy>a {font-size:10px;gap:6px}
 .bridge-orbit>i {width:220px;height:220px;left:-40px}.bridge-orbit>i:nth-child(2) {width:255px;height:255px;left:-57px}.bridge-orbit>b {left:90px;top:0}.bridge-orbit>span {font-size:58px}.bridge-flight-path {margin:12px 0}
 .bridge-passport-footer>b {display:none}.bridge-poster-echo-1 {transform:translateX(10px) rotate(10deg) scale(.9)}.bridge-poster-echo-2 {transform:translateX(-10px) rotate(-12deg) scale(.9)}
 .bridge-ticket {grid-template-columns:100px minmax(0,1fr);min-height:260px;border-radius:16px}.bridge-ticket-copy {padding:17px 12px}.bridge-ticket-copy h3 {font-size:18px}.bridge-ticket-copy .bridge-ticket-synopsis {display:none}
 .bridge-ticket-stub {grid-column:1/-1;border-inline-start:0;border-top:1px dashed color-mix(in srgb,var(--bridge-accent) 25%,transparent);flex-direction:row;justify-content:space-between;gap:7px;padding:9px 15px}.bridge-ticket-stub>span,.bridge-ticket-stub>i {writing-mode:horizontal-tb}.bridge-ticket-stub>strong {font-size:19px}.bridge-ticket-stub>small {display:none}
 .bridge-ticket-caption {font-size:9px}.bridge-ticket-open {font-size:11px;gap:6px}.bridge-ticket-facts {font-size:10px}.bridge-motion-toggle {font-size:8px!important;bottom:-20px}
}
@media(prefers-reduced-motion:reduce) {
 .discovery-bridge *,.discovery-bridge *::after {animation:none!important;transition:none!important}.bridge-motion-toggle {display:none}
}
[dir=rtl] .discovery-bridge .bridge-secondary {text-align:right}[dir=ltr] .discovery-bridge .bridge-secondary {text-align:left}


.discovery-bridge .bridge-passport-poster::after {animation-play-state:paused}
.discovery-bridge.is-in-view:not(.is-motion-paused) .bridge-passport-poster::after {animation-play-state:running}


/* source: css/studio-home-layout-v510125.css */
/* Homepage layout contracts; artwork and palette colors remain theme-owned. */
body.studio-theme .studio-page :is(.studio-exact-section-head,.studio-exact-cinema-head,.studio-exact-spot-head){
  min-width:0;gap:12px;box-sizing:border-box;
}
body.studio-theme .studio-page :is(.studio-cine-actions,.studio-exact-buttons)>:is(a,button){min-height:44px!important}
body.studio-theme .studio-page :is(.studio-cine-arrow,.studio-exact-arrow){min-width:44px!important;min-height:44px!important}
body.studio-theme .studio-page :is(button,a):focus-visible{outline:2px solid var(--studio-color-link);outline-offset:3px}
/* The theme owns the six-card desktop carousel and the narrower touch layouts. */
body.studio-theme .studio-page .studio-exact-episode-rail{scroll-padding-inline:0;scrollbar-width:none}
body.studio-theme .studio-page .studio-exact-latest [data-studio-scroll]{width:44px;height:44px}
@media(max-width:900px){
  body.studio-theme .studio-page .studio-exact-hero-in{width:100%!important;max-width:100%;height:auto!important;min-height:0!important;box-sizing:border-box;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;padding:22px 16px 86px!important}
  body.studio-theme .studio-page .studio-exact-mosaic{order:0!important;width:100%!important;max-width:660px;justify-self:center;margin:0;touch-action:pan-y pinch-zoom}
  body.studio-theme .studio-page .studio-exact-grid{--hero-spread:clamp(68px,22vw,145px);position:relative;display:block;height:clamp(220px,57vw,280px)!important;width:100%;perspective:none}
  body.studio-theme .studio-page .studio-exact-grid>[data-studio-slide]{position:absolute!important;inset:auto!important;left:50%!important;top:0!important;width:clamp(138px,38vw,190px)!important;height:100%!important;margin:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-50%) scale(.78)!important;border-radius:18px!important;transition:transform .32s ease,opacity .25s ease;z-index:0}
  body.studio-theme .studio-page .studio-exact-grid>[data-hero-position="previous"]{transform:translateX(calc(-50% - var(--hero-spread))) scale(.84) rotate(-7deg)!important;opacity:.62;visibility:visible;pointer-events:auto;z-index:1}
  body.studio-theme .studio-page .studio-exact-grid>[data-hero-position="next"]{transform:translateX(calc(-50% + var(--hero-spread))) scale(.84) rotate(7deg)!important;opacity:.62;visibility:visible;pointer-events:auto;z-index:1}
  body.studio-theme .studio-page .studio-exact-grid>[data-studio-slide].is-active{transform:translateX(-50%)!important;opacity:1;visibility:visible;pointer-events:auto;z-index:3;box-shadow:0 12px 38px #0005}
  body.studio-theme .studio-page .studio-exact-grid>[data-studio-slide] img{transform:none!important}
  body.studio-theme .studio-page .studio-exact-slide-copy{transform:none!important}
  body.studio-theme .studio-page .studio-exact-slide-copy strong{font-size:13px!important;line-height:1.5}
  body.studio-theme .studio-page .studio-exact-slide-copy em{font-size:10px!important}
  body.studio-theme .studio-page .studio-exact-slide-copy>span{font-size:10px!important;opacity:1}
  body.studio-theme .studio-page .studio-exact-slide-copy>small,body.studio-theme .studio-page .studio-exact-grid>[data-studio-slide]:not(.is-active) .studio-exact-slide-copy{display:none!important}
  body.studio-theme .studio-page :is(.studio-exact-mosaic-label,.studio-exact-flags,.studio-exact-kicker,.studio-exact-features){display:none!important}
  body.studio-theme .studio-page .studio-exact-copy{order:1!important;text-align:center!important;max-width:520px!important;justify-self:center}
  body.studio-theme .studio-page .studio-exact-copy h1{margin:0!important;padding:0!important;font-size:clamp(26px,6.8vw,36px)!important;line-height:1.35!important;text-align:center!important}
  body.studio-theme .studio-page .studio-exact-copy h1 span{width:auto!important;white-space:normal!important;padding:0!important}
  body.studio-theme .studio-page .studio-exact-copy>p{margin:12px auto 0!important;font-size:12px!important;line-height:1.8!important;max-width:430px}
  body.studio-theme .studio-page .studio-exact-buttons{display:flex!important;justify-content:center;gap:8px!important;margin-top:16px!important}
  body.studio-theme .studio-page .studio-exact-buttons>:is(a,button){flex:1;min-width:0;min-height:46px!important;padding:10px 8px!important;font-size:12px!important;line-height:1.5;white-space:nowrap}
  body.studio-theme .studio-page .studio-exact-arrow{top:auto!important;bottom:22px!important;transform:none!important}
  body.studio-theme .studio-page .studio-exact-arrow.prev{left:16px!important;right:auto!important}
  body.studio-theme .studio-page .studio-exact-arrow.next{right:16px!important;left:auto!important}
  body.studio-theme .studio-page .studio-exact-dots{bottom:42px!important;max-width:calc(100% - 136px)}
}
@media(max-width:820px){
  body.studio-theme .studio-page :is(.studio-exact-section-head,.studio-exact-cinema-head,.studio-exact-spot-head){
    display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between;direction:inherit!important;
  }
  body.studio-theme .studio-page :is(.studio-exact-section-head,.studio-exact-cinema-head) button{min-width:44px;min-height:44px}
}
@media(max-width:680px){
  body.studio-theme .studio-page .studio-exact-copy>p{font-size:12px!important;line-height:1.8!important}
  body.studio-theme .studio-page .studio-exact-buttons>:is(a,button){font-size:12px!important}
  body.studio-theme .studio-page .studio-exact-arrow.prev{left:16px!important;right:auto!important}
  body.studio-theme .studio-page .studio-exact-arrow.next{right:16px!important;left:auto!important}
  body.studio-theme .studio-page .studio-exact-dots{max-width:calc(100% - 136px)}
  body.studio-theme .studio-page .studio-mood__head>div>h2{white-space:normal!important;line-height:1.4!important;overflow:visible!important;text-overflow:clip!important;max-width:100%!important}
  body.studio-theme .studio-page .studio-cine-copy{width:100%!important;max-width:430px!important}
  body.studio-theme .studio-page .studio-cine-copy>p{font-size:12px!important;line-height:1.8!important}
  body.studio-theme .studio-page .studio-cine-tagline{font-size:11px!important}
  body.studio-theme .studio-page .studio-cine-actions{max-width:340px}
  body.studio-theme .studio-page .studio-cine-actions>a{height:44px!important;font-size:12px!important}
  body.studio-theme .studio-page .studio-cine-dots{bottom:52px!important;max-width:calc(100% - 136px);gap:6px!important}
  body.studio-theme .studio-page .studio-cine-dots button{width:clamp(12px,4vw,24px)!important}
}
@media(max-width:360px){
  body.studio-theme .studio-page .studio-exact-buttons>:is(a,button){font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){
  body.studio-theme .studio-page *{scroll-behavior:auto!important}
}
/* Original collection artwork with a real, bounded rail instead of hidden extra cards. */
body.studio-theme .studio-page .studio-original-collection{box-sizing:border-box;width:100%;max-width:1600px;margin-inline:auto;padding-inline:clamp(16px,4vw,60px)}
body.studio-theme .studio-page [data-studio-row]{overscroll-behavior-x:contain;scrollbar-width:none}
body.studio-theme .studio-page [data-studio-row]::-webkit-scrollbar{display:none}
body.studio-theme .studio-page .studio-original-rail{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:0;min-width:0;padding-block:12px 20px;height:clamp(340px,34vw,510px)}
body.studio-theme .studio-page .studio-original-rail>:is(button,a){display:block!important;box-sizing:border-box;flex:0 0 calc((100% - 48px)/6.35);min-width:0;scroll-snap-align:start;height:auto}
body.studio-theme .studio-page .studio-original-rail>:is(.is-active,.lead){flex-basis:calc((100% - 48px)/6.35 * 2.35)}
body.studio-theme .studio-page .studio-original-rail h3{white-space:normal;overflow-wrap:anywhere;line-height:1.5;font-size:16px}
body.studio-theme .studio-page .studio-original-rail .is-active h3,body.studio-theme .studio-page .studio-original-rail .lead h3{font-size:22px}
body.studio-theme .studio-page .studio-original-rail p{white-space:normal;line-height:1.5}
body.studio-theme .studio-page [data-studio-scroll]:disabled{opacity:.35;cursor:default;transform:none}
body.studio-theme .studio-page .studio-exact-episode .art>em{inset-inline-start:8px;inset-inline-end:auto;z-index:2}
body.studio-theme .studio-page .studio-exact-cta h2{font-size:22px;line-height:1.5}
@media(max-width:1100px){
 body.studio-theme .studio-page .studio-original-rail>:is(button,a),body.studio-theme .studio-page .studio-original-rail>:is(.is-active,.lead){flex-basis:calc((100% - 24px)/3);height:auto}
 body.studio-theme .studio-page .studio-original-rail h3,body.studio-theme .studio-page .studio-original-rail .is-active h3,body.studio-theme .studio-page .studio-original-rail .lead h3{font-size:18px}
 body.studio-theme .studio-page .studio-original-rail .studio-exact-premiere p,body.studio-theme .studio-page .studio-original-rail .studio-exact-premiere>div>span{opacity:1;max-height:none}
}
@media(max-width:600px){
 body.studio-theme .studio-page .studio-original-rail{height:410px}
 body.studio-theme .studio-page .studio-original-rail>:is(button,a),body.studio-theme .studio-page .studio-original-rail>:is(.is-active,.lead){flex-basis:76%;min-width:0}
 body.studio-theme .studio-page .studio-exact-cta h2{font-size:18px}
}
/* Retain the existing unavailable-image state after removing the design switcher. */
body.studio-theme .studio-page .vip-poster.is-image-error>img{visibility:hidden}

