:root{
  --ss-ivory:#FFF0F0;
  --ss-blush:#D9C0BB;
  --ss-rose:#E1C0C0;
  --ss-taupe:#A59082;
  --ss-espresso:#52463E;
  --ss-gold:#C7A24A; /* satin gold */
  --ss-line:1px solid rgba(165,144,130,.22);
  --ss-radius:18px;
  --ss-shadow:0 18px 55px rgba(82,70,62,.12);
}

.ssp-wrap{
  background: radial-gradient(900px 420px at 50% -160px, rgba(225,192,192,.55), transparent 60%),
              linear-gradient(180deg, var(--ss-ivory), #fff 65%);
  color: var(--ss-espresso);
  font-family: ui-serif, Georgia, "Times New Roman", serif;
}

.ssp a{ color: inherit; text-decoration: none; }
.ssp a:hover{ text-decoration: underline; }

.ssp-container{ max-width: 1180px; margin: 0 auto; padding: 0 20px; }
.ssp-topbar{
  position: sticky; top:0; z-index: 50;
  background: rgba(255,240,240,.86);
  backdrop-filter: blur(8px);
  border-bottom: var(--ss-line);
}
.ssp-nav{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding: 14px 0; }
.ssp-brand{ display:flex; align-items:center; gap:12px; min-width: 220px; }
.ssp-brand img{ width:44px; height:44px; border-radius: 50%; border:1px solid rgba(199,162,74,.55); object-fit:cover; }
.ssp-brand strong{ display:block; font-size: 16px; letter-spacing:.2px; }
.ssp-brand span{ display:block; font-size: 12px; color: rgba(82,70,62,.75); margin-top:2px; }
.ssp-menu{ display:flex; gap:16px; flex-wrap:wrap; justify-content:center; }
.ssp-menu a{ font-size:14px; color: rgba(82,70,62,.82); padding: 8px 10px; border-radius: 999px; }
.ssp-menu a:hover{ background: rgba(225,192,192,.26); text-decoration:none; color: var(--ss-espresso); }

.ssp-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius: 999px;
  padding: 11px 16px;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid rgba(199,162,74,.9);
  background: rgba(199,162,74,.12);
}
.ssp-btn.primary{
  background: linear-gradient(180deg, rgba(199,162,74,.22), rgba(199,162,74,.10));
  box-shadow: 0 16px 45px rgba(82,70,62,.18);
}

.ssp-hero{ padding: 64px 0 34px; }
.ssp-hero-grid{ display:grid; grid-template-columns: 1.2fr .8fr; gap: 28px; align-items:center; }
@media(max-width: 920px){ .ssp-hero-grid{ grid-template-columns: 1fr; } }
.ssp-kicker{ font-size:12px; letter-spacing:.24em; text-transform: uppercase; color: rgba(82,70,62,.75); }
.ssp-h1{ margin: 12px 0 12px; font-size: clamp(30px, 4vw, 46px); font-weight: 650; line-height: 1.08; }
.ssp-lead{ font-size:16px; line-height:1.65; color: rgba(82,70,62,.86); max-width: 64ch; }
.ssp-actions{ margin-top: 18px; display:flex; gap:12px; flex-wrap:wrap; }
.ssp-micro{ margin-top: 12px; font-size: 13px; color: rgba(82,70,62,.7); }

.ssp-hero-media{
  border-radius: var(--ss-radius);
  border: var(--ss-line);
  box-shadow: var(--ss-shadow);
  overflow:hidden;
  background: #fff;
}
.ssp-hero-media img{ width:100%; height: 360px; object-fit: cover; display:block; }
@media(max-width: 920px){ .ssp-hero-media img{ height: 280px; } }

.ssp-section{ padding: 54px 0; }
.ssp-section h2{ font-size: 30px; margin: 0 0 14px; }
.ssp-text{ margin: 0 0 14px; color: rgba(82,70,62,.86); line-height:1.75; max-width: 78ch; }

.ssp-grid3{ display:grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
@media(max-width: 920px){ .ssp-grid3{ grid-template-columns: 1fr; } }

.ssp-card{
  background: rgba(255,255,255,.92);
  border: var(--ss-line);
  border-radius: var(--ss-radius);
  padding: 18px;
  box-shadow: 0 10px 25px rgba(82,70,62,.06);
}
.ssp-card h3{ margin: 0 0 6px; font-size: 18px; }
.ssp-card p{ margin:0; color: rgba(82,70,62,.82); line-height: 1.7; }

.ssp-pack-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 14px; }
@media(max-width: 980px){ .ssp-pack-grid{ grid-template-columns: 1fr; } }
.ssp-pack{
  background:#fff;
  border: var(--ss-line);
  border-radius: 20px;
  overflow:hidden;
  box-shadow: 0 12px 30px rgba(82,70,62,.07);
}
.ssp-pack img{ width:100%; height: 220px; object-fit: cover; display:block; }
.ssp-pack-body{ padding: 16px; }
.ssp-pill{
  display:inline-block; font-size: 13px; padding: 6px 10px; border-radius: 999px;
  background: rgba(217,192,187,.32); border: 1px solid rgba(199,162,74,.35); margin-bottom: 10px;
}
.ssp-pack-body h3{ margin: 0 0 6px; }
.ssp-pack-body p{ margin: 0 0 12px; color: rgba(82,70,62,.84); line-height: 1.65; }

.ssp-gallery{ display:grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
@media(max-width: 980px){ .ssp-gallery{ grid-template-columns: 1fr; } }
.ssp-gallery img{
  width:100%; height: 260px; object-fit: cover;
  border-radius: 16px; border: var(--ss-line); box-shadow: 0 10px 25px rgba(82,70,62,.08);
}

.ssp-legal{
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(199,162,74,.65);
  color: rgba(82,70,62,.78);
  font-size: 13px;
  line-height: 1.7;
}

/* WooCommerce product page polish */
.woocommerce div.product div.images img{
  border-radius: 10px !important;
  border: 1px solid rgba(165,144,130,.22) !important;
}
.woocommerce div.product p.price{ font-size: 20px; color: var(--ss-espresso); }
.woocommerce div.product .product_title{ font-family: ui-serif, Georgia, serif; letter-spacing:.2px; }
.woocommerce div.product .button, .woocommerce a.button, .woocommerce button.button{
  border-radius: 999px !important;
  border: 1px solid rgba(199,162,74,.95) !important;
  background: rgba(199,162,74,.12) !important;
  color: var(--ss-espresso) !important;
  font-weight: 700 !important;
}
