/* ============================================================
   MOONLIGHT MAGIC — DARK GOLD THEME
   ============================================================ */
:root {
  --bg:          #0D0D0D;
  --bg2:         #141414;
  --bg3:         #1A1A1A;
  --bg4:         #222222;
  --border:      #2A2A2A;
  --border2:     #333333;
  --gold:        #C9A84C;
  --gold2:       #E2C07A;
  --gold3:       #F5E4B0;
  --gold-dim:    rgba(201,168,76,0.12);
  --gold-glow:   rgba(201,168,76,0.25);
  --text:        #F0EDE8;
  --text2:       #A89F94;
  --text3:       #6B6460;
  --white:       #FFFFFF;
  --red:         #E05C5C;
  --green:       #4DB87A;
  --radius:      10px;
  --radius-lg:   16px;
  --radius-xl:   24px;
  --shadow:      0 4px 24px rgba(0,0,0,0.5);
  --shadow-gold: 0 4px 24px rgba(201,168,76,0.2);
  --transition:  0.2s ease;
}

*,*::before,*::after { box-sizing: border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  font-family: 'DM Sans', sans-serif;
  background: var(--bg);
  color: var(--text);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
img { max-width:100%; display:block; }
a { text-decoration:none; color:inherit; }

/* ── SCROLLBAR ── */
::-webkit-scrollbar { width:6px; height:6px; }
::-webkit-scrollbar-track { background:var(--bg2); }
::-webkit-scrollbar-thumb { background:var(--border2); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:var(--gold); }

/* ── TYPOGRAPHY ── */
.font-display { font-family:'Cormorant Garamond',serif; }

/* ── NAVBAR ── */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:900;
  height:68px;
  background:rgba(13,13,13,0.92);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid transparent;
  transition:border-color var(--transition), box-shadow var(--transition);
}
.navbar.scrolled {
  border-bottom-color:var(--border);
  box-shadow: 0 2px 20px rgba(0,0,0,0.6);
}
.nav-inner {
  max-width:1320px; margin:0 auto;
  height:100%;
  display:flex; align-items:center;
  padding:0 24px; gap:40px;
}
.logo {
  font-family:'Cormorant Garamond',serif;
  font-size:1.45rem; font-weight:600;
  color:var(--white); letter-spacing:0.03em;
  white-space:nowrap; flex-shrink:0;
}
.logo em { color:var(--gold); font-style:normal; }
.nav-links {
  display:flex; gap:28px; list-style:none; margin-left:auto;
}
.nav-links a {
  font-size:0.85rem; font-weight:400; color:var(--text2);
  letter-spacing:0.04em; transition:color var(--transition);
  padding:4px 0;
}
.nav-links a:hover, .nav-links a.active { color:var(--gold); }
.nav-actions { display:flex; align-items:center; gap:16px; margin-left:20px; }
.cart-btn { position:relative; color:var(--text2); transition:color var(--transition); }
.cart-btn:hover { color:var(--gold); }
.cart-count {
  position:absolute; top:-8px; right:-8px;
  background:var(--gold); color:var(--bg);
  font-size:0.6rem; font-weight:700;
  width:17px; height:17px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  opacity:0; transform:scale(0); transition:0.2s;
}
.cart-count.visible { opacity:1; transform:scale(1); }
.nav-toggle {
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer; padding:6px;
}
.nav-toggle span {
  display:block; width:22px; height:1.5px;
  background:var(--text); transition:0.3s;
}
.nav-user-btn {
  display:flex; align-items:center; gap:8px;
  background:var(--bg3); border:1px solid var(--border);
  padding:7px 14px; border-radius:100px;
  font-size:0.8rem; color:var(--text2); cursor:pointer;
  transition:0.2s;
}
.nav-user-btn:hover { border-color:var(--gold); color:var(--gold); }

