﻿/* ---------------------------------------------------------------------------
 * LCA! Film Festival 2026 — refinement layer
 *
 * Ported into this repository under LCA2026-SITE-010 (decision D-018) from the
 * Living Experience workspace. Design language adopted by the owner.
 *
 * AUTHORITY
 *   assets/css/tokens.css owns every design value. This file consumes tokens
 *   and defines none. It must never redefine a --color-*, --font-*, --duration-*,
 *   --easing-*, --space-* or --display-* custom property.
 *
 * CASCADE CONTRACT
 *   This layer SUPPLEMENTS production CSS; it never replaces it. It is linked
 *   AFTER the page's own stylesheet so it wins only where specificity is equal
 *   or higher. `.btn` itself stays owned by assets/css/components.css.
 *
 * Namespace is `.r06-`. Every rule below is as authored in the source layer
 * except this comment block.
 * ------------------------------------------------------------------------ */

.r06-news-masthead { background:var(--color-coral); color:var(--color-ink); padding-block:3rem 1.5rem; --r06-texture-opacity:.12; }
.r06-news-masthead::before { mask-image:linear-gradient(95deg,transparent,#000); background-size:190px auto; }
.r06-news-heading { display:flex; gap:2rem; align-items:center; justify-content:space-between; }
.r06-news-masthead .r06-lead { margin-top:1.2rem; }
.r06-news-rule { display:flex; gap:2rem; border-top:1px solid #10101055; margin-top:2rem; padding-top:1rem; font:700 .66rem/1.5 var(--font-body); letter-spacing:.15em; text-transform:uppercase; }
.r06-news-feature { background:var(--color-paper-warm); }
.r06-story-slide { display:grid; grid-template-columns:1.15fr .85fr; gap:0; background:var(--color-yellow); }
.r06-story-image { background:var(--color-ink); color:var(--color-paper); }
.r06-story-image img { width:100%; height:26rem; object-fit:cover; }
.r06-story-image figcaption { padding:.7rem 1rem; font-size:.68rem; min-height:3.5rem; }
.r06-story-slide:nth-child(2) .r06-story-image img { object-fit:contain; background:var(--color-ink); }
.r06-story-copy { padding:2.5rem; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.r06-story-copy h2 { font-size:var(--display-md); max-width:24ch; }
.r06-story-copy p { margin:1.5rem 0; font-size:1rem; }
.r06-story-slide:nth-child(2){background:var(--color-aqua)}
.r06-story-slide:nth-child(3){background:var(--color-coral)}
.r06-story-controls { margin-top:1.2rem; }
.r06-journal-heading { display:flex; gap:2rem; align-items:end; justify-content:space-between; margin-bottom:3rem; }
.r06-journal-heading>p { max-width:42ch; font-size:.9rem; }
.r06-news-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.r06-news-index-item:nth-child(2) { padding-top:4rem; }
.r06-news-index-item:nth-child(3) { padding-top:8rem; }
.r06-news-index-image { display:block; overflow:hidden; }
.r06-news-index-image img { aspect-ratio:4/3; object-fit:cover; transition:transform 600ms var(--easing-emphasis); }
.r06-news-index-image:hover img{transform:scale(1.04)}
.r06-news-index-item:nth-child(2) img{object-fit:contain;background:var(--color-navy)}
.r06-news-index-item .r06-eyebrow{margin:1.4rem 0 .8rem;color:var(--color-yellow)}
.r06-news-index-item h3{font-size:var(--display-md);line-height:1.4}
.r06-news-index-item h3 a{text-decoration:none}
.r06-news-index-item h3 a:hover{text-decoration:underline}
.r06-news-index-item p { margin-top:1.2rem; font-size:.9rem; }
.r06-news-index-item .text-link { color:var(--color-yellow); margin-top:1rem; }
@media(max-width:950px){.r06-story-copy{padding:1.8rem}.r06-story-copy h2{font-size:var(--display-md)}.r06-story-image img{height:27rem}.r06-news-index{gap:1.25rem}}
@media(max-width:700px){.r06-story-slide{grid-template-columns:1fr}.r06-story-image img{height:17rem}.r06-story-image figcaption{min-height:0}.r06-story-copy{min-height:21rem;padding:1.6rem}.r06-news-index{grid-template-columns:1fr}.r06-news-index-item:nth-child(n){padding-top:0;margin-bottom:2rem}.r06-news-index-item{display:grid;grid-template-columns:.65fr 1fr;gap:1.2rem}.r06-news-index-item .r06-eyebrow{margin-top:0}.r06-journal-heading{display:block}.r06-journal-heading>p{margin-top:1rem}.r06-news-heading .r06-stamp{display:none}.r06-story-controls{gap:.5rem}.r06-story-controls .r06-progress{order:5;width:100%}.r06-story-count{margin-left:auto}}
@media(max-width:400px){.r06-news-index-item{grid-template-columns:1fr}.r06-news-index-image img{max-height:220px}}
