/* =========================================
   LUXURY THEME STYLE UPGRADE
   Add this BELOW your existing CSS
========================================= */

:root{
  --gold:#c9a96e;
  --gold-dark:#a07840;
  --gold-light:#e8d5b0;
  --cream:#faf7f2;
  --ivory:#f5f0e8;
  --warm-white:#fefcf8;
  --charcoal:#2a2a2a;
  --muted:#7a7167;
  --border:rgba(201,169,110,.22);
}

/* BODY */

body{
  background:var(--cream);
  color:var(--charcoal);
  font-family:'Poppins',sans-serif;
  overflow-x:hidden;
}

/* NAVBAR */

.luxury-nav{
  background:rgba(250,247,242,.96)!important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
  padding:14px 0;
  box-shadow:none!important;
}

.brand{
  font-family:'Playfair Display',serif;
  font-size:22px;
  font-weight:600;
  color:var(--charcoal)!important;
  letter-spacing:.3px;
}

.brand::first-letter{
  font-style:italic;
}

.luxury-link{
  font-size:11px;
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--muted)!important;
  margin-left:14px;
  transition:.3s;
}

.luxury-link:hover,
.link-active{
  color:var(--gold-dark)!important;
}

/* HERO */

.hero{
  position:relative;
  padding:150px 0 90px;
  overflow:hidden;
  background:
    linear-gradient(rgba(250,247,242,.88),rgba(250,247,242,.9)),
    url('https://images.unsplash.com/photo-1524504388940-b1c1722653e1?q=80&w=1600&auto=format&fit=crop');
  background-size:cover;
  background-position:center;
}

.hero::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent,rgba(250,247,242,.45));
}

.hero .container{
  position:relative;
  z-index:2;
}

.hero-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(40px,7vw,70px);
  font-weight:500;
  color:var(--charcoal);
  line-height:1.1;
  margin-bottom:18px;
}

.hero-sub{
  font-size:13px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--gold-dark);
  position:relative;
  display:inline-block;
}

.hero-sub::before,
.hero-sub::after{
  content:'';
  width:34px;
  height:1px;
  background:var(--gold);
  position:absolute;
  top:50%;
}

.hero-sub::before{
  right:100%;
  margin-right:14px;
}

.hero-sub::after{
  left:100%;
  margin-left:14px;
}

/* PRODUCT SECTION */

.product-section{
  padding:90px 0;
}

/* PRODUCT CARD */

.product-card{
  background:var(--warm-white);
  border:none;
  border-radius:0;
  overflow:hidden;
  box-shadow:0 10px 40px rgba(0,0,0,.04);
  transition:transform .4s ease, box-shadow .4s ease;
}

.product-card:hover{
  transform:translateY(-8px);
  box-shadow:0 18px 55px rgba(0,0,0,.08);
}

.img-wrapper{
  position:relative;
  overflow:hidden;
  background:var(--ivory);
}

.img-wrapper img{
  width:100%;
  object-fit:cover;
  transition:transform .7s ease;
}

.product-card:hover .img-wrapper img{
  transform:scale(1.05);
}

/* HOVER DESCRIPTION */

.hover-desc{
  position:absolute;
  inset:auto 0 0 0;
  background:linear-gradient(to top,rgba(42,42,42,.82),transparent);
  color:#fff;
  padding:40px 22px 20px;
  font-size:13px;
  line-height:1.7;
  opacity:0;
  transform:translateY(10px);
  transition:.4s ease;
}

.product-card:hover .hover-desc{
  opacity:1;
  transform:translateY(0);
}

/* CARD BODY */

.card-body{
  padding:26px 22px 24px;
}

.product-title{
  font-family:'Playfair Display',serif;
  font-size:24px;
  color:var(--charcoal);
  margin-bottom:12px;
}

.price{
  font-size:18px;
  font-weight:500;
  color:var(--gold-dark);
  margin-bottom:22px;
}

/* BUTTONS */

.btn-premium{
  background:var(--charcoal);
  border:none;
  border-radius:0;
  color:#fff;
  font-size:11px;
  font-weight:600;
  letter-spacing:2px;
  text-transform:uppercase;
  padding:13px 18px;
  transition:.3s;
}

.btn-premium:hover{
  background:var(--gold-dark);
  color:#fff;
}

.btn-outline-dark{
  border-radius:0;
  font-size:11px;
  font-weight:600;
  letter-spacing:2px;
  text-transform:uppercase;
  padding:13px 18px;
  border:1px solid var(--charcoal);
  transition:.3s;
}

.btn-outline-dark:hover{
  background:var(--charcoal);
  border-color:var(--charcoal);
}

/* COMING SOON */

.coming-soon{
  padding:20px 0 90px;
}

.coming-soon h1{
  font-family:'Playfair Display',serif;
  font-size:38px;
  font-weight:500;
  color:var(--charcoal);
}

.coming-soon h1::after{
  content:'';
  display:block;
  width:40px;
  height:1px;
  background:var(--gold);
  margin:18px auto 0;
}

/* MODAL */

.luxury-modal{
  border:none;
  border-radius:0;
  background:var(--warm-white);
  overflow:hidden;
}

.modal-header{
  padding:24px 26px 0;
}

.modal-title{
  font-family:'Playfair Display',serif;
  font-size:28px;
  color:var(--charcoal);
}

.modal-body{
  padding:20px 26px 28px;
}

.modal-body p{
  color:var(--muted);
  line-height:1.9;
  font-size:14px;
}

/* FOOTER */

.footer{
  background:var(--charcoal);
  color:rgba(255,255,255,.6);
  padding:65px 20px 30px;
}

.footer p{
  font-size:13px;
  letter-spacing:1px;
}

.social-icons{
  display:flex;
  justify-content:center;
  gap:10px;
}

.social-icon{
  width:36px;
  height:36px;
  border:1px solid rgba(201,169,110,.35);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  transition:.3s;
}

.social-icon:hover{
  background:var(--gold);
  color:#fff;
}

/* SCROLLBAR */

::-webkit-scrollbar{
  width:8px;
}

::-webkit-scrollbar-thumb{
  background:var(--gold);
}

::-webkit-scrollbar-track{
  background:var(--cream);
}

/* MOBILE */

@media(max-width:768px){

  .hero{
    padding:130px 0 75px;
  }

  .hero-title{
    font-size:46px;
  }

  .product-section{
    padding:60px 0;
  }

  .card-body{
    padding:22px 18px;
  }

}