/* ============================================================
   AIDA Fashion - Leather Brand Theme
   ============================================================ */
* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; }

:root {
  --leather-deep: #3b2416;
  --leather-mid: #6b3f24;
  --leather-soft: #8f5a34;
  --leather-light: #f8efe3;
  --charcoal: #2b2019;
  --charcoal-alt: #1a130f;
  --gold: #d4af37;
  --gold-soft: rgba(212,175,55,0.35);
  --gold-light: #f4d77a;
  --text-main: #231814;
  --text-muted: #7a6a5d;
  --text-light: #f5e9da;
  --border-light: rgba(140,90,51,0.1);
  --shadow-sm: 0 4px 12px rgba(80,48,27,0.1);
  --shadow-md: 0 8px 24px rgba(80,48,27,0.15);
  --shadow-lg: 0 16px 40px rgba(80,48,27,0.2);
}

body {
  font-family: 'Montserrat', -apple-system, sans-serif;
  background: radial-gradient(circle at top left,#f6eadc 0,#e1c6aa 45%,#c0905c 100%);
  color: var(--text-main);
  padding-top: 82px;
  line-height: 1.6;
  font-size: 0.95rem;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

h1,h2,h3,h4,h5,h6 { font-family:'Playfair Display',serif; color:var(--charcoal); font-weight:700; }
p { font-family:'Lora',serif; }
a { color:var(--gold); text-decoration:none; transition:color .3s; }
a:hover { color:var(--gold-light); }

/* ---- NAVBAR ---- */
.bg-deep-brown-gradient { background-image:linear-gradient(120deg,var(--leather-deep),var(--leather-mid)); }
.navbar-dark .nav-link { color:#f5e9da; font-size:.9rem; font-weight:500; padding-bottom:8px; position:relative; display:flex; align-items:center; transition:all .3s; }
.navbar-dark .nav-link:hover,.navbar-dark .nav-link.active { color:var(--gold); }
.navbar-dark .nav-link::after { content:''; position:absolute; bottom:0; left:0; width:0; height:2px; background:var(--gold); transition:width .3s; }
.navbar-dark .nav-link:hover::after { width:100%; }
.navbar-dark .dropdown-toggle::after { display:none !important; }
.logo-mark { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; border:2px solid var(--gold); color:var(--gold); font-weight:700; font-size:.9rem; background:rgba(212,175,55,.08); transition:all .3s; }
.logo-text { font-weight:700; letter-spacing:.18em; text-transform:uppercase; font-size:.85rem; font-family:'Playfair Display',serif; color:var(--text-light); }
.dropdown-menu-leather { background:var(--charcoal); border:1px solid rgba(212,175,55,.2); border-radius:12px; box-shadow:0 12px 32px rgba(0,0,0,.3); }
.dropdown-menu-leather .dropdown-item { color:var(--text-light); transition:all .3s; padding:.7rem 1rem; border-left:3px solid transparent; }
.dropdown-menu-leather .dropdown-item:hover { background:rgba(212,175,55,.1); border-left-color:var(--gold); color:var(--gold); padding-left:1.2rem; }
.icon-link { color:var(--text-light); font-size:1.2rem; transition:color .3s; }
.icon-link:hover { color:var(--gold); }
.cart-count { position:absolute; top:-8px; right:-8px; background:var(--gold); color:#000; border-radius:50%; width:18px; height:18px; font-size:.65rem; font-weight:700; display:flex; align-items:center; justify-content:center; }

/* ---- BUTTONS ---- */
.btn-gold { background:linear-gradient(135deg,var(--gold),var(--gold-light)); color:#1a130f; border:none; font-weight:600; letter-spacing:.03em; transition:all .3s; }
.btn-gold:hover { background:linear-gradient(135deg,#c49b2a,var(--gold)); transform:translateY(-2px); box-shadow:0 6px 20px rgba(212,175,55,.35); color:#1a130f; }
.btn-outline-gold { border:1.5px solid var(--gold); color:var(--gold); background:transparent; font-weight:600; transition:all .3s; }
.btn-outline-gold:hover { background:var(--gold); color:#1a130f; }
.btn-hover-lift:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }

/* ---- HERO ---- */
.lc-hero-slider { display:block; position:relative; width:100%; margin:0; padding:0; }
.lc-hero-slider .carousel { width:100%; height:auto; }
.lc-hero-slider .carousel-inner { width:100%; }
.lc-hero-slider .carousel-item { min-height:560px; display:flex; align-items:center; }
.lc-hero-slider .carousel-item img { width:100%; height:auto; display:block; }
.lc-hero { min-height:560px; background-size:cover; background-position:center; position:relative; display:flex; align-items:center; width:100%; }
.lc-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(27,17,11,.85) 40%,rgba(27,17,11,.3)); }
.lc-hero .container { position:relative; z-index:2; }
.hero-kicker { font-size:.75rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:700; margin-bottom:.5rem; }
.text-gradient-gold { background:linear-gradient(135deg,var(--gold),var(--gold-light)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:800; }

/* ---- SECTIONS ---- */
.section-kicker { font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:700; }
.section-heading { color:var(--charcoal); font-family:'Playfair Display',serif; }
.link-gold { color:var(--gold); font-weight:600; font-size:.9rem; }
.link-gold:hover { color:var(--gold-light); }
.py-6 { padding-top:4rem !important; padding-bottom:4rem !important; }
.bg-leather-soft { background:linear-gradient(135deg,#f4e4cf,#e3c3a2); }
.bg-leather-light { background:linear-gradient(135deg,#fdf6ed,#f8ede5); }

/* ---- CATEGORY CARDS ---- */
.category-card { display:block; position:relative; border-radius:16px; overflow:hidden; height:220px; background-size:cover; background-position:center; box-shadow:var(--shadow-sm); transition:transform .3s,box-shadow .3s; text-decoration:none; }
.category-card:hover { transform:scale(1.03); box-shadow:var(--shadow-md); }
.category-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(27,17,11,.8),rgba(27,17,11,.1)); display:flex; flex-direction:column; justify-content:flex-end; padding:1.25rem; }
.category-overlay h5 { color:#fff; margin:0; font-family:'Playfair Display',serif; }
.category-overlay span { color:rgba(255,255,255,.7); font-size:.8rem; }

/* ---- PRODUCT CARDS ---- */
.product-card { background:#fffaf4; border-radius:16px; overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .3s,box-shadow .3s; }
.product-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-md); }
.product-image-wrapper { padding:1rem; }
.product-image { width:100%; height:200px; background-size:cover; background-position:center; border-radius:10px; margin-bottom:.75rem; background-color:#e8d5bc; display:flex; align-items:center; justify-content:center; }
.product-image i { font-size:3rem; color:var(--leather-soft); opacity:.4; }
.product-img { width:100%; height:200px; object-fit:cover; border-radius:10px; margin-bottom:.75rem; display:block; }
.product-badge { display:inline-flex; align-items:center; gap:4px; font-size:.7rem; font-weight:700; padding:4px 10px; border-radius:999px; margin-bottom:.5rem; }
.badge-bestseller { background:rgba(212,175,55,.15); color:var(--gold); border:1px solid rgba(212,175,55,.3); }
.badge-new { background:rgba(34,139,34,.1); color:#228b22; border:1px solid rgba(34,139,34,.25); }
.badge-sale { background:rgba(139,58,58,.1); color:#8b3a3a; border:1px solid rgba(139,58,58,.25); }
.product-rating { font-size:.8rem; color:var(--gold); }
.product-price { font-family:'Playfair Display',serif; font-size:1.1rem; font-weight:700; color:var(--gold); margin:0; }
.btn-group-actions { display:flex; gap:8px; }
.btn-group-actions .btn-gold { flex:1; font-size:.8rem; padding:.45rem .75rem; border-radius:8px; }
.btn-wishlist { width:38px; border-radius:8px !important; flex-shrink:0; }

/* ---- PAGE ---- */
.page-main { min-height:calc(100vh - 82px - 280px); background:#fff9f0; border-radius:24px; box-shadow:var(--shadow-lg); margin-top:1.5rem; margin-bottom:2rem; }
.form-control:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(212,175,55,.18); }
.text-gold { color:var(--gold) !important; }
.filter-card { background:#fffaf4; border:1px solid var(--border-light); }
.filter-title { font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:var(--text-muted); margin-bottom:.5rem; margin-top:1rem; font-weight:700; }
.filter-link { display:block; padding:.35rem 0; color:var(--text-main); transition:all .3s; font-size:.87rem; }
.filter-link:hover,.filter-link.active { color:var(--gold); padding-left:.4rem; }
.transition-hover { transition:transform .3s,box-shadow .3s; }
.transition-hover:hover { transform:translateY(-4px); box-shadow:var(--shadow-md) !important; }
.auth-card { background:#fffaf4; border:1px solid var(--border-light); border-radius:20px; box-shadow:var(--shadow-md); padding:2.5rem; }

/* ---- FOOTER ---- */
.lc-footer { background:linear-gradient(120deg,var(--leather-deep),var(--charcoal)); color:var(--text-light); margin-top:auto; }
.lc-footer h5,.lc-footer h6 { color:var(--gold); font-family:'Playfair Display',serif; margin-bottom:1rem; }
.lc-footer p { color:rgba(245,233,218,.7); font-size:.875rem; }
.footer-links { padding:0; list-style:none; }
.footer-links li { margin-bottom:.4rem; }
.footer-links a { color:rgba(245,233,218,.65); font-size:.875rem; transition:all .3s; }
.footer-links a:hover { color:var(--gold); padding-left:.3rem; }
.social-icons a { color:rgba(245,233,218,.7); font-size:1.1rem; transition:all .3s; }
.social-icons a:hover { color:var(--gold); }
.border-gold-soft { border-color:rgba(212,175,55,.2) !important; }
.newsletter-form .form-control { background:rgba(255,255,255,.08); border:1px solid rgba(212,175,55,.25); color:#fff; }
.newsletter-form .form-control::placeholder { color:rgba(255,255,255,.4); }
.swiper-pagination-bullet-active { background:var(--gold) !important; }
