:root{
  --paper:#f6f1e8;
  --ink:#1f251b;
  --muted:#6f6a5f;
  --line:#d8cdbc;
  --panel:#eee6d8;
  --deep:#182315;
  --accent:#8d6b46;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.55}
a{color:inherit}
.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 54px;border-bottom:1px solid var(--line);background:rgba(246,241,232,.94);position:sticky;top:0;z-index:10}
.logo{font-size:30px;letter-spacing:.16em;text-decoration:none}
.logo small{display:block;font-size:10px;letter-spacing:.28em;margin-top:-4px}
.nav a{margin-left:34px;text-decoration:none;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.hero{min-height:470px;background-image:linear-gradient(90deg,rgba(246,241,232,.95) 0%,rgba(246,241,232,.80) 37%,rgba(246,241,232,.12) 66%),url('assets/hero-campos-altos.svg');background-size:cover;background-position:center;display:flex;align-items:center}
.hero-inner{max-width:1120px;margin:0 auto;width:100%;padding:50px 32px}
.kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}
h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:78px;line-height:.95;margin:0 0 22px;max-width:600px}
.subtitle{font-size:20px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:22px}
.taste-row{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid rgba(31,37,27,.45);border-bottom:1px solid rgba(31,37,27,.45);padding:18px 0;max-width:620px;margin-bottom:22px}
.taste{font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.batch{font-size:13px;text-transform:uppercase;letter-spacing:.10em;font-weight:700}
.main{max-width:1120px;margin:0 auto;padding:50px 32px 70px;display:grid;grid-template-columns:1fr 340px;gap:46px}
.lead{font-size:20px;max-width:720px;margin:0 0 36px}
.story-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.photo{width:100%;height:auto;display:block;background:#ddd}
.story-section{border-bottom:1px solid var(--line);padding:28px 30px}
.story-section h2,.side-card h2{font-size:14px;text-transform:uppercase;letter-spacing:.14em;margin:0 0 18px;font-weight:500}
.story-section h2:after,.side-card h2:after{content:"";display:block;width:40px;border-bottom:1px solid var(--accent);margin-top:12px}
.story-section p{margin:0 0 14px}
.cup-icons{display:flex;gap:22px;margin:16px 0;font-size:13px;color:var(--muted)}
.icon{font-size:30px;display:block;line-height:1}
.sidebar{display:flex;flex-direction:column;gap:22px}
.side-card{background:var(--panel);padding:30px}
.data-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);padding:9px 0;font-size:14px}
.data-row span:first-child{color:var(--muted)}
.qr-pack-note{display:flex;gap:18px;align-items:center;background:rgba(255,255,255,.38);padding:18px;margin-top:22px}
.qr-pack-note img{width:86px;height:86px}
.qr-pack-note strong{display:block;margin-bottom:4px}
.haiku{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-style:italic;line-height:1.7;margin:18px 0 28px}
.botanical{width:150px;opacity:.75;float:right}
.bottom-nav{max-width:1120px;margin:0 auto 12px;padding:0 32px 45px;display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.12em;font-size:13px}
.footer{background:var(--deep);color:#f4ecdf;padding:40px 54px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:34px}
.footer h3{letter-spacing:.2em;font-weight:400}
.footer a{display:block;text-decoration:none;margin:7px 0;color:#f4ecdf}
@media(max-width:900px){
  .site-header{padding:0 22px}.nav{display:none}
  h1{font-size:52px}.hero{min-height:420px}
  .main{grid-template-columns:1fr}.story-grid{grid-template-columns:1fr}
  .footer{grid-template-columns:1fr}
}