/* Top 1,000: one set of rules, scoped to the editorial ranking page.
   Explicit sizes on links/spans prevent Kirki's h2 a (50px) from winning. */
.tsz-top1000{font-family:"Open Sans",Helvetica,Arial,sans-serif;color:#2b2b2b;font-size:14px;line-height:1.7}
.tsz-top1000-banner img{display:block;width:100%;height:auto}
.tsz-top1000 > h1{font-family:"Fjalla One",Helvetica,Arial,sans-serif!important;font-size:42px!important;font-weight:400!important;line-height:1.2!important;letter-spacing:normal!important;text-transform:uppercase;margin:15px 0 12px!important}
.tsz-top1000-nav{font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.8;margin:0 0 30px}
.tsz-top1000-nav a[aria-current="page"]{font-weight:700;color:#111;text-decoration:underline}
.tsz-top1000-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:9%;row-gap:30px}
.tsz-top1000-film{min-width:0}
.tsz-top1000-image{display:block;line-height:0;margin:0 0 8px}
.tsz-top1000-image img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}
/* Original uses one H2 for both number and title. Apply the SAME size to each child. */
.tsz-top1000 .tsz-top1000-film h2,
.tsz-top1000 .tsz-top1000-film h2 .tsz-top1000-rank,
.tsz-top1000 .tsz-top1000-film h2 a{
 font-family:"Fjalla One",Helvetica,Arial,sans-serif!important;
 font-size:36px!important;font-weight:400!important;font-style:normal!important;
 letter-spacing:normal!important;line-height:1.12!important;text-transform:uppercase!important;
}
.tsz-top1000 .tsz-top1000-film h2{margin:7px 0 13px!important;padding:0!important}
.tsz-top1000 .tsz-top1000-film h2 a{color:#000;text-decoration:none}
.tsz-top1000 .tsz-top1000-film h2 a:hover{text-decoration:underline}
.tsz-top1000 .tsz-top1000-film h2 .tsz-top1000-movement{
 font-family:"Fjalla One",Helvetica,Arial,sans-serif!important;
 font-size:26.6667px!important;font-weight:400!important;line-height:1.12!important;
 color:#585858;font-style:normal!important;
}
.tsz-top1000 .tsz-top1000-film h2 .tsz-move-up{color:green}
.tsz-top1000 .tsz-top1000-film h2 .tsz-move-down{color:red}
.tsz-top1000 .tsz-top1000-film h2 .tsz-move-new{color:#a52a91!important}
.tsz-top1000 .tsz-top1000-film h3{font-family:"Fjalla One",Helvetica,Arial,sans-serif!important;font-size:21px!important;font-weight:400!important;line-height:1.2!important;color:grey;text-transform:uppercase;margin:0 0 10px!important;padding:0!important}
.tsz-top1000-aka{font-family:"Fjalla One",Helvetica,Arial,sans-serif!important;font-size:20px!important;font-weight:400!important;line-height:1.4;color:silver;text-transform:uppercase;margin:0 0 7px}
/* Match original HTML: bold metadata, italic 10pt cast, 10pt genre labels, normal body review. */
.tsz-top1000-facts{font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:14px!important;font-weight:600;line-height:1.7;margin:0 0 5px}
.tsz-top1000-facts a{font-size:inherit!important;font-weight:inherit}
.tsz-top1000-cast{font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:13.333px!important;font-weight:400;font-style:italic;line-height:1.7;margin:4px 0 20px}
.tsz-top1000-review{font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:14px!important;font-weight:400;line-height:1.7;margin:0 0 20px}
.tsz-top1000-keywords{font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:13.333px!important;font-weight:400;line-height:1.7;color:darkgoldenrod;margin:16px 0 0}
.tsz-top1000-keywords strong{font-weight:700}
.tsz-top1000-bottom-nav{margin:32px 0 0;padding-top:12px;border-top:1px solid #ddd}
.tsz-top1000-prevnext{display:flex;justify-content:space-between;gap:20px;font-size:14px;margin:10px 0 20px}
.tsz-top1000-prevnext .tsz-top1000-next{margin-left:auto}
@media(max-width:650px){.tsz-top1000-grid{grid-template-columns:1fr;gap:35px}.tsz-top1000 > h1{font-size:32px!important}}

/* The WordPress-generated page title sits OUTSIDE the shortcode. Scope it to
   the page containing our Top 1,000 shortcode, leaving other pages alone. */
body:has(.tsz-top1000) .content h2.post_title,
body:has(.tsz-top1000) .content h2.post_title a,
body:has(.tsz-top1000) .content h1.post_title,
body:has(.tsz-top1000) .content h1.post_title a {
 font-family:"Fjalla One",Helvetica,Arial,sans-serif !important;
 font-weight:400 !important;
 text-transform:uppercase !important;
 letter-spacing:normal !important;
 font-size:42px !important;
 line-height:1.2 !important;
}
@media(max-width:650px){
 body:has(.tsz-top1000) .content h2.post_title,
 body:has(.tsz-top1000) .content h2.post_title a,
 body:has(.tsz-top1000) .content h1.post_title,
 body:has(.tsz-top1000) .content h1.post_title a {font-size:32px !important;}
}

/* Shared GHF1000 text navigation, including the introduction shortcode. */
.tsz-ghf1000-nav{font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:13px;line-height:1.8;margin:0 0 30px;}
.tsz-ghf1000-nav a{color:#0086bd;text-decoration:none;}
.tsz-ghf1000-nav a:hover{text-decoration:underline;}
.tsz-ghf1000-nav a[aria-current="page"]{font-weight:700;color:#111;text-decoration:underline;}

/* v1.59: identical navigation typography on the introduction and rankings. */
.tsz-ghf1000-nav, .tsz-top1000 .tsz-ghf1000-nav {font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:14px!important;line-height:1.8!important;}
.tsz-ghf1000-nav a, .tsz-ghf1000-nav span {font-size:inherit!important;}
/* Leave a clear gap after the last film's genre/keyword row. */
.tsz-top1000 .tsz-top1000-bottom-nav {margin-top:42px!important;padding-top:24px!important;border-top:1px solid #ddd;}

/* Active navigation item, both rankings. */
.tsz-ghf1000-nav a[aria-current="page"]{color:#a52a91!important;font-weight:700!important;text-decoration:none!important;}

/* v1.90: One banner layout for all ranking lists.
   The WordPress content column is inset 35px inside the 1170px panel.
   Extend the banner to the panel edges, without shifting other content. */
.tsz-top1000 > .tsz-top1000-banner {
  position:relative!important;
  box-sizing:border-box!important;
  width:calc(100% + 70px)!important;
  max-width:none!important;
  margin:0 0 0 -35px!important;
  padding:0!important;
  left:auto!important;
  transform:none!important;
}
.tsz-top1000 > .tsz-top1000-banner img {
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
}
.tsz-top1000 > .tsz-top1000-banner + h1 {
  margin-top:48px!important;
  margin-bottom:12px!important;
}
@media(max-width:700px) {
 .tsz-top1000 > .tsz-top1000-banner {
  width:100%!important;
  margin-left:0!important;
 }
}

/* Gentle link focus treatment in ranking and introduction lists. */
.tsz-top1000 a:focus,
.tsz-top1000-nav a:focus {
  outline: none !important;
  box-shadow: none !important;
}
.tsz-top1000 a:focus-visible,
.tsz-top1000-nav a:focus-visible {
  outline: none !important;
  box-shadow: 0 2px 0 #009ac7 !important;
  background-color: rgba(0,154,199,.09);
  border-radius: 2px;
  text-decoration: none;
}

/* v2.74: remove theme's heavy right-click focus rectangle on menu links. */
body .site-header a:focus:not(:focus-visible),
body .main-navigation a:focus:not(:focus-visible),
body .menu a:focus:not(:focus-visible),
body .site-header a:active,
body .main-navigation a:active{outline:none!important;box-shadow:none!important;}
body .site-header a:focus-visible,
body .main-navigation a:focus-visible,
body .menu a:focus-visible{outline:none!important;box-shadow:none!important;text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important;background:rgba(0,154,199,.09)!important;}

/* v2.75: desktop theme navigation focus border (including right-click focus).
   Restrict to header/menu links so ordinary button borders remain intact. */
body .site-header nav a:focus,
body .site-header nav a:active,
body .main-navigation .menu a:focus,
body .main-navigation .menu a:active,
body nav .menu-item > a:focus,
body nav .menu-item > a:active,
body #site-navigation a:focus,
body #site-navigation a:active,
body #primary-menu a:focus,
body #primary-menu a:active {
  outline: 0 !important;
  outline-width: 0 !important;
  box-shadow: none !important;
  border-color: transparent !important;
}
body .site-header nav a:focus-visible,
body .main-navigation .menu a:focus-visible,
body nav .menu-item > a:focus-visible,
body #site-navigation a:focus-visible,
body #primary-menu a:focus-visible {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
  background-color: rgba(0,154,199,.09) !important;
}

/* v3.13: lighter champagne-gold glow, biased upward to keep the title clear. */
.tsz-top1000 a.tsz-top1000-image{outline:none!important;box-shadow:none!important;transition:box-shadow .2s ease}
.tsz-top1000 a.tsz-top1000-image:hover,.tsz-top1000 a.tsz-top1000-image:focus-visible{outline:none!important;box-shadow:0 -2px 11px 2px rgba(242,204,112,.72),0 -3px 21px 4px rgba(236,193,90,.35),0 1px 5px rgba(239,199,100,.25)!important}

/* Leave breathing room between the image glow and the ranking title. */
.tsz-top1000-image{margin-bottom:13px}
