/* REEFER MADNESS / 001 — editorial announcement. Scoped to this page. */
.rm-page { --rm-red:#ef4b40; --rm-line:rgba(239,235,226,.22); }
.rm-page .site-header { background:linear-gradient(#0a0a0ae8, #0a0a0a00); }
.rm { --rm-gutter:clamp(22px,5vw,88px); color:var(--color-bone); }
.rm-meta { display:flex; justify-content:space-between; gap:24px; font-size:12px; font-weight:600; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
.rm-hero { position:relative; min-height:850px; min-height:100svh; background:#070a0b; display:flex; isolation:isolate; }
.rm-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(0,0,0,.12) 15%,rgba(0,0,0,.05) 40%,rgba(0,0,0,.85) 100%),linear-gradient(90deg,rgba(0,0,0,.25),transparent 70%); }
.rm-hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 46%; z-index:-2; }
.rm-hero__content { width:100%; padding:150px var(--rm-gutter) 38px; display:flex; flex-direction:column; justify-content:space-between; gap:64px; }
.rm-hero__meta { border-top:1px solid #ffffff66; padding-top:16px; }
.rm-hero h1 { font-size:clamp(78px,14.2vw,230px); font-weight:900; letter-spacing:-.05em; line-height:.81; margin:0 0 0 -.035em; max-width:none; text-shadow:0 2px 35px #0003; }
.rm-hero h1 span { display:block; }
.rm-hero__bottom { display:grid; grid-template-columns:1.2fr 1fr auto; gap:30px; align-items:end; }
.rm-hero__bottom p { font-size:clamp(18px,1.7vw,24px); line-height:1.4; }
.rm-hero__bottom strong { font-weight:500; }
.rm-hero__bottom .rm-hero__description { font-size:14px; line-height:1.6; }
.rm-read { display:flex; align-items:center; gap:32px; font-size:12px; letter-spacing:.12em; text-transform:uppercase; padding:12px 0; border-bottom:1px solid #eee9; }
.rm-read span { font-size:26px; }
.rm a:focus-visible { outline:2px solid var(--rm-red); outline-offset:6px; }
#announcement { scroll-margin-top:95px; }
@media(max-width:700px) {
 .rm-hero { min-height:800px; min-height:100svh; }
 .rm-hero__content { padding-top:124px; gap:70px; padding-bottom:28px; }
 .rm-hero__meta { font-size:11px; gap:16px; }
 .rm-hero__meta span:first-child { max-width:23ch; }
 .rm-hero__meta span:last-child { max-width:16ch; text-align:right; }
 .rm-hero h1 { font-size:14.4vw; line-height:.88; }
 .rm-hero__image { object-position:61% center; }
 .rm-hero__bottom { grid-template-columns:1fr auto; gap:22px; }
 .rm-hero__bottom p { grid-column:1/-1; font-size:21px; }
 .rm-hero__bottom .rm-hero__description { grid-column:1; font-size:12px; }
 .rm-read { gap:16px; font-size:11px; }
}
.rm-skip { position:fixed; z-index:1000; left:20px; top:12px; padding:12px 18px; background:var(--color-bone); color:#0a0a0a; transform:translateY(-160%); }
.rm-skip:focus { transform:translateY(0); }
.rm-section { padding:110px var(--rm-gutter); }
.rm-accent { color:var(--rm-red); }
.rm-rule { border-top:1px solid var(--rm-line); padding-top:18px; margin-bottom:64px; }
.rm-editorial { display:grid; grid-template-columns:1fr 1fr; gap:clamp(38px,8vw,140px); align-items:start; }
.rm-heading { font-size:clamp(40px,5.3vw,86px); line-height:1.02; letter-spacing:-.035em; }
.rm-copy { font-size:18px; line-height:1.7; color:#c2c0ba; max-width:650px; }
.rm-copy p+p { margin-top:26px; }
.rm-lead { font-size:clamp(20px,2vw,27px); line-height:1.5; }
.rm-intro .rm-lead { max-width:31ch; margin-top:34px; }
.rm figure { margin:0; }
.rm figcaption { margin-top:15px; font-size:12px; line-height:1.5; font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:#a8a59e; }
.rm-manifesto { min-height:780px; position:relative; isolation:isolate; display:flex; background:#080808; }
.rm-manifesto__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 45%; z-index:-2; }
.rm-manifesto::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#080808f0 5%,#080808a0 43%,#08080805 90%),linear-gradient(0deg,#080808aa,transparent 45%); }
.rm-manifesto__body { display:flex; flex-direction:column; justify-content:space-between; width:100%; padding:44px var(--rm-gutter) 60px; gap:70px; }
.rm-manifesto__lines { max-width:440px; font-size:18px; line-height:1.6; }
.rm-manifesto__lines p+p { margin-top:20px; }
.rm-manifesto h2 { font-size:clamp(48px,8.8vw,142px); letter-spacing:-.035em; line-height:.95; }
.rm-manifesto h2 span { color:var(--color-bone); }
.rm-connection { display:grid; grid-template-columns:1.2fr 1fr; gap:8vw; align-items:center; padding-top:150px; padding-bottom:130px; }
.rm-connection .rm-meta { margin-bottom:40px; }
.rm-connection .rm-heading { font-size:clamp(36px,4.5vw,74px); }
.rm-connection .rm-lead { margin:48px 0 20px; max-width:24ch; }
.rm-connection__text>p:last-child { font-size:17px; line-height:1.7; color:#c2c0ba; }
.rm-connection figure { padding-top:65px; }
.rm-connection img { width:100%; aspect-ratio:3/4; object-fit:cover; }
.rm-perspectives { padding-top:24px; }
.rm-perspectives>.rm-heading { font-size:clamp(54px,7.8vw,128px); }
.rm-outline { color:transparent; -webkit-text-stroke:1px var(--color-bone); }
.rm-diptych { display:grid; grid-template-columns:1.15fr .85fr; gap:7vw; margin-top:65px; }
.rm-diptych img { width:100%; object-fit:cover; }
.rm-diptych__warm img { aspect-ratio:5/4; object-position:55% center; }
.rm-diptych__quiet { padding-top:170px; }
.rm-diptych__quiet img { aspect-ratio:4/5; object-position:53% center; }
.rm-diptych figcaption { display:flex; justify-content:space-between; gap:14px; padding-bottom:16px; border-bottom:1px solid var(--rm-line); }
.rm-diptych p { font-size:17px; line-height:1.65; color:#c2c0ba; max-width:38ch; margin-top:22px; }
.rm-perspectives__copy { margin-top:110px; }
.rm-pull { font-family:var(--font-display); font-size:clamp(32px,3.5vw,55px); line-height:1.14; letter-spacing:-.02em; text-transform:uppercase; max-width:16ch; }
.rm-property { background:#111211; }
.rm-studio { margin-top:65px !important; }
.rm-studio img { width:100%; aspect-ratio:2.2/1; object-fit:cover; object-position:center 40%; }
.rm-disciplines { display:flex; flex-wrap:wrap; column-gap:24px; row-gap:9px; font-family:var(--font-display); font-size:clamp(20px,2.2vw,32px); line-height:1.4; text-transform:uppercase; padding-top:44px; }
.rm-disciplines span:not(:last-child)::after { content:" /"; margin-left:24px; color:#777770; }
.rm-emerging { margin-top:20px; font-size:16px; color:#aaa9a2; }
.rm-team-statement { padding-top:110px; max-width:1000px; }
.rm-team-statement>p:first-child { font-size:clamp(20px,2.5vw,34px); margin-bottom:20px; }
.rm-team-statement h3 { font-size:clamp(45px,7vw,112px); letter-spacing:-.035em; }
.rm-team-statement>p:last-child { font-size:18px; color:#c2c0ba; margin-top:30px; max-width:47ch; }
.rm-assignments { background:var(--color-bone); color:#141412; --rm-line:#14141240; }
.rm-assignments .rm-meta { color:#a92b23; }
.rm-assignments .rm-copy { color:#484741; }
.rm-assignment-intro { display:grid; grid-template-columns:1.05fr 1fr; gap:8vw; }
.rm-assignment-intro h2 { font-size:clamp(60px,9.2vw,148px); letter-spacing:-.045em; line-height:.95; }
.rm-assignment-intro h2 span { color:#be3028; }
.rm-kicker { font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.07em; }
.rm-briefs { margin-top:72px; border-top:2px solid #141412; }
.rm-brief { display:grid; grid-template-columns:.22fr 1fr 1fr; gap:32px; padding:36px 0; align-items:start; border-bottom:1px solid var(--rm-line); }
.rm-brief__number { color:#be3028; font-family:var(--font-display); font-size:clamp(32px,4vw,60px); line-height:1.1; }
.rm-brief h3 { font-size:clamp(34px,4.5vw,68px); line-height:1; letter-spacing:-.025em; }
.rm-brief p { font-size:18px; line-height:1.75; color:#484741; padding-top:3px; }
.rm-process { display:grid; grid-template-columns:1.2fr .8fr; gap:50px 8vw; align-items:start; padding-top:90px; }
.rm-process__writing { grid-column:1; }
.rm-process__writing img { aspect-ratio:1.45; width:100%; object-fit:cover; }
.rm-process__sound { grid-column:2; grid-row:1/3; width:77%; margin-left:auto !important; padding-top:125px; }
.rm-process__sound img { aspect-ratio:2/3; width:100%; object-fit:cover; }
.rm-process figcaption { color:#5a5750; }
.rm-process .rm-copy { grid-column:1; }
.rm-audition { border-top:1px solid var(--rm-line); margin-top:85px; padding-top:50px; }
.rm-audition p { font-size:clamp(20px,2.4vw,34px); margin-bottom:25px; }
.rm-audition h3 { font-size:clamp(44px,7.5vw,120px); line-height:1; letter-spacing:-.035em; }
.rm-audition h3 span { color:#be3028; }
.rm-building .rm-heading { font-size:clamp(36px,4.5vw,72px); }
.rm-voices { margin:70px 0; display:grid; grid-template-columns:1fr 1fr; gap:0 8vw; }
.rm-voices p { border-top:1px solid var(--rm-line); padding:24px 0 40px; font-size:20px; color:#b3b0a9; line-height:1.55; }
.rm-voices span { display:block; font-family:var(--font-display); font-size:clamp(26px,3vw,42px); text-transform:uppercase; color:var(--color-bone); margin-bottom:12px; }
.rm-offset-copy { margin-left:calc(50% + 4vw); }
.rm-truth { background:#141413; border-block:1px solid var(--rm-line); }
.rm-truth h2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(38px,8vw,140px); font-size:clamp(48px,7vw,112px); line-height:.97; letter-spacing:-.035em; margin:55px 0 60px; }
.rm-truth .rm-copy > p:not(.rm-truth__verse) { font-size:inherit; }
.rm-truth__verse { color:var(--color-bone); font-size:23px; line-height:1.7; }
.rm-invitation { border-left:2px solid var(--rm-red); padding-left:24px; margin-top:45px; font-size:20px; line-height:1.7; max-width:32ch; }
.rm-invitation p:last-child { margin-top:20px; color:#b3b0a9; }
.rm-closing { position:relative; isolation:isolate; background:#070a0b; }
.rm-closing__image { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:65% center; z-index:-2; }
.rm-closing::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#080a0ce8,#080a0c88 60%,#080a0c55),linear-gradient(0deg,#080a0cdd,transparent); }
.rm-closing__body { padding:44px var(--rm-gutter) 70px; }
.rm-closing__welcome { font-size:14px; text-transform:uppercase; letter-spacing:.16em; margin-top:110px; margin-bottom:25px; }
.rm-closing h2 { font-size:clamp(66px,12.5vw,200px); letter-spacing:-.04em; line-height:.86; }
.rm-closing__line { margin-top:55px; font-size:clamp(23px,2.5vw,36px); line-height:1.4; }
.rm-closing__line strong { font-weight:500; }
.rm-closing__description { font-size:17px; max-width:47ch; color:#c2c0ba; margin-top:24px; }
.rm-actions { display:flex; flex-wrap:wrap; gap:24px 40px; align-items:center; margin-top:50px; }
.rm-action { display:flex; gap:35px; align-items:center; padding:22px 26px; background:#c8342b; color:#fff; font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; }
.rm-action:hover { background:#a92420; }
.rm-action span,.rm-back span { font-size:24px; }
.rm-back { display:flex; gap:25px; align-items:center; font-size:14px; padding:18px 0; border-bottom:1px solid #aaa; }
.rm-back:hover { color:#fff; }
@media(min-width:1800px) { .rm-section { padding-inline:max(var(--rm-gutter),calc((100vw - 1600px)/2)); } }
@media(max-width:1000px) {
 .rm-section { padding-top:85px; padding-bottom:85px; }
 .rm-editorial,.rm-assignment-intro { gap:45px; }
 .rm-copy { font-size:17px; }
 .rm-connection { gap:35px; }
 .rm-connection .rm-heading { font-size:4.5vw; }
 .rm-manifesto { min-height:720px; }
 .rm-brief { gap:24px; grid-template-columns:.18fr 1fr 1fr; }
 .rm-brief p { font-size:16px; }
 .rm-process { gap:40px; }
}
@media(max-width:700px) {
 .rm-section { padding:70px var(--rm-gutter); }
 .rm-meta { font-size:12px; gap:18px; }
 .rm-meta>span:last-child:not(:first-child) { text-align:right; }
 .rm-rule { margin-bottom:40px; padding-top:16px; }
 .rm-editorial,.rm-assignment-intro { grid-template-columns:1fr; gap:35px; }
 .rm-heading { font-size:clamp(40px,10.5vw,72px); }
 .rm-copy { font-size:17px; line-height:1.7; }
 .rm-intro .rm-lead { margin-top:26px; max-width:none; font-size:22px; }
 .rm-manifesto { min-height:750px; }
 .rm-manifesto__body { padding:30px var(--rm-gutter) 48px; gap:100px; }
 .rm-manifesto__body .rm-meta span:last-child { max-width:12ch; }
 .rm-manifesto__image { object-position:59% center; }
 .rm-manifesto::after { background:linear-gradient(0deg,#080808d9,transparent 62%),linear-gradient(90deg,#080808d9,#08080830); }
 .rm-manifesto__lines { max-width:28ch; font-size:17px; }
 .rm-manifesto h2 { font-size:9.1vw; line-height:1.02; }
 .rm-manifesto h2>span { display:block; }
 .rm-connection { grid-template-columns:1fr; gap:42px; }
 .rm-connection .rm-heading { font-size:clamp(35px,8.8vw,60px); }
 .rm-connection .rm-meta { margin-bottom:28px; }
 .rm-connection .rm-lead { margin-top:28px; }
 .rm-connection figure { padding:0; width:79%; margin-left:auto; }
 .rm-perspectives>.rm-heading { font-size:clamp(44px,10.2vw,72px); }
 .rm-diptych { grid-template-columns:1fr; gap:40px; margin-top:40px; }
 .rm-diptych__warm { width:94%; }
 .rm-diptych__quiet { width:86%; padding-top:0; margin-left:auto !important; }
 .rm-diptych__quiet img { aspect-ratio:4/4.5; }
 .rm-diptych figcaption { font-size:11px; }
 .rm-diptych p { font-size:16px; }
 .rm-perspectives__copy { margin-top:65px; }
 .rm-pull { font-size:34px; max-width:20ch; }
 .rm-studio { margin-top:40px !important; margin-inline:calc(-1 * var(--rm-gutter)) !important; }
 .rm-studio img { aspect-ratio:1.15; }
 .rm-studio figcaption { padding-inline:var(--rm-gutter); }
 .rm-disciplines { font-size:20px; gap:10px 16px; }
 .rm-disciplines span:not(:last-child)::after { margin-left:16px; }
 .rm-team-statement { padding-top:70px; }
 .rm-team-statement h3 { font-size:10.4vw; }
 .rm-assignment-intro h2 { font-size:17vw; }
 .rm-briefs { margin-top:44px; }
 .rm-brief { grid-template-columns:44px 1fr; gap:17px; padding:28px 0; }
 .rm-brief__number { font-size:32px; }
 .rm-brief h3 { font-size:9.8vw; }
 .rm-brief p { grid-column:2; padding:0; font-size:16px; line-height:1.65; }
 .rm-process { grid-template-columns:1fr 1fr; gap:0; padding-top:60px; }
 .rm-process__writing { grid-column:1/-1; width:90%; }
 .rm-process__sound { grid-column:2; grid-row:2; width:94%; padding-top:0; margin-top:-20px !important; }
 .rm-process__sound img { border:7px solid var(--color-bone); }
 .rm-process__sound figcaption { margin-left:7px; }
 .rm-process .rm-copy { grid-column:1/-1; padding-top:40px; }
 .rm-audition { margin-top:50px; padding-top:34px; }
 .rm-audition h3 { font-size:10.8vw; }
 .rm-audition h3 span { display:block; }
 .rm-building .rm-heading { font-size:9.4vw; }
 .rm-voices { margin:45px 0; gap:0 25px; }
 .rm-voices p { font-size:16px; padding:20px 0 30px; }
 .rm-voices span { font-size:23px; line-height:1.2; }
 .rm-offset-copy { margin-left:0; }
 .rm-truth h2 { grid-template-columns:1fr; gap:0; font-size:12.5vw; margin:35px 0 45px; }
 .rm-truth__verse { font-size:21px; }
 .rm-invitation { margin-top:32px; font-size:18px; }
 .rm-closing__body { padding:30px var(--rm-gutter) 50px; }
 .rm-closing .rm-meta span:first-child { max-width:25ch; }
 .rm-closing__welcome { margin-top:100px; }
 .rm-closing h2 { font-size:16vw; }
 .rm-closing__line { margin-top:40px; }
 .rm-actions { gap:15px; }
 .rm-action { width:100%; justify-content:space-between; gap:18px; padding:20px; font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .rm-page *, .rm-page *::before, .rm-page *::after { scroll-behavior:auto !important; transition:none !important; } }
/* Let responsive aspect ratios override intrinsic HTML height attributes. */
.rm figure img { height:auto; }
.rm-page .site-header.is-scrolled { background:rgba(10,10,10,.96); }
@media(max-width:700px) {
 .rm-hero h1,.rm-closing h2 { font-size:22vw; }
 .rm-manifesto h2 { font-size:14vw; }
}
