/* Kinetix.Film — Journal / article template */
:root{
--bg:#070708;--ink:#ECE8E0;--muted:#9b958a;--soft:#7c776d;--dim:#615d55;
--gold:#C2A36B;--gold2:#E8D2A0;--line:rgba(255,255,255,.08);--line2:rgba(255,255,255,.16);
--title:"Cinzel",Georgia,serif;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
--mono:"Courier Prime","Courier New",monospace;
--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter",system-ui,sans-serif;--maxw:760px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);line-height:1.72;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
::selection{background:var(--gold);color:#0a0804}
.grain{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.04;mix-blend-mode:overlay}
.vig{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(125% 80% at 50% 0%,transparent 46%,rgba(0,0,0,.55) 100%)}
.glow{position:fixed;top:-12%;left:50%;transform:translateX(-50%);width:1000px;height:620px;max-width:120vw;background:radial-gradient(circle,rgba(194,163,107,.1),transparent 64%);pointer-events:none;z-index:0}
nav,main,footer{position:relative;z-index:2}

/* NAV */
nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:rgba(7,7,8,.72);-webkit-backdrop-filter:saturate(150%) blur(18px);backdrop-filter:saturate(150%) blur(18px);border-bottom:1px solid var(--line)}
.brand{font-family:var(--title);font-weight:700;font-size:17px;letter-spacing:.18em;color:var(--ink)}
.brand .dot{color:var(--gold)}
.nav-r{display:flex;align-items:center;gap:24px}
.nav-r a{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);transition:.25s}
.nav-r a:hover{color:var(--gold2)}
.nav-r .btn{font-weight:700;color:#181206;background:linear-gradient(180deg,var(--gold2),var(--gold));padding:10px 18px;border-radius:2px}
.nav-r .btn:hover{color:#181206;filter:brightness(1.07)}
@media(max-width:620px){.nav-r .hidem{display:none}nav{padding:14px 20px}.brand{font-size:15px;letter-spacing:.1em}}

/* ARTICLE */
main{max-width:var(--maxw);margin:0 auto;padding:60px 28px 40px}
.crumbs{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:26px}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--gold2)}
.crumbs span{color:var(--dim);margin:0 7px}
.kicker{font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:18px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.kicker .meta{color:var(--soft);font-weight:400;letter-spacing:.12em}
h1{font-family:var(--serif);font-weight:500;font-size:clamp(36px,6vw,60px);line-height:1.06;letter-spacing:-.01em;margin:0 0 22px}
.dek{font-family:var(--serif);font-size:clamp(20px,2.4vw,25px);font-style:italic;color:#cfcabf;line-height:1.45;margin:0 0 30px}
.byline{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 42px}
.byline b{color:var(--gold2);font-weight:400}
article p{font-size:19px;color:#d7d2c7;margin:0 0 22px}
article h2{font-family:var(--serif);font-weight:500;font-size:clamp(27px,3.4vw,36px);line-height:1.12;letter-spacing:-.01em;margin:46px 0 16px;color:var(--ink)}
article h3{font-family:var(--serif);font-style:italic;font-weight:500;font-size:23px;margin:34px 0 10px;color:var(--gold2)}
article a{color:var(--gold2);border-bottom:1px solid rgba(232,210,160,.4);transition:.2s}
article a:hover{border-color:var(--gold2)}
article strong{color:var(--ink);font-weight:600}
article em{font-style:italic}
article ul,article ol{margin:0 0 24px;padding-left:4px;list-style:none}
article ul li,article ol li{position:relative;padding-left:28px;margin-bottom:12px;font-size:18px;color:#d2cdc2;line-height:1.6}
article ul li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold))}
article ol{counter-reset:s}
article ol li{counter-increment:s}
article ol li::before{content:counter(s);position:absolute;left:0;top:1px;font-family:var(--mono);font-size:13px;color:var(--gold)}
blockquote{margin:34px 0;padding:6px 0 6px 28px;border-left:2px solid var(--gold);font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.4;color:var(--gold2)}
.pull{font-family:var(--serif);font-style:italic;font-size:26px;line-height:1.4;color:var(--gold2);text-align:center;margin:44px auto;max-width:24ch}
hr{border:0;border-top:1px solid var(--line);margin:46px 0}
.tldr{border:1px solid var(--line2);border-radius:3px;padding:26px 30px;margin:0 0 44px;background:linear-gradient(170deg,rgba(194,163,107,.05),transparent)}
.tldr .t{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.tldr p{font-size:17px;color:#cfcabf;margin:0}

/* CTA */
.cta{border:1px solid rgba(194,163,107,.32);border-radius:3px;padding:40px 36px;margin:52px 0;text-align:center;background:linear-gradient(170deg,rgba(194,163,107,.07),transparent)}
.cta h3{font-family:var(--serif);font-style:normal;font-weight:500;font-size:28px;color:var(--ink);margin:0 0 12px}
.cta p{font-size:17px;color:var(--muted);margin:0 0 22px;max-width:52ch;margin-left:auto;margin-right:auto}
.cta .btn{display:inline-block;font-family:var(--mono);font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:14px 28px;border-radius:2px;background:linear-gradient(180deg,var(--gold2),var(--gold));color:#181206;box-shadow:0 16px 44px -18px rgba(194,163,107,.6)}
.cta .btn:hover{filter:brightness(1.07)}

/* RELATED */
.related{margin-top:54px;border-top:1px solid var(--line);padding-top:36px}
.related .t{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.rcard{display:block;border:1px solid var(--line);border-radius:3px;padding:22px 24px;margin-bottom:14px;transition:.3s}
.rcard:hover{border-color:rgba(194,163,107,.4);transform:translateY(-2px)}
.rcard .rk{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.rcard h4{font-family:var(--serif);font-weight:500;font-size:21px;margin:0;color:var(--ink)}

/* BLOG INDEX */
.jhero{max-width:var(--maxw);margin:0 auto;padding:80px 28px 30px;text-align:center}
.jhero .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
.jhero h1{font-size:clamp(40px,7vw,76px)}
.jhero p{font-family:var(--serif);font-style:italic;font-size:clamp(19px,2.3vw,24px);color:#cfcabf;max-width:46ch;margin:14px auto 0}
.jlist{max-width:var(--maxw);margin:0 auto;padding:30px 28px 60px}
.post{display:block;border-top:1px solid var(--line);padding:36px 0;transition:.3s}
.post:last-child{border-bottom:1px solid var(--line)}
.post:hover{padding-left:10px}
.post .pk{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:flex;gap:14px;flex-wrap:wrap}
.post .pk .m{color:var(--soft)}
.post h2{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3.6vw,38px);line-height:1.08;margin:0 0 10px;color:var(--ink)}
.post:hover h2{color:var(--gold2)}
.post p{font-size:18px;color:var(--muted);margin:0;line-height:1.55}

/* FOOTER */
footer{border-top:1px solid var(--line);padding:54px 28px 64px;text-align:center;margin-top:40px}
.fbrand{font-family:var(--title);font-weight:700;letter-spacing:.2em;font-size:18px;color:var(--ink);margin-bottom:12px}
.fbrand .dot{color:var(--gold)}
.flinks{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.flinks a{color:var(--muted);margin:0 11px}.flinks a:hover{color:var(--gold2)}
.fnote{max-width:60ch;margin:0 auto;line-height:1.6;color:var(--dim);font-size:13px}
.fnote a{color:var(--muted)}
@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(16px);animation:rin .8s forwards}@keyframes rin{to{opacity:1;transform:none}}}
