        /* ============================================================
   AMOON PERFUMES — Complete Redesign (Bellavita-Inspired)
   Typography: Cormorant Garamond + DM Sans
   Theme: Clean white, warm cream, deep charcoal, burnt orange
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600;9..40,700&display=swap');

:root {
  --white:        #ffffff;
  --cream:        #faf8f5;
  --cream2:       #f4f1ec;
  --bg:           #f7f5f2;
  --bg2:          #fafaf9;
  --border:       #e8e4de;
  --border2:      #d0cac0;
  --text:         #1a1814;
  --text2:        #5a534a;
  --text3:        #9a9088;
  --orange:       #c8602a;
  --orange2:      #d97040;
  --orange-light: #fef3ec;
  --teal:         #2a7c5e;
  --gold:         #b89550;
  --red:          #c0392b;
  --font:         'DM Sans', sans-serif;
  --font2:        'Cormorant Garamond', serif;
  --nav-h:        110px;
  --shadow:       0 2px 16px rgba(26,24,20,0.07);
  --shadow2:      0 8px 40px rgba(26,24,20,0.12);
  --tr:           all 0.25s ease;
  --radius:       3px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--white);color:var(--text);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit;transition:var(--tr)}
img{max-width:100%;display:block}
button{cursor:pointer;font-family:var(--font)}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:#f1ede8}
::-webkit-scrollbar-thumb{background:#c8b89a;border-radius:3px}

/* ANNOUNCEMENT BAR */
.ann-bar{background:var(--text);color:rgba(255,255,255,.78);text-align:center;padding:9px 0;font-size:11.5px;letter-spacing:.06em;overflow:hidden;position:relative;z-index:200}
.ann-bar strong{color:#e8c060}
.ann-track{display:inline-flex;gap:60px;white-space:nowrap;animation:annScroll 32s linear infinite}
@keyframes annScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- NAVBAR: remove position:relative that causes overlap ---- */
#mainNav{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1000;transition:box-shadow .3s}
#mainNav.scrolled{box-shadow:0 2px 24px rgba(26,24,20,.1)}
.nav-top{display:flex;align-items:center;justify-content:space-between;padding:16px 0 12px;gap:16px}
.nav-search{display:flex;align-items:center;gap:10px;border-bottom:1.5px solid var(--text);padding-bottom:5px;width:230px;flex-shrink:0;cursor:pointer}
.nav-search input{border:none;outline:none;font-size:13px;color:var(--text2);background:transparent;width:100%;font-family:var(--font);cursor:pointer}
.nav-search input::placeholder{color:#b0a898}
.nav-search i{font-size:15px;color:var(--text2);flex-shrink:0}
.nav-logo{text-align:center;flex:1}
.nav-icons{display:flex;align-items:center;gap:4px;flex-shrink:0}
.nav-icons a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text);border-radius:50%;transition:var(--tr);position:relative}
.nav-icons a:hover{background:var(--cream2);color:var(--orange)}
.cart-badge{position:absolute;top:3px;right:3px;background:var(--orange);color:white;font-size:9px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.nav-links{border-top:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}
.nav-links::-webkit-scrollbar{display:none}
.nav-links a{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text);padding:13px 15px;white-space:nowrap;position:relative;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--orange)}
.nav-links a.active::after{content:'';position:absolute;bottom:0;left:20px;right:20px;height:2px;background:var(--orange);border-radius:2px}
.nav-links a.nav-deals{color:var(--orange)}
.nav-links .nav-dropdown{position:relative}
.nav-links .nav-dropdown-menu{position:absolute;top:calc(100% + 1px);left:0;background:white;border:1px solid var(--border);border-top:2px solid var(--orange);min-width:200px;box-shadow:var(--shadow2);display:none;z-index:1050;padding:8px 0}
.nav-links .nav-dropdown:hover .nav-dropdown-menu{display:block}
.nav-links .nav-dropdown-menu a{display:block;padding:10px 20px;font-size:12px;letter-spacing:.06em;color:var(--text2)}
.nav-links .nav-dropdown-menu a::after{display:none}
.nav-links .nav-dropdown-menu a:hover{background:var(--orange-light);color:var(--orange)}
.nav-toggle{display:none;background:none;border:none;font-size:23px;color:var(--text);padding:4px}

/* PAGE LOADER */
.page-loader{position:fixed;inset:0;background:white;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;transition:opacity .45s,visibility .45s}
.page-loader.hide{opacity:0;visibility:hidden}
.loader-logo{font-family:var(--font2);font-size:28px;font-weight:600;color:var(--text);letter-spacing:.2em}
.loader-line{width:120px;height:1.5px;background:var(--border);border-radius:2px;overflow:hidden}
.loader-line::after{content:'';display:block;width:40%;height:100%;background:var(--orange);animation:loaderAnim .9s ease infinite}
@keyframes loaderAnim{to{margin-left:150%}}

/* TOAST */
.toast-container{position:fixed;bottom:24px;right:24px;z-index:3000;display:flex;flex-direction:column;gap:8px}
.toast-item{background:white;border:1px solid var(--border);border-left:3px solid var(--orange);border-radius:4px;padding:12px 18px;font-size:13px;color:var(--text);box-shadow:var(--shadow2);display:flex;align-items:center;gap:10px;max-width:300px;animation:toastIn .3s ease}
.toast-item.error{border-left-color:var(--red)}
.toast-item i{color:var(--orange);flex-shrink:0;font-size:15px}
.toast-item.error i{color:var(--red)}
@keyframes toastIn{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}

/* SEARCH OVERLAY */
.search-overlay{position:fixed;inset:0;background:rgba(26,24,20,.5);z-index:2000;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;backdrop-filter:blur(3px)}
.search-overlay.active{opacity:1;visibility:visible}
.search-box{background:white;max-width:680px;margin:80px auto 0;box-shadow:var(--shadow2);border:1px solid var(--border)}
.search-box-inner{display:flex;align-items:center;padding:18px 24px;gap:14px;border-bottom:1px solid var(--border)}
.search-box-inner i{font-size:18px;color:var(--text3)}
.search-box-inner input{flex:1;border:none;outline:none;font-size:17px;color:var(--text);font-family:var(--font2);background:transparent}
.search-box-inner input::placeholder{color:#bbb;font-style:italic}
.search-close-btn{background:none;border:none;font-size:18px;color:var(--text3);padding:4px;transition:color .2s}
.search-close-btn:hover{color:var(--text)}
#searchResults{max-height:360px;overflow-y:auto}
.search-result-item{display:flex;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid var(--border);transition:background .15s}
.search-result-item:hover{background:var(--cream)}
.search-result-item img{width:52px;height:52px;object-fit:cover;border:1px solid var(--border)}
.search-result-item .name{font-size:13px;font-weight:500;color:var(--text)}
.search-result-item .price{font-size:13px;color:var(--orange);font-weight:600;margin-top:2px}

/* BUTTONS */
.btn-orange{display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:white;border:none;padding:13px 28px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:var(--tr);font-family:var(--font);border-radius:var(--radius);text-decoration:none}
.btn-orange:hover{background:#a84e20;color:white;transform:translateY(-1px);box-shadow:0 4px 16px rgba(200,96,42,.35)}
.btn-outline{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text);border:1.5px solid var(--text);padding:12px 26px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:var(--tr);font-family:var(--font);border-radius:var(--radius);text-decoration:none}
.btn-outline:hover{background:var(--text);color:white}
.btn-outline-orange{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--orange);border:1.5px solid var(--orange);padding:10px 22px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--tr);font-family:var(--font);border-radius:var(--radius);text-decoration:none}
.btn-outline-orange:hover{background:var(--orange);color:white}

