*{box-sizing:border-box}
html{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f6f6f6;color:#202020}
body{margin:0;line-height:1.65}
a{color:inherit}
.wrap{width:min(960px,calc(100% - 32px));margin:0 auto}
.site-header{background:#fff;border-bottom:1px solid #ddd}
.site-header .wrap{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-size:1.25rem;font-weight:700;text-decoration:none}
nav{display:flex;gap:18px;flex-wrap:wrap}
nav a{text-decoration:none;color:#555}
nav a:hover,.readmore:hover{text-decoration:underline}
.hero{padding:64px 0 36px}
.hero h1{font-size:clamp(2.3rem,7vw,4rem);margin:0 0 6px;letter-spacing:-.04em}
.hero p{margin:0;color:#666;font-size:1.1rem}
.post-card{display:grid;grid-template-columns:1.4fr .8fr;background:#fff;border:1px solid #ddd;border-radius:16px;overflow:hidden}
.post-card__body{padding:30px}
.post-card h2{margin:5px 0 10px;font-size:1.65rem}
.post-card h2 a{text-decoration:none}
.post-card__image{min-height:250px;background:#ddd}
.post-card__image img{width:100%;height:100%;object-fit:cover;display:block}
.meta{font-size:.9rem;color:#777}
.readmore{display:inline-block;margin-top:8px;font-weight:600;text-decoration:none}
.article-wrap{max-width:780px}
.article{background:#fff;border:1px solid #ddd;border-radius:16px;padding:clamp(24px,5vw,52px);margin:44px 0}
.article h1{font-size:clamp(2rem,6vw,3.2rem);line-height:1.1;margin:.2em 0 .7em;letter-spacing:-.03em}
.article h2{margin-top:2em}
.article-image{width:100%;height:auto;display:block;border-radius:12px;margin:28px 0}
code{background:#eee;padding:.15em .35em;border-radius:4px}
.site-footer{padding:36px 0;color:#777;font-size:.9rem}
@media(max-width:700px){
  .site-header .wrap{align-items:flex-start;flex-direction:column;padding:14px 0}
  .post-card{grid-template-columns:1fr}
  .post-card__image{order:-1;min-height:200px}
}
