:root{
  --ink:#161616; --muted:#666; --accent:#c8102e; --bg:#fff; --line:#e8e6e0;
  --maxw:1120px;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}

.site-header{border-bottom:3px solid var(--accent);padding:14px 0}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.logo{font-weight:800;font-size:1.4rem;letter-spacing:.3px}
.logo span{color:var(--accent)}
.main-nav{display:flex;gap:18px;flex-wrap:wrap}
.main-nav a{font-weight:600;font-size:.95rem}
.main-nav a:hover{color:var(--accent)}

main.wrap{padding:28px 16px 60px}
.page-title{font-size:1.6rem;margin:0 0 20px;border-bottom:2px solid var(--line);padding-bottom:10px}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.card{border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.card-thumb{aspect-ratio:16/9;background:#f2f0eb;display:block;overflow:hidden}
.card-thumb img{width:100%;height:100%;object-fit:cover}
.card-thumb-placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#f2f0eb,#e5e2da)}
.card-body{padding:12px 14px 16px}
.card-cat{display:inline-block;color:var(--accent);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.card-title{font-size:1.05rem;margin:0 0 8px;line-height:1.3}
.card-title a:hover{color:var(--accent)}
.card time{color:var(--muted);font-size:.8rem}

.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:32px;gap:12px;flex-wrap:wrap}
.pagination a{font-weight:700;color:var(--accent)}

.single .breadcrumb{color:var(--muted);font-size:.85rem;margin-bottom:10px}
.single h1{font-size:1.9rem;line-height:1.25;margin:0 0 8px}
.single time{color:var(--muted);font-size:.85rem}
.single-image{margin:18px 0}
.single-content{font-size:1.05rem;max-width:72ch}
.single-content img{border-radius:6px;margin:16px 0}
.tags{margin-top:24px;display:flex;gap:10px;flex-wrap:wrap}
.tags a{background:#f2f0eb;padding:5px 10px;border-radius:20px;font-size:.8rem}

.site-footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.85rem;margin-top:40px}

@media (max-width:640px){
  .single h1{font-size:1.5rem}
}
