/* =========================
   RESET
========================= */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:'Poppins',sans-serif;
  background:#f5f5f5;
  color:#111;
}

a{text-decoration:none;color:#111}

/* =========================
   HEADER
========================= */
.site-header{
  display:grid;
  grid-template-columns:auto auto 1fr auto;
  column-gap:40px;
  align-items:center;
  padding:14px 26px;
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
  position:sticky;
  top:0;
  z-index:1000;
}

.header-left{margin-right:20px}

.logo{
  font-size:24px;
  font-weight:700;
  color:#7b112c;
}

.header-search{
  display:flex;
  max-width:420px;
}

.header-search input{
  flex:1;
  padding:9px 12px;
  border:1px solid #ddd;
  border-radius:6px 0 0 6px;
}

.header-search button{
  padding:9px 14px;
  border:none;
  background:#7b112c;
  color:#fff;
  border-radius:0 6px 6px 0;
  cursor:pointer;
}

.header-right{
  display:flex;
  align-items:center;
  gap:16px;
}

/* =========================
   HEADER MENU
========================= */
.header-menu{
  display:flex;
  gap:22px;
  margin-left:20px;
}

.menu-link{
  font-size:14px;
  font-weight:500;
  position:relative;
}

.menu-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0;
  height:2px;
  background:#7b112c;
  transition:.3s;
}

.menu-link:hover::after{width:100%}

.logout{color:#999}

.icon-link{
  position:relative;
  font-size:18px;
}

/* BADGES */
.cart-badge,
.wishlist-badge{
  position:absolute;
  top:-6px;
  right:-10px;
  background:#7b112c;
  color:#fff;
  font-size:11px;
  padding:2px 6px;
  border-radius:50%;
  font-weight:600;
}

/* =========================
   HERO / SLIDER
========================= */
.hero-slider{
  position:relative;
  width:100%;
  height:260px !important;
  overflow:hidden;
}

.slide{
  position:absolute;
  inset:0;
  opacity:0;
  transform:scale(1.05);
  transition:.9s ease;
}

.slide.active{
  opacity:1;
  transform:scale(1);
  z-index:1;
}

.slide img{
  width:100%;
  height:260px !important;
  object-fit:cover;
}

.slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
}

.hero-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  color:#fff;
}

.hero-overlay h1{font-size:30px}
.hero-overlay p{font-size:14px;margin:8px 0}

.hero-btn{
  background:#7b112c;
  color:#fff;
  padding:9px 24px;
  border-radius:30px;
}

/* =========================
   PRODUCTS
========================= */
.products{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:24px;
  padding:30px;
}

.product{
  background:#fff;
  padding:16px;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  text-align:center;
  position:relative;
  overflow:hidden;
  transition:.25s;
}

/* ❤️ WISHLIST ICON */
.wishlist-icon{
  position:absolute;
  top:12px;
  right:12px;
  width:32px;
  height:32px;
  line-height:32px;
  border-radius:50%;
  background:#fff;
  font-size:18px;
  color:#aaa;
  cursor:pointer;
  box-shadow:0 4px 10px rgba(0,0,0,.15);
  opacity:0;
  transform:scale(.8);
  transition:.25s;
  z-index:5;
}

.product:hover .wishlist-icon{
  opacity:1;
  transform:scale(1);
}

.wishlist-icon.active,
.wishlist-icon:hover{
  color:#e74c3c;
  transform:scale(1.15);
}

/* 🖼 PRODUCT IMAGE – UNIFORM SQUARE */
.product img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:contain;
  background:#fff;
  padding:12px;
  margin-bottom:10px;
  transition:.35s;
}

.product:hover img{transform:scale(1.08)}

.product h3{
  font-size:15px;
  font-weight:500;
  margin-bottom:6px;
}

.product p{
  font-weight:600;
  color:#7b112c;
  margin-bottom:42px;
}

/* 🛒 ADD TO CART */
.add-cart-btn{
  position:absolute;
  left:50%;
  bottom:-45px;
  transform:translateX(-50%);
  background:#7b112c;
  color:#fff;
  padding:9px 22px;
  border-radius:30px;
  font-size:14px;
  opacity:0;
  transition:.35s;
}

.product:hover{
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}

.product:hover .add-cart-btn{
  bottom:12px;
  opacity:1;
}

/* =========================
   ⭐ RATING
========================= */
.rating{
  display:flex;
  justify-content:center;
  gap:2px;
  margin-bottom:6px;
}

