/* Shared editorial article styles for The Kronos Journal */
:root{
  --bg:#06060A; --surface:#0C0C12; --line:rgba(245,243,238,0.08); --line-strong:rgba(245,243,238,0.16);
  --ink:#F5F3EE; --ink-2:rgba(245,243,238,0.78); --muted:#8A877E; --dim:#55544E;
  --gold:#C9A84C;
  --display:'Cinzel','Didot',serif;
  --body:'Source Serif 4','Georgia',serif;
  --sans:'Inter','Helvetica Neue',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.7}
a{color:inherit}
::selection{background:rgba(201,168,76,0.35)}

.shell-narrow{max-width:720px;margin:0 auto;padding:0 28px}
.shell{max-width:1080px;margin:0 auto;padding:0 28px}

.nav{position:sticky;top:0;z-index:40;background:rgba(6,6,10,0.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:16px 28px;max-width:1440px;margin:0 auto;font-family:var(--sans)}
.brand{font-family:var(--display);letter-spacing:0.38em;font-size:15px;color:var(--gold)}
.brand .dot{color:var(--gold)}
.back-link{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;transition:color .2s ease}
.back-link:hover{color:var(--gold)}

.progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);z-index:100;width:0;transition:width .1s ease}

.art-header{padding:110px 0 80px;border-bottom:1px solid var(--line)}
.art-kicker{font-family:var(--mono);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:36px;display:flex;align-items:center;gap:14px}
.art-kicker .bar{width:32px;height:1px;background:var(--gold)}
.art-title{
  font-family:var(--display);font-weight:500;line-height:1.05;letter-spacing:-0.01em;
  font-size:clamp(36px,5vw,72px);max-width:22ch;
}
.art-title em{color:var(--gold);font-style:normal}
.art-sub{
  font-family:var(--body);font-style:italic;color:var(--ink-2);
  font-size:clamp(17px,1.3vw,21px);line-height:1.55;margin-top:28px;max-width:58ch;
}
.art-meta{
  margin-top:52px;padding-top:28px;border-top:1px solid var(--line);
  display:flex;gap:52px;flex-wrap:wrap;
  font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);
}
.art-meta b{color:var(--ink);display:block;font-weight:500;margin-top:6px}

.art-hero{padding:64px 0;border-bottom:1px solid var(--line)}
.art-hero-frame{
  aspect-ratio:16/9;background:linear-gradient(135deg,#111119 0%,#05050A 100%);
  border:1px solid var(--line);position:relative;overflow:hidden;
  display:grid;place-items:center;
}
.art-hero-frame::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(50% 60% at 25% 40%, rgba(201,168,76,0.18), transparent 55%),
    repeating-linear-gradient(45deg, transparent 0 24px, rgba(201,168,76,0.035) 24px 25px);
}
.art-hero-frame .big{
  font-family:var(--display);font-size:clamp(100px,16vw,220px);
  color:var(--gold);letter-spacing:-0.02em;font-weight:500;line-height:1;
}
.art-hero-frame .caption{
  position:absolute;bottom:24px;left:24px;font-family:var(--mono);font-size:10px;
  letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);max-width:70%;
}
.art-hero-frame .marker{
  position:absolute;top:24px;right:24px;font-family:var(--mono);font-size:10px;
  letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);
}

article{padding:72px 0 100px}
.art-body > *{margin-bottom:1.3em}
.drop{
  font-family:var(--display);font-size:5.6em;line-height:0.85;float:left;
  padding:0.16em 0.14em 0 0;color:var(--gold);font-weight:500;
}
.art-body p{font-size:19px;line-height:1.78;color:var(--ink);font-weight:400}
.art-body p:first-of-type::first-line{font-variant:small-caps;letter-spacing:0.08em}
.art-body h2{
  font-family:var(--display);font-size:clamp(26px,2.4vw,34px);font-weight:500;
  letter-spacing:-0.005em;color:var(--ink);margin-top:2.2em;margin-bottom:0.7em;line-height:1.2;
}
.art-body h3{
  font-family:var(--display);font-size:22px;font-weight:500;color:var(--gold);
  margin-top:1.6em;margin-bottom:0.5em;letter-spacing:-0.005em;
}
.art-body a{color:var(--gold);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.art-body strong{color:var(--ink);font-weight:500}
.art-body em{color:var(--ink)}
.art-body ul,.art-body ol{padding-left:22px;color:var(--ink-2)}
.art-body li{font-size:18px;line-height:1.75;margin-bottom:0.5em}
.art-body li::marker{color:var(--gold)}
.art-body blockquote{
  margin:40px -8% 40px;padding:40px 0;
  border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);
  font-family:var(--display);font-size:clamp(22px,2.4vw,30px);font-weight:500;
  line-height:1.3;letter-spacing:-0.005em;color:var(--ink);
}

.endmark{text-align:center;color:var(--gold);font-size:20px;margin:72px 0 36px;font-family:var(--display)}
.art-footer{border-top:1px solid var(--line);padding-top:44px;margin-top:32px;display:grid;gap:24px}
.author-row{display:flex;align-items:center;gap:18px}
.author-avatar{
  width:52px;height:52px;border-radius:50%;background:var(--gold);
  display:grid;place-items:center;font-family:var(--display);color:#0A0A10;font-size:20px;font-weight:600;
}
.author-name{font-family:var(--sans);color:var(--ink);font-weight:500}
.author-bio{font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:4px}

/* CTA at bottom */
.article-cta{
  background:linear-gradient(180deg,#0B0B12,#06060A);border:1px solid rgba(201,168,76,0.25);
  border-radius:0;padding:48px;margin-top:40px;text-align:center;
}
.article-cta h4{font-family:var(--display);font-size:28px;font-weight:500;margin-bottom:12px;letter-spacing:-0.005em}
.article-cta p{color:var(--ink-2);max-width:52ch;margin:0 auto 24px;font-family:var(--body);font-size:16px}
.article-cta .btn{
  display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;
  background:var(--gold);color:#0A0A10;font-weight:600;font-size:14px;font-family:var(--sans);
  text-decoration:none;transition:transform .2s ease, background .2s ease;
}
.article-cta .btn:hover{background:#E2BF5E;transform:translateY(-1px)}

.next-article{margin-top:56px;padding:44px 0;border-top:1px solid var(--line)}
.next-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.next-title{font-family:var(--display);font-size:clamp(22px,2.2vw,30px);font-weight:500;letter-spacing:-0.005em;line-height:1.2;transition:color .25s ease;display:block}
.next-title:hover{color:var(--gold)}
.next-meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:0.1em;text-transform:uppercase;margin-top:12px}

.site-footer{background:#050508;padding:72px 0 32px;border-top:1px solid var(--line);margin-top:40px;font-family:var(--sans)}
.site-footer .row{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
.site-footer .brand{font-family:var(--display);letter-spacing:0.38em;font-size:15px;color:var(--gold)}
.site-footer .links{display:flex;gap:28px;font-size:13px;color:var(--ink-2)}
.site-footer .links a{text-decoration:none}
.site-footer .links a:hover{color:var(--gold)}
.site-footer .copy{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:0.1em}

@media (max-width:700px){
  .art-body blockquote{margin:36px 0;font-size:22px}
  .drop{font-size:4.2em}
  .art-body p{font-size:17px}
  .art-header{padding:72px 0 56px}
  .art-meta{gap:32px}
  .article-cta{padding:36px 24px}
}
