/* =========================================================
   LAKSHERA — tokens
   ========================================================= */
:root{
  --purple-950:#2B003B;
  --purple-800:#4A0E63;
  --purple-700:#63187F;
  --purple-100:#F3E8F7;
  --purple-50:#FBF6FC;
  --gold-600:#B08A34;
  --gold-500:#C9A24B;
  --gold-300:#E4C97F;
  --gold: #C9974A;
  --gold-dark: #A8792F;
  --gold-light: #E3BD7D;
  --white:#FFFFFF;
  --ink:#241129;
  --ink-soft:#6B5C73;
  --line:#EDE3F1;
  --success:#2E8B57;
  --danger:#D64545;

  --font-body:'Poppins', sans-serif;
  --font-display:'Cormorant Garamond', serif;
  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:22px;
  --shadow-sm:0 3px 12px rgba(43,0,59,0.08);
  --shadow-md:0 12px 30px rgba(43,0,59,0.16);
  --ease:cubic-bezier(.22,.9,.32,1);
  --header-h:112px;
}

*,*::before,*::after{box-sizing:border-box;}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms !important; transition-duration:.001ms !important;}}
html{overflow-x:hidden;}
body{
  margin:0; font-family:var(--font-body); color:var(--ink); background:var(--white);
  -webkit-font-smoothing:antialiased; padding-bottom:70px;
  overflow-x:clip;   /* 'hidden' use pannaa body scroll-container aagi sticky vela seiyaadhu */
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
button{font-family:inherit; cursor:pointer; background:none; border:none;}
svg{width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round;}
i[class^="fa-"], i[class*=" fa-"]{font-size:20px; line-height:1; display:inline-flex; align-items:center; justify-content:center;}
:focus-visible{outline:2.5px solid var(--gold-500); outline-offset:2px;}
[hidden]{display:none !important;}
.eyebrow{text-transform:uppercase; letter-spacing:.18em; font-size:11.5px; font-weight:700; color:var(--gold-600); margin:0 0 8px;}
.eyebrow.light{color:var(--gold-300);}

html[dir="rtl"] .app-bar-search i {
  right: 14px;
  left: auto;
}
html[dir="rtl"] .lang-dropdown {
  text-align: right;
}
html[dir="rtl"] .bar-badge {
  right: auto;
  left: -6px;
}
html[dir="rtl"] .app-bar-search i {
  right: 14px;
  left: auto;
}
html[dir="rtl"] .lang-dropdown {
  text-align: right;
}
html[dir="rtl"] .bar-badge {
  right: auto;
  left: -6px;
}

/* Header layout (logo, account, cart, wishlist) — position eppovume fixed, RTL la maaraadhu */
html[dir="rtl"] .app-bar-row,
html[dir="rtl"] .app-bar-title,
html[dir="rtl"] .app-bar-actions {
  direction: ltr;
}

/* Bottom nav (Home / Categories / Cart / Orders) um same reason ku fix pannanum */
html[dir="rtl"] .bottom-nav {
  direction: ltr;
}

/* =========================================================
   App bar
   ========================================================= */
.app-bar{
  position:sticky; top:0; z-index:200;
  background:linear-gradient(120deg, var(--purple-950), var(--purple-800)) fixed;
  padding:14px 16px 16px;
}
/* Search irukkura screens (Home / Categories): header normal-ah scroll aagi poyidum,
   search bar mattum top-la freeze aagi nikkum */
body.search-on .app-bar{position:relative; padding-bottom:6px;}
.app-search-wrap{
  position:sticky; top:0; z-index:190;
  display:flex;
  background:linear-gradient(120deg, var(--purple-950), var(--purple-800)) fixed;
  padding:8px 16px 14px;
  box-shadow:0 6px 14px rgba(43,0,59,0.22);
}
.app-search-wrap .app-bar-search{flex:1; min-width:0;}
.app-bar-row{display:flex; align-items:center; gap:8px;}
.bar-icon-btn{
  position:relative; width:38px; height:38px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  color:var(--white); border-radius:50%;
  transition:background .2s var(--ease);
}
.bar-icon-btn:hover{background:rgba(255,255,255,0.12);}
.bar-icon-btn.active-user i{color:var(--gold-300);}
.bar-icon-btn i{font-size:19px;}
.bar-badge{
  position:absolute; top:-2px; right:-2px;
  background:var(--gold-500); color:var(--purple-950);
  font-size:9.5px; font-weight:800; width:16px; height:16px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.bar-dot{position:absolute; top:6px; right:8px; width:7px; height:7px; border-radius:50%; background:var(--danger); border:1.5px solid var(--purple-950);}

.app-bar-title{
  display:flex; align-items:center; gap:9px; margin-right:auto; color:var(--white);
  min-width:0; overflow:hidden; flex-shrink:1;
}
.brand-mark{
  width:32px; height:32px; flex-shrink:0; border-radius:50%;
  background:var(--gold-300); color:var(--purple-950);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-weight:700; font-size:16px;
}
.brand-mark.light{background:var(--gold-300); color:var(--purple-950);}
.brand-word{font-weight:700; font-size:19px; letter-spacing:.02em; color:var(--white);}
.brand-word.light{color:var(--white);}
.drawer-sub{font-size:10px; color:rgba(255,255,255,0.55); letter-spacing:.1em; text-transform:uppercase;}

.app-bar-actions{display:flex; align-items:center; gap:2px;}

.app-bar-search{
  display:flex; align-items:center; gap:10px;
  background:var(--white); border-radius:999px; padding:11px 16px;
}
.app-bar-search i{font-size:16px; color:var(--ink-soft); flex-shrink:0;}
.app-bar-search input{
  border:none; outline:none; flex:1; font-family:inherit; font-size:14px; color:var(--ink); background:none;
}
.app-bar-search input::placeholder{color:#B3A6BA;}


/* =========================================================
   Side drawer
   ========================================================= */
.nav-overlay, .cart-overlay, .modal-overlay{
  position:fixed; inset:0; background:rgba(36,17,41,0.55);
  opacity:0; visibility:hidden; transition:opacity .3s var(--ease); z-index:300;
}
.nav-overlay.open, .cart-overlay.open, .modal-overlay.open{opacity:1; visibility:visible;}
.mobile-drawer{
  position:fixed; top:0; left:0; bottom:0; width:min(300px,84vw);
  background:var(--purple-950); color:var(--white);
  transform:translateX(-100%); transition:transform .35s var(--ease);
  z-index:301; padding:22px 20px; overflow-y:auto;
}
.mobile-drawer.open{transform:translateX(0);}
.drawer-head{display:flex; align-items:center; gap:12px; margin-bottom:26px;}
#drawerClose{margin-left:auto; color:var(--white); font-size:26px; background:none; border:none;}
.drawer-link{display:block; padding:13px 4px; font-size:15.5px; font-weight:500; border-bottom:1px solid rgba(255,255,255,0.1); color:rgba(255,255,255,0.88);}
.drawer-link:hover{color:var(--gold-300);}

/* =========================================================
   Screens
   ========================================================= */
.screen{max-width:1920px; margin:0 auto;}

/* Banner (scrollable carousel) */
.banner-wrap{padding:16px; position:relative;}
.banner-row{
  display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch; padding:2px 2px 6px;
  scrollbar-width:none;            /* endless loop: a scrollbar would be misleading */
}
.banner-row::-webkit-scrollbar{display:none;}
.banner-nav{
  display:none; position:absolute; top:50%; transform:translateY(-50%); z-index:5;
  width:40px; height:40px; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,255,255,0.92); color:var(--purple-900,#3b0a45);
  box-shadow:0 4px 14px rgba(0,0,0,0.25); align-items:center; justify-content:center; font-size:15px;
  transition:background .2s, transform .2s;
}
.banner-nav:hover{background:var(--gold-300,#e6c36a); transform:translateY(-50%) scale(1.06);}
.banner-nav-prev{left:20px;}
.banner-nav-next{right:20px;}
@media (min-width:700px){ .banner-nav{display:flex;} }
.promo-banner{
  flex:0 0 86%; scroll-snap-align:start;
  position:relative; overflow:hidden; cursor:pointer;
  background:linear-gradient(115deg, var(--purple-800) 0%, var(--purple-950) 60%);
  border-radius:var(--radius-lg);
  padding:26px 130px 26px 22px;
  min-height:130px;
  color:var(--white);
}
.promo-tag{
  display:inline-block; background:var(--gold-500); color:var(--purple-950);
  font-size:10.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  padding:4px 12px; border-radius:999px; margin-bottom:10px;
}
.promo-banner h2{font-family:var(--font-display); font-size:23px; margin:0 0 6px; font-weight:700;}
.promo-banner p{font-size:12.5px; color:rgba(255,255,255,0.7); margin:0 0 10px;}
.promo-cta{font-size:13px; font-weight:700; color:var(--gold-300);}
.promo-img{
  position:absolute; right:-10px; bottom:-10px; width:150px; height:150px;
  object-fit:cover; border-radius:50%; border:5px solid rgba(255,255,255,0.15);
}


/* Section blocks */
.section-block{padding:26px 16px 4px;}
.section-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:14px;}
.section-head h3{font-family:var(--font-display); font-size:21px; font-weight:700; margin:0; color:var(--purple-950);}
.fire{font-size:16px;}
.see-all{
  font-size:12px; font-weight:700; color:var(--gold-600);
  border:1.4px solid var(--gold-300); padding:6px 14px; border-radius:999px;
  transition:all .2s var(--ease);
}
.see-all:hover{background:var(--gold-300); color:var(--purple-950);}

/* Category grid (home) */
.cat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px 10px;}
.cat-card{display:flex; flex-direction:column; align-items:center; gap:8px;}
.cat-card-img{
  width:100%; aspect-ratio:1/1; border-radius:16px; overflow:hidden;
  background:var(--purple-100); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center;
}
.cat-card-img img{width:100%; height:100%; object-fit:cover;}
.cat-card-img i{font-size:30px; color:var(--purple-800);}
.cat-card span{font-size:11.5px; font-weight:600; text-align:center; color:var(--ink); line-height:1.2;}

/* Horizontal scroll row (Hot Deals) */
.scroll-row{
  display:flex; gap:14px; overflow-x:auto; padding:2px 2px 14px;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}
.scroll-row::-webkit-scrollbar{height:5px;}
.scroll-row::-webkit-scrollbar-thumb{background:var(--line); border-radius:999px;}

.deal-card{
  flex:0 0 178px; scroll-snap-align:start;
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md);
  overflow:hidden; box-shadow:var(--shadow-sm);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.deal-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md);}
.deal-media{position:relative; aspect-ratio:1/1; background:var(--purple-100);}
.deal-media img{width:100%; height:100%; object-fit:cover;}
.deal-ribbon{
  position:absolute; top:10px; left:-30px; width:120px; text-align:center;
  background:var(--danger); color:var(--white); font-size:9px; font-weight:800;
  letter-spacing:.04em; text-transform:uppercase; padding:3px 0; transform:rotate(-40deg);
}
.deal-timer{
  position:absolute; top:8px; right:8px;
  background:rgba(43,0,59,0.85); color:var(--white); font-size:10px; font-weight:700;
  padding:3px 7px; border-radius:6px; letter-spacing:.02em; font-variant-numeric:tabular-nums;
}
.deal-body{padding:10px 12px 12px;}
.deal-body h4{font-size:12.5px; font-weight:600; margin:0 0 6px; color:var(--ink); line-height:1.3; min-height:32px;}
.price-row{display:flex; align-items:baseline; gap:6px; margin-bottom:9px;}
.price-new{font-weight:800; color:var(--purple-950); font-size:14px;}
.price-old{font-size:11px; color:#B3A6BA; text-decoration:line-through;}
.deal-btn-row{display:flex; gap:6px;}
.btn-mini{
  flex:1; font-size:10.5px; font-weight:700; padding:7px 4px; border-radius:8px; text-align:center;
  transition:all .2s var(--ease);
}
.btn-mini-outline{border:1.3px solid var(--purple-800); color:var(--purple-800); background:var(--white);}
.btn-mini-outline:hover{background:var(--purple-100);}
.btn-mini-fill{background:linear-gradient(120deg, var(--gold-300), var(--gold-600)); color:var(--purple-950); border:1.3px solid transparent;}
.btn-mini-fill:hover{filter:brightness(1.05);}

/* Featured grid */
.feature-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px;}
.feature-card{
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md);
  overflow:hidden; box-shadow:var(--shadow-sm);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.feature-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md);}