/* ── BUTTONS ── */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border:none; cursor:pointer; font-family:'DM Sans',sans-serif;
  font-size:0.85rem; font-weight:500; letter-spacing:0.04em;
  padding:12px 28px; border-radius:100px;
  transition:all var(--transition); text-decoration:none;
}
.btn-gold {
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  color:var(--bg);
}
.btn-gold:hover { transform:translateY(-2px); box-shadow:var(--shadow-gold); }
.btn-dark {
  background:var(--bg3); color:var(--text);
  border:1px solid var(--border);
}
.btn-dark:hover { border-color:var(--gold); color:var(--gold); }
.btn-outline-gold {
  background:transparent; color:var(--gold);
  border:1px solid var(--gold);
}
.btn-outline-gold:hover { background:var(--gold-dim); }
.btn-ghost { background:none; color:var(--text2); border:none; padding:8px 0; font-size:0.85rem; }
.btn-ghost:hover { color:var(--gold); }
.btn-sm { padding:8px 18px; font-size:0.78rem; }
.btn-full { width:100%; }
.btn:disabled { opacity:0.5; cursor:not-allowed; transform:none !important; }

/* ── HERO ── */
.hero {
  min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  text-align:center; position:relative; overflow:hidden;
  padding:100px 24px 60px;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background: radial-gradient(ellipse 80% 60% at 50% 20%, rgba(201,168,76,0.08) 0%, transparent 60%),
              radial-gradient(ellipse 60% 40% at 80% 80%, rgba(201,168,76,0.05) 0%, transparent 50%);
}
.hero-stars {
  position:absolute; inset:0; z-index:0;
  background-image:
    radial-gradient(1px 1px at 20% 30%, rgba(201,168,76,0.4) 0%, transparent 100%),
    radial-gradient(1px 1px at 40% 70%, rgba(255,255,255,0.2) 0%, transparent 100%),
    radial-gradient(1px 1px at 60% 20%, rgba(201,168,76,0.3) 0%, transparent 100%),
    radial-gradient(1px 1px at 80% 60%, rgba(255,255,255,0.15) 0%, transparent 100%),
    radial-gradient(1px 1px at 10% 80%, rgba(201,168,76,0.2) 0%, transparent 100%),
    radial-gradient(1px 1px at 90% 10%, rgba(255,255,255,0.1) 0%, transparent 100%);
  background-size:400px 400px;
}
.hero-content { position:relative; z-index:1; max-width:760px; }
.hero-eyebrow {
  font-size:0.72rem; letter-spacing:0.2em; color:var(--gold);
  font-weight:500; text-transform:uppercase; margin-bottom:24px;
  animation:fadeUp 0.7s ease both;
}
.hero-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,7vw,5.5rem);
  font-weight:300; line-height:1.1; color:var(--white);
  margin-bottom:24px;
  animation:fadeUp 0.7s 0.1s ease both;
}
.hero-title em { font-style:italic; color:var(--gold); }
.hero-sub {
  font-size:1rem; color:var(--text2); line-height:1.7;
  margin-bottom:40px; font-weight:300;
  animation:fadeUp 0.7s 0.2s ease both;
}
.hero-cta {
  display:flex; gap:16px; justify-content:center;
  flex-wrap:wrap; animation:fadeUp 0.7s 0.3s ease both;
}
.hero-scroll {
  position:absolute; bottom:32px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:10px;
  color:var(--text3); font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase;
  animation:fadeIn 1s 1s ease both;
}
.hero-scroll-line {
  width:1px; height:40px;
  background:linear-gradient(to bottom, var(--gold), transparent);
  animation:scrollPulse 1.5s ease-in-out infinite;
}
@keyframes scrollPulse { 0%,100%{opacity:1;height:40px} 50%{opacity:0.4;height:24px} }
@keyframes fadeUp { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeIn { from{opacity:0} to{opacity:1} }

/* ── FEATURE BAR ── */
.feature-bar {
  background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  padding:18px 24px;
  display:flex; justify-content:center; gap:48px; flex-wrap:wrap;
}
.feature-item {
  display:flex; align-items:center; gap:10px;
  font-size:0.78rem; color:var(--text2); letter-spacing:0.05em;
}
.feature-item svg { color:var(--gold); flex-shrink:0; }

/* ── SECTIONS ── */
.section { padding:80px 24px; }
.section-inner { max-width:1320px; margin:0 auto; }
.section-header { text-align:center; margin-bottom:56px; }
.eyebrow {
  display:block; font-size:0.7rem; letter-spacing:0.2em;
  text-transform:uppercase; color:var(--gold); font-weight:500; margin-bottom:14px;
}
.section-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.8rem,3.5vw,2.8rem); font-weight:300; color:var(--white);
}

