/* Translucent menu veil: retain visible page context and large readable type. */
html body .cinema-header nav,
html body .cinema-header nav.open{
 inset:0!important;transform:none!important;width:100%!important;height:100dvh!important;
 box-sizing:border-box;border:0!important;border-radius:0!important;
 padding:124px max(24px,calc((100vw - 720px)/2)) 18px!important;
 background:linear-gradient(90deg,#080c0f4d,#080c0f9e 35%,#080c0f9e 65%,#080c0f4d)!important;
 backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
 justify-content:space-between!important;align-items:stretch;gap:0!important;
 overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;
 scroll-behavior:smooth;scroll-padding:130px 0 20px;
}
html body .cinema-header nav>a,html body .cinema-header nav>button{
 display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;
 flex-shrink:0;height:auto!important;min-height:44px!important;padding:8px 0!important;margin:0!important;
 font-size:28px!important;font-weight:400;line-height:1.13!important;letter-spacing:0!important;
 text-align:center;background:none!important;border:0!important;box-shadow:none!important;
 color:#b9c0c3!important;opacity:1!important;overflow:visible!important;
 transition:font-size .24s cubic-bezier(.2,.8,.2,1),color .2s,padding .24s;
}
html body .cinema-header nav>[data-menu-distance="0"]{font-size:68px!important;font-weight:700;padding:12px 0!important;color:#ff8b32!important}
html body .cinema-header nav>[data-menu-distance="1"]{font-size:39px!important;color:#f0f2f0!important}
html body .cinema-header nav>[data-menu-distance="2"]{font-size:31px!important;color:#d4d9da!important}
html body .cinema-header nav>a>span,html body .cinema-header nav>button>span{
 display:block;transform:none!important;max-width:100%!important;white-space:normal!important;
 overflow:visible!important;overflow-wrap:normal;word-break:normal;text-wrap:balance;
 line-height:1.13!important;text-align:center;pointer-events:none;
}
html body .cinema-header nav>a:focus-visible,html body .cinema-header nav>button:focus-visible{outline:1px solid #ff8b32;outline-offset:-2px}
@media(max-width:800px){
 html body .cinema-header nav,html body .cinema-header nav.open{padding:100px 22px 16px!important;scroll-padding-top:104px}
 html body .cinema-header nav>a,html body .cinema-header nav>button{font-size:24px!important;min-height:40px!important;padding:7px 0!important}
 html body .cinema-header nav>[data-menu-distance="0"]{font-size:clamp(44px,12vw,58px)!important;padding:10px 0!important}
 html body .cinema-header nav>[data-menu-distance="1"]{font-size:33px!important}
 html body .cinema-header nav>[data-menu-distance="2"]{font-size:27px!important}
}
@media(prefers-reduced-motion:reduce){html body .cinema-header nav{scroll-behavior:auto}html body .cinema-header nav>a,html body .cinema-header nav>button{transition:none}}

/* A filtered header would become a backdrop root and hide the page from the menu blur. */
html body header.cinema-header:has(nav.open){background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body .cinema-header nav>a,html body .cinema-header nav>button{text-shadow:0 2px 8px #000c,0 0 2px #0009}
/* Amplify the menu lens without shrinking long English labels. */
html body .cinema-header nav>[data-menu-distance="0"]{font-size:clamp(80px,8vw,112px)!important;line-height:1.04!important;padding:12px 0!important}
html body .cinema-header nav>[data-menu-distance="1"]{font-size:48px!important}
html body .cinema-header nav>[data-menu-distance="2"]{font-size:34px!important}
@media(max-width:800px){html body .cinema-header nav>[data-menu-distance="0"]{font-size:clamp(50px,15vw,72px)!important}html body .cinema-header nav>[data-menu-distance="1"]{font-size:38px!important}html body .cinema-header nav>[data-menu-distance="2"]{font-size:29px!important}}
/* Larger editorial focal word, with whole-word wrapping across the wider menu. */
html body .cinema-header nav,html body .cinema-header nav.open{padding-left:max(24px,calc((100vw - 1100px)/2))!important;padding-right:max(24px,calc((100vw - 1100px)/2))!important}
html body .cinema-header nav>[data-menu-distance="0"]{font-size:clamp(112px,11vw,176px)!important}
html body .cinema-header nav>[data-menu-distance="1"]{font-size:56px!important}
html body .cinema-header nav>[data-menu-distance="2"]{font-size:38px!important}
@media(max-width:800px){html body .cinema-header nav,html body .cinema-header nav.open{padding-left:22px!important;padding-right:22px!important}html body .cinema-header nav>[data-menu-distance="0"]{font-size:clamp(56px,18vw,86px)!important}html body .cinema-header nav>[data-menu-distance="1"]{font-size:40px!important}html body .cinema-header nav>[data-menu-distance="2"]{font-size:30px!important}}


/* Plain menu lettering, with a longer eased lens transition. */
html body .cinema-header nav>:is(a,button){font-weight:500!important;transition:font-size .42s cubic-bezier(.22,.68,.25,1),padding .42s cubic-bezier(.22,.68,.25,1),color .25s ease!important}
html body .cinema-header nav>:is(a,button)>span{color:inherit!important;background:none!important;-webkit-text-fill-color:currentColor!important;-webkit-text-stroke:0!important;text-shadow:0 2px 8px #0009!important}
@media(prefers-reduced-motion:reduce){html body .cinema-header nav>:is(a,button){transition:none!important}}

/* One continuous font-size driver; focal lettering uses the logo's exact solid orange. */
html body .cinema-header nav>:is(a,button){font-size:var(--menu-lens-font,28px)!important;padding:8px 0!important;line-height:1.13!important;transition:color .16s ease!important;scroll-margin-block:16px}
html body .cinema-header nav,html body .cinema-header nav.open{scroll-behavior:auto!important;overflow-anchor:none}
html body .cinema-header nav>[data-menu-distance="0"],html body .cinema-header nav>[data-menu-distance="0"]>span{color:#ea531a!important;background:none!important;-webkit-text-fill-color:#ea531a!important;-webkit-text-stroke:0!important;text-shadow:0 2px 5px #0006!important}

/* Fixed central focal point: the menu moves around the viewport centre. */
html body .cinema-header nav,html body .cinema-header nav.open{display:block!important;overflow:hidden!important;padding:0!important}
html body .cinema-header nav>:is(a,button){position:absolute!important;top:50%!important;left:0!important;right:0!important;width:100%!important;margin:0!important;padding:0 20px!important;min-height:0!important;height:auto!important;transform:translateY(calc(-50% + var(--menu-lens-y,0px)))!important;transition:color .16s ease!important;box-sizing:border-box;line-height:1.13!important;pointer-events:auto}
html body .cinema-header nav>:is(a,button)>span{white-space:nowrap!important;max-width:100%!important}

/* Never expose an uninitialized, collapsed stack behind the page. */
html body .cinema-header nav:not(.open){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
html body .cinema-header nav.open{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
html body .cinema-header nav:not(.open)>:is(a,button){pointer-events:none!important}
html body .cinema-header nav:not(.open)>:is(a,button){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