/* HERO */
.hero-banner{background:var(--cream);padding:64px 0 52px;overflow:hidden;position:relative}
.hero-banner::before{content:'';position:absolute;top:0;right:0;width:45%;height:100%;background:linear-gradient(135deg,transparent 0%,rgba(200,96,42,.04) 100%);pointer-events:none}
.hero-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.hero-title{font-family:var(--font2);font-size:clamp(2.8rem,5.5vw,4.4rem);font-weight:600;color:var(--text);line-height:1.1;margin-bottom:18px}
.hero-title em{font-style:italic;color:var(--orange)}
.hero-sub{font-size:14.5px;color:var(--text2);line-height:1.75;max-width:420px;margin-bottom:28px}
.hero-img img{max-height:440px;margin:0 auto;filter:drop-shadow(0 20px 40px rgba(26,24,20,.15));animation:heroFloat 4s ease-in-out infinite}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* USP STRIP */
.usp-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:white}
.usp-inner{display:flex;overflow-x:auto;scrollbar-width:none}
.usp-inner::-webkit-scrollbar{display:none}
.usp-item{flex:1;min-width:160px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 14px;border-right:1px solid var(--border);gap:7px;transition:background .2s}
.usp-item:hover{background:var(--cream)}
.usp-item:last-child{border-right:none}
.usp-item i{font-size:22px;color:var(--orange)}
.usp-item .usp-title{font-size:11.5px;font-weight:700;color:var(--text);letter-spacing:.06em;text-transform:uppercase}
.usp-item .usp-sub{font-size:11px;color:var(--text3);line-height:1.4}

/* SECTIONS */
.sec{padding:52px 0}
.sec-sm{padding:30px 0}
.sec-bg{background:var(--cream)}
.sec-head{text-align:center;margin-bottom:36px}
.sec-head h2{font-family:var(--font2);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:600;color:var(--text);margin-bottom:8px}
.sec-head p{font-size:14px;color:var(--text3);max-width:400px;margin:0 auto}

/* FILTER BAR */
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border);flex-wrap:nowrap}
.filter-sort-wrap{display:flex;align-items:center;gap:12px;min-width:0;flex:1}
/* Cat strip — takes all available space, scrolls if needed */
.filter-sort-wrap .cat-strip{flex:1;min-width:0;max-width:100%}
.filter-btn{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border2);background:white;padding:9px 18px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text);border-radius:var(--radius);transition:var(--tr);cursor:pointer}
.filter-btn:hover{border-color:var(--text)}
.sort-btn{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border2);background:white;padding:9px 18px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text);border-radius:var(--radius);font-family:var(--font);transition:var(--tr);cursor:pointer;white-space:nowrap}
.sort-btn:hover{border-color:var(--text)}
.product-count{font-size:12px;color:var(--text3);font-weight:500}

/* ============================================================
   PRODUCT GRID & CARDS — Bellavita Exact Style
   ============================================================ */
.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
/* Card — no overflow:hidden on card itself so actions show */
.prod-card{background:white;cursor:pointer;border:1px solid var(--border);border-radius:4px;transition:box-shadow .25s;display:flex;flex-direction:column}
.prod-card:hover{box-shadow:0 6px 28px rgba(26,24,20,.1)}

/* Image wrapper — overflow hidden only here */
.prod-img{position:relative;background:#f2f2f2;aspect-ratio:1/1.15;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:4px 4px 0 0}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;display:block}
.prod-card:hover .prod-img img{transform:scale(1.04)}

/* Badges */
.badge-bestseller{position:absolute;top:10px;left:10px;background:var(--orange);color:white;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:2px;z-index:2}
.badge-new{background:var(--teal)}
.badge-featured{background:#6c5ce7}
.badge-off{position:absolute;bottom:10px;left:10px;background:var(--teal);color:white;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:2px;z-index:2}

/* Wishlist heart — top right */
.prod-wish{position:absolute;top:10px;right:10px;width:34px;height:34px;background:white;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--text2);transition:var(--tr);z-index:2;cursor:pointer}
.prod-wish:hover,.prod-wish.active{color:var(--red);border-color:var(--red)}

/* ADD TO BAG bar — slides up from bottom of IMAGE on hover */
.prod-actions{
  position:absolute;
  bottom:0;left:0;right:0;
  display:flex;
  align-items:stretch;
  gap:0;
  transform:translateY(100%);
  transition:transform .28s ease;
  z-index:4;
  height:48px;
}
.prod-card:hover .prod-actions{transform:translateY(0)}
.btn-add-cart{
  flex:1;
  background:#111;
  color:white;
  border:none;
  padding:0 10px;
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-family:var(--font);
  transition:background .2s;
  cursor:pointer;
  height:100%;
}
.btn-add-cart:hover{background:var(--orange)}
.btn-add-cart:disabled{opacity:.7;cursor:not-allowed}
.prod-quick-view{
  width:52px;
  background:var(--orange);
  color:white;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:17px;
  transition:background .2s;
  text-decoration:none;
  flex-shrink:0;
  height:100%;
}
.prod-quick-view:hover{background:#a84e20;color:white}

/* Product body below image */
.prod-body{padding:14px 14px 18px;display:flex;flex-direction:column;flex:1}
.prod-cat{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--text3);margin-bottom:5px}
.prod-name{font-size:14px;font-weight:500;color:var(--text);margin-bottom:5px;line-height:1.4}
.prod-name a{color:inherit}
.prod-name a:hover{color:var(--orange)}
/* Volume line (100ml) */
.prod-volume{font-size:12px;color:var(--text3);margin-bottom:7px}
.prod-rating{display:flex;align-items:center;gap:5px;margin-bottom:8px;font-size:12px}
.prod-rating .star{color:#f5a623;font-size:13px}
.prod-rating .score{font-weight:700;color:var(--text)}
.prod-rating .sep{color:var(--border2)}
.prod-rating .verified{color:var(--teal);font-size:12px}
.prod-rating .rev-count{color:var(--text3)}
.prod-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto}
.prod-price .now{font-size:16px;font-weight:700;color:var(--text)}
.prod-price .was{font-size:12.5px;color:var(--text3);text-decoration:line-through}

/* CATEGORY STRIP */
.cat-strip{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.cat-strip::-webkit-scrollbar{display:none}
.cat-chip{flex-shrink:0;border:1.5px solid var(--border2);background:white;color:var(--text);padding:7px 18px;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:100px;cursor:pointer;transition:var(--tr);white-space:nowrap;font-family:var(--font);text-decoration:none;display:inline-block}
.cat-chip:hover,.cat-chip.active{background:var(--text);color:white;border-color:var(--text)}

/* PROMO BAND */
.promo-band{background:var(--text);padding:56px 0;position:relative;overflow:hidden}
.promo-band::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 25% 50%,rgba(200,96,42,.18) 0%,transparent 65%);pointer-events:none}
.promo-band-tag{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--orange);margin-bottom:12px;font-weight:600}
.promo-band-title{font-family:var(--font2);font-size:clamp(2rem,4vw,3rem);font-weight:600;color:white;margin-bottom:14px;line-height:1.15}
.promo-band-title em{font-style:italic;color:#e8c060}
.promo-band-text{font-size:14px;color:rgba(255,255,255,.52);max-width:380px;line-height:1.85;margin-bottom:28px}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.stat-box{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:22px;text-align:center;border-radius:2px;transition:background .2s}
.stat-box:hover{background:rgba(255,255,255,.08)}
.stat-box .s-num{font-family:var(--font2);font-size:2rem;font-weight:600;color:#e8c060}
.stat-box .s-lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.38);margin-top:4px}

/* INSTAGRAM GRID */
.insta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.insta-item{aspect-ratio:1;overflow:hidden;position:relative;cursor:pointer;background:var(--cream)}
.insta-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.insta-item:hover img{transform:scale(1.07)}
.insta-item .insta-ov{position:absolute;inset:0;background:rgba(26,24,20,.42);display:flex;align-items:center;justify-content:center;font-size:24px;color:white;opacity:0;transition:opacity .3s}
.insta-item:hover .insta-ov{opacity:1}

