/* ===============================
FONTS
=============================== */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@300;400;500;600;700;800&display=swap');


:root{

--rose-light:#F7E8EC;
--rose:#C57C8A;
--rose-deep:#732C3F;
--obsidian:#1A0B12;

--gold:#D4AF37;
--gold-dark:#b8962e;

--bg:#F7E8EC;
--white:#ffffff;

--text-dark:#1A0B12;
--gray:#666;
--border:#eee;

}

/* ===============================
PERFORMANCE + LOW MOTION OVERRIDES
=============================== */

html:focus-within{
  scroll-behavior:auto;
}

body{
  scroll-behavior:auto;
}

.reveal-up,
.reveal-up.is-visible,
.site-toast,
.site-toast.is-visible,
.product-rail-shell::after,
.product-rail-shell .whatsnew-track,
.product-rail-shell .recent-track,
.product-rail-shell .carousel-track,
.menu-drawer,
.menu-overlay,
.categories-wrapper,
.slide,
.slide img,
.product-card,
.wishlist-card,
.review-card,
.why-card,
.payment-block,
.payment-app-option,
.payment-pill-button,
.payment-stack-item summary,
.account-home-link,
.account-primary-btn,
.account-secondary-btn,
.checkout-btn,
.wishlist-secondary,
.place-order-btn,
.payment-primary-action,
.shop-btn,
.hero-secondary-btn,
.premium-btn,
.premium-btn-secondary{
  animation:none !important;
}

.reveal-up,
.reveal-up.is-visible{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
}

.menu-drawer,
.menu-overlay,
.categories-wrapper,
.slide,
.slide img,
.product-card,
.wishlist-card,
.review-card,
.why-card,
.payment-block,
.payment-app-option,
.payment-pill-button,
.payment-stack-item summary{
  transition:none !important;
  transform:none !important;
}

.product-card:hover,
.wishlist-card:hover,
.review-card:hover,
.why-card:hover,
.payment-block:hover,
.payment-app-option:hover,
.payment-pill-button:hover,
.cat:hover img,
.menu-drawer-nav a:hover,
.site-footer-links a:hover,
.site-footer-column a:hover{
  transform:none !important;
  box-shadow:inherit;
}

.shop-btn,
.hero-secondary-btn,
.checkout-btn,
.wishlist-secondary,
.place-order-btn,
.payment-primary-action,
.premium-btn,
.premium-btn-secondary,
.account-home-link,
.account-primary-btn,
.account-secondary-btn,
button,
[type="button"],
[type="submit"]{
  transition:background-color .24s ease, color .24s ease, border-color .24s ease, box-shadow .24s ease, opacity .24s ease !important;
}

.shop-btn:hover,
.hero-secondary-btn:hover,
.checkout-btn:hover,
.wishlist-secondary:hover,
.place-order-btn:hover,
.payment-primary-action:hover,
.premium-btn:hover,
.premium-btn-secondary:hover,
.account-home-link:hover,
.account-primary-btn:hover,
.account-secondary-btn:hover,
button:hover,
[type="button"]:hover,
[type="submit"]:hover{
  transform:none !important;
}

.product-rail-shell,
.carousel-container,
.recent-wrapper,
.whatsnew-wrapper{
  overflow:hidden;
}

.product-rail-shell::after{
  opacity:0 !important;
}

.slide{
  transition:none !important;
}

.payment-page .checkout-shell{
  max-width:1320px;
  padding:24px 18px 56px;
}

.payment-page-hero{
  align-items:flex-start;
}

.payment-app-shell{
  padding:8px 0 0;
}

.payment-info-ribbon{
  padding:20px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  border:1px solid rgba(122,49,66,0.08);
  background:linear-gradient(135deg,#fffefd 0%,#fff7f2 100%);
}

.payment-info-chip{
  padding:16px 18px;
  border-radius:18px;
  background:#fff;
  border:1px solid #efe4d8;
}

.payment-info-chip strong{
  display:block;
  margin-bottom:6px;
  color:#2b1c20;
  font-size:15px;
}

.payment-info-chip span{
  display:block;
  color:#74656a;
  font-size:13px;
  line-height:1.6;
}

.payment-page .payment-app-sidebar{
  position:sticky;
  top:22px;
  display:grid;
  gap:16px;
}

.payment-summary-card .payment-price-list{
  background:linear-gradient(180deg,#fff,#fffaf7);
}

.payment-status-card .payment-status-body{
  padding:18px 20px 20px;
}

.payment-status-list{
  display:grid;
  gap:10px;
  margin-top:12px;
}

.payment-status-list p{
  margin:0;
  padding:11px 12px;
  border-radius:14px;
  background:#f8f4ef;
  border:1px solid #eee1d6;
  color:#67565b;
  font-size:13px;
  line-height:1.55;
}

.payment-page .payment-bag-row{
  grid-template-columns:64px minmax(0,1fr) auto;
  display:grid;
  align-items:center;
}

.payment-page .payment-bag-media{
  width:64px;
  height:64px;
  border-radius:18px;
  overflow:hidden;
  background:#f6efe7;
  border:1px solid #ede1d4;
}

.payment-page .payment-bag-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.payment-page .payment-bag-copy{
  min-width:0;
}

.payment-page .payment-bag-copy strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.address-page .address-container{
  max-width:1180px;
  margin:34px auto 56px;
  padding:0 18px;
  background:transparent;
  box-shadow:none;
}

.address-page .address-shell{
  display:grid;
  gap:22px;
}

.address-page .premium-address-card,
.address-page .premium-delivery-box,
.address-page .address-location-panel,
.address-page .saved-address-card{
  border-radius:24px;
  border:1px solid #ebdecd;
  box-shadow:0 18px 42px rgba(24,15,10,0.06);
}

.address-page .address-grid input,
.address-page .address-grid select{
  min-height:52px;
  border-radius:14px;
  border:1px solid #dccfbe;
  background:#fffdfa;
  transition:border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.address-page .address-grid input:focus,
.address-page .address-grid select:focus{
  border-color:#c9a150;
  box-shadow:0 0 0 4px rgba(212,175,55,0.12);
}

#currentLocationButton:disabled{
  opacity:.72;
  cursor:wait;
}

@media (max-width: 920px){
  .payment-page .payment-app-sidebar{
    position:static;
  }

  .payment-info-ribbon{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .payment-page .checkout-shell{
    padding:18px 12px 44px;
  }

  .payment-page .payment-bag-row{
    grid-template-columns:52px minmax(0,1fr) auto;
    gap:10px;
  }

  .payment-page .payment-bag-media{
    width:52px;
    height:52px;
    border-radius:14px;
  }

  .address-page .address-container{
    padding:0 12px;
  }
}

.checkout-cod-body{
  padding:20px;
  display:grid;
  gap:16px;
  background:linear-gradient(135deg,#fffaf6 0%,#fff3ee 100%);
}

.checkout-cod-amounts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.checkout-cod-stat{
  padding:16px 18px;
  border-radius:18px;
  border:1px solid #ecded1;
  background:#fff;
}

.checkout-cod-stat span{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#8d6f51;
}

.checkout-cod-stat strong{
  display:block;
  color:#241419;
  font-size:24px;
  line-height:1.1;
}

.checkout-cod-note{
  margin:0;
  color:#68575c;
  font-size:14px;
  line-height:1.65;
}

.checkout-page .payment-app-title{
  letter-spacing:1.4px;
}

@media (max-width: 640px){
  .checkout-cod-amounts{
    grid-template-columns:1fr;
  }

  .checkout-cod-body{
    padding:16px;
  }
}
/* ===============================
GLOBAL RESET
=============================== */
*{
margin:0;
padding:0;
box-sizing:border-box;
}
body{
font-family:'Manrope',sans-serif;
background:var(--rose-light);
color:var(--text-dark);
overflow-x:hidden;
scroll-behavior:smooth;
opacity:1;
}

body.page-ready{
opacity:1;
}

body.menu-open{
overflow:hidden;
}
h1,h2,h3,h4{
font-family:'Cormorant Garamond',serif;
letter-spacing:.5px;
}
.section-title{
text-align:center;
font-size:32px;
margin-bottom:40px;
}

.pagination{
display:flex;
align-items:center;
justify-content:center;
gap:10px;
flex-wrap:wrap;
margin:28px auto 0;
padding:0 12px;
}

.pagination.is-hidden{
display:none;
}

.pagination-btn,
.pagination-ellipsis{
min-width:44px;
height:44px;
display:inline-flex;
align-items:center;
justify-content:center;
padding:0 14px;
border-radius:999px;
font-family:'Manrope',sans-serif;
font-size:14px;
font-weight:700;
}

.pagination-btn{
border:1px solid rgba(115,44,63,0.14);
background:#fffdfb;
color:#5d4048;
cursor:pointer;
box-shadow:0 10px 22px rgba(31,19,24,0.06);
transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.pagination-btn:hover:not(:disabled){
transform:translateY(-1px);
background:#ffffff;
box-shadow:0 14px 28px rgba(31,19,24,0.1);
}

.pagination-btn.is-active{
background:#1d1713;
border-color:#1d1713;
color:#fff7ef;
box-shadow:0 16px 30px rgba(29,23,19,0.2);
}

.pagination-btn:disabled{
opacity:.45;
cursor:not-allowed;
box-shadow:none;
}

.pagination-nav{
min-width:68px;
}

.pagination-ellipsis{
color:#8b7078;
}

/* MENU */

.menu{
display:flex;
justify-content:center;
gap:40px;
padding:14px 0;
font-size:14px;
}

.menu a{
text-decoration:none;
color:var(--black);
position:relative;
}

.menu a::after{
content:"";
width:0;
height:2px;
background:var(--gold);
position:absolute;
left:0;
bottom:-6px;
transition:.3s;
}

.menu a:hover::after{
width:100%;
}


/* ===============================
CATEGORY ROW
=============================== */

.categories{
display:flex;
gap:24px;
overflow-x:auto;
padding:24px 60px;
scroll-behavior:auto;
}

.categories-wrapper{
overflow:hidden;
max-height:0;
opacity:0;
pointer-events:none;
transition:none;
will-change:auto;
}

.categories-wrapper.is-open{
max-height:420px;
opacity:1;
pointer-events:auto;
}

.categories::-webkit-scrollbar{
display:none;
}

.cat{
min-width:120px;
text-align:center;
cursor:pointer;
}

.cat img{
width:120px;
height:120px;
border-radius:50%;
object-fit:cover;
border:3px solid #f2f2f2;
box-shadow:0 10px 25px rgba(0,0,0,.12);
}

.cat:hover img{
border:3px solid var(--gold);
}

.cat p{
margin-top:10px;
font-size:13px;
}


/* ===============================
HERO BANNER
=============================== */
/*=============================== */
.hero-banner {
  position: relative;
  width: 100%;
  height: 100vh; /* full screen for proper visibility */
  min-height: 600px; /* prevents too small on laptops */
  overflow: hidden;
}

/* SLIDES */
.slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity .9s ease-in-out;
  pointer-events:none;
}

.slide.active {
  opacity: 1;
  z-index: 2;
  pointer-events:auto;
}

/* IMAGE FIX */
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;

  /* 🔥 IMPORTANT: adjust focus properly */
  object-position: center 40%;
}

/* Fine tuning for your temple jewellery image */
.slide-temple img {
  object-position: center 30%;
}
/* BANGLE IMAGE POSITION */
.slide-bangle img {
  object-position: center 35%;
}


/* Overlay gradient */
.hero-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.65),
    rgba(0, 0, 0, 0.25),
    rgba(0, 0, 0, 0)
  );
  z-index: 1;
}

/* TEXT */
.banner-text {
  position: absolute;
  top: 50%;
  left: 8%;
  transform: translateY(-50%);
  color: #fff;
  max-width: 560px;
  z-index: 3;
}

.banner-text h1 {
  font-size: clamp(40px, 4vw, 64px);
  line-height: 1.1;
  margin-bottom: 15px;
}

.banner-text p {
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 25px;
}

/* BUTTON */
.shop-btn {
  background: var(--rose);
  color: white;
  padding: 14px 36px;
  border-radius: 30px;
  text-decoration: none;
  font-size: 15px;
  transition: 0.3s;
}

.shop-btn:hover {
  background: var(--rose-deep);
}

/* ===============================
TOP CATEGORY
=============================== */

.top-category{
padding:70px 60px;
}

.top-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
max-width:1100px;
margin:auto;
}

.top-card{
position:relative;
overflow:hidden;
border-radius:22px;
cursor:pointer;
transition:0.3s;
background:#fff;
align-items:center;
justify-content: center;
min-height:320px;
box-shadow:0 18px 36px rgba(36,20,25,0.08);
}

.top-card:hover{
transform:translateY(-5px);
box-shadow:0 26px 48px rgba(115,44,63,0.14);
}

.top-card img{
width:100%;
height:320px;
object-fit:cover;
border-radius:22px;
padding:0;
}

.top-card:hover img{
transform:scale(1.08);
}

.offer{
position:absolute;
top:10px;
left:10px;
background:var(--gold);
color:white;
padding:5px 10px;
font-size:12px;
border-radius:4px;
}

.top-card p{
position:absolute;
bottom:15px;
left:15px;
color:white;
font-size:18px;
font-weight:700;
z-index: 2;
text-shadow: 0 2px 8px rgba(0,0,0,.6);
}

.top-card::after{
content:"";
position:absolute;
bottom:0;
left:0;
width:100%;
height:48%;
background:linear-gradient(to top,rgba(0,0,0,0.6),transparent);
}

/* ===============================
REVIEWS
=============================== */
.reviews-section{
padding:70px 60px;
}
.reviews-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}
.review-card{
background:white;
border-radius:14px;
padding:20px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
text-align:center;
}
.review-card img{
width:80px;
height:80px;
border-radius:50%;
object-fit:cover;
margin-bottom:10px;
}

/* ===============================
WHY US
=============================== */
.why-us{
padding:70px 60px;
}
.why-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:22px;
}