/* ── PRODUCT GRID ── */
.products-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:20px;
}
.product-card {
  background:var(--bg2); border:1px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden; cursor:pointer;
  transition:transform 0.3s, border-color 0.3s, box-shadow 0.3s;
}
.product-card:hover {
  transform:translateY(-6px);
  border-color:var(--gold);
  box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 0 1px var(--gold-dim);
}
.product-img {
  height:240px; background:var(--bg3);
  display:flex; align-items:center; justify-content:center;
  font-size:4rem; position:relative; overflow:hidden;
}
.product-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s; }
.product-card:hover .product-img img { transform:scale(1.05); }
.product-badge {
  position:absolute; top:12px; left:12px;
  background:var(--gold); color:var(--bg);
  font-size:0.62rem; font-weight:700; letter-spacing:0.08em;
  padding:4px 10px; border-radius:100px; text-transform:uppercase;
}
.product-badge.dark { background:var(--bg); color:var(--gold); border:1px solid var(--gold); }
.product-info { padding:18px; }
.product-cat { font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); margin-bottom:6px; }
.product-title { font-family:'Cormorant Garamond',serif; font-size:1.15rem; color:var(--white); margin-bottom:6px; }
.product-desc { font-size:0.78rem; color:var(--text2); line-height:1.5; margin-bottom:14px; }
.product-footer { display:flex; align-items:center; justify-content:space-between; }
.product-price { font-family:'Cormorant Garamond',serif; font-size:1.25rem; color:var(--white); font-weight:600; }
.product-price .orig { font-size:0.85rem; color:var(--text3); text-decoration:line-through; margin-right:6px; font-weight:300; }
.add-cart-btn {
  width:36px; height:36px; border-radius:50%;
  background:var(--gold-dim); border:1px solid var(--gold);
  color:var(--gold); cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:0.2s; flex-shrink:0;
}
.add-cart-btn:hover { background:var(--gold); color:var(--bg); }

/* ── PROCESS ── */
.process-wrap {
  background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-xl);
  padding:48px; display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  position:relative;
}
.process-step { text-align:center; padding:24px 32px; position:relative; }
.process-step:not(:last-child)::after {
  content:''; position:absolute; right:0; top:32px;
  width:1px; height:40px; background:var(--border);
}
.step-num {
  font-family:'Cormorant Garamond',serif; font-size:3rem; font-weight:300;
  color:var(--gold); opacity:0.5; line-height:1; margin-bottom:12px;
}
.process-step h3 { font-family:'Cormorant Garamond',serif; font-size:1.15rem; color:var(--white); margin-bottom:8px; }
.process-step p { font-size:0.82rem; color:var(--text2); line-height:1.6; }

/* ── TESTIMONIALS ── */
.testimonials-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:20px; }
.testimonial-card {
  background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px;
  transition:border-color 0.3s;
}
.testimonial-card:hover { border-color:var(--gold); }
.testimonial-card.featured {
  background:linear-gradient(135deg,rgba(201,168,76,0.1),rgba(201,168,76,0.05));
  border-color:var(--gold);
}
.t-stars { color:var(--gold); margin-bottom:14px; font-size:0.85rem; letter-spacing:2px; }
.t-text { font-size:0.88rem; color:var(--text2); line-height:1.7; margin-bottom:20px; font-style:italic; }
.t-author { display:flex; align-items:center; gap:10px; }
.t-avatar {
  width:38px; height:38px; border-radius:50%;
  background:var(--gold-dim); border:1px solid var(--gold);
  display:flex; align-items:center; justify-content:center;
  font-family:'Cormorant Garamond',serif; font-size:1rem; color:var(--gold); font-weight:600;
}
.t-author strong { display:block; font-size:0.85rem; color:var(--white); }
.t-author span { font-size:0.72rem; color:var(--text3); }

/* ── CTA SECTION ── */
.cta-section {
  background:linear-gradient(135deg,var(--bg2),var(--bg3));
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  text-align:center; padding:80px 24px;
  position:relative; overflow:hidden;
}
.cta-section::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at center, rgba(201,168,76,0.08) 0%, transparent 70%);
}
.cta-section .inner { position:relative; z-index:1; max-width:560px; margin:0 auto; }
.cta-section h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,4vw,2.8rem); font-weight:300; color:var(--white); margin-bottom:14px; }
.cta-section p { color:var(--text2); margin-bottom:32px; }