/* FOOTER */
.footer-usp{background:#161410;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.footer-usp-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}
.footer-usp-item{display:flex;align-items:center;gap:7px;padding:6px 22px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45);border-right:1px solid rgba(255,255,255,.07)}
.footer-usp-item:last-child{border-right:none}
.footer-usp-item i{color:var(--orange);font-size:14px}
.footer-main{background:#111009;color:rgba(255,255,255,.45);padding:52px 0 0;font-size:13px}
.footer-brand-name{font-family:var(--font2);font-size:24px;font-weight:600;color:white;letter-spacing:.1em;margin-bottom:4px}
.footer-brand-tag{font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.footer-desc{font-size:12.5px;color:rgba(255,255,255,.38);line-height:1.85;max-width:240px}
.footer-social{display:flex;gap:8px;margin-top:18px}
.footer-social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.14);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;color:rgba(255,255,255,.42);transition:var(--tr)}
.footer-social a:hover{border-color:var(--orange);background:var(--orange);color:white}
.footer-heading{font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:16px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:9px}
.footer-links a{font-size:12.5px;color:rgba(255,255,255,.36);transition:color .2s}
.footer-links a:hover{color:var(--orange)}
.footer-contact-item{display:flex;gap:10px;margin-bottom:10px;font-size:12.5px;color:rgba(255,255,255,.36);align-items:flex-start}
.footer-contact-item i{color:var(--orange);margin-top:2px;flex-shrink:0}
.footer-newsletter{display:flex;margin-top:14px;border:1px solid rgba(255,255,255,.1);border-radius:2px;overflow:hidden}
.footer-newsletter input{flex:1;background:rgba(255,255,255,.04);border:none;padding:10px 14px;font-size:12px;color:white;outline:none;font-family:var(--font)}
.footer-newsletter input::placeholder{color:rgba(255,255,255,.22)}
.footer-newsletter button{background:var(--orange);border:none;color:white;padding:10px 16px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font);white-space:nowrap;transition:background .2s}
.footer-newsletter button:hover{background:#a84e20}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06);margin-top:40px;padding:16px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;color:rgba(255,255,255,.22)}

/* PAGE TITLE */
.page-title-bar{background:var(--cream);border-bottom:1px solid var(--border);padding:24px 0;text-align:center}
.page-title-bar h1{font-family:var(--font2);font-size:2rem;font-weight:600;color:var(--text)}
.page-title-bar .bc{font-size:12px;color:var(--text3);margin-top:5px}

/* CART TABLE */
.cart-table-head{display:grid;grid-template-columns:3fr 1fr 1.5fr 1fr 0.4fr;background:var(--cream);border:1px solid var(--border);padding:11px 18px;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text3);gap:12px}
.cart-row{display:grid;grid-template-columns:3fr 1fr 1.5fr 1fr 0.4fr;border:1px solid var(--border);border-top:none;padding:16px 18px;gap:12px;align-items:center;background:white;transition:background .15s}
.cart-row:hover{background:var(--cream)}
.cart-row-img{width:72px;height:72px;object-fit:cover;border:1px solid var(--border);border-radius:2px;flex-shrink:0}
.cart-row-name{font-size:13.5px;font-weight:500;color:var(--text)}
.cart-row-sub{font-size:11px;color:var(--text3);margin-top:3px}
.cart-row-price{font-size:14px;font-weight:600;color:var(--text)}
.cart-row-total{font-size:14px;font-weight:700;color:var(--orange)}
.cart-row-del{background:none;border:none;font-size:17px;color:var(--text3);transition:color .2s}
.cart-row-del:hover{color:var(--red)}
.qty-wrap{display:flex;align-items:center;border:1.5px solid var(--border);width:fit-content;border-radius:2px;overflow:hidden}
.qty-btn{background:var(--cream);border:none;width:36px;height:36px;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background .2s;color:var(--text);cursor:pointer}
.qty-btn:hover{background:var(--border)}
.qty-inp{width:44px;text-align:center;border:none;font-size:13px;font-weight:600;outline:none;background:white;font-family:var(--font);height:36px;color:var(--text)}
.summary-box{background:white;border:1px solid var(--border);padding:22px;border-radius:3px}
.summary-box h5{font-family:var(--font2);font-size:1.15rem;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border);color:var(--text)}
.summary-line{display:flex;justify-content:space-between;font-size:13px;color:var(--text2);margin-bottom:9px}
.summary-line.total{font-size:15px;font-weight:700;color:var(--text);padding-top:12px;border-top:1px solid var(--border);margin-top:4px}
.coupon-row{display:flex;gap:8px;margin:16px 0}
.coupon-inp{flex:1;border:1.5px solid var(--border);padding:9px 14px;font-size:12px;outline:none;font-family:var(--font);border-radius:2px;transition:border-color .2s;letter-spacing:.06em;text-transform:uppercase}
.coupon-inp:focus{border-color:var(--text)}
.trust-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.trust-chip{display:flex;align-items:center;gap:5px;font-size:10.5px;color:var(--text3);background:var(--cream);border:1px solid var(--border);padding:4px 10px;border-radius:100px}
.trust-chip i{color:var(--orange);font-size:11px}

/* CHECKOUT */
.checkout-card{background:white;border:1px solid var(--border);padding:24px;margin-bottom:18px;border-radius:3px}
.checkout-card h4{font-family:var(--font2);font-size:1.1rem;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--border);color:var(--text);display:flex;align-items:center;gap:12px}
.step-num{width:26px;height:26px;background:var(--orange);color:white;border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.flabel{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text2);display:block;margin-bottom:6px}
.finput{width:100%;border:1.5px solid var(--border);padding:10px 14px;font-size:13px;color:var(--text);outline:none;font-family:var(--font);border-radius:2px;transition:border-color .2s;background:white;appearance:none}
.finput:focus{border-color:var(--text)}
.finput::placeholder{color:#c0b8ac}
.fgroup{margin-bottom:16px}
.pay-opt{border:1.5px solid var(--border);padding:14px 16px;cursor:pointer;display:flex;align-items:center;gap:14px;margin-bottom:10px;border-radius:2px;transition:var(--tr)}
.pay-opt:hover{border-color:var(--text3)}
.pay-opt.active{border-color:var(--text);background:var(--cream)}
.pay-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:.2s}
.pay-opt.active .pay-radio{border-color:var(--text)}
.pay-radio::after{content:'';width:8px;height:8px;border-radius:50%;background:var(--text);opacity:0;transition:.2s}
.pay-opt.active .pay-radio::after{opacity:1}
.pay-label{font-size:13.5px;font-weight:600;color:var(--text)}
.pay-sub{font-size:11.5px;color:var(--text3);margin-top:2px}

/* ORDERS */
.order-card{background:white;border:1px solid var(--border);margin-bottom:14px;border-radius:3px}
.order-card-head{background:var(--cream);padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.order-card-body{padding:16px 18px}
.status-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 11px;border-radius:100px}
.tracking-timeline{padding-left:24px;position:relative}
.tracking-timeline::before{content:'';position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--border)}
.tracking-step{position:relative;padding-bottom:18px}
.tracking-dot{position:absolute;left:-24px;top:3px;width:15px;height:15px;border-radius:50%;background:var(--border2);border:2px solid var(--border2)}
.tracking-dot.done{background:var(--orange);border-color:var(--orange)}
.tracking-dot.current{background:white;border-color:var(--orange);box-shadow:0 0 0 3px rgba(200,96,42,.15)}
.tracking-step-title{font-size:13px;font-weight:600;color:var(--text)}
.tracking-step-date{font-size:11px;color:var(--text3);margin-top:2px}

