


.fl-head { padding-bottom: clamp(32px, 4vw, 64px); }
.fl-head__grid { align-items: end; row-gap: clamp(20px, 2.4vw, 32px); }
.fl-head__lead { max-width: 44ch; color: var(--fg-2); }
@media (min-width: 1024px) {
  .fl-head__h { --col-lg: 1 / span 7; --fit-w: (100vw - 2 * var(--margin)) * .56; }
  .fl-head__lead { --col-lg: 8 / span 5; padding-bottom: .35em; }
}


.fl-sec { position: relative; padding-bottom: var(--sec); }


.fl-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 24px;
  margin-bottom: clamp(36px, 4.4vw, 64px); border-bottom: 1px solid var(--line); }
html.no-js .fl-bar { display: none; }
html.js .fl-bar:not(.is-ready) { visibility: hidden; }   
.fl-bar__opts { display: flex; flex-wrap: wrap; align-items: center; gap: 0 clamp(18px, 2.4vw, 36px); min-width: 0; }
.fl-f { position: relative; display: inline-flex; align-items: center; min-height: 48px; padding: 14px 0 12px;
  font: 600 var(--t-label)/1.2 var(--sans); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--fg-2);
  white-space: nowrap; transition: color var(--d2) var(--e-out); }
.fl-f::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--fg);
  transform: scaleX(0); transform-origin: 0 50%; transition: transform var(--d2) var(--e-out); }
.fl-f:hover, .fl-f[aria-pressed="true"] { color: var(--fg); }
.fl-f[aria-pressed="true"]::after { transform: scaleX(1); }
.fl-f:focus-visible { outline-offset: 2px; }
.fl-bar__count { color: var(--fg-2); white-space: nowrap; font-variant-numeric: tabular-nums; }

@media (max-width: 559.98px) {
  .fl-bar__count { display: block; position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  
  .fl-bar { border-bottom: 0; }
  .fl-bar__opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--gutter); width: 100%; }
  .fl-f { border-bottom: 1px solid var(--line); }
}


.fl-grp[hidden] { display: none !important; }
.fl-grp + .fl-grp { margin-top: clamp(64px, 8vw, 128px); }
.fl-grp__h { margin-bottom: clamp(18px, 2vw, 28px); color: var(--fg-2); }
.fl-posters { list-style: none; margin: 0; padding: 0; row-gap: clamp(36px, 4vw, 56px); }
@media (min-width: 640px) { .fl-posters { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .fl-posters { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.fl-card { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.fl-card .poster { gap: 12px; }
.fl-card .poster__title { overflow-wrap: normal; }


@media (hover: hover) and (pointer: fine) {
  .fl-card a.poster:hover .poster__img { transform: scale(1.03); }
}
a.poster:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }


.fl-card--now { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--gutter); row-gap: 24px; align-items: start; }
.fl-card--now > .poster { grid-column: 1; }
.fl-now { display: contents; }
.fl-now__laurels { grid-column: 2; grid-row: 1; align-self: center; flex-direction: column; gap: 12px; }
.fl-now__k { grid-column: 1 / -1; grid-row: 2; color: var(--fg-2); }
.fl-now__log { grid-column: 1 / -1; grid-row: 3; max-width: 40ch; margin-top: -12px; }
.fl-now__dist { grid-column: 1 / -1; grid-row: 4; font-size: var(--t-small); color: var(--fg-2); }
.fl-now__acts { grid-column: 1 / -1; grid-row: 5; }
.fl-now__laurels .laurel-c { line-height: 1.35; }
@media (min-width: 640px) {
  .fl-card--now { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fl-now { display: flex; flex-direction: column; align-items: flex-start; gap: 0; grid-column: 2 / -1; grid-row: 1; min-width: 0;
    padding-top: 4px; }
  .fl-now__log { margin-top: 0; max-width: 36ch; }
  .fl-now__k + .fl-now__log { margin-top: 18px; }
  .fl-now__laurels { flex-direction: row; gap: 10px 26px; margin-top: clamp(24px, 2.6vw, 36px); }
  .fl-now__dist { margin-top: 18px; }
  .fl-now__acts { margin-top: clamp(24px, 2.6vw, 36px); }
}
@media (min-width: 1024px) {
  .fl-card--now { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .fl-now { grid-column: 2 / span 2; padding-top: 0; }
}


.fl-buy { background: var(--black); }
.fl-buy__grid { row-gap: clamp(48px, 6vw, 72px); }
.fl-buy__p { max-width: 46ch; color: var(--fg-2); }
.fl-buy__side { padding-top: 20px; border-top: 1px solid var(--line); }
.fl-buy__k { color: var(--fg-2); }
.fl-buy__sp { margin-top: 14px; max-width: 46ch; color: var(--fg); }
.fl-buy__go { margin-top: 18px; }
@media (min-width: 1024px) {
  .fl-buy__main { --col-lg: 1 / span 7; }
  .fl-buy__side { --col-lg: 9 / span 4; align-self: end; }
  .fl-buy .t-h2 { --fit-w: (100vw - 2 * var(--margin)) * .56; }
}


@media (prefers-reduced-motion: reduce) {
  .fl-f::after, .fl-card .poster__img { transition: none !important; }
}
@media print {
  .fl-bar { display: none !important; }
  .fl-grp[hidden] { display: block !important; }
}
