body {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  color: #222;
  background: #f8f8f8;
  line-height: 1.6;
}
a { color: #1982a0; }
img { max-width: 100%; height: auto; }
.site-header, .site-main, .site-footer { max-width: 1000px; margin: 0 auto; }
.site-header { background: #fff; padding: 2rem 1rem 1rem; }
.brand-wrap { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.site-title { font-size: 2rem; font-weight: 700; color: #111; text-decoration: none; }
.site-description { margin: 0.2rem 0 0; color: #555; }
.site-nav { display: flex; gap: 1rem; }
.header-image { margin-top: 1rem; overflow: hidden; border: 1px solid #ddd; }
.content-wrap { display: grid; grid-template-columns: minmax(0, 3fr) minmax(220px, 1fr); gap: 2rem; padding: 2rem 1rem; background: #fff; }
.primary-content { min-width: 0; }
.entry-header h1 { margin-bottom: 0.2rem; }
.meta { color: #666; font-size: 0.95rem; }
.widget { margin-bottom: 2rem; }
.widget-html img { display: block; margin-bottom: 1rem; }
.post-card { padding: 1rem 0; border-top: 1px solid #e3e3e3; }
.post-card:first-child { border-top: 0; }
.shortcode-placeholder { padding: 0.75rem 1rem; border-left: 4px solid #c46b00; background: #fff5e8; margin: 1rem 0; }
.wp-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.wp-gallery .gallery-item { margin: 0; }
.wp-gallery .gallery-item a { display: block; }
.wp-gallery .gallery-item img { display: block; width: 100%; height: auto; border: 1px solid #ddd; }
.flickr-embed { margin: 1rem 0; }
.flickr-embed img { display: block; max-width: min(100%, 640px); height: auto; }
.site-footer { padding: 2rem 1rem 3rem; color: #555; }
@media (max-width: 840px) {
  .brand-wrap, .content-wrap { display: block; }
  .site-nav { margin-top: 1rem; }
  .sidebar { margin-top: 2rem; }
}
