@media (max-width: 767px) {
  .card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .article-card .kyami-thumb { margin: 8px 8px 0; width: calc(100% - 16px); }
  .card-title-box { margin: 8px 8px 0; height: 36px; padding: 6px 8px; }
  .card-body { padding: 8px; }
  .btn-read { padding: 9px 8px; font-size: 13px; }
  .custom-logo,.site-branding img { max-height: 36px; max-width: 88px; }
  .header-search { max-width: 42vw; }
}
@media (min-width: 768px) {
  .card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hero { min-height: 320px; padding: 48px 36px; }
  .hero h1 { font-size: 2.4rem; }
  .stats { grid-template-columns: repeat(2, 1fr); }
  .info-grid { grid-template-columns: repeat(3, 1fr); }
  .kyami-hero img { height: 340px; }
  .hero-content h1 { font-size: 2.1rem; }
  .hero-content { padding: 36px; }
  .featured-block { grid-template-columns: 1.2fr 1fr; }
  .featured-block .kyami-thumb { aspect-ratio: auto; min-height: 280px; height: 100%; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .post-nav { grid-template-columns: 1fr 1fr; }
  .entry-title { font-size: 2rem; }
}

@media (min-width: 1025px) {
  .nav-toggle { display: none; }
  .primary-nav { display: block; }
  .header-cta { display: inline-flex; }
  .layout.has-sidebar { grid-template-columns: minmax(0, 1fr) 320px; }
  .card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .header-search { display: flex; }
  .kyami-hero img { height: 420px; }
  .hero-content h1 { font-size: 2.6rem; max-width: 16ch; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1fr; }
  .site-description { display: block; color: var(--kyami-muted); font-size: .85rem; margin: 0; }
}

@media (hover: hover) {
  .article-card { transition: transform .2s ease, box-shadow .2s ease; }
  .article-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(26,26,26,.1); }
  .article-card:hover img { transform: scale(1.03); }
  .kyami-thumb img { transition: transform .35s ease; }
}