.why-card{
position:relative;
overflow:hidden;
min-height:200px;
display:flex;
align-items:flex-end;
padding:24px;
border-radius:22px;
text-align:left;
color:#241419;
background:linear-gradient(180deg,#fffefe,#fff7f9);
border:1px solid rgba(197,124,138,0.22);
box-shadow:0 18px 42px rgba(115,44,63,0.08);
transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.why-card::before{
content:"";
position:absolute;
inset:0;
background:
  radial-gradient(circle at top right, rgba(197,124,138,0.12), transparent 30%),
  linear-gradient(180deg, rgba(255,255,255,0.38), transparent 55%);
}

.why-card::after{
content:"";
display:none;
}

.why-card:hover{
transform:translateY(-6px);
box-shadow:0 26px 52px rgba(115,44,63,0.12);
border-color:rgba(197,124,138,0.34);
}

.global-trust-strip{
max-width:1180px;
margin:54px auto 0;
padding:0 20px;
}

.global-trust-strip-head{
display:flex;
flex-direction:column;
gap:8px;
margin:0 auto 22px;
max-width:980px;
text-align:center;
}

.global-trust-strip-head h2{
font-size:46px;
line-height:1.04;
color:#241419;
}

.why-card-copy{
position:relative;
z-index:1;
display:grid;
gap:8px;
max-width:230px;
}

.why-card-copy span{
font-size:11px;
font-weight:800;
letter-spacing:1.8px;
text-transform:uppercase;
color:#9b6a76;
}

.why-card-copy strong{
font-family:'Cormorant Garamond',serif;
font-size:34px;
font-weight:600;
line-height:0.98;
letter-spacing:.3px;
color:#2b161d;
}

.why-card-copy p{
font-size:14px;
line-height:1.5;
color:#6f5961;
}

.why-badge{
display:inline-flex;
align-items:center;
justify-content:center;
width:fit-content;
padding:10px 14px;
margin-bottom:6px;
border-radius:999px;
background:#f9edf0;
border:1px solid #e5c8cf;
color:#7a3142;
font-style:normal;
font-size:12px;
font-weight:800;
letter-spacing:1px;
text-transform:uppercase;
}

.global-trust-strip .why-grid{
align-items:stretch;
grid-template-columns:repeat(4,minmax(0,1fr));
}

.global-trust-strip .why-card{
min-height:220px;
padding:30px 24px 24px;
border-radius:24px;
background:#ffffff;
border:1px solid #ebdecd;
box-shadow:0 16px 36px rgba(29,16,12,0.05);
}

.global-trust-strip .why-card-copy{
height:100%;
align-content:end;
}



/* ===============================
INSTAGRAM
=============================== */

.instagram{
padding:70px 60px;
}

.insta-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:10px;
}

.insta-grid img{
width:100%;
height:220px;
object-fit:cover;
border-radius:8px;
}


/* ===============================
FOOTER
=============================== */

.footer{
background:#732C3F;
padding:60px;
margin-top:80px;
font-family:'Manrope',sans-serif;
}

.footer-container{
display:grid;
grid-template-columns:2fr 1fr 1fr 1.5fr;
gap:50px;
}

.footer-links{
display:flex;
flex-direction:column;
gap:8px;
}

.footer-links a{
text-decoration:none;
color:rgba(255,255,255,0.82);
font-size:14px;
position:relative;
display:inline-flex;
width:fit-content;
transition:color .22s ease, transform .22s ease, opacity .22s ease;
}

.footer-links a::after{
content:"";
position:absolute;
left:0;
bottom:-4px;
width:0;
height:1px;
background:#fff6e9;
transition:width .22s ease, background .22s ease;
}

.footer-links a:hover{
color:#fff6e9;
transform:translateX(4px);
}

.footer-links a:hover::after{
width:100%;
}

.footer h4{
transition:color .22s ease, transform .22s ease;
cursor:default;
}

.footer h4:hover{
color:#ffffff;
transform:translateY(-1px);
}

.footer-newsletter h3{
transition:color .22s ease, transform .22s ease;
}

.footer-newsletter h3:hover{
color:#ffffff;
transform:translateY(-1px);
}

.footer-support span{
transition:color .22s ease;
}

.footer-support span:hover{
color:#fff6e9;
}

.footer-bottom{
margin-top:40px;
border-top:1px solid rgba(255,255,255,0.16);
padding-top:20px;
display:flex;
justify-content:space-between;
align-items:center;
gap:18px;
flex-wrap:wrap;
}

.footer h3,
.footer h4{
font-family:'Cormorant Garamond',serif;
color:#fff6e9;
letter-spacing:.4px;
}

.footer p,
.footer span{
color:rgba(255,255,255,0.78);
}

.footer-bottom p{
color:#fff6e9;
font-weight:500;
}

.social-icons{
display:flex;
gap:14px;
align-items:center;
}

.social-icons a{
text-decoration:none;
color:rgba(255,255,255,0.84);
font-weight:700;
transition:color .22s ease, transform .22s ease;
}

.social-icons a:hover{
color:#fff6e9;
transform:translateY(-1px);
}

.payment-icons{
display:flex;
gap:10px;
align-items:center;
flex-wrap:wrap;
}

.payment-pill{
display:inline-flex;
align-items:center;
justify-content:center;
padding:8px 12px;
border-radius:999px;
background:rgba(255,255,255,0.08);
border:1px solid rgba(255,255,255,0.18);
color:#fff6e9;
font-size:12px;
font-weight:700;
letter-spacing:.4px;
}

.site-footer{
margin-top:42px;
padding:0;
background:linear-gradient(180deg,#6c263a 0%, #4f1e2d 100%);
border-top:1px solid rgba(255,255,255,0.08);
}

.site-footer-shell{
max-width:1280px;
margin:0 auto;
padding:34px 60px 30px;
color:#fff7f4;
}

.site-footer-kicker{
font-size:13px;
font-weight:800;
letter-spacing:1.8px;
text-transform:uppercase;
color:#f5d7df;
}

.site-footer-newsletter{
display:grid;
justify-items:center;
text-align:center;
gap:12px;
padding-bottom:34px;
}

.site-footer-newsletter h2{
font-size:22px;
line-height:1.2;
color:#fff7f4;
}

.site-footer-form{
display:flex;
gap:18px;
width:min(100%, 800px);
align-items:center;
justify-content:center;
margin-top:6px;
}

.site-footer-form input{
flex:1;
min-width:0;
height:58px;
padding:0 22px;
border:1px solid rgba(255,255,255,0.16);
background:rgba(255,255,255,0.96);
color:#341720;
font-size:16px;
outline:none;
border-radius:18px;
}

.site-footer-form button{
height:58px;
padding:0 34px;
border:none;
background:linear-gradient(135deg,#111,#2d1a20);
color:#fffaf6;
font-size:15px;
font-weight:700;
letter-spacing:.8px;
text-transform:uppercase;
cursor:pointer;
transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
box-shadow:0 18px 34px rgba(0,0,0,0.24);
border-radius:18px;
}

.site-footer-form button:hover{
background:linear-gradient(135deg,#1f1116,#3d232b);
transform:translateY(-1px);
box-shadow:0 22px 38px rgba(0,0,0,0.26);
}

.site-footer-grid{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(260px,.95fr);
gap:48px;
padding:30px 0 26px;
}

.site-footer-group{
display:grid;
gap:12px;
align-content:start;
border-top:1px solid rgba(255,255,255,0.12);
padding-top:18px;
}

.site-footer-toggle{
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
border:none;
background:none;
padding:0;
font:inherit;
cursor:pointer;
color:#fff7f4;
text-align:left;
}

.site-footer-toggle span,
.site-footer-label{
font-size:14px;
font-weight:800;
letter-spacing:.8px;
text-transform:uppercase;
color:#fff7f4;
}

.site-footer-toggle strong{
font-size:20px;
line-height:1;
font-weight:500;
display:none;
}

.site-footer-panel{
display:grid;
grid-template-rows:1fr;
opacity:1;
transition:grid-template-rows .28s ease, opacity .28s ease;
}

.site-footer-column{
display:grid;
gap:14px;
align-content:start;
}

.site-footer-panel > .site-footer-column{
overflow:hidden;
}

.site-footer-column a,
.site-footer-column p{
font-size:15px;
line-height:1.5;
color:rgba(255,247,244,0.84);
text-decoration:none;
}

.site-footer-column a{
transition:color .2s ease, transform .2s ease;
}

.site-footer-column a:hover{
color:#ffffff;
transform:translateX(3px);
}

.site-footer-contact-card{
display:grid;
gap:18px;
padding:22px 24px;
border-radius:28px;
background:rgba(255,255,255,0.08);
border:1px solid rgba(255,255,255,0.12);
box-shadow:0 22px 40px rgba(10,4,6,0.18);
}

.site-footer-contact-row{
display:flex;
align-items:center;
gap:14px;
flex-wrap:wrap;
}

.site-footer-contact-icon{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:52px;
height:32px;
padding:0 12px;
border-radius:999px;
background:#4f3229;
color:#fff8f4;
font-size:11px;
font-weight:800;
letter-spacing:.08em;
text-transform:uppercase;
}

.site-footer-contact-row a{
font-size:15px;
font-weight:600;
color:#fff7f4;
text-decoration:none;
word-break:break-word;
}

.site-footer-address{
font-size:15px;
line-height:1.7;
color:rgba(255,247,244,0.82);
}

.site-footer-socials{
display:flex;
gap:12px;
flex-wrap:wrap;
}

.site-footer-socials a{
width:46px;
height:46px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:rgba(255,255,255,0.14);
color:#fff8f4;
font-size:13px;
font-weight:800;
text-transform:uppercase;
text-decoration:none;
transition:transform .24s ease, background .24s ease;
}

.site-footer-socials a svg{
width:20px;
height:20px;
fill:none;
stroke:currentColor;
stroke-width:1.9;
stroke-linecap:round;
stroke-linejoin:round;
}

.site-footer-social-dot,
.site-footer-social-mark{
fill:currentColor;
stroke:none;
}

.site-footer-social-image-link{
padding:0;
overflow:hidden;
}

.site-footer-social-image-link img{
width:22px;
height:22px;
display:block;
object-fit:contain;
}

.site-footer-social-image-link svg{
width:22px;
height:22px;
display:block;
fill:none;
stroke:currentColor;
stroke-width:1.7;
stroke-linecap:round;
stroke-linejoin:round;
}

.site-footer-socials a:hover{
transform:translateY(-2px);
background:rgba(255,255,255,0.22);
}

.mobile-search-strip{
display:none;
align-items:center;
gap:12px;
padding:14px 16px;
margin:0 0 8px;
background:#fffdfb;
border-bottom:1px solid rgba(115,44,63,0.1);
box-shadow:0 14px 26px rgba(115,44,63,0.06);
}

.mobile-search-strip input{
flex:1;
min-width:0;
border:none;
background:transparent;
font-size:18px;
color:#3f241d;
outline:none;
}

.mobile-search-strip input::placeholder{
color:#7a6159;
}

.mobile-search-strip button{
width:42px;
height:42px;
border:none;
border-radius:50%;
background:#fff;
box-shadow:0 10px 20px rgba(115,44,63,0.08);
color:#4a3140;
display:inline-flex;
align-items:center;
justify-content:center;
cursor:pointer;
}

.mobile-search-strip button svg{
width:20px;
height:20px;
display:block;
}

.mobile-header-search{
display:none;
align-items:center;
gap:10px;
min-width:0;
padding:0 14px;
height:48px;
border-radius:18px;
background:#fff;
border:1px solid rgba(122,49,69,0.16);
box-shadow:0 10px 24px rgba(115,44,63,0.08);
text-decoration:none;
}

.mobile-header-search-logo{
width:28px;
height:28px;
display:inline-flex;
align-items:center;
justify-content:center;
flex:0 0 auto;
}

.mobile-header-search-logo img{
max-width:100%;
max-height:100%;
object-fit:contain;
}

.mobile-header-search-text{
flex:1;
min-width:0;
font-size:15px;
font-weight:700;
letter-spacing:.02em;
color:#5d4048;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.mobile-header-search-icon{
width:18px;
height:18px;
display:inline-flex;
align-items:center;
justify-content:center;
color:#5d4048;
}

.mobile-header-search-icon svg{
width:18px;
height:18px;
display:block;
}

.reveal-up{
opacity:0;
transform:translateY(32px);
transition:opacity .65s ease, transform .65s ease;
transition-delay:var(--reveal-delay,0ms);
will-change:transform, opacity;
}

.reveal-up.is-visible{
opacity:1;
transform:none;
}

.site-toast-stack{
position:fixed;
right:18px;
bottom:18px;
z-index:1400;
display:grid;
gap:12px;
max-width:min(360px, calc(100vw - 28px));
pointer-events:none;
}

.site-toast{
display:grid;
grid-template-columns:5px 1fr auto;
align-items:start;
gap:14px;
padding:14px 14px 14px 0;
border-radius:20px;
background:rgba(24,18,16,0.94);
box-shadow:0 20px 46px rgba(20,14,12,0.28);
color:#fff8f2;
backdrop-filter:blur(18px);
opacity:0;
transform:translateY(16px) scale(.98);
transition:opacity .22s ease, transform .22s ease;
pointer-events:auto;
overflow:hidden;
}

.site-toast.is-visible{
opacity:1;
transform:translateY(0) scale(1);
}

.site-toast-accent{
width:100%;
height:100%;
border-radius:0 10px 10px 0;
background:linear-gradient(180deg,#f5d37a,#d4af37);
}

.site-toast-success .site-toast-accent{
background:linear-gradient(180deg,#3dd598,#0e9f6e);
}

.site-toast-warning .site-toast-accent{
background:linear-gradient(180deg,#fbbf24,#d97706);
}

.site-toast-error .site-toast-accent{
background:linear-gradient(180deg,#fb7185,#e11d48);
}

.site-toast-body{
padding-top:1px;
}

.site-toast-body strong{
display:block;
margin-bottom:4px;
font-size:13px;
font-weight:800;
letter-spacing:.2px;
}

.site-toast-body p{
margin:0;
font-size:13px;
line-height:1.45;
color:rgba(255,248,242,0.88);
}

.site-toast-close{
width:30px;
height:30px;
border:0;
border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
margin-top:2px;
background:rgba(255,255,255,0.1);
color:#fff8f2;
font-size:18px;
cursor:pointer;
}

.site-toast-close:hover{
background:rgba(255,255,255,0.18);
}

.menu-whatsapp-link{
display:inline-flex;
justify-content:center;
margin-top:14px;
}

.whatsapp-float{
position:fixed;
right:20px;
bottom:20px;
z-index:120;
display:inline-flex;
align-items:center;
gap:10px;
padding:8px 15px 8px 10px;
min-height:46px;
border-radius:999px;
background:linear-gradient(135deg,#22a861,#128c53);
color:#ffffff;
text-decoration:none;
border:1px solid rgba(255,255,255,0.14);
box-shadow:0 14px 28px rgba(18,140,83,0.24);
transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
overflow:hidden;
width:auto;
}

.whatsapp-float:hover{
transform:translateY(-2px);
box-shadow:0 22px 42px rgba(18,140,83,0.34);
background:linear-gradient(135deg,#25b268,#149257);
}

.whatsapp-float-icon{
display:grid;
place-items:center;
width:28px;
height:28px;
border-radius:50%;
background:rgba(255,255,255,0.12);
border:1px solid rgba(255,255,255,0.18);
box-shadow:none;
flex-shrink:0;
}

.whatsapp-float-icon svg{
width:13px;
height:13px;
display:block;
fill:none;
stroke:#ffffff;
stroke-width:1.6;
}

.whatsapp-float-icon img{
width:20px;
height:20px;
display:block;
object-fit:contain;
}

.whatsapp-float-mark{
fill:#ffffff;
stroke:none;
}

.whatsapp-float-copy{
display:flex;
justify-content:center;
line-height:1.1;
min-width:0;
}

.whatsapp-float-copy strong{
font-size:.78rem;
font-weight:800;
letter-spacing:.03em;
white-space:nowrap;
text-transform:uppercase;
}

.whatsapp-float-copy small{
display:none;
}

.wishlist-card,
.profile-list-card,
.profile-activity-card,
.payment-block,
.payment-app-option,
.site-footer-contact-card,
.top-card,
.why-card,
.premium-sort-trigger,
.premium-filter-trigger{
transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background-color .24s ease;
}

.wishlist-card:hover,
.profile-list-card:hover,
.profile-activity-card:hover{
box-shadow:0 18px 36px rgba(31,19,24,0.1);
}

.payment-block:hover{
transform:translateY(-3px);
box-shadow:0 20px 38px rgba(17,24,39,0.08);
}

@media (prefers-reduced-motion: reduce){
  body,
  .reveal-up,
  .site-toast,
  .product-card,
  .wishlist-card,
  .profile-list-card,
  .profile-activity-card,
  .payment-block,
  .payment-app-option,
  .site-footer-contact-card,
  .top-card,
  .why-card,
  .premium-sort-trigger,
  .premium-filter-trigger{
    transition:none !important;
    animation:none !important;
  }
}

.site-footer-bottom{
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
padding-top:22px;
flex-wrap:wrap;
border-top:1px solid rgba(255,255,255,0.16);
}

.site-footer-bottom p{
font-size:14px;
line-height:1.6;
color:rgba(255,247,244,0.8);
}

.site-footer-links{
display:flex;
gap:18px;
flex-wrap:wrap;
}

.site-footer-links a{
font-size:14px;
font-weight:600;
text-decoration:none;
color:#fff7f4;
transition:color .2s ease;
}

.site-footer-links a:hover{
color:#ffffff;
}

/* ===============================
RESPONSIVE
=============================== */

@media(max-width:1000px){

.product-grid{
grid-template-columns:repeat(2,1fr);
}

.occasion-grid{
grid-template-columns:repeat(2,1fr);
}

.reviews-grid{
grid-template-columns:repeat(2,1fr);
}

.site-footer-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}

.site-footer-contact-card{
grid-column:1 / -1;
}

}

@media(max-width:600px){

.topbar{
flex-direction:column;
gap:10px;
padding:15px;
}

.search-box input{
width:100%;
}

.product-grid{
grid-template-columns:1fr 1fr;
}

.hero-banner{
height:55vh;
}

.banner-text h1{
font-size:28px;
}

.site-footer{
margin-top:32px;
}

.site-footer-shell{
padding:28px 18px 22px;
}

.site-footer-form{
flex-direction:column;
gap:12px;
}

.site-footer-form input,
.site-footer-form button{
width:100%;
}

.site-footer-newsletter h2{
font-size:20px;
}

.site-footer-grid{
grid-template-columns:1fr;
gap:24px;
}

.site-footer-bottom{
align-items:flex-start;
flex-direction:column;
}

.site-footer-newsletter{
padding:0 0 34px;
}

.whatsapp-float{
right:12px;
left:auto;
bottom:14px;
gap:9px;
padding:9px 14px 9px 10px;
min-height:48px;
max-width:max-content;
box-shadow:0 14px 28px rgba(18,140,83,0.24);
}

.whatsapp-float-icon{
width:30px;
height:30px;
}

.whatsapp-float-icon svg{
width:13px;
height:13px;
}

.whatsapp-float-icon img{
width:18px;
height:18px;
}

.whatsapp-float-copy{
justify-content:center;
}

.whatsapp-float-copy small{
display:none;
}

.whatsapp-float-copy strong{
font-size:.8rem;
line-height:1;
letter-spacing:.03em;
}

}
.banner-dots{
position:absolute;
bottom:25px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:10px;
z-index:5;
}

.banner-dots span{
width:12px;
height:12px;
background:#ccc;
border-radius:50%;
cursor:pointer;
transition:0.3s;
}

.banner-dots span.active{
background:#D4AF37;
transform:scale(1.2);
}

/* ================= PROMO BANNER ================= */

.promo-banner{
position:relative;
width:100%;
margin:80px 0;
border-radius:0;
overflow:hidden;
box-shadow:0 30px 60px rgba(64,29,39,0.16);
}

.promo-banner img{
width:100%;
height:500px;
object-fit:cover;
transform:scale(1.02);
display:block;
}

.promo-banner::after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(90deg, rgba(26,11,18,0.66) 0%, rgba(26,11,18,0.34) 42%, rgba(26,11,18,0.12) 100%);
}

.promo-text{
position:absolute;
top:50%;
left:78px;
transform:translateY(-50%);
color:white;
max-width:520px;
z-index:1;
}

.promo-text h2{
font-size:40px;
margin-bottom:10px;
}

.promo-text p{
margin-bottom:20px;
font-size:16px;
}

.whats-new{
padding:70px 60px;
}



.product-page-body{
  background:#f985ca;
  color:#1f2a22;
  min-height:100vh;
}

.product-top-strip{
  background:#f985ca;
  padding:12px 30px;
  display:flex;
  justify-content:center;
  gap:40px;
  border-bottom:1px solid #f985ca;
  font-size:14px;
}
.product-top-strip a{
  text-decoration:none;
  color:#f985ca;
}
.product-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:26px 50px;
  background:#f985ca;
  border-bottom:1px solid #f985ca;
}
.product-logo{
  font-family:'Cormorant Garamond',serif;
  font-size:42px;
  color:#f985ca;
  cursor:pointer;
}
.product-header-icons{
  display:flex;
  gap:18px;
  font-size:22px;
  color:#f985ca;
}
.product-main-wrap{
  max-width:1300px;
  margin:0 auto;
  padding:40px 30px 80px;
}

.product-main-grid{
  display:grid;
  grid-template-columns:1.08fr 0.92fr;
  gap:60px;
  align-items:start;
}

.product-gallery-wrap{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:22px;
}

.thumbs{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.thumbs img{
  width:78px;
  height:98px;
  object-fit:cover;
  border-radius:12px;
  cursor:pointer;
  border:1px solid #d7e5d9;
  background:#fff;
  transition:transform .25s ease, border-color .25s ease;
}

.thumbs img:hover{
  transform:translateY(-2px);
  border-color:#9bb7a0;
}

.product-main-image-box{
  background:#edf6ef;
  border:1px solid #dbe9de;
  border-radius:26px;
  padding:18px;
  overflow:hidden;
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.product-main-image-box img{
  width:100%;
  max-height:580px;
  object-fit:contain;
  transition:transform .35s ease;
  cursor:zoom-in;
}

.product-main-image-box:hover img{
  transform:scale(1.12);
}

.product-info-wrap{
  padding-top:10px;
}

.product-main-title{
  font-family:'Cormorant Garamond',serif;
  font-size:48px;
  line-height:1.08;
  color:#213126;
  margin-bottom:26px;
}

.product-price-row{
  margin-bottom:26px;
}

.product-discount{
  display:block;
  font-size:20px;
  font-weight:700;
  color:#7f9f86;
  margin-bottom:10px;
}

.product-price-line{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}

.product-old-price{
  font-size:28px;
  color:#8b978d;
  text-decoration:line-through;
}

.product-final-price{
  font-size:40px;
  font-weight:700;
  color:#203126;
}

.product-cart-btn{
  width:100%;
  background:#111;
  color:#fff;
  border:none;
  border-radius:14px;
  padding:18px 20px;
  font-size:18px;
  font-weight:600;
  cursor:pointer;
  margin-bottom:26px;
}

.product-badges{
  display:flex;
  gap:8px;
  margin-top:6px;
  flex-wrap:wrap;
}

.badge{
  display:flex;
  align-items:center;
  gap:4px;
  background:#faf7ff;
  padding:4px 8px;
  border-radius:20px;
  font-size:11px;
  font-weight:600;
  color:#5a2ca0;
}

.badge img{
  width:14px;
  height:14px;
}

.product-accordion-wrap{
  max-width:820px;
  margin:50px auto 0;
  background:#f6fbf7;
}

.product-accordion-item{
  border-top:1px solid #d7e4d9;
}

.product-accordion-item:last-child{
  border-bottom:1px solid #d7e4d9;
}

.product-accordion-btn{
  width:100%;
  background:none;
  border:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:22px 0;
  font-size:28px;
  font-family:'Cormorant Garamond',serif;
  color:#233327;
  cursor:pointer;
}

.product-accordion-content{
  display:none;
  padding:0 0 24px;
  color:#304136;
  line-height:1.8;
  font-size:16px;
}

.product-accordion-content.open{
  display:block;
}

.product-details-list{
  margin-top:16px;
  padding-left:18px;
}

.product-details-list li{
  margin-bottom:8px;
}

@media(max-width:900px){
  .product-main-grid{
    grid-template-columns:1fr;
  }

  .product-gallery-wrap{
    grid-template-columns:1fr;
  }

  .thumbs{
    flex-direction:row;
    order:2;
    overflow-x:auto;
  }

  .product-main-image-box{
    min-height:420px;
  }

  .product-main-title{
    font-size:34px;
  }

  .product-final-price{
    font-size:30px;
  }
}
/* ===== SALE BAR ===== */

.sale-bar{
background:linear-gradient(90deg,#5f2333,#7a3145 55%, #9a5c68);
color:white;
text-align:center;
font-size:13px;
padding:10px 16px;
letter-spacing:1px;
font-weight:600;
box-shadow:0 10px 24px rgba(115,44,63,0.18);
}

/* ===== TOP LINKS ===== */

.top-links{
display:flex;
justify-content:flex-start;
gap:25px;
padding:8px 60px;
font-size:13px;
background:rgba(255,255,255,0.88);
border-bottom:1px solid rgba(115,44,63,0.08);
backdrop-filter:blur(10px);
}

.top-links a{
text-decoration:none;
color:#986590;
font-weight:600;
transition:color .2s ease, transform .2s ease;
}

.top-links a:hover{
color:var(--rose-deep);
transform:translateY(-1px);
}

/* ===== MAIN HEADER ===== */

.main-header{
display:flex;
align-items:center;
justify-content:space-between;
padding:45px 65px;
background:rgba(255,255,255,0.92);
border-bottom:1px solid rgba(115,44,63,0.08);
box-shadow:0 16px 36px rgba(89,41,54,0.08);
backdrop-filter:blur(16px);
}

/* MENU ICON */

.menu-icon{
cursor:pointer;
width:46px;
height:46px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:linear-gradient(135deg,rgba(197,124,138,0.16),rgba(212,175,55,0.22));
border:1px solid rgba(115,44,63,0.08);
color:var(--rose-deep);
box-shadow:0 10px 24px rgba(115,44,63,0.12);
transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.menu-icon:hover{
transform:translateY(-1px);
box-shadow:0 14px 28px rgba(115,44,63,0.18);
}

.menu-icon svg{
width:22px;
height:22px;
display:block;
}

/* LOGO CENTER */

.logo{
position:absolute;
left:50%;
transform:translateX(-50%);
}

.logo img{
height:160px;
filter:drop-shadow(0 10px 22px rgba(115,44,63,0.12));
}

/* HEADER ICONS */

.header-icons{
display:flex;
gap:22px;
font-size:18px;
cursor:pointer;
}
.header-icons{
display:flex;
gap:22px;
align-items:center;
}

.header-icons i{
width:20px;
height:20px;
color:#444;
cursor:pointer;
transition:0.3s;
}

.icon-glyph{
display:inline-flex;
align-items:center;
justify-content:center;
width:20px;
height:20px;
color:#4a3140;
font-style:normal;
line-height:1;
transition:0.3s;
}

.icon-glyph svg{
width:20px;
height:20px;
display:block;
stroke:currentColor;
}

.header-icons i:hover{
color:#D4AF37;
transform:scale(1.1);
}

.header-icons .icon-glyph:hover,
.product-actions .icon-glyph:hover,
.product-assurance-item .icon-glyph:hover,
.btn-icon.icon-glyph:hover{
color:#D4AF37;
transform:scale(1.1);
}

.header-icons a,
#accountIcon,
.cart-icon-box{
width:44px;
height:44px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:rgba(255,255,255,0.84);
border:1px solid rgba(115,44,63,0.08);
box-shadow:0 10px 24px rgba(115,44,63,0.08);
transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.header-icons a:hover,
#accountIcon:hover,
.cart-icon-box:hover{
transform:translateY(-1px);
box-shadow:0 16px 32px rgba(115,44,63,0.14);
border-color:rgba(212,175,55,0.24);
}
/* DELIVERY ROW */

.product-delivery-row{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:25px;
gap:20px;
}

/* PINCODE BOX */

.delivery-box{
display:flex;
border:1px solid #ddd;
border-radius:10px;
overflow:hidden;
}

.delivery-box input{
border:none;
padding:12px 14px;
outline:none;
width:180px;
font-size:14px;
}

.delivery-box button{
background:#111;
color:white;
border:none;
padding:12px 18px;
cursor:pointer;
}

/* ACTION BUTTONS */

.product-actions{
display:flex;
gap:10px;
}

.wishlist-btn,
.share-btn{
border:1px solid #ddd;
background:white;
padding:10px;
border-radius:8px;
cursor:pointer;
transition:0.3s;
display:inline-flex;
align-items:center;
justify-content:center;
}

.wishlist-btn:hover,
.share-btn:hover{
background:#f5f5f5;
}

.wishlist-btn svg,
.share-btn svg{
width:20px;
height:20px;
display:block;
}

/* BADGES */

.product-badges{
display:flex;
gap:25px;
margin-top:50px;
margin-bottom:40px;
}

.badge{
display:flex;
align-items:center;
gap:8px;
font-size:13px;
color:#555;
}

.badge img{
width:150px;
height:150px;
}

/* PRODUCT EXTRA SECTIONS */

.product-extra-section{
padding:60px 60px;
}

/* BUY TOGETHER */

.buy-together-box{
display:flex;
align-items:center;
gap:30px;
padding:40px;
background:#fafafa;
border-radius:12px;
}

.buy-product img{
width:120px;
height:120px;
object-fit:cover;
}

.buy-plus,
.buy-equal{
font-size:28px;
font-weight:600;
}

.buy-price{
margin-left:auto;
text-align:center;
}

.buy-old{
text-decoration:line-through;
color:#999;
}

.buy-new{
font-size:22px;
font-weight:700;
}

.buy-price button{
margin-top:10px;
padding:10px 20px;
background:black;
color:white;
border:none;
cursor:pointer;
}


/* FULL WIDTH PRODUCT SECTIONS */

.product-main-wrap,
.similar-products,
.you-may-like,
.buy-together,
.whatsnew-wrapper{
width:100%;
max-width:1600px;
margin:auto;
padding:0 40px;
box-sizing:border-box;
}
.cart-container{
max-width:900px;
margin:auto;
padding:40px;
font-family:Manrope;
}

.cart-steps{
display:flex;
gap:20px;
margin-bottom:20px;
}

.cart-steps span{
color:#aaa;
}

.cart-steps .active{
color:#000;
font-weight:600;
}

.offer-box{
background:#fafafa;
padding:15px;
margin-bottom:20px;
}

.offer-bar{
height:6px;
background:#eee;
border-radius:10px;
overflow:hidden;
margin-top:6px;
}

#offerProgress{
height:100%;
width:0%;
background:linear-gradient(90deg,#D4AF37,#f5d67a);
transition:width .4s ease;
}

.cart-item{
display:flex;
gap:20px;
padding:22px;
border-radius:14px;
background:white;
box-shadow:0 8px 20px rgba(0,0,0,0.06);
margin-bottom:22px;
align-items:center;
position:relative;
transition:all .25s ease;
}

.cart-item:hover{
transform:translateY(-3px);
box-shadow:0 14px 30px rgba(0,0,0,0.12);
}

.cart-item img{
width:120px;
border-radius:6px;
}
/* QUANTITY CONTROL */

.qty-control{
display:flex;
align-items:center;
gap:10px;
margin-top:8px;
}

.qty-control button{
width:28px;
height:28px;
border:1px solid #ddd;
background:white;
border-radius:6px;
cursor:pointer;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}

.qty-control button:hover{
background:#f5f5f5;
}

.qty-number{
min-width:20px;
text-align:center;
font-weight:500;
}

.price{
display:flex;
gap:10px;
}

.old{
text-decoration:line-through;
color:#999;
}

.discount{
color:green;
}

.qty{
margin-top:10px;
}

.qty button{
width:30px;
height:30px;
}

.cart-header{
display:flex;
justify-content:space-between;
align-items:center;
}

.close-cart{
background:none;
border:none;
font-size:20px;
cursor:pointer;
}

.cart-item{
position:relative;
display:flex;
gap:20px;
padding:15px;
border-bottom:1px solid #eee;
}

.remove-btn{
position:absolute;
top:10px;
right:10px;
border:none;
background:none;
font-size:16px;
cursor:pointer;
}

.checkout-bar{
position:fixed;
bottom:0;
left:0;
width:100%;
background:#fff;
padding:15px;
box-shadow:0 -3px 10px rgba(0,0,0,0.1);
}

.checkout-btn{
width:100%;
padding:16px;
margin-top:20px;
border:none;
border-radius:12px;
font-size:14px;
font-weight:600;
letter-spacing:1px;
cursor:pointer;

background:linear-gradient(135deg,#d4af37,#f3d67a,#caa233);
color:#111;

transition:all .3s ease;
}

.checkout-btn:hover{
transform:translateY(-2px);
box-shadow:0 10px 22px rgba(0,0,0,0.18);
}

.checkout-wrapper{
max-width:1200px;
margin:auto;
padding:40px;
font-family:'Cormorant Garamond',serif;
}

.checkout-title{
font-size:32px;
margin-bottom:20px;
}

.checkout-steps{
display:flex;
gap:30px;
margin-bottom:30px;
font-size:14px;
letter-spacing:1px;
}

.checkout-steps span{
color:#999;
}

.checkout-steps .active{
color:#d4af37;
font-weight:600;
}

.checkout-grid{
display:grid;
grid-template-columns:2fr 1fr;
gap:40px;
}

.checkout-left{
display:flex;
flex-direction:column;
gap:20px;
}

.cart-item{
display:flex;
gap:20px;
border-bottom:1px solid #eee;
padding-bottom:20px;
}

.cart-item img{
width:120px;
border-radius:6px;
}

.checkout-right{
border:1px solid #eee;
padding:25px;
border-radius:8px;
background:#fafafa;
}

.bill-row{
display:flex;
justify-content:space-between;
margin-bottom:10px;
font-size:14px;
}

.bill-total{
display:flex;
justify-content:space-between;
font-size:18px;
font-weight:600;
margin-top:10px;
}

.checkout-btn{
width:100%;
padding:16px;
margin-top:20px;
border:none;
border-radius:10px;
font-size:14px;
font-weight:600;
letter-spacing:1px;
cursor:pointer;

background:linear-gradient(135deg,#D4AF37,#f5d67a);
color:#000;

transition:all .3s ease;
}

.checkout-btn:hover{
transform:translateY(-2px);
box-shadow:0 8px 18px rgba(0,0,0,0.18);
}
.address-container{

max-width:800px;
margin:60px auto;
background:white;
padding:40px;
border-radius:10px;
box-shadow:0 8px 30px rgba(0,0,0,0.05);

}

.address-container h2{

font-family:'Cormorant Garamond',serif;
font-size:32px;
margin-bottom:30px;

}

.address-grid{

display:grid;
grid-template-columns:1fr 1fr;
gap:20px;

}

.address-grid input,
.address-grid select{

padding:14px;
border:1px solid #ddd;
border-radius:6px;
font-size:14px;
outline:none;
transition:0.2s;

}

.address-grid input:focus{

border-color:#d4af37;

}

.checkout-btn{

margin-top:25px;
width:100%;
padding:16px;
background:#d4af37;
border:none;
color:white;
font-size:16px;
cursor:pointer;
border-radius:6px;

}

.checkout-btn:hover{

background:#c79b2c;

}
.delivery-box{

margin-top:30px;
padding:20px;
background:#fafafa;
border:1px solid #eee;
border-radius:8px;

}

.delivery-box h3{

margin-bottom:10px;
font-size:18px;

}
.address-container,
.payment-container{

max-width:900px;
margin:60px auto;
font-family:'Manrope',sans-serif;

}

.address-card{

background:white;
padding:40px;
border-radius:10px;
box-shadow:0 10px 30px rgba(0,0,0,0.05);

}

.address-grid{

display:grid;
grid-template-columns:1fr 1fr;
gap:20px;

}

.input-group{

display:flex;
flex-direction:column;

}

.input-group label{

font-size:13px;
margin-bottom:5px;
color:#555;

}

.input-group input,
.input-group select{

padding:14px;
border:1px solid #ddd;
border-radius:6px;
font-size:14px;

}

.input-group input:focus{

border-color:#d4af37;
outline:none;

}

.save-address{

margin-top:15px;
font-size:14px;

}

/* ================= CHECKOUT BUTTON ================= */

.checkout-btn{
width:100%;
padding:14px;
margin-top:15px;
border:none;
border-radius:8px;
font-size:14px;
font-weight:600;
letter-spacing:1px;
cursor:pointer;

background:linear-gradient(135deg,#D4AF37,#f5d67a);
color:#000;

transition:.3s;
}

.checkout-btn:hover{
transform:translateY(-2px);
box-shadow:0 6px 15px rgba(0,0,0,.15);
}

.delivery-box{

margin-top:25px;
padding:20px;
display:flex;
gap:15px;
align-items:center;
background:#fafafa;
border:1px solid #eee;
border-radius:8px;

}

.delivery-box img{

width:40px;

}
/* ===============================
PREMIUM PAYMENT PAGE
=============================== */

/* MAIN LAYOUT */

.checkout-container{
  max-width:1200px;
  margin:60px auto;
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:40px;
  padding:20px;
}

/* LEFT SIDE */

.checkout-left{
  background:rgba(255,255,255,0.7);
  backdrop-filter:blur(14px);
  padding:35px;
  border-radius:18px;
  box-shadow:0 20px 50px rgba(0,0,0,0.08);
}

.checkout-title{
  font-size:28px;
  margin-bottom:25px;
}

/* PAYMENT OPTIONS */

.payment-card{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.payment-option{
  display:flex;
  align-items:center;
  gap:15px;
  padding:18px;
  border-radius:14px;
  background:#fff;
  border:1px solid #eee;
  cursor:pointer;
  transition:0.3s;
}

.payment-option:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

/* ACTIVE SELECTION */

.payment-option.active{
  border:1px solid #D4AF37;
  background:rgba(212,175,55,0.08);
}

/* RADIO */

.payment-option input{
  accent-color:#D4AF37;
  transform:scale(1.2);
}

/* TEXT */

.option-content{
  display:flex;
  flex-direction:column;
}

.option-title{
  font-weight:600;
  font-size:15px;
}

.option-desc{
  font-size:13px;
  color:#777;
}

/* SECURE BOX */

.secure-box{
  margin-top:25px;
  font-size:13px;
  color:#666;
}

/* RIGHT SIDE (ORDER SUMMARY) */

.checkout-right{
  background:#fff;
  padding:30px;
  border-radius:18px;
  box-shadow:0 20px 50px rgba(0,0,0,0.08);
  height:fit-content;
  position:sticky;
  top:40px;
}

.checkout-right h3{
  margin-bottom:20px;
}

/* ORDER ROW */

.order-row{
  display:flex;
  justify-content:space-between;
  margin-bottom:12px;
  font-size:14px;
}

.order-row.total{
  margin-top:15px;
  font-weight:600;
  font-size:16px;
}

/* BUTTON */

.place-order-btn{
  margin-top:25px;
  width:100%;
  padding:16px;
  border:none;
  border-radius:14px;
  font-size:15px;
  font-weight:600;
  cursor:pointer;

  background:linear-gradient(135deg,#D4AF37,#f5d67a,#caa233);
  color:#111;

  transition:all .3s ease;
}

.place-order-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 25px rgba(0,0,0,0.2);
}

/* MOBILE */

@media(max-width:768px){
  .checkout-container{
    grid-template-columns:1fr;
  }
}
/* ================= LUXURY OFFER ================= */

.offer-box{
max-width:1100px;
margin:auto;
padding:20px 22px;
background:#faf7f1;
border:1px solid #eee;
border-radius:12px;
margin-top:20px;
box-shadow:0 2px 8px rgba(0,0,0,0.04);
}

.offer-title{
font-size:12px;
letter-spacing:2px;
color:#b8963d;
font-weight:600;
text-transform:uppercase;
}

#offerText{
font-size:14px;
margin-top:5px;
color:#333;
}

.offer-bar{
height:6px;
background:#e5e5e5;
border-radius:10px;
overflow:hidden;
margin-top:10px;
}

#offerProgress{
height:100%;
width:0%;
background:linear-gradient(90deg,#D4AF37,#f5d67a,#D4AF37);
transition:width .4s ease;
}
/* ================= CART LUXURY LAYOUT ================= */

.cart-container{
max-width:1100px;
margin:auto;
padding:30px 20px;
}

.cart-title{
font-size:36px;
letter-spacing:4px;
font-weight:600;
margin-bottom:35px;
}

.cart-layout{
display:grid;
grid-template-columns:2fr 1fr;
gap:40px;
}

.cart-item{
display:flex;
gap:18px;
padding:18px;
border-radius:12px;
background:#fff;
box-shadow:0 4px 12px rgba(0,0,0,0.06);
margin-bottom:18px;
position:relative;
align-items:center;
}

.cart-item img{
width:110px;
height:110px;
object-fit:cover;
border-radius:12px;
background:#fafafa;
padding:4px;
}

.cart-item button{
background:none;
border:none;
font-size:16px;
cursor:pointer;
}

.cart-item div button{
width:30px;
height:30px;
border:1px solid #ddd;
background:#fff;
border-radius:6px;
cursor:pointer;
font-size:14px;
}

.cart-item div button:hover{
background:#f6f6f6;
}

.cart-item div span{
margin:0 8px;
font-weight:500;
}
.remove-btn{
position:absolute;
right:12px;
top:12px;
font-size:16px;
color:#999;
background:none;
border:none;
cursor:pointer;
}

.remove-btn:hover{
color:#000;
}

.cart-item button:first-child:hover{
color:#000;
}

.cart-item button:first-child:hover{
color:#000;
}
/* ================= BILL SUMMARY ================= */


.bill-summary{
border:none;
padding:28px;
border-radius:14px;
background:white;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
height:fit-content;
}
.bill-summary h3{
margin-bottom:15px;
font-size:18px;
}

.bill-row{
display:flex;
justify-content:space-between;
margin:8px 0;
font-size:14px;
}

.bill-row.discount{
color:#0a8a3a;
}

.total{
display:flex;
justify-content:space-between;
font-weight:600;
font-size:16px;
margin-top:10px;
}
.cart-layout{
display:grid;
grid-template-columns:2fr 1fr;
gap:60px;
}
.cart-item div button{
width:30px;
height:30px;
border:1px solid #ddd;
background:#fff;
border-radius:6px;
cursor:pointer;
font-size:14px;
transition:0.2s;
}

.cart-item div button:hover{
background:#f5f5f5;
}
/* ================= FIX QUANTITY CONTROL ================= */

.qty-control{
display:inline-flex;
align-items:center;
border:1px solid #ddd;
border-radius:8px;
overflow:hidden;
margin-top:6px;
}

.qty-control button{
width:32px;
height:32px;
border:none;
background:#fff;
cursor:pointer;
font-size:18px;
display:flex;
align-items:center;
justify-content:center;
transition:0.2s;
}

.qty-control button:hover{
background:#f5f5f5;
}

.qty-number{
width:32px;
text-align:center;
font-weight:500;
font-size:14px;
}
/* =================================
FINAL CART FIX (DO NOT REMOVE)
This overrides earlier duplicate rules
================================= */

.cart-item{
display:flex !important;
align-items:center !important;
gap:18px !important;
padding:18px !important;
border-radius:12px !important;
background:#fff !important;
box-shadow:0 4px 12px rgba(0,0,0,0.06) !important;
margin-bottom:18px !important;
position:relative !important;
}

.cart-item img{
width:110px !important;
height:110px !important;
object-fit:cover !important;
border-radius:12px !important;
background:#fafafa !important;
padding:4px !important;
}


/* QUANTITY CONTROL */

.qty-control{
display:inline-flex !important;
align-items:center !important;
border:1px solid #ddd !important;
border-radius:8px !important;
overflow:hidden !important;
margin-top:6px !important;
background:#fafafa !important;
}

.qty-control button{
width:32px !important;
height:32px !important;
border:none !important;
background:#fff !important;
cursor:pointer !important;
font-size:18px !important;
display:flex !important;
align-items:center !important;
justify-content:center !important;
transition:0.2s !important;
}

.qty-control button:hover{
background:#f5f5f5 !important;
}

.qty-number{
width:32px !important;
text-align:center !important;
font-weight:500 !important;
font-size:14px !important;
}


/* CART LAYOUT */

.cart-layout{
display:grid !important;
grid-template-columns:2fr 1fr !important;
gap:60px !important;
}


/* BILL SUMMARY */

.bill-summary{
border:none !important;
padding:28px !important;
border-radius:14px !important;
background:white !important;
box-shadow:0 10px 30px rgba(0,0,0,0.08) !important;
height:fit-content !important;
}


/* CHECKOUT BUTTON */

.checkout-btn{
width:100% !important;
padding:16px !important;
margin-top:20px !important;
border:none !important;
border-radius:12px !important;
font-size:14px !important;
font-weight:600 !important;
letter-spacing:1px !important;
cursor:pointer !important;
background:linear-gradient(135deg,#D4AF37,#f5d67a) !important;
color:#000 !important;
transition:all .3s ease !important;
}

.checkout-btn:hover{
transform:translateY(-2px) !important;
box-shadow:0 8px 18px rgba(0,0,0,0.18) !important;
}
.checkout-title{
text-align:center;
margin:20px 0;
}

.checkout-container{

max-width:1100px;
margin:auto;
display:grid;
grid-template-columns:2fr 1fr;
gap:30px;
padding:20px;

}

/* Address Box */

.address-box{

background:#fff;
padding:30px;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.08);

max-height:80vh;
overflow-y:auto;

}

.order-box{

background:#fff;
padding:30px;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
height:fit-content;

}

/* FORM */

.form-group{

display:flex;
flex-direction:column;
margin-bottom:18px;

}

.form-group label{

font-size:14px;
font-weight:600;
margin-bottom:6px;

}

.form-group input,
.form-group select{

padding:12px;
border-radius:8px;
border:1px solid #ddd;
font-size:14px;

}

.form-group input:focus{

border-color:#d4af37;
outline:none;

}

/* GRID */

.form-row{

display:grid;
grid-template-columns:1fr 1fr;
gap:20px;

}

/* PAY BUTTON */

.pay-btn{

width:100%;
padding:14px;
background:#d4af37;
color:white;
font-size:16px;
font-weight:600;
border:none;
border-radius:10px;
cursor:pointer;
margin-top:20px;

}

.pay-btn:hover{

background:#b8962f;

}

/* MOBILE */

@media(max-width:768px){

.checkout-container{

grid-template-columns:1fr;

}

.form-row{

grid-template-columns:1fr;

}

}
/* ===============================
PREMIUM CHECKOUT FIX
=============================== */

.checkout-title{
text-align:center;
font-size:34px;
margin:30px 0;
font-family:'Cormorant Garamond',serif;
}

/* MAIN LAYOUT */

.checkout-container{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:2fr 1fr;
gap:40px;
padding:30px;
}

/* ADDRESS CARD */

.address-box{
background:#ffffff;
padding:35px;
border-radius:14px;
box-shadow:0 15px 40px rgba(0,0,0,0.08);

max-height:75vh;
overflow-y:auto;
}

/* SCROLLBAR */

.address-box::-webkit-scrollbar{
width:6px;
}

.address-box::-webkit-scrollbar-thumb{
background:#d4af37;
border-radius:10px;
}

/* ORDER SUMMARY */

.order-box{
background:#ffffff;
padding:30px;
border-radius:14px;
box-shadow:0 15px 40px rgba(0,0,0,0.08);

position:sticky;
top:30px;
height:fit-content;
}

/* FORM */

.form-group{
display:flex;
flex-direction:column;
margin-bottom:18px;
}

.form-group label{
font-size:13px;
font-weight:600;
color:#555;
margin-bottom:6px;
}

.form-group input,
.form-group select{
padding:13px;
border-radius:8px;
border:1px solid #ddd;
font-size:14px;
transition:0.2s;
}

.form-group input:focus,
.form-group select:focus{
border-color:#d4af37;
box-shadow:0 0 0 2px rgba(212,175,55,0.15);
outline:none;
}

/* GRID */

.form-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:20px;
}

/* PAYMENT BUTTON */

.pay-btn{
width:100%;
padding:16px;
background:linear-gradient(135deg,#d4af37,#f5d67a);
color:#000;
font-size:16px;
font-weight:600;
border:none;
border-radius:12px;
cursor:pointer;
margin-top:20px;
transition:0.3s;
}

.pay-btn:hover{
transform:translateY(-2px);
box-shadow:0 8px 20px rgba(0,0,0,0.15);
}

/* MOBILE */

@media(max-width:768px){

.checkout-container{
grid-template-columns:1fr;
}

.address-box{
max-height:none;
}

.form-row{
grid-template-columns:1fr;
}

}
.cart-icon-box{
position:relative;
cursor:pointer;
}

.cart-count{
position:absolute;
top:-6px;
right:-8px;
background:var(--rose);
color:white;
font-size:11px;
padding:2px 6px;
border-radius:50%;
}

.category-header{

display:flex;
align-items:center;
gap:20px;
padding:40px 60px;

}
.filter-drawer{
position:fixed;
left:-380px;
top:0;
width:380px;
height:100%;
background:#fff;
overflow:auto;
padding:20px;
transition:0.3s;
z-index:1000;
}

.filter-drawer.active{
left:0;
}

.filter-section{
margin-bottom:25px;
}

.filter-section h4{
margin-bottom:10px;
font-size:14px;
}

.filter-section label{
display:block;
margin-bottom:6px;
font-size:13px;
cursor:pointer;
}

#filterOverlay{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.4);
display:none;
}

.filter-buttons{
display:flex;
gap:10px;
}

.filter-buttons button{
flex:1;
padding:10px;
cursor:pointer;
}
.filter-options{
display:none;
margin-top:10px;
}

.filter-options.open{
display:block;
}

.filter-title{
font-weight:600;
cursor:pointer;
padding:8px 0;
border-bottom:1px solid #eee;
}
/* ===============================
LUXURY BACKGROUND
=============================== */

body{
  background:
    radial-gradient(circle at top, rgba(255,255,255,0.78), transparent 32%),
    radial-gradient(circle at top left,#f9e6eb,#f3dfe5,#f7e8ec);
  line-height:1.5;
}


/* ===============================
GLASS EFFECT UPGRADE
=============================== */

.checkout-left{
  background: rgba(255,255,255,0.55);
  backdrop-filter: blur(25px);
  border:1px solid rgba(255,255,255,0.3);
}


/* ===============================
PAYMENT OPTION PREMIUM
=============================== */

.payment-option{
  background: linear-gradient(145deg,#ffffff,#f7f7f7);
  border:1px solid #eee;
  position:relative;
  overflow:hidden;
}

/* GOLD LEFT LINE (PREMIUM TOUCH) */
.payment-option::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  height:100%;
  width:4px;
  background:linear-gradient(#D4AF37,#f5d67a);
  opacity:0;
  transition:0.3s;
}

.payment-option.active::before{
  opacity:1;
}

.payment-option.active{
  background:linear-gradient(145deg,#fff,#fffaf0);
  box-shadow:0 10px 30px rgba(212,175,55,0.25);
}


/* ===============================
ORDER SUMMARY PREMIUM
=============================== */

.checkout-right{
  background: linear-gradient(145deg,#ffffff,#fafafa);
  border:1px solid #eee;
}

/* SOFT INNER GLOW */
.order-box{
  background:linear-gradient(145deg,#fff,#f9f9f9);
}


/* ===============================
BUTTON UPGRADE (WOW EFFECT)
=============================== */

.place-order-btn{
  position:relative;
  overflow:hidden;
}

/* SHINE EFFECT */
.place-order-btn::after{
  content:"";
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,0.5),
    transparent
  );
  transition:0.6s;
}

.place-order-btn:hover::after{
  left:100%;
}


/* ===============================
HOVER MICRO-INTERACTIONS
=============================== */

.payment-option:hover{
  transform:translateY(-4px) scale(1.01);
}

.checkout-right{
  transition:0.3s;
}

.checkout-right:hover{
  transform:translateY(-4px);
}
/* ADDRESS PREVIEW */

.address-preview{
  background:#fff;
  padding:15px;
  border-radius:10px;
  margin-bottom:20px;
  border:1px solid #eee;
}

/* COUPON */

.coupon-box{
  display:flex;
  gap:10px;
  margin-bottom:20px;
}

.coupon-box input{
  flex:1;
  padding:12px;
  border-radius:8px;
  border:1px solid #ddd;
}

.coupon-box button{
  padding:12px 16px;
  border:none;
  background:#D4AF37;
  color:white;
  border-radius:8px;
  cursor:pointer;
}

/* UPI BOX */

.upi-box{
  margin-top:20px;
  text-align:center;
  background:#fff;
  padding:20px;
  border-radius:12px;
  border:1px solid #eee;
}

.upi-box img{
  width:160px;
  margin:10px 0;
}

.cart-item-content{
  flex:1;
}

.cart-item-category{
  font-size:12px;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#8e7b52;
  margin-bottom:8px;
}

.cart-price-line{
  display:flex;
  align-items:center;
  gap:10px;
  margin:10px 0 14px;
  flex-wrap:wrap;
}

.current-price{
  font-weight:700;
}

.empty-cart-state{
  justify-content:center;
  align-items:center;
  min-height:240px;
  text-align:center;
}

.empty-cart-state .cart-item-content{
  max-width:420px;
}

.cart-container{
  max-width:1180px !important;
  padding:34px 20px 46px !important;
}

.cart-title{
  font-size:48px !important;
  letter-spacing:3px !important;
  line-height:1.05;
  margin-bottom:18px !important;
}

#bagCount{
  margin:0 0 24px !important;
  color:#7a6a44;
}

.offer-box{
  margin-top:26px !important;
  margin-bottom:26px !important;
  border-radius:18px !important;
}

.cart-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.95fr) !important;
  gap:28px !important;
  align-items:start;
}

.bill-summary{
  position:sticky;
  top:24px;
  border-radius:18px !important;
}

.bill-summary h3{
  font-size:30px;
  font-family:'Cormorant Garamond',serif;
  margin-bottom:18px;
}

.empty-cart-state{
  min-height:280px;
  border-radius:18px !important;
}

.empty-cart-state .cart-item-content{
  max-width:480px;
}

.empty-cart-state h3{
  font-family:'Cormorant Garamond',serif;
  font-size:36px;
  line-height:1.08;
  margin:8px 0 12px;
}

.empty-cart-state p{
  line-height:1.7;
}

#bagCount{
  margin:-18px 0 24px;
  color:#7a6a44;
}

#savedAddress{
  margin-bottom:24px;
}

.wishlist-btn.active{
  background:#fff3f3;
  border-color:#f0b6b6;
  color:#b32039;
}

.wishlist-page{
  max-width:1180px;
  margin:0 auto;
  padding:34px 20px 56px;
}

.wishlist-hero{
  background:linear-gradient(135deg,rgba(255,255,255,0.84),rgba(255,248,239,0.88));
  border:1px solid #eadfce;
  border-radius:28px;
  padding:32px 34px;
  margin-bottom:24px;
  box-shadow:0 18px 42px rgba(31,19,24,0.06);
}

.wishlist-eyebrow{
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#9d7b2f;
  margin-bottom:10px;
}

.wishlist-subtitle{
  max-width:620px;
  color:#675b43;
  margin:10px 0 16px;
  line-height:1.7;
}

.wishlist-count{
  color:#7d6940;
  font-weight:700;
  font-size:14px;
}

.wishlist-grid{
  display:grid;
  gap:18px;
}

.wishlist-card{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:18px;
  background:#fff;
  border:1px solid #ede3dc;
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 34px rgba(31,19,24,0.07);
  position:relative;
  align-items:start;
}

.wishlist-card-media{
  cursor:pointer;
}

.wishlist-card-media img{
  width:100%;
  height:138px;
  object-fit:cover;
  border-radius:16px;
  background:#faf7f4;
}

.wishlist-card-brand{
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#a4864a;
  margin-bottom:8px;
}

.wishlist-card-body h3{
  margin:0 0 10px;
  cursor:pointer;
  font-size:28px;
  line-height:1.14;
  color:#20161d;
}

.wishlist-card-price{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  font-weight:700;
  margin-bottom:18px;
}

.wishlist-card-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.wishlist-secondary{
  border:1px solid #d9d2c4;
  background:#fff;
  color:#3f3523;
  border-radius:999px;
  padding:12px 18px;
  cursor:pointer;
  font-weight:700;
}

.wishlist-remove{
  position:absolute;
  top:14px;
  right:14px;
  border:none;
  background:#fff7f4;
  color:#8d6b6b;
  cursor:pointer;
  border-radius:999px;
  padding:8px 12px;
  font-size:13px;
  font-weight:700;
  border:1px solid #f0dfd7;
}

.wishlist-empty{
  background:#fff;
  border-radius:24px;
  padding:52px 32px;
  text-align:center;
  box-shadow:0 18px 40px rgba(0,0,0,0.05);
}

.wishlist-empty .checkout-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto !important;
  max-width:100%;
  min-width:0;
  margin-top:10px;
  padding:14px 22px !important;
  border-radius:18px !important;
  box-sizing:border-box;
  white-space:normal;
  text-align:center;
}

.wishlist-page h1{
  font-size:48px;
  letter-spacing:3px;
  line-height:1.05;
  margin-bottom:12px;
}

@media(max-width:900px){
  .wishlist-page h1{
    font-size:38px;
  }

  .wishlist-card{
    grid-template-columns:92px minmax(0,1fr);
    gap:12px;
    padding:14px;
  }

  .wishlist-card-media img{
    height:112px;
    border-radius:14px;
  }

  .wishlist-card-body h3{
    font-size:18px;
    line-height:1.35;
  }

  .wishlist-empty{
    padding:34px 20px;
  }
}

.address-shell{
  display:grid;
  gap:24px;
}

.address-header{
  background:linear-gradient(135deg,#fff8ee,#f7efde);
  border:1px solid #eadcc0;
  border-radius:20px;
  padding:28px 30px;
}

.address-location-panel{
  display:grid;
  grid-template-columns:1fr 380px;
  gap:22px;
  align-items:stretch;
}

.address-location-copy,
.address-map-card{
  background:#fff;
  border:1px solid #eadcc0;
  border-radius:20px;
  padding:24px;
  box-shadow:0 18px 40px rgba(0,0,0,0.05);
}

.address-location-copy h3{
  margin:0 0 10px;
  font-size:30px;
}

.address-location-copy p:last-of-type{
  color:#6e6149;
  line-height:1.7;
}

.address-location-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.address-map-card iframe{
  width:100%;
  height:100%;
  min-height:250px;
  border:0;
  border-radius:14px;
}

.address-step{
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#a07d33;
  margin-bottom:8px;
}

.premium-address-card{
  border-radius:18px;
  box-shadow:0 18px 40px rgba(0,0,0,0.06);
}

.address-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.address-section-title.compact{
  margin-top:28px;
}

.location-btn{
  white-space:nowrap;
}

.standard-form-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 12px;
  border-radius:999px;
  background:#f8efdd;
  color:#916e2b;
  font-size:12px;
  font-weight:700;
}

.span-2{
  grid-column:span 2;
}

.address-type-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:20px;
}

.address-chip{
  position:relative;
}

.address-chip input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.address-chip span{
  display:inline-flex;
  align-items:center;
  padding:10px 18px;
  border:1px solid #ddd4c0;
  border-radius:999px;
  background:#fffdf8;
  cursor:pointer;
}

.address-chip input:checked + span{
  border-color:#d4af37;
  background:#fff4cf;
}

.premium-save{
  display:flex;
  align-items:center;
  gap:10px;
}

.premium-delivery-box{
  justify-content:space-between;
  gap:20px;
}

.saved-address-card{
  border-radius:18px;
}

.saved-address-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.saved-address-checkout{
  margin-top:22px;
}

.saved-address-checkout .checkout-btn{
  min-width:240px;
}

@media(max-width:768px){
  .menu-drawer{
    width:min(360px, calc(100vw - 16px));
    left:calc(-1 * min(360px, calc(100vw - 16px)));
  }

  .menu-drawer-scroll{
    padding:18px 14px 16px;
  }

  .sale-bar{
    font-size:11px;
    padding:8px 10px;
    line-height:1.5;
  }

  .top-links{
    padding:8px 14px;
    gap:18px;
    overflow-x:auto;
    white-space:nowrap;
  }

  .main-header{
    padding:18px 14px;
    min-height:96px;
  }

  .logo{
    position:static;
    left:auto;
    transform:none;
    margin:0 auto;
  }

  .logo img{
    height:72px;
  }

  .header-icons{
    gap:14px;
  }

  .address-container{
    width:calc(100% - 24px);
    max-width:none;
    margin:20px auto 32px;
    padding:16px;
    border-radius:18px;
  }

  .address-shell{
    gap:18px;
  }

  .address-header{
    padding:22px 18px;
    border-radius:18px;
  }

  .address-header h2{
    font-size:24px;
    margin-bottom:12px;
  }

  .address-header p:last-child{
    font-size:14px;
    line-height:1.6;
  }

  .wishlist-card{
    grid-template-columns:1fr;
  }

  .span-2{
    grid-column:span 1;
  }

  .address-section-title,
  .saved-address-top,
  .premium-delivery-box{
    flex-direction:column;
    align-items:flex-start;
  }

  .saved-address-actions{
    display:flex;
    flex-direction:column;
    width:100%;
    gap:10px;
  }

  .address-location-panel{
    grid-template-columns:1fr;
    gap:16px;
  }

  .address-location-copy,
  .address-map-card,
  .address-card,
  .saved-address-card{
    padding:18px 16px;
    border-radius:18px;
  }

  .address-location-copy h3{
    font-size:22px;
    line-height:1.15;
  }

  .address-location-actions{
    flex-direction:column;
  }

  .address-location-actions .wishlist-secondary,
  .saved-address-actions .wishlist-secondary,
  .saved-address-top .wishlist-secondary,
  .saved-address-checkout .checkout-btn{
    width:100%;
    text-align:center;
    justify-content:center;
  }

  .address-grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .address-grid input,
  .address-grid select{
    width:100%;
  }

  .address-section-title{
    margin-bottom:14px;
  }

  .standard-form-badge{
    font-size:11px;
  }

  .address-type-row{
    gap:10px;
  }

  .address-chip{
    flex:1 1 calc(50% - 10px);
  }

  .address-chip span{
    width:100%;
    justify-content:center;
  }

  .premium-save{
    align-items:flex-start;
    font-size:13px;
    line-height:1.5;
  }

  .premium-delivery-box{
    padding:18px 16px;
  }

  .saved-address-checkout .checkout-btn{
    width:100%;
    min-width:0;
  }
}

@media(max-width:520px){
  .menu-drawer{
    width:calc(100vw - 12px);
    left:calc(-1 * (100vw - 12px));
  }

  .top-links{
    font-size:12px;
  }

  .main-header{
    padding:14px 12px;
    min-height:84px;
  }

  .logo img{
    height:60px;
  }

  .header-icons i{
    width:18px;
    height:18px;
  }

  .address-container{
    width:calc(100% - 16px);
    padding:12px;
  }

  .address-header,
  .address-location-copy,
  .address-map-card,
  .address-card,
  .saved-address-card,
  .premium-delivery-box{
    padding:16px 14px;
  }

  .address-header h2{
    font-size:20px;
  }

  .address-location-copy h3{
    font-size:19px;
  }

  .address-step{
    font-size:11px;
    letter-spacing:1.4px;
  }

  .address-chip{
    flex:1 1 100%;
  }
}

.checkout-shell{
  max-width:1240px;
  margin:0 auto;
  padding:28px 20px 60px;
}

.checkout-hero{
  margin-bottom:26px;
}

.premium-payment-hero{
  background:
    radial-gradient(circle at top right, rgba(212,175,55,0.18), transparent 26%),
    linear-gradient(135deg,#fff9ef,#f7efdf);
  border:1px solid #ebddc1;
  border-radius:26px;
  padding:34px 36px;
  box-shadow:0 24px 55px rgba(0,0,0,0.05);
}

.premium-payment-layout{
  align-items:start;
}

.premium-payment-left{
  gap:22px;
}

.premium-address-preview{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border-radius:18px;
  border:1px solid #efe5d8;
  background:linear-gradient(180deg,#fff,#fffaf4);
  box-shadow:0 16px 36px rgba(0,0,0,0.05);
}

.address-preview-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.address-preview-meta span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#f8f3ea;
  border:1px solid #eadfcb;
  color:#6d5a2e;
  font-size:12px;
  font-weight:600;
}

.premium-coupon-box{
  background:#fff;
  border-radius:18px;
  padding:16px;
  border:1px solid #efe5d8;
  box-shadow:0 16px 36px rgba(0,0,0,0.05);
}

.coupon-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}

.coupon-head span{
  font-size:14px;
  font-weight:700;
  color:#2a1a1c;
}

.coupon-head small{
  color:#8a7a5a;
  font-size:12px;
}

.payment-panel{
  background:rgba(255,255,255,0.7);
  border:1px solid rgba(255,255,255,0.55);
  border-radius:24px;
  padding:24px;
  box-shadow:0 24px 48px rgba(0,0,0,0.06);
}

.payment-panel-header{
  margin-bottom:18px;
}

.payment-panel-header p{
  color:#74684f;
}

.premium-payment-card{
  display:grid;
  gap:14px;
}

.payment-option{
  justify-content:space-between;
}

.payment-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:8px 12px;
  border-radius:999px;
  background:#f8f1df;
  color:#8b6d27;
  font-size:12px;
  font-weight:700;
  letter-spacing:.4px;
}

.premium-upi-box{
  margin:4px 0 8px;
  background:linear-gradient(135deg,#fff,#fcf5e8);
}

.premium-secure-box{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:0;
}

.secure-pill{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #eadfcb;
  color:#6c5f46;
  font-size:13px;
  box-shadow:0 10px 24px rgba(0,0,0,0.04);
}

.premium-payment-right{
  overflow:hidden;
}

.premium-summary-header{
  margin-bottom:16px;
}

.premium-order-box{
  background:linear-gradient(180deg,#fff,#fffaf4);
  border:1px solid #efe5d8;
  border-radius:20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);
}

.premium-summary-items{
  margin:18px 0;
  padding:16px 0;
  border-top:1px solid #ece4d7;
  border-bottom:1px solid #ece4d7;
}

.order-items-title{
  font-size:12px;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:#9a7b36;
  margin-bottom:10px;
}

.payment-review-note{
  display:grid;
  gap:10px;
  margin-top:14px;
  padding:14px 16px;
  border-radius:16px;
  background:#fff;
  border:1px solid #efe5d8;
  color:#5f5132;
  font-size:13px;
  box-shadow:0 10px 26px rgba(0,0,0,0.04);
}

.payment-terms-note{
  margin-top:12px;
  text-align:center;
  color:#75674f;
  font-size:12px;
  line-height:1.6;
}

@media(max-width:768px){
  .checkout-shell{
    padding:18px 14px 42px;
  }

  .premium-payment-hero{
    padding:22px 18px;
    border-radius:20px;
  }

  .premium-payment-hero h1{
    font-size:38px;
    line-height:1.04;
  }

  .premium-payment-hero p:last-child{
    font-size:15px;
    line-height:1.6;
  }

  .checkout-container{
    margin:22px auto 0;
    padding:0;
    gap:18px;
  }

  .checkout-left,
  .checkout-right{
    padding:20px 16px;
    border-radius:18px;
  }

  .checkout-right{
    position:static;
    top:auto;
  }

  .premium-address-preview,
  .payment-panel,
  .premium-order-box,
  .premium-coupon-box{
    border-radius:18px;
  }

  .premium-address-preview{
    padding:18px 16px;
    gap:14px;
  }

  .premium-address-preview .wishlist-secondary{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .coupon-box{
    flex-direction:column;
  }

  .coupon-head{
    flex-direction:column;
    align-items:flex-start;
  }

  .coupon-box input,
  .coupon-box button,
  .place-order-btn{
    width:100%;
  }

  .coupon-box button{
    min-height:48px;
  }

  .payment-panel{
    padding:20px 16px;
  }

  .checkout-title{
    font-size:22px;
    margin-bottom:10px;
  }

  .payment-option{
    align-items:flex-start;
    gap:12px;
    padding:16px 14px;
  }

  .payment-badge{
    min-width:auto;
    padding:7px 10px;
    font-size:11px;
  }

  .option-content{
    flex:1;
  }

  .option-title{
    font-size:14px;
  }

  .option-desc{
    font-size:12px;
    line-height:1.5;
  }

  .premium-upi-box{
    padding:16px;
  }

  .premium-upi-box img{
    width:160px;
    height:160px;
  }

  .premium-secure-box{
    gap:10px;
  }

  .secure-pill{
    width:100%;
    justify-content:center;
  }

  .order-row{
    font-size:13px;
    gap:14px;
  }

  .address-preview-meta{
    margin-bottom:8px;
  }

  .payment-review-note{
    padding:12px 14px;
  }

  .payment-terms-note{
    font-size:11px;
  }
}

@media(max-width:520px){
  .premium-payment-hero h1{
    font-size:31px;
  }

  .address-step,
  .wishlist-eyebrow,
  .order-items-title{
    letter-spacing:1.2px;
  }

  .premium-address-preview,
  .payment-panel,
  .premium-coupon-box,
  .checkout-left,
  .checkout-right{
    padding:16px 14px;
  }

  .payment-option{
    flex-wrap:wrap;
  }

  .payment-option input{
    margin-top:3px;
  }

  .payment-badge{
    margin-left:30px;
  }

  .address-preview-meta span,
  .secure-pill{
    font-size:11px;
  }
}

.premium-filter-trigger{
  border:none;
  border-radius:999px;
  padding:14px 22px;
  background:linear-gradient(135deg,#111,#2b2418);
  color:#fff;
  cursor:pointer;
  box-shadow:0 16px 32px rgba(17,17,17,0.18);
}

.collection-hero{
  max-width:1180px;
  margin:0 auto 26px;
  padding:34px 20px 0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:30px;
}

.collection-hero-copy{
  max-width:700px;
}

.collection-hero-copy h1{
  font-size:42px;
  margin-bottom:12px;
}

.collection-hero-copy p:last-child{
  color:#6f6146;
}

.collection-hero-actions{
  display:flex;
  align-items:flex-start;
  gap:14px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.premium-sort-control{
  position:relative;
  display:grid;
  gap:8px;
  min-width:260px;
  padding:14px 16px;
  border-radius:24px;
  background:rgba(255,255,255,0.82);
  border:1px solid #ebdecd;
  box-shadow:0 14px 30px rgba(36,20,25,0.05);
}

.premium-sort-control span{
  font-size:11px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:#9f7433;
}

.premium-sort-trigger{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  border:none;
  background:transparent;
  color:#2f2718;
  font:inherit;
  font-weight:700;
  padding:0;
  cursor:pointer;
}

.premium-sort-trigger strong{
  font-size:17px;
}

.premium-sort-caret{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#f6efe2;
  color:#6a5235;
  font-size:18px;
  line-height:1;
}

.premium-sort-menu{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  right:0;
  z-index:20;
  display:none;
  gap:6px;
  padding:10px;
  border-radius:18px;
  background:#fffdf9;
  border:1px solid #ebdecd;
  box-shadow:0 20px 40px rgba(36,20,25,0.1);
}

.premium-sort-menu.open{
  display:grid;
}

.premium-sort-menu button{
  border:none;
  border-radius:12px;
  background:transparent;
  color:#33281c;
  font:inherit;
  font-weight:600;
  text-align:left;
  padding:12px 14px;
  cursor:pointer;
  transition:background .2s ease, color .2s ease, transform .2s ease;
}

.premium-sort-menu button:hover,
.premium-sort-menu button.active{
  background:#f6efe2;
  color:#23170f;
  transform:translateX(2px);
}

.premium-filter-drawer{
  left:-430px;
  width:430px;
  padding:26px 22px 28px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,0.14), transparent 30%),
    linear-gradient(180deg,#fffdf8,#f6f1e5);
  border-right:1px solid #ebdebf;
  box-shadow:20px 0 60px rgba(0,0,0,0.12);
}

.premium-filter-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.premium-filter-header button{
  border:none;
  background:#fff;
  border-radius:999px;
  padding:10px 16px;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,0.05);
}

.premium-filter-section{
  margin-bottom:16px;
  padding:16px 18px;
  background:rgba(255,255,255,0.74);
  border:1px solid #eee3cc;
  border-radius:18px;
}

.filter-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:none;
  padding:0;
  color:#2f2718;
}

.premium-filter-value{
  margin-top:12px;
  font-weight:600;
  color:#7b6224;
}

.premium-filter-list{
  display:grid;
  gap:10px;
}

.premium-filter-list label{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin-bottom:0 !important;
  padding:10px 12px;
  background:#fff;
  border:1px solid #f0e7d7;
  border-radius:12px;
}

.premium-filter-list input[type="checkbox"]{
  accent-color:#c9a646;
}

.premium-filter-buttons{
  position:sticky;
  bottom:0;
  padding-top:12px;
  background:linear-gradient(180deg, rgba(246,241,229,0), #f6f1e5 35%);
}

.premium-filter-buttons button{
  border:none;
  border-radius:14px;
  padding:14px 16px;
  font-weight:700;
}

.premium-filter-buttons button:first-child{
  background:#fff;
  border:1px solid #e8dcc4;
}

.premium-filter-buttons button:last-child{
  background:linear-gradient(135deg,#111,#30281d);
  color:#fff;
}

.premium-category-products{
  max-width:1180px;
  margin:0 auto;
  padding:0 20px 10px;
}

.collection-results-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
  color:#6d5a42;
  font-weight:700;
}

.collection-empty-state{
  grid-column:1 / -1;
  padding:34px 26px;
  border-radius:22px;
  background:rgba(255,255,255,0.86);
  border:1px solid #ebdecd;
  box-shadow:0 16px 36px rgba(29,16,12,0.05);
  text-align:center;
}

.collection-empty-state.is-error{
  background:#fff6f5;
  border:1px solid #efcbc5;
  color:#9d352d;
}

.product-rail-empty{
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:20px;
  background:#fff;
  border:1px solid #efe3dc;
  color:#6a5860;
  font-weight:600;
}

body.cart-page{
  background:
    radial-gradient(circle at top center, rgba(255,255,255,0.8), rgba(255,255,255,0) 38%),
    linear-gradient(180deg,#1f2433 0,#202636 18%,#f7e8ec 18%,#f8e9ee 100%);
}

body.cart-page .offer-box{
  max-width:1180px;
  margin:24px auto 0 !important;
  padding:18px 20px !important;
  border-radius:20px !important;
  background:rgba(255,255,255,0.88) !important;
  border:1px solid rgba(239,226,211,0.9);
  box-shadow:0 18px 36px rgba(30,24,35,0.08);
}

body.cart-page .offer-bar{
  height:8px;
  border-radius:999px;
  background:rgba(43,37,50,0.08);
}

body.cart-page #offerProgress{
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#d5b13b,#f1d86d);
}

body.cart-page .cart-container{
  max-width:1180px !important;
  padding:24px 20px 56px !important;
}

body.cart-page .cart-page-intro{
  display:flex;
  justify-content:flex-start;
  margin-bottom:18px;
}

body.cart-page .cart-back-btn{
  min-height:42px;
  padding:0 18px;
  border:1px solid rgba(239,226,211,0.95);
  border-radius:999px;
  background:rgba(255,255,255,0.9);
  color:#241419;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 12px 24px rgba(30,24,35,0.06);
}

body.cart-page .cart-title{
  font-size:46px !important;
  letter-spacing:2px !important;
  margin-bottom:10px !important;
}

body.cart-page #bagCount{
  margin:0 0 22px !important;
  color:#6c5962;
  font-size:15px;
}

body.cart-page .cart-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.92fr) !important;
  gap:28px !important;
  align-items:start;
}

body.cart-page .cart-items{
  display:grid;
  gap:18px;
}

body.cart-page .cart-item{
  display:grid !important;
  grid-template-columns:92px minmax(0,1fr) auto !important;
  gap:16px !important;
  align-items:start !important;
  padding:16px !important;
  margin-bottom:0 !important;
  border-radius:24px !important;
  background:rgba(255,255,255,0.94) !important;
  box-shadow:0 18px 36px rgba(30,24,35,0.08) !important;
  border:1px solid rgba(239,226,211,0.9);
}

body.cart-page .cart-item-index{
  grid-column:1 / -1;
  width:30px;
  height:30px;
  display:none !important;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#fff4d8;
  color:#6b5310;
  font-size:12px;
  font-weight:800;
}

body.cart-page .cart-item-media{
  width:92px;
  height:112px;
  display:block;
  border-radius:18px;
  overflow:hidden;
  background:#f8f0e6;
}

body.cart-page .cart-item img{
  width:100% !important;
  height:100% !important;
  padding:0 !important;
  border-radius:18px !important;
  object-fit:cover !important;
}

body.cart-page .cart-item-content{
  min-width:0;
}

body.cart-page .cart-item-content h3{
  margin:0 0 8px;
  font-family:'Cormorant Garamond',serif;
  font-size:31px;
  line-height:1;
}

body.cart-page .cart-item-content h3 a{
  color:#241419;
  text-decoration:none;
}

body.cart-page .cart-item-category{
  margin-bottom:8px;
  color:#a79164;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.4px;
}

body.cart-page .cart-price-line{
  margin:0 0 14px;
  gap:12px !important;
  flex-wrap:wrap;
}

body.cart-page .cart-price-line .current-price{
  color:#241419;
  font-size:28px;
  font-weight:700;
}

body.cart-page .cart-price-line .old{
  color:#9f95a0;
  text-decoration:line-through;
}

body.cart-page .cart-price-line .discount{
  color:#22863a;
  font-weight:700;
}

body.cart-page .qty-control{
  display:inline-grid !important;
  grid-template-columns:36px 44px 36px;
  align-items:center !important;
  gap:0 !important;
  margin-top:0 !important;
  border:1px solid rgba(36,20,25,0.1) !important;
  border-radius:999px !important;
  overflow:hidden;
  background:#fff !important;
}

body.cart-page .qty-control button{
  width:36px !important;
  height:36px !important;
  border:none !important;
  background:#fff !important;
  color:#463b43;
  font-size:20px !important;
}

body.cart-page .qty-control button:disabled{
  opacity:.35;
  cursor:not-allowed !important;
}

body.cart-page .qty-number{
  width:auto !important;
  min-width:44px !important;
  font-size:14px !important;
  font-weight:700 !important;
}

body.cart-page .remove-btn{
  position:static !important;
  align-self:start;
  padding:4px 0;
  color:#a79ca5;
  font-size:14px;
  font-weight:600;
}

body.cart-page .bill-summary{
  position:sticky !important;
  top:24px;
  padding:28px 24px !important;
  border-radius:28px !important;
  background:rgba(255,255,255,0.94) !important;
  box-shadow:0 18px 36px rgba(30,24,35,0.08) !important;
  border:1px solid rgba(239,226,211,0.9);
}

body.cart-page .bill-summary h3{
  margin-bottom:18px;
  font-size:46px;
  line-height:1;
}

body.cart-page .bill-line,
body.cart-page .bill-total-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:8px 0;
  font-size:15px;
  color:#473d47;
}

body.cart-page .bill-total-line{
  margin-top:16px;
  font-size:24px;
  font-weight:700;
  color:#241419;
}

body.cart-page .bill-summary hr{
  margin:18px 0 16px;
  border:none;
  border-top:1px solid rgba(36,20,25,0.12);
}

body.cart-page .checkout-btn{
  min-height:58px !important;
  border-radius:18px !important;
  font-size:16px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:none;
}

body.cart-page .checkout-btn.is-disabled{
  opacity:.6;
  cursor:not-allowed !important;
}

body.cart-page .empty-cart-state{
  min-height:260px;
  grid-template-columns:1fr !important;
  justify-items:start;
}

@media (max-width: 768px){
  body.cart-page .cart-layout{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  body.cart-page .bill-summary{
    position:static !important;
    top:auto;
  }
}

@media (max-width: 520px){
  body.cart-page{
    background:
      linear-gradient(180deg,#1f2433 0,#1f2433 16%,#f7e8ec 16%,#f7e8ec 100%);
  }

  body.cart-page .offer-box{
    margin:18px 12px 0 !important;
    padding:16px !important;
    border-radius:18px !important;
  }

  body.cart-page .cart-container{
    padding:18px 12px 36px !important;
  }

  body.cart-page .cart-title{
    font-size:30px !important;
    letter-spacing:1.4px !important;
  }

  body.cart-page .cart-item{
    grid-template-columns:76px minmax(0,1fr) !important;
    gap:12px !important;
    padding:14px !important;
    border-radius:20px !important;
  }

  body.cart-page .cart-item-index{
    width:26px;
    height:26px;
    font-size:11px;
  }

  body.cart-page .remove-btn{
    grid-column:2;
    justify-self:end;
    margin-top:-32px;
    font-size:13px;
  }

  body.cart-page .cart-item-media{
    width:76px;
    height:96px;
    border-radius:14px;
  }

  body.cart-page .cart-item img{
    border-radius:14px !important;
  }

  body.cart-page .cart-item-content h3{
    font-size:26px;
    line-height:1.02;
    margin-right:34px;
  }

  body.cart-page .cart-price-line .current-price{
    font-size:24px;
  }

  body.cart-page .bill-summary{
    padding:22px 18px !important;
    border-radius:24px !important;
  }

  body.cart-page .bill-summary h3{
    font-size:40px;
  }

  body.cart-page .checkout-btn{
    min-height:54px !important;
    border-radius:16px !important;
    font-size:15px !important;
  }
}

.premium-collection-benefits{
  max-width:1180px;
  margin:18px auto 0;
  padding:0 20px 30px;
}

.home-header{
  position:sticky;
  top:0;
  z-index:40;
  backdrop-filter:blur(12px);
}

.menu-icon{
  border:none;
  appearance:none;
}

.menu-drawer{
  position:fixed;
  top:0;
  left:-360px;
  width:360px;
  height:100vh;
  padding:0;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,0.18), transparent 26%),
    radial-gradient(circle at 20% 18%, rgba(255,255,255,0.08), transparent 30%),
    linear-gradient(180deg,#241813,#4a2d33 62%, #5a3540);
  color:#fff8ee;
  z-index:60;
  transition:left .3s ease, box-shadow .3s ease;
  display:flex;
  flex-direction:column;
  box-shadow:20px 0 60px rgba(0,0,0,0.24);
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,0.22) transparent;
}

.menu-drawer.active{
  left:0;
}

.menu-drawer-scroll{
  min-height:100%;
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:22px 18px 18px;
}

.menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(17,12,8,0.38);
  opacity:0;
  visibility:hidden;
  transition:.3s;
  z-index:55;
}

.menu-overlay.active{
  opacity:1;
  visibility:visible;
}

.menu-drawer-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.menu-brand-block{
  display:grid;
  gap:8px;
}

.menu-drawer-header h3{
  font-family:'Cormorant Garamond',serif;
  font-size:34px;
  color:#fff6e9;
  line-height:0.95;
}

.menu-brand-copy{
  color:rgba(255,247,238,0.78);
  font-size:12px;
  line-height:1.5;
  max-width:230px;
}

.menu-drawer-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.menu-drawer-highlights span{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.08);
  color:#fff3de;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.menu-close{
  border:none;
  border-radius:999px;
  padding:10px 14px;
  cursor:pointer;
  background:#fff7ee;
  color:#2f241c;
  font-weight:700;
}

.menu-drawer-nav{
  display:grid;
  gap:10px;
  flex:1 0 auto;
}

.menu-drawer-section{
  display:grid;
  gap:8px;
}

.menu-section-label{
  margin:2px 4px 0;
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#d9b56a;
  font-weight:700;
}

.menu-drawer-nav a{
  text-decoration:none;
  color:#fff7ee;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.06);
  font-size:14px;
  font-weight:700;
  transition:.2s ease;
}

.menu-drawer-nav a:hover{
  background:rgba(255,255,255,0.13);
  transform:translateX(2px);
}

.menu-drawer-subnav{
  display:grid;
  gap:6px;
  margin-top:-2px;
  padding-left:14px;
}

.menu-drawer-subnav a{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,0.04);
  font-size:13px;
  font-weight:600;
}

.menu-drawer-card{
  margin-top:auto;
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,0.09);
  border:1px solid rgba(255,255,255,0.12);
  display:grid;
  gap:10px;
  box-shadow:0 16px 32px rgba(15,8,5,0.18);
}

.menu-contact-line{
  display:grid;
  gap:4px;
}

.menu-contact-line span{
  font-size:11px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:#d9b56a;
}

.menu-contact-line strong{
  color:#fff7ee;
  font-size:15px;
  font-weight:700;
}

.luxury-hero{
  height:82vh;
}

.hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.hero-secondary-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 24px;
  border-radius:999px;
  text-decoration:none;
  background:rgba(255,255,255,0.14);
  border:1px solid rgba(255,255,255,0.24);
  color:#fff;
  backdrop-filter:blur(10px);
}

.luxury-strip,
.luxury-editorial,
.service-ribbon,
.home-discovery{
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
}

.luxury-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:-42px;
  position:relative;
  z-index:5;
}

.luxury-strip-card,
.service-ribbon-card{
  background:rgba(255,255,255,0.88);
  border:1px solid #efe4d2;
  border-radius:20px;
  padding:20px;
  box-shadow:0 18px 38px rgba(0,0,0,0.05);
}

.luxury-strip-card strong,
.service-ribbon-card strong{
  display:block;
  margin-bottom:8px;
}

.luxury-strip-card span,
.service-ribbon-card span{
  color:#6d6149;
  line-height:1.6;
}

.luxury-editorial{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:20px;
  padding-top:40px;
  padding-bottom:10px;
}

.home-discovery{
  display:grid;
  grid-template-columns:1.2fr 0.9fr;
  gap:24px;
  padding-top:44px;
  padding-bottom:18px;
}

.home-search-card,
.home-benefit-stack{
  background:#ffffff;
  border:1px solid #eadfce;
  border-radius:24px;
  padding:32px;
  box-shadow:0 16px 36px rgba(29,16,12,0.05);
}

.home-search-card h2{
  font-size:48px;
  line-height:1.05;
  margin-bottom:14px;
}

.home-search-card p:last-of-type{
  color:#655848;
  line-height:1.75;
  max-width:760px;
}

.home-search-form{
  margin-top:24px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.home-search-form input{
  flex:1 1 320px;
  min-height:58px;
  border-radius:999px;
  border:1px solid #e4d6c0;
  background:#fffdfb;
  padding:0 22px;
  font:inherit;
}

.home-search-form button{
  min-height:58px;
  border:none;
  border-radius:999px;
  padding:0 28px;
  background:#3b251d;
  color:#fff7ee;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}

.home-benefit-stack{
  display:grid;
  gap:16px;
}

.home-benefit-card{
  padding:22px 20px;
  border-radius:20px;
  background:#fffdfa;
  border:1px solid #eee1cf;
}

.home-benefit-card strong{
  display:block;
  margin-bottom:10px;
  font-size:22px;
  color:#241814;
}

.home-benefit-card span{
  color:#66594a;
  line-height:1.7;
}

.section-kicker{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin-bottom:10px;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:#9f7433;
}

.editorial-copy,
.editorial-stats{
  background:rgba(255,255,255,0.82);
  border:1px solid #efe3cf;
  border-radius:26px;
  padding:28px;
  box-shadow:0 18px 40px rgba(0,0,0,0.05);
}

.editorial-copy h2{
  font-size:44px;
  margin-bottom:12px;
}

.editorial-copy p:last-child{
  color:#6b5e48;
  line-height:1.8;
}

.editorial-stats{
  display:grid;
  gap:16px;
}

.editorial-stats div{
  padding:16px 0;
  border-bottom:1px solid #efe5d7;
}

.editorial-stats div:last-child{
  border-bottom:none;
}

.editorial-stats strong{
  display:block;
  font-size:34px;
  margin-bottom:6px;
}

.editorial-stats span{
  color:#6d614a;
}

.premium-top-category,
.premium-products-section,
.premium-instagram{
  max-width:1180px;
  margin:0 auto;
  padding-left:20px;
  padding-right:20px;
}

.section-head-row{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}

.section-title.left{
  text-align:left;
  margin-bottom:0;
}

.premium-assurance{
  max-width:1180px;
  margin:42px auto 28px;
  padding:0 20px;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:24px;
}

.premium-assurance-card,
.premium-assurance-grid{
  background:#ffffff;
  border:1px solid #eadfce;
  border-radius:24px;
  padding:32px;
  box-shadow:0 16px 36px rgba(29,16,12,0.05);
}

.premium-assurance-card h2{
  font-size:48px;
  line-height:1.05;
}

.premium-assurance-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.service-ribbon{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-bottom:20px;
}

.review-card span{
  display:block;
  margin-top:12px;
  color:#8d7334;
  font-weight:700;
}

.review-card{
  position:relative;
  display:grid;
  gap:16px;
  padding:28px;
  border-radius:26px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,0.12), transparent 28%),
    linear-gradient(180deg,#fffefe,#fff6f8);
  border:1px solid rgba(197,124,138,0.18);
  box-shadow:0 22px 48px rgba(64,29,39,0.08);
  text-align:left;
}

.review-card p{
  font-size:17px;
  line-height:1.7;
  color:#37252c;
}

.review-card-head{
  display:flex;
  align-items:center;
  gap:14px;
}

.review-card-head img{
  width:84px;
  height:84px;
  border-radius:22px;
  box-shadow:0 16px 28px rgba(0,0,0,0.08);
  margin-bottom:0;
}

.review-card-head strong{
  display:block;
  font-size:28px;
  color:#241419;
}

.review-card-head small{
  color:#856a52;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
}

.review-stars{
  color:#c79b2b;
  font-size:18px;
  letter-spacing:3px;
}

.faq-section{
  display:none !important;
}

.faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.faq-card{
  background:rgba(255,255,255,0.84);
  border:1px solid #efe3cf;
  border-radius:24px;
  padding:24px;
  box-shadow:0 18px 40px rgba(0,0,0,0.05);
}

.faq-card h3{
  font-size:32px;
  margin-bottom:12px;
  color:#25171b;
}

.faq-card p{
  color:#6d6149;
  line-height:1.8;
}

.faq-link-btn{
  color:#4a3423;
  border-color:rgba(74,52,35,0.18);
  background:rgba(255,255,255,0.74);
}

.footer-note{
  margin-top:14px;
  line-height:1.7;
  color:rgba(255,255,255,0.78);
}

@media(max-width:768px){
  .luxury-strip,
  .service-ribbon,
  .premium-assurance,
  .luxury-editorial,
  .home-discovery{
    grid-template-columns:1fr;
  }

  .faq-grid{
    grid-template-columns:1fr;
  }

  .section-head-row{
    flex-direction:column;
    align-items:flex-start;
  }

  .luxury-hero{
    height:72vh;
  }

  .editorial-copy h2,
  .premium-assurance-card h2,
  .home-search-card h2{
    font-size:34px;
  }

  .faq-card h3{
    font-size:28px;
  }
}

@media(max-width:768px){
  .collection-hero,
  .premium-address-preview{
    flex-direction:column;
    align-items:flex-start;
  }

  .collection-hero-copy h1{
    font-size:32px;
  }

  .premium-filter-drawer{
    width:100%;
    left:-100%;
  }

  .collection-hero-actions{
    width:100%;
    justify-content:stretch;
  }

  .premium-sort-control{
    width:100%;
  }

  .checkout-shell{
    padding-left:14px;
    padding-right:14px;
  }
}

.home-header{
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(255,255,255,0.96);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #eee5d8;
}

.luxury-hero{
  height:62vh;
  min-height:480px;
}

.luxury-hero .banner-text{
  max-width:560px;
  left:10%;
  top:52%;
  transform:translateY(-50%);
}

.luxury-hero .banner-text h1{
  font-size:58px;
  line-height:0.98;
  margin-bottom:16px;
}

.luxury-hero .banner-text p{
  max-width:520px;
  line-height:1.5;
}

.hero-secondary-btn{
  background:rgba(255,255,255,0.18);
  border:1px solid rgba(255,255,255,0.4);
}

.luxury-strip{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
  margin-top:24px;
  padding-bottom:8px;
}

.luxury-strip-card{
  background:#fff;
  border-radius:18px;
  padding:18px 20px;
  box-shadow:none;
}

.luxury-editorial{
  padding-top:20px;
}

.editorial-copy,
.editorial-stats,
.premium-assurance-card,
.premium-assurance-grid,
.luxury-strip-card,
.service-ribbon-card{
  box-shadow:none;
}

@media(max-width:992px){
  .luxury-hero .banner-text h1{
    font-size:46px;
  }

  .luxury-strip{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media(max-width:768px){
  .luxury-hero{
    height:56vh;
    min-height:420px;
  }

  .luxury-hero .banner-text{
    left:24px;
    right:24px;
    max-width:none;
  }

  .luxury-hero .banner-text h1{
    font-size:34px;
    line-height:1.08;
  }

  .luxury-strip{
    grid-template-columns:1fr;
    margin-top:18px;
  }
}

@media(max-width:768px){
  html,
  body{
    overflow-x:hidden;
    width:100%;
  }

  body{
    font-size:14px;
  }

  img{
    max-width:100%;
    height:auto;
  }

  .categories,
  .top-category,
  .reviews-section,
  .why-us,
  .instagram,
  .premium-category-products,
  .collection-hero,
  .cart-container{
    padding-left:14px;
    padding-right:14px;
  }

  .categories{
    gap:14px;
    padding-top:18px;
    padding-bottom:18px;
  }

  .cat{
    min-width:88px;
  }

  .cat img{
    width:88px;
    height:88px;
  }

  .hero-banner{
    height:min(74vh, 640px);
    min-height:520px;
  }

  .slide img{
    object-fit:cover;
    object-position:center center;
  }

  .slide-bracelet img{
    object-position:70% 34%;
  }

  .slide-ring img{
    object-position:73% 38%;
  }

  .slide-temple img{
    object-position:70% 18%;
  }

  .banner-text{
    left:18px;
    right:18px;
    max-width:none;
    bottom:86px;
    top:auto;
    transform:none;
  }

  .banner-text h1{
    font-size:28px;
    line-height:1.15;
  }

  .banner-text p{
    font-size:14px;
    line-height:1.6;
  }

  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    width:100%;
    max-width:260px;
  }

  .shop-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    max-width:none;
    padding:14px 22px;
  }

  .hero-secondary-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    padding:14px 22px;
    border-radius:999px;
  }

  .top-grid,
  .reviews-grid,
  .insta-grid,
  .why-grid{
    grid-template-columns:1fr;
  }

  .collection-hero{
    padding-top:24px;
    flex-direction:column;
    align-items:flex-start;
  }

  .collection-hero-copy h1{
    font-size:34px;
  }

  .menu{
    gap:10px;
    padding:12px 12px 4px;
    overflow-x:auto;
    justify-content:flex-start;
    white-space:nowrap;
  }

  .menu a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius:999px;
    background:#fff;
    border:1px solid #eadfd2;
    flex:0 0 auto;
    font-size:13px;
  }

  .categories-wrapper{
    padding-top:8px;
  }

  .cat-arrow{
    display:none;
  }

  .promo-banner{
    margin:34px 0;
    border-radius:0;
  }

  .why-grid{
    gap:14px;
  }

  .global-trust-strip{
    margin-top:18px;
    padding:12px 14px 6px;
  }

  .global-trust-strip-head{
    margin-bottom:14px;
  }

  .global-trust-strip-head h2{
    font-size:30px;
    line-height:1.06;
  }

  .global-trust-strip .why-card{
    min-height:180px;
    padding:18px 18px 18px 20px;
    border-radius:18px;
  }

  .why-card-copy strong{
    font-size:28px;
  }

  .why-card-copy p{
    font-size:13px;
  }

  .promo-banner img{
    height:420px;
  }

  .promo-text{
    left:18px;
    right:18px;
    max-width:none;
  }

  .promo-text h2{
    font-size:30px;
    line-height:1.12;
  }

  .promo-text p{
    font-size:14px;
    line-height:1.6;
  }

  .premium-filter-trigger{
    width:100%;
    justify-content:center;
  }

  .cart-layout{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .cart-item{
    align-items:flex-start !important;
  }

  .cart-item img{
    width:92px !important;
    height:92px !important;
  }

  .bill-summary{
    position:static !important;
    width:100%;
    top:auto;
  }

  .newsletter-box{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
  }

  .newsletter-box input{
    flex:1 1 220px;
    min-width:0;
  }

  .footer{
    padding:34px 18px;
  }

  .footer-container{
    grid-template-columns:1fr;
    gap:28px;
  }

  .footer-bottom{
    flex-direction:column;
    gap:16px;
    text-align:center;
  }

  .social-icons,
  .payment-icons{
    justify-content:center;
    flex-wrap:wrap;
  }
}

@media(max-width:520px){
  .categories,
  .top-category,
  .reviews-section,
  .why-us,
  .instagram,
  .premium-category-products,
  .collection-hero,
  .cart-container{
    padding-left:12px;
    padding-right:12px;
  }

  .hero-banner{
    min-height:480px;
  }

  .sale-bar{
    padding:8px 12px;
    font-size:11px;
    letter-spacing:.08em;
  }

  .top-links{
    display:none;
  }

  .main-header{
    position:sticky;
    top:0;
    z-index:40;
    padding:14px 14px 16px;
    min-height:74px;
    background:rgba(255,255,255,0.96);
    box-shadow:0 12px 24px rgba(89,41,54,0.08);
  }

  .logo{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
  }

  .logo img{
    height:72px;
    max-width:140px;
    object-fit:contain;
  }

  .menu-icon{
    width:42px;
    height:42px;
    border-radius:14px;
    background:transparent;
    border:none;
    box-shadow:none;
  }

  .header-icons{
    gap:10px;
  }

  .header-icons a,
  #accountIcon,
  .cart-icon-box{
    width:40px;
    height:40px;
    background:transparent;
    border:none;
    box-shadow:none;
    border-radius:14px;
  }

  .cart-count{
    top:-2px;
    right:-3px;
    min-width:18px;
    height:18px;
    font-size:10px;
  }

  .mobile-search-strip{
    display:flex;
  }

  .slide img{
    object-position:center center;
  }

  .slide-bracelet img{
    object-position:72% 36%;
  }

  .slide-ring img{
    object-position:74% 38%;
  }

  .slide-temple img{
    object-position:72% 18%;
  }

  .banner-text h1{
    font-size:24px;
  }

  .banner-text{
    left:16px;
    right:16px;
    bottom:74px;
    top:auto;
    transform:none;
    max-width:none;
  }

  .banner-dots{
    bottom:18px;
  }

  .banner-dots span{
    width:10px;
    height:10px;
  }

  .menu{
    padding:10px 10px 2px;
    gap:8px;
    justify-content:flex-start;
    overflow-x:auto;
    white-space:nowrap;
  }

  .menu a{
    font-size:12px;
    padding:9px 12px;
  }

  .top-card img,
  .insta-grid img{
    height:200px;
  }

  .promo-banner{
    margin:28px 0;
  }

  .global-trust-strip .why-card{
    min-height:160px;
    padding:16px;
  }

  .global-trust-strip-head h2{
    font-size:26px;
  }

  .why-card-copy strong{
    font-size:24px;
  }

  .why-card-copy p{
    font-size:12px;
  }

  .promo-banner img{
    height:380px;
  }

  .promo-text{
    left:16px;
    right:16px;
  }

  .promo-text h2{
    font-size:26px;
  }

  .collection-hero{
    padding:26px 14px 20px !important;
    gap:18px !important;
  }

  .collection-hero-copy{
    text-align:center;
  }

  .collection-hero-copy h1{
    font-size:40px !important;
    line-height:1.02 !important;
  }

  .collection-hero-copy p{
    font-size:15px !important;
    line-height:1.65 !important;
  }

  .collection-hero-actions{
    width:100%;
    gap:12px !important;
  }

  .premium-sort-control,
  .premium-sort-trigger,
  .premium-filter-trigger{
    width:100%;
  }

  .site-footer{
    margin-top:24px;
  }

  .site-footer-newsletter{
    gap:10px;
    padding-bottom:26px;
  }

  .site-footer-kicker{
    font-size:12px;
  }

  .site-footer-newsletter h2{
    font-size:18px;
  }

  .site-footer-form{
    flex-direction:row;
    align-items:stretch;
    gap:8px;
  }

  .site-footer-form input{
    height:54px;
    padding:0 16px;
    font-size:15px;
  }

  .site-footer-form button{
    width:auto;
    min-width:126px;
    height:54px;
    padding:0 18px;
    font-size:13px;
  }

  .site-footer-group{
    padding-top:12px;
  }

  .site-footer-toggle strong{
    display:block;
  }

  .site-footer-group:not(.is-open) .site-footer-panel{
    grid-template-rows:0fr;
    opacity:.2;
  }

  .site-footer-contact-card{
    padding:18px 16px;
    gap:16px;
    border-radius:22px;
  }

  .site-footer-socials a{
    width:42px;
    height:42px;
    font-size:12px;
  }

  .cart-item{
    gap:12px !important;
    padding:14px !important;
  }

  .cart-item-content h3{
    font-size:18px;
  }

  .bill-summary{
    padding:20px !important;
  }

  .cart-title{
    font-size:34px !important;
    letter-spacing:2px !important;
  }

  .empty-cart-state{
    min-height:220px;
  }

  .empty-cart-state h3{
    font-size:28px;
  }
}
/* =====================================
🔥 FINAL MOBILE UX FIX (Myntra Style)
===================================== */

@media(max-width:768px){

  /* ---------- GLOBAL SPACING FIX ---------- */
  section,
  .section,
  .top-category,
  .reviews-section,
  .why-us,
  .instagram,
  .premium-category-products,
  .collection-hero,
  .cart-container{
    margin-bottom:28px !important;
  }

  /* ---------- PRODUCT GRID (MAIN FIX) ---------- */
  .product-grid,
  .products-grid,
  .collection-grid,
  .premium-category-products,
  .grid{
    display:grid !important;
    grid-template-columns:repeat(2,1fr) !important;
    gap:14px !important;
  }

  .grid > *,
  .product-grid > *{
    width:100% !important;
  }

  /* ---------- PRODUCT CARD PREMIUM ---------- */
  .product-card,
  .card,
  .product-item{
    border-radius:14px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:0 6px 16px rgba(0,0,0,.06) !important;
  }

  .product-card img{
    width:100% !important;
    height:180px !important;
    object-fit:cover !important;
  }

  /* ---------- REMOVE STRETCH FEEL ---------- */
  .top-grid,
  .reviews-grid,
  .why-grid,
  .insta-grid{
    display:flex !important;
    gap:12px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory;
  }

  .top-card,
  .review-card,
  .why-card,
  .insta-grid img{
    min-width:80% !important;
    scroll-snap-align:start;
  }

  /* ---------- HERO FIX (VERY IMPORTANT) ---------- */
  .hero-banner{
    height:70vh !important;
  }

  .banner-text{
    bottom:70px !important;
    top:auto !important;
  }

  .banner-text h1{
    font-size:22px !important;
    line-height:1.2 !important;
  }

  .banner-text p{
    font-size:13px !important;
  }

  .shop-btn{
    padding:12px 20px !important;
    font-size:13px !important;
  }

  /* ---------- PROMO BANNER ---------- */
  .promo-banner img{
    height:300px !important;
  }

  .promo-text h2{
    font-size:24px !important;
  }

  .promo-text p{
    font-size:13px !important;
  }

  /* ---------- HEADER CLEAN ---------- */
  .main-header{
    padding:14px 12px !important;
  }

  .logo img{
    height:60px !important;
  }

  /* ---------- FOOTER CLEAN ---------- */
  .footer{
    padding:30px 16px !important;
  }

  /* ---------- REMOVE OVERFLOW ISSUES ---------- */
  body{
    overflow-x:hidden !important;
  }

}

/* Premium Mobile Refinement */
@media (max-width: 768px){
  :root{
    --mobile-section-gap:20px;
    --mobile-card-gap:10px;
  }

  body{
    font-size:14px;
  }

  .site-footer{
    background:linear-gradient(90deg,#5f2333,#7a3145 55%, #9a5c68) !important;
    color:#fff8f4;
  }

  .site-footer-shell,
  .site-footer-column a,
  .site-footer-column p,
  .site-footer-bottom p,
  .site-footer-links a,
  .site-footer-contact-row a,
  .site-footer-address,
  .site-footer-toggle span{
    color:#fff8f4 !important;
  }

  .site-footer-contact-card{
    background:rgba(255,255,255,0.08) !important;
    border-color:rgba(255,255,255,0.14) !important;
  }

  .site-footer-bottom,
  .site-footer-group{
    border-color:rgba(255,255,255,0.16) !important;
  }

  .site-footer-newsletter,
  .site-footer-bottom{
    text-align:center;
    justify-content:center;
  }

  .site-footer-socials{
    justify-content:center;
  }

.main-header{
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px 14px !important;
}

/* MENU LEFT */
.menu-icon{
  grid-column:1;
}

/* SEARCH CENTER */
.mobile-header-search{
  grid-column:2;
  display:flex;
  align-items:center;
  border-radius:26px;
  background:#fff;
  border:1px solid #eadfd2;
}


/* TEXT */
.mobile-header-search span{
  font-weight:500;
  color:#2a171d;
}

/* SEARCH ICON RIGHT */
.mobile-header-search .search-icon{
  margin-left:auto;
  font-size:16px;
  opacity:0.6;
}

/* ICONS RIGHT */
.header-icons{
  grid-column:3;
  display:flex;
  gap:10px !important;
}

  .main-header .header-icons{
    grid-column:3;
  }

  .header-icons a[href*="search"]{
    display:none !important;
  }

  .mobile-search-strip{
    display:none !important;
  }

  .product-grid,
  .products-grid,
  .collection-grid,
  #wishlistGrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .top-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .top-card{
    min-height:auto;
    border-radius:16px;
    box-shadow:0 10px 24px rgba(30,16,20,0.08) !important;
  }

  .top-card::after{
    display:none !important;
  }

  .top-card p{
    position:static !important;
    color:#2a171d !important;
    text-shadow:none !important;
    padding:10px 10px 12px;
    font-size:15px !important;
  }

  .top-card img{
    border-radius:16px 16px 0 0;
    box-shadow:none !important;
  }

 .hero-banner{
  height:60vh !important;
  min-height:460px !important;
  border-radius:0 !important;
  overflow:hidden;
}

/* IMAGE SHOULD FILL */
.slide img{
  width:100%;
  height:100%;
  object-fit:cover !important;   /* 🔥 FIXED */
  object-position:center !important;
}

/* DARK OVERLAY */
.hero-banner::after{
  background:linear-gradient(
    to top,
    rgba(0,0,0,0.55),
    rgba(0,0,0,0.15),
    transparent
  );
}
.banner-text{
  left:16px !important;
  right:16px !important;
  bottom:72px !important;
  top:auto !important;
  padding:0 !important;
}

/* SMALL CLEAN TEXT */
.banner-text h1{
  font-size:20px !important;
  line-height:1.2 !important;
  margin-bottom:6px !important;
  max-width:70%;
}

.banner-text p{
  font-size:12px !important;
  line-height:1.4 !important;
  max-width:65%;
  margin-bottom:8px !important;
}

/* BUTTONS FIX */
.hero-actions{
  display:flex !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  max-width:220px;
}

.shop-btn,
.hero-secondary-btn{
  padding:8px 14px !important;
  font-size:11px !important;
  border-radius:999px !important;
  min-height:auto !important;
}

  .banner-dots{
    bottom:18px !important;
    gap:8px !important;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(255,255,255,0.24);
    backdrop-filter:blur(8px);
  }

  .banner-dots span{
    width:8px !important;
    height:8px !important;
    background:rgba(255,255,255,0.7) !important;
  }

  .banner-dots span.active{
    width:10px !important;
    height:10px !important;
    background:#d4af37 !important;
  }

  .categories{
    gap:12px !important;
    padding:14px 12px 10px !important;
    scroll-snap-type:x proximity;
  }

  .categories-wrapper{
    transition:max-height .16s cubic-bezier(.22,.84,.24,1), opacity .12s ease, transform .14s ease;
  }

  .categories-wrapper.is-open{
    max-height:240px;
  }

  .categories::-webkit-scrollbar{
    display:none;
  }

  .cat{
    min-width:82px !important;
    scroll-snap-align:start;
  }

  .cat img{
    width:72px !important;
    height:72px !important;
    box-shadow:0 8px 18px rgba(30,16,20,0.1) !important;
  }

  .cat p{
    font-size:12px !important;
    line-height:1.3;
  }

  .collection-hero{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
  }

  .collection-hero-copy,
  .collection-hero-copy p{
    text-align:left !important;
  }

  .collection-hero-copy h1{
    font-size:32px !important;
  }

  .collection-hero-actions{
    display:flex !important;
    justify-content:flex-end !important;
    gap:8px !important;
    align-items:flex-end !important;
    flex-wrap:nowrap !important;
  }

  .premium-sort-control{
    width:auto !important;
    min-width:132px !important;
    gap:4px !important;
    flex:0 0 auto;
  }

  .premium-sort-trigger,
  .premium-filter-trigger{
    width:auto !important;
    min-width:0 !important;
    padding:8px 12px !important;
    min-height:36px;
    font-size:12px !important;
    border-radius:12px !important;
  }

  .premium-category-products{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    padding:0 12px 12px !important;
    margin-top:0 !important;
  }

  #productGrid,
  #topCollectionGrid,
  #newGrid,
  #bestGrid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
  }

  .top-category,
  .whats-new,
  .products{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  #topCollectionGrid .product-card,
  #newGrid .product-card,
  #bestGrid .product-card{
    border-radius:18px !important;
    box-shadow:0 12px 26px rgba(28,16,20,0.08) !important;
  }

  #topCollectionGrid .product-image,
  #newGrid .product-image,
  #bestGrid .product-image{
    height:auto !important;
    aspect-ratio:1 / 1.08 !important;
    border-radius:16px !important;
  }

  #topCollectionGrid .product-details,
  #newGrid .product-details,
  #bestGrid .product-details{
    padding:12px 8px 8px !important;
  }

  #topCollectionGrid .product-details .title,
  #newGrid .product-details .title,
  #bestGrid .product-details .title{
    font-size:16px !important;
    line-height:1.3 !important;
    min-height:42px !important;
    margin:0 0 10px !important;
  }

  #topCollectionGrid .product-details .brand,
  #newGrid .product-details .brand,
  #bestGrid .product-details .brand{
    font-size:11px !important;
    letter-spacing:1.1px !important;
    margin-bottom:10px !important;
  }

  #topCollectionGrid .price-row,
  #newGrid .price-row,
  #bestGrid .price-row{
    gap:6px !important;
    row-gap:4px !important;
  }

  .collection-results-bar{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    margin:0 0 12px !important;
  }

  #resultsSummary{
    display:inline-flex;
    align-items:center;
    min-height:24px;
  }

  .top-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .top-card{
    min-height:auto !important;
  }

  .top-card img{
    height:auto !important;
    aspect-ratio:4 / 5;
  }

  .premium-sort-trigger strong{
    font-size:14px !important;
  }

  .reviews-grid{
    display:flex !important;
    gap:12px !important;
    overflow-x:auto !important;
    padding-bottom:6px;
    scroll-snap-type:x proximity;
  }

  .reviews-grid::-webkit-scrollbar{
    display:none;
  }

  .review-card{
    min-width:62% !important;
    scroll-snap-align:start;
    gap:14px !important;
    padding:20px !important;
    border-radius:22px !important;
  }

  .review-card-head{
    align-items:flex-start !important;
    gap:12px !important;
  }

  .review-card-head > div{
    min-width:0;
    flex:1 1 auto;
  }

  .review-card-head img{
    width:68px !important;
    height:68px !important;
    border-radius:18px !important;
    flex:0 0 68px;
  }

  .review-card-head strong{
    font-size:20px !important;
    line-height:1.15 !important;
    word-break:break-word;
  }

  .review-card-head small{
    display:block;
    margin-top:4px;
    font-size:11px !important;
    letter-spacing:1px !important;
    line-height:1.35 !important;
  }

  .review-card p{
    font-size:15px !important;
    line-height:1.7 !important;
  }

  .review-card span{
    margin-top:6px !important;
    font-size:14px !important;
    line-height:1.45 !important;
  }

  .review-stars{
    font-size:16px !important;
    letter-spacing:2px !important;
  }

  .wishlist-card,
  .cart-item{
    grid-template-columns:92px minmax(0,1fr) !important;
    display:grid !important;
    gap:12px !important;
    align-items:start !important;
    padding:12px !important;
  }

  .wishlist-card-media img,
  .cart-item img{
    width:92px !important;
    height:112px !important;
    border-radius:14px !important;
    object-fit:cover !important;
  }

  .wishlist-card-body h3,
  .cart-item-content h3{
    font-size:16px !important;
    line-height:1.35 !important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  .wishlist-card-actions,
  .profile-list-actions{
    display:flex;
    flex-direction:row !important;
    flex-wrap:wrap;
    gap:8px !important;
  }

  .wishlist-card-actions > *,
  .profile-list-actions > *{
    flex:1 1 calc(50% - 8px);
  }

  .qty-control{
    gap:0 !important;
    border-radius:999px !important;
    overflow:hidden;
  }

  .qty-control button{
    width:28px !important;
    height:28px !important;
  }

  .qty-number{
    min-width:28px;
    text-align:center;
    font-size:13px !important;
  }
}