/* ── FOOTER ── */
.footer {
  background:var(--bg); border-top:1px solid var(--border);
  padding:64px 24px 32px;
}
.footer-grid {
  max-width:1320px; margin:0 auto;
  display:grid; grid-template-columns:2fr 1fr 1fr 2fr; gap:48px;
  padding-bottom:48px; border-bottom:1px solid var(--border);
}
.footer-brand .logo { font-size:1.4rem; display:inline-block; margin-bottom:14px; }
.footer-brand p { font-size:0.8rem; color:var(--text2); line-height:1.6; margin-bottom:20px; }
.footer-col h4 { font-size:0.65rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); margin-bottom:16px; font-weight:600; }
.footer-col ul { list-style:none; }
.footer-col li { margin-bottom:8px; }
.footer-col a { font-size:0.82rem; color:var(--text2); transition:color 0.2s; }
.footer-col a:hover { color:var(--gold); }
.newsletter-form { display:flex; }
.newsletter-form input {
  flex:1; padding:10px 14px; background:var(--bg3); border:1px solid var(--border);
  border-right:none; border-radius:8px 0 0 8px; color:var(--text);
  font-family:inherit; font-size:0.82rem; outline:none; transition:0.2s;
}
.newsletter-form input::placeholder { color:var(--text3); }
.newsletter-form input:focus { border-color:var(--gold); }
.newsletter-form button {
  padding:10px 18px; background:var(--gold); color:var(--bg);
  border:none; border-radius:0 8px 8px 0; cursor:pointer; font-size:0.9rem; transition:0.2s;
}
.newsletter-form button:hover { background:var(--gold2); }
.wa-btn {
  display:inline-flex; align-items:center; gap:8px;
  background:#25D366; color:white; padding:10px 20px;
  border-radius:100px; font-size:0.78rem; font-weight:500;
  transition:0.2s;
}
.wa-btn:hover { background:#20BA5A; transform:translateY(-2px); }
.footer-bottom {
  max-width:1320px; margin:0 auto; padding-top:24px;
  display:flex; justify-content:space-between; align-items:center;
  font-size:0.72rem; color:var(--text3); flex-wrap:wrap; gap:8px;
}

/* ── PAGE HERO ── */
.page-hero {
  padding:120px 24px 48px;
  text-align:center;
  background:linear-gradient(180deg, rgba(201,168,76,0.05) 0%, transparent 100%);
  border-bottom:1px solid var(--border);
}
.page-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,5vw,3.5rem); font-weight:300; color:var(--white); margin-bottom:10px; }
.page-hero p { font-size:0.9rem; color:var(--text2); }

/* ── SHOP LAYOUT ── */
.shop-wrap { max-width:1320px; margin:0 auto; padding:40px 24px; display:grid; grid-template-columns:240px 1fr; gap:36px; align-items:start; }
.filters-panel { background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-lg); padding:24px; position:sticky; top:84px; }
.filter-title { font-size:0.65rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); font-weight:600; margin-bottom:14px; }
.filter-group { margin-bottom:28px; }
.filter-check { display:flex; align-items:center; gap:10px; margin-bottom:9px; cursor:pointer; }
.filter-check input { accent-color:var(--gold); width:15px; height:15px; flex-shrink:0; }
.filter-check span { font-size:0.82rem; color:var(--text2); }
.filter-check span small { color:var(--text3); }
.price-inputs { display:flex; gap:8px; align-items:center; }
.price-inputs input {
  width:80px; padding:8px 10px; background:var(--bg3); border:1px solid var(--border);
  border-radius:8px; color:var(--text); font-size:0.82rem; font-family:inherit; outline:none; transition:0.2s;
}
.price-inputs input:focus { border-color:var(--gold); }
.filters-mobile-btn {
  display:none; align-items:center; gap:8px;
  background:var(--bg2); border:1px solid var(--border); color:var(--text);
  padding:10px 18px; border-radius:8px; cursor:pointer; font-size:0.85rem; font-family:inherit;
  margin-bottom:16px; width:100%;
}
.sort-bar { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; flex-wrap:wrap; gap:10px; }
.sort-bar span { font-size:0.82rem; color:var(--text3); }
.select-input {
  padding:8px 12px; background:var(--bg2); border:1px solid var(--border);
  border-radius:8px; color:var(--text); font-size:0.82rem; font-family:inherit; outline:none; cursor:pointer;
}
.select-input:focus { border-color:var(--gold); }
.select-input option { background:var(--bg2); }

