/*
Theme Name: The Final Revision
Theme URI: https://thefinalrevision.com
Author: The Final Revision
Description: An editorial satire platform for the beautifully endless creative process.
Version: 0.2.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: the-final-revision
*/
:root{--ink:#1e1e1e;--red:#f14834;--paper:#f5f0e7;--muted:#aaa;--line:#494949}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}button,a{transition:color .2s,background .2s}button{cursor:pointer}header.site-header{display:flex;align-items:center;justify-content:space-between;padding:22px clamp(22px,5vw,88px);border-bottom:1px solid var(--line)}.wordmark{font-weight:800;letter-spacing:-.06em;font-size:22px;text-transform:uppercase}.wordmark span{color:var(--red)}nav{display:flex;gap:30px;align-items:center;font-size:13px;text-transform:uppercase;letter-spacing:.08em}nav a:last-child{color:var(--red)}.hero{min-height:77vh;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,88px);border-bottom:1px solid var(--line)}.eyebrow,.meta{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#c4c4c4}.hero h1{font-size:clamp(76px,13.6vw,260px);font-weight:800;line-height:.79;letter-spacing:-.09em;text-transform:uppercase;margin:55px 0 36px;max-width:1400px}.hero h1 em{font-style:normal;color:var(--red)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px}.hero-bottom p{font-size:clamp(18px,2.2vw,32px);max-width:600px;line-height:1.2;letter-spacing:-.04em;margin:0}.pill-link{display:inline-block;border:1px solid #fff;padding:16px 22px;text-transform:uppercase;letter-spacing:.1em;font-size:12px;white-space:nowrap}.pill-link:hover{background:var(--red);color:var(--ink);border-color:var(--red)}.section{padding:90px clamp(22px,5vw,88px)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:30px}.section-head h2{font-size:clamp(34px,5vw,70px);line-height:1;letter-spacing:-.065em;text-transform:uppercase;margin:0}.section-head small{color:var(--muted)}.episode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.episode-card{border:1px solid var(--line);display:flex;flex-direction:column;min-height:360px;overflow:hidden}.episode-art{min-height:220px;background:#323232;display:flex;align-items:center;justify-content:center;position:relative}.episode-art img{width:100%;height:240px;object-fit:cover}.episode-art .big-number{font-size:clamp(110px,12vw,210px);font-weight:800;letter-spacing:-.1em;color:var(--red)}.episode-info{padding:24px;flex:1}.episode-info h3{font-size:clamp(22px,2.5vw,34px);line-height:1.05;letter-spacing:-.045em;margin:12px 0}.episode-info p{color:#bfbfbf;font-size:14px;line-height:1.5}.manifesto{background:var(--red);color:var(--ink);padding:100px clamp(22px,5vw,88px)}.manifesto h2{font-size:clamp(56px,10vw,150px);line-height:.9;letter-spacing:-.085em;text-transform:uppercase;margin:0;max-width:1200px}.manifesto p{font-size:20px;max-width:550px;margin-top:40px}.manifesto .pill-link{border-color:var(--ink)}footer{display:flex;justify-content:space-between;gap:20px;padding:35px clamp(22px,5vw,88px);font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#aaa}.page-wrap{padding:80px clamp(22px,5vw,88px);max-width:1350px;margin:auto;min-height:65vh}.page-wrap h1{font-size:clamp(56px,9vw,140px);line-height:.9;letter-spacing:-.07em;text-transform:uppercase}.page-wrap .content{max-width:760px;font-size:18px;line-height:1.65}.content img{max-width:100%;height:auto}.episode-stage{aspect-ratio:16/9;background:#333;display:flex;align-items:center;justify-content:center;margin:30px 0;position:relative;overflow:hidden}.episode-stage img{width:100%;height:100%;object-fit:contain}.episode-stage .stage-placeholder{font-size:clamp(30px,6vw,90px);text-align:center;font-weight:900;text-transform:uppercase;letter-spacing:-.06em;padding:20px}.episode-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.episode-controls button{background:var(--red);border:0;padding:14px 20px;font-weight:800}.episode-controls input{flex:1;min-width:150px;accent-color:var(--red)}.transcript{margin-top:45px;border-top:1px solid var(--line);padding-top:30px}.screen-reader-text{position:absolute;left:-9999px}@media(max-width:800px){nav{gap:14px;font-size:11px}.hero{min-height:65vh}.hero-bottom{align-items:start;flex-direction:column}.episode-grid{grid-template-columns:1fr}.episode-card{min-height:0}footer{flex-direction:column}.section{padding-top:60px;padding-bottom:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* v0.2 — theme, identity, type and motion */
:root{color-scheme:dark;--surface:#1e1e1e;--foreground:#fff;--subtle:#bfbfbf;--card-surface:#323232;--line:#494949;--red:#f14834;--ink:#1e1e1e}
:root[data-theme="light"]{color-scheme:light;--surface:#f5f0e7;--foreground:#1e1e1e;--subtle:#535353;--card-surface:#e9e1d6;--line:#c8c0b6;--muted:#666;--ink:#1e1e1e}
body{background:var(--surface);color:var(--foreground);transition:background-color .4s ease,color .4s ease}
h1,h2,h3,h4,h5,h6,.big-number,.stage-placeholder{font-family:'Kanit',Impact,sans-serif;font-weight:800!important}
.hero h1{letter-spacing:-.065em;line-height:.84}.section-head h2,.manifesto h2{letter-spacing:-.05em}
.episode-art .big-number{letter-spacing:-.065em}.episode-info h3{letter-spacing:-.025em}
.episode-info p,.meta,.eyebrow,.hero .eyebrow{color:var(--subtle)}.episode-art{background:var(--card-surface)}.episode-stage{background:var(--card-surface)}
.pill-link{border-color:var(--foreground)}.pill-link:hover{color:#1e1e1e}.episode-controls button{color:#1e1e1e}
.site-header{gap:clamp(12px,2vw,28px);position:relative;z-index:10}.brand{display:flex;align-items:center;min-width:0;flex:0 1 380px}.brand-wide{display:block;width:100%}.brand-image{display:block;width:100%;height:auto;max-height:48px;object-fit:contain;object-position:left center}.site-header nav{margin-left:auto}.theme-toggle{display:flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--line);color:var(--foreground);padding:9px 12px;font-family:Inter,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.theme-toggle:hover{border-color:var(--red);color:var(--red)}.theme-icon{font-size:19px;line-height:1}
.episode-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s}.episode-card:hover{transform:translateY(-5px);border-color:var(--red)}.episode-art img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.episode-card:hover .episode-art img{transform:scale(1.045)}
.hero h1 em{display:inline-block;transform-origin:left center}.hero h1 em:hover{animation:tfr-wobble .48s ease both}@keyframes tfr-wobble{0%,100%{transform:rotate(0)}35%{transform:rotate(-1.3deg)}70%{transform:rotate(.8deg)}}
.js-motion .reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.js-motion .reveal.is-visible{opacity:1;transform:none}.js-motion .reveal[data-delay="1"]{transition-delay:.1s}.js-motion .reveal[data-delay="2"]{transition-delay:.18s}
:root[data-theme="light"] .manifesto{background:var(--red);color:#1e1e1e}:root[data-theme="light"] .manifesto .eyebrow{color:#1e1e1e}:root[data-theme="light"] .episode-info p{color:var(--subtle)}:root[data-theme="light"] footer{color:var(--subtle)}
@media(max-width:800px){.site-header{flex-wrap:wrap}.brand{flex-basis:240px}.site-header nav{order:3;width:100%;justify-content:space-between;margin:5px 0 0}.theme-toggle{margin-left:auto}.hero h1{font-size:clamp(70px,14vw,130px)}}
@media(max-width:520px){.brand{flex-basis:68px}.brand-image{max-height:48px}.theme-toggle-label{display:none}.theme-toggle{padding:9px}.site-header{padding:18px 22px}}
@media(prefers-reduced-motion:reduce){.js-motion .reveal{opacity:1!important;transform:none!important;transition:none!important}.hero h1 em:hover{animation:none!important}.episode-card:hover{transform:none}.episode-card:hover .episode-art img{transform:none}}

/* v0.3 — editorial breathing room, stable mode switch, pilot scene treatment */
.hero h1{letter-spacing:-.028em;line-height:.91}
.hero h1 em{letter-spacing:-.025em}
.theme-toggle{width:116px;min-width:116px;justify-content:center}
.theme-icon{display:inline-flex;justify-content:center;width:22px;flex-shrink:0}
@media(max-width:520px){.theme-toggle{width:44px;min-width:44px}}
.pilot-intro{border-top:1px solid var(--line);padding-top:28px;margin-top:36px}
.pilot-scene{padding:clamp(24px,5vw,64px);border:1px solid var(--line);margin:24px 0;background:var(--card-surface);position:relative;overflow:hidden}
.pilot-scene::before{content:attr(data-scene);position:absolute;right:24px;top:14px;color:var(--red);font:700 12px Inter,sans-serif;letter-spacing:.18em}
.pilot-scene h2{font-size:clamp(38px,7vw,86px);line-height:.95;letter-spacing:-.025em;text-transform:uppercase;margin:22px 0}
.pilot-scene p{font-size:clamp(16px,2vw,23px);line-height:1.5;max-width:740px}
.pilot-scene .speaker{font:700 12px Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin:22px 0 4px}
.pilot-scene .dialogue{font-size:clamp(20px,2.7vw,36px);line-height:1.22;margin:0 0 24px}
.pilot-scene .direction{font-style:italic;color:var(--subtle)}
.pilot-scene .scene-note{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--subtle)}
.pilot-end{font:800 clamp(44px,9vw,130px)/.95 Kanit,sans-serif;letter-spacing:-.03em;text-transform:uppercase;color:var(--red)}

.page-wrap .pilot-content{max-width:100%}