@media (max-width: 520px){
  .section-title{
    font-size:clamp(24px,6vw,30px) !important;
    margin-bottom:18px !important;
  }

  .product-grid,
  .products-grid,
  .collection-grid,
  #wishlistGrid{
    gap:8px !important;
  }

  .review-card{
    min-width:84% !important;
    padding:18px !important;
  }

  .review-card-head strong{
    font-size:18px !important;
  }

  .review-card p{
    font-size:14px !important;
  }

  .review-card span{
    font-size:13px !important;
  }

  .collection-hero-actions{
    justify-content:flex-end !important;
    flex-wrap:nowrap;
  }

  .premium-sort-control{
    flex:0 1 auto;
  }

  .premium-filter-trigger{
    flex:0 0 auto;
  }

  .mobile-header-search-logo{
    width:38px;
    height:38px;
  }

  .mobile-header-search-text{
    font-size:17px;
    font-weight:700;
  }

  .mobile-header-search-icon{
    width:20px;
    height:20px;
  }

  .site-footer-form{
    flex-direction:column !important;
  }

  .site-footer-form button{
    width:100% !important;
  }
}

@media (max-width: 768px){
  .whats-new{
    padding:24px 0 8px !important;
    margin-bottom:12px !important;
  }

  .products{
    padding:24px 0 8px !important;
    margin-bottom:12px !important;
  }

  .whats-new .section-title{
    padding:0 12px !important;
  }

  .products .section-title{
    padding:0 12px !important;
  }

  .whats-new #newGrid{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:0 8px 4px !important;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }

  .whats-new #newGrid::-webkit-scrollbar{
    display:none;
  }

  .whats-new #newGrid .product-card{
    flex:0 0 calc((100vw - 26px) / 2) !important;
    width:calc((100vw - 26px) / 2) !important;
    min-width:calc((100vw - 26px) / 2) !important;
    max-width:calc((100vw - 26px) / 2) !important;
    height:auto !important;
    margin:0 !important;
    scroll-snap-align:start;
  }

  .whats-new #newGrid .product-image{
    height:auto !important;
    aspect-ratio:1 / 1.08 !important;
  }

  .whats-new #newGrid .product-details{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
  }

  .whats-new #newGrid .title{
    min-height:42px !important;
  }

  .products #bestGrid{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:0 8px 4px !important;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }

  .products #bestGrid::-webkit-scrollbar{
    display:none;
  }

  .products #bestGrid .product-card{
    flex:0 0 calc((100vw - 26px) / 2) !important;
    width:calc((100vw - 26px) / 2) !important;
    min-width:calc((100vw - 26px) / 2) !important;
    max-width:calc((100vw - 26px) / 2) !important;
    height:auto !important;
    margin:0 !important;
    scroll-snap-align:start;
  }

  .products #bestGrid .product-image{
    height:auto !important;
    aspect-ratio:1 / 1.08 !important;
  }

  .products #bestGrid .product-details{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
  }

  .products #bestGrid .title{
    min-height:42px !important;
  }
}