/* ── FORMS ── */
.form-group { margin-bottom:18px; }
.form-group label { display:block; font-size:0.75rem; font-weight:500; color:var(--text2); margin-bottom:7px; letter-spacing:0.03em; }
.form-input {
  width:100%; padding:11px 14px;
  background:var(--bg3); border:1px solid var(--border);
  border-radius:var(--radius); color:var(--text);
  font-family:inherit; font-size:0.875rem; outline:none; transition:0.2s;
}
.form-input:focus { border-color:var(--gold); background:var(--bg4); }
.form-input::placeholder { color:var(--text3); }
.form-select {
  width:100%; padding:11px 14px;
  background:var(--bg3); border:1px solid var(--border);
  border-radius:var(--radius); color:var(--text);
  font-family:inherit; font-size:0.875rem; outline:none; cursor:pointer; transition:0.2s;
}
.form-select:focus { border-color:var(--gold); }
.form-select option { background:var(--bg3); }
.form-textarea {
  width:100%; padding:11px 14px; background:var(--bg3); border:1px solid var(--border);
  border-radius:var(--radius); color:var(--text); font-family:inherit; font-size:0.875rem;
  outline:none; resize:vertical; min-height:80px; transition:0.2s;
}
.form-textarea:focus { border-color:var(--gold); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.req { color:var(--gold); }
.input-error { border-color:var(--red) !important; }
.error-msg { font-size:0.72rem; color:var(--red); margin-top:5px; }
.form-check { display:flex; align-items:flex-start; gap:12px; padding:14px; background:var(--bg3); border:1px solid var(--border); border-radius:var(--radius); margin-bottom:10px; cursor:pointer; transition:0.2s; }
.form-check:hover { border-color:var(--gold); }
.form-check input { accent-color:var(--gold); margin-top:2px; flex-shrink:0; }
.form-check strong { display:block; font-size:0.85rem; color:var(--white); margin-bottom:2px; }
.form-check span { font-size:0.75rem; color:var(--text2); line-height:1.4; }

/* ── UPLOAD ZONE ── */
.upload-zone {
  border:2px dashed var(--border); border-radius:var(--radius);
  padding:28px 20px; text-align:center; cursor:pointer;
  transition:0.2s; background:var(--bg3);
}
.upload-zone:hover, .upload-zone.drag-over { border-color:var(--gold); background:var(--gold-dim); }
.upload-zone svg { color:var(--text3); margin:0 auto 10px; }
.upload-zone p { font-size:0.82rem; color:var(--text2); }
.upload-zone strong { color:var(--gold); }
.upload-zone small { font-size:0.72rem; color:var(--text3); }
.upload-preview { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.preview-img { width:68px; height:68px; border-radius:8px; object-fit:cover; border:1px solid var(--border); }
.preview-more { width:68px; height:68px; border-radius:8px; background:var(--bg4); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:0.72rem; color:var(--text3); }

/* ── CART / CHECKOUT ── */
.cart-page-wrap { max-width:1100px; margin:0 auto; padding:100px 24px 60px; }
.cart-item { display:flex; gap:16px; align-items:flex-start; padding:18px 0; border-bottom:1px solid var(--border); }
.cart-emoji { width:72px; height:72px; border-radius:var(--radius); background:var(--bg3); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:1.8rem; flex-shrink:0; }
.cart-info { flex:1; min-width:0; }
.cart-info h3 { font-family:'Cormorant Garamond',serif; font-size:1.1rem; color:var(--white); margin-bottom:4px; }
.cart-info p { font-size:0.75rem; color:var(--text3); margin-bottom:10px; }
.qty-ctrl { display:inline-flex; align-items:center; border:1px solid var(--border); border-radius:100px; overflow:hidden; }
.qty-ctrl button { width:34px; height:34px; background:none; border:none; color:var(--text2); cursor:pointer; font-size:1rem; transition:0.2s; }
.qty-ctrl button:hover { background:var(--gold-dim); color:var(--gold); }
.qty-ctrl span { min-width:30px; text-align:center; font-size:0.85rem; color:var(--text); }
.cart-price { font-family:'Cormorant Garamond',serif; font-size:1.2rem; color:var(--white); font-weight:600; flex-shrink:0; }
.remove-btn { background:none; border:none; color:var(--text3); cursor:pointer; font-size:0.72rem; margin-top:6px; transition:0.2s; }
.remove-btn:hover { color:var(--red); }
.order-summary-box { background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-lg); padding:24px; position:sticky; top:84px; }
.order-summary-box h3 { font-family:'Cormorant Garamond',serif; font-size:1.2rem; color:var(--white); margin-bottom:20px; }
.sum-row { display:flex; justify-content:space-between; font-size:0.85rem; color:var(--text2); margin-bottom:8px; }
.sum-row.total { font-size:1rem; color:var(--white); font-weight:600; margin-top:12px; padding-top:12px; border-top:1px solid var(--border); }
.sum-row.total .price { font-family:'Cormorant Garamond',serif; font-size:1.3rem; color:var(--gold); }
.promo-row { display:flex; gap:0; margin-bottom:16px; }
.promo-row input { flex:1; padding:10px 13px; background:var(--bg3); border:1px solid var(--border); border-right:none; border-radius:8px 0 0 8px; color:var(--text); font-family:inherit; font-size:0.82rem; outline:none; transition:0.2s; text-transform:uppercase; }
.promo-row input:focus { border-color:var(--gold); }
.promo-row button { padding:10px 16px; background:var(--gold); color:var(--bg); border:none; border-radius:0 8px 8px 0; cursor:pointer; font-size:0.82rem; font-family:inherit; font-weight:600; transition:0.2s; }
.promo-row button:hover { background:var(--gold2); }

/* ── ORDER TRACKING ── */
.track-wrap { max-width:580px; margin:0 auto; padding:120px 24px 60px; text-align:center; }
.track-icon { width:72px; height:72px; border-radius:50%; background:var(--gold-dim); border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; margin:0 auto 24px; font-size:1.8rem; }
.track-box { background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px; margin-top:28px; text-align:left; }
.track-box h2 { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:300; color:var(--white); margin-bottom:6px; }
.track-box p { font-size:0.82rem; color:var(--text2); margin-bottom:20px; }
.status-timeline { margin-top:24px; }
.status-step { display:flex; gap:14px; align-items:flex-start; margin-bottom:20px; position:relative; }
.status-step:not(:last-child)::after { content:''; position:absolute; left:15px; top:34px; width:1px; height:calc(100%); background:var(--border); }
.s-dot { width:30px; height:30px; border-radius:50%; background:var(--bg4); border:1px solid var(--border); flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:0.72rem; color:var(--text3); position:relative; z-index:1; }
.s-dot.done { background:var(--gold); border-color:var(--gold); color:var(--bg); font-size:0.7rem; }
.s-dot.active { background:var(--gold-dim); border-color:var(--gold); color:var(--gold); box-shadow:0 0 0 3px rgba(201,168,76,0.15); }
.s-info strong { display:block; font-size:0.85rem; color:var(--white); margin-bottom:2px; }
.s-info span { font-size:0.75rem; color:var(--text3); }
.order-id-card { background:var(--gold-dim); border:1px solid var(--gold); border-radius:var(--radius); padding:16px 24px; margin:20px 0; display:inline-block; }
.order-id-card small { display:block; font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
.order-id-card span { font-family:'Cormorant Garamond',serif; font-size:1.8rem; color:var(--white); font-weight:600; letter-spacing:0.06em; }

/* ── CONFIRMATION ── */
.confirm-wrap { max-width:560px; margin:0 auto; padding:120px 24px 60px; text-align:center; }
.confirm-icon { width:80px; height:80px; border-radius:50%; background:var(--gold-dim); border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; margin:0 auto 24px; font-size:2rem; box-shadow:var(--shadow-gold); }
.confirm-wrap h1 { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:300; color:var(--white); margin-bottom:10px; }
.confirm-wrap > p { color:var(--text2); line-height:1.6; margin-bottom:20px; }

/* ── USER DASHBOARD ── */
.dashboard-wrap { max-width:1000px; margin:0 auto; padding:100px 24px 60px; }
.dashboard-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:32px; flex-wrap:wrap; gap:12px; }
.dashboard-header h1 { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:300; color:var(--white); }
.order-card { background:var(--bg2); border:1px solid var(--border); border-radius:var(--radius-lg); padding:22px; margin-bottom:16px; transition:border-color 0.2s; }
.order-card:hover { border-color:var(--gold); }
.order-card-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; flex-wrap:wrap; gap:8px; }
.order-card-id { font-family:monospace; font-size:0.88rem; color:var(--gold); font-weight:700; }
.order-card-date { font-size:0.75rem; color:var(--text3); }
.order-card-items { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.order-card-item { background:var(--bg3); border:1px solid var(--border); border-radius:8px; padding:6px 10px; font-size:0.78rem; color:var(--text2); }
.order-card-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; }
.order-card-total { font-family:'Cormorant Garamond',serif; font-size:1.2rem; color:var(--white); font-weight:600; }

