html { scroll-behavior: smooth; }
body { margin:0; background:#08080A; color:#fff; font-family:'Poppins',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:#fff; text-decoration:none; }
a:hover { color:#E0343B; }
::selection { background:#CE2027; color:#fff; }

.wrap { max-width:820px; margin:0 auto; padding:0 clamp(18px,4vw,40px); }

header.site-nav { border-bottom:1px solid rgba(255,255,255,.08); background:rgba(8,8,10,.82); backdrop-filter:saturate(140%) blur(14px); position:sticky; top:0; z-index:10; }
header.site-nav .row { max-width:1280px; margin:0 auto; padding:14px clamp(18px,4vw,40px); display:flex; align-items:center; gap:14px; }
header.site-nav img { width:32px; height:32px; border-radius:9px; object-fit:cover; display:block; }
header.site-nav .brand { font-size:13px; font-weight:700; letter-spacing:.1em; }
header.site-nav nav { margin-left:auto; display:flex; gap:26px; font-size:14px; color:#B4B4BA; }

.eyebrow { font-family:'Courier Prime',monospace; font-size:11px; letter-spacing:.26em; color:#E0343B; }
h1.title { margin:18px 0 0; font-size:clamp(30px,4.4vw,48px); font-weight:700; line-height:1.08; letter-spacing:-.03em; }
.meta { margin-top:14px; font-family:'Courier Prime',monospace; font-size:12px; letter-spacing:.08em; color:#8C8C94; }
.excerpt { margin-top:18px; font-size:16px; line-height:1.6; color:#B4B4BA; }

.post-list { display:flex; flex-direction:column; gap:0; margin-top:40px; }
.post-card { display:block; padding:26px 0; border-top:1px solid rgba(255,255,255,.08); }
.post-card:first-child { border-top:1px solid rgba(255,255,255,.08); }
.post-card .p-eyebrow { font-family:'Courier Prime',monospace; font-size:10.5px; letter-spacing:.16em; color:#E0343B; }
.post-card h2 { margin:10px 0 0; font-size:clamp(20px,2.6vw,26px); font-weight:700; letter-spacing:-.02em; color:#fff; }
.post-card p { margin:10px 0 0; font-size:14.5px; line-height:1.6; color:#9C9CA4; max-width:640px; }
.post-card .p-meta { margin-top:12px; font-family:'Courier Prime',monospace; font-size:11px; letter-spacing:.1em; color:#6E6E76; }

article.post { margin-top:44px; font-size:16.5px; line-height:1.75; color:#D2D2D8; }
article.post h2 { margin:40px 0 14px; font-size:clamp(22px,3vw,28px); font-weight:700; letter-spacing:-.02em; color:#fff; }
article.post p { margin:0 0 18px; }
article.post ul, article.post ol { margin:0 0 18px; padding-left:22px; }
article.post li { margin-bottom:8px; }
article.post code { font-family:'Courier Prime',monospace; background:rgba(255,255,255,.06); padding:2px 6px; border-radius:5px; font-size:.9em; }
article.post blockquote { margin:24px 0; padding:16px 20px; border-left:2px solid #CE2027; background:rgba(206,32,39,.06); color:#B4B4BA; font-style:italic; }

.cta-box { margin:56px 0 0; padding:clamp(24px,3vw,36px); border:1px solid rgba(255,255,255,.1); border-radius:18px; background:linear-gradient(180deg,#121214,#0B0B0D); text-align:center; }
.cta-box h3 { margin:0; font-size:clamp(20px,2.6vw,28px); font-weight:700; letter-spacing:-.02em; }
.cta-box p { margin:10px 0 0; color:#9C9CA4; font-size:14.5px; }
.cta-box a { margin-top:22px; display:inline-flex; background:#CE2027; color:#fff; font-size:14.5px; font-weight:600; padding:13px 24px; border-radius:11px; transition:background .2s ease; }
.cta-box a:hover { background:#E0343B; color:#fff; }

footer.site-footer { border-top:1px solid rgba(255,255,255,.07); padding:36px 0; margin-top:70px; }
footer.site-footer .row { max-width:1280px; margin:0 auto; padding:0 clamp(18px,4vw,40px); display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; }
footer.site-footer .links { display:flex; gap:20px; font-size:13px; color:#9C9CA4; }
footer.site-footer .copy { font-size:12px; color:#5F5F67; }

main.page { padding:clamp(40px,6vw,72px) 0 40px; }
.back-link { font-family:'Courier Prime',monospace; font-size:12px; letter-spacing:.1em; color:#8C8C94; }