.feature-media{position:relative; aspect-ratio:1/1; background:var(--purple-100); cursor:pointer;}
.feature-media img{width:100%; height:100%; object-fit:cover;}
.feature-ribbon{
  z-index:4; position:absolute; top:9px; left:-28px; width:110px; text-align:center;
  background:var(--success); color:var(--white); font-size:8.5px; font-weight:800;
  letter-spacing:.04em; text-transform:uppercase; padding:3px 0; transform:rotate(-40deg);
}
.feature-wish{
  position:absolute; top:8px; right:8px; z-index:5;   /* z-index: stays above the image slider */
  width:32px; height:32px; border-radius:50%; cursor:pointer; font-size:14px;
  background:rgba(255,255,255,0.95); display:flex; align-items:center; justify-content:center; color:var(--purple-800);
  box-shadow:0 3px 10px rgba(43,0,59,.22); transition:transform .2s var(--ease);
}
.feature-wish:hover{transform:scale(1.12);}
.feature-wish svg{width:14px; height:14px;}
.feature-wish.active{color:var(--gold-600);}
.feature-wish.active i{color: red;}
.feature-body{padding:10px 12px 12px;}
.feature-body .product-cat{font-size:9.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--gold-600); font-weight:700;}
.feature-body h4{font-size:13px; font-weight:600; margin:5px 0 3px; color:var(--ink);}
.feature-pack{font-size:10.5px; color:var(--ink-soft); display:block; margin-bottom:8px;}

