.kicker, .cover-head, .cover-foot {
  font: 600 .71rem/1.35 Inter, sans-serif;
  letter-spacing: .105em;
  text-transform: uppercase;
}
.kicker { color: var(--blue); }
.kicker i { display: inline-block; width: .55rem; height: .55rem; margin-right: .5rem; background: currentColor; }
.mast { display: flex; justify-content: space-between; align-items: end; gap: 2rem; padding: clamp(3rem,6vw,6rem) 0 clamp(2.5rem,4vw,4rem); }
.mast h1 { font-size: clamp(3.4rem,7.6vw,7.9rem); margin-top: 1rem; }
.mast em { font-style: normal; color: var(--blue); }
.mast-note { max-width: 17rem; margin-bottom: .2rem; font-size: clamp(1rem,1.35vw,1.3rem); line-height: 1.42; letter-spacing: -.025em; }
.ruled, .rowhead, .product-info, .cover-head, .cover-foot { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.ruled { border-top: 1px solid var(--ink); padding: 1.1rem 0; }
.ruled h2 { font-size: 1.1rem; letter-spacing: -.04em; }
.product-grid, .video-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(.8rem,1.65vw,1.6rem); }
.cover { display: grid; grid-template-rows: auto 1fr auto; aspect-ratio: 1.46; overflow: hidden; padding: 5%; position: relative; isolation: isolate; }
.cover.motion { background: #2549f6; color: #fff; }
.cover.colour { background: #ffc69f; color: #492638; }
.cover.sound { background: #283c37; color: #ebff96; }
.cover-head,.cover-foot { font-size: clamp(.59rem,.7vw,.78rem); font-weight: 700; line-height: 1.1; z-index: 1; }
.cover .mark { position: absolute; width: 93%; height: 88%; object-fit: contain; top: 6%; left: 3.5%; }
.cover-foot { grid-row: 3; }
.cover-foot i { width: 21%; height: .48rem; background: repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 6px); }
.product { min-width: 0; }
.product-info { padding-top: .85rem; }
.product-info h3 { font-size: clamp(1.6rem,2.65vw,2.8rem); margin-top: .25rem; letter-spacing: -.065em; }
.availability { color: var(--mute); font-size: .84rem; }
.product:first-child .availability { color: var(--blue); font-weight: 700; }
.arrow { display: grid; place-items: center; border: 1px solid var(--line); width: 2.3rem; height: 2.3rem; border-radius: 50%; }
.product:hover .arrow { background: var(--blue); border-color: var(--blue); color: white; }
.videos, .credits { margin-block: clamp(4rem,7.5vw,7.5rem); }
.rowhead { align-items: end; margin-bottom: 1.5rem; }
.rowhead h2,.credits h2 { margin-top: .65rem; font-size: clamp(2.5rem,4.5vw,4.8rem); }
.textlink { display: inline-flex; align-items: center; min-height: 44px; gap: .65rem; color: var(--blue); font-weight: 600; font-size: .95rem; }
.film-thumb { position: relative; overflow: hidden; background: var(--ink); color: white; aspect-ratio: 16/9; }
.film-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; }
.film-thumb span { position: absolute; right: .6rem; bottom: .6rem; padding: .12rem .4rem; background: #151515ed; border-radius: .2rem; font-size: .73rem; }
.film-card h3 { font-size: clamp(1.1rem,1.6vw,1.5rem); letter-spacing: -.04em; line-height: 1.2; margin-top: .8rem; max-width: 27ch; }
.credits { border-top: 1px solid var(--line); padding-top: 2.2rem; }
.credits ul { padding: 0; margin: 2.3rem 0 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit,minmax(8rem,1fr)); gap: 1rem; }
.credits li { border-top: 1px solid var(--line); padding-top: 1rem; font-size: clamp(1.15rem,2.2vw,2.3rem); font-weight: 700; letter-spacing: -.065em; }
.crumb { padding-top: 2rem; }
.crumb a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9rem; color: var(--blue); }
.coming { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: clamp(2rem,6vw,6rem); margin: clamp(2rem,4vw,4rem) 0 clamp(4rem,8vw,8rem); }
.coming h1 { margin: .8rem 0 1.2rem; }
.coming .description { margin: 1.2rem 0; font-size: 1.15rem; }
.status { display: inline-block; padding: .32rem .8rem; color: #373934; background: #eaeae3; border-radius: 1rem; font-size: .85rem; }
@media (prefers-reduced-motion:no-preference) {
  .product .mark,.film-card img { transition: transform .28s ease-out; }
  @media (hover:hover) { .product:hover .mark,.film-card:hover img { transform: scale(1.035); } }
  .product:active .mark { transform: scale(.98); }
}
@media (max-width:760px) {
  .mast { display: block; }
  .mast-note { margin-top: 1rem; max-width: 30rem; }
  .coming { grid-template-columns: 1fr; }
}
@media (max-width:600px) {
  .product-grid,.video-grid { grid-template-columns: 1fr; gap: 2rem; }
  .cover { aspect-ratio: 1.65; }
  .credits ul { grid-template-columns: repeat(2,1fr); }
  .rowhead { align-items: end; gap: .5rem; }
  .rowhead .textlink { font-size: .83rem; }
}

.credits li { display: grid; place-items: center; padding-block: 1.4rem; }
.credits li img { display: block; width: min(100%, 8rem); height: 2.1rem; object-fit: contain; filter: brightness(0); }