/* PAGINATION */
.pagination{display:flex;justify-content:center;gap:6px;margin-top:40px;flex-wrap:wrap}
.pg-btn{width:38px;height:38px;border:1.5px solid var(--border);background:white;font-size:13px;color:var(--text2);display:flex;align-items:center;justify-content:center;border-radius:2px;text-decoration:none;transition:var(--tr)}
.pg-btn:hover,.pg-btn.active{background:var(--text);border-color:var(--text);color:white}

/* BREADCRUMB */
.breadcrumb-bar{background:var(--cream);border-bottom:1px solid var(--border);padding:10px 0}
.bc-list{list-style:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bc-list li{font-size:12px;color:var(--text3)}
.bc-list a{color:var(--text3)}
.bc-list a:hover{color:var(--text)}
.bc-list .sep{font-size:9px;color:#ccc}
.breadcrumb-list{list-style:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.breadcrumb-list li{font-size:12px;color:var(--text3)}
.breadcrumb-list a{color:var(--text3)}
.breadcrumb-list a:hover{color:var(--text)}
.breadcrumb-list .sep{font-size:9px;color:#ccc}

/* PDP */
.pdp-main-img{background:var(--cream);border:1px solid var(--border);height:430px;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:zoom-in;margin-bottom:12px;border-radius:3px}
.pdp-main-img img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .3s}
.pdp-thumb{width:72px;height:72px;flex-shrink:0;border:2px solid var(--border);cursor:pointer;overflow:hidden;background:var(--cream);border-radius:2px;transition:border-color .2s}
.pdp-thumb:hover,.pdp-thumb.active{border-color:var(--text)}
.pdp-thumb img{width:100%;height:100%;object-fit:cover}
.note-tag{display:inline-flex;align-items:center;background:var(--cream);border:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--text2);padding:5px 12px;border-radius:100px;margin:3px}

/* EMPTY STATE */
.empty-state{text-align:center;padding:80px 20px}
.empty-state-icon{font-size:56px;color:var(--border2);margin-bottom:20px}
.empty-state h4{font-family:var(--font2);font-size:1.6rem;font-weight:500;color:var(--text);margin-bottom:10px}
.empty-state p{font-size:14px;color:var(--text3);margin-bottom:24px}

/* FORM CONTROLS */
.form-control-custom{width:100%;border:1.5px solid var(--border);padding:10px 14px;font-size:13px;color:var(--text);outline:none;font-family:var(--font);border-radius:2px;transition:border-color .2s;background:white}
.form-control-custom:focus{border-color:var(--text)}
.form-label-custom{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text2);display:block;margin-bottom:6px}
.form-group{margin-bottom:16px}

/* AUTH */
.auth-card{max-width:460px;margin:0 auto;background:white;border:1px solid var(--border);padding:40px;border-radius:4px;box-shadow:var(--shadow)}
.auth-card h2{font-family:var(--font2);font-size:2rem;font-weight:500;color:var(--text);text-align:center;margin-bottom:8px}

/* REVEAL */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:1100px){.prod-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:991px){
  .nav-search{display:none}
  .nav-toggle{display:block}
  .nav-links{display:none;flex-direction:column;align-items:flex-start;border-top:1px solid var(--border);background:white;position:absolute;left:0;right:0;top:100%;box-shadow:var(--shadow2);z-index:999}
  .nav-links.open{display:flex}
  .nav-links a{padding:13px 20px;border-bottom:1px solid var(--border);width:100%}
  .nav-links a.active::after{display:none}
  .nav-links .nav-dropdown{width:100%}
  .nav-links .nav-dropdown-menu{position:static;box-shadow:none;border:none;background:var(--cream);padding:0}
  .insta-grid{grid-template-columns:repeat(2,1fr)}
  .usp-inner{justify-content:flex-start}
  .cart-table-head{display:none}
  .cart-row{grid-template-columns:1fr;gap:8px}
  .prod-grid{grid-template-columns:repeat(2,1fr);gap:14px}
}
@media(max-width:767px){
  .hero-banner{padding:40px 0 32px}
  .hero-img{display:none}
  .sec{padding:36px 0}
  .prod-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .footer-usp-inner{justify-content:flex-start;overflow-x:auto}
  .footer-bottom{flex-direction:column;text-align:center}
  .auth-card{padding:28px 20px}
}
@media(max-width:575px){
  .ann-bar{font-size:10.5px}
  .hero-title{font-size:2.4rem}
  .toast-container{bottom:16px;right:16px;left:16px}
  .toast-item{max-width:100%}
  .filter-bar{flex-direction:column;align-items:flex-start}
  .prod-grid{grid-template-columns:repeat(2,1fr)}
}

/* ============================================================
   LEFT SIDE SMALL LOGO (navbar) — logo.jpeg small square left of search
   ============================================================ */
.nav-side-logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  text-decoration: none;
  width: 52px;
  height: 52px;
}
.nav-side-logo-img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  object-position: center;
  display: block;
  mix-blend-mode: multiply;
}
.nav-side-logo:hover .nav-side-logo-img {
  opacity: 0.8;
}

/* Reset nav-logo — center AMOON® text only, no image */
.nav-logo {
  text-align: center;
  flex: 1;
}
.nav-logo a {
  font-family: var(--font2);
  font-size: 30px;
  font-weight: 600;
  color: var(--text);
  letter-spacing: .12em;
  display: inline-block;
  line-height: 1;
  text-decoration: none;
  margin-right: 200px;
}
.nav-logo a sup {
  font-size: 11px;
  vertical-align: super;
  font-weight: 400;
  font-family: var(--font);
  letter-spacing: 0;
}
.nav-logo a:hover {
  color: var(--text);
  opacity: 0.8;
}

@media (max-width: 991px) {
  .nav-logo a { font-size: 24px; }
}

/* ============================================================
   FULL SITE ANIMATIONS — Premium Feel
   ============================================================ */

/* ---- Page entrance ---- */
body { animation: pageFadeIn .4s ease; }
@keyframes pageFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ---- Announcement bar scroll ---- */
.ann-track { animation: annScroll 28s linear infinite; }
.ann-bar:hover .ann-track { animation-play-state: paused; }

/* ---- Navbar entrance ---- */
#mainNav {
  animation: navSlideDown .5s ease both;
}
@keyframes navSlideDown {
  from { transform: translateY(-100%); opacity: 0; }
  to   { transform: translateY(0);    opacity: 1; }
}

/* ---- Hero section ---- */
.hero-eyebrow {
  animation: fadeUp .6s .1s ease both;
}
.hero-title {
  animation: fadeUp .7s .2s ease both;
}
.hero-sub {
  animation: fadeUp .7s .35s ease both;
}
.hero-banner .d-flex.gap-3 {
  animation: fadeUp .7s .45s ease both;
}
.hero-badges {
  animation: fadeUp .7s .55s ease both;
}
.hero-img img {
  animation: heroFloat 4s ease-in-out infinite, heroEntrance .9s .3s ease both;
}
@keyframes heroEntrance {
  from { opacity: 0; transform: translateX(40px) translateY(0); }
  to   { opacity: 1; transform: translateX(0) translateY(0); }
}
@keyframes heroFloat {
  0%,100% { transform: translateY(0px); }
  50%     { transform: translateY(-12px); }
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ---- USP strip items stagger ---- */
.usp-item { animation: fadeUp .5s ease both; }
.usp-item:nth-child(1) { animation-delay: .05s; }
.usp-item:nth-child(2) { animation-delay: .12s; }
.usp-item:nth-child(3) { animation-delay: .19s; }
.usp-item:nth-child(4) { animation-delay: .26s; }
.usp-item:nth-child(5) { animation-delay: .33s; }

/* ---- Scroll reveal (JS adds .visible) ---- */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .65s cubic-bezier(.22,1,.36,1),
              transform .65s cubic-bezier(.22,1,.36,1);
}
.reveal.visible {
  opacity: 1;
  transform: none;
}
/* Stagger children inside reveal grids */
.prod-grid .prod-card { transition-delay: calc(var(--i, 0) * 60ms); }

