:root {
  --bg: #f9fbf7;
  --text: #2c3e2d;
  --accent: #5d7f3b;
  --border: #dce3d8;
  --card-bg: #ffffff;
}
body { font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; margin: 0; background: var(--bg); color: var(--text); line-height: 1.6; }
.container { max-width: 900px; margin: 0 auto; padding: 20px; }
header { border-bottom: 2px solid var(--accent); padding-bottom: 20px; margin-bottom: 30px; }
nav a { margin-right: 15px; color: var(--accent); text-decoration: none; font-weight: bold; }
nav a:hover { text-decoration: underline; }
.hero { background: #edf2e8; padding: 40px; border-radius: 15px; border: 1px solid var(--border); margin-bottom: 30px; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; }
.card { background: var(--card-bg); border: 1px solid var(--border); padding: 15px; border-radius: 10px; box-shadow: 0 4px 6px rgba(0,0,0,0.05); }
.meta { font-size: 0.85em; color: #666; margin-bottom: 10px; }
footer { margin-top: 50px; border-top: 1px solid var(--border); padding-top: 20px; font-size: 0.9em; color: #777; }
.gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.gallery-item { aspect-ratio: 1; background: #ddd; border-radius: 5px; display: flex; align-items: center; justify-content: center; color: #999; border: 1px solid #ccc; }