@media (max-width: 768px){
  .sale-bar{
    font-size:11px !important;
    letter-spacing:.08em !important;
    padding:11px 12px 10px !important;
    font-weight:800 !important;
    box-shadow:inset 0 -1px 0 rgba(255,255,255,0.08);
  }

  .top-links{
    justify-content:center !important;
    gap:0 !important;
    padding:10px 12px !important;
    background:rgba(255,255,255,0.98) !important;
    border-bottom:1px solid rgba(115,44,63,0.08) !important;
  }

  .top-links a{
    flex:1 1 0;
    text-align:center;
    font-size:12px !important;
    font-weight:600 !important;
    line-height:1.25;
    white-space:nowrap;
    color:#8a5a67 !important;
    padding:0 6px !important;
  }

  .top-links a + a{
    border-left:1px solid rgba(115,44,63,0.08);
  }

  .main-header{
    box-shadow:0 8px 18px rgba(26,11,18,0.06) !important;
    grid-template-columns:34px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto !important;
    gap:10px 12px !important;
    padding:10px 12px 12px !important;
    background:linear-gradient(180deg,#fffdfb 0%, #fff9f5 100%) !important;
    border-bottom:1px solid rgba(115,44,63,0.06) !important;
  }

  .main-header .logo{
    display:flex !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    position:static !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 auto 6px !important;
    width:100% !important;
    min-height:52px !important;
    padding:4px 0 !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,#fffefd 0%, #fff8f6 100%) !important;
    border:1px solid rgba(115,44,63,0.08) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.85), 0 6px 16px rgba(115,44,63,0.05) !important;
  }

  .main-header .logo img{
    height:42px !important;
    width:auto !important;
    max-width:160px !important;
    object-fit:contain !important;
    transform:scale(2.35) !important;
    transform-origin:center center !important;
    filter:contrast(1.08) drop-shadow(0 4px 8px rgba(26,11,18,0.08)) !important;
  }

  .menu-icon{
    grid-column:1 !important;
    grid-row:2 !important;
    width:34px !important;
    height:34px !important;
    padding:0 !important;
  }

  .mobile-header-search{
    grid-column:2 !important;
    grid-row:2 !important;
    min-width:0 !important;
    height:46px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    border:1px solid rgba(181,144,117,0.28) !important;
    background:#fffefc !important;
    box-shadow:0 6px 16px rgba(93,52,64,0.05) !important;
  }

  .mobile-header-search-text{
    font-size:15px !important;
    font-weight:600 !important;
    color:#624850 !important;
  }

  .mobile-header-search-icon{
    width:18px !important;
    height:18px !important;
    color:#6f555d !important;
  }

  .header-icons{
    grid-column:3 !important;
    grid-row:2 !important;
    gap:8px !important;
  }

  .header-icons a,
  #accountIcon,
  .cart-icon-box{
    width:34px !important;
    height:34px !important;
    border-radius:10px !important;
  }

  .cart-count{
    top:-4px !important;
    right:-4px !important;
  }

  .premium-search-panel,
  .wishlist-hero,
  .wishlist-card,
  .cart-item,
  .bill-summary,
  .product-detail-panel,
  .premium-price-card,
  .premium-delivery-card{
    border-radius:20px !important;
  }

  .wishlist-page{
    padding:24px 12px 40px !important;
  }

  .wishlist-page #wishlistGrid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .wishlist-empty{
    padding:28px 18px !important;
    border-radius:22px !important;
  }

  .wishlist-empty h2{
    font-size:clamp(20px,7vw,30px) !important;
    line-height:1.32 !important;
    margin:0 0 10px !important;
  }

  .wishlist-empty p{
    font-size:14px !important;
    line-height:1.6 !important;
    margin:0 auto !important;
    max-width:280px;
  }

  .wishlist-empty .checkout-btn{
    width:auto !important;
    max-width:100% !important;
    min-height:46px !important;
    margin:14px auto 0 !important;
    padding:12px 18px !important;
    font-size:14px !important;
  }

  .wishlist-hero{
    padding:18px 16px !important;
    margin-bottom:18px !important;
    border-radius:22px !important;
  }

  .wishlist-page h1{
    font-size:34px !important;
    letter-spacing:.2px !important;
    line-height:1.06 !important;
  }

  .wishlist-subtitle{
    font-size:14px !important;
    line-height:1.65 !important;
  }

  .wishlist-card{
    grid-template-columns:100px minmax(0,1fr) !important;
    gap:14px !important;
    padding:14px !important;
    border-radius:20px !important;
    box-shadow:0 14px 30px rgba(31,19,24,0.08) !important;
  }

  .wishlist-card-media img{
    width:100px !important;
    height:124px !important;
    border-radius:16px !important;
  }

  .wishlist-card-brand{
    font-size:11px !important;
    letter-spacing:1.4px !important;
    margin-bottom:8px !important;
  }

  .wishlist-card-body h3{
    font-size:20px !important;
    line-height:1.28 !important;
    margin:0 0 8px !important;
  }

  .wishlist-card-price{
    gap:8px !important;
    margin-bottom:12px !important;
    align-items:baseline !important;
  }

  .wishlist-card-price span:first-child{
    font-size:16px !important;
  }

  .wishlist-card-price .old-price{
    font-size:13px !important;
  }

  .wishlist-card-actions{
    gap:8px !important;
  }

  .wishlist-card-actions > *{
    min-height:44px;
    border-radius:14px !important;
    font-size:14px !important;
    font-weight:700 !important;
  }

  .wishlist-remove{
    top:10px !important;
    right:10px !important;
    padding:6px 10px !important;
    font-size:12px !important;
  }

  .cart-container,
  .premium-category-products,
  .top-category,
  .whats-new,
  .products,
  .reviews-section,
  .instagram{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .collection-hero,
  .address-header,
  .premium-address-preview,
  .payment-panel{
    border-radius:20px !important;
  }

  input,
  select,
  textarea,
  button{
    font-family:'Manrope',sans-serif;
  }
}

