:root{
  --bg:#fbf7f3;
  --paper:#fff;
  --muted:#7a6f64;
  --accent:#b7874b;
  --text:#1f1a17;
  --max-width:1080px;
  --radius:10px;
  --gap:24px;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  color-scheme: light;
}

*{box-sizing:border-box}

html,body{height:100%}
body{
  margin:0;
  background:linear-gradient(180deg,var(--bg),#fff);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.55;
  font-size:16px;
}

.container{
  width:calc(100% - 40px);
  max-width:var(--max-width);
  margin:0 auto;
}

.site-header{
  backdrop-filter: blur(6px);
  background:rgba(255,255,255,0.6);
  position:sticky;
  top:0;
  z-index:30;
  border-bottom:1px solid rgba(30,26,23,0.04);
}
.header-inner{
  display:flex;
  align-items:center;
  gap:16px;
  padding:14px 0;
}

.brand{display:flex;align-items:center;gap:12px}
.logo-mark{
  width:44px;height:44px;border-radius:8px;background:linear-gradient(135deg,var(--accent),#d9b07a);
  display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-family:'Playfair Display', serif;font-size:18px;
  box-shadow:0 4px 14px rgba(183,135,75,0.12);
}
.brand-name{display:block;font-family:'Playfair Display',serif;font-size:18px;font-weight:600}
.brand-sub{display:block;font-size:12px;color:var(--muted);margin-top:-4px}

.main-nav{margin-left:auto;display:flex;gap:18px;align-items:center}
.main-nav a{color:var(--text);text-decoration:none;font-weight:500;opacity:0.95}
.main-nav .cta{padding:8px 12px;border-radius:8px;background:var(--paper);box-shadow:0 1px 0 rgba(0,0,0,0.02);border:1px solid rgba(30,26,23,0.05)}
.menu-toggle{display:none;background:none;border:0;font-size:20px;padding:8px;margin-left:8px}

.hero{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  align-items:center;
  gap:20px;
  padding:32px 0 40px;
}
.hero-media img{width:100%;height:420px;object-fit:cover;border-radius:12px;display:block;box-shadow:0 12px 30px rgba(30,26,23,0.08)}
.hero-content{position:relative;margin-top:-120px;background:linear-gradient(180deg,rgba(255,255,255,0.9),rgba(255,255,255,0.82));padding:28px;border-radius:12px;box-shadow:0 8px 30px rgba(30,26,23,0.06)}
.hero-content h1{font-family:'Playfair Display',serif;font-size:28px;margin:0 0 10px}
.lead{color:var(--muted);margin:0 0 14px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600}
.btn.primary{background:var(--accent);color:white;box-shadow:0 6px 18px rgba(183,135,75,0.18)}
.btn.ghost{background:transparent;border:1px solid rgba(30,26,23,0.06);color:var(--text)}

.section{padding:40px 0}
.section-title{font-family:'Playfair Display',serif;font-size:20px;margin:0 0 6px}
.section-intro{color:var(--muted);margin:0 0 18px;max-width:70ch}

.collections-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.card{background:var(--paper);border-radius:12px;overflow:hidden;border:1px solid rgba(30,26,23,0.04);box-shadow:0 8px 20px rgba(30,26,23,0.04)}
.card img{width:100%;height:160px;object-fit:cover;display:block}
.card-body{padding:14px}
.card h3{margin:0 0 6px;font-size:16px}
.card p{margin:0 0 12px;color:var(--muted);font-size:14px}
.card .link{color:var(--accent);text-decoration:none;font-weight:600;font-size:14px}

.split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}
.split .media img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.content .muted{color:var(--muted);margin-top:0;font-size:14px}
.product-detail h3{margin:18px 0 8px}
.product-actions{display:flex;gap:12px;margin-top:14px}

.guide p, .product-detail p{color:var(--muted);max-width:68ch}
.guide h3{margin-top:16px}

.posts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.post{display:flex;gap:12px;background:var(--paper);padding:12px;border-radius:10px;border:1px solid rgba(30,26,23,0.04)}
.post img{width:120px;height:80px;object-fit:cover;border-radius:8px}
.post .excerpt{color:var(--muted);font-size:14px;margin:6px 0}

.custom-list{list-style:none;padding:0;color:var(--muted)}
.custom-list li{padding:10px 0;border-top:1px dashed rgba(30,26,23,0.04)}
.contact .contact-form{display:grid;gap:12px;max-width:600px}
.contact-form label{display:block}
.contact-form input, .contact-form textarea{
  width:100%;padding:10px;border-radius:8px;border:1px solid rgba(30,26,23,0.06);background:linear-gradient(180deg,#fff,#fbfbfb)
}
.label-text{display:block;font-size:13px;margin-bottom:6px;color:var(--muted)}
.form-actions{display:flex;gap:10px;margin-top:6px}
.form-status{margin-top:8px;color:var(--muted);font-size:14px}

.site-footer{padding:18px 0;background:transparent;border-top:1px solid rgba(30,26,23,0.04)}
.footer-inner{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14px;color:var(--muted)}

/* Responsive */
@media (max-width:1000px){
  .collections-grid{grid-template-columns:repeat(2,1fr)}
  .posts-grid{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .hero-media img{height:360px}
  .hero-content{margin-top:-96px}
}
@media (max-width:640px){
  .container{width:calc(100% - 28px)}
  .header-inner{padding:10px 0}
  .main-nav{display:none}
  .menu-toggle{display:block;margin-left:auto}
  .hero-media img{height:260px;border-radius:10px}
  .hero-content{margin-top:-80px;padding:18px}
  .brand-sub{display:none}
  .collections-grid{grid-template-columns:1fr}
  .hero-content h1{font-size:20px}
  .logo-mark{width:40px;height:40px;font-size:16px}
  .site-header{position:fixed;left:0;right:0}
}