
:root {
  --bg: #fffaf3;
  --text: #2c2520;
  --muted: #6e5e55;
  --accent: #7b5d3a;
  --accent-2: #b2976b;
}

* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, 'Noto Sans', 'Helvetica Neue', Arial, sans-serif; background: var(--bg); color: var(--text); line-height:1.6; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }

.container { width: min(1100px, 92%); margin: 0 auto; }

.site-header { background: #fff; border-bottom: 1px solid #eee; position: sticky; top:0; z-index:99; }
.header-inner { display:flex; align-items:center; justify-content: space-between; padding: 12px 0; gap: 20px; }
.site-title { font-weight: 700; font-size: 1.25rem; color: var(--text); }
.menu { list-style: none; margin:0; padding:0; display:flex; gap: 16px; }
.menu a { padding: 8px 10px; border-radius: 6px; }
.menu a:hover { background: #f2eee7; text-decoration: none; }

.btn { display:inline-block; padding: 10px 16px; border: 1px solid var(--accent); border-radius: 8px; }
.btn.small { padding: 6px 10px; font-size: 0.9rem; }
.btn.large { padding: 14px 22px; font-size: 1.05rem; }
.btn:hover { background: var(--accent); color: #fff; text-decoration: none; }

.hero { background: linear-gradient(90deg, #f7efe3, #fff); }
.hero-inner { display:grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items:center; padding: 40px 0; }
.hero-copy h1 { margin: 0 0 6px; font-size: clamp(28px, 4vw, 42px); }
.hero-copy p { margin: 0 0 16px; color: var(--muted); }
.hero-media { height: 360px; border-radius: 16px; background: #e8dcc9; }

.features { display:grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 24px 0; }
.feature { background:#fff; border:1px solid #eee; border-radius: 12px; padding: 16px; text-align:center; }

.categories h2 { margin-top: 10px; }
.cat-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.cat-card { background:#fff; border: 1px solid #eee; border-radius: 12px; padding: 24px; display:flex; align-items:center; justify-content:center; min-height:120px; }

.content { padding: 28px 0; }

.site-footer { background:#111; color:#eee; margin-top: 40px; }
.footer-inner { padding: 28px 0; }
.footer-cols { display:grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.footer-cols h3 { margin-top:0; color:#fff; }

@media (max-width: 800px) {
  .hero-inner { grid-template-columns: 1fr; }
  .features { grid-template-columns: 1fr; }
  .cat-grid, .footer-cols { grid-template-columns: 1fr; }
}
