.brand-film{background:var(--cream);border-block:2px solid var(--ink);grid-template-columns:45% 55%;display:grid}.film-cover{background:var(--ink);cursor:pointer;color:#fff;border:0;min-height:620px;position:relative;overflow:hidden}.film-cover img{object-fit:cover;object-position:center}.film-cover:after{content:"";background:linear-gradient(#0000 50%,#130f0fcc);position:absolute;inset:0}.film-play{z-index:1;background:var(--butter);width:88px;height:88px;color:var(--ink);box-shadow:6px 6px 0 var(--red);place-items:center;font-size:2rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.film-cover:hover .film-play{background:var(--cream)}.film-duration{z-index:1;font-family:var(--utility);letter-spacing:.15em;font-weight:700;position:absolute;bottom:2rem;left:2rem}.film-intro{align-self:center;padding:clamp(3rem,6vw,7rem)}.film-intro h2,.film-route h1{font-family:var(--display);margin:1.5rem 0;font-size:clamp(3.6rem,6vw,7rem);font-weight:400;line-height:.95}.film-intro h2 em{color:var(--red);font-style:normal}.film-intro p{max-width:35rem;color:var(--muted)}.film-intro .text-link{margin-top:1.5rem;display:block}.film-prompt{z-index:55;background:var(--ink);color:var(--cream);box-shadow:5px 5px 0 var(--red);border:1px solid #796f6b;align-items:center;max-width:calc(100vw - 2.4rem);animation:.25s ease-out film-enter;display:flex;position:fixed;bottom:1.2rem;left:1.2rem}.film-prompt button{cursor:pointer;color:inherit;background:0 0;border:0}.film-prompt-watch{text-align:left;font-family:var(--utility);align-items:center;gap:1rem;padding:1rem;font-size:1.1rem;font-weight:700;display:flex}.film-prompt-watch>span:first-child{color:var(--butter)}.film-prompt small{color:#d8cfcb;font-size:.85rem;font-weight:400;display:block}.film-prompt-dismiss{min-width:44px;min-height:44px;margin-right:.4rem;font-size:1.8rem}.film-dialog{background:var(--ink);color:var(--cream);overscroll-behavior:contain;border:1px solid #796f6b;width:100%;max-width:min(680px,100vw - 1.5rem);max-height:92svh;padding:0;overflow:auto}.film-dialog::backdrop{background:#130f0fed}.film-dialog-body{padding:1rem clamp(1rem,3vw,2rem) 2rem}.film-dialog header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.film-dialog h2{font-family:var(--utility);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:1.2rem}.film-dialog header button{color:inherit;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:2rem}.film-player video{object-fit:contain;background:#000;width:100%;max-height:65svh;display:block}.film-mix{border:0;flex-wrap:wrap;gap:.5rem;margin:0;padding:1rem 0 0;display:flex}.film-mix legend{font-family:var(--utility);text-transform:uppercase;letter-spacing:.12em;padding-top:1rem;font-size:.8rem}.film-mix button{color:inherit;cursor:pointer;font-family:var(--utility);background:0 0;border:1px solid #796f6b;padding:.65rem .9rem}.film-mix button[aria-pressed=true]{background:var(--butter);border-color:var(--butter);color:var(--ink)}.film-player-note{color:#c4b8b1;margin:1rem 0;font-size:.78rem}.film-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.film-route{background:var(--ink);color:var(--cream);padding:clamp(2rem,5vw,5rem)}.film-route-grid{grid-template-columns:1fr minmax(280px,480px);gap:clamp(2rem,6vw,6rem);max-width:1250px;margin:auto;display:grid}.film-route h1 em{color:var(--butter);font-style:normal}.film-route-copy>p{color:#d8cfcb;max-width:35rem}.film-route-chapters{gap:1.5rem;margin-top:3rem;display:grid}.film-route-chapters article{border-top:1px solid #796f6b;padding-top:1.5rem}.film-route-chapters span{font-family:var(--utility);color:var(--butter);letter-spacing:.1em}.film-route-chapters h2{font-family:var(--display);margin:.5rem 0;font-size:2rem;font-weight:400}.film-route-chapters p{color:#d8cfcb;max-width:35rem}@keyframes film-enter{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.brand-film,.film-route-grid{grid-template-columns:1fr}.film-cover{min-height:480px}.film-intro{padding:3rem 1.2rem}.film-route-grid>.film-player{grid-row:2}.film-dialog{max-height:95svh}.film-player video{max-height:60svh}}@media (prefers-reduced-motion:reduce){.film-prompt{animation:none}}