/* ── TOAST ── */
.toast-wrap { position:fixed; bottom:24px; right:24px; z-index:9999; display:flex; flex-direction:column; gap:8px; pointer-events:none; }
.toast {
  background:var(--bg2); border:1px solid var(--border);
  color:var(--text); padding:12px 18px; border-radius:10px;
  font-size:0.82rem; box-shadow:var(--shadow);
  animation:slideIn 0.3s ease; pointer-events:all;
  display:flex; align-items:center; gap:10px; max-width:320px;
}
.toast.success { border-left:3px solid var(--green); }
.toast.error   { border-left:3px solid var(--red); }
.toast.info    { border-left:3px solid var(--gold); }
@keyframes slideIn { from{transform:translateX(20px);opacity:0} to{transform:translateX(0);opacity:1} }

/* ── MISC ── */
.divider { border:none; border-top:1px solid var(--border); margin:28px 0; }
.spin { display:inline-block; width:18px; height:18px; border:2px solid var(--border); border-top-color:var(--gold); border-radius:50%; animation:spin 0.7s linear infinite; }
@keyframes spin { to{transform:rotate(360deg)} }
.tag { display:inline-block; padding:3px 10px; background:var(--gold-dim); color:var(--gold); border-radius:100px; font-size:0.7rem; font-weight:600; letter-spacing:0.06em; }
.empty-state { text-align:center; padding:60px 20px; color:var(--text3); }
.empty-state .icon { font-size:3rem; margin-bottom:14px; opacity:0.4; }
.empty-state p { font-size:0.9rem; }