.star{font-size:14px}
.star.full{color:#f5a623}
.star.empty{color:#ddd}

.rating-text{
  font-size:12px;
  color:#555;
  margin-left:6px;
}

/* =========================
   PRODUCT DETAIL PAGE
========================= */
.product-page{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  padding:40px;
  background:#fff;
}

.product-gallery img{
  width:100%;
  max-height:420px;
  object-fit:contain;
}

.product-info h1{font-size:26px}
.product-info .price{
  font-size:22px;
  color:#7b112c;
  margin:12px 0;
}

.product-info .desc{color:#555}

/* =========================
   MOBILE
========================= */
@media(max-width:768px){

  .header-search,
  .header-menu{display:none}

  .hero-slider,
  .slide img{height:170px !important}

  .product img{
    aspect-ratio:1 / 1;
    padding:8px;
  }

  .add-cart-btn{
    position:static;
    opacity:1;
    margin-top:10px;
  }

  .wishlist-icon{
    opacity:1;
    transform:scale(1);
  }

  .product-page{
    grid-template-columns:1fr;
    padding:20px;
  }
}

/* =========================
   SIZE & QTY SELECT
========================= */
.size-box label,
.qty-box label{
  font-weight:600;
  display:block;
  margin:14px 0 6px;
}

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

.size-btn{
  border:1px solid #ddd;
  background:#fff;
  padding:8px 14px;
  border-radius:6px;
  cursor:pointer;
}

.size-btn.active{
  background:#7b112c;
  color:#fff;
  border-color:#7b112c;
}

.qty-box input{
  width:80px;
  padding:8px;
  border:1px solid #ddd;
  border-radius:6px;
}

button[disabled]{
  opacity:.6;
  cursor:not-allowed;
}

.cart-item{
  display:grid;
  grid-template-columns:100px 1fr auto;
  gap:20px;
  background:#fff;
  padding:20px;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  margin-bottom:20px;
  position:relative;
  align-items:center;
}

.cart-item img{
  width:100px;
  height:100px;
  object-fit:contain;
}

.qty-box{
  display:flex;
  align-items:center;
  gap:8px;
}

.qty-box button{
  width:30px;
  height:30px;
  border:none;
  background:#7b112c;
  color:#fff;
  border-radius:50%;
  cursor:pointer;
}

.qty-box input{
  width:40px;
  text-align:center;
  border:none;
  font-weight:600;
}

.remove-btn{
  position:absolute;
  top:10px;
  right:10px;
  text-decoration:none;
  font-size:18px;
}

.cart-summary{
  display:flex;
  justify-content:space-between;
  padding:20px;
  background:#fff;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}

/* =========================
   CART PAGE STYLES (OPTIONAL)
========================= */

.cart-item{
  display:grid;
  grid-template-columns:100px 1fr auto;
  gap:20px;
  background:#fff;
  padding:20px;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  margin-bottom:20px;
  position:relative;
  align-items:center;
}

.cart-item img{
  width:100px;
  height:100px;
  object-fit:contain;
}

.qty-box{
  display:flex;
  align-items:center;
  gap:10px;
}

.qty-box button{
  width:30px;
  height:30px;
  border:none;
  background:#7b112c;
  color:#fff;
  border-radius:50%;
  cursor:pointer;
  font-size:18px;
}

.qty-box span{
  min-width:20px;
  text-align:center;
  font-weight:600;
}

.remove-btn{
  position:absolute;
  top:10px;
  right:10px;
  text-decoration:none;
  font-size:18px;
  color:#e74c3c;
}

.cart-summary{
  display:flex;
  justify-content:space-between;
  padding:20px;
  background:#fff;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}

.cart-actions{
  display:flex;
  justify-content:flex-end;
  gap:14px;
  margin-top:20px;
}

/* =========================
   📱 MOBILE CART IMPROVEMENT
========================= */
@media(max-width:768px){

  .cart-item{
    grid-template-columns:1fr;   /* single column */
    gap:14px;
    padding:16px;
  }

  .cart-item img{
    width:100%;
    height:160px;
    object-fit:contain;
    margin:0 auto;
  }

  .cart-info{
    text-align:left;
  }

  .cart-info h3{
    font-size:15px;
    margin-bottom:6px;
  }

  .cart-info p{
    font-size:14px;
  }

  /* ➕➖ QTY */
  .qty-box{
    justify-content:flex-start;
    margin:10px 0;
  }

  .qty-box button{
    width:34px;
    height:34px;
    font-size:18px;
  }

  /* PRICE + TOTAL */
  .cart-total{
    text-align:left;
    font-size:16px;
    font-weight:600;
    color:#7b112c;
  }

  /* ❌ REMOVE */
  .remove-btn{
    top:8px;
    right:8px;
    font-size:20px;
  }

  /* GRAND TOTAL */
  .cart-summary{
    flex-direction:column;
    gap:10px;
    text-align:center;
  }

  /* ACTION BUTTONS */
  .cart-actions{
    flex-direction:column;
  }

  .cart-actions a{
    width:100%;
    text-align:center;
  }
}

/* =========================
   CART PAGE LOOK
========================= */

.cart-item{
  display:flex;
  gap:18px;
  background:#fff;
  border-radius:14px;
  padding:16px;
  margin-bottom:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}

.cart-item img{
  width:90px;
  height:90px;
  object-fit:contain;
  border-radius:10px;
  background:#f7f7f7;
  padding:6px;
}

.cart-item strong{
  font-size:15px;
  display:block;
  margin-bottom:6px;
}

.cart-item a{
  font-size:13px;
}

/* QTY */
.qty-box{
  display:flex;
  align-items:center;
  gap:12px;
  margin:8px 0;
}

.qty-box a{
  width:32px;
  height:32px;
  border-radius:50%;
  background:#7b112c;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  text-decoration:none;
}

.qty-box span{
  font-weight:600;
  min-width:24px;
  text-align:center;
}

/* SUMMARY */
.cart-summary{
  background:#fff;
  padding:18px;
  border-radius:16px;
  box-shadow:0 8px 20px rgba(0,0,0,.1);
  margin-top:20px;
  max-width:420px;
  margin-left:auto;
}

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

.summary-row.total{
  border-top:1px dashed #ddd;
  padding-top:12px;
  font-size:18px;
  font-weight:700;
}

/* ACTION BUTTONS */
.cart-actions{
  margin-top:18px;
  display:flex;
  gap:12px;
}

.cart-actions a{
  flex:1;
  text-align:center;
  padding:12px;
  border-radius:30px;
  text-decoration:none;
  font-weight:500;
}

.btn-outline{
  border:1px solid #7b112c;
  color:#7b112c;
  background:#fff;
}

.btn-primary{
  background:#7b112c;
  color:#fff;
}

/* MOBILE */
@media(max-width:768px){
  .cart-item{
    flex-direction:column;
    align-items:flex-start;
  }
  .cart-summary{
    max-width:100%;
  }
}

/* =========================
   CART PAGE – FINAL LOOK
========================= */

.cart-item{
  display:flex;
  gap:18px;
  background:#fff;
  border-radius:14px;
  padding:16px;
  margin-bottom:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}

.cart-item img{
  width:90px;
  height:90px;
  object-fit:contain;
  border-radius:10px;
  background:#f7f7f7;
  padding:6px;
}

.cart-item strong{
  font-size:15px;
  display:block;
  margin-bottom:6px;
}

/* QTY */
.qty-box{
  display:flex;
  align-items:center;
  gap:12px;
  margin:8px 0;
}

.qty-box a{
  width:32px;
  height:32px;
  border-radius:50%;
  background:#7b112c;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  text-decoration:none;
}

.qty-box span{
  font-weight:600;
  min-width:24px;
  text-align:center;
}

/* SUMMARY */
.cart-summary{
  background:#fff;
  padding:18px;
  border-radius:16px;
  box-shadow:0 8px 20px rgba(0,0,0,.1);
  margin-top:20px;
  max-width:420px;
  margin-left:auto;
}

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

.summary-row.total{
  border-top:1px dashed #ddd;
  padding-top:12px;
  font-size:18px;
  font-weight:700;
}

/* ACTION BUTTONS */
.cart-actions{
  margin-top:18px;
  display:flex;
  gap:12px;
}

.cart-actions a{
  flex:1;
  text-align:center;
  padding:12px;
  border-radius:30px;
  text-decoration:none;
  font-weight:500;
}

.btn-outline{
  border:1px solid #7b112c;
  color:#7b112c;
  background:#fff;
}

.btn-primary{
  background:#7b112c;
  color:#fff;
}

/* MOBILE */
@media(max-width:768px){
  .cart-item{
    flex-direction:column;
    align-items:flex-start;
  }
  .cart-summary{
    max-width:100%;
  }
}

/* =========================
   🌍 GLOBAL MOBILE RESPONSIVE FIX
========================= */

/* Prevent horizontal scroll */
html, body{
  max-width:100%;
  overflow-x:hidden;
}

/* Touch friendly defaults */
button,
input,
textarea,
select{
  font-family:'Poppins',sans-serif;
  font-size:16px; /* iOS zoom fix */
}

/* -------------------------
   MOBILE (Phones)
------------------------- */
@media(max-width:768px){

  /* HEADER */
  .site-header{
    grid-template-columns:auto 1fr auto;
    column-gap:14px;
    padding:12px 16px;
  }

  .header-left{
    margin-right:0;
  }

  .logo{
    font-size:20px;
  }

  .header-search,
  .header-menu{
    display:none; /* already used */
  }

  /* HERO */
  .hero-slider,
  .slide img{
    height:180px !important;
  }

  .hero-overlay h1{
    font-size:22px;
  }

  .hero-overlay p{
    font-size:13px;
  }

  .hero-btn{
    padding:8px 20px;
    font-size:14px;
  }

  /* SECTION PADDING */
  .products{
    padding:18px 14px;
    gap:18px;
  }

  /* PRODUCT CARD */
  .product{
    padding:14px;
    border-radius:14px;
  }

  .product h3{
    font-size:14px;
  }

  .product p{
    font-size:14px;
  }

  /* PRODUCT IMAGE */
  .product img{
    padding:8px;
  }

  /* BUTTONS */
  .add-cart-btn,
  button{
    font-size:14px;
    padding:10px 18px;
  }

  /* FORMS (ALL PAGES) */
  input,
  textarea,
  select{
    width:100%;
    padding:12px;
    border-radius:6px;
  }

  /* CART PAGE */
  .cart-item{
    flex-direction:column;
    align-items:flex-start;
  }

  .cart-item img{
    width:100%;
    height:160px;
  }

  .cart-summary{
    max-width:100%;
    margin-left:0;
  }

  /* QTY */
  .qty-box{
    gap:10px;
  }

  /* ACTION BUTTONS */
  .cart-actions{
    flex-direction:column;
  }

  .cart-actions a{
    width:100%;
  }
}

/* -------------------------
   TABLET (iPad)
------------------------- */
@media(min-width:769px) and (max-width:1024px){

  .products{
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    padding:24px;
  }

  .hero-slider,
  .slide img{
    height:220px !important;
  }

  .hero-overlay h1{
    font-size:26px;
  }
}

/* =========================
   📱 MOBILE CATEGORY BAR
========================= */

.mobile-category-bar{
  display:none;
}

@media(max-width:768px){

  .mobile-category-bar{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    padding:12px 14px;
    background:#fff;
    box-shadow:0 4px 12px rgba(0,0,0,.08);
  }

  .mobile-category-bar a{
    text-align:center;
    padding:10px 0;
    border-radius:20px;
    background:#f7f7f7;
    font-weight:600;
    color:#7b112c;
  }
}

/* =========================
   📱 HAMBURGER MENU
========================= */

.hamburger{
  display:none;
  font-size:24px;
  cursor:pointer;
}

/* MOBILE MENU PANEL */
.mobile-menu{
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:260px;
  height:100%;
  background:#fff;
  padding:20px;
  box-shadow:4px 0 18px rgba(0,0,0,.15);
  z-index:2000;
}

.mobile-menu a{
  display:block;
  padding:12px 0;
  font-size:15px;
  font-weight:500;
  border-bottom:1px solid #eee;
  color:#111;
}

.mobile-menu .logout{
  color:#999;
}

/* MOBILE ONLY */
@media(max-width:768px){

  .hamburger{
    display:block;
  }

  .header-menu,
  .header-search{
    display:none;
  }
}

/* =========================
   📱 PRODUCT PAGE – MOBILE ONLY
   (Desktop unchanged)
========================= */

@media(max-width:768px){

  /* PRODUCT PAGE LAYOUT */
  .product-page{
    grid-template-columns:1fr;
    gap:20px;
    padding:20px 14px;
  }

  /* PRODUCT IMAGE */
  .product-gallery img{
    width:100%;
    max-height:320px;
    object-fit:contain;
    background:#fff;
    border-radius:12px;
    padding:10px;
  }

  /* PRODUCT INFO */
  .product-info h1{
    font-size:20px;
    line-height:1.4;
  }

  .product-info .price{
    font-size:20px;
    margin:10px 0;
  }

  .product-info .desc{
    font-size:14px;
    line-height:1.7;
  }

  /* SIZE BUTTONS */
  .sizes{
    flex-wrap:wrap;
    gap:10px;
  }

  .size-btn{
    padding:10px 16px;
    font-size:14px;
  }

  /* QTY INPUT */
  .qty-box{
    gap:12px;
    margin-top:6px;
  }

  .qty-box input{
    width:60px;
    font-size:16px;
  }

  /* ADD TO CART BUTTON */
  .product-info button,
  .product-info .btn-primary{
    width:100%;
    padding:14px;
    font-size:15px;
    border-radius:30px;
  }
}

/* =========================
   📱 STICKY ADD TO CART BAR
========================= */

.sticky-cart-bar{
  display:none;
}

@media(max-width:768px){

  .sticky-cart-bar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    background:#fff;
    padding:12px 16px;
    box-shadow:0 -6px 18px rgba(0,0,0,.12);
    z-index:1500;
  }

  .sticky-price{
    font-size:18px;
    font-weight:700;
    color:#7b112c;
  }

  .sticky-cart-btn{
    background:#7b112c;
    color:#fff;
    border:none;
    padding:12px 26px;
    border-radius:30px;
    font-size:15px;
    cursor:pointer;
  }

  body{
    padding-bottom:80px;
  }
}

/* SIZE & QTY SAME LOOK */
.size-box select,
.qty-box select{
  width:100%;
  padding:10px;
  border:1px solid #ddd;
  border-radius:6px;
  font-size:14px;
  background:#fff;
}

/* STOCK STATUS */
.stock-text{
  margin:10px 0;
  font-size:14px;
  font-weight:600;
}
.stock-text.low-stock{
  color:#d35400;
}
.stock-text.out-stock{
  color:#c0392b;
}

/* ORDER STATUS BADGES */
.order-status{
  display:inline-block;
  padding:6px 14px;
  border-radius:20px;
  font-size:12px;
  font-weight:600;
  margin-top:6px;
}

/* COLORS */
.status-placed{
  background:#fff3cd;
  color:#856404;
}

.status-shipped{
  background:#e8f0fe;
  color:#1a73e8;
}

.status-delivered{
  background:#e6f4ea;
  color:#137333;
}

.status-cancelled{
  background:#fdecea;
  color:#b71c1c;
}

/* =========================
   CHECKOUT – ORDER SUMMARY
========================= */

.order-summary{
  background:#fff;
  padding:22px;
  border-radius:18px;
  box-shadow:0 10px 26px rgba(0,0,0,.1);
  height:fit-content;
}

.order-summary h3{
  font-size:18px;
  margin-bottom:16px;
  color:#111;
}

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

.summary-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.summary-left{
  display:flex;
  gap:6px;
  font-size:14px;
  color:#555;
}

.summary-size{
  font-weight:600;
}

.summary-qty{
  color:#888;
}

.summary-price{
  font-weight:600;
  color:#111;
}

.summary-divider{
  border-top:1px dashed #ddd;
  margin:16px 0;
}

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

.summary-row.total{
  font-size:18px;
  font-weight:700;
  color:#7b112c;
}

.summary-note{
  margin-top:14px;
  font-size:13px;
  color:#777;
  background:#f7f7f7;
  padding:10px;
  border-radius:10px;
  text-align:center;
}

/* 📱 MOBILE */
@media(max-width:768px){
  .order-summary{
    margin-top:20px;
  }
}

/* ===== LUXURY ORDER SUMMARY ===== */
.luxury-summary{
  position:sticky;
  top:90px;
  background:#fff;
  padding:26px;
  border-radius:22px;
  box-shadow:0 14px 40px rgba(0,0,0,.12);
}

.luxury-summary h3{
  font-size:20px;
  margin-bottom:18px;
  color:#111;
}

.summary-line{
  display:flex;
  justify-content:space-between;
  margin-bottom:14px;
  font-size:15px;
}

.summary-divider{
  border-top:1px dashed #ddd;
  margin:18px 0;
}

.grand-total{
  font-size:20px;
  font-weight:700;
  color:#7b112c;
}

.summary-note{
  font-size:12px;
  color:#777;
  margin:10px 0 18px;
}

.cart-actions a{
  transition:.3s;
}

.cart-actions a:hover{
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(0,0,0,.15);
}

/* MOBILE */
@media(max-width:768px){
  .luxury-summary{
    position:static;
    margin-top:20px;
  }
}

/* ===== CLEAN ORDER SUMMARY ===== */
.clean-summary{
  background:#fff;
  border-radius:14px;
  padding:22px;
  border:1px solid #eee;
}

.clean-summary h3{
  font-size:18px;
  margin-bottom:18px;
  font-weight:600;
}

.sum-row{
  display:flex;
  justify-content:space-between;
  margin-bottom:14px;
  font-size:14px;
  color:#333;
}

.sum-row.total{
  font-size:17px;
  font-weight:700;
  color:#7b112c;
}

.free{
  color:#2ecc71;
  font-weight:600;
}

.clean-summary hr{
  border:none;
  border-top:1px solid #eee;
  margin:14px 0;
}

.checkout-btn{
  display:block;
  margin-top:18px;
  background:#7b112c;
  color:#fff;
  text-align:center;
  padding:12px;
  border-radius:30px;
  text-decoration:none;
  font-weight:500;
}

.checkout-btn:hover{
  opacity:.92;
}

.continue-link{
  display:block;
  margin-top:10px;
  text-align:center;
  font-size:13px;
  color:#7b112c;
  text-decoration:none;
}

/* ===== SIMPLE ORDER SUMMARY ===== */
.simple-summary{
  background:#fff;
  border:1px solid #ddd;
  padding:16px;
  border-radius:6px;
}

.simple-summary h3{
  font-size:16px;
  margin-bottom:14px;
  font-weight:600;
}

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

.simple-summary .row.total{
  font-weight:700;
}

.simple-summary hr{
  border:none;
  border-top:1px solid #ddd;
  margin:12px 0;
}

.checkout-btn{
  display:block;
  margin-top:14px;
  background:#7b112c;
  color:#fff;
  text-align:center;
  padding:10px;
  border-radius:4px;
  text-decoration:none;
}

/* SUMMARY BUTTONS */
.summary-buttons{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:14px;
  align-items:flex-start;   /* 👈 LEFT align */
}
}

.checkout-btn{
  background:#7b112c;
  color:#fff;
  text-align:center;
  padding:12px;
  text-decoration:none;
  border-radius:4px;
  font-weight:500;
}

.continue-btn{
  background:#fff;
  border:1px solid #7b112c;
  color:#7b112c;
  text-align:center;
  padding:12px;
  text-decoration:none;
  border-radius:4px;
  font-weight:500;
}

/* ===== PREMIUM ORDER SUMMARY ===== */
.premium-summary{
  background:#fff;
  border-radius:16px;
  padding:22px;
  border:1px solid #eee;
}

.premium-summary h3{
  font-size:18px;
  font-weight:600;
  margin-bottom:18px;
  color:#111;
}

.sum-row{
  display:flex;
  justify-content:space-between;
  font-size:15px;
  margin-bottom:14px;
  color:#333;
}

.sum-row.total{
  font-size:18px;
  font-weight:700;
  color:#7b112c;
}

.free-text{
  color:#2ecc71;
  font-weight:600;
}

.divider{
  height:1px;
  background:linear-gradient(to right,#eee,#7b112c,#eee);
  margin:18px 0;
}

/* BUTTONS */
.summary-buttons{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:18px;
  align-items:flex-start;
}

.btn-checkout{
  background:#7b112c;
  color:#fff;
  padding:12px 22px;
  border-radius:30px;
  text-decoration:none;
  font-weight:500;
  box-shadow:0 6px 16px rgba(123,17,44,.25);
  transition:.3s;
}

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

.btn-continue{
  color:#7b112c;
  text-decoration:none;
  font-size:14px;
  padding-left:6px;
}

.site-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 18px;
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky;
  top:0;
  z-index:999;
}

.header-menu a,
.menu-link{
  margin:0 10px;
  text-decoration:none;
  color:#333;
}

.hamburger{
  display:none;
  font-size:22px;
  cursor:pointer;
}

.icon-link{
  position:relative;
  margin-left:12px;
  text-decoration:none;
}

.badge{
  position:absolute;
  top:-6px;
  right:-8px;
  background:#7b112c;
  color:#fff;
  font-size:11px;
  padding:2px 6px;
  border-radius:50%;
}

.mobile-menu{
  display:none;
  background:#fff;
  border-top:1px solid #eee;
}
.mobile-menu.open{
  display:block;
}
.mobile-menu a{
  display:block;
  padding:12px;
  border-bottom:1px solid #eee;
}

@media(max-width:768px){
  .header-menu{display:none;}
  .hamburger{display:block;}
}

/* ===== PREMIUM HEADER ===== */
.vw-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 22px;
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky;
  top:0;
  z-index:999;
}

.vw-left{
  display:flex;
  align-items:center;
  gap:14px;
}

.vw-logo{
  font-size:22px;
  font-weight:700;
  color:#7b112c;
  text-decoration:none;
}

.vw-menu a{
  margin:0 12px;
  text-decoration:none;
  color:#333;
  font-weight:500;
}

.vw-menu a:hover{
  color:#7b112c;
}

.vw-right{
  display:flex;
  align-items:center;
  gap:14px;
}

.vw-search input{
  padding:8px 14px;
  border:1px solid #ddd;
  border-radius:20px;
  width:200px;
}

.vw-icon{
  position:relative;
  font-size:18px;
  text-decoration:none;
}

.vw-badge{
  position:absolute;
  top:-6px;
  right:-8px;
  background:#7b112c;
  color:#fff;
  font-size:11px;
  padding:2px 6px;
  border-radius:50%;
}

.vw-link{
  text-decoration:none;
  font-weight:500;
  color:#333;
}

.vw-hamburger{
  display:none;
  font-size:22px;
  cursor:pointer;
}

/* MOBILE MENU */
.vw-mobile-menu{
  display:none;
  background:#fff;
  border-top:1px solid #eee;
}

.vw-mobile-menu.open{
  display:block;
}

.vw-mobile-menu a{
  display:block;
  padding:14px;
  border-bottom:1px solid #eee;
  text-decoration:none;
  color:#333;
}

/* RESPONSIVE */
@media(max-width:900px){
  .vw-menu{display:none;}
  .vw-hamburger{display:block;}
  .vw-search input{width:140px;}
}

/* ===== PREMIUM FOOTER ===== */
.vw-footer{
  background:#111;
  color:#ccc;
  margin-top:60px;
  font-size:14px;
}

.vw-footer-container{
  max-width:1200px;
  margin:auto;
  padding:50px 20px;
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.5fr;
  gap:30px;
}

.vw-footer-logo{
  color:#fff;
  font-size:22px;
  margin-bottom:10px;
}

.vw-footer-text{
  color:#aaa;
  line-height:1.6;
}

.vw-footer-col h4{
  color:#fff;
  margin-bottom:14px;
  font-size:16px;
}

.vw-footer-col a{
  display:block;
  color:#aaa;
  text-decoration:none;
  margin-bottom:8px;
}

.vw-footer-col a:hover{
  color:#fff;
}

.vw-footer-col p{
  margin-bottom:8px;
  color:#aaa;
}

.vw-footer-bottom{
  border-top:1px solid #222;
  text-align:center;
  padding:16px;
  color:#777;
  font-size:13px;
}

/* RESPONSIVE */
@media(max-width:900px){
  .vw-footer-container{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .vw-footer-container{
    grid-template-columns:1fr;
  }
}

/* ===== SIGN IN / ACCOUNT BUTTON ===== */
.vw-auth-btn{
  margin-left:12px;
  padding:7px 18px;
  border-radius:20px;
  font-size:14px;
  text-decoration:none;
  transition:.3s;
  white-space:nowrap;
}

/* Sign In */
.vw-signin-btn{
  background:#7b112c;
  color:#fff;
}
.vw-signin-btn:hover{
  background:#5f0d22;
}

/* My Account */
.vw-account-btn{
  border:1px solid #7b112c;
  color:#7b112c;
}
.vw-account-btn:hover{
  background:#7b112c;
  color:#fff;
}

/* ==================================================
   🔧 FINAL MOBILE MENU + HEADER FIX (DO NOT REMOVE)
================================================== */

/* HEADER ALWAYS ON TOP */
.site-header{
  position:sticky !important;
  top:0;
  z-index:99999 !important;
}

/* HAMBURGER FORCE SHOW ON MOBILE */
@media(max-width:768px){
  .hamburger{
    display:block !important;
    font-size:26px;
    cursor:pointer;
  }
}

/* MOBILE MENU – SINGLE SOURCE OF TRUTH */
.mobile-menu{
  display:block !important;              /* override display:none */
  position:fixed !important;
  top:0;
  left:-100%;
  width:280px;
  height:100vh;
  background:#fff;
  z-index:99998 !important;
  transition:left .35s ease;
  overflow-y:auto;
  box-shadow:4px 0 18px rgba(0,0,0,.15);
}

/* WHEN MENU OPENS */
.mobile-menu.active{
  left:0 !important;
}

/* HERO SLIDER SHOULD STAY BELOW HEADER */
.hero-slider{
  position:relative;
  z-index:1 !important;
}
.hero-overlay{
  z-index:2 !important;
}

/* PREVENT HERO FROM BLOCKING CLICKS */
.slide,
.hero-overlay{
  pointer-events:none;
}
.hero-overlay a{
  pointer-events:auto;
}

/* ========== MOBILE HAMBURGER ========== */
.hamburger{
  display:none;
  font-size:26px;
  cursor:pointer;
}

/* ========== MOBILE MENU ========== */
.mobile-menu{
  position:fixed;
  top:0;
  left:-100%;
  width:280px;
  height:100vh;
  background:#fff;
  z-index:20001;
  transition:.35s ease;
  overflow-y:auto;
  padding:20px;
}

.mobile-menu.active{ left:0 }

.menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.5);
  display:none;
  z-index:20000;
}

.menu-overlay.active{ display:block }

.mobile-menu a{
  display:block;
  padding:14px 0;
  font-weight:600;
  color:#282c3f;
  text-decoration:none;
  border-bottom:1px solid #eee;
}

/* MOBILE ONLY */
@media(max-width:900px){
  .header-menu{display:none}
  .hamburger{display:block}
}

/* HAMBURGER */
.hamburger{
  display:none;
  font-size:26px;
  cursor:pointer;
}

/* MOBILE MENU */
.mobile-menu{
  position:fixed;
  top:0; left:-100%;
  width:300px; height:100vh;
  background:#fff;
  z-index:20001;
  overflow-y:auto;
  padding:16px;
  transition:.35s ease;
}
.mobile-menu.active{ left:0; }

.menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.6);
  display:none;
  z-index:20000;
}
.menu-overlay.active{ display:block; }