/* ===== Featured Collection — premium carousel ===== */
.fc-block{padding-top:30px;}
.fc-section{
  position:relative; overflow:hidden; isolation:isolate;
  border-radius:var(--radius-lg); border:1px solid var(--line);
  padding:26px 12px 16px;
  background:
    radial-gradient(circle at 12% 0%, rgba(228,201,127,.22), transparent 40%),
    linear-gradient(180deg, var(--purple-50), #fff);
}
.fc-section::before, .fc-section::after{          /* soft gold leaf sprigs in the top corners */
  content:""; position:absolute; z-index:-1; top:0; width:96px; height:96px; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20150%20150'%3E%3Cpath%20d='M8%20146C40%20112%2084%2064%20142%2018'%20fill='none'%20stroke='%23D9B866'%20stroke-width='1.6'%20stroke-linecap='round'/%3E%3Cellipse%20cx='17.9'%20cy='122.7'%20rx='5.472'%20ry='13.68'%20transform='rotate%28-6.7%2017.9%20122.7%29'%20fill='%23E4C97F'/%3E%3Cellipse%20cx='30.6'%20cy='134.7'%20rx='5.472'%20ry='13.68'%20transform='rotate%2893.3%2030.6%20134.7%29'%20fill='%23D9B866'/%3E%3Cellipse%20cx='34.3'%20cy='106.4'%20rx='5.01'%20ry='12.524999999999999'%20transform='rotate%28-6.1%2034.3%20106.4%29'%20fill='%23D9B866'/%3E%3Cellipse%20cx='45.9'%20cy='117.7'%20rx='5.01'%20ry='12.524999999999999'%20transform='rotate%2893.9%2045.9%20117.7%29'%20fill='%23EAD79B'/%3E%3Cellipse%20cx='52.1'%20cy='89.1'%20rx='4.548'%20ry='11.370000000000001'%20transform='rotate%28-5.2%2052.1%2089.1%29'%20fill='%23EAD79B'/%3E%3Cellipse%20cx='62.7'%20cy='99.6'%20rx='4.548'%20ry='11.370000000000001'%20transform='rotate%2894.8%2062.7%2099.6%29'%20fill='%23E4C97F'/%3E%3Cellipse%20cx='71.5'%20cy='70.9'%20rx='4.086'%20ry='10.215'%20transform='rotate%28-3.9%2071.5%2070.9%29'%20fill='%23E4C97F'/%3E%3Cellipse%20cx='80.9'%20cy='80.7'%20rx='4.086'%20ry='10.215'%20transform='rotate%2896.1%2080.9%2080.7%29'%20fill='%23D9B866'/%3E%3Cellipse%20cx='92.4'%20cy='52.2'%20rx='3.6239999999999997'%20ry='9.06'%20transform='rotate%28-2.4%2092.4%2052.2%29'%20fill='%23D9B866'/%3E%3Cellipse%20cx='100.7'%20cy='61.3'%20rx='3.6239999999999997'%20ry='9.06'%20transform='rotate%2897.6%20100.7%2061.3%29'%20fill='%23EAD79B'/%3E%3Cellipse%20cx='114.9'%20cy='33.2'%20rx='3.1619999999999995'%20ry='7.9049999999999985'%20transform='rotate%28-0.5%20114.9%2033.2%29'%20fill='%23EAD79B'/%3E%3Cellipse%20cx='122.1'%20cy='41.6'%20rx='3.1619999999999995'%20ry='7.9049999999999985'%20transform='rotate%2899.5%20122.1%2041.6%29'%20fill='%23E4C97F'/%3E%3Cellipse%20cx='142.0'%20cy='18.0'%20rx='3.5999999999999996'%20ry='10.5'%20transform='rotate%2851.6%20142.0%2018.0%29'%20fill='%23E4C97F'/%3E%3C/svg%3E") center/contain no-repeat; opacity:.5;
}
.fc-section::before{right:0;}
.fc-section::after{left:0; transform:scaleX(-1);}

/* heading */
.fc-head{display:flex; align-items:center; justify-content:center; gap:8px; text-align:center; margin-bottom:20px;}
.fc-laurel{width:30px; height:50px; flex:none;}
.fc-laurel-r{transform:scaleX(-1);}
.fc-head h3{
  font-family:var(--font-display); font-style:italic; font-weight:700; color:var(--purple-950);
  font-size:30px; line-height:1.05; margin:0; letter-spacing:.2px;
}
.fc-head p{font-family:var(--font-display); font-size:14px; font-weight:600; color:var(--ink-soft); margin:5px 0 0;}

/* carousel */
.fc-stage{position:relative;}
.fc-track{
  display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory;
  padding:8px 12px 28px; scroll-padding-left:12px; margin:0 -12px;
  scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.fc-track::-webkit-scrollbar{display:none;}
.fc-nav{
  display:none; position:absolute; top:34%; z-index:5; width:38px; height:38px; border-radius:50%;
  align-items:center; justify-content:center; cursor:pointer; font-size:14px;
  background:#fff; color:var(--purple-800); border:1px solid var(--line);
  box-shadow:0 5px 14px rgba(43,0,59,.2); transition:transform .2s var(--ease), background .2s;
}
.fc-nav:hover{transform:scale(1.08); background:var(--purple-50);}
.fc-prev{left:-6px;} .fc-next{right:-6px;}

/* card */
.fc-card{
  flex:0 0 calc((100% - 12px) / 2); scroll-snap-align:start; min-width:0;
  display:flex; flex-direction:column; text-align:center; overflow:hidden;
  background:#fff; border:1px solid var(--line); border-radius:20px;
  box-shadow:var(--shadow-sm);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s;
}
.fc-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:var(--gold-300);}
.fc-media{position:relative; aspect-ratio:1/.92; cursor:pointer; overflow:hidden; background:var(--purple-100); isolation:isolate;}
.fc-media > img, .fc-media > div:not(.fc-wave){position:absolute; inset:0; width:100%; height:100%; z-index:0;}
.fc-media > img{object-fit:cover;}
.fc-wave{                      /* curved gold-edged swoosh between photo and details */
  position:absolute; z-index:1; left:0; right:0; bottom:-1px; height:22px; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V23C50 5 130 -4 200 14V34Z' fill='%23ffffff'/%3E%3Cpath d='M0 23C50 5 130 -4 200 14' fill='none' stroke='%23C9A24B' stroke-width='2' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
.fc-badge{
  position:absolute; z-index:2; top:10px; left:10px; display:inline-flex; align-items:center; gap:5px;
  padding:5px 10px 5px 8px; border-radius:999px; font-size:10.5px; font-weight:700; letter-spacing:.03em; color:var(--gold-300);
  background:var(--purple-950); border:1px solid var(--gold-500);
  box-shadow:0 3px 8px rgba(43,0,59,.25); max-width:calc(100% - 58px); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.fc-badge i{color:var(--gold-300); font-size:10.5px;}
.fc-heart{
  position:absolute; z-index:2; top:9px; right:9px; width:32px; height:32px; border-radius:50%; cursor:pointer;
  display:flex; align-items:center; justify-content:center; font-size:14px;
  background:rgba(255,255,255,.94); color:var(--purple-800); box-shadow:0 3px 9px rgba(43,0,59,.22);
  transition:transform .2s var(--ease);
}
.fc-heart:hover{transform:scale(1.12);}
.fc-heart.active i{color:#e0394f;}

.fc-body{display:flex; flex-direction:column; align-items:center; flex:1; padding:0 9px 14px; margin-top:-4px;}
.fc-body h4{
  font-family:var(--font-display); font-weight:700; font-size:18px; line-height:1.12; color:var(--purple-800);
  margin:0 0 5px; cursor:pointer; min-height:2.24em; display:flex; align-items:center; justify-content:center;
}
.fc-desc{
  font-family:var(--font-body); font-weight:400; font-size:11.5px; line-height:1.45; color:var(--ink-soft); margin:0 0 10px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.9em;
}
.fc-chips{display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-bottom:9px; min-height:26px;}
.fc-chip{
  font-family:var(--font-body); font-size:11.5px; font-weight:700; line-height:1; padding:6px 12px; border-radius:10px; cursor:pointer;
  color:var(--ink); background:#fff; border:2px solid rgba(74,14,99,.28); transition:all .15s ease;
}
.fc-chip:hover{border-color:var(--purple-950);}
.fc-chip.active{background:var(--purple-950); border-color:var(--purple-950); color:#fff;}
.fc-chip.static{cursor:default;}
.fc-chip.oos{opacity:.5; text-decoration:line-through;}
.fc-chip.oos.active{opacity:1; background:var(--purple-950); color:#fff; border-color:var(--purple-950); text-decoration:line-through;}
.fc-price{
  display:flex; align-items:baseline; justify-content:center; gap:6px; flex-wrap:wrap; margin-bottom:11px;
  font-family:var(--font-body); line-height:1;
}
.fc-price b{font-size:21px; font-weight:800; color:var(--purple-950);}
.fc-price s{font-size:11.5px; font-weight:500; color:var(--ink-soft);}
.fc-add{
  margin-top:auto; width:100%; height:40px; display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer;
  font-family:var(--font-body); font-size:13px; font-weight:600; color:var(--gold-300);
  background:linear-gradient(120deg, var(--purple-800), var(--purple-950)); border:1px solid var(--gold-500); border-radius:999px;
  box-shadow:0 6px 14px rgba(43,0,59,.28);
  transition:transform .2s var(--ease), filter .2s;
}
.fc-add i{font-size:12.5px;}
.fc-add:disabled{cursor:not-allowed; color:var(--ink-soft); background:var(--purple-100); border-color:var(--line); box-shadow:none; filter:none;}
.fc-add:disabled:active{transform:none;}
.fc-add:hover{filter:brightness(1.12);}
.fc-add:active{transform:scale(.97);}

/* dots */
.fc-dots{display:flex; justify-content:center; gap:7px; margin:-10px 0 16px;}
.fc-dots[hidden]{display:none;}
.fc-dot{width:9px; height:9px; padding:0; border-radius:50%; cursor:pointer; background:var(--gold-300); opacity:.8; transition:all .25s var(--ease);}
.fc-dot.active{background:var(--purple-950); opacity:1; transform:scale(1.2);}

/* trust bar + View All */
.fc-trust{
  display:flex; flex-direction:column; gap:14px; padding:16px 14px; border-radius:26px;
  background:linear-gradient(100deg, var(--purple-950), var(--purple-800) 50%, var(--purple-950)); border:1px solid var(--gold-500);
  box-shadow:0 10px 24px rgba(43,0,59,.25);
}
.fc-trust-list{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:14px 10px;}
.fc-trust-list li{display:flex; align-items:center; gap:9px; min-width:0; color:#f4ead0; font-family:var(--font-body); font-size:11.5px; font-weight:500; line-height:1.3;}
.fc-ti{
  flex:none; width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  border:1.5px solid var(--gold-500); color:var(--gold-300); font-size:15px;
}
.fc-viewall{
  display:flex; align-items:center; justify-content:center; gap:10px; height:44px; padding:0 24px; cursor:pointer; white-space:nowrap;
  font-family:var(--font-body); font-size:13.5px; font-weight:700; color:var(--purple-950);
  background:linear-gradient(120deg, var(--gold-300), var(--gold-600)); border-radius:999px; border:none;
  box-shadow:0 5px 14px rgba(0,0,0,.28); transition:filter .2s, transform .2s var(--ease);
}
.fc-viewall:hover{filter:brightness(1.06); transform:translateY(-1px);}
.fc-viewall i{font-size:13px;}

@media (max-width:399px){
  .fc-trust{padding:14px 12px;}
  .fc-trust-list{gap:12px 6px;}
  .fc-trust-list li{gap:6px; font-size:11px;}
  .fc-ti{width:32px; height:32px; font-size:13px;}
}
@media (min-width:700px){
  .fc-section{padding:32px 28px 22px;}
  .fc-laurel{width:42px; height:70px;}
  .fc-section::before, .fc-section::after{width:130px; height:130px;}
  .fc-head{gap:12px; margin-bottom:26px;}
  .fc-head h3{font-size:42px;}
  .fc-head p{font-size:18px;}
  .fc-stage{padding:0 24px;}
  .fc-nav{display:flex;}
  .fc-prev{left:-10px;} .fc-next{right:-10px;}
  .fc-track{gap:18px;}
  .fc-card{flex-basis:calc((100% - 36px) / 3);}
  .fc-body h4{font-size:20px; min-height:1.2em;}
  .fc-desc{font-size:12px;}
  /* tablet: 4 equal columns, "View All Collection" centered underneath */
  .fc-trust{flex-direction:column; align-items:center; border-radius:32px; padding:18px 22px 20px; gap:16px;}
  .fc-trust-list{display:grid; grid-template-columns:repeat(4,1fr); gap:0; width:100%;}
  .fc-trust-list li{justify-content:center; gap:6px; padding:0 6px; font-size:11.5px; white-space:nowrap; border-left:1px solid rgba(228,201,127,.35);}
  .fc-ti{width:34px; height:34px; font-size:14px;}
  .fc-trust-list li:first-child{border-left:none;}
  .fc-viewall{flex:none; min-width:240px;}
}
@media (min-width:1000px){
  .fc-track{gap:20px;}
  .fc-card{flex-basis:calc((100% - 80px) / 5);}
  .fc-body h4{font-size:19.5px;}
}
@media (min-width:1100px){
  /* desktop: 4 equal columns fill the bar, button sits at the right, everything vertically centered */
  .fc-trust{flex-direction:row; align-items:center; justify-content:space-between; border-radius:999px; padding:14px 18px 14px 14px; gap:22px;}
  .fc-trust-list{flex:1; width:auto;}
  .fc-trust-list li{gap:9px; padding:0 8px; font-size:12.5px;}
  .fc-ti{width:38px; height:38px; font-size:15px;}
  .fc-viewall{min-width:0;}
}
@media (prefers-reduced-motion:reduce){
  .fc-card, .fc-nav, .fc-dot{transition:none;}
}

/* Trust cards */
.trust-block{padding-top:34px;}
.trust-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px;}
.trust-card{background:var(--purple-50); border:1px solid var(--line); border-radius:var(--radius-md); padding:18px 14px;}
.trust-card i{font-size:24px; color:var(--gold-600); margin-bottom:10px;}
.trust-card h4{font-family:var(--font-display); font-size:15.5px; margin:0 0 5px; color:var(--purple-950);}
.trust-card p{font-size:11.5px; color:var(--ink-soft); line-height:1.5; margin:0;}

/* Story block */
.story-block{padding:40px 16px; display:flex; flex-direction:column; gap:20px;}
.story-media{position:relative; width:100%; min-width:0; max-width:100%; border-radius:var(--radius-lg); overflow:hidden; aspect-ratio:16/9; background:var(--purple-950); box-shadow:var(--shadow-md); isolation:isolate; transform:translateZ(0);}
.story-media video{position:absolute; inset:0; display:block; width:100%; height:100%; max-width:100%; object-fit:cover; object-position:center; border-radius:inherit; pointer-events:none; background:var(--purple-950);}
.story-copy h3{font-family:var(--font-display); font-size:23px; color:var(--purple-950); margin:0 0 10px;}
.story-copy p{font-size:13.5px; color:var(--ink-soft); line-height:1.7;}
.story-copy em{color:var(--purple-950); font-style:italic;}

/* Newsletter */
.newsletter-block{background:var(--purple-950); color:var(--white); padding:44px 20px; text-align:center;}
.newsletter-block h3{font-family:var(--font-display); font-size:22px; margin:0 0 20px; font-weight:700;}
.newsletter-block form{display:flex; flex-direction:column; gap:10px; max-width:340px; margin:0 auto;}
.newsletter-block input{padding:13px 18px; border-radius:999px; border:1.5px solid rgba(255,255,255,0.25); background:rgba(255,255,255,0.06); color:var(--white); font-family:inherit; font-size:13.5px;}
.newsletter-block input::placeholder{color:rgba(255,255,255,0.5);}
.newsletter-block button{padding:13px; border-radius:999px; background:linear-gradient(120deg,var(--gold-300),var(--gold-600)); color:var(--purple-950); font-weight:700; font-size:13.5px; border:none;}
#newsletterNote{margin-top:12px; font-size:12.5px; color:var(--gold-300); min-height:16px;}

/* =========================================================
   Category / listing screen
   ========================================================= */
.listing-layout{display:flex; align-items:flex-start; min-height:70vh;}
.cat-rail{
  width:78px; flex-shrink:0; background:var(--purple-50); border-right:1px solid var(--line);
  padding:12px 0; display:flex; flex-direction:column; gap:4px;
  position:sticky; top:var(--header-h); z-index:5;
  max-height:calc(100vh - var(--header-h)); overflow-y:auto;
}
.rail-item{
  display:flex; flex-direction:column; align-items:center; gap:6px;
  padding:12px 4px; border-left:3px solid transparent;
  font-size:9.5px; font-weight:600; color:var(--ink-soft); text-align:center;
  transition:all .2s var(--ease);
}
.rail-item img{width:34px; height:34px; border-radius:9px; object-fit:cover;}
.rail-item .rail-icon-wrap{width:34px; height:34px; border-radius:9px; background:var(--purple-100); display:flex; align-items:center; justify-content:center;}
.rail-item .rail-icon-wrap i{font-size:18px; color:var(--purple-800);}
.rail-item.active{border-left-color:var(--gold-500); background:var(--white); color:var(--purple-950);}

.listing-main{flex:1; padding:14px 16px 30px; min-width:0;}
.instock-row{display:flex; align-items:center; gap:10px; margin-bottom:16px;}
.info-dot{
  width:18px; height:18px; border-radius:50%; background:var(--purple-100); color:var(--purple-800);
  font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center;
}
.toggle-row{display:flex; align-items:center; gap:10px; margin-left:auto; font-size:12.5px; font-weight:600; color:var(--ink);}
.toggle-row[hidden]{display:none;}
.toggle-row input{display:none;}
.toggle-switch{
  width:36px; height:20px; border-radius:999px; background:var(--line); position:relative; transition:background .2s var(--ease);
}
.toggle-switch::after{content:''; position:absolute; top:2px; left:2px; width:16px; height:16px; border-radius:50%; background:var(--white); box-shadow:var(--shadow-sm); transition:transform .2s var(--ease);}
.toggle-row input:checked + .toggle-switch{background:var(--gold-500);}
.toggle-row input:checked + .toggle-switch::after{transform:translateX(16px);}

.listing-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px;}
.listing-card{
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md);
  overflow:hidden; position:relative;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.listing-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md);}
.listing-card.oos{opacity:.5; pointer-events:none;}
.listing-media{position:relative; aspect-ratio:1/1; background:var(--purple-100); cursor:pointer;}
.listing-media img{width:100%; height:100%; object-fit:cover;}
.listing-body{padding:10px 12px 12px;}
.listing-body h4{font-size:13px; font-weight:600; margin:0 0 3px; color:var(--ink);}
.listing-body .sub{font-size:10.5px; color:var(--ink-soft); display:block; margin-bottom:6px;}
.listing-price{font-weight:800; color:var(--purple-950); font-size:14px; display:block; margin-bottom:2px;}
.listing-price small{font-weight:400; color:var(--ink-soft); font-size:10.5px;}
.pack-select{
  width:100%;
  font-family:inherit;
  font-size:11.5px;
  color:var(--ink);
  background:#F3E8F7;
  border:1px solid rgba(74,14,99,.15);
  border-radius:8px;
  padding:5px 8px;
  margin-bottom:6px;
  cursor:pointer;
}
.modal-info .pack-select{
  width:auto;
  font-size:13px;
  padding:6px 10px;
  margin:4px 0 8px;
}
.qty-selector{ margin:6px 0 10px; }
.qty-selector-label{ font-size:13px; color:var(--ink); margin-bottom:8px; }
.qty-selector-label b{ font-weight:700; }

.qty-pill-row{ display:flex; flex-wrap:wrap; gap:8px; }
.qty-pill-row-card{ margin-bottom:6px; }

.qty-pill{
  display:flex;
  flex-direction:column;
  align-items:center;
  min-width:66px;
  padding:6px 12px;
  border:2px solid rgba(74,14,99,.28);
  border-radius:10px;
  background:#fff;
  cursor:pointer;
  font-family:inherit;
  transition:all .15s ease;
}
.qty-pill:hover{ border-color:var(--purple-950); }

.qty-pill-label{ font-size:13px; font-weight:700; color:var(--ink); }
.qty-pill-sub{ font-size:10px; color:var(--ink-soft); margin-top:2px; }

.qty-pill.active{
  background:var(--purple-950) !important;
  border-color:var(--purple-950) !important;
}
.qty-pill.active .qty-pill-label,
.qty-pill.active .qty-pill-sub{ color:#fff !important; }

.qty-pill-sm{ min-width:0; padding:5px 10px; }
.qty-pill-sm .qty-pill-label{ font-size:11.5px; }
.listing-source{font-size:10px; font-style:italic; color:var(--gold-600); display:block; margin-bottom:8px;}

/* =========================================================
   Orders empty
   ========================================================= */
.orders-empty{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
  min-height:60vh; text-align:center; padding:40px 24px;
}
.orders-empty i{font-size:52px; color:var(--line);}
.orders-empty h3{font-family:var(--font-display); font-size:22px; color:var(--purple-950); margin:0;}
.orders-empty p{font-size:13.5px; color:var(--ink-soft); max-width:32ch; margin:0;}
.btn-gold{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:13px 26px; border-radius:999px; font-weight:700; font-size:13.5px;
  background:linear-gradient(120deg,var(--gold-300),var(--gold-600)); color:var(--purple-950); border:none;
  transition:transform .2s var(--ease);
}
.btn-gold:hover{transform:translateY(-2px);}
.btn-block{width:100%;}

/* =========================================================
   Footer (Black & Gold)
   ========================================================= */
.site-footer{
  background:linear-gradient(180deg,#2B003B 0%,#4A0E63 100%);
  color:rgba(255,255,255,0.8);
  padding:40px 16px 0;
  border-top:2px solid var(--gold-500);
}
.footer-top{
  max-width:1920px; margin:0 auto;
  display:grid; grid-template-columns:1fr; gap:28px;
  padding-bottom:30px;
}
.footer-brand p{font-size:13px; line-height:1.7; margin:14px 0 16px; color:rgba(255,255,255,0.85);}
.footer-sub h3{font-family:var(--font-display); font-size:22px; font-weight:700; margin-top:30px; margin-bottom:1px; color:var(--gold-300);}

.footer-col h4{
  font-family:var(--font-body);
  color:var(--gold-300);
  font-size:13px; font-weight:600;
  letter-spacing:1.5px; text-transform:uppercase;
  margin:0 0 16px; padding-bottom:8px; position:relative;
}
.footer-col h4::after{
  content:""; position:absolute; left:0; bottom:0;
  width:32px; height:1px; background:var(--gold-500);
}
.footer-col a{
  display:block; font-size:13px; padding:5px 0;
  color:rgba(255,255,255,0.8); transition:color .2s, padding-left .2s;
}
.footer-col a:hover{color:var(--gold-300); padding-left:4px;}

.footer-social{display:flex; gap:12px;}
.footer-social a{
  display:flex !important; align-items:center; justify-content:center;
  width:34px; height:34px; padding:0 !important;
  border:1px solid var(--gold-500); border-radius:50%;
  color:var(--gold-300); font-size:14px;
}
.footer-social a:hover{background:var(--gold-500); color:#000; padding-left:0 !important;}

.contact-line{display:flex; gap:12px; align-items:flex-start; font-size:13px; line-height:1.5; margin:0 0 14px;}
.contact-line i{color:var(--gold-500); width:16px; margin-top:3px; text-align:center;}
.contact-line small{color:rgba(255,255,255,0.6);}

/* Footer brand video */
.footer-media{
  position:relative; width:100%; min-width:0; max-width:520px; aspect-ratio:16/9;
  border-radius:14px; overflow:hidden; background:#000;
  border:1px solid rgba(201,162,75,0.55);
  box-shadow:0 10px 28px rgba(0,0,0,0.45), 0 0 0 4px rgba(201,162,75,0.08);
}
.footer-media video{position:absolute; inset:0; display:block; width:100%; height:100%; max-width:100%; object-fit:cover; object-position:center; border-radius:inherit; pointer-events:none; background:#000;}
.footer-media-col{padding-top:2px;}

.footer-bottom{
  max-width:1920px; margin:0 auto; padding:20px 0 30px;
  text-align:center; font-size:12px; color:rgba(255,255,255,0.5);
  border-top:1px solid rgba(201,162,75,0.25);
}

/* =========================================================
   Cart drawer
   ========================================================= */
.cart-drawer{
  position:fixed; top:0; right:0; bottom:0; width:min(400px,92vw);
  background:var(--white); z-index:401;
  transform:translateX(100%); transition:transform .35s var(--ease);
  display:flex; flex-direction:column;
}
.cart-drawer.open{transform:translateX(0);}
.cart-head{display:flex; justify-content:space-between; align-items:center; padding:20px; border-bottom:1px solid var(--line);}
.cart-head h3{font-family:var(--font-display); font-size:20px; margin:0; color:var(--purple-950);}
#cartClose{font-size:24px; color:var(--ink-soft);}
#wishlistClose{font-size:24px; color:var(--ink-soft);}
.cart-items{flex:1; overflow-y:auto; padding:6px 20px;}
.cart-empty{display:flex; flex-direction:column; align-items:center; justify-content:center; height:100%; gap:12px; color:var(--ink-soft); text-align:center; padding:30px;}
.cart-empty i{font-size:42px; color:var(--line);}
.cart-line{display:flex; gap:12px; padding:14px 0; border-bottom:1px solid var(--line);}
.cart-line img{width:58px; height:58px; border-radius:10px; object-fit:cover; flex-shrink:0;}
.cart-line-info{flex:1; display:flex; flex-direction:column; gap:3px; min-width:0;}
.cart-line-name{font-weight:600; font-size:13.5px; color:var(--purple-950);}
.cart-line-pack{font-size:11px; color:var(--ink-soft);}
.cart-line-controls{display:flex; align-items:center; gap:8px; margin-top:2px;}
.qty-btn{width:22px; height:22px; border-radius:50%; border:1px solid var(--line); background:var(--white); font-size:13px;}
.cart-line-remove{margin-left:auto; font-size:11px; color:var(--ink-soft); text-decoration:underline;}
.cart-line-price{font-weight:700; font-size:13px; color:var(--purple-950); white-space:nowrap;}
.cart-footer{padding:16px 20px 22px; border-top:1px solid var(--line); display:none;}
.cart-footer.show{display:block;}
.cart-total-row{display:flex; justify-content:space-between; font-weight:700; font-size:16px; color:var(--purple-950); margin-bottom:5px;}
.cart-shipping-note{font-size:11.5px; color:var(--ink-soft); margin:0 0 14px;}

/* =========================================================
   Quick view modal
   ========================================================= */
.product-modal{
  position:fixed; top:50%; left:50%; transform:translate(-50%,-46%);
  width:min(900px,94vw); max-height:88vh; overflow-y:auto; overscroll-behavior:contain;
  background:var(--white); border-radius:var(--radius-lg); z-index:401;
  opacity:0; visibility:hidden; transition:opacity .3s var(--ease), transform .3s var(--ease);
}
.product-modal.open{opacity:1; visibility:visible; transform:translate(-50%,-50%);}
.modal-close{position:absolute; top:14px; right:14px; z-index:2; width:34px; height:34px; border-radius:50%; background:var(--white); box-shadow:var(--shadow-sm); font-size:20px; color:var(--purple-950);}
.modal-body{display:flex; flex-direction:column;}
/* Image: normal size (not full-screen) so title, pack sizes & description are visible without long scrolling */
.modal-media{height:min(300px,38vh); overflow:hidden; border-radius:var(--radius-lg) var(--radius-lg) 0 0; background:var(--purple-100); flex-shrink:0;}
.modal-media img{width:100%; height:100%; object-fit:cover;}
.modal-media .img-slider-dots{bottom:12px;}
.modal-info{padding:20px 22px 24px; display:flex; flex-direction:column; gap:10px; min-width:0;}
.modal-info h2{font-family:var(--font-display); font-size:24px; color:var(--purple-950); margin:0;}
.modal-price{font-size:22px; font-weight:800; color:var(--purple-950);}
.modal-price small{font-weight:400; color:var(--ink-soft); font-size:13px; text-decoration:line-through; margin-left:6px;}
.modal-offer-tag{align-self:flex-start; font-size:11.5px; font-weight:700; color:#8a6a1f; background:#fbf2d9; border-radius:999px; padding:4px 11px;}
.modal-desc-wrap{border-top:1px solid var(--line); padding-top:12px; margin-top:2px;}
.modal-desc-wrap h4{margin:0 0 6px; font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-soft);}
.modal-desc{font-size:14px; color:var(--ink); line-height:1.7; white-space:pre-line; margin:0;}
.modal-actions{display:flex; align-items:center; gap:12px; margin-top:8px; flex-wrap:wrap;}
.modal-qty{display:flex; align-items:center; gap:10px; border:1.5px solid var(--line); border-radius:999px; padding:7px 14px;}
.qty-pill.oos{opacity:.55;}
.qty-pill.oos .qty-pill-label{text-decoration:line-through;}
@media (min-width:768px){
  .modal-body{flex-direction:row; align-items:stretch;}
  .modal-media{width:46%; height:auto; min-height:420px; max-height:none; border-radius:var(--radius-lg) 0 0 var(--radius-lg);}
  .modal-info{width:54%; padding:32px 28px 28px; max-height:88vh; overflow-y:auto;}
  .modal-close{top:12px; right:12px;}
}

/* =========================================================
   Auth (Login / OTP / Sign Up) + Account + Addresses
   ========================================================= */
.auth-wrap{max-width:420px; margin:0 auto; padding:28px 20px 50px;}
.auth-step{display:flex; flex-direction:column;}
.auth-step[hidden]{display:none;}
.auth-icon{
  width:58px; height:58px; border-radius:50%; margin:0 auto 16px;
  display:flex; align-items:center; justify-content:center;
  background:var(--purple-100); color:var(--purple-800); font-size:24px;
}
.auth-step h2{font-family:var(--font-display); font-size:24px; color:var(--purple-950); margin:0 0 6px; text-align:center;}
.auth-sub{font-size:13px; color:var(--ink-soft); text-align:center; margin:0 0 22px; line-height:1.6;}
.phone-input-row{display:flex; align-items:center; gap:10px; border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:0 14px;}
.phone-input-row .phone-prefix{font-weight:700; color:var(--ink-soft); font-size:14px;}
.phone-input-row input{border:none; padding:13px 0; font-size:14px; flex:1; outline:none; font-family:inherit; color:var(--ink); background:none;}
.otp-input-row{display:flex; gap:12px; justify-content:center; margin-bottom:8px;}
.otp-box{
  width:52px; height:56px; text-align:center; font-size:22px; font-weight:700;
  border:1.5px solid var(--line); border-radius:var(--radius-sm); color:var(--purple-950);
  font-family:inherit;
}
.otp-box:focus{border-color:var(--gold-500); outline:none;}
.auth-demo-note{font-size:11.5px; color:var(--gold-600); background:var(--purple-50); border-radius:var(--radius-sm); padding:9px 12px; text-align:center; margin:-4px 0 16px;}
.profile-photo-picker{display:flex; flex-direction:column; align-items:center; gap:8px; margin-bottom:18px;}
.photo-circle{
  width:84px; height:84px; border-radius:50%; overflow:hidden; cursor:pointer;
  background:var(--purple-100); color:var(--purple-800); font-size:22px;
  display:flex; align-items:center; justify-content:center; border:2px dashed var(--gold-500);
}
.photo-circle img{width:100%; height:100%; object-fit:cover;}
.photo-hint{font-size:11.5px; color:var(--ink-soft);}

/* Account screen */
.account-wrap{max-width:480px; margin:0 auto; padding:22px 16px 40px;}
.account-guest-card{
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;
  padding:50px 24px; min-height:55vh; justify-content:center;
}
.account-guest-card i{font-size:56px; color:var(--line);}
.account-guest-card h3{font-family:var(--font-display); font-size:21px; color:var(--purple-950); margin:0;}
.account-guest-card p{font-size:13.5px; color:var(--ink-soft); max-width:30ch; margin:0 0 6px;}
.account-profile-card{
  display:flex; align-items:center; gap:14px; background:var(--purple-50);
  border-radius:var(--radius-lg); padding:18px; margin-bottom:20px;
}
.account-profile-card .photo-circle{width:60px; height:60px; font-size:18px; flex-shrink:0; cursor:default;}
.account-profile-info{flex:1; min-width:0;}
.account-profile-info h3{font-family:var(--font-display); font-size:18px; color:var(--purple-950); margin:0 0 3px;}
.account-profile-info p{font-size:12.5px; color:var(--ink-soft); margin:0;}
.acc-edit-btn{width:36px; height:36px; border-radius:50%; background:var(--white); box-shadow:var(--shadow-sm); color:var(--purple-800); flex-shrink:0;}
.account-menu-list{display:flex; flex-direction:column; border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--line);}
.account-menu-item{
  display:flex; align-items:center; gap:14px; padding:16px 18px; background:var(--white);
  border-bottom:1px solid var(--line); font-size:14px; font-weight:600; color:var(--ink); text-align:left; width:100%;
}
.account-menu-item:last-child{border-bottom:none;}
.acc-menu-icon{width:32px; height:32px; border-radius:9px; background:var(--purple-100); color:var(--purple-800); display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0;}
.account-menu-item .acc-menu-label{flex:1;}
.account-menu-item > i{color:var(--ink-soft); font-size:13px;}
.account-logout{color:var(--danger);}
.account-logout .acc-menu-icon{background:rgba(214,69,69,0.1); color:var(--danger);}

/* Addresses list (used both on My Addresses screen + checkout picker) */
.addr-list{max-width:480px; margin:0 auto; padding:18px 16px 6px; display:flex; flex-direction:column; gap:12px;}
.addr-list-compact{padding:0 0 4px;}
.addr-card{
  border:1.5px solid var(--line); border-radius:var(--radius-md); padding:16px;
  display:flex; flex-direction:column; gap:6px; cursor:pointer; position:relative;
}
.addr-card.selected{border-color:var(--gold-500); background:var(--purple-50);}
.addr-card-top{display:flex; align-items:center; gap:8px;}
.addr-card-tag{font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; background:var(--purple-100); color:var(--purple-800); padding:3px 9px; border-radius:999px;}
.addr-card-default{font-size:10.5px; font-weight:700; color:var(--success);}
.addr-card-name{font-weight:700; font-size:13.5px; color:var(--purple-950);}
.addr-card-text{font-size:12.5px; color:var(--ink-soft); line-height:1.55;}
.addr-card-actions{display:flex; gap:16px; margin-top:6px;}
.addr-card-actions button{font-size:12px; font-weight:600; color:var(--gold-600); text-decoration:underline;}
.addr-card-actions button.danger{color:var(--danger);}
.addr-empty{text-align:center; padding:40px 20px; color:var(--ink-soft); font-size:13.5px;}

.checkout-login-nudge{
  display:flex; align-items:center; gap:10px; justify-content:space-between;
  background:var(--purple-50); border:1px solid var(--purple-100); border-radius:var(--radius-sm);
  padding:11px 14px; margin-bottom:18px; font-size:12px; color:var(--ink-soft);
}
.checkout-login-nudge i{color:var(--gold-600); margin-right:4px;}
.checkout-login-nudge button{font-size:12px; font-weight:700; color:var(--purple-800); text-decoration:underline; flex-shrink:0;}

/* Order history cards (My Orders) */
.orders-wrap{max-width:560px; margin:0 auto; padding:18px 16px 40px; display:flex; flex-direction:column; gap:14px;}
.order-card{border:1px solid var(--line); border-radius:var(--radius-md); padding:16px;}
.order-card-head{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:10px; gap:10px;}
.order-card-id{font-weight:700; font-size:13px; color:var(--purple-950);}
.order-card-date{font-size:11.5px; color:var(--ink-soft);}
.order-card-status{font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; background:rgba(46,139,87,0.12); color:var(--success); padding:4px 10px; border-radius:999px; white-space:nowrap;}
.order-card-items{font-size:12.5px; color:var(--ink-soft); line-height:1.7; margin:0 0 10px;}
.order-card-foot{display:flex; justify-content:space-between; align-items:center; border-top:1px dashed var(--line); padding-top:10px; font-size:13px;}
.order-card-total{font-weight:700; color:var(--purple-950);}
.order-card-addr{font-size:11.5px; color:var(--ink-soft);}

/* =========================================================
   Toast
   ========================================================= */
.toast{
  position:fixed; bottom:82px; left:50%; transform:translateX(-50%) translateY(20px);
  background:var(--purple-950); color:var(--white); padding:12px 22px; border-radius:999px;
  font-size:13px; font-weight:500; z-index:500; box-shadow:var(--shadow-md);
  opacity:0; visibility:hidden; transition:all .3s var(--ease); max-width:90vw; text-align:center;
}
.toast.show{opacity:1; visibility:visible; transform:translateX(-50%) translateY(0);}

/* =========================================================
   Bottom nav
   ========================================================= */
.bottom-nav{
  position:fixed; bottom:0; left:0; right:0; z-index:250;
  background:var(--white); border-top:1px solid var(--line);
  display:flex;
  padding:7px 4px calc(env(safe-area-inset-bottom,0px) + 7px);
  box-shadow:0 -6px 18px rgba(43,0,59,0.08);
}
.bn-item{
  position:relative; flex:1; display:flex; flex-direction:column; align-items:center; gap:3px;
  color:var(--ink-soft); font-size:10px; font-weight:500; padding:5px 0;
}
.bn-item i{font-size:19px;}
.bn-item.active{color:var(--purple-950);}

.bn-badge{
  position:absolute; top:-2px; right:24%;
  background:var(--gold-600); color:var(--white); font-size:9px; font-weight:800;
  width:15px; height:15px; border-radius:50%; display:flex; align-items:center; justify-content:center;
}
/* =========================================================
   Checkout flow (Order Details + Payment)
   ========================================================= */
.checkout-stepper{display:flex; align-items:center; justify-content:center; gap:6px; padding:22px 16px 18px; max-width:480px; margin:0 auto;}
.step-node{display:flex; flex-direction:column; align-items:center; gap:6px; flex:0 0 auto;}
.step-circle{width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12.5px; font-weight:700; border:1.5px solid var(--line); color:var(--ink-soft); background:var(--white);}
.step-circle i{font-size:14px;}
.step-node.done .step-circle{background:var(--success); border-color:var(--success); color:var(--white);}
.step-node.active .step-circle{border-color:var(--gold-500); color:var(--purple-950); background:var(--purple-50);}
.step-label{font-size:10.5px; font-weight:600; color:var(--ink-soft); white-space:nowrap;}
.step-node.active .step-label, .step-node.done .step-label{color:var(--purple-950);}
.step-line{flex:1 1 20px; height:1.5px; background:var(--line); max-width:40px;}

.order-summary-toggle{display:flex; align-items:center; justify-content:space-between; width:calc(100% - 32px); margin:0 16px 10px; padding:13px 16px; background:var(--purple-50); border:1px solid var(--line); border-radius:var(--radius-md); font-size:13px; font-weight:700; color:var(--purple-950);}
.order-summary-toggle i{font-size:15px; transition:transform .2s var(--ease);}
.order-summary-toggle.open svg{transform:rotate(180deg);}
.order-summary-panel{max-height:0; overflow:hidden; margin:0 16px; transition:max-height .3s var(--ease); background:var(--purple-50); border-radius:0 0 var(--radius-md) var(--radius-md);}
.order-summary-panel.open{max-height:600px; padding:0 16px 14px; margin-top:-10px; border:1px solid var(--line); border-top:none;}
.order-summary-line{display:flex; gap:10px; padding:10px 0; border-bottom:1px solid var(--line); font-size:12.5px; align-items:center;}
.order-summary-line-info{flex:1; display:flex; flex-direction:column;}
.order-summary-line-info b{font-size:12.5px; color:var(--purple-950);}
.order-summary-line-info span{font-size:11px; color:var(--ink-soft);}
.order-summary-row{display:flex; justify-content:space-between; font-size:13px; color:var(--ink-soft); padding:8px 0;}
.order-summary-row.total{font-weight:800; font-size:16px; color:var(--purple-950); border-top:1px solid var(--line); margin-top:2px;}
.free-tag{color:var(--success); font-weight:700;}

.checkout-panel{max-width:480px; margin:0 auto; padding:6px 16px 40px;}
.checkout-h3{font-family:var(--font-display); font-size:19px; color:var(--purple-950); margin:20px 0 12px;}
.checkout-h3:first-child{margin-top:4px;}
.form-grid-2{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
.field{display:flex; flex-direction:column; gap:6px; margin-bottom:12px;}
.field label{font-size:11.5px; font-weight:700; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em;}
.field input, .field select{
  padding:12px 14px; border:1.5px solid var(--line); border-radius:var(--radius-sm);
  font-family:var(--font-body); font-size:13.5px; color:var(--ink); background:var(--white); width:100%;
}
.field input:focus, .field select:focus{border-color:var(--gold-500);}
.addr-type-row{display:flex; gap:8px;}
.addr-type-btn{flex:1; padding:11px; border:1.5px solid var(--line); border-radius:var(--radius-sm); font-size:12.5px; font-weight:600; color:var(--ink-soft);}
.addr-type-btn.active{border-color:var(--gold-500); background:var(--purple-50); color:var(--purple-950);}
.field-error{color:var(--danger); font-size:12px; min-height:16px; margin:2px 0 10px;}

.secure-badge{display:inline-flex; align-items:center; gap:6px; background:rgba(46,139,87,0.1); color:var(--success); font-size:11.5px; font-weight:700; padding:6px 12px; border-radius:999px; margin-bottom:14px;}
.secure-badge i{font-size:14px;}
.pay-method-list{display:flex; flex-direction:column; gap:10px; margin-bottom:16px;}
.pay-method{display:flex; align-items:center; gap:10px; border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:13px 14px; font-size:13px; font-weight:600; color:var(--ink);}
.pay-method.selected{border-color:var(--gold-500); background:var(--purple-50);}
.pay-method input{accent-color:var(--gold-600);}
.pm-icon{font-size:16px;}
.link-back{display:block; text-align:center; margin-top:14px; font-size:12.5px; color:var(--ink-soft); text-decoration:underline;}
.link-back[hidden]{display:none;}
/* OTP login: buttons are disabled while a request runs / during the resend countdown */
.btn-gold:disabled{opacity:.6; cursor:not-allowed; transform:none;}
.link-back:disabled{opacity:.55; cursor:not-allowed; text-decoration:none;}

.checkout-success{display:none; flex-direction:column; align-items:center; text-align:center; gap:12px; padding:60px 24px;}
.checkout-success:not([hidden]){display:flex;}
.checkout-success i{font-size:56px; color:var(--success);}
.checkout-success h3{font-family:var(--font-display); font-size:24px; color:var(--purple-950); margin:0;}
.checkout-success p{font-size:13.5px; color:var(--ink-soft); max-width:32ch; margin:0;}

@media (min-width:768px){
  .order-summary-toggle{display:none;}
  .order-summary-panel{max-height:600px; padding:0 16px 14px; margin:0 auto 24px; max-width:480px; border:1px solid var(--line);}
  .checkout-stepper{padding-top:32px;}
}

/* =========================================================
   Desktop / tablet responsive up-scaling
   ========================================================= */
@media (min-width:768px){
  body{padding-bottom:0;}
  .bottom-nav{display:none;}

  .app-bar{padding:16px 32px 18px;}
  body.search-on .app-bar{padding-bottom:8px;}
  .app-bar-row{max-width:1920px; margin:0 auto; width:100%;}
  .app-search-wrap{padding:8px 32px 16px;}
  .app-bar-search{max-width:1920px; margin:0 auto;}
  .banner-wrap, .section-block{padding-left:32px; padding-right:32px;}
  .banner-row{gap:20px;}
  .promo-banner{flex:0 0 46%; padding:32px 150px 32px 30px; min-height:170px;}
  .promo-banner h2{font-size:24px;}
  .promo-banner p{font-size:13.5px;}
  .promo-img{width:160px; height:160px; right:-6px; bottom:-20px;}


  .section-block{max-width:1920px; margin:0 auto;}
  .section-head h3{font-size:27px;}
  .cat-grid{grid-template-columns:repeat(7,1fr); gap:20px;}
  .feature-grid{grid-template-columns:repeat(4,1fr); gap:20px;}
  .trust-grid{grid-template-columns:repeat(4,1fr); gap:20px;}
  .deal-card{flex:0 0 220px;}

  .story-block{flex-direction:column; align-items:stretch; gap:32px; max-width:1920px; margin:0 auto; padding:60px 32px;}
  .story-media{width:100%; max-width:760px; margin:0 auto;}
  .story-copy{max-width:760px; margin:0 auto;}
  .story-copy h3{font-size:30px;}

  .newsletter-block form{flex-direction:row; max-width:480px;}
  .newsletter-block input{flex:1;}
  .newsletter-block button{padding:13px 26px;}

  .listing-layout{max-width:1920px; margin:0 auto;}
  .cat-rail{width:150px;}
  .rail-item{flex-direction:row; justify-content:flex-start; gap:10px; padding:13px 16px; font-size:12.5px;}
  .listing-grid{grid-template-columns:repeat(3,1fr); gap:18px;}

  .footer-top{
    grid-template-columns:repeat(2,1fr);
    gap:32px 0; padding-top:10px;
  }
  .footer-col{padding:0 24px; border-left:1px solid rgba(201,162,75,0.25);}
  .footer-brand{padding-left:0; border-left:none;}
  .footer-col:nth-child(odd){padding-left:0; border-left:none;}
  .footer-media-col{grid-column:1 / -1; padding:0; border-left:none; display:flex; justify-content:center;}
  .footer-media{max-width:640px;}
}
@media (min-width:1100px){
  .footer-top{
    grid-template-columns:1.5fr 1fr 1fr 1.3fr;
    gap:0;
  }
  .footer-col{padding:0 28px; border-left:1px solid rgba(201,162,75,0.25);}
  .footer-col:nth-child(odd){padding-left:28px; border-left:1px solid rgba(201,162,75,0.25);}
  .footer-brand{padding-left:0; border-left:none;}
  .footer-media-col{grid-column:auto; padding:0 0 0 28px; display:block;}
  .footer-media{max-width:none;}
}

@media (min-width:1100px){
  .listing-grid{grid-template-columns:repeat(4,1fr);}
  .cat-grid{gap:24px;}
  .promo-banner{flex:0 0 31.5%; padding:28px 120px 28px 26px; min-height:170px;}
  .promo-banner h2{font-size:20px;}
  .promo-img{width:130px; height:130px;}
}

/* =========================================================
   Top marquee ticker
   ========================================================= */
.marquee-bar{
  background:linear-gradient(120deg, var(--purple-950), var(--purple-800));
  overflow:hidden; white-space:nowrap;
  padding:8px 0;
  border-bottom:1px solid rgba(255,255,255,0.1);
}
.marquee-track{
  display:inline-flex; align-items:center; gap:16px;
  animation: marquee-scroll 20s linear infinite;
  will-change:transform;
}
.marquee-bar:hover .marquee-track{ animation-play-state:paused; }
.marquee-item{
  font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--white); flex-shrink:0;
}
.marquee-item.marquee-gold{ color:var(--gold-300); }
.marquee-sep{ color:var(--gold-500); font-size:10px; flex-shrink:0; }

@keyframes marquee-scroll{
  0%   { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}

@media (min-width:768px){
  .marquee-bar{ padding:9px 0; }
  .marquee-item{ font-size:12.5px; }
  .marquee-track{ gap:22px; animation-duration:26s; }
}

.brand-logo-img {
  height: 55px;
  width: 55px;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
  border-radius: 50%;
  border: 2px solid var(--gold-dark);
  background: none  ;
  padding: 3px;
  box-sizing: border-box;
  display: block;
  flex-shrink: 0;
}
.brand-text-img {
  height: 19px;
  width: auto;
  object-fit: contain;
}
.drawer-logo-img{ height:38px; width:38px; }
.footer-logo-img{ height:55px; filter:brightness(1.15); }

/* add this */

body > div.skiptranslate {
  display: none !important;
}
/* Google Translate top banner - force hide */
iframe.goog-te-banner-frame,
.goog-te-banner-frame,
#goog-gt-tt,
.goog-te-banner-frame.skiptranslate {
  display: none !important;
  height: 0 !important;
  visibility: hidden !important;
  position: absolute !important;
  top: -1000px !important;
}

html,
html.translated-ltr,
html.translated-rtl {
  top: 0 !important;
  position: static !important;
  margin-top: 0 !important;
}

body {
  top: 0 !important;
  position: static !important;
  margin-top: 0 !important;
}

/* Balloon popup */
.goog-te-balloon-frame {
  display: none !important;
}

.goog-text-highlight {
  background: none !important;
  box-shadow: none !important;
}

#google_translate_element,
.goog-te-gadget {
  display: none !important;
}

/* =========================================================
   Language dropdown — Mobile responsive version
   Idha un style.css file oda kadaisi la add pannu
   ========================================================= */



.lang-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
  z-index: 50;   /* mela irukura elements-ku mela varum */
}

.lang-btn {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
  padding: 6px 12px;
  border-radius: 20px;
  cursor: pointer;
  font-size: 13px;
    line-height: 1.4; 
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;

  position: relative;
  z-index: 51;
  pointer-events: auto;
}
.lang-btn > * {
  pointer-events: none;   /* button ulla irukura emoji/text nodes click ah intercept pannaathu */
}

.lang-btn:hover {
  background: rgba(255,255,255,0.1);
}

.lang-menu {
  display: none;
  position: absolute;
  top: 42px;
  right: 0;
  background: #2a0a3e;
  min-width: 150px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  border-radius: 8px;
  list-style: none;
  padding: 8px 0;
  z-index: 999;
  margin: 0;
  max-height: 260px;
  overflow-y: auto;
}

.lang-menu.show {
  display: block;
}

.lang-menu li {
  padding: 10px 16px;
  color: #fff;
  cursor: pointer;
  font-size: 14px;
}

.lang-menu li:hover {
  background: rgba(255,255,255,0.1);
}

/* =========================================================
   LOCATION / CURRENCY DROPDOWN
   ========================================================= */
.curr-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
  z-index: 50;
}

.curr-btn {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
  padding: 6px 12px;
  border-radius: 20px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1.4;
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  position: relative;
  z-index: 51;
}

.curr-btn:hover {
  background: rgba(255,255,255,0.1);
}

.curr-menu {
  display: none;
  position: absolute;
  top: 42px;
  right: 0;
  background: #2a0a3e;
  width: 260px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  border-radius: 10px;
  padding: 14px;
  z-index: 999;
}

.curr-menu.show {
  display: block;
}

.curr-detected {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 10px;
}

.curr-detected-flag {
  font-size: 26px;
  line-height: 1;
}

.curr-detected-country {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}

.curr-detected-code {
  color: rgba(255,255,255,0.6);
  font-size: 12px;
  margin-top: 2px;
}

.curr-precise-btn {
  width: 100%;
  background: rgba(201,151,74,0.15);
  border: 1px solid rgba(201,151,74,0.5);
  color: #C9974A;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.curr-precise-btn:hover {
  background: rgba(201,151,74,0.25);
}

.curr-precise-btn:disabled {
  opacity: 0.6;
  cursor: default;
}

.curr-menu-divider {
  height: 1px;
  background: rgba(255,255,255,0.12);
  margin: 12px 0;
}

.curr-search-row {
  display: flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 8px 10px;
  color: rgba(255,255,255,0.6);
  font-size: 12px;
}

.curr-search-row input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  color: #fff;
  font-size: 13px;
}

.curr-search-row input::placeholder {
  color: rgba(255,255,255,0.4);
}

.curr-country-list {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  max-height: 200px;
  overflow-y: auto;
}

.curr-country-list li {
  padding: 8px 8px;
  color: #fff;
  cursor: pointer;
  font-size: 13px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.curr-country-list li small {
  margin-left: auto;
  color: rgba(255,255,255,0.5);
  font-size: 11px;
}

.curr-country-list li:hover {
  background: rgba(255,255,255,0.1);
}

.curr-country-list .curr-no-result {
  color: rgba(255,255,255,0.5);
  cursor: default;
  justify-content: center;
}

.curr-country-list .curr-no-result:hover {
  background: transparent;
}

.curr-note {
  margin: 10px 0 0;
  font-size: 10.5px;
  line-height: 1.4;
  color: rgba(255,255,255,0.4);
}

@media (max-width: 480px) {
  .curr-btn {
    padding: 6px 8px;
    font-size: 0;
    gap: 0;
    width: 34px;
    height: 34px;
    justify-content: center;
    border-radius: 50%;
  }
  .curr-btn i { font-size: 14px; }

  .curr-menu {
    right: -8px;
    width: 84vw;
    max-width: 300px;
    top: 40px;
  }
}

/* =========================================================
   MOBILE VIEW (phones — width upto 480px)
   Button ah chinnadha pannuvom, text ah hide pannitu
   globe icon mattum kaatuvom, space save aagum
   ========================================================= */
@media (max-width: 480px) {
  .lang-btn {
    padding: 6px 8px;
    font-size: 0;         /* text hide pannuthu (Language ▾ word) */
    gap: 0;
    width: 34px;
    height: 34px;
    justify-content: center;
    border-radius: 50%;
  }

  .lang-menu {
    right: -8px;           /* screen edge ku adjust */
    min-width: 140px;
    top: 40px;
  }

  .lang-menu li {
    padding: 9px 14px;
    font-size: 13px;
  }

  /* Brand logo + wordmark ah chinnadha pannuthu,
     so icons kooda overlap aagama fit aagum */
  .app-bar-title {
    gap: 6px;
  }
  .brand-logo-img {
    height: 34px;
    width: 34px;
    padding: 3px;
    border-width: 1.5px;
  }
  .brand-text-img {
    height: 14px;
  }

  /* Header row ellame konjam tight ah pannuthu, so account/wishlist/
     cart/bell icons hamburger maathiri properly ulla fit aagum —
     edge la overflow aagi icons hide aaguradha thadukkuthu */
  .app-bar {
    padding-left: 10px;
    padding-right: 10px;
  }
  .app-bar-row {
    gap: 4px;
  }
  .app-bar-actions {
    gap: 0;
  }
  .bar-icon-btn {
    width: 32px;
    height: 32px;
  }
  .bar-icon-btn i {
    font-size: 16px;
  }
  .bar-badge {
    width: 14px;
    height: 14px;
    font-size: 8.5px;
    top: -1px;
    right: -1px;
  }
}

/* =========================================================
   VERY SMALL PHONES (width upto 360px)
   ========================================================= */
@media (max-width: 360px) {
  .lang-btn {
    width: 30px;
    height: 30px;
  }

  .lang-menu {
    min-width: 130px;
    right: -20px;
  }

  /* Innum chinna phones ku innum konjam shrink */
  .brand-logo-img {
    height: 30px;
    width: 30px;
    padding: 2px;
  }
  .brand-text-img {
    height: 12px;
  }

  .app-bar {
    padding-left: 8px;
    padding-right: 8px;
  }
  .app-bar-row {
    gap: 2px;
  }
  .bar-icon-btn {
    width: 29px;
    height: 29px;
  }
  .bar-icon-btn i {
    font-size: 15px;
  }
}

.img-slider{width:100%; height:100%; position:relative; overflow:hidden;}
.img-slider-track{
  display:flex; width:100%; height:100%;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.img-slider-track::-webkit-scrollbar{display:none;}
.img-slider-track{cursor:grab; user-select:none;}
.img-slider-track.grabbing{cursor:grabbing; scroll-snap-type:none;}
.img-slider-track img{pointer-events:none;}
.img-slider-track img{
  width:100%; height:100%; flex:0 0 100%;
  object-fit:cover;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.img-slider-dots{
  position:absolute; bottom:8px; left:50%; transform:translateX(-50%);
  display:flex; gap:5px; z-index:2; pointer-events:none;
}
.img-slider-dots .img-dot{
  width:6px; height:6px; border-radius:50%;
  background:#eac167;
  transition:background .2s, width .2s;
}
.img-slider-dots .img-dot.active{background:#B08A34; width:14px; border-radius:4px;}
/* Products loading / empty / error message */
.catalog-status{margin:16px;padding:14px 16px;border-radius:12px;background:#F3E8F7;color:#4A0E63;font-size:14px;text-align:center;}
.catalog-status .link-back{display:inline;margin-left:6px;text-decoration:underline;cursor:pointer;background:none;border:0;color:inherit;font:inherit;}

/* ---------- Razorpay payment ---------- */
.rzp-note{display:flex; align-items:flex-start; gap:10px; background:var(--purple-50); border:1px dashed var(--gold-500); border-radius:var(--radius-sm); padding:12px 14px; font-size:12.5px; line-height:1.5; color:var(--ink); margin-bottom:16px;}
.rzp-note i{color:var(--gold-600); font-size:15px; margin-top:2px;}
#ckPayBtn[disabled]{opacity:.65; cursor:not-allowed;}
#ckPayBtn .rzp-spin{display:inline-block; width:14px; height:14px; margin-right:8px; border:2px solid rgba(0,0,0,.25); border-top-color:#2B003B; border-radius:50%; vertical-align:-2px; animation:rzpSpin .7s linear infinite;}
@keyframes rzpSpin{to{transform:rotate(360deg);}}


/* ---------- Story video: desktop side-by-side (>=1024px) ---------- */
@media (min-width:1024px){
  .story-block{flex-direction:row; align-items:center; gap:60px; padding:70px 32px;}
  .story-media{flex:1 1 0; width:auto; max-width:none; margin:0;}
  .story-copy{flex:1 1 0; max-width:none; margin:0;}
}
/* Phones: slightly taller frame so the video feels bigger */
@media (max-width:480px){
  .story-block{padding:32px 16px;}
  .story-media{aspect-ratio:4/3;}
}
/* Very large screens: keep video from getting huge */
@media (min-width:1600px){
  .story-media{max-width:960px; margin-inline:auto;}
}

/* ===== Bill (order success) ===== */
.checkout-success.has-bill{align-items:stretch; padding:28px 14px;}
.checkout-success.has-bill > i, .checkout-success.has-bill > h3, .checkout-success.has-bill > p{align-self:center;}
.checkout-success.has-bill > p{max-width:60ch;}
.checkout-success .bill-actions{display:flex; gap:10px; justify-content:center; flex-wrap:wrap;}
.checkout-success .bill-actions i{font-size:inherit; color:inherit;}
.checkout-success .bill-btn-alt{background:#fff; color:var(--purple-950); border:1.5px solid var(--purple-950);}
.checkout-success .bill-scroll{width:100%; max-width:820px; margin:6px auto; text-align:left;}
.checkout-success .bill-scroll:empty{display:none;}
.checkout-success.has-bill > #ckSuccessHomeBtn{align-self:center;}

/* ---------- Order tracking (My Orders + Track an order) ---------- */
.order-card-status.st-out-for-delivery{background:rgba(46,139,87,0.12); color:var(--success);}
.order-card-status.st-dispatched{background:rgba(46,139,87,0.12); color:var(--success);}
.order-card-status.st-processing,.order-card-status.st-packed,.order-card-status.st-ready-to-dispatch{background:rgba(46,139,87,0.12); color:var(--success);}
.order-card-status.st-cancelled{background:rgba(192,57,43,0.12); color:#C0392B;}
.trk{margin:2px 0 12px;}
.trk-steps{display:flex; align-items:flex-start; padding:6px 0 4px;}
.trk-step{display:flex; flex-direction:column; align-items:center; gap:4px; width:25%; flex:0 0 auto; text-align:center;}
.trk-ic{width:34px; height:34px; border-radius:50%; display:grid; place-items:center; font-size:14px; background:#F1EBF4; color:#9B8AA4;}
.trk-step.done .trk-ic{background:var(--success,#2E8B57); color:#fff;}
.trk-step.active .trk-ic{background:var(--gold,#C9974A); color:#fff; box-shadow:0 0 0 4px rgba(201,151,74,0.2);}
.trk-lb{font-size:11px; font-weight:600; color:var(--ink-soft); line-height:1.25;}
.trk-step.done .trk-lb,.trk-step.active .trk-lb{color:var(--purple-950);}
.trk-tm{font-size:10px; color:var(--ink-soft); min-height:12px;}
.trk-line{flex:1 1 auto; height:2px; background:#E8E1EC; margin-top:17px;}
.trk-line.done{background:var(--success,#2E8B57);}
.trk-info{display:flex; flex-wrap:wrap; gap:6px 14px; font-size:12px; color:var(--ink-soft); margin-top:8px;}
.trk-info i{color:var(--gold,#C9974A); margin-right:4px;}
.trk-note{font-size:12px; margin-top:6px; padding:8px 10px; border-radius:8px; background:#F8F4FA; color:var(--purple-950);}
.trk-muted{font-size:12px; color:var(--ink-soft);}
.trk-err{font-size:12.5px; color:#C0392B; margin-top:8px;}
.trk-cancel{font-size:13px; color:#C0392B; font-weight:600;}
.trk-box{max-width:560px; margin:10px auto 40px; padding:18px 16px; border:1px solid var(--line); border-radius:var(--radius-md);}
.trk-box h4{margin:0 0 4px; font-size:15px; color:var(--purple-950);}
.trk-box h4 i{color:var(--gold,#C9974A); margin-right:6px;}
.trk-box p{margin:0 0 12px; font-size:12px; color:var(--ink-soft);}
.trk-form{display:flex; gap:8px; flex-wrap:wrap;}
.trk-form input{flex:1 1 150px; padding:11px 12px; border:1px solid var(--line); border-radius:10px; font:inherit; font-size:13px;}
.trk-result-head{display:flex; justify-content:space-between; align-items:center; margin:14px 0 4px;}


/* =========================================================
   Track Order page + My Orders tweaks + success buttons
   ========================================================= */
.trk-step{width:auto; flex:0 0 64px;}
.trk-lb{font-size:10.5px;}
#ordersScreenWrap > .trk-box:first-child{margin:16px auto 0; width:calc(100% - 32px);}

.order-card-actions{display:flex; gap:8px; margin-top:12px;}
.btn-track{flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:10px 12px; border-radius:10px; font:inherit; font-size:12.5px; font-weight:700; cursor:pointer;
  background:linear-gradient(120deg,var(--gold-300),var(--gold-600)); color:var(--purple-950); border:1.5px solid transparent; transition:transform .15s;}
.btn-track:hover{transform:translateY(-1px);}
.btn-track-alt{background:#fff; color:var(--purple-950); border-color:var(--purple-950);}

.checkout-success .success-btn-row{display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:6px;}
.checkout-success .success-btn-row .btn-gold{flex:1 1 170px; max-width:240px; display:inline-flex; align-items:center; justify-content:center; gap:8px;}
.checkout-success .success-btn-row i{font-size:inherit; color:inherit;}
.checkout-success .btn-track-outline{background:#fff; color:var(--purple-950); border:1.5px solid var(--purple-950);}
.checkout-success.has-bill > .success-btn-row{align-self:center;}

.tkp-wrap{max-width:560px; margin:0 auto; padding:18px 16px 40px; display:flex; flex-direction:column; gap:14px;}
.tkp-head{display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 18px; border-radius:var(--radius-md);
  background:linear-gradient(120deg,var(--purple-800),var(--purple-950)); color:#fff;}
.tkp-oid{font-family:var(--font-display); font-size:20px; font-weight:700; color:var(--gold-300); letter-spacing:.5px;}
.tkp-meta{font-size:12px; color:rgba(255,255,255,.8); margin-top:2px;}
.tkp-head .order-card-status{background:rgba(255,255,255,.14); color:#fff;}
.tkp-card{border:1px solid var(--line); border-radius:var(--radius-md); padding:18px 16px; background:#fff;}
.tkp-card h4{margin:0 0 14px; font-size:14.5px; color:var(--purple-950);}
.tkp-card h4 i{color:var(--gold,#C9974A); margin-right:7px;}
.tkp-steps{display:flex; flex-direction:column;}
.tkp-step{position:relative; display:flex; gap:14px; padding-bottom:22px;}
.tkp-step:last-child{padding-bottom:0;}
.tkp-step::before{content:''; position:absolute; left:19px; top:40px; bottom:2px; width:2px; background:#E8E1EC;}
.tkp-step:last-child::before{display:none;}
.tkp-step.done::before{background:var(--success,#2E8B57);}
.tkp-ic{flex:0 0 40px; width:40px; height:40px; border-radius:50%; display:grid; place-items:center; font-size:16px; background:#F1EBF4; color:#9B8AA4; z-index:1;}
.tkp-step.done .tkp-ic{background:var(--success,#2E8B57); color:#fff;}
.tkp-step.active .tkp-ic{background:var(--gold,#C9974A); color:#fff; animation:tkpPulse 1.8s infinite;}
@keyframes tkpPulse{0%{box-shadow:0 0 0 0 rgba(201,151,74,.45);}70%{box-shadow:0 0 0 10px rgba(201,151,74,0);}100%{box-shadow:0 0 0 0 rgba(201,151,74,0);}}
.tkp-body{padding-top:2px;}
.tkp-lb{font-size:14px; font-weight:700; color:#9B8AA4;}
.tkp-step.done .tkp-lb,.tkp-step.active .tkp-lb{color:var(--purple-950);}
.tkp-ds{font-size:12px; color:var(--ink-soft); margin-top:1px;}
.tkp-tm{font-size:11.5px; font-weight:600; color:var(--ink-soft); margin-top:3px;}
.tkp-step.done .tkp-tm{color:var(--success,#2E8B57);}
.tkp-step.active .tkp-tm{color:var(--gold-600);}
.tkp-info{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; padding-top:14px; border-top:1px dashed var(--line);}
.tkp-info span{display:block; font-size:11px; color:var(--ink-soft);}
.tkp-info b{font-size:13px; color:var(--purple-950);}
.tkp-items > div{display:flex; justify-content:space-between; gap:12px; font-size:12.5px; padding:6px 0; border-bottom:1px solid #F1EBF4; color:var(--ink-soft);}
.tkp-items > div:last-child{border-bottom:0;}
.tkp-items b{color:var(--purple-950); white-space:nowrap;}
.tkp-addr{margin:12px 0 0; font-size:12px; color:var(--ink-soft);}
.tkp-addr i{color:var(--gold,#C9974A); margin-right:5px;}
.tkp-actions{display:flex; gap:10px;}
.tkp-cancel{display:flex; gap:12px; align-items:flex-start; color:#C0392B;}
.tkp-cancel i{font-size:22px; margin-top:2px;}
.tkp-cancel b{display:block; font-size:14px;}
.tkp-cancel span{font-size:12px; color:var(--ink-soft);}
.tkp-loading{text-align:center; padding:60px 10px; font-size:13px; color:var(--ink-soft);}
.tkp-error{text-align:center;}
.tkp-error i{font-size:30px; color:#C0392B;}
.tkp-error p{font-size:13px; color:var(--ink-soft); margin:10px 0 14px;}

@media (max-width:480px){ .app-search-wrap{padding:6px 10px 12px;} }
@media (max-width:360px){ .app-search-wrap{padding:6px 8px 10px;} }

/* 6-step tracker (Confirmed > Processing > Packed > Ready > Dispatched > Delivered) */
.trk-steps{overflow-x:auto;}
.trk-step{width:auto; flex:1 0 62px;}

/* =========================================================
   Footer — final centered professional layout
   (placed last + higher specificity so it overrides earlier footer rules)
   ========================================================= */
.site-footer{padding:56px 24px 0;}
.site-footer .footer-top{
  max-width:1240px; margin:0 auto;
  display:grid; grid-template-columns:1fr; gap:0;
  padding:0 0 44px; align-items:start;
}
.site-footer .footer-col{padding:28px 0; border-left:none; border-top:1px solid rgba(201,162,75,0.25);}
.site-footer .footer-col:first-child{padding-top:0; border-top:none;}
.site-footer .footer-sub h3{margin-top:22px;}
.site-footer .footer-brand p{max-width:340px;}
.site-footer .footer-contact .contact-line span{word-break:break-word;}

@media (min-width:768px){
  .site-footer .footer-top{grid-template-columns:repeat(2,1fr); gap:40px 0;}
  .site-footer .footer-col,
  .site-footer .footer-col:first-child{padding:0 32px; border-top:none; border-left:1px solid rgba(201,162,75,0.25);}
  .site-footer .footer-col:nth-child(odd){padding-left:0; border-left:none;}
}
@media (min-width:1024px){
  .site-footer .footer-top{grid-template-columns:1.5fr 1fr 1fr 1.3fr; gap:0;}
  .site-footer .footer-col,
  .site-footer .footer-col:first-child,
  .site-footer .footer-col:nth-child(odd){padding:0 40px; border-top:none; border-left:1px solid rgba(201,162,75,0.25);}
  .site-footer .footer-col:first-child{padding-left:0; border-left:none;}
  .site-footer .footer-col:last-child{padding-right:0;}
}
.site-footer .footer-bottom{max-width:1240px; margin:0 auto; padding:22px 0 28px; text-align:center;}

.otp-timer{margin:6px 0 12px;text-align:center;font-size:13px;font-weight:600;color:#6b6b6b}


/* =========================================================
   HOT DEALS — 3D coverflow (dark premium section)
   ========================================================= */
.hd-section{
  position:relative; overflow:hidden; isolation:isolate;
  border-radius:var(--radius-lg);
  padding:26px 0 18px;
  background:
    radial-gradient(circle at 50% 0%, rgba(201,162,75,.20), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(99,24,127,.45), transparent 50%),
    linear-gradient(165deg, #1a0023 0%, #2B003B 55%, #12001a 100%);
  box-shadow:0 14px 34px rgba(43,0,59,.28);
}
.hd-head{position:relative; z-index:2; text-align:center; padding:0 16px; margin-bottom:6px;}
.hd-eyebrow{
  display:inline-block; font-size:10.5px; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold-300); padding:4px 12px; border:1px solid rgba(228,201,127,.35); border-radius:999px; margin-bottom:8px;
}
.hd-head h3{
  font-family:var(--font-display); font-size:34px; font-weight:700; line-height:1.1; margin:0; color:#fff;
}
.hd-head h3 .fire{color:#FF8A3D; margin-left:4px;}
.hd-head p{font-family:var(--font-display); font-size:16px; font-style:italic; color:rgba(255,255,255,.72); margin:6px 0 0;}
.hd-seeall{
  position:absolute; top:0; right:14px;
  background:transparent; color:var(--gold-300); border:1.3px solid rgba(228,201,127,.55);
}
.hd-seeall:hover{background:rgba(228,201,127,.14);}

.hd-stage{
  position:relative; outline:none; touch-action:pan-y; user-select:none; -webkit-user-select:none;
  perspective:1300px; perspective-origin:50% 45%;
  overflow:hidden; padding:8px 0; z-index:2;
}
.hd-stage:focus-visible{box-shadow:inset 0 0 0 2px rgba(228,201,127,.5);}
.hd-track{
  --hd-w:250px; --hd-h:355px;
  position:relative; height:calc(var(--hd-h) + 10px); transform-style:preserve-3d;
}
.hd-card{
  position:absolute; top:5px; left:50%;
  width:var(--hd-w); height:var(--hd-h); margin-left:calc(var(--hd-w) / -2);
  display:flex; flex-direction:column; text-align:center; overflow:hidden; cursor:pointer;
  background:#fff; border:1px solid rgba(228,201,127,.55); border-radius:20px;
  box-shadow:0 18px 40px rgba(0,0,0,.5);
  transition:transform .6s var(--ease), opacity .5s var(--ease), filter .5s var(--ease);
  will-change:transform;
}
.hd-card.is-active{border-color:var(--gold-500); box-shadow:0 24px 52px rgba(0,0,0,.55), 0 0 0 2px rgba(201,162,75,.35), 0 0 36px rgba(201,162,75,.28); cursor:default;}
/* side cards: any tap (even on a button) just brings the card to the centre */
.hd-card:not(.is-active) .hd-body, .hd-card:not(.is-active) .hd-heart{pointer-events:none;}

.hd-media{position:relative; flex:0 0 var(--hd-mh); height:var(--hd-mh); overflow:hidden; background:var(--purple-100); isolation:isolate; cursor:pointer;}
.hd-media > img, .hd-media > div:not(.hd-wave){position:absolute; inset:0; width:100%; height:100%; z-index:0;}
.hd-media > img{object-fit:cover; object-position:center 45%; -webkit-user-drag:none; image-rendering:auto; backface-visibility:hidden; -webkit-backface-visibility:hidden; transform:translateZ(0);}
.hd-wave{
  position:absolute; z-index:1; left:0; right:0; bottom:-1px; height:30px; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V23C50 5 130 -4 200 14V34Z' fill='%23ffffff'/%3E%3Cpath d='M0 23C50 5 130 -4 200 14' fill='none' stroke='%23C9A24B' stroke-width='2' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
.hd-badge{
  position:absolute; z-index:2; top:10px; left:10px; display:inline-flex; align-items:center; gap:5px;
  padding:5px 10px 5px 8px; border-radius:999px; font-size:10.5px; font-weight:700; letter-spacing:.03em; color:var(--gold-300);
  background:var(--purple-950); border:1px solid var(--gold-500);
  box-shadow:0 3px 8px rgba(43,0,59,.25); white-space:nowrap;
}
.hd-badge i{color:var(--gold-300); font-size:10.5px;}
.hd-timer{
  position:absolute; z-index:2; left:10px; bottom:28px;
  background:rgba(43,0,59,.88); color:var(--gold-300); border:1px solid rgba(228,201,127,.4);
  font-size:10.5px; font-weight:700; padding:3px 8px; border-radius:8px; letter-spacing:.02em; font-variant-numeric:tabular-nums;
}
.hd-timer i{margin-right:3px; font-size:10px;}

.hd-body{display:flex; flex-direction:column; align-items:center; flex:1; min-height:0; padding:0 11px 14px; margin-top:-4px;}
.hd-title{
  font-family:var(--font-display); font-weight:700; font-size:19px; line-height:1.12; color:var(--purple-800);
  margin:0 0 5px; cursor:pointer; min-height:2.24em; display:flex; align-items:center; justify-content:center;
}
.hd-desc{
  font-family:var(--font-body); font-weight:400; font-size:11.5px; line-height:1.45; color:var(--ink-soft); margin:0 0 9px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.9em;
}
.hd-chips{display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-bottom:9px; min-height:26px;}
.hd-chip{position:relative;}
.hd-chip.deal::after{                       /* small gold dot = this pack is on offer */
  content:""; position:absolute; top:-5px; right:-5px; width:10px; height:10px; border-radius:50%;
  background:var(--gold-500); border:2px solid #fff; box-shadow:0 1px 3px rgba(43,0,59,.3);
}
.hd-price{
  display:flex; align-items:baseline; justify-content:center; gap:6px; flex-wrap:wrap; margin-bottom:11px;
  font-family:var(--font-body); line-height:1;
}
.hd-price b{font-size:22px; font-weight:800; color:var(--purple-950);}
.hd-price s{font-size:12px; font-weight:500; color:var(--ink-soft);}
.hd-actions{display:flex; gap:8px; width:100%; margin-top:auto;}
.hd-btn{
  flex:1; height:40px; display:flex; align-items:center; justify-content:center; gap:6px; cursor:pointer;
  font-family:var(--font-body); font-size:12.5px; font-weight:700; border-radius:999px; white-space:nowrap;
  transition:transform .2s var(--ease), filter .2s, background .2s;
}
.hd-btn i{font-size:11.5px;}
.hd-btn-outline{color:var(--gold-300); background:linear-gradient(120deg, var(--purple-800), var(--purple-950)); border:1px solid var(--gold-500); box-shadow:0 6px 14px rgba(43,0,59,.25);}
.hd-btn-fill{color:var(--purple-950); background:linear-gradient(120deg, var(--gold-300), var(--gold-600)); border:1px solid transparent; box-shadow:0 6px 14px rgba(176,138,52,.3);}
.hd-btn:hover{filter:brightness(1.1);}
.hd-btn:active{transform:scale(.97);}
.hd-btn:disabled{cursor:not-allowed; color:var(--ink-soft); background:var(--purple-100); border:1px solid var(--line); box-shadow:none; filter:none;}

.hd-nav{
  display:none; position:absolute; top:50%; z-index:30; transform:translateY(-50%);
  width:44px; height:44px; border-radius:50%; align-items:center; justify-content:center;
  background:rgba(18,0,26,.72); color:var(--gold-300); border:1.3px solid rgba(228,201,127,.5);
  font-size:15px; transition:all .2s var(--ease); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
}
.hd-nav:hover{background:var(--gold-500); color:var(--purple-950); border-color:var(--gold-500);}
.hd-prev{left:14px;} .hd-next{right:14px;}
.hd-dots{position:relative; z-index:2; display:flex; justify-content:center; gap:7px; margin-top:12px; padding:0 16px; flex-wrap:wrap;}
.hd-dot{
  width:8px; height:8px; padding:0; border-radius:999px; background:rgba(255,255,255,.3);
  transition:all .3s var(--ease); cursor:pointer;
}
.hd-dot.active{width:26px; background:linear-gradient(90deg, var(--gold-300), var(--gold-600));}

@media (min-width:700px){
  .hd-nav{display:flex;}
  .hd-section{padding:34px 0 22px;}
  .hd-head h3{font-size:44px;}
  .hd-head p{font-size:19px;}
  .hd-seeall{top:6px; right:24px;}
  .hd-stage{padding:14px 0 20px;}

}
@media (max-width:480px){
  .hd-seeall{position:static; margin-top:12px; padding:6px 16px;}
  .hd-head h3{font-size:30px;}
}


/* ---- Hot Deals: floating background icons ---- */
.hd-fx{position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none;}
.hd-fx-i{
  position:absolute; left:var(--x); top:var(--y); font-size:var(--s);
  color:rgba(255,255,255,.16); opacity:.9; will-change:transform;
  animation:hdFloatA var(--d) ease-in-out var(--dl) infinite;
}
.hd-fx-i.gold{color:rgba(228,201,127,.30); text-shadow:0 0 14px rgba(228,201,127,.25);}
.hd-fx-i.k-b{animation-name:hdFloatB;}
.hd-fx-i.k-c{animation-name:hdTwinkle;}
@keyframes hdFloatA{
  0%,100%{transform:translate3d(0,0,0) rotate(-8deg);}
  50%{transform:translate3d(10px,-26px,0) rotate(12deg);}
}
@keyframes hdFloatB{
  0%,100%{transform:translate3d(0,0,0) rotate(10deg);}
  50%{transform:translate3d(-12px,-22px,0) rotate(-14deg);}
}
@keyframes hdTwinkle{
  0%,100%{transform:translate3d(0,0,0) scale(.8); opacity:.35;}
  50%{transform:translate3d(0,-14px,0) scale(1.25); opacity:1;}
}
@media (max-width:480px){ .hd-fx-i{font-size:calc(var(--s) * .8);} }
@media (prefers-reduced-motion:reduce){ .hd-fx-i{animation:none !important;} }
