*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Georgia', serif; color: #2c1810; background: #faf6f1; line-height: 1.7; }
a { color: #8b4513; }
a:hover { color: #5a3825; }

/* Header */
header { background: #2c1810; color: #faf6f1; padding: 2rem 1.5rem; text-align: center; }
header h1 { font-size: 2.2rem; margin-bottom: 0.3rem; letter-spacing: 0.02em; }
header h1 a { color: #faf6f1; text-decoration: none; }
header p.tagline { font-size: 1rem; opacity: 0.8; }

/* Nav */
nav { background: #3d2518; text-align: center; padding: 0.7rem; position: sticky; top: 0; z-index: 100; }
nav a { color: #e8d5c4; text-decoration: none; margin: 0 1rem; font-size: 0.95rem; font-weight: bold; }
nav a:hover { color: #fff; }

/* Layout */
.container { max-width: 900px; margin: 0 auto; padding: 2rem 1.5rem; }
.page-title { font-size: 1.8rem; color: #2c1810; margin-bottom: 1.5rem; text-align: center; }

/* Cards grid */
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1.5rem; margin: 1.5rem 0; }
.card { background: #fff; border-radius: 10px; padding: 1.8rem; box-shadow: 0 2px 10px rgba(44,24,16,0.08); }
.card h3 { color: #5a3825; margin-bottom: 0.6rem; font-size: 1.2rem; }
.card p { color: #6b4a38; font-size: 0.93rem; }
.card .price { font-weight: bold; color: #2c1810; margin-top: 0.8rem; font-size: 1.05rem; }
.card .badge { display: inline-block; background: #d4a574; color: #fff; font-size: 0.75rem; padding: 0.2rem 0.6rem; border-radius: 20px; margin-bottom: 0.5rem; }

/* Content blocks */
.content-block { background: #fff; border-radius: 10px; padding: 2rem; box-shadow: 0 2px 10px rgba(44,24,16,0.06); margin-bottom: 1.5rem; }
.content-block h2 { color: #5a3825; margin-bottom: 0.8rem; }
.content-block p { color: #4a3228; margin-bottom: 1rem; }
.content-block ul { margin: 0.5rem 0 1rem 1.5rem; color: #4a3228; }
.content-block li { margin-bottom: 0.4rem; }

/* Blog */
.blog-list { list-style: none; }
.blog-list li { background: #fff; border-radius: 10px; padding: 1.5rem; margin-bottom: 1rem; box-shadow: 0 2px 10px rgba(44,24,16,0.06); }
.blog-list li h3 a { text-decoration: none; color: #5a3825; font-size: 1.15rem; }
.blog-list li h3 a:hover { color: #2c1810; }
.blog-list .meta { font-size: 0.8rem; color: #9a8070; margin: 0.3rem 0 0.6rem; }
.blog-list .excerpt { color: #6b4a38; font-size: 0.93rem; }

/* Article */
article h2 { color: #5a3825; margin: 1.5rem 0 0.8rem; font-size: 1.3rem; }
article p { margin-bottom: 1rem; color: #4a3228; }
article ul, article ol { margin: 0.5rem 0 1rem 1.5rem; color: #4a3228; }
article li { margin-bottom: 0.3rem; }
article blockquote { border-left: 4px solid #d4a574; padding: 1rem 1.5rem; background: #fff8f0; margin: 1rem 0; font-style: italic; color: #5a3825; }

/* Table */
table { border-collapse: collapse; margin: 1rem auto; }
td, th { padding: 0.5rem 1.2rem; text-align: left; }
th { color: #5a3825; border-bottom: 2px solid #d4a574; }

/* Contact section */
.contact-bar { background: #2c1810; color: #e8d5c4; padding: 2.5rem 1.5rem; text-align: center; margin-top: 2rem; }
.contact-bar h2 { color: #faf6f1; margin-bottom: 0.8rem; }
.contact-bar p { margin-bottom: 0.4rem; }
.contact-bar a { color: #d4a574; }

/* Form */
.form-group { margin-bottom: 1.2rem; }
.form-group label { display: block; font-weight: bold; color: #5a3825; margin-bottom: 0.3rem; font-size: 0.9rem; }
.form-group input, .form-group textarea, .form-group select {
  width: 100%; padding: 0.7rem; border: 1px solid #d4c4b4; border-radius: 6px;
  font-family: inherit; font-size: 0.95rem; background: #fff;
}
.form-group textarea { min-height: 120px; resize: vertical; }
.btn { display: inline-block; background: #5a3825; color: #fff; padding: 0.7rem 2rem; border: none; border-radius: 6px; font-size: 1rem; cursor: pointer; font-family: inherit; }
.btn:hover { background: #2c1810; }

/* Footer */
footer { text-align: center; padding: 1.2rem; background: #1a0f0a; color: #8a7060; font-size: 0.82rem; }
footer a { color: #a08070; }