/* ACCORDION */
.accordion{ border-bottom:1px solid #eee; }
.acc-head{
  padding:12px 0;
  font-weight:700;
  display:flex;
  justify-content:space-between;
  cursor:pointer;
}
.acc-body{
  max-height:0;
  overflow:hidden;
  transition:.35s;
}
.acc-body a{
  display:block;
  padding:8px 20px;
  font-size:14px;
  color:#555;
  text-decoration:none;
}

/* MOBILE ONLY */
@media(max-width:900px){
  .header-menu{display:none}
  .hamburger{display:block}
}

@media(max-width:900px){

  .mobile-menu form input{
    width:100%;
    padding:10px;
    border:1px solid #ddd;
    border-radius:8px;
    margin-bottom:12px;
    font-size:14px;
  }

}

/* 🔥 MYNTRA STYLE MOBILE MENU */
.mobile-menu{
  font-family: "Segoe UI", Arial, sans-serif;
}

.mobile-menu a{
  font-size:15px;
  color:#222;
}

.mobile-menu strong{
  display:block;
  margin:14px 0 6px;
  font-size:13px;
  color:#7b112c;
  font-weight:800;
}

/* Accordion Head */
.acc-head{
  padding:14px 0;
  font-size:15px;
  font-weight:800;
  color:#111;
}

.acc-head span{
  font-size:18px;
}

/* Sub links */
.acc-body a{
  padding:8px 0 8px 18px;
  font-size:14px;
  color:#444;
}

/* Divider */
.mobile-menu hr{
  border:none;
  border-bottom:1px solid #eee;
  margin:12px 0;
}

/* =========================
   MYNTRA STYLE – MOBILE MENU
========================= */
@media(max-width:900px){

  .mobile-menu{
    background:#f5f5f6;
    padding:14px;
  }

  .mobile-menu a{
    padding:12px 4px;
    font-size:15px;
    color:#282c3f;
  }

  .accordion{
    background:#fff;
    margin-bottom:10px;
    border-radius:6px;
    padding:0 12px;
  }

  .acc-head{
    font-size:15px;
    font-weight:800;
    color:#282c3f;
    padding:14px 0;
  }

  .acc-head span{
    font-size:18px;
    color:#7b112c;
  }

  .acc-body{
    padding-bottom:8px;
  }

  .acc-body strong{
    display:block;
    font-size:12px;
    color:#7b112c;
    margin:10px 0 6px;
    text-transform:uppercase;
    letter-spacing:.6px;
  }

  .acc-body a{
    font-size:14px;
    padding:8px 0 8px 14px;
    color:#3e4152;
    border-left:2px solid #eee;
    margin-left:6px;
  }

  .acc-body a:hover{
    color:#7b112c;
    border-color:#7b112c;
  }

  /* mobile search */
  .mobile-menu input[type="text"]{
    border:1px solid #ddd;
    border-radius:6px;
    font-size:14px;
    margin-bottom:14px;
    background:#fff;
  }
}

/* ==================================================
   🔥 FINAL SMOOTH MOBILE ACCORDION (MYNTRA FEEL)
   SAFE PATCH – DESKTOP UNAFFECTED
================================================== */

/* ACCORDION RESET */
.accordion{
  border-bottom:1px solid #eee;
}

/* HEAD */
.acc-head{
  padding:14px 0;
  font-size:15px;
  font-weight:800;
  color:#282c3f;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
}

/* + ICON */
.acc-head span{
  font-size:18px;
  color:#7b112c;
  transition:transform .35s ease;
}

/* BODY CLOSED */
.acc-body{
  max-height:0;
  overflow:hidden;
  opacity:0;
  transition:
    max-height .45s ease,
    opacity .35s ease;
}

/* BODY OPEN */
.accordion.open .acc-body{
  opacity:1;
}

/* ICON ROTATE */
.accordion.open .acc-head span{
  transform:rotate(45deg); /* + → × */
}

/* SECTION TITLE */
.acc-body strong{
  display:block;
  margin:12px 0 6px;
  font-size:12px;
  font-weight:800;
  color:#7b112c;
  text-transform:uppercase;
  letter-spacing:.6px;
}

/* LINKS */
.acc-body a{
  display:block;
  font-size:14px;
  color:#3e4152;
  padding:8px 0 8px 16px;
  border-left:2px solid #eee;
  margin-left:6px;
  transition:.25s;
}

.acc-body a:hover{
  color:#7b112c;
  border-color:#7b112c;
}

/* MOBILE ONLY */
@media(max-width:900px){
  .accordion{
    background:#fff;
    border-radius:6px;
    padding:0 12px;
    margin-bottom:10px;
  }
}

/* ===== ZOOM LENS ===== */
#zoomBox{
  position:relative;
  overflow:hidden;
}

