/* ============================================================
   ShePlayz — The Rundown  ·  Ghost theme
   Premium editorial. Cream ground, black serif headlines,
   ShePlayz red as accent. Playfair Display (display) + Inter (labels/body).
   ============================================================ */

:root{
  --bg:#F2ECE1; --panel:#FBF8F2; --panel-2:#F0E9DB;
  --red:#D8252B; --red-deep:#B41D23;
  --ink:#1C1813; --slate:#6E655A; --slate-dim:#8A8072;
  --line:rgba(28,24,19,.14); --line-soft:rgba(28,24,19,.08);
  --red-wash:rgba(216,37,43,.10);
  --disp:'Playfair Display',Georgia,'Times New Roman',serif;
  --body:'Inter',system-ui,-apple-system,sans-serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--ink); font-family:var(--body); line-height:1.6;
  -webkit-font-smoothing:antialiased; min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.wrap{max-width:1080px;margin:0 auto;padding-inline:24px}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.09em;padding:14px 26px;border-radius:6px;transition:background .2s;cursor:pointer;border:none}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--red-deep)}

.eyebrow{font-family:var(--sans);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:12px;color:var(--red);margin-bottom:16px}
.accent{color:var(--red)}

/* ---- nav ---- */
.site-nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
.nav-in{max-width:1080px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;gap:20px}
.brand{font-family:var(--disp);font-weight:800;font-size:22px;letter-spacing:.01em}
.brand .z{color:var(--red)}
.nav-links{margin-left:auto;display:flex;align-items:center;gap:24px}
.nav-links ul{list-style:none;display:flex;gap:24px;margin:0;padding:0}
.nav-links a{font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);transition:color .15s}
.nav-links a:hover{color:var(--red)}
.nav-cta{font-family:var(--sans);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.09em;background:var(--red);color:#fff !important;padding:10px 18px;border-radius:6px}
.nav-cta:hover{background:var(--red-deep)}
@media(max-width:640px){.nav-links ul{display:none}}

.site-main{min-height:60vh}

/* ---- home hero ---- */
.home-hero{padding-block:74px 56px;border-bottom:1px solid var(--line)}
.home-hero h1{font-family:var(--disp);font-weight:700;font-size:clamp(42px,7.5vw,68px);line-height:1.02;letter-spacing:-.01em;margin-bottom:20px;text-wrap:balance}
.home-hero .lede{font-size:clamp(16px,2.3vw,18.5px);color:var(--slate);max-width:60ch;margin-bottom:30px;line-height:1.6}

/* ---- issues list ---- */
.issues{padding-block:52px 72px}
.sec-h{font-family:var(--sans);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:var(--slate);margin-bottom:26px}
.issue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:820px){.issue-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.issue-grid{grid-template-columns:1fr}}
.issue-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,transform .15s}
.issue-card:hover{border-color:rgba(216,37,43,.4);transform:translateY(-3px)}
.ic-img{height:160px;background-size:cover;background-position:center;background-color:#D7C6AD}
.ic-img-fallback{background:linear-gradient(150deg,#D7C6AD,#B49C82 60%,#8E7A64)}
.ic-body{padding:18px 20px 22px}
.ic-date{font-family:var(--sans);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--red)}
.ic-body h3{font-family:var(--disp);font-weight:700;font-size:21px;line-height:1.1;margin:8px 0 8px}
.ic-body p{font-size:13.5px;color:var(--slate);line-height:1.55}
.empty{color:var(--slate);font-size:16px}

/* featured latest issue */
.issue-feature-card{display:grid;grid-template-columns:1.05fr 1fr;gap:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:24px;transition:border-color .15s,transform .15s}
.issue-feature-card:hover{border-color:rgba(216,37,43,.4);transform:translateY(-2px)}
.fc-img{min-height:280px;background-size:cover;background-position:center;background:linear-gradient(150deg,#C9B9A6,#9E8575 58%,#6f5e52)}
.fc-body{padding:34px 36px;display:flex;flex-direction:column;justify-content:center}
.fc-body h3{font-family:var(--disp);font-weight:700;font-size:clamp(26px,3.4vw,38px);line-height:1.05;margin:10px 0 12px}
.fc-body p{font-size:15px;color:var(--slate);line-height:1.6;margin-bottom:16px}
.fc-read{font-family:var(--sans);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--red)}
@media(max-width:720px){.issue-feature-card{grid-template-columns:1fr}.fc-img{min-height:180px}.fc-body{padding:26px 24px}}

/* about page */
.about-hero{padding-block:72px 40px;border-bottom:1px solid var(--line)}
.about-hero h1{font-family:var(--disp);font-weight:700;font-size:clamp(40px,7vw,62px);line-height:1.03;letter-spacing:-.01em;text-wrap:balance}
.about-hero .lede{font-size:clamp(16px,2.3vw,19px);color:var(--slate);max-width:60ch;margin-top:18px;line-height:1.6}
.about-body{padding-top:44px}

/* ---- pagination ---- */
.pagination{display:flex;justify-content:center;gap:18px;align-items:center;margin-top:40px;font-family:var(--sans);text-transform:uppercase;letter-spacing:.1em;font-size:12.5px;font-weight:700}
.pagination a{color:var(--red)}
.pagination .page-number{color:var(--slate)}

/* ---- single issue / page ---- */
.issue{padding-block:56px 40px;max-width:720px}
.issue-head{margin-bottom:28px}
.issue-head .ic-date{display:block;margin-bottom:12px}
.issue-head h1{font-family:var(--disp);font-weight:700;font-size:clamp(34px,6vw,52px);line-height:1.04;letter-spacing:-.01em;text-wrap:balance}
.issue-dek{font-size:18px;color:var(--slate);margin-top:14px;line-height:1.55}
.issue-feature{width:100%;border-radius:12px;margin-bottom:32px;border:1px solid var(--line)}

/* ---- Ghost post content ---- */
.gh-content{font-size:17px;line-height:1.75;color:#4A443C}
.gh-content > * + *{margin-top:1.4em}
.gh-content h2{font-family:var(--disp);font-weight:700;font-size:30px;color:var(--ink);line-height:1.15;margin-top:1.8em}
.gh-content h3{font-family:var(--disp);font-weight:700;font-size:23px;color:var(--ink);margin-top:1.6em}
.gh-content h4{font-family:var(--sans);font-weight:700;font-size:18px;color:var(--ink)}
.gh-content a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.gh-content strong{color:var(--ink)}
.gh-content img{border-radius:10px;border:1px solid var(--line)}
.gh-content figure{margin-block:1.6em}
.gh-content figcaption{font-size:13px;color:var(--slate-dim);text-align:center;margin-top:8px}
.gh-content blockquote{border-left:3px solid var(--red);padding:4px 0 4px 20px;color:var(--slate);font-size:20px;font-style:italic;font-family:var(--disp)}
.gh-content ul,.gh-content ol{padding-left:1.3em}
.gh-content li{margin-top:.5em}
.gh-content hr{border:none;border-top:1px solid var(--line);margin-block:2em}
.gh-content code{background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:2px 6px;font-size:14px}
.kg-bookmark-card,.kg-callout-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}

/* Koenig editor width classes (required) */
.gh-content .kg-width-wide{width:100%;max-width:min(85vw,1040px);margin-inline:calc(50% - min(42.5vw,520px) - 0px);position:relative;left:50%;transform:translateX(-50%)}
.gh-content .kg-width-full{width:100vw;max-width:100vw;position:relative;left:50%;transform:translateX(-50%);border-radius:0}
.gh-content .kg-width-full img{border-radius:0}
@media(max-width:768px){
  .gh-content .kg-width-wide,.gh-content .kg-width-full{width:100%;max-width:100%;left:auto;transform:none;margin-inline:0}
}

/* ---- subscribe CTA block ---- */
.subscribe-cta{padding-block:20px 72px;max-width:720px}
.subscribe-box{background:var(--panel-2);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:12px;padding:40px;text-align:center}
.subscribe-box h2{font-family:var(--disp);font-weight:700;font-size:clamp(28px,5vw,40px);line-height:1.05;margin-bottom:12px}
.subscribe-box p{font-size:15.5px;color:var(--slate);max-width:46ch;margin:0 auto 22px;line-height:1.6}

/* ---- footer ---- */
.site-foot{border-top:1px solid var(--line);padding-block:44px 60px;margin-top:40px}
.foot-in{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:flex-start}
.foot-brand{font-family:var(--disp);font-weight:800;font-size:20px}
.foot-brand .z{color:var(--red)}
.foot-tag{font-family:var(--sans);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--slate-dim);margin-top:6px}
.foot-links ul{list-style:none;display:flex;gap:20px;flex-wrap:wrap;margin:0;padding:0}
.foot-links a{font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--slate)}
.foot-links a:hover{color:var(--red)}
.foot-legal{border-top:1px solid var(--line);margin-top:28px;padding-top:20px;font-size:11.5px;color:var(--slate-dim);line-height:1.7}

/* ---- error ---- */
.error-page{text-align:center;padding-block:100px}
.err-code{font-family:var(--disp);font-weight:800;font-size:96px;color:var(--red);line-height:1}
.error-page h1{font-family:var(--disp);font-weight:700;font-size:28px;margin:8px 0 12px}
.error-page p{color:var(--slate);margin-bottom:26px}
