
:root {
  --navy: #1A2C42;
  --bronze: #B08D57;
  --beige: #F4EDE4;
  --burnt: #C86A2B;
  --burgundy: #742B3C;
  --txt: #1A2C42;
}
* { box-sizing: border-box; }
html, body { margin:0; padding:0; }
body { font-family:'Poppins', system-ui, sans-serif; background:#F4EDE4; color:var(--txt); line-height:1.6; }
h1,h2,h3 { font-family:'Playfair Display', serif; margin:0 0 .5rem; }
a { color: var(--bronze); text-decoration:none; }
a:hover { text-decoration:underline; }
.container { max-width:1200px; margin:0 auto; padding:0 1rem; }

/* Header (top nav only, always visible) */
.site-header { background:#fff; border-bottom:1px solid rgba(0,0,0,.06); position:sticky; top:0; z-index:10; }
.header-inner { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem 0; }
.brand { display:flex; align-items:center; gap:.75rem; }
.logo { height:44px; width:auto; border-radius:6px; }
.brand-text { font-weight:600; color:var(--navy); font-family:'Playfair Display', serif; }
.nav { display:flex; gap:1.25rem; flex-wrap:wrap; }
.nav a { color:var(--txt); font-weight:500; }

/* Hero */
.hero { background:var(--navy); color:#fff; text-align:center; padding:5rem 0; }
.hero.small { padding:3.5rem 0; }
.hero-inner p { opacity:.9; }

/* Sections */
.section { padding:3.5rem 0; }
.section-contrast { background:#fff; }
.section-navy { background:var(--navy); color:#fff; }
.section-title { text-align:center; font-size:2rem; margin-bottom:1rem; }
.section-title.light { color:#fff; }
.section-sub { text-align:center; opacity:.85; margin-bottom:1.25rem; }
.center { text-align:center; }
.mt-24 { margin-top:1.5rem; }

/* Grids & cards */
.grid { display:grid; gap:1rem; }
.grid-3 { grid-template-columns: repeat(1, 1fr); }
.grid-4 { grid-template-columns: repeat(2, 1fr); }
@media (min-width:700px) { .grid-3 { grid-template-columns: repeat(3, 1fr); } }
@media (min-width:900px) { .grid-4 { grid-template-columns: repeat(4, 1fr); } }
.card { background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 6px 24px rgba(0,0,0,.06); display:block; }
.card img { width:100%; height:260px; object-fit:cover; display:block; }
.card-caption { padding:.75rem 1rem; font-weight:600; }

.product { background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 6px 24px rgba(0,0,0,.06); padding-bottom:1rem; }
.product img { width:100%; height:200px; object-fit:cover; display:block; }
.product h3 { font-size:1.1rem; padding:.75rem 1rem 0; }
.product .price { color:var(--burgundy); font-weight:600; padding:0 1rem 1rem; }

.ig img { width:100%; height:200px; object-fit:cover; border-radius:14px; display:block; }

/* Forms */
.form, .newsletter { display:grid; gap:.75rem; }
.form input, .form textarea, .newsletter input { width:100%; padding:.85rem 1rem; border-radius:14px; border:1px solid rgba(0,0,0,.12); background:#fff; }
.select { display:flex; align-items:center; gap:.5rem; }
.select select { padding:.5rem .75rem; border-radius:12px; border:1px solid rgba(0,0,0,.15); }

.toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; flex-wrap:wrap; }
.values { display:grid; gap:1rem; grid-template-columns: repeat(1, 1fr); }
.value { background:#F4EDE4; padding:1.25rem; border-radius:16px; box-shadow:0 6px 24px rgba(0,0,0,.05); }
.values .value h3 { margin-bottom:.5rem; }
.narrow { max-width:800px; }

/* Buttons */
.btn { display:inline-block; padding:.8rem 1.2rem; border-radius:999px; font-weight:600; border:none; cursor:pointer; text-decoration:none; }
.btn-bronze { background:var(--bronze); color:#fff; }
.btn-bronze:hover { filter:brightness(.95); }

/* Footer */
.site-footer { background:#F4EDE4; border-top:1px solid rgba(0,0,0,.06); }
.footer-inner { padding:1.5rem 0; text-align:center; }
