:root {
--primary: #5A3921;
--secondary: #D2B48C;
--accent: #8B4513;
--light: #F5F5DC;
--dark: #2C1810;
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins', sans-serif;
}

body {
background-color: var(--light);
color: var(--dark);
line-height: 1.6;
}

header {
background-color: var(--primary);
padding: 1rem;
position: fixed;
width: 100%;
z-index: 100;
box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

.navbar {
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1200px;
margin: 0 auto;
}

.logo {
font-size: 2rem;
font-weight: 700;
color: var(--secondary);
}

.nav-links {
display: flex;
list-style: none;
}

.nav-links li {
margin-left: 2rem;
}

.nav-links a {
text-decoration: none;
color: var(--light);
font-weight: 500;
transition: color 0.3s;
}

.nav-links a:hover {
color: var(--secondary);
}

.hero {
height: 100vh;
background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('/api/placeholder/1200/800');
background-size: cover;
background-position: center;
display: flex;
align-items: center;
justify-content: center;
color: white;
text-align: center;
padding-top: 4rem;
}

.hero-content {
max-width: 800px;
}

.hero h1 {
font-size: 3.5rem;
margin-bottom: 1rem;
}

.tagline {
font-size: 1.5rem;
margin-bottom: 2rem;
}

.btn {
display: inline-block;
background-color: var(--accent);
color: white;
padding: 0.8rem 2rem;
border-radius: 30px;
text-decoration: none;
font-weight: 600;
transition: all 0.3s;
border: none;
cursor: pointer;
}

.btn:hover {
background-color: var(--primary);
transform: translateY(-3px);
}

section {
padding: 5rem 2rem;
}

.container {
max-width: 1200px;
margin: 0 auto;
}

.section-title {
text-align: center;
margin-bottom: 3rem;
font-size: 2.5rem;
color: var(--primary);
}

.about-content {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 3rem;
align-items: center;
}

.about-image {
width: 100%;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.about-text h3 {
font-size: 1.8rem;
margin-bottom: 1rem;
color: var(--accent);
}

.products {
background-color: var(--primary);
color: var(--light);
}

.product-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 2rem;
}

.product-card {
background-color: white;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
transition: transform 0.3s;
color: var(--dark);
}

.product-card:hover {
transform: translateY(-10px);
}

.product-image {
height: 200px;
width: 100%;
object-fit: cover;
}

.product-info {
padding: 1.5rem;
}

.product-title {
font-size: 1.5rem;
margin-bottom: 0.5rem;
color: var(--primary);
}

.product-desc {
margin-bottom: 1rem;
}

.product-price {
font-weight: 700;
font-size: 1.2rem;
color: var(--accent);
}

.signature-brews {
background-color: var(--light);
}

.brew-card {
background-color: white;
padding: 2rem;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
margin-bottom: 2rem;
}

.brew-card h3 {
color: var(--primary);
margin-bottom: 1rem;
font-size: 1.8rem;
}

.testimonials {
background-color: var(--secondary);
}

.testimonial-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 2rem;
}

.testimonial-card {
background-color: white;
padding: 2rem;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.testimonial-text {
font-style: italic;
margin-bottom: 1rem;
}

.testimonial-author {
font-weight: 700;
color: var(--primary);
}

.contact {
background-color: var(--dark);
color: var(--light);
}

.contact-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 3rem;
}

.contact-info h3 {
font-size: 1.8rem;
margin-bottom: 1.5rem;
color: var(--secondary);
}

.contact-item {
display: flex;
margin-bottom: 1rem;
}

.contact-item i {
margin-right: 1rem;
color: var(--secondary);
}

.contact-form input,
.contact-form textarea {
width: 100%;
padding: 1rem;
margin-bottom: 1rem;
border: none;
border-radius: 5px;
}

.contact-form textarea {
height: 150px;
resize: none;
}

footer {
background-color: var(--primary);
color: var(--light);
text-align: center;
padding: 2rem;
}

.social-links {
display: flex;
justify-content: center;
margin-bottom: 1rem;
}

.social-links a {
display: inline-block;
margin: 0 1rem;
color: var(--light);
font-size: 1.5rem;
transition: color 0.3s;
}

.social-links a:hover {
color: var(--secondary);
}

@media (max-width: 768px) {
.about-content,
.contact-grid {
grid-template-columns: 1fr;
}

.hero h1 {
font-size: 2.5rem;
}

.tagline {
font-size: 1.2rem;
}

.navbar {
flex-direction: column;
}

.nav-links {
margin-top: 1rem;
}

.nav-links li {
margin-left: 1rem;
margin-right: 1rem;
}
}