#lens{
  position:absolute;
  width:140px;
  height:140px;
  border:2px solid #7b112c;
  background-repeat:no-repeat;
  background-size:200%;
  display:none;
  cursor:zoom-in;
}

/* Disable zoom on mobile */
@media(max-width:768px){
  #lens{display:none!important;}
}

/* ===== ZOOM LENS ===== */
.zoom-lens{
  position:absolute;
  width:120px;
  height:120px;
  border:2px solid #7b112c;
  background:rgba(255,255,255,.35);
  display:none;
  pointer-events:none;
}

.zoom-result{
  position:absolute;
  top:0;
  left:105%;
  width:420px;
  height:420px;
  border-radius:12px;
  background-repeat:no-repeat;
  background-size:200%;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
  display:none;
}

@media(max-width:768px){
  .zoom-lens,.zoom-result{display:none!important;}
}

/* ARROWS */
.img-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,.55);
  color:#fff;
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:20px;
  z-index:5;
}
.img-arrow.left{left:10px}
.img-arrow.right{right:10px}

@media(max-width:768px){
  .img-arrow{
    width:32px;
    height:32px;
    font-size:18px;
  }
}

/* ===== HERO LOGIN REGISTER FIX ===== */
.hero-overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  z-index:10;
}

.hero-auth{
  margin-top:20px;
  display:flex;
  gap:14px;
  z-index:11;
}

