@font-face{font-family:Wallpoet;src:url("assets/fonts/files/theme/fonts/Wallpoet.woff2__q_6b264b80.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Anonymous Pro";src:url("assets/fonts/files/theme/fonts/AnonymousPro-Regular.woff2__q_6b264b80.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Anonymous Pro";src:url("assets/fonts/recovered/AnonymousPro-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Lato;src:url("assets/fonts/recovered/Lato-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Futura;src:url("assets/fonts/files/theme/fonts/Futura.woff2__q_6b264b80.woff2") format("woff2");font-weight:500;font-display:swap}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0;background:#000}
body{font-family:Wallpoet,system-ui,sans-serif;color:#888;overflow-x:hidden}
a{color:inherit;text-decoration:none}

/* The preserved site is a 1014px forensic stage. On desktop we scale that stage
   to use the browser width while retaining a clean outside margin. */
.page-shell{width:min(calc(100vw - 48px),1600px);margin:0 auto;position:relative;background:#020202;overflow:hidden;min-height:100vh}
.page-stage{position:relative;width:1014px;transform-origin:top left;will-change:transform}
.section-bg{position:absolute;z-index:0}
.hero-video{position:absolute;left:0;top:0;width:100%;object-fit:cover;z-index:1}
.content-layer{position:relative;z-index:2;width:1014px;height:100%}
.content-item{position:absolute}
.text-item{white-space:normal;overflow:visible!important}
.text-item a{display:block;width:100%;height:100%}
.image-item{overflow:hidden}
.image-item img{display:block;width:100%;height:100%;object-fit:fill}
#results-2025{scroll-margin-top:82px}

/* Persistent navigation. It is deliberately outside the scaled forensic stage
   so it stays crisp, readable and fixed while the page scrolls. */
.site-header{position:fixed!important;top:0!important;left:50%!important;transform:translateX(-50%);width:min(calc(100vw - 48px),1600px)!important;height:60px;background:#000;z-index:1000}
.nav-inner{height:60px;display:flex;align-items:center;padding:0 26px;gap:18px}
.brand{font-family:Wallpoet;font-size:24px;font-weight:300;line-height:40px;letter-spacing:.72px;color:#fff;margin-right:auto;width:auto!important;white-space:nowrap;flex:0 0 auto}
.desktop-nav{display:flex;height:60px;align-items:stretch;margin-left:auto;min-width:0}
.desktop-nav>a,.desktop-nav>span,.desktop-nav>.navdrop>a,.desktop-nav>.navdrop>span{display:flex;align-items:center;padding:0 15px;color:white;font-family:"Anonymous Pro";font-size:10px;letter-spacing:1px;text-transform:uppercase;cursor:default;white-space:nowrap}
.desktop-nav>a{cursor:pointer}
.desktop-nav a:hover,.desktop-nav .active{background:#111;color:#fff}
.navdrop{position:relative;display:flex}
.submenu{position:absolute;display:none;top:60px;left:0;background:#000;min-width:220px;padding:8px 0;z-index:1002;box-shadow:0 10px 24px rgba(0,0,0,.35)}
.navdrop:hover .submenu,.navdrop:focus-within .submenu{display:block}
.submenu a{display:block;color:#fff;font-family:Lato,sans-serif;font-size:13px;padding:8px 12px;white-space:nowrap}
.hamburger,.mobile-nav{display:none}

@media(max-width:1240px) and (min-width:993px){
  .nav-inner{padding:0 18px;gap:10px}
  .brand{font-size:19px;letter-spacing:.55px}
  .desktop-nav>a,.desktop-nav>span,.desktop-nav>.navdrop>a,.desktop-nav>.navdrop>span{padding:0 8px;font-size:9.5px}
}

@media(max-width:992px){
  body{background:#020202}
  .page-shell{width:100%;height:auto!important;min-height:100vh;overflow:visible;padding-top:50px}
  .page-stage{width:100%!important;height:auto!important;transform:none!important}
  .site-header{top:0!important;left:0!important;transform:none!important;width:100%!important;height:50px;background:#000;z-index:1000}
  .nav-inner{height:50px;padding:0 20px;gap:0}
  .brand{font-size:17.6px;line-height:28px;width:auto!important;white-space:nowrap}
  .desktop-nav{display:none}
  .hamburger{display:block;background:none;border:0;width:42px;height:42px;padding:10px;position:relative;margin-left:auto;cursor:pointer}
  .hamburger span,.hamburger span:before,.hamburger span:after{display:block;content:"";width:22px;height:1px;background:white;position:absolute;left:10px;transition:.2s}
  .hamburger span{top:21px}.hamburger span:before{top:-8px;left:0}.hamburger span:after{top:8px;left:0}
  body.nav-open .hamburger span{background:transparent}body.nav-open .hamburger span:before{top:0;transform:rotate(45deg)}body.nav-open .hamburger span:after{top:0;transform:rotate(135deg)}
  .mobile-nav{display:flex;position:fixed;top:50px;left:0;width:100%;height:0;overflow:auto;background:#000;z-index:999;flex-direction:column;align-items:stretch;text-align:center;transition:height .25s}
  body.nav-open .mobile-nav{height:calc(100vh - 50px);padding:10px 0}
  .mobile-nav>a,.mobile-nav>span,.mobile-nav summary,.mobile-nav details>a{font-family:Lato,sans-serif;color:#fff;padding:10px 0;font-size:14px;display:block;cursor:pointer}
  .mobile-nav details>a{font-size:13px;background:#050505}.mobile-nav summary{list-style:none}
  .content-layer{width:100%;height:auto!important;display:flex;flex-direction:column;position:relative;padding:0 20px 40px}
  .section-bg{display:none}
  .hero-video{position:relative;width:calc(100% + 40px);margin-left:-20px;height:46vw;min-height:180px;max-height:400px;order:-50;object-fit:cover}
  .content-item{position:relative!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important;margin:0 0 24px;order:var(--mob-order)}
  .image-item img{width:100%;height:auto;object-fit:contain}
  .text-item{overflow:visible!important;min-height:0!important;line-height:1.35!important}
  .title{font-size:clamp(24px,7vw,35px)!important;line-height:1.05!important;margin-top:14px}
  .paragraph{font-size:16px!important;line-height:1.2!important;font-family:"Anonymous Pro"!important}
  #results-2025{scroll-margin-top:64px}
}

@media(max-width:992px){
  .has-banner-image .hero-video{display:none}
  .logo-art{position:absolute!important;top:calc(23vw + 50px)!important;left:50%!important;transform:translate(-50%,-50%);width:min(304px,70vw)!important;z-index:8;margin:0!important}
  .logo-art img{width:100%;height:auto}
}
@media(max-width:480px){
  .content-layer{padding-left:16px;padding-right:16px}
  .hero-video{width:calc(100% + 32px);margin-left:-16px;height:62vw}
}


/* 2026 link / brand refinements */
.brand-city{font-family:"Anonymous Pro",monospace;font-size:10px;font-weight:400;letter-spacing:1.6px;color:#aaa;margin-left:12px;vertical-align:middle;white-space:nowrap}
.text-item a.inline-link{display:inline!important;width:auto!important;height:auto!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;cursor:pointer}
.text-item a.item-link{display:block;width:100%;height:100%;cursor:pointer}
.image-item{position:absolute}
.logo-hotspot{position:absolute;display:block;z-index:6;top:0;height:100%;cursor:pointer}
.filmfreeway-hotspot{left:78%;width:22%}
@media(max-width:992px){
  .brand-city{font-size:9px;letter-spacing:1.2px;margin-left:8px}
  .image-item{position:relative!important}
}
@media(max-width:420px){
  .brand{font-size:15.5px}
  .brand-city{font-size:8px;margin-left:6px;letter-spacing:1px}
}

/* Full-bleed hero on the current homepage and annual landing pages. */
.fullbleed-hero .page-shell{overflow:visible}
.coming-soon-page .coming-year{font-family:Wallpoet!important}
.coming-soon-page .coming-subtitle{font-family:"Anonymous Pro"!important;color:#aaa!important}
@media(max-width:992px){
  .coming-soon-page .coming-year,.coming-soon-page .coming-title,.coming-soon-page .coming-subtitle{text-align:center!important}
  .coming-soon-page .coming-year{font-size:52px!important;margin-top:44px}
  .coming-soon-page .coming-title{font-size:32px!important}
  .coming-soon-page .coming-subtitle{font-size:16px!important}
}
