
:root{color-scheme:dark;--bg:#000;--ink:#eeeae6;--quiet:#a8a0a0;--gold:#e9b23b;--red:#f31c19;--line:#342525}
*{box-sizing:border-box}html{margin:0;background:#000}body{margin:0;background:#000;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.site{min-height:100dvh;display:flex;flex-direction:column}.topbar{flex:0 0 66px;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(20px,4.8vw,82px);z-index:3;background:#000}
.brand{font-size:11px;font-weight:800;letter-spacing:.21em;text-transform:uppercase;white-space:nowrap}.brand:hover{color:var(--gold)}nav{display:flex;gap:clamp(17px,2.8vw,45px);align-items:center}nav a{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#9e9999;white-space:nowrap}nav a:hover,nav a[aria-current=page]{color:#fff}
main{min-width:0}
/* Entire artwork must remain visible: viewport-sized stage, not a max-height percentage. */
.site.home{height:100dvh;overflow:hidden}.home main{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.poster-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:10px 20px 20px}.poster{display:block;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:screen}
/* Editorial About: asymmetric three-part composition, deliberately arranged. */
.site.about{height:100dvh;overflow:hidden}.about main{flex:1;min-height:0;display:flex;align-items:center;padding:20px clamp(24px,5.5vw,90px) 35px;overflow-y:auto}.about-layout{width:min(1410px,100%);margin:auto;display:grid;grid-template-columns:minmax(190px,.75fr) minmax(370px,1.35fr) minmax(205px,.65fr);gap:clamp(25px,3.8vw,70px);align-items:center}.about-lead{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;border-left:3px solid var(--red);padding:4px 0 4px clamp(15px,2vw,31px)}.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:800;color:var(--gold);text-transform:uppercase;margin:0 0 18px}.about h1{font-size:clamp(40px,4.6vw,79px);line-height:.91;letter-spacing:-.065em;text-transform:uppercase;margin:0;overflow-wrap:normal}.about h1 span{display:block;color:var(--red)}.about-genre{font-size:10px;line-height:1.8;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#aa8c6b;margin:24px 0 0}.about-story{padding-top:7px}.about-story .story-number{font-size:11px;letter-spacing:.2em;color:var(--red);font-weight:800;margin:0 0 18px}.about-copy{font-size:clamp(14px,1.12vw,17px);line-height:1.66;color:#d8d1c9}.about-copy p{margin:0 0 23px}.about-copy p:first-child{font-size:clamp(17px,1.55vw,23px);line-height:1.46;color:#fff;letter-spacing:-.02em}.about-copy .reveal{font-weight:800;color:var(--gold);font-size:clamp(17px,1.65vw,24px);line-height:1.3;margin-top:30px}.about-info{align-self:center;border-top:1px solid #6b2b27}.film-facts{margin:0}.film-facts div{padding:13px 0 15px;border-bottom:1px solid var(--line)}.film-facts dt{font-size:9px;font-weight:800;letter-spacing:.2em;color:var(--gold);text-transform:uppercase;margin-bottom:5px}.film-facts dd{margin:0;font-size:13px;line-height:1.4}.film-note{margin:24px 0 0;color:#918883;font-size:12px;line-height:1.6}
.trailer{height:100dvh;overflow:hidden}.trailer main{flex:1;min-height:0;display:grid;place-items:center;padding:12px 32px 35px}.video-layout{width:min(1050px,100%);max-height:100%;display:flex;flex-direction:column;gap:16px}.video-heading{display:flex;justify-content:space-between;align-items:baseline;gap:15px}.video-heading h1{font-size:clamp(20px,2.7vw,31px);font-weight:700;margin:0}.video-heading span{color:var(--gold);font-size:10px;letter-spacing:.2em;text-transform:uppercase}.video-wrap{width:100%;aspect-ratio:16/9;max-height:calc(100dvh - 180px);margin:auto}.video-wrap iframe{width:100%;height:100%;border:0;display:block}.video-caption{color:#827872;font-size:11px;margin:0}
/* The tool is the explicit exception: it must have normal document scrolling. */
html:has(.tool-page),body:has(.tool-page){height:auto!important;min-height:100%;overflow-y:auto!important;overflow-x:hidden}.site.tool-page{height:auto!important;min-height:100dvh!important;display:block!important;overflow:visible!important}.tool-page .topbar{position:relative;top:auto;border-bottom:1px solid #241d1a}.tool-page main{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:31px 16px 90px}.tool-heading{max-width:920px;margin:0 auto 22px;display:flex;justify-content:space-between;gap:20px;align-items:baseline}.tool-heading h1{font-size:clamp(25px,3vw,36px);letter-spacing:-.04em;margin:0}.tool-heading span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#b8a29a}.tool-page #appetizer-planner{max-width:920px;margin:0 auto;overflow:visible!important;height:auto!important;max-height:none!important}.tool-page #appetizer-planner .ap-wrap{max-width:920px;background:transparent;padding:0 0 50px;overflow:visible!important;height:auto!important;max-height:none!important}.tool-page #appetizer-planner .ap-header{display:none}
@media(max-height:780px) and (min-width:901px){.about h1{font-size:clamp(36px,4.2vw,65px)}.about-copy{font-size:13px;line-height:1.44}.about-copy p{margin-bottom:14px}.about-copy p:first-child{font-size:17px}.about-copy .reveal{font-size:19px;margin-top:16px}.film-facts div{padding:9px 0}.about main{padding-top:12px;padding-bottom:15px}}
@media(max-width:1000px){.about-layout{grid-template-columns:minmax(190px,.8fr) minmax(320px,1.2fr);align-items:start}.about-info{grid-column:1/-1;display:block}.film-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.about{height:auto!important;min-height:100dvh!important;overflow:visible!important}.about main{display:block;overflow:visible;padding-top:40px;padding-bottom:60px}.about-lead{min-height:320px}.film-facts dd{overflow-wrap:anywhere}}
@media(max-width:650px){.topbar{flex:0 0 auto;min-height:76px;height:auto;padding:15px 16px;flex-wrap:wrap;gap:13px}.brand{font-size:10px;letter-spacing:.14em}nav{gap:15px;flex-wrap:wrap}nav a{font-size:9px;letter-spacing:.04em}.poster-stage{padding:4px 8px 12px}.about-layout{display:block}.about-lead{min-height:0;margin-bottom:37px}.about h1{font-size:clamp(51px,13vw,81px)}.about-copy p:first-child{font-size:20px}.film-facts{display:block}.about-info{margin-top:30px}.trailer main{padding:16px}.video-heading{display:block}.video-heading span{display:block;margin-bottom:10px}.video-wrap{max-height:none}.tool-heading{display:block}.tool-heading span{display:block;margin-top:9px}}
