﻿/* ---------------------------------------------------------------------------
 * 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-partners-cover { padding-block:3rem 4rem; overflow:hidden; }
.r06-partners-opening { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }
.r06-partners-opening h1 { max-width:19ch; }
.r06-partners-opening .r06-lead { margin:1.75rem 0 2rem; }
.r06-partner-constellation { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; padding:1rem; min-height:26rem; }
.r06-partner-constellation::before { content:''; position:absolute; border:1px solid var(--color-aqua); border-radius:50%; inset:1.5rem; z-index:-1; }
.r06-partner-centre { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:2rem; background:var(--color-yellow); color:var(--color-ink); grid-row:1/3; clip-path:polygon(0 0,90% 0,100% 10%,100% 100%,0 100%); }
.r06-partner-centre>span{font-size:1rem}.r06-partner-centre strong{font:700 clamp(1.3rem,2vw,2rem)/1.4 var(--font-body);letter-spacing:-.02em}
.r06-partner-mark { background:var(--color-paper); padding:1.2rem; display:grid; place-items:center; transform:rotate(3deg); min-height:6rem; }
.r06-partner-mark:nth-of-type(2){transform:rotate(-3deg)}
.r06-partner-mark img { width:100%; object-fit:contain; max-height:6rem; }
.r06-partner-mark:last-child{grid-column:1/3;max-width:70%;justify-self:end;transform:rotate(-2deg)}
.r06-partner-spread { display:grid; grid-template-columns:.3fr 1.1fr 1fr; gap:2rem; align-items:start; }
.r06-partner-spread>.r06-eyebrow { writing-mode:vertical-rl; transform:rotate(180deg); letter-spacing:.2em; }
.r06-partner-statement p{margin-top:1.4rem;max-width:48ch}.r06-partner-statement .btn{margin-top:2rem}
.r06-partner-photo{padding-top:6rem}.r06-partner-photo img{aspect-ratio:4/5;object-position:55% center}
.r06-partner-pathways { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-block:2rem; }
.r06-pathway { text-decoration:none; padding:1.5rem 1.5rem 2rem; border-top:2px solid currentColor; border-right:1px solid #10101033; min-height:19rem; position:relative; transition:background var(--duration-hover); }
.r06-pathway:hover{background:var(--color-paper)}
.r06-pathway h3{font-size:var(--display-md);margin:2.5rem 0 1rem}.r06-pathway p{font-size:.84rem;max-width:25ch}.r06-pathway>span:last-child{font-size:1.8rem;position:absolute;right:1.5rem;bottom:1rem}.r06-pathway-index{font-size:.72rem;font-weight:700}
.r06-pathway:nth-child(2){margin-top:2rem}.r06-pathway:nth-child(3){margin-top:4rem}.r06-pathway:nth-child(4){margin-top:6rem}
@media(max-width:900px){.r06-partners-opening{gap:2rem}.r06-partner-spread{grid-template-columns:1fr 1fr}.r06-partner-spread>.r06-eyebrow{writing-mode:horizontal-tb;transform:none;grid-column:1/-1}.r06-partner-pathways{grid-template-columns:1fr 1fr}.r06-pathway:nth-child(n){margin-top:0;min-height:17rem}}
@media(max-width:650px){.r06-partners-opening{grid-template-columns:1fr}.r06-partner-constellation{min-height:22rem;max-width:480px}.r06-partner-spread{grid-template-columns:1fr}.r06-partner-photo{padding-top:1rem}.r06-partner-photo img{aspect-ratio:3/2}.r06-pathway{padding:1rem}.r06-pathway h3{font-size:var(--display-md);margin-top:1.5rem}.r06-pathway p{font-size:.8rem}.r06-partners-cover{padding-top:2.5rem}}
.r06-pathway{min-width:0;overflow-wrap:anywhere}
@media(max-width:900px){.r06-partner-pathways{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.r06-partner-pathways{grid-template-columns:minmax(0,1fr)}.r06-pathway:nth-child(n){min-height:13rem;padding:1.5rem 1rem}.r06-pathway h3{max-width:26ch;margin-top:1.5rem}.r06-pathway p{max-width:38ch}}
