:root{
  --indigo-900:#1B1F3B;--indigo-700:#232A60;--gold-500:#D4A574;--gold-600:#C29360;--gold-700:#9D7340;
  --teal-600:#6FB7A8;--cream:#F8F4ED;--cream-warm:#F1ECDF;--white:#FFFFFF;
  --ink-900:#0E1126;--ink-700:#3A3F47;--ink-500:#65676B;--ink-300:#B0B3B8;
  --border:#E4E0D5;--border-soft:#F0EDE3;
  --shadow-sm:0 2px 8px rgba(27,31,59,.06);--shadow-md:0 8px 24px rgba(27,31,59,.10);
  --shadow-gold:0 10px 28px rgba(212,165,116,.4);--ease:cubic-bezier(0.16,1,0.3,1);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',system-ui,sans-serif;background:linear-gradient(180deg,var(--cream) 0%,var(--cream-warm) 100%);color:var(--ink-900);line-height:1.6;-webkit-font-smoothing:antialiased}
.ital{font-family:'Fraunces',serif;font-style:italic;font-weight:600;color:var(--gold-700)}
.container{max-width:1100px;margin:0 auto;padding:0 28px}
a{color:var(--gold-700);text-decoration:none}
a:hover{text-decoration:underline}

nav{position:sticky;top:0;background:rgba(248,244,237,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-soft);z-index:100;padding:18px 0}
nav .container{display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--indigo-900)}
.logo-mark{width:32px;height:32px;display:flex;align-items:center;justify-content:center}
.nav-links{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:600}
.nav-links a{color:var(--ink-700)}
.nav-cta{background:var(--gold-500);color:var(--indigo-900);padding:10px 16px;border-radius:100px;font-weight:700;font-size:13px;white-space:nowrap}
.nav-cta:hover{background:var(--gold-600);box-shadow:var(--shadow-gold);text-decoration:none}
@media(max-width:680px){.nav-links a:not(.nav-cta){display:none}.nav-cta{padding:9px 13px;font-size:11px}}

.hero{padding:80px 0 50px}
.eyebrow{font-size:12px;font-weight:700;color:var(--gold-700);text-transform:uppercase;letter-spacing:.14em;margin-bottom:12px;display:inline-block}
h1.page-title{font-size:clamp(38px,5.5vw,60px);font-weight:800;letter-spacing:-.035em;line-height:1.05;color:var(--indigo-900);margin-bottom:20px;max-width:780px}
.page-sub{font-size:18px;color:var(--ink-500);max-width:680px;line-height:1.55}

.posts{padding:30px 0 100px}
.post-list{display:grid;grid-template-columns:1fr 1fr;gap:28px}
@media(max-width:820px){.post-list{grid-template-columns:1fr}}
.post-card{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:34px 30px;transition:all .35s var(--ease);text-decoration:none;color:var(--ink-900);display:flex;flex-direction:column;gap:14px;height:100%}
.post-card:hover{transform:translateY(-4px);border-color:var(--indigo-900);box-shadow:var(--shadow-md);text-decoration:none}
.post-num{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gold-700);font-weight:700;letter-spacing:.1em}
.post-card h2{font-size:24px;font-weight:800;letter-spacing:-.025em;color:var(--indigo-900);line-height:1.2}
.post-card p{font-size:15px;color:var(--ink-500);line-height:1.55;flex:1}
.post-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-500);font-weight:600;padding-top:14px;border-top:1px solid var(--border-soft)}
.post-meta .read-time{margin-left:auto;color:var(--gold-700)}

footer{border-top:1px solid var(--border-soft);padding:36px 0;text-align:center;color:var(--ink-500);font-size:13px}
footer .logo{margin:0 auto 8px;justify-content:center;display:inline-flex}
