@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Libre+Baskerville:wght@400;700&display=swap');

:root{
  --green:#2f4a31;
  --deep:#1d2f20;
  --cream:#f4efe3;
  --paper:#fffdf8;
  --gold:#bd8f3b;
  --text:#2b2e29;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font-family:"DM Sans",Arial,sans-serif;line-height:1.65}
h1,h2,h3{font-family:"Libre Baskerville",Georgia,serif;line-height:1.15}
h1{font-size:clamp(2.8rem,7vw,5.7rem);margin:.25rem 0 1.2rem}
h2{font-size:clamp(2rem,4vw,3.2rem);margin:.25rem 0 1rem}
a{text-decoration:none;color:inherit}
.hero{
  min-height:760px;color:white;
  background:
    linear-gradient(90deg,rgba(19,35,21,.88),rgba(19,35,21,.63),rgba(19,35,21,.18)),
    url('tomatoes-display.jpg') center/cover no-repeat;
}
nav{max-width:1180px;margin:auto;padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand img{width:190px;height:auto;background:white;border-radius:6px;display:block}
.nav-links{display:flex;gap:24px;font-size:.92rem;font-weight:700}
.nav-links a:hover{opacity:.72}
.hero-content{max-width:1180px;margin:auto;padding:110px 25px 90px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;color:var(--gold)}
.hero .eyebrow{color:#eed18f}
.hero-text{font-size:1.15rem;max-width:640px}
.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.button{display:inline-block;background:var(--gold);color:white;padding:13px 22px;border-radius:5px;font-weight:700}
.button.secondary{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.58)}
.button.light{background:white;color:var(--green)}
.intro{max-width:820px;margin:auto;padding:90px 25px;text-align:center}
.intro p:last-child{font-size:1.12rem}
.section{max-width:1180px;margin:auto;padding:85px 25px}
.section-heading{max-width:720px;margin-bottom:36px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:white;border:1px solid #e1dacd;border-radius:10px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.card img{width:100%;height:290px;object-fit:cover;display:block}
.card-copy{padding:23px}
.card-copy p{margin-bottom:0;color:#65685f}
.gallery-section{background:var(--cream)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gallery img{width:100%;height:360px;object-fit:cover;border-radius:8px}
.about{background:var(--green);color:white;padding:95px 25px}
.about-box{max-width:850px;margin:auto}
.about .eyebrow{color:#e2bd67}
.cta{text-align:center;padding:90px 25px;background:#efe7d6}
.cta p{max-width:660px;margin:0 auto 25px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.contact-card{padding:28px;background:white;border:1px solid #e3dccf;border-radius:8px}
footer{display:flex;justify-content:space-between;gap:20px;padding:28px 25px;background:var(--deep);color:#dedbd2;font-size:.9rem}
@media(max-width:800px){
  .nav-links{display:none}
  .brand img{width:155px}
  .hero{min-height:690px}
  .hero-content{padding-top:90px}
  .cards,.gallery,.contact-grid{grid-template-columns:1fr}
  .card img,.gallery img{height:auto;max-height:460px;object-fit:cover}
}
@media(max-width:520px){
  footer{flex-direction:column}
}

.text-link{display:inline-block;margin-top:8px;color:var(--green);font-weight:700}