@media (max-width: 520px){
  .top-links{
    gap:0 !important;
    padding:8px 10px !important;
  }

  .top-links a{
    font-size:11px !important;
  }

  .main-header{
    grid-template-columns:32px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto !important;
    gap:10px !important;
    padding:10px !important;
  }

  .main-header .logo img{
    height:40px !important;
    max-width:148px !important;
    transform:scale(2.05) !important;
  }

  .mobile-header-search{
    height:44px !important;
    padding:0 12px !important;
  }

  .mobile-header-search-text{
    font-size:14px !important;
  }

  .header-icons a,
  #accountIcon,
  .cart-icon-box,
  .menu-icon{
    width:32px !important;
    height:32px !important;
  }

  .header-icons{
    gap:4px !important;
  }
}

.payment-app-shell{
  max-width:1120px;
  margin:0 auto;
  padding:20px 16px 42px;
}

.payment-app-header{
  display:flex;
  align-items:flex-start;
  gap:16px;
  margin-bottom:14px;
}

.payment-back-link{
  width:42px;
  height:42px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#242424;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(0,0,0,0.06);
  font-size:24px;
}

.payment-app-title{
  margin:0 0 8px;
  font-size:28px;
  font-weight:800;
  letter-spacing:0.8px;
  color:#273043;
}