.hero-auth a{
  padding:12px 26px;
  border-radius:30px;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 6px 20px rgba(0,0,0,.25);
}

.hero-login{
  background:#fff;
  color:#7b112c;
}

.hero-register{
  background:#7b112c;
  color:#fff;
}

.vw-link{
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  color:#7b112c;
  margin-left:12px;
}
.vw-link.register{
  padding:6px 14px;
  border-radius:20px;
  background:#7b112c;
  color:#fff;
}
.vw-link.register:hover{
  background:#5e0e22;
}

.vw-auth{
  margin-left:12px;
  font-size:14px;
  font-weight:600;
  color:#7b112c;
  text-decoration:none;
}
.vw-auth-primary{
  background:#7b112c;
  color:#fff;
  padding:6px 14px;
  border-radius:20px;
}
.vw-auth-primary:hover{
  background:#5e0e22;
}

/* 🔥 LOGIN / REGISTER BUTTON POSITION FIX (DESKTOP + MOBILE) */

/* Right header container */
.vw-right{
  display: flex;
  align-items: center;
  gap: 4px !important;   /* ⬅️ controls distance between all right items */
}

/* Login / Register buttons */
.vw-right .vw-link{
  margin: 0 !important;
  padding: 6px 10px;
  font-size: 14px;
  white-space: nowrap;
}

/* Cart & wishlist icons also closer */
.vw-right .vw-icon{
  margin: 0 !important;
}

/* 📱 MOBILE */
@media(max-width:768px){
  .vw-right{
    gap: 2px !important;   /* even tighter on mobile */
  }

  .vw-right .vw-link{
    padding: 6px 8px;
    font-size: 13px;
  }
}