/* ══ RESPONSIVE ════════════════════════════════════════════════ */
@media (max-width:1024px) {
  .footer-grid { grid-template-columns:1fr 1fr; }
  .process-wrap { grid-template-columns:1fr; }
  .process-step:not(:last-child)::after { right:auto; left:50%; top:auto; bottom:0; width:40%; height:1px; transform:translateX(-50%); }
}

@media (max-width:768px) {
  .nav-links { display:none; flex-direction:column; position:absolute; top:68px; left:0; right:0; background:rgba(13,13,13,0.98); border-bottom:1px solid var(--border); padding:16px; gap:0; }
  .nav-links.open { display:flex; }
  .nav-links a { padding:12px 16px; border-radius:8px; font-size:0.9rem; }
  .nav-toggle { display:flex; }
  .shop-wrap { grid-template-columns:1fr; }
  .filters-panel { display:none; position:fixed; inset:0; z-index:800; border-radius:0; overflow-y:auto; top:auto; bottom:0; height:80vh; border-top-left-radius:20px; border-top-right-radius:20px; border:1px solid var(--border); }
  .filters-panel.open { display:block; }
  .filters-mobile-btn { display:flex; }
  .form-row { grid-template-columns:1fr; }
  .feature-bar { gap:20px; padding:16px; }
  .feature-item span { font-size:0.72rem; }
  .process-wrap { padding:28px; }
  .footer-grid { grid-template-columns:1fr; gap:28px; }
  .checkout-grid { grid-template-columns:1fr !important; }
  .hero-title { font-size:2.4rem; }
  .products-grid { grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:14px; }
  .product-img { height:180px; font-size:2.8rem; }
  .cart-page-wrap { padding:88px 16px 40px; }
  .track-wrap { padding:100px 16px 40px; }
  .confirm-wrap { padding:100px 16px 40px; }
  .dashboard-wrap { padding:88px 16px 40px; }
}

@media (max-width:480px) {
  .section { padding:48px 16px; }
  .hero { padding:88px 16px 48px; }
  .hero-cta { flex-direction:column; align-items:center; }
  .testimonials-grid { grid-template-columns:1fr; }
}
