.film-hero{--c-bg:#050a09;--c-fg:#eef5f2;--c-muted:#a8bab4;--c-accent:#3fd6ae;background:var(--c-bg);color:var(--c-fg);isolation:isolate;padding-block:clamp(32px,5vw,64px) clamp(40px,6vw,80px);position:relative;overflow:hidden}.film-backdrop{object-fit:cover;filter:blur(40px)saturate(1.3);opacity:.45;z-index:-2;width:calc(100% + 80px);max-width:none;height:calc(100% + 80px);position:absolute;inset:-40px;transform:scale(1.1)}.film-hero:after{content:"";z-index:-1;background:radial-gradient(at 20% 40%,#0000 0,#050a0959 55%,#050a09d9 100%),linear-gradient(#050a0933,#050a09e6);position:absolute;inset:0}.film-hero-grid{grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,64px);display:grid}.film-poster{aspect-ratio:5/7;background:#0f1c19;border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 60px -20px #000c,0 0 0 1px #ffffff14}.film-poster img{object-fit:cover;width:100%;height:100%}.film-poster .emblem{opacity:.5;width:96px;height:96px}@media (prefers-reduced-motion:no-preference){.film-poster{transition:transform .5s cubic-bezier(.2,.8,.2,1);transform:perspective(900px)rotateY(6deg)rotateX(2deg)}.film-poster:hover{transform:none}}.film-stamp{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:#f2c46b;background:#050a098c;border:2px solid;border-radius:4px;padding:4px 10px;font-size:.72rem;position:absolute;top:14px;right:12px;transform:rotate(8deg)}.film-head .crumb{color:var(--c-muted)}.film-head .crumb:hover{color:var(--c-fg)}.film-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent);flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;font-size:.75rem;display:flex}.film-live{color:#f2c46b;border:1px solid;border-radius:99px;padding:2px 9px}.film-head h1{max-width:16ch;margin-block:10px 6px;font-size:clamp(2.3rem,5.4vw,4.4rem);font-weight:700}.film-edition{font-family:var(--font-display);font-size:var(--step-1);color:var(--c-muted)}.film-facts{font-family:var(--font-mono);color:var(--c-muted);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:16px;font-size:.85rem;display:flex}.film-facts span+span:not(.film-rating):before{content:"·";color:#ffffff4d;margin-right:18px}.film-rating{border:1.5px solid var(--c-fg);color:var(--c-fg);border-radius:4px;padding:1px 7px;font-weight:500}.film-lede{max-width:56ch;font-size:var(--step-1);color:#d3dfda;margin-top:18px;line-height:1.5}.film-cta{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.film-hero .btn{background:var(--c-accent);border-color:var(--c-accent);color:#03130e}.film-hero .btn.film-ghost{color:var(--c-fg);background:#ffffff0f;border-color:#ffffff40}.film-hero .btn.film-ghost:hover{border-color:var(--c-accent)}@media (width<=760px){.film-hero-grid{grid-template-columns:1fr}.film-poster{max-width:220px}}.film-body{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:clamp(32px,5vw,72px);padding-block:56px 72px;display:grid}.film-main{min-width:0;max-width:70ch}.film-h{font-size:var(--step-2);scroll-margin-top:calc(var(--header-h,64px) + 24px);margin:48px 0 18px}.film-h:first-child{margin-top:0}.film-synopsis{font-family:var(--font-display);margin-bottom:1.2em;font-size:clamp(1.2rem,2vw,1.45rem);font-weight:500;line-height:1.45}.film-cast{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.film-cast li{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-rows:auto auto;grid-template-columns:40px 1fr;align-items:center;column-gap:12px;padding:12px;display:grid}.film-initial{background:color-mix(in srgb, var(--accent) 14%, var(--surface-2));width:40px;height:40px;color:var(--accent);font-family:var(--font-mono);border-radius:50%;grid-row:span 2;place-items:center;font-size:.8rem;font-weight:500;display:grid}.film-cast b{font-family:var(--font-display);font-weight:600;line-height:1.2}.film-cast small{color:var(--muted);font-size:.85rem}.film-trailer{aspect-ratio:16/9;background:#050a09;border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden}.film-trailer img{object-fit:cover;filter:blur(14px)brightness(.55);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.1)}.film-trailer button{color:#fff;cursor:pointer;background:#00000059;border:2px solid #ffffffb3;border-radius:50%;place-items:center;width:84px;height:84px;padding-left:6px;font-size:1.8rem;transition:transform .2s,background .2s;display:grid;position:relative}.film-trailer button:hover{background:var(--accent);border-color:var(--accent);transform:scale(1.06)}.film-note{text-align:center;font-family:var(--font-mono);color:#ffffffa6;font-size:.7rem;position:absolute;bottom:12px;left:0;right:0}.film-trailer iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.ticket{top:calc(var(--header-h,64px) + 32px);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;position:sticky;overflow:hidden}.ticket-top{background:var(--accent);color:var(--accent-ink);padding:18px 20px}.ticket-top .eyebrow{color:inherit;opacity:.8}.ticket-title{font-family:var(--font-display);font-weight:700;font-size:var(--step-1);margin-top:6px;line-height:1.2}.ticket dl{grid-template-columns:auto 1fr;gap:10px 14px;margin:0;padding:20px;font-size:.95rem;display:grid}.ticket dt{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:.7rem}.ticket dd{margin:0}.ticket-stub{border-top:2px dashed var(--line);color:var(--muted);justify-content:space-between;padding:14px 20px;display:flex;position:relative}.ticket-stub:before,.ticket-stub:after{content:"";background:var(--bg);border:1px solid var(--line);border-radius:50%;width:20px;height:20px;position:absolute;top:-11px}.ticket-stub:before{left:-11px}.ticket-stub:after{right:-11px}@media (width<=900px){.film-body{grid-template-columns:minmax(0,1fr)}.ticket{order:-1;max-width:420px;position:static}}.film-shelf{border-top:1px solid var(--line);padding-block:56px 88px}.film-row{scroll-snap-type:x proximity;grid-auto-columns:minmax(140px,170px);grid-auto-flow:column;gap:18px;padding-bottom:8px;display:grid;overflow-x:auto}.film-card{scroll-snap-align:start;gap:6px;text-decoration:none;display:grid}.film-card-img{aspect-ratio:5/7;background:var(--surface-2);box-shadow:var(--shadow);border-radius:10px;place-items:center;display:grid;overflow:hidden}.film-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.film-card:hover .film-card-img img{transform:scale(1.04)}.film-card-img .emblem{opacity:.4;width:48px;height:48px}.film-card b{font-family:var(--font-display);margin-top:4px;font-weight:600;line-height:1.2}.film-card small{color:var(--muted)}.films-index{margin-bottom:64px}.film-card-img{position:relative}.film-card.upcoming .film-card-img{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--accent), var(--shadow)}.film-card.upcoming small{color:var(--accent);font-weight:500}.film-card-badge{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:var(--signal);color:var(--bg);border-radius:4px;padding:3px 8px;font-size:.66rem;position:absolute;top:8px;left:8px}.film-row{margin-inline:-6px;padding:6px 6px 8px}
