/* Basic reset */
*{box-sizing:border-box}html,body{margin:0;padding:0}
:root{
  --bg:#fffaf6;
  --ink:#1d1d1d;
  --muted:#6b655f;
  --accent:#a07455;
  --alt:#f7efe9;
  --card:#ffffff;
  --ring:rgba(160,116,85,.25);
}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, Helvetica, sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.65;
  font-size:16px;
}
h1,h2,h3{
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  line-height:1.2;
  margin:0 0 .6rem;
  color:var(--ink);
}
h1{font-size:clamp(2rem,4vw+1rem,3rem)}
h2{font-size:clamp(1.5rem,2.2vw+1rem,2.25rem)}
h3{font-size:1.25rem}
p{margin:.75rem 0}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1000px;margin:0 auto;padding:0 1.2rem}
.section{padding:4rem 0}
.section.alt{background:var(--alt)}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(8px);
  border-bottom:1px solid #eee;
}
.site-header .nav{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;
}
.brand{font-family:"Playfair Display",serif;font-weight:600;letter-spacing:.4px}
.brand-link{color:var(--ink);text-decoration:none}
nav a{margin-left:1rem;color:var(--muted)}
nav a:hover{color:var(--ink)}

.hero{padding:5rem 0 3rem;background:linear-gradient(180deg, #fff 0, #fffaf6 100%)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:center}
.hero-media img{width:100%;height:auto;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.cta-row{margin-top:1rem}
.btn{
  display:inline-block;background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:999px;
  transition:transform .08s ease, box-shadow .2s ease;box-shadow:0 6px 18px rgba(0,0,0,.15);
}
.btn:hover{transform:translateY(-1px)}

.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.media-card img{width:100%;height:auto;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.06)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{background:var(--card);padding:1.2rem;border-radius:16px;border:1px solid #eee;box-shadow:0 6px 16px rgba(0,0,0,.04)}
.card .price{font-weight:600;margin-top:.4rem}
.card .meta{color:var(--muted)}

.bullets{padding-left:1.2rem}
.bullets li{margin:.4rem 0}
.note{color:var(--muted);font-size:.95em}

.pull{font-size:1.25rem;border-left:4px solid var(--accent);padding-left:1rem;color:var(--muted)}

.product{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:center;margin-top:1rem}
.product img{width:100%;height:auto;border-radius:12px;border:1px solid #eee}

.contact.large{list-style:none;padding:0}
.contact.large li{margin:.4rem 0}
.muted{color:var(--muted)}

.site-footer{background:#121212;color:#eee;padding:2.5rem 0;margin-top:2rem}
.site-footer h3{color:#fff;margin-bottom:.5rem}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start}
.smallprint{align-self:end;color:#bbb}
.footer-grid a{color:#fff}

@media (max-width: 860px){
  .hero-grid,.two-col,.product{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  nav{display:none}
}
/* --- Mobile Menu --- */
.menu-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 1.8rem;
  cursor: pointer;
  color: var(--ink);
}

@media (max-width: 860px) {
  .menu-toggle {
    display: block;
  }

  .main-nav {
    display: none;
    flex-direction: column;
    background: #fff;
    position: absolute;
    top: 64px;
    right: 0;
    left: 0;
    padding: 1rem 0;
    border-top: 1px solid #eee;
    box-shadow: 0 6px 12px rgba(0,0,0,0.05);
  }

  .main-nav a {
    margin: 0.5rem 0;
    padding: 0.5rem 1rem;
    display: block;
    text-align: center;
  }

  .main-nav.open {
    display: flex;
  }
}