/* ---- Product card hover ---- */
.prod-card {
  transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease;
}
.prod-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(26,24,20,.13);
}
.prod-img img {
  transition: transform .55s cubic-bezier(.22,1,.36,1);
}
.prod-card:hover .prod-img img {
  transform: scale(1.06);
}
.prod-actions {
  transition: transform .3s cubic-bezier(.22,1,.36,1);
}

/* ---- Wishlist heart beat ---- */
.prod-wish.active {
  animation: heartBeat .4s ease;
}
@keyframes heartBeat {
  0%   { transform: scale(1); }
  40%  { transform: scale(1.35); }
  70%  { transform: scale(.9); }
  100% { transform: scale(1); }
}

/* ---- Buttons ---- */
.btn-orange {
  transition: background .25s, transform .2s, box-shadow .25s;
  position: relative;
  overflow: hidden;
}
.btn-orange::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,.15);
  opacity: 0;
  transition: opacity .2s;
}
.btn-orange:hover::after { opacity: 1; }
.btn-orange:active { transform: translateY(0) scale(.97); }

.btn-outline {
  transition: background .25s, color .25s, transform .2s;
}
.btn-outline:active { transform: scale(.97); }

/* ---- Cat chip hover ---- */
.cat-chip {
  transition: background .22s, color .22s, border-color .22s, transform .2s;
}
.cat-chip:hover { transform: translateY(-2px); }
.cat-chip.active { transform: none; }

/* ---- Promo band numbers count-up feel ---- */
.stat-box {
  transition: background .3s, transform .3s;
}
.stat-box:hover {
  transform: translateY(-4px) scale(1.02);
  background: rgba(255,255,255,.1);
}
.s-num {
  transition: transform .3s;
}
.stat-box:hover .s-num {
  transform: scale(1.08);
}

/* ---- Instagram grid ---- */
.insta-item {
  transition: transform .4s cubic-bezier(.22,1,.36,1);
}
.insta-item:hover { transform: scale(1.02); }
.insta-item img { transition: transform .5s cubic-bezier(.22,1,.36,1); }
.insta-item:hover img { transform: scale(1.08); }

/* ---- Footer social icons ---- */
.footer-social a {
  transition: background .25s, border-color .25s, color .25s, transform .2s;
}
.footer-social a:hover { transform: translateY(-3px) scale(1.1); }

/* ---- USP strip hover ---- */
.usp-item {
  transition: background .25s, transform .25s;
}
.usp-item:hover { transform: translateY(-2px); }
.usp-item i {
  transition: transform .3s cubic-bezier(.34,1.56,.64,1);
}
.usp-item:hover i { transform: scale(1.25) rotate(-5deg); }

/* ---- Nav links hover underline slide ---- */
.nav-links a::before {
  content: '';
  position: absolute;
  bottom: 0; left: 50%; right: 50%;
  height: 2px;
  background: var(--orange);
  transition: left .25s ease, right .25s ease;
  border-radius: 2px;
}
.nav-links a:hover::before {
  left: 15px;
  right: 15px;
}
.nav-links a.active::before {
  left: 15px;
  right: 15px;
}
/* Remove old ::after underline */
.nav-links a.active::after { display: none; }

/* ---- Search overlay ---- */
.search-box {
  animation: searchDrop .3s cubic-bezier(.22,1,.36,1) both;
}
@keyframes searchDrop {
  from { transform: translateY(-20px); opacity: 0; }
  to   { transform: translateY(0);     opacity: 1; }
}

/* ---- Cart badge bounce ---- */
.cart-badge {
  animation: badgePop .4s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes badgePop {
  from { transform: scale(0); }
  to   { transform: scale(1); }
}

/* ---- Toast slide in ---- */
@keyframes toastIn {
  from { transform: translateX(100%); opacity: 0; }
  to   { transform: translateX(0);    opacity: 1; }
}

/* ---- Page loader ---- */
.loader-line::after {
  animation: loaderAnim 1.2s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes loaderAnim {
  0%   { margin-left: -40%; width: 40%; }
  50%  { margin-left: 40%; width: 60%; }
  100% { margin-left: 150%; width: 40%; }
}

/* ---- Scroll progress bar ---- */
#scrollBar {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--orange), #e8c060);
  width: 0%;
  z-index: 9999;
  transition: width .1s linear;
  border-radius: 0 2px 2px 0;
}

/* ---- Section headings slide in ---- */
.sec-head h2 {
  position: relative;
  display: inline-block;
}
.sec-head h2::after {
  content: '';
  position: absolute;
  bottom: -6px; left: 50%;
  transform: translateX(-50%) scaleX(0);
  width: 48px; height: 2px;
  background: var(--orange);
  border-radius: 2px;
  transition: transform .5s .3s cubic-bezier(.22,1,.36,1);
}
.reveal.visible .sec-head h2::after,
.sec-head.visible h2::after {
  transform: translateX(-50%) scaleX(1);
}

/* ---- WhatsApp button pulse ---- */
@keyframes waPulse {
  0%,100% { box-shadow: 0 4px 20px rgba(37,211,102,.45); }
  50%     { box-shadow: 0 4px 28px rgba(37,211,102,.75), 0 0 0 12px rgba(37,211,102,.1); }
}

/* ---- Smooth scroll everywhere ---- */
html { scroll-behavior: smooth; }

/* ---- Image lazy load fade ---- */
img[loading="lazy"] {
  transition: opacity .4s ease;
}

/* ============================================================
   SORT SELECT — clean styled dropdown
   ============================================================ */
.sort-select {
  appearance: none;
  -webkit-appearance: none;
  border: 1.5px solid var(--border2);
  background: white url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%231a1814'/%3E%3C/svg%3E") no-repeat right 12px center;
  padding: 9px 36px 9px 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-family: var(--font);
  color: var(--text);
  cursor: pointer;
  border-radius: var(--radius);
  outline: none;
  transition: border-color .2s;
  white-space: nowrap;
}
.sort-select:hover { border-color: var(--text); }
.sort-select:focus { border-color: var(--orange); }

/* ============================================================
   MEGA ANIMATIONS PACK — Extra Everything
   ============================================================ */


.cursor-ring {
  pointer-events: none;
  position: fixed;
  width: 38px; height: 38px;
  border-radius: 50%;
  border: 1.5px solid rgba(200,96,42,.5);
  transform: translate(-50%, -50%);
  z-index: 99998;
  transition: transform .18s ease, width .2s, height .2s, opacity .2s;
}
body:hover .cursor-ring { opacity: 1; }

/* === FLOAT ELEMENTS === */
@keyframes floatY {
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-8px); }
}
@keyframes floatX {
  0%,100% { transform: translateX(0); }
  50%     { transform: translateX(6px); }
}
@keyframes spinSlow {
  to { transform: rotate(360deg); }
}
@keyframes glowPulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(200,96,42,0); }
  50%     { box-shadow: 0 0 0 8px rgba(200,96,42,.12); }
}

/* === HERO SECTION EXTRA === */
.hero-eyebrow {
  position: relative;
  padding-left: 28px;
}
.hero-eyebrow::before {
  content: '';
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-50%);
  width: 18px; height: 2px;
  background: var(--orange);
  animation: lineGrow .8s .5s ease both;
}
@keyframes lineGrow {
  from { width: 0; opacity: 0; }
  to   { width: 18px; opacity: 1; }
}