.payment-step-track{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  font-size:13px;
  color:#7c8798;
}

.payment-step-track span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.payment-step-track span::before{
  content:"";
  width:12px;
  height:12px;
  border-radius:50%;
  border:2px solid #c7d2df;
}

.payment-step-track .done::before{
  background:#10b981;
  border-color:#10b981;
}

.payment-step-track .current::before{
  border-color:#0ea5a4;
}

.payment-offer-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 44px rgba(17,24,39,0.06);
  margin-bottom:16px;
}

.payment-offer-strip-strong{
  background:
    radial-gradient(circle at top right, rgba(255,63,108,0.16), transparent 36%),
    linear-gradient(135deg, #ffffff 0%, #fff5f8 54%, #fff 100%);
  border:1px solid rgba(255,63,108,0.14);
  box-shadow:0 22px 52px rgba(255,63,108,0.12);
}

.payment-offer-strip strong{
  display:block;
  margin-bottom:4px;
  color:#202939;
}

.payment-offer-strip p{
  margin:0;
  color:#7b8493;
  font-size:14px;
}

.payment-offer-strip span{
  color:#ff3f6c;
  font-weight:800;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:0.4px;
}

.payment-mini-hero{
  position:relative;
  margin-bottom:16px;
  padding-right:148px;
}

.payment-mini-hero-strong{
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 20%, rgba(255,214,10,0.32), transparent 24%),
    radial-gradient(circle at 12% 80%, rgba(255,63,108,0.12), transparent 24%),
    linear-gradient(135deg, #fffdf8 0%, #fff5df 50%, #fffefe 100%);
  border:1px solid rgba(235,188,72,0.36);
  box-shadow:0 20px 50px rgba(204,166,84,0.15);
}

.payment-mini-hero-strong::after{
  content:"";
  position:absolute;
  inset:auto -40px -60px auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,0.85) 0%, rgba(255,255,255,0) 72%);
  pointer-events:none;
}

