.film-case .project-hero,.concept-case .project-hero { display: block; min-height: 0; padding-top: 126px; }
.film-case .project-hero::after,.concept-case .project-hero::after { display: none; }
.film-case .project-hero-content,.concept-case .project-hero-content { padding-block: 26px 46px; }
.film-case .project-hero-copy,.concept-case .project-hero-copy { max-width: none; }
.film-case .project-hero-copy h1 { max-width: 11ch; font-size: clamp(72px,10.5vw,158px); }
.film-case .project-hero-top { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,.7fr); gap: 48px; align-items: end; }
.film-case .project-hero-top .project-deck { font-size: clamp(21px,2.2vw,31px); max-width: 24ch; }
.film-case .film-name { margin-bottom: 28px; color: var(--muted); font-size: 17px; letter-spacing: .08em; }
.film-case .project-hero-art,.concept-case .project-hero-art { position: relative; z-index: auto; inset: auto; margin-top: 36px; }
.film-case .project-hero-art img,.concept-case .project-hero-art img { width: 100%; height: auto; object-fit: contain; transform: none; }
.film-case .project-hero-art { width: 100%; }
.film-case .project-hero-art img { aspect-ratio: 16/9; }
.film-case .film-capture-label,.concept-case .concept-capture-label { color: var(--muted); font-size: 12px; line-height: 1.5; margin-top: 13px; }
.film-case .project-main-film { max-width: 1160px; }
.film-case .project-video-buttons,.concept-case .project-video-buttons { grid-template-columns: repeat(2,minmax(0,1fr)); }
.concept-case .project-video-controls { display: none; }
.film-story { padding-block: 76px; border-top: 1px solid #777e3a; }
.film-story-heading { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); gap: 64px; align-items: start; margin-bottom: 40px; }
.film-story-heading h2 { max-width: 12ch; font-size: clamp(48px,6.2vw,94px); }
.film-story-heading p { color: var(--muted); font-size: clamp(17px,1.4vw,21px); line-height: 1.55; max-width: 35ch; padding-top: 7px; }
.film-stills { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); align-items: start; gap: 30px; }
.film-stills figure:last-child { padding-top: 100px; }
.film-stills img { width: 100%; height: auto; }
.film-stills figcaption { margin-top: 15px; color: var(--muted); font-size: 15px; line-height: 1.5; max-width: 45ch; }
.film-rule { padding-block: 70px; border-top: 1px solid #777e3a; }
.film-rule .project-test-note { border-top: 0; margin: 0; padding: 0; max-width: 24ch; font-size: clamp(36px,5vw,72px); }
.film-rule-copy { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 50px; margin-top: 38px; }
.film-rule-copy p { max-width: 45ch; font-size: 17px; line-height: 1.6; color: var(--muted); }
.film-case .project-end,.concept-case .project-end { border-top: 1px solid #777e3a; padding-block: 50px 70px; margin-top: 0; }
.film-case .project-notes h2,.concept-case .project-notes h2 { font-size: 20px; margin-bottom: 14px; }
.concept-case .project-hero-copy h1 { max-width: none; font-size: clamp(76px,11.2vw,168px); }
.concept-case .concept-opener { display: flex; gap: 48px; align-items: end; justify-content: space-between; }
.concept-case .concept-opener .project-deck { max-width: 28ch; font-size: clamp(21px,2.1vw,29px); }
.concept-case .concept-opener .project-scroll-link { flex: none; margin-bottom: 5px; }
.concept-case .project-hero-art { border: 1px solid #37392c; }
.concept-section { padding-block: 76px; border-top: 1px solid #777e3a; }
.concept-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.8fr); gap: 56px; align-items: end; margin-bottom: 40px; }
.concept-section-heading h2 { font-size: clamp(46px,5.8vw,88px); max-width: 13ch; }
.concept-section-heading p { max-width: 43ch; color: var(--muted); font-size: 18px; line-height: 1.55; }
.concept-screen { border: 1px solid var(--line); }
.concept-screen img { width: 100%; height: auto; }
.concept-screen-caption { margin-top: 14px; font-size: 13px; line-height: 1.5; color: var(--muted); }
.concept-intents { --intent-gap: clamp(22px,5vw,72px); display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr); gap: var(--intent-gap); margin-top: 48px; padding: 56px 0; border-block: 1px solid var(--line); list-style: none; color: var(--accent); font: 400 clamp(36px,6.3vw,90px)/1 var(--display); text-transform: uppercase; }
.concept-intents li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 16px; line-height: 1.1; }
.concept-intents li + li::before { content: "×"; position: absolute; left: calc(var(--intent-gap) / -2); top: .08em; transform: translateX(-50%); font: 700 .8em/1 Geist,system-ui,sans-serif; }
.concept-intents span { font: 400 clamp(15px,1.5vw,21px)/1.3 var(--display); color: var(--muted); }
.concept-brief-layout { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: 58px; align-items: start; }
.concept-brief-copy h2 { font-size: clamp(46px,5.6vw,84px); margin-bottom: 28px; }
.concept-brief-copy p { font-size: 18px; line-height: 1.6; color: var(--muted); max-width: 34ch; }
.concept-case .concept-link { display: inline-flex; color: var(--accent); border-bottom: 1px solid currentColor; padding-bottom: 8px; margin-top: 30px; font-size: 15px; gap: 22px; }
.concept-disclosure { padding-block: 52px 70px; }
.concept-disclosure .project-test-note { margin: 0; padding: 0; border-top: 0; font-size: clamp(28px,3.4vw,49px); max-width: 31ch; }
.concept-disclosure p:last-child { color: var(--muted); font-size: 16px; line-height: 1.6; max-width: 70ch; margin-top: 26px; }
@media(max-width:900px) {
  .film-case .project-hero-top { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .film-case .project-hero-top .project-deck { max-width: 35ch; }
  .film-case .project-hero-copy h1 { max-width: 14ch; }
  .film-story-heading,.concept-section-heading { gap: 36px; }
  .concept-brief-layout { gap: 34px; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
}
@media(max-width:620px) {
  .film-case .project-hero,.concept-case .project-hero { padding-top: 100px; }
  .film-case .project-hero-content,.concept-case .project-hero-content { padding-block: 20px 36px; }
  .film-case .project-hero-copy h1 { font-size: clamp(62px,16.6vw,100px); max-width: 10ch; }
  .film-case .film-name { font-size: 14px; margin-bottom: 22px; }
  .film-case .project-hero-top .project-deck { font-size: 21px; }
  .film-case .project-hero-art,.concept-case .project-hero-art { margin-top: 28px; }
  .film-story,.film-rule,.concept-section { padding-block: 42px; }
  .film-story-heading,.concept-section-heading,.concept-brief-layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .film-story-heading { margin-bottom: 30px; }
  .film-story-heading h2,.concept-section-heading h2,.concept-brief-copy h2 { font-size: 46px; }
  .film-story-heading p,.concept-section-heading p,.concept-brief-copy p { font-size: 16px; }
  .film-stills { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .film-stills figure:last-child { padding-top: 0; }
  .film-stills figcaption { font-size: 14px; }
  .film-rule .project-test-note { font-size: 35px; }
  .film-rule-copy { grid-template-columns: minmax(0,1fr); gap: 20px; margin-top: 28px; }
  .film-rule-copy p { font-size: 16px; }
  .film-case .project-end,.concept-case .project-end { padding-block: 36px 48px; }
  .concept-case .project-hero-copy h1 { font-size: clamp(61px,16vw,99px); }
  .concept-case .concept-opener { display: block; }
  .concept-case .concept-opener .project-deck { font-size: 21px; max-width: 27ch; }
  .concept-case .concept-opener .project-scroll-link { margin-top: 24px; }
  .concept-section-heading { margin-bottom: 28px; }
  .concept-intents { font-size: clamp(19px,6.1vw,36px); margin-top: 36px; padding-block: 36px; }
  .concept-intents li { gap: 14px; }
  .concept-intents span { font-size: clamp(11px,3vw,17px); }
  .concept-brief-copy h2 { margin-bottom: 22px; }
  .concept-disclosure { padding-block: 12px 42px; }
  .concept-disclosure .project-test-note { font-size: 28px; }
  .concept-disclosure p:last-child { font-size: 15px; }
}