/* === BADGE ENTRANCE === */
.badge-bestseller, .badge-off, .badge-new {
  animation: badgeEntrance .4s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes badgeEntrance {
  from { transform: scale(0) rotate(-10deg); opacity: 0; }
  to   { transform: scale(1) rotate(0); opacity: 1; }
}

/* === PRODUCT CARD SHINE SWEEP === */
.prod-img::after {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 60%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
  transform: skewX(-15deg);
  transition: left .6s ease;
  z-index: 1;
  pointer-events: none;
}
.prod-card:hover .prod-img::after {
  left: 150%;
}

/* === LOADING SKELETON SHIMMER === */
@keyframes shimmer {
  0%   { background-position: -400px 0; }
  100% { background-position: 400px 0; }
}
.skeleton {
  background: linear-gradient(90deg, #f0ece8 25%, #e8e4de 50%, #f0ece8 75%);
  background-size: 800px 100%;
  animation: shimmer 1.5s infinite;
  border-radius: 4px;
}

/* === SCROLL TRIGGERED SLIDE FROM SIDES === */
.reveal-left {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
}
.reveal-right {
  opacity: 0;
  transform: translateX(40px);
  transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
}
.reveal-left.visible, .reveal-right.visible {
  opacity: 1;
  transform: translateX(0);
}
.reveal-scale {
  opacity: 0;
  transform: scale(.92);
  transition: opacity .6s ease, transform .6s cubic-bezier(.22,1,.36,1);
}
.reveal-scale.visible {
  opacity: 1;
  transform: scale(1);
}

/* === PROMO BAND PARTICLES === */
.promo-band::after {
  content: '';
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(ellipse at 80% 50%, rgba(200,96,42,.08) 0%, transparent 60%);
  animation: promoBgRotate 8s linear infinite;
  pointer-events: none;
}
@keyframes promoBgRotate {
  to { transform: rotate(360deg); }
}

/* === ANNOUNCEMENT BAR GLOW === */
.ann-bar { position: relative; }

/* === FOOTER LINK HOVER === */
.footer-links a {
  position: relative;
  padding-left: 0;
  transition: padding-left .2s ease, color .2s ease;
}
.footer-links a::before {
  content: '→';
  position: absolute;
  left: -16px;
  opacity: 0;
  transition: opacity .2s, left .2s;
  font-size: 11px;
  color: var(--orange);
}
.footer-links a:hover {
  padding-left: 16px;
  color: var(--orange);
}
.footer-links a:hover::before {
  opacity: 1;
  left: 0;
}

/* === NAV LOGO SHIMMER === */
.nav-logo a {
  position: relative;
  background: linear-gradient(90deg, var(--text) 40%, var(--orange) 50%, var(--text) 60%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: logoShimmer 4s linear infinite;
}
@keyframes logoShimmer {
  from { background-position: 200% center; }
  to   { background-position: -200% center; }
}

/* === CART BADGE WOBBLE on update === */
.cart-badge.updated {
  animation: cartWobble .5s cubic-bezier(.36,.07,.19,.97);
}
@keyframes cartWobble {
  0%,100% { transform: rotate(0deg) scale(1); }
  20%     { transform: rotate(-10deg) scale(1.2); }
  40%     { transform: rotate(10deg) scale(1.2); }
  60%     { transform: rotate(-5deg) scale(1.1); }
  80%     { transform: rotate(5deg) scale(1.1); }
}

/* === SEARCH OVERLAY BACKDROP BLUR ANIMATE === */
.search-overlay.active {
  animation: overlayFadeIn .25s ease both;
}
@keyframes overlayFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* === SECTION DIVIDER ANIMATE === */
.sec-head::after {
  content: '';
  display: block;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--orange), transparent);
  margin: 12px auto 0;
  transition: width .8s .2s cubic-bezier(.22,1,.36,1);
  border-radius: 2px;
}
.sec-head.visible::after {
  width: 80px;
}

/* === TOAST ENHANCED === */
.toast-item {
  animation: toastSlide .4s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes toastSlide {
  from { transform: translateX(120%); opacity: 0; }
  to   { transform: translateX(0); opacity: 1; }
}

/* === BUTTON SHINE ON HOVER === */
.btn-orange, .btn-outline {
  position: relative;
  overflow: hidden;
}
.btn-orange::before, .btn-outline::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
  transform: skewX(-20deg);
  transition: left .5s ease;
}
.btn-orange:hover::before, .btn-outline:hover::before {
  left: 150%;
}

/* === PRICE HIGHLIGHT === */
.prod-price .now {
  position: relative;
  display: inline-block;
}

/* === CAT CHIP ACTIVE BOUNCE === */
.cat-chip.active {
  animation: chipActive .3s cubic-bezier(.34,1.56,.64,1);
}
@keyframes chipActive {
  from { transform: scale(.9); }
  to   { transform: scale(1); }
}

/* === IMAGE HOVER TILT === */
.prod-card {
  transform-style: preserve-3d;
}

/* === MOBILE RESPONSIVE FIXES === */
@media (max-width: 767px) {
  .filter-bar { flex-wrap: wrap; gap: 12px; }
  .filter-sort-wrap { width: 100%; }
  .filter-sort-wrap .cat-strip { max-width: 100%; }
}

/* ============================================================
   BV-CARD — Bellavita Exact Product Card
   ============================================================ */
.bv-card {
  background: white;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid #eee;
  display: flex;
  flex-direction: column;
  transition: box-shadow .3s ease, transform .3s ease;
}
.bv-card:hover {
  box-shadow: 0 8px 32px rgba(26,24,20,.12);
  transform: translateY(-3px);
}

/* Image wrapper */
.bv-card-img-wrap {
  position: relative;
  display: block;
  background: #f2f2f2;
  aspect-ratio: 1 / 0.9;
  overflow: hidden;
  text-decoration: none;
}
.bv-card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .55s cubic-bezier(.22,1,.36,1);
}
.bv-card:hover .bv-card-img-wrap img {
  transform: scale(1.05);
}