.payment-mini-hero h3{
  margin:0 0 8px;
  font-size:28px;
}

.payment-address-edit{
  position:absolute;
  top:24px;
  right:24px;
}

.payment-app-layout{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(300px,0.86fr);
  gap:20px;
  align-items:start;
}

.payment-block{
  background:#fff;
  border-radius:24px;
  box-shadow:0 18px 44px rgba(17,24,39,0.06);
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.75);
}

.payment-block + .payment-block{
  margin-top:16px;
}

.payment-block-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:18px 22px;
  background:linear-gradient(180deg,#f7f8fb 0%, #f1f3f7 100%);
  color:#5c6779;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.6px;
  text-transform:uppercase;
}

.payment-block-head small{
  font-size:12px;
  color:#8b96a9;
}

.payment-recommended-list{
  padding:8px 0 2px;
}

.payment-app-option{
  width:100%;
  border:0;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px 22px;
  border-bottom:1px solid #edf0f4;
  cursor:pointer;
  text-align:left;
}

.payment-app-option:last-child{
  border-bottom:0;
}

.payment-app-option.active{
  background:linear-gradient(135deg,#fff8fb 0%, #fff4f8 100%);
}

.payment-app-option-main{
  display:flex;
  align-items:flex-start;
  gap:14px;
}

.payment-app-option input{
  margin-top:4px;
  width:18px;
  height:18px;
  accent-color:#ff3f6c;
}

.payment-app-copy strong{
  display:block;
  font-size:18px;
  color:#202939;
  margin-bottom:4px;
}

.payment-app-copy p{
  margin:0;
  font-size:14px;
  color:#707b8d;
  line-height:1.5;
}

.payment-app-brand{
  min-width:84px;
  padding:10px 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  font-size:12px;
  font-weight:800;
  color:#273043;
  background:#f4f6fb;
}

.payment-brand-image{
  width:78px;
  height:24px;
  object-fit:contain;
}

.payment-brand-wordmark{
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.payment-logo-badge{
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:900;
  background:#fff;
}

.payment-logo-google-g{
  font-weight:900;
  font-size:18px;
  line-height:1;
  background:linear-gradient(90deg,#4285f4 0 25%,#ea4335 25% 50%,#fbbc05 50% 75%,#34a853 75% 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.payment-logo-badge-phonepe{
  background:#5f259f;
  color:#fff;
  font-size:9px;
}

.payment-logo-badge-paytm{
  background:#00a6df;
  color:#fff;
}

.payment-logo-badge-cod{
  background:#d97706;
  color:#fff;
}

.payment-brand-gpay{ background:#f3f8ff; color:#4285f4; }
.payment-brand-phonepe{ background:#f6f1ff; color:#5f259f; }
.payment-brand-paytm{ background:#eefaff; color:#00a6df; }
.payment-brand-cod{ background:#fff7e8; color:#b7791f; }

.payment-wordmark-gpay span:last-child{ color:#4285f4; font-weight:900; }
.payment-wordmark-phonepe span:last-child{ color:#5f259f; font-weight:900; }
.payment-wordmark-paytm span:last-child{ color:#00a6df; font-weight:900; text-transform:lowercase; }
.payment-wordmark-cod span:last-child{ color:#b7791f; font-weight:900; }

.payment-primary-action{
  width:calc(100% - 44px);
  margin:6px 22px 18px;
  min-height:58px;
  border:0;
  border-radius:18px;
  background:linear-gradient(135deg,#ff4e7f 0%, #ff2d73 48%, #ff216a 100%);
  color:#fff;
  font-weight:800;
  font-size:17px;
  cursor:pointer;
  box-shadow:0 18px 36px rgba(255,63,108,0.24);
  letter-spacing:-0.01em;
}

.payment-primary-action:disabled{
  opacity:0.7;
  cursor:not-allowed;
}

.payment-primary-action:hover{
  box-shadow:0 20px 38px rgba(255,63,108,0.28);
}

.payment-stack-item{
  border-bottom:1px solid #edf0f4;
}

.payment-stack-item:last-child{
  border-bottom:0;
}

.payment-stack-item summary{
  list-style:none;
  padding:20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  cursor:pointer;
  font-size:18px;
  font-weight:700;
  color:#202939;
}

.payment-stack-item summary::-webkit-details-marker{
  display:none;
}

.payment-stack-item.active summary{
  color:#ff3f6c;
}

.payment-stack-meta,
.payment-stack-arrow{
  font-size:13px;
  color:#7b8493;
  font-weight:700;
}

.payment-stack-panel{
  padding:0 20px 18px;
  color:#707b8d;
  font-size:14px;
}

.payment-pill-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.payment-pill-button{
  border:1px solid #d7dde7;
  background:#fff;
  color:#334155;
  border-radius:999px;
  padding:10px 14px;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}

.payment-pill-button.active{
  border-color:#ff3f6c;
  color:#ff3f6c;
  background:#fff5f8;
}

.payment-inline-field{
  display:grid;
  gap:8px;
}

.payment-inline-field span{
  font-size:12px;
  font-weight:800;
  color:#6b7280;
  text-transform:uppercase;
  letter-spacing:0.9px;
}

.payment-inline-field input{
  min-height:48px;
  border-radius:12px;
  border:1px solid #d7dde7;
  padding:0 14px;
  font-size:15px;
}

.payment-price-list{
  padding:18px 20px;
}

.payment-price-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
  color:#334155;
}

.payment-price-row span:last-child{
  font-weight:700;
}

.payment-total-row{
  border-top:1px solid #edf0f4;
  margin-top:10px;
  padding-top:18px;
  color:#111827;
}

.payment-bag-list{
  padding:12px 20px 18px;
}

.payment-bag-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid #edf0f4;
}

.payment-bag-row:last-child{
  border-bottom:0;
}

.payment-bag-row strong{
  display:block;
  margin-bottom:5px;
  color:#202939;
}

.payment-bag-row p{
  margin:0;
  color:#7b8493;
  font-size:13px;
}

.payment-cta-block{
  padding:22px;
  background:
    radial-gradient(circle at top right, rgba(255,214,10,0.14), transparent 28%),
    radial-gradient(circle at bottom left, rgba(122,49,66,0.12), transparent 30%),
    linear-gradient(180deg,#fffefd 0%, #fff8f4 100%);
  border:1px solid rgba(122,49,66,0.12);
  box-shadow:0 22px 48px rgba(73,36,46,0.09);
}

.payment-cta-block strong{
  display:block;
  margin-bottom:10px;
  color:#241419;
  font-size:24px;
  line-height:1.1;
  letter-spacing:-0.02em;
  font-family:'Cormorant Garamond',serif;
}

#paymentHint{
  margin:0;
  color:#5f4e56;
  font-size:15px;
  line-height:1.7;
}

.payment-accept-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0 16px;
}

.payment-footer-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:44px;
  padding:8px 12px;
  border-radius:16px;
  background:rgba(255,255,255,0.8);
  color:#415168;
  font-size:12px;
  font-weight:800;
  border:1px solid rgba(122,49,66,0.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.88), 0 6px 18px rgba(83,49,59,0.05);
}

.payment-footer-mark img{
  width:78px;
  height:22px;
  object-fit:contain;
}

.payment-footer-mark-razorpay{
  grid-column:1 / -1;
  background:linear-gradient(135deg,#eef2ff 0%, #f7f8ff 100%);
  border-color:#dbe4ff;
}

.payment-footer-logo-visa{
  color:#1a1f71;
  letter-spacing:0.6px;
}

.payment-footer-logo-rupay{
  color:#0f4aa3;
}

.payment-footer-logo-netbanking,
.payment-footer-logo-upi{
  color:#334155;
}

.mc-circle{
  width:14px;
  height:14px;
  border-radius:50%;
  display:inline-block;
}

.mc-left{
  background:#eb001b;
  margin-right:-5px;
}

.mc-right{
  background:#f79e1b;
}

.mc-text{
  margin-left:2px;
  font-size:10px;
  color:#1f2937;
  font-weight:900;
  text-transform:lowercase;
}

.payment-place-button{
  width:100%;
  min-height:60px;
  border-radius:18px;
  background:linear-gradient(135deg,#7a3142 0%, #a04459 48%, #d76886 100%);
  box-shadow:0 18px 36px rgba(122,49,66,0.22);
  font-size:18px;
  font-weight:800;
  letter-spacing:-0.01em;
}

#paymentStatus{
  min-height:24px;
  margin-top:14px;
  color:#b42318;
  font-size:14px;
  line-height:1.5;
}

@media (max-width: 920px){
  .payment-app-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .payment-app-shell{
    padding:12px 10px 28px;
  }

  .payment-app-title{
    font-size:22px;
  }

  .payment-offer-strip{
    padding:14px 16px;
    border-radius:18px;
  }

  .payment-mini-hero{
    padding-right:18px;
  }

  .payment-mini-hero h3{
    font-size:22px;
  }

  .payment-address-edit{
    position:static;
    display:inline-flex;
    margin-top:14px;
  }

  .payment-app-option,
  .payment-stack-item summary{
    padding:16px;
  }

  .payment-app-copy strong{
    font-size:16px;
  }

  .payment-app-brand{
    min-width:70px;
    font-size:11px;
  }

  .payment-logo-badge{
    min-width:18px;
    height:18px;
    font-size:8px;
  }

  .payment-primary-action{
    width:calc(100% - 24px);
    margin:0 12px 14px;
    min-height:52px;
    font-size:17px;
  }

  .payment-price-list,
  .payment-bag-list,
  .payment-cta-block{
    padding:16px;
  }

  .payment-cta-block strong{
    font-size:21px;
  }

  #paymentHint{
    font-size:14px;
    line-height:1.65;
  }

  .payment-accept-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .payment-footer-mark{
    min-height:42px;
    border-radius:14px;
  }

  .payment-footer-mark img{
    width:72px;
    height:20px;
  }

  .payment-footer-mark-razorpay{
    grid-column:1 / -1;
  }
}

@media (max-width: 520px){
  .payment-app-shell{
    padding:10px 8px 26px;
  }

  .payment-app-header{
    gap:12px;
    margin-bottom:12px;
    align-items:center;
  }

  .payment-back-link{
    width:38px;
    height:38px;
    font-size:20px;
    box-shadow:0 10px 22px rgba(30, 20, 16, 0.08);
  }

  .payment-app-title{
    font-size:24px;
    letter-spacing:1px;
    margin-bottom:6px;
  }

  .payment-step-track{
    gap:8px;
    font-size:12px;
  }

  .payment-offer-strip{
    padding:13px 14px;
    border-radius:16px;
    margin-bottom:12px;
  }

  .payment-offer-strip strong{
    font-size:15px;
  }

  .payment-offer-strip p{
    font-size:12px;
    line-height:1.45;
  }

  .payment-offer-strip span{
    font-size:11px;
    letter-spacing:.8px;
  }

  .payment-mini-hero{
    margin-bottom:14px;
    padding:18px 16px 16px;
    border-radius:22px !important;
  }

  .payment-mini-hero h3{
    font-size:20px;
    line-height:1.08;
    margin-bottom:10px;
  }

  .payment-mini-hero #userAddress{
    font-size:13px;
    line-height:1.6;
    max-width:100%;
  }

  .address-preview-meta{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin-top:12px !important;
  }

  .address-preview-meta span{
    min-width:0 !important;
    width:fit-content;
    max-width:100%;
    padding:8px 12px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.35;
  }

  .payment-address-edit{
    margin-top:16px;
    min-height:44px;
    padding:0 18px !important;
    border-radius:999px !important;
    font-size:14px !important;
    align-items:center;
    justify-content:center;
  }

  .payment-app-layout{
    gap:14px;
  }

  .payment-block{
    border-radius:22px;
    box-shadow:0 16px 34px rgba(29, 22, 18, 0.06);
    border:1px solid rgba(226, 218, 210, 0.9);
  }

  .payment-block-head{
    padding:14px 16px;
    background:linear-gradient(180deg,#f7f8fb,#f2f3f7);
    font-size:11px;
    letter-spacing:1.1px;
  }

  .payment-recommended-list{
    padding:10px 0 4px;
  }

  .payment-app-option{
    padding:18px 18px 16px;
    gap:12px;
    align-items:center;
  }

  .payment-app-option.active{
    background:linear-gradient(135deg,#fff6f8 0%, #fffafb 100%);
  }

  .payment-app-option-main{
    gap:12px;
    min-width:0;
    flex:1;
  }

  .payment-app-option input{
    width:17px;
    height:17px;
    margin-top:3px;
  }

  .payment-app-copy{
    min-width:0;
  }

  .payment-app-copy strong{
    font-size:15px;
    line-height:1.25;
    margin-bottom:3px;
  }

  .payment-app-copy p{
    font-size:12px;
    line-height:1.45;
    color:#7b8395;
  }

  .payment-app-brand{
    min-width:64px;
    padding:7px 10px;
    border-radius:999px;
    background:#f7f8fc;
  }

  .payment-brand-image{
    width:62px;
    height:20px;
  }

  .payment-primary-action{
    width:calc(100% - 36px);
    margin:6px 18px 12px;
    min-height:54px;
    border-radius:18px;
    font-size:16px;
    box-shadow:0 16px 28px rgba(255,63,108,0.2);
  }

  .payment-stack-item summary{
    padding:16px;
    font-size:15px;
    line-height:1.3;
  }

  .payment-stack-meta,
  .payment-stack-arrow{
    font-size:11px;
  }

  .payment-stack-panel{
    padding:0 16px 16px;
    font-size:13px;
  }

  .payment-pill-row{
    gap:8px;
  }

  .payment-pill-button{
    padding:9px 12px;
    font-size:12px;
  }

  .payment-inline-field input{
    min-height:44px;
    border-radius:14px;
    font-size:14px;
  }

  .payment-price-list,
  .payment-bag-list,
  .payment-cta-block{
    padding:14px 16px;
  }

  .payment-price-row{
    padding:8px 0;
    font-size:14px;
  }

  .payment-bag-row{
    gap:10px;
    padding:10px 0;
  }

  .payment-bag-row strong{
    font-size:14px;
    line-height:1.35;
  }

  .payment-bag-row p{
    font-size:12px;
  }

  .payment-accept-strip{
    gap:8px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .payment-footer-mark{
    min-height:40px;
    padding:8px 10px;
    border-radius:14px;
  }

  .payment-footer-mark img{
    width:68px;
    height:18px;
  }

  .payment-place-button{
    min-height:54px;
    border-radius:16px;
    font-size:16px;
    box-shadow:0 16px 28px rgba(122,49,66,0.2);
  }

  .payment-terms-note{
    font-size:12px;
    line-height:1.55;
    text-align:center;
  }
}

.site-footer-payments{
  margin-top:26px;
  padding:18px 20px;
  border-radius:18px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.08);
}

.site-footer-payments-label{
  display:block;
  margin-bottom:12px;
  color:#f4dba4;
  font-size:12px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
}

.site-footer-payment-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.site-footer-payment-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:68px;
  padding:0 28px;
  border-radius:22px;
  background:#fff;
  color:#223047;
  font-size:12px;
  font-weight:800;
}

.site-footer-payment-chip img{
  width:152px;
  height:auto;
  max-height:40px;
  object-fit:contain;
}

.site-footer-payment-chip-razorpay{
  background:linear-gradient(135deg,#f5f7ff 0%,#ffffff 100%);
}

.product-stock-badge{
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:800;
  letter-spacing:0.4px;
}

.product-stock-badge.sold-out{
  background:#fff1f2;
  color:#b42318;
}

.product-stock-badge.limited-stock{
  background:#fff7e8;
  color:#b7791f;
}

.product-stock-status{
  margin-top:12px;
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
}

.product-stock-status.is-live{
  background:#fff7e8;
  color:#b7791f;
}

.product-stock-status.is-out{
  background:#fff1f2;
  color:#b42318;
}

.premium-btn.is-disabled{
  opacity:0.65;
  cursor:not-allowed;
}

.cart-stock-note{
  margin:8px 0 0;
  font-size:12px;
  font-weight:700;
  color:#8a6d1d;
}

.site-footer-payment-chip.is-gpay{ color:#4285f4; }
.site-footer-payment-chip.is-phonepe{ color:#5f259f; }
.site-footer-payment-chip.is-paytm{ color:#00a6df; }
.site-footer-payment-chip.is-visa{ color:#1a1f71; letter-spacing:0.5px; }
.site-footer-payment-chip.is-rupay{ color:#0f4aa3; }

@media (max-width: 520px){
  .site-footer-payments{
    padding:16px 14px;
    border-radius:20px;
  }

  .site-footer-payments-label{
    margin-bottom:10px;
    text-align:left;
  }

  .site-footer-payment-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
  }

  .site-footer-payment-chip{
    width:100%;
    min-width:0;
    min-height:64px;
    padding:0 20px;
    border-radius:20px;
  }

  .site-footer-payment-chip img{
    width:100%;
    max-width:152px;
    height:auto;
    max-height:36px;
  }

  .site-footer-bottom p{
    max-width:320px;
    margin:0 auto;
    text-align:center;
  }

  .site-footer-links{
    width:100%;
    justify-content:center;
    row-gap:10px;
  }

  .cart-container{
    padding:18px 12px 34px !important;
  }

  .cart-title{
    font-size:28px !important;
    letter-spacing:1.6px !important;
    margin-bottom:10px !important;
  }

  #bagCount{
    margin:0 0 16px !important;
    font-size:13px;
  }

  .cart-layout{
    gap:16px !important;
  }

  .cart-item{
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    align-items:start !important;
    gap:12px !important;
    padding:14px !important;
    border-radius:18px !important;
  }

  .cart-item img{
    width:88px !important;
    height:88px !important;
    border-radius:14px !important;
  }

  .cart-item-content{
    min-width:0;
  }

  .cart-item-content h3{
    font-size:16px !important;
    line-height:1.3 !important;
    margin-right:18px;
  }

  .cart-price-line{
    gap:8px !important;
    margin-bottom:10px;
  }

  .qty-control{
    margin-top:6px;
  }

  .remove-btn{
    top:10px !important;
    right:10px !important;
  }

  .bill-summary{
    padding:20px 16px !important;
    border-radius:20px !important;
  }

  .empty-cart-state{
    min-height:auto !important;
    grid-template-columns:1fr !important;
    padding:20px 18px !important;
    text-align:center !important;
    justify-items:center;
  }

  .empty-cart-state .cart-item-content{
    width:100%;
    max-width:280px !important;
    margin:0 auto;
  }

  .empty-cart-state .cart-item-category{
    margin-bottom:8px;
  }

  .empty-cart-state h3{
    font-size:24px !important;
    line-height:1.15 !important;
    margin:6px 0 10px !important;
  }

  .empty-cart-state p{
    font-size:14px;
    line-height:1.55 !important;
    margin:0 auto 14px;
  }

  .empty-cart-state .checkout-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    width:100% !important;
    max-width:220px;
    min-height:46px;
    margin:4px auto 0 !important;
    padding:0 18px !important;
    border-radius:16px !important;
    font-size:14px !important;
    line-height:1 !important;
  }

  .wishlist-page{
    padding:18px 12px 28px !important;
  }

  .wishlist-hero{
    text-align:left;
    padding:10px 2px 4px;
  }

  .wishlist-grid{
    gap:14px;
  }

  .wishlist-card{
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:12px !important;
    padding:14px !important;
    border-radius:20px !important;
    align-items:start;
  }

  .wishlist-card-media img{
    height:110px !important;
    border-radius:14px !important;
  }

  .wishlist-card-body{
    min-width:0;
  }

  .wishlist-card-body h3{
    font-size:17px !important;
    line-height:1.28 !important;
    margin-bottom:8px !important;
  }

  .wishlist-card-price{
    gap:8px !important;
    margin-bottom:14px !important;
  }

  .wishlist-card-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:8px !important;
    width:100%;
  }

  .wishlist-card-actions .checkout-btn,
  .wishlist-card-actions .wishlist-secondary{
    width:100% !important;
    min-width:0;
    margin-top:0 !important;
    padding:12px 10px !important;
    border-radius:14px !important;
    font-size:12px !important;
    letter-spacing:.2px !important;
    justify-content:center;
  }
}

/* ===============================
FINAL CART PAGE OVERRIDES
================================= */

body.cart-page{
  background:
    radial-gradient(circle at top center, rgba(255,255,255,0.86), rgba(255,255,255,0) 34%),
    linear-gradient(180deg,#f7eeef 0%,#f7e8ec 100%) !important;
}

body.cart-page .offer-box{
  margin:24px auto 0 !important;
}

body.cart-page .cart-container{
  padding-top:20px !important;
}

body.cart-page .cart-title{
  color:#2b1820 !important;
}

body.cart-page #bagCount{
  color:#7e6971 !important;
}

body.cart-page .cart-items{
  display:grid !important;
  gap:18px !important;
}

body.cart-page .cart-item{
  display:grid !important;
  grid-template-columns:92px minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:16px !important;
  background:#fffdfb !important;
  border:1px solid rgba(233,220,210,0.95) !important;
  box-shadow:0 18px 38px rgba(38,24,28,0.08) !important;
}

body.cart-page .cart-item-content{
  width:100% !important;
  min-width:0 !important;
}

body.cart-page .cart-item-content h3{
  margin:0 0 10px !important;
  color:#241419 !important;
  display:block !important;
  font-family:'Cormorant Garamond',serif !important;
  font-size:22px !important;
  line-height:1.14 !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:unset !important;
  overflow:visible !important;
}

body.cart-page .cart-item-content h3 a{
  color:inherit !important;
}

body.cart-page .cart-item-category{
  color:#ad9155 !important;
}

body.cart-page .cart-price-line{
  margin:0 0 14px !important;
  justify-content:flex-start !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}

body.cart-page .qty-control{
  display:inline-grid !important;
  grid-template-columns:36px 44px 36px !important;
  border-radius:999px !important;
  margin-top:0 !important;
}

body.cart-page .remove-btn{
  position:static !important;
  top:auto !important;
  right:auto !important;
  margin:0 !important;
  align-self:start !important;
  justify-self:end !important;
  color:#9f9198 !important;
  line-height:1.2 !important;
}

body.cart-page .bill-summary{
  background:#fffdfb !important;
  border:1px solid rgba(233,220,210,0.95) !important;
  box-shadow:0 18px 38px rgba(38,24,28,0.08) !important;
}

body.cart-page .bill-summary h3{
  color:#241419 !important;
  font-size:36px !important;
  line-height:1.05 !important;
}

body.cart-page .bill-line,
body.cart-page .bill-total-line{
  color:#4d4048 !important;
}

body.cart-page .bill-total-line{
  color:#241419 !important;
}

body.cart-page .empty-cart-state{
  grid-template-columns:1fr !important;
  justify-items:start !important;
  text-align:left !important;
  min-height:320px !important;
  padding:28px !important;
}

body.cart-page .empty-cart-state .cart-item-content{
  width:100% !important;
  max-width:420px !important;
  margin:0 !important;
}

body.cart-page .empty-cart-state h3{
  font-size:30px !important;
  line-height:1.02 !important;
  margin:8px 0 14px !important;
  max-width:320px;
}

body.cart-page .empty-cart-state p{
  margin:0 0 18px !important;
  max-width:360px;
  font-size:15px !important;
  line-height:1.75 !important;
}

body.cart-page .empty-cart-state .checkout-btn{
  width:auto !important;
  max-width:none !important;
  min-width:220px !important;
  margin:0 !important;
  padding:0 24px !important;
  white-space:nowrap !important;
}

body.cart-page .whatsapp-float{
  right:14px !important;
  bottom:14px !important;
  z-index:140 !important;
}

@media (max-width: 768px){
  body.cart-page .cart-layout{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  body.cart-page .bill-summary{
    position:static !important;
  }

  body.cart-page .empty-cart-state{
    min-height:280px !important;
  }
}

@media (max-width: 520px){
  body.cart-page{
    background:linear-gradient(180deg,#f7edef 0%,#f7e8ec 100%) !important;
  }

  body.cart-page .offer-box{
    margin:16px 12px 0 !important;
    padding:16px !important;
    border-radius:18px !important;
  }

  body.cart-page .cart-container{
    padding:16px 12px 28px !important;
  }

  body.cart-page .cart-page-intro{
    margin-bottom:14px !important;
  }

  body.cart-page .cart-title{
    font-size:30px !important;
    letter-spacing:1.2px !important;
  }

  body.cart-page #bagCount{
    margin:0 0 18px !important;
    font-size:14px !important;
  }

  body.cart-page .cart-item{
    grid-template-columns:76px minmax(0,1fr) !important;
    gap:12px !important;
    padding:14px !important;
    border-radius:20px !important;
  }

  body.cart-page .cart-item-media{
    width:76px !important;
    height:96px !important;
    border-radius:14px !important;
  }

  body.cart-page .cart-item img{
    width:100% !important;
    height:100% !important;
    border-radius:14px !important;
  }

  body.cart-page .cart-item-content h3{
    font-size:18px !important;
    line-height:1.3 !important;
    margin:0 42px 8px 0 !important;
  }

  body.cart-page .cart-price-line .current-price{
    font-size:16px !important;
  }

  body.cart-page .cart-price-line .old,
  body.cart-page .cart-price-line .discount{
    font-size:13px !important;
  }

  body.cart-page .remove-btn{
    grid-column:2 !important;
    margin-top:-28px !important;
    font-size:13px !important;
  }

  body.cart-page .bill-summary{
    padding:22px 18px !important;
    border-radius:24px !important;
  }

  body.cart-page .bill-summary h3{
    font-size:28px !important;
    line-height:1.04 !important;
  }

  body.cart-page .bill-line{
    font-size:14px !important;
  }

  body.cart-page .bill-total-line{
    font-size:22px !important;
  }

  body.cart-page .empty-cart-state{
    min-height:260px !important;
    padding:22px 18px !important;
  }

  body.cart-page .empty-cart-state .cart-item-content{
    max-width:100% !important;
  }

  body.cart-page .empty-cart-state h3{
    font-size:24px !important;
    max-width:220px;
  }

  body.cart-page .empty-cart-state p{
    max-width:100%;
    font-size:14px !important;
    line-height:1.7 !important;
  }

  body.cart-page .empty-cart-state .checkout-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:240px !important;
    min-height:50px !important;
    white-space:nowrap !important;
  }

  body.cart-page .whatsapp-float{
    right:12px !important;
    bottom:12px !important;
    padding:9px 12px 9px 10px !important;
    min-height:44px !important;
  }
}

/* FINAL MOBILE COMMERCE FIXES */
@media (max-width: 768px){
  body.product-page .product-main-wrap,
  body .product-main-wrap{
    padding-bottom:24px !important;
  }

  body.product-page .product-cta-row,
  body .product-cta-row{
    position:static !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:0 !important;
    margin-top:18px !important;
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
    z-index:auto !important;
  }

  body.product-page .product-gallery-wrap,
  body .product-gallery-wrap{
    overflow:visible !important;
  }

  body.product-page .product-main-image-box,
  body .product-main-image-box{
    margin-bottom:0 !important;
  }

  body.product-page .product-cart-btn,
  body.product-page .product-buy-btn,
  body.product-page #addCartBtn,
  body.product-page #buyNowBtn,
  body #addCartBtn,
  body #buyNowBtn{
    width:100% !important;
    min-height:54px !important;
    border-radius:18px !important;
  }

  body.cart-page .cart-item{
    position:relative !important;
    grid-template-columns:84px minmax(0,1fr) !important;
    gap:14px !important;
    align-items:start !important;
  }

  body.cart-page .cart-item-media{
    grid-row:1 / span 3 !important;
  }

  body.cart-page .cart-item-content{
    display:block !important;
    min-width:0 !important;
  }

  body.cart-page .remove-btn{
    position:absolute !important;
    top:16px !important;
    right:16px !important;
    margin:0 !important;
    grid-column:auto !important;
  }

  body.cart-page .cart-item-content h3{
    margin:2px 72px 8px 0 !important;
    max-width:none !important;
    word-break:break-word !important;
  }

  body.cart-page .empty-cart-state .cart-item-content h3,
  body.cart-page .empty-cart-state .cart-item-content p{
    max-width:none !important;
    width:100% !important;
    word-break:normal !important;
  }

  body.cart-page .empty-cart-state .checkout-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body.cart-page{
    padding-bottom:96px !important;
  }

  body.cart-page .cart-container{
    padding-bottom:110px !important;
  }

  body.cart-page .bill-summary{
    margin-bottom:0 !important;
  }

  body .whatsapp-float{
    right:14px !important;
    bottom:14px !important;
    z-index:250 !important;
  }
}
/* Checkout refresh */
:root{
  --checkout-bg: #f5f7fb;
  --checkout-surface: #ffffff;
  --checkout-surface-alt: #f8fafc;
  --checkout-border: #d7deea;
  --checkout-text: #203047;
  --checkout-muted: #667085;
  --checkout-accent: #7b243d;
  --checkout-accent-soft: #f5e8ed;
  --checkout-success: #0f766e;
}

body.cart-page,
body.checkout-page,
body.address-page{
  background:
    radial-gradient(circle at top left, rgba(123, 36, 61, 0.08), transparent 32%),
    linear-gradient(180deg, #fbfcfe 0%, var(--checkout-bg) 100%);
  color: var(--checkout-text);
}

body.cart-page .sale-bar,
body.checkout-page .sale-bar,
body.address-page .sale-bar{
  background: #eff3f8;
  color: var(--checkout-text);
}

body.cart-page .offer-box,
.checkout-card,
.checkout-form-card,
.checkout-summary-card,
.checkout-section-card,
body.cart-page .bill-summary,
body.cart-page .cart-item,
body.cart-page .empty-cart-state{
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--checkout-border);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.08);
}

body.cart-page .cart-title,
.checkout-copy-block h1,
.checkout-summary-head h2,
.checkout-section-head h2{
  color: var(--checkout-text);
}

body.cart-page .cart-item-category,
.checkout-eyebrow,
.checkout-summary-caption,
.checkout-status-note,
.checkout-line-copy p,
.checkout-preview-card p{
  color: var(--checkout-muted);
}

body.cart-page .offer-bar{
  background: #e6ecf3;
}

body.cart-page #offerProgress{
  background: linear-gradient(90deg, #7b243d, #b44d70);
}

body.cart-page .checkout-btn,
.checkout-primary-btn,
.checkout-link-btn{
  border-radius: 999px;
  background: var(--checkout-accent);
  color: #fff;
  border: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

body.cart-page .checkout-btn:hover,
.checkout-primary-btn:hover,
.checkout-link-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(123, 36, 61, 0.22);
}

body.cart-page .checkout-btn.is-disabled,
.checkout-primary-btn:disabled{
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}

body.cart-page .empty-cart-state{
  min-height: 420px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 48px 24px;
}

.empty-cart-illustration{
  width: 104px;
  height: 104px;
  margin: 0 auto 20px;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(123, 36, 61, 0.18), rgba(123, 36, 61, 0.04)),
    var(--checkout-surface-alt);
  position: relative;
}

.empty-cart-illustration::before,
.empty-cart-illustration::after{
  content: "";
  position: absolute;
  border-radius: 18px;
}

.empty-cart-illustration::before{
  inset: 24px 22px 26px;
  border: 3px solid rgba(123, 36, 61, 0.35);
}

.empty-cart-illustration::after{
  width: 36px;
  height: 12px;
  left: 50%;
  top: 22px;
  transform: translateX(-50%);
  border: 3px solid rgba(123, 36, 61, 0.35);
  border-bottom: 0;
}

.checkout-shell{
  max-width: 1220px;
  margin: 0 auto;
  padding: 32px 18px 72px;
}

.checkout-card{
  border-radius: 32px;
  padding: 28px;
}

.checkout-stage{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.checkout-stage span{
  padding: 10px 16px;
  border-radius: 999px;
  background: #eef2f7;
  color: var(--checkout-muted);
  font-size: 0.92rem;
  font-weight: 600;
}

.checkout-stage span.active{
  background: var(--checkout-accent-soft);
  color: var(--checkout-accent);
}

.checkout-copy-block{
  margin-bottom: 24px;
}

.checkout-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.95fr);
  gap: 22px;
  align-items: start;
}

.checkout-form-card,
.checkout-summary-card{
  border-radius: 28px;
  padding: 24px;
}

.checkout-field-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.checkout-field{
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.95rem;
  color: var(--checkout-text);
}

.checkout-field-full{
  grid-column: 1 / -1;
}

.checkout-field input,
.checkout-field textarea{
  width: 100%;
  border-radius: 18px;
  border: 1px solid var(--checkout-border);
  background: #fbfcfe;
  padding: 14px 16px;
  color: var(--checkout-text);
  font: inherit;
}

.checkout-field input:focus,
.checkout-field textarea:focus{
  outline: none;
  border-color: rgba(123, 36, 61, 0.45);
  box-shadow: 0 0 0 4px rgba(123, 36, 61, 0.1);
}

.checkout-status-note{
  margin: 16px 0 0;
}

.checkout-primary-btn{
  width: 100%;
  padding: 15px 20px;
  margin-top: 20px;
  font-size: 1rem;
  font-weight: 700;
}

.checkout-summary-lines{
  display: grid;
  gap: 12px;
}

.checkout-summary-line{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.checkout-summary-line.total{
  padding-top: 12px;
  border-top: 1px solid var(--checkout-border);
}

.checkout-summary-caption{
  margin: -4px 0 2px;
  font-size: 0.9rem;
}

.checkout-items-list{
  display: grid;
  gap: 14px;
  margin-top: 22px;
}

.checkout-line-item{
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 20px;
  background: var(--checkout-surface-alt);
  border: 1px solid #e7edf5;
}

.checkout-line-item.compact{
  padding: 12px 14px;
}

.checkout-line-copy strong{
  display: block;
  margin-bottom: 4px;
}

.address-payment-grid{
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.92fr);
}

.checkout-section-card{
  border-radius: 24px;
  padding: 20px;
  margin-bottom: 18px;
}

.checkout-section-head{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-bottom: 16px;
}

.checkout-link-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  text-decoration: none;
}

.checkout-preview-card{
  border-radius: 20px;
  padding: 16px;
  background: var(--checkout-surface-alt);
  border: 1px solid #e7edf5;
}

.checkout-preview-card strong{
  display: block;
  margin-bottom: 6px;
}

.checkout-payment-choices{
  display: grid;
  gap: 12px;
}

.checkout-payment-option{
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 16px;
  border-radius: 20px;
  border: 1px solid var(--checkout-border);
  background: #fbfcfe;
  cursor: pointer;
}

.checkout-payment-option.active{
  border-color: rgba(123, 36, 61, 0.35);
  background: var(--checkout-accent-soft);
}

.checkout-payment-option input{
  margin-top: 4px;
}

.checkout-payment-option p{
  margin: 6px 0 0;
  color: var(--checkout-muted);
}

.checkout-cod-split{
  display: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.checkout-cod-split.is-visible{
  display: grid;
}

.checkout-cod-stat{
  padding: 16px;
  border-radius: 20px;
  background: var(--checkout-surface-alt);
  border: 1px solid #e7edf5;
}

.checkout-cod-stat span{
  display: block;
  color: var(--checkout-muted);
  margin-bottom: 8px;
}

.checkout-cod-stat strong{
  color: var(--checkout-accent);
  font-size: 1.08rem;
}

@media (max-width: 980px){
  .checkout-grid,
  .address-payment-grid,
  body.cart-page .cart-layout{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px){
  .checkout-card,
  .checkout-form-card,
  .checkout-summary-card{
    border-radius: 24px;
    padding: 18px;
  }

  .checkout-field-grid,
  .checkout-cod-split{
    grid-template-columns: 1fr;
  }

  .checkout-section-head{
    flex-direction: column;
    align-items: flex-start;
  }

  body.cart-page .empty-cart-state{
    min-height: 360px;
    padding: 36px 18px;
  }
}
/* Checkout refresh overrides */
body.cart-page,
body.checkout-page,
body.address-page{
  background:
    radial-gradient(circle at top left, rgba(123, 36, 61, 0.08), transparent 32%),
    linear-gradient(180deg, #fbfcfe 0%, #f5f7fb 100%) !important;
}

body.cart-page .sale-bar,
body.checkout-page .sale-bar,
body.address-page .sale-bar{
  background: #eff3f8 !important;
  color: #203047 !important;
}

body.cart-page .offer-box,
body.cart-page .bill-summary,
body.cart-page .cart-item,
body.cart-page .empty-cart-state,
.checkout-card,
.checkout-form-card,
.checkout-summary-card,
.checkout-section-card{
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid #d7deea !important;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.08) !important;
}

body.cart-page .checkout-btn,
.checkout-primary-btn,
.checkout-link-btn{
  border-radius: 999px !important;
  background: #7b243d !important;
  color: #fff !important;
  border: none !important;
}

body.cart-page .empty-cart-state{
  min-height: 420px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 48px 24px !important;
}

.checkout-shell{
  max-width: 1220px;
  margin: 0 auto;
  padding: 32px 18px 72px;
}

.checkout-card{
  border-radius: 32px;
  padding: 28px;
}

.checkout-stage{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.checkout-stage span{
  padding: 10px 16px;
  border-radius: 999px;
  background: #eef2f7;
  color: #667085;
  font-size: 0.92rem;
  font-weight: 600;
}

.checkout-stage span.active{
  background: #f5e8ed;
  color: #7b243d;
}

.checkout-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.95fr);
  gap: 22px;
  align-items: start;
}

.address-payment-grid{
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.92fr);
}

.checkout-form-card,
.checkout-summary-card{
  border-radius: 28px;
  padding: 24px;
}

.checkout-field-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.checkout-field{
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.checkout-field-full{
  grid-column: 1 / -1;
}

.checkout-field input,
.checkout-field textarea{
  width: 100%;
  border-radius: 18px;
  border: 1px solid #d7deea;
  background: #fbfcfe;
  padding: 14px 16px;
  color: #203047;
  font: inherit;
}

.checkout-payment-choices,
.checkout-items-list{
  display: grid;
  gap: 12px;
}

.checkout-line-item,
.checkout-preview-card,
.checkout-cod-stat,
.checkout-payment-option{
  border-radius: 20px;
  background: #f8fafc;
  border: 1px solid #e7edf5;
}

.checkout-line-item{
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
}

.checkout-section-card{
  border-radius: 24px;
  padding: 20px;
  margin-bottom: 18px;
}

.checkout-section-head{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-bottom: 16px;
}

.checkout-link-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  text-decoration: none;
}

.checkout-payment-option{
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 16px;
  cursor: pointer;
}

.checkout-payment-option.active{
  border-color: rgba(123, 36, 61, 0.35);
  background: #f5e8ed;
}

.checkout-cod-split{
  display: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.checkout-cod-split.is-visible{
  display: grid;
}

.empty-cart-illustration{
  width: 104px;
  height: 104px;
  margin: 0 auto 20px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(123, 36, 61, 0.18), rgba(123, 36, 61, 0.04)), #f8fafc;
  position: relative;
}

.empty-cart-illustration::before,
.empty-cart-illustration::after{
  content: "";
  position: absolute;
}

.empty-cart-illustration::before{
  inset: 24px 22px 26px;
  border: 3px solid rgba(123, 36, 61, 0.35);
  border-radius: 18px;
}

.empty-cart-illustration::after{
  width: 36px;
  height: 12px;
  left: 50%;
  top: 22px;
  transform: translateX(-50%);
  border: 3px solid rgba(123, 36, 61, 0.35);
  border-bottom: 0;
  border-radius: 18px 18px 0 0;
}

@media (max-width: 980px){
  .checkout-grid,
  .address-payment-grid,
  body.cart-page .cart-layout{
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px){
  .checkout-card,
  .checkout-form-card,
  .checkout-summary-card{
    border-radius: 24px;
    padding: 18px;
  }

  .checkout-field-grid,
  .checkout-cod-split{
    grid-template-columns: 1fr;
  }
}

.checkout-address-layout{
  display: grid;
  gap: 18px;
}

.checkout-address-note{
  display:grid;
  gap:8px;
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(135deg,#fff8f6 0%,#fff 100%);
  border:1px solid #efd9df;
  box-shadow:0 14px 28px rgba(54,23,34,0.06);
}

.checkout-address-note strong{
  color:#4a1f2b;
  font-size:15px;
  font-weight:800;
}

.checkout-address-note p{
  margin:0;
  color:#6f5e64;
  line-height:1.6;
  font-size:14px;
}

@media (max-width: 768px){
  .checkout-address-note{
    padding:16px;
    border-radius:18px;
  }
}

/* Shared footer polish */
.site-footer{
  margin-top: 48px;
  background:
    radial-gradient(circle at top left, rgba(255,255,255,0.08), transparent 32%),
    linear-gradient(180deg, #5d2233 0%, #451827 100%);
}

.site-footer-shell{
  max-width: 1280px;
  margin: 0 auto;
  padding: 42px 28px 30px;
}

.site-footer-newsletter{
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(255,255,255,0.14);
}

.site-footer-newsletter h2{
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 1.05;
  letter-spacing: 0.01em;
}

.site-footer-form{
  max-width: 560px;
  margin: 0 auto;
}

.site-footer-grid{
  display: grid;
  grid-template-columns: 1fr 1fr 1.15fr;
  gap: 24px;
  padding-top: 28px;
  align-items: start;
}

.site-footer-group,
.site-footer-contact-card,
.site-footer-payments{
  border-radius: 22px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  box-shadow: 0 16px 40px rgba(11, 7, 9, 0.14);
}

.site-footer-group{
  padding: 0;
  overflow: hidden;
}

.site-footer-toggle{
  width: 100%;
  min-height: 62px;
  padding: 20px 22px 18px;
  align-items: center;
}

.site-footer-column{
  gap: 8px;
  padding: 0 22px 22px;
}

.site-footer-column a,
.site-footer-links a,
.site-footer-contact-row a{
  color: rgba(255,247,244,0.88);
}

.site-footer-toggle span{
  display: block;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.site-footer-toggle strong{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
  color: rgba(255,247,244,0.92);
  font-size: 18px;
  line-height: 1;
  flex: 0 0 auto;
}

.site-footer-panel{
  display: grid;
  grid-template-rows: 1fr;
  opacity: 1;
  transition: grid-template-rows .24s ease, opacity .24s ease;
}

.site-footer-panel > .site-footer-column{
  overflow: hidden;
}

.site-footer-column a:hover,
.site-footer-links a:hover,
.site-footer-contact-row a:hover{
  color: #ffffff;
}

.site-footer-column a{
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 0;
  font-size: 15px;
  line-height: 1.45;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.site-footer-column a:last-child{
  border-bottom: none;
}

.site-footer-contact-card{
  padding: 26px 24px;
  gap: 22px;
}

.site-footer-address{
  margin-top: 8px;
  font-size: 18px;
  line-height: 1.65;
  color: rgba(255,247,244,0.9);
}

.site-footer-payments{
  margin-top: 22px;
  padding: 22px 24px;
}

.site-footer-payments-label{
  color: rgba(255,236,214,0.86);
  margin-bottom: 16px;
  display: block;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.site-footer-payment-list{
  display: flex;
  justify-content: center;
}

.site-footer-payment-chip{
  width: auto;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.site-footer-payment-chip-razorpay{
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(130,145,205,0.24);
  box-shadow: 0 8px 18px rgba(21,33,86,0.10);
}

.site-footer-payment-wordmark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:14px;
  line-height:1;
  font-weight:700;
  letter-spacing:0;
  color:#3557d6;
}

.site-footer-payment-mark{
  width:14px;
  height:14px;
  border-radius:4px;
  background:linear-gradient(135deg,#3557d6 0%,#6c85f0 100%);
  transform:rotate(45deg);
  box-shadow:0 4px 10px rgba(53,87,214,0.22);
}

.site-footer-contact-row{
  align-items: center;
  gap: 16px;
}

.site-footer-contact-icon{
  min-width: 68px;
  height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.site-footer-contact-row a{
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}

.site-footer-socials{
  gap: 14px;
  margin-top: 4px;
}

.site-footer-socials a{
  width: 46px;
  height: 46px;
  background: rgba(255,255,255,0.14);
}

.site-footer-socials a svg{
  width: 20px;
  height: 20px;
}

.site-footer-social-image-link svg{
  width: 18px;
  height: 18px;
  stroke-width: 1.9;
  transform: none;
}

.site-footer-bottom{
  margin-top: 24px;
  padding-top: 22px;
}

.site-footer-bottom p{
  max-width: 540px;
  color: rgba(255,247,244,0.82);
}

@media (max-width: 900px){
  .site-footer-grid{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px){
  .site-footer-shell{
    padding: 34px 16px 24px;
  }

  .site-footer-newsletter{
    padding-bottom: 24px;
  }

  .site-footer-grid{
    gap: 16px;
    padding-top: 22px;
  }

  .site-footer-group,
  .site-footer-contact-card,
  .site-footer-payments{
    border-radius: 18px;
  }

  .site-footer-contact-card{
    padding: 22px 18px;
    gap: 18px;
  }

  .site-footer-contact-icon{
    min-width: 62px;
    height: 38px;
    padding: 0 14px;
    font-size: 12px;
  }

  .site-footer-contact-row a{
    font-size: 17px;
  }

  .site-footer-address{
    font-size: 16px;
  }

  .site-footer-toggle{
    min-height: 58px;
    padding: 18px 16px 16px;
  }

  .site-footer-toggle span{
    font-size: 12px;
    letter-spacing: 0.1em;
  }

  .site-footer-toggle strong{
    width: 24px;
    height: 24px;
    font-size: 16px;
  }

  .site-footer-group:not(.is-open) .site-footer-panel{
    grid-template-rows: 0fr;
    opacity: .22;
  }

  .site-footer-column{
    gap: 0;
    padding: 0 16px 16px;
  }

  .site-footer-column a{
    min-height: 40px;
    font-size: 14px;
  }

  .site-footer-payments{
    padding: 18px 16px;
  }

  .site-footer-payment-chip{
    width: 100%;
    justify-content: center;
    min-height: 76px;
    padding: 0 18px;
    border-radius: 24px;
  }

  .site-footer-payment-chip-razorpay img{
    width: 176px;
    max-height: 42px;
  }

  .site-footer-payment-wordmark{
    font-size:13px;
  }

  .site-footer-socials{
    justify-content: flex-start;
  }

  .site-footer-socials a{
    width: 48px;
    height: 48px;
  }

  .site-footer-bottom{
    text-align: center;
  }
}