/* Badges */
.bv-badge {
  position: absolute;
  top: 10px; left: 10px;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 3px;
  z-index: 3;
  color: white;
}
.bv-badge-seller { background: #c8602a; }
.bv-badge-new    { background: #2a7c5e; }
.bv-badge-feat   { background: #6c5ce7; }

.bv-badge-off {
  position: absolute;
  bottom: 10px; left: 10px;
  background: #2a7c5e;
  color: white;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 3px;
  z-index: 3;
}

/* Wishlist heart */
.bv-wish {
  position: absolute;
  top: 10px; right: 10px;
  width: 34px; height: 34px;
  background: white;
  border: 1px solid #e0dbd5;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 15px;
  color: #888;
  z-index: 3;
  cursor: pointer;
  transition: all .2s;
}
.bv-wish:hover, .bv-wish.active {
  color: #c0392b;
  border-color: #c0392b;
}



/* Shine sweep on hover */
.bv-card-img-wrap::after {
  content: '';
  position: absolute;
  top: 0; left: -80%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
  transform: skewX(-15deg);
  transition: left .6s ease;
  z-index: 4;
  pointer-events: none;
}
.bv-card:hover .bv-card-img-wrap::after { left: 140%; }

/* Card body */
.bv-card-body {
  padding: 8px 10px 8px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.bv-cat {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #9a9088;
}
.bv-name {
  font-size: 12.5px;
  font-weight: 500;
  color: #1a1814;
  line-height: 1.35;
}
.bv-name a {
  color: inherit;
  text-decoration: none;
}
.bv-name a:hover { color: #c8602a; }
.bv-volume {
  font-size: 12px;
  color: #9a9088;
}
.bv-rating {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  margin-top: 2px;
}
.bv-star    { color: #f5a623; font-size: 13px; }
.bv-score   { font-weight: 700; color: #1a1814; }
.bv-sep     { color: #d0cac0; }
.bv-verified{ color: #2a7c5e; font-size: 12px; }
.bv-rcount  { color: #9a9088; }
.bv-price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 4px;
}
.bv-now { font-size: 14px; font-weight: 700; color: #1a1814; }
.bv-was { font-size: 12.5px; color: #aaa; text-decoration: line-through; }

/* ADD TO CART — fixed at bottom of card */
.bv-add-row {
  padding: 0;
  border-top: 1px solid #f0ece8;
  margin-top: auto;
}
.bv-add-btn {
  width: 100%;
  background: #111;
  color: white;
  border: none;
  padding: 10px 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-family: var(--font);
  cursor: pointer;
  transition: background .22s ease;
  display: block;
}
.bv-add-btn:hover { background: #c8602a; }
.bv-add-btn:disabled { opacity: .65; cursor: not-allowed; }
.bv-add-btn:active { transform: scale(.98); }

/* Grid uses bv-card */
.prod-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; }

@media (max-width: 1100px) { .prod-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 991px)  { .prod-grid { grid-template-columns: repeat(2,1fr); gap: 14px; } }
@media (max-width: 480px)  { .prod-grid { grid-template-columns: repeat(2,1fr); gap: 10px; } }
@media (max-width: 360px)  { .prod-grid { grid-template-columns: 1fr; } }

/* ============================================================
   PRODUCT DETAIL PAGE — Bellavita Exact
   ============================================================ */
.pdp-section { background: white; padding: 20px 0 0; }

/* Gallery */
.pdp-gallery-wrap { position: sticky; top: 110px; }
.pdp-main-wrap {
  position: relative;
  background: #f5f5f5;
  border-radius: 6px;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 12px;
  cursor: zoom-in;
}
.pdp-main-wrap img {
  width: 100%; height: 100%;
  object-fit: contain;
  transition: transform .3s ease;
  display: block;
}
.pdp-off-badge {
  position: absolute; bottom: 12px; left: 12px;
  background: #2a7c5e; color: white;
  font-size: 11px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; padding: 5px 12px; border-radius: 3px; z-index: 2;
}
.pdp-bs-badge {
  position: absolute; top: 12px; left: 12px;
  background: #c8602a; color: white;
  font-size: 9px; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; padding: 4px 10px; border-radius: 3px; z-index: 2;
}
.pdp-thumbs {
  display: flex; gap: 8px; overflow-x: auto;
  scrollbar-width: none; padding-bottom: 4px;
}
.pdp-thumbs::-webkit-scrollbar { display: none; }
.pdp-thumb {
  width: 72px; height: 72px; flex-shrink: 0;
  border: 2px solid #e8e4de; border-radius: 4px;
  overflow: hidden; cursor: pointer; background: #f5f5f5;
  transition: border-color .2s;
}
.pdp-thumb:hover, .pdp-thumb.active { border-color: #1a1814; }
.pdp-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* Info side */
.pdp-info { padding-top: 4px; }
.pdp-category a {
  font-size: 10px; font-weight: 700; letter-spacing: .2em;
  text-transform: uppercase; color: #c8602a;
  text-decoration: none; display: inline-block; margin-bottom: 4px;
}
.pdp-title {
  font-family: var(--font2);
  font-size: clamp(1.2rem, 2.2vw, 1.55rem);
  font-weight: 600; color: #1a1814;
  line-height: 1.2; margin-bottom: 5px;
}
.pdp-notes-line {
  font-size: 11px; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: #c8602a;
  margin-bottom: 12px;
}
.pdp-rating-row {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; margin-bottom: 10px;
}
.pdp-stars { color: #f5a623; font-weight: 700; }
.pdp-sep   { color: #d0cac0; }
.pdp-verified { color: #2a7c5e; font-size: 14px; }
.pdp-rcount { color: #9a9088; }
.pdp-share-btn {
  margin-left: auto; font-size: 16px; color: #9a9088;
  text-decoration: none; transition: color .2s;
}
.pdp-share-btn:hover { color: #1a1814; }
.pdp-divider { border-color: #e8e4de; margin: 8px 0; }

/* Price block */
.pdp-price-block { margin-bottom: 10px; }
.pdp-disc-pct {
  display: inline-block;
  font-size: 14px; font-weight: 700; color: #c8602a;
  margin-bottom: 4px;
}
.pdp-price-now {
  display: block;
  font-size: 1.6rem; font-weight: 700; color: #1a1814;
  line-height: 1; margin-bottom: 3px;
}
.pdp-mrp { font-size: 12px; color: #9a9088; margin-bottom: 2px; }
.pdp-was { text-decoration: line-through; }
.pdp-tax-note { font-size: 11px; color: #9a9088; }

/* Quantity */
.pdp-qty-row {
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 10px; flex-wrap: wrap;
}
.pdp-qty-wrap {
  display: flex; align-items: center;
  border: 1.5px solid #e8e4de; border-radius: 3px;
  overflow: hidden; background: white;
}
.pdp-qty-btn {
  width: 34px; height: 34px; background: #f5f5f5;
  border: none; font-size: 18px; font-weight: 300;
  cursor: pointer; transition: background .2s;
  display: flex; align-items: center; justify-content: center;
  color: #1a1814;
}
.pdp-qty-btn:hover { background: #e8e4de; }
.pdp-qty-inp {
  width: 48px; text-align: center;
  border: none; font-size: 14px; font-weight: 600;
  outline: none; background: white;
  font-family: var(--font); color: #1a1814;
  height: 34px;
  -webkit-appearance: none;
  -moz-appearance: textfield;
  appearance: textfield;
}
.pdp-qty-inp::-webkit-outer-spin-button,
.pdp-qty-inp::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.pdp-stock { font-size: 12px; font-weight: 600; display: flex; align-items: center; gap: 4px; }
.pdp-stock.in  { color: #27ae60; }
.pdp-stock.out { color: #c0392b; }

/* CTA row */
.pdp-cta-wrap {
  display: flex; gap: 8px; flex-wrap: wrap;
  margin-bottom: 12px;
}
.pdp-add-btn {
  flex: 1; min-width: 180px;
  background: #111; color: white; border: none;
  padding: 12px 16px; font-size: 11.5px; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase;
  font-family: var(--font); cursor: pointer;
  border-radius: 3px; transition: background .25s;
  display: flex; align-items: center; justify-content: center;
}
.pdp-add-btn:hover { background: #c8602a; }
.pdp-buy-btn {
  flex: 1; min-width: 140px;
  background: white; color: #1a1814;
  border: 1.5px solid #1a1814;
  padding: 12px 16px; font-size: 11.5px; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase;
  font-family: var(--font); cursor: pointer;
  border-radius: 3px; transition: all .25s;
  display: flex; align-items: center; justify-content: center;
  text-decoration: none;
}
.pdp-buy-btn:hover { background: #1a1814; color: white; }
.pdp-wish-btn {
  width: 42px; height: 42px; flex-shrink: 0;
  background: white; border: 1.5px solid #e8e4de;
  border-radius: 3px; display: flex; align-items: center;
  justify-content: center; font-size: 18px; color: #9a9088;
  cursor: pointer; transition: all .2s;
}
.pdp-wish-btn:hover, .pdp-wish-btn.active {
  color: #c0392b; border-color: #c0392b;
}

/* Trust icons — Bellavita exact 4-col */
.pdp-trust-row {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 8px; margin-bottom: 18px;
}
.pdp-trust-item {
  border: 1px solid #e8e4de; border-radius: 4px;
  padding: 12px 6px; text-align: center;
  display: flex; flex-direction: column;
  align-items: center; gap: 6px;
}
.pdp-trust-item i {
  font-size: 22px; color: #9a9088;
}
.pdp-trust-item span {
  font-size: 10px; font-weight: 600;
  letter-spacing: .04em; text-transform: uppercase;
  color: #5a534a; line-height: 1.3;
}

/* Pincode */
.pdp-pincode-box {
  background: #faf8f5; border: 1px solid #e8e4de;
  padding: 12px 14px; border-radius: 4px;
}
.pdp-pincode-label {
  font-size: 11px; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: #5a534a; margin-bottom: 8px;
}
.pdp-pincode-form {
  display: flex; gap: 8px;
}
.pdp-pincode-form input {
  flex: 1; border: 1.5px solid #e8e4de;
  padding: 8px 12px; font-size: 13px;
  outline: none; font-family: var(--font);
  border-radius: 3px; transition: border-color .2s;
}
.pdp-pincode-form input:focus { border-color: #1a1814; }
.pdp-pincode-form button {
  background: #1a1814; color: white; border: none;
  padding: 8px 16px; font-size: 11px; font-weight: 700;
  letter-spacing: .1em; font-family: var(--font);
  border-radius: 3px; cursor: pointer; white-space: nowrap;
}

/* Tabs */
.pdp-tabs-wrap { margin-top: 40px; padding-bottom: 48px; border-top: 1px solid #e8e4de; }
.pdp-tabs-nav {
  display: flex; gap: 0;
  border-bottom: 1px solid #e8e4de;
}
.pdp-tab-btn {
  padding: 14px 26px; font-size: 12px; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  background: none; border: none;
  border-bottom: 2px solid transparent;
  color: #9a9088; font-family: var(--font);
  cursor: pointer; margin-bottom: -1px;
  transition: color .2s, border-color .2s;
}
.pdp-tab-btn.active, .pdp-tab-btn:hover {
  color: #1a1814; border-bottom-color: #1a1814;
}
.pdp-tab-content {
  display: none; padding: 24px 0;
  font-size: 13.5px; color: #5a534a; line-height: 1.85;
}
.pdp-tab-content.active { display: block; }
.pdp-notes-grid {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 14px;
}
.pdp-note-card {
  background: #faf8f5; border: 1px solid #e8e4de;
  padding: 22px; text-align: center; border-radius: 4px;
}
.pdp-note-card i { font-size: 1.5rem; color: #c8602a; display: block; margin-bottom: 10px; }
.pdp-note-label  { font-size: 10px; text-transform: uppercase; letter-spacing: .16em; color: #9a9088; margin-bottom: 6px; }
.pdp-note-val    { font-size: 13px; font-weight: 600; color: #1a1814; }
.pdp-tab-head    { font-size: 13px; font-weight: 700; margin-bottom: 12px; color: #1a1814; }
.pdp-tab-list    { list-style: none; padding: 0; }
.pdp-tab-list li { font-size: 13px; color: #5a534a; padding: 5px 0; border-bottom: 1px solid #f0ece8; display: flex; align-items: center; gap: 8px; }
.pdp-tab-list li::before { content: '✓'; color: #c8602a; font-weight: 700; flex-shrink: 0; }

@media (max-width: 767px) {
  .pdp-gallery-wrap { position: static; }
  .pdp-trust-row { grid-template-columns: repeat(2,1fr); }
  .pdp-notes-grid { grid-template-columns: 1fr; }
  .pdp-tab-btn { padding: 12px 16px; font-size: 11px; }
  .pdp-cta-wrap { flex-direction: column; }
  .pdp-add-btn, .pdp-buy-btn { min-width: unset; }
}

/* ============================================================
   AMOON — UPDATES: Typography, Pricing, Reviews, Spacing
   ============================================================ */

/* ---- Typography Scale Increase ---- */
body {
  font-size: 15px !important;
}
.bv-name a,
.bv-name {
  font-size: 15px !important;
}
.bv-cat {
  font-size: 12px !important;
}
.bv-now {
  font-size: 17px !important;
  font-weight: 700 !important;
}
.bv-was {
  font-size: 13px !important;
  color: #999 !important;
  text-decoration: line-through !important;
}
.bv-volume {
  font-size: 13px !important;
}
.bv-add-btn {
  font-size: 13px !important;
  letter-spacing: .08em !important;
}
.pdp-title {
  font-size: clamp(1.5rem, 3vw, 2.1rem) !important;
}
.pdp-price-now {
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
}
.pdp-was {
  text-decoration: line-through !important;
  color: #999 !important;
}
.footer-desc, .footer-links a {
  font-size: 14px !important;
}
.footer-heading {
  font-size: 13px !important;
}
.footer-contact-item span,
.footer-contact-item a {
  font-size: 13.5px !important;
}
p { font-size: 15px; line-height: 1.75; }
h1 { font-size: clamp(1.7rem, 4vw, 2.5rem); }
h2 { font-size: clamp(1.4rem, 3vw, 2rem); }
h3 { font-size: clamp(1.2rem, 2.5vw, 1.7rem); }

/* ---- Filter Bar Spacing Fix ---- */
.filter-bar {
  padding: 10px 0 16px !important;
  margin-bottom: 4px !important;
  gap: 10px !important;
}
.cat-strip {
  gap: 6px !important;
}
.cat-chip {
  font-size: 12.5px !important;
  padding: 6px 14px !important;
}

/* ---- Product Count & Sort ---- */
.product-count {
  font-size: 13px !important;
}
.sort-btn {
  font-size: 13px !important;
  padding: 7px 36px 7px 12px !important;
}

/* ---- Price Display ---- */
.bv-price {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-top: 6px !important;
}
.bv-disc-pct {
  font-size: 11px !important;
  color: #16a34a !important;
  font-weight: 700 !important;
  background: #f0fdf4 !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
}

/* ---- Remove Like/Wish button from product cards ---- */
.bv-wish {
  display: none !important;
}

/* ---- Reviews Section ---- */
.star-rating .star-icon {
  cursor: pointer;
  transition: color 0.15s, transform 0.1s;
}
.star-rating .star-icon:hover {
  transform: scale(1.15);
}

/* ---- Static Policy Pages ---- */
.policy-content h4 {
  font-family: var(--font2);
  font-size: 1.1rem;
  color: var(--text);
  margin: 28px 0 8px;
  padding-bottom: 6px;
  border-bottom: 2px solid var(--orange-light);
}
.policy-content p {
  font-size: 14.5px;
  line-height: 1.85;
  color: var(--text2);
}

/* ---- Auth cards bigger text ---- */
.auth-card .flabel {
  font-size: 13.5px !important;
}
.auth-card .finput {
  font-size: 14px !important;
  padding: 11px 14px !important;
}

/* ---- My Account pages ---- */
.flabel {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--text2) !important;
  margin-bottom: 5px !important;
  display: block !important;
}
.finput {
  font-size: 14px !important;
  padding: 10px 14px !important;
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  width: 100% !important;
  outline: none !important;
  transition: border-color 0.2s !important;
}
.finput:focus {
  border-color: var(--orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--orange-rgb,200,100,40),.08) !important;
}

/* ---- Breadcrumb font ---- */
.bc-list li, .bc-list a {
  font-size: 13.5px !important;
}

/* ---- Page title bar ---- */
.page-title-bar h1 {
  font-size: clamp(1.5rem, 3.5vw, 2.2rem) !important;
}
.page-title-bar .bc {
  font-size: 14px !important;
}

/* ---- Mobile Improvements ---- */
@media (max-width: 768px) {
  .filter-bar {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  .cat-strip {
    overflow-x: auto;
    flex-wrap: nowrap !important;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    width: 100%;
  }
  .cat-chip {
    white-space: nowrap !important;
  }
  .sort-btn {
    width: 100% !important;
  }
  .pdp-cta-wrap {
    flex-direction: column !important;
  }
  .pdp-add-btn, .pdp-buy-btn {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }
  .footer-social a {
    width: 38px !important;
    height: 38px !important;
    font-size: 17px !important;
  }
  body {
    font-size: 14.5px !important;
  }
}

@media (max-width: 480px) {
  .prod-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
  .bv-now {
    font-size: 15px !important;
  }
}
    