:root{
  --kesari:#E17A1F;
  --kesari-dark:#B85A0E;
  --kesari-light:#F4A85C;
  --leaf:#48592B;
  --leaf-dark:#2B3719;
  --leaf-light:#7C8F52;
  --cream:#FBF6EC;
  --cream-2:#F2E9D8;
  --cream-3:#EAE0CB;
  --ink:#2A2620;
  --ink-soft:#5B564C;
  --gold:#B8892B;
  --white:#FFFFFF;
  --line:#E4DAC4;
  --danger:#B23B2E;
  --radius-s:10px;
  --radius-m:16px;
  --radius-l:28px;
  --shadow-1: 0 2px 10px rgba(43,38,25,0.06);
  --shadow-2: 0 14px 40px rgba(43,38,25,0.12);
  --header-h:76px;
  --header-h-mobile:60px;
}
*{box-sizing:border-box;}
html,body{overflow-x:hidden;max-width:100%;}
body{margin:0;font-family:'Inter',sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{font-family:'Fraunces',serif;margin:0;font-weight:560;letter-spacing:-0.01em;color:var(--leaf-dark);}
p{margin:0;line-height:1.6;color:var(--ink-soft);}
input,select,textarea{font-family:inherit;}
:focus-visible{outline:2px solid var(--kesari-dark);outline-offset:2px;}
@media (prefers-reduced-motion: reduce){*{animation-duration:0.01ms !important;transition-duration:0.01ms !important;}}

.eyebrow{font-family:'Inter',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--kesari-dark);display:inline-flex;align-items:center;gap:7px;}
.eyebrow svg{flex-shrink:0;width:16px;height:16px;}
.container{max-width:1320px;margin:0 auto;padding-left:24px;padding-right:24px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;font-weight:600;font-size:14.5px;border:1px solid transparent;transition:transform .18s ease, box-shadow .18s ease, background .18s ease;white-space:nowrap;}
.btn:active{transform:scale(0.97);}
.btn-primary{background:var(--kesari);color:#fff;box-shadow:0 8px 20px rgba(225,122,31,0.28);}
.btn-primary:hover{background:var(--kesari-dark);}
.btn-dark{background:var(--leaf-dark);color:#fff;}
.btn-dark:hover{background:var(--leaf);}
.btn-outline{background:transparent;border-color:var(--leaf-dark);color:var(--leaf-dark);}
.btn-outline:hover{background:var(--leaf-dark);color:#fff;}
.btn-ghost{background:transparent;color:var(--ink);}
.btn-block{width:100%;}
.btn-sm{padding:10px 18px;font-size:13.5px;}
.btn:disabled{opacity:0.5;cursor:not-allowed;transform:none;}

/* ---------- Top announcement ---------- */
.announce{background:var(--leaf-dark);color:#EDE7D3;text-align:center;font-size:12.5px;letter-spacing:0.04em;font-weight:500;box-sizing:border-box;height:38px;overflow:hidden;position:relative;}
.announce b{color:var(--kesari-light);}
.announce-track{position:relative;height:100%;}
.announce-item{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 12px;opacity:0;transform:translateY(12px);transition:opacity .45s ease, transform .45s ease;}
.announce-item.active{opacity:1;transform:translateY(0);}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:60;background:rgba(251,246,236,0.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);gap:24px;}
.logo-mark{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.logo-mark img{height:38px;width:auto;}
.nav-main{display:flex;align-items:center;gap:2px;flex:1;justify-content:center;}
.nav-main a{padding:10px 16px;font-size:14.5px;font-weight:600;color:var(--ink);border-radius:999px;transition:background .15s, color .15s;position:relative;white-space:nowrap;}
.nav-main a:hover{background:var(--cream-2);color:var(--leaf-dark);}
.nav-main a.active{color:var(--kesari-dark);}
.nav-main a.active::after{content:'';position:absolute;left:16px;right:16px;bottom:4px;height:2px;background:var(--kesari-dark);border-radius:2px;}
@media (max-width:1180px) and (min-width:721px){
  .nav-main{gap:0;}
  .nav-main a{padding:10px 11px;font-size:13.5px;}
}
.header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.icon-btn{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ink);position:relative;transition:background .15s;}
.icon-btn:hover{background:var(--cream-2);}
.badge-count{position:absolute;top:2px;right:2px;background:var(--kesari);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px;}
.hamburger{display:none;}
body.no-scroll{overflow:hidden;}

/* Mobile nav drawer — deliberately NOT nested inside header.site, since that
   element's position:sticky + z-index + backdrop-filter together create a
   stacking context AND a containing block for fixed-position descendants,
   which trapped this drawer behind header-level content and the scrim. */
.mobile-nav-drawer{display:none;}
@media (max-width:720px){
  .mobile-nav-drawer{
    display:flex;flex-direction:column;gap:2px;
    position:fixed;top:0;left:0;bottom:0;height:100vh;height:100dvh;
    width:50vw;min-width:240px;max-width:320px;
    background:#fff;z-index:170;overflow-y:auto;
    padding:16px 16px 30px;
    box-shadow:var(--shadow-2);
    transform:translateX(-105%);
    transition:transform .28s cubic-bezier(.2,.8,.2,1);
  }
  .mobile-nav-drawer.open{transform:translateX(0);}
  .mobile-nav-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line);}
  .mobile-nav-drawer-head .logo-mark img{height:28px;}
  .mobile-nav-drawer a{padding:13px 14px;border-radius:var(--radius-s);font-size:14.5px;font-weight:600;color:var(--ink);}
  .mobile-nav-drawer a.active{color:var(--kesari-dark);background:var(--cream-2);}
}

/* Search overlay */
.search-overlay{position:fixed;inset:0;background:rgba(42,38,32,0.5);z-index:190;display:none;align-items:flex-start;justify-content:center;padding-top:14vh;}
.search-overlay.open{display:flex;}
.search-box{background:#fff;width:min(560px,92vw);border-radius:var(--radius-m);padding:8px;box-shadow:var(--shadow-2);}
.search-box input{width:100%;border:none;padding:16px 18px;font-size:16px;border-radius:var(--radius-s);background:var(--cream-2);}
.search-results{max-height:50vh;overflow:auto;margin-top:8px;}
.search-item{display:flex;gap:12px;align-items:center;padding:10px;border-radius:var(--radius-s);}
.search-item:hover{background:var(--cream-2);}
.search-item .thumb{width:44px;height:44px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--cream-2);}
.search-item .thumb img{width:100%;height:100%;object-fit:cover;}

/* ---------- Rim / press strip ---------- */
.rating-banner{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:14px 0 2px;}
.rating-banner .stars{color:var(--gold);}
.rating-banner strong{font-family:'Fraunces',serif;font-size:15px;color:var(--leaf-dark);}
.rating-banner span{font-size:13px;color:var(--ink-soft);}
.press-strip{display:flex;justify-content:center;align-items:center;gap:42px;flex-wrap:wrap;padding:10px 0 26px;}
.press-strip span{font-family:'Fraunces',serif;font-size:16.5px;font-weight:600;color:#8B8570;letter-spacing:0.02em;}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 20%, #FDF0DC 0%, var(--cream) 55%);}
.hero-inner{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;padding:56px 0 20px;}
.hero-copy .eyebrow{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:7px 14px 7px 10px;border-radius:999px;box-shadow:var(--shadow-1);}
.hero-copy h1{font-size:clamp(38px,4.6vw,60px);line-height:1.04;margin:20px 0 18px;}
.hero-copy h1 em{font-style:italic;color:var(--kesari);}
.hero-copy p.lead{font-size:17px;max-width:460px;margin-bottom:30px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.hero-stats{display:flex;gap:30px;margin-top:38px;}
.hero-stats div strong{display:block;font-family:'Fraunces',serif;font-size:26px;color:var(--leaf-dark);}
.hero-stats div span{font-size:12.5px;color:var(--ink-soft);}
.hero-art{position:relative;display:flex;align-items:center;justify-content:center;}
.hero-art .frame{position:relative;width:100%;max-width:460px;border-radius:var(--radius-l);overflow:hidden;box-shadow:var(--shadow-2);}
.hero-art .frame img{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1.02;}
.hero-badge-float{position:absolute;bottom:-18px;left:-18px;background:#fff;border-radius:var(--radius-m);box-shadow:var(--shadow-2);padding:14px 18px;display:flex;align-items:center;gap:10px;}
.hero-badge-float strong{display:block;font-family:'Fraunces',serif;font-size:16px;color:var(--leaf-dark);}
.hero-badge-float span{font-size:11px;color:var(--ink-soft);}
.hero-slides{position:relative;}
.hero-slide{display:none;opacity:0;transition:opacity .5s ease;}
.hero-slide.active{display:block;opacity:1;}
.hero-slide-dots{display:flex;justify-content:center;gap:8px;padding-bottom:14px;}
.hero-slide-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--line);cursor:pointer;padding:0;}
.hero-slide-dot.active{background:var(--kesari);width:22px;border-radius:5px;transition:width .2s ease;}
.hero-slide-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.85);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;border:none;color:var(--ink);cursor:pointer;z-index:5;box-shadow:var(--shadow-1);transition:background .15s;}
.hero-slide-arrow:hover{background:#fff;}
.hero-slide-arrow.left{left:12px;}
.hero-slide-arrow.right{right:12px;}

/* ---------- Trust strip ---------- */
.trust-strip{background:var(--leaf-dark);}
.trust-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:26px 0;}
.trust-item{display:flex;align-items:center;gap:12px;color:#EDE7D3;min-width:0;}
.trust-item div{min-width:0;}
.trust-item strong,.trust-item span{overflow-wrap:break-word;}
.trust-item svg{flex-shrink:0;color:var(--kesari-light);}
.trust-item strong{display:block;font-size:13.5px;font-weight:700;}
.trust-item span{font-size:11.5px;opacity:0.75;}

/* ---------- Section heading ---------- */
.section{padding:72px 0;}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px;gap:20px;}
.section-head h2{font-size:clamp(26px,3vw,36px);}
.section-head p{max-width:420px;}
.section-tight{padding:40px 0 72px;}

/* ---------- Product grid & cards ---------- */
.product-grid{display:grid;grid-template-columns:repeat(var(--grid-cols,4),1fr);gap:22px;}
.product-card{background:#fff;border-radius:var(--radius-m);overflow:hidden;border:1px solid var(--line);position:relative;transition:box-shadow .2s, transform .2s;display:flex;flex-direction:column;}
.product-card:hover{box-shadow:var(--shadow-2);transform:translateY(-3px);}
.product-media{position:relative;aspect-ratio:1/1;background:var(--media-bg,var(--cream-2));overflow:hidden;display:block;}
.product-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .4s ease, transform .5s ease;}
.product-media img.alt{opacity:0;}
.product-card:hover .product-media img.primary{opacity:0;}
.product-card:hover .product-media img.alt{opacity:1;transform:scale(1.05);}
.product-card:hover .product-media img.primary{transform:scale(1.05);}
.product-badge{position:absolute;top:12px;left:12px;background:var(--kesari);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:0.03em;padding:5px 10px;border-radius:999px;text-transform:uppercase;z-index:3;}
.product-badge.sale{background:var(--danger);}
.product-badge.new{background:var(--leaf-dark);}
.product-badge.limited{background:var(--gold);}
.wish-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.92);border:none;display:flex;align-items:center;justify-content:center;color:var(--ink);box-shadow:var(--shadow-1);transition:transform .15s;z-index:3;}
.wish-btn:hover{transform:scale(1.08);}
.wish-btn.active{color:var(--kesari);}
.wish-btn.active svg{fill:var(--kesari);}
.pd-wish-link{display:inline-flex;align-items:center;gap:8px;background:none;border:none;padding:0;color:var(--ink-soft);font-size:13.5px;font-weight:600;cursor:pointer;}
.pd-wish-link:hover{color:var(--ink);}
.pd-wish-link.active{color:var(--kesari);}
.pd-wish-link.active svg{fill:var(--kesari);}

.pd-save-share-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 20px;margin-top:-14px;margin-bottom:20px;}
.pd-share-row{display:flex;align-items:center;gap:8px;}
.pd-share-label{font-size:12.5px;font-weight:600;color:var(--ink-soft);margin-right:2px;}
.pd-share-btn{width:32px;height:32px;border-radius:50%;background:var(--cream-2);color:var(--ink);display:flex;align-items:center;justify-content:center;transition:transform .15s ease, background .15s ease, color .15s ease;}
.pd-share-btn svg{width:15px;height:15px;}
.pd-share-btn:hover{transform:translateY(-2px);background:var(--leaf-dark);color:#fff;}

.product-media-wrap{position:relative;}
.quick-add-hover{position:absolute;left:10px;right:10px;bottom:10px;opacity:0;transform:translateY(8px);transition:opacity .2s, transform .2s;z-index:3;}
.product-card:hover .quick-add-hover{opacity:1;transform:translateY(0);}
.quick-add-static{display:none;}
.product-info{padding:16px 16px 18px;flex:1;display:flex;flex-direction:column;gap:6px;}
.product-info .material{font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:0.05em;font-weight:600;}
.product-info h4{font-size:16.5px;font-weight:600;font-family:'Fraunces',serif;line-height:1.3;}
.rating-row{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-soft);}
.stars{color:var(--gold);display:flex;gap:1px;}
.price-row{display:flex;align-items:baseline;gap:8px;margin-top:2px;flex-wrap:wrap;}
.price-row .now{font-size:17px;font-weight:700;color:var(--leaf-dark);}
.price-row .mrp{font-size:13px;color:#a79f8c;text-decoration:line-through;}
.price-row .off{font-size:12px;color:var(--danger);font-weight:700;}

/* ---------- Room showcase (full-width premium grid) ---------- */
.room-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;}
.room-card{position:relative;border-radius:var(--radius-l);overflow:hidden;aspect-ratio:3/4;display:flex;align-items:flex-end;justify-content:center;box-shadow:var(--shadow-2);isolation:isolate;transition:transform .2s ease, box-shadow .2s ease;}
.room-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(43,38,25,0.22);}
.room-card-icon{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,0.16);z-index:0;pointer-events:none;}
.room-card-icon svg{width:120px;height:120px;stroke-width:1;}
.room-card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transition:transform .35s ease;}
.room-card:hover .room-card-img{transform:scale(1.06);}
.room-card:has(.room-card-img)::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,12,0) 32%,rgba(20,18,12,0.68) 100%);z-index:0;}
.room-tone-1{background:linear-gradient(160deg,#7C8F52 0%,#48592B 55%,#2B3719 100%);}
.room-tone-2{background:linear-gradient(160deg,#F4A85C 0%,#E17A1F 55%,#B85A0E 100%);}
.room-tone-3{background:linear-gradient(160deg,#EAE0CB 0%,#B8892B 55%,#8B6A1E 100%);}
.room-tone-4{background:linear-gradient(160deg,#5B6E8C 0%,#3A4A63 55%,#232D3D 100%);}
.room-card-overlay{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 16px 26px;text-align:center;}
.room-name{color:#fff;font-family:'Fraunces',serif;font-size:21px;font-weight:600;text-shadow:0 2px 10px rgba(0,0,0,0.2);}
@media (max-width:860px){ .room-strip{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:720px){
  .room-strip{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:var(--kesari) var(--cream-2);}
  .room-strip::-webkit-scrollbar{height:5px;}
  .room-strip::-webkit-scrollbar-track{background:var(--cream-2);border-radius:999px;}
  .room-strip::-webkit-scrollbar-thumb{background:var(--kesari);border-radius:999px;}
  .room-card{flex:0 0 auto;width:180px;scroll-snap-align:start;}
  .room-name{font-size:17px;}
  .room-card-icon svg{width:90px;height:90px;}
}

/* ---------- Bundle & Save promo ---------- */
.bundle-promo{background:var(--leaf-dark);border-radius:var(--radius-l);overflow:hidden;display:grid;grid-template-columns:1.05fr 0.95fr;align-items:stretch;}
.bundle-promo-copy{padding:52px 48px;color:#EDE7D3;display:flex;flex-direction:column;justify-content:center;}
.bundle-promo-copy .eyebrow{color:var(--kesari-light);}
.bundle-promo-copy h2{color:#fff;font-size:clamp(28px,3.2vw,40px);margin:14px 0 12px;}
.bundle-promo-copy > p{color:#C9C2AC;max-width:440px;margin-bottom:28px;font-size:15px;}

.bundle-recipe{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:30px;}
.bundle-recipe-item{background:var(--cream);border-radius:var(--radius-m);padding:14px;width:118px;text-align:center;flex-shrink:0;}
.bundle-recipe-thumb{width:100%;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#fff;margin-bottom:10px;}
.bundle-recipe-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.bundle-recipe-item strong{display:block;font-size:12.5px;font-weight:700;color:var(--ink);line-height:1.3;margin-bottom:3px;}
.bundle-recipe-item span{font-size:12px;color:var(--ink-soft);font-weight:600;}
.bundle-recipe-op{font-family:'Fraunces',serif;font-size:26px;color:var(--kesari-light);flex-shrink:0;}
.bundle-recipe-total{background:var(--cream);border-radius:var(--radius-m);padding:16px 18px;width:148px;flex-shrink:0;display:flex;flex-direction:column;gap:2px;}
.bundle-recipe-total .brt-label{font-size:11.5px;color:var(--ink-soft);font-weight:600;margin-bottom:4px;}
.bundle-recipe-total .brt-mrp{font-size:13px;color:#a79f8c;text-decoration:line-through;}
.bundle-recipe-total .brt-price{font-family:'Fraunces',serif;font-size:24px;font-weight:700;color:var(--leaf-dark);}
.bundle-recipe-total .brt-save{font-size:11.5px;color:var(--kesari-dark);font-weight:700;margin-top:2px;}
.bundle-cta{width:fit-content;}

.bundle-promo-art{position:relative;min-height:420px;}
.bundle-promo-art img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.bundle-save-badge{position:absolute;top:24px;right:24px;width:92px;height:92px;border-radius:50%;background:var(--kesari);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--shadow-2);text-align:center;z-index:2;}
.bundle-save-badge span{font-size:10.5px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;}
.bundle-save-badge strong{font-family:'Fraunces',serif;font-size:17px;}

/* ---------- Rooted in Craft (premium) ---------- */
.craft-premium{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-l);padding:40px;display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:stretch;position:relative;overflow:hidden;}

.craft-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;position:relative;z-index:2;height:100%;}
.craft-photo{position:relative;border-radius:var(--radius-m);overflow:hidden;height:100%;box-shadow:var(--shadow-1);}
.craft-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.craft-photo-tag{position:absolute;left:8px;right:8px;bottom:8px;background:#fff;border-radius:10px;padding:8px;display:flex;align-items:center;gap:8px;box-shadow:var(--shadow-1);}
.craft-photo-tag svg{flex-shrink:0;width:32px;height:32px;padding:8px;box-sizing:border-box;border-radius:50%;background:var(--leaf-dark);color:#fff;}
.craft-photo-tag > span{min-width:0;}
.craft-photo-tag strong{display:block;font-size:11.5px;font-weight:700;color:var(--ink);line-height:1.25;}
.craft-photo-tag em{display:block;font-size:10px;font-style:normal;color:var(--ink-soft);line-height:1.3;margin-top:1px;}

.craft-copy{position:relative;z-index:2;}
.craft-copy .eyebrow{margin-bottom:12px;display:block;}
.craft-copy h2{font-size:clamp(26px,3vw,36px);margin-bottom:14px;}
.craft-copy > p{margin-bottom:22px;max-width:420px;}
.craft-feature-list{display:flex;flex-direction:column;gap:16px;margin-bottom:26px;}
.craft-feature-list li{display:flex;gap:13px;align-items:flex-start;}
.craft-feature-list li > svg{flex-shrink:0;width:38px;height:38px;padding:10px;box-sizing:border-box;border-radius:50%;background:var(--leaf-dark);color:#fff;}
.craft-feature-list strong{display:block;font-size:14.5px;font-weight:700;color:var(--ink);}
.craft-feature-list em{display:block;font-style:normal;font-size:13px;color:var(--ink-soft);margin-top:1px;}

.craft-map-deco{position:absolute;right:-10px;bottom:16px;width:220px;pointer-events:none;z-index:1;}
.india-map-svg{width:100%;height:auto;fill:none;stroke:var(--kesari-light);stroke-width:2.5;opacity:0.4;display:block;}
.craft-map-pin{position:absolute;top:40%;left:46%;color:var(--kesari);display:flex;filter:drop-shadow(0 2px 3px rgba(0,0,0,0.15));}
.craft-map-label{position:absolute;top:calc(40% + 22px);left:46%;transform:translateX(-50%);font-size:10.5px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--kesari-dark);white-space:nowrap;}

/* ---------- Founder's note ---------- */
.founder-note{background:var(--leaf-dark);border-radius:var(--radius-l);padding:40px;display:grid;grid-template-columns:0.8fr 1.2fr;gap:48px;align-items:center;}
.founder-photo-wrap{position:relative;border-radius:var(--radius-m);overflow:hidden;aspect-ratio:4/5;background:rgba(237,231,211,0.08);}
.founder-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
.founder-photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:2px dashed rgba(237,231,211,0.35);border-radius:var(--radius-m);color:#C9C2AC;font-size:13px;line-height:1.5;padding:20px;}
.founder-photo-placeholder .fpp-line2{display:block;margin-top:4px;font-size:11.5px;color:var(--kesari-light);font-weight:700;letter-spacing:0.04em;}
.founder-photo-nameplate{position:absolute;left:0;right:0;bottom:0;padding:22px 20px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,0.7));color:#fff;}
.founder-photo-nameplate strong{display:block;font-size:16px;}
.founder-photo-nameplate span{font-size:12.5px;color:#EDE7D3;}
.founder-copy .eyebrow{margin-bottom:12px;display:block;color:var(--kesari-light);}
.founder-copy h2{font-size:clamp(26px,3vw,36px);margin-bottom:18px;color:#fff;}
.founder-pull-quote{font-family:'Fraunces',serif;font-style:italic;font-weight:600;font-size:clamp(21px,2.3vw,28px);line-height:1.4;color:var(--kesari-light);margin-bottom:20px;}
.founder-body{color:#C9C2AC;font-size:15px;max-width:460px;}
@media (max-width:860px){
  .founder-note{grid-template-columns:1fr;padding:24px;gap:24px;}
  .founder-photo-wrap{aspect-ratio:3/4;}
}

/* ---------- Testimonials (auto-sliding premium marquee) ---------- */
.testi-section{overflow:hidden;}
.testi-marquee-wrap{position:relative;overflow:hidden;margin-top:38px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.testi-strip{display:flex;gap:24px;width:max-content;padding:10px 4px 18px;animation:testiMarquee 52s linear infinite;}
.testi-marquee-wrap:hover .testi-strip{animation-play-state:paused;}
@keyframes testiMarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.testi-card{position:relative;flex:0 0 auto;width:320px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-l);padding:30px 28px 26px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-1);transition:box-shadow .25s ease, transform .25s ease;}
.testi-card:hover{box-shadow:var(--shadow-2);transform:translateY(-3px);}
.testi-card.alt{background:var(--cream-2);border-color:var(--cream-3);}
.testi-quote-mark{position:absolute;top:18px;right:22px;color:var(--kesari-light);opacity:0.35;}
.testi-quote-mark svg{display:block;}
.testi-card .stars{font-size:14px;}
.testi-card p.quote{font-family:'Fraunces',serif;font-style:italic;color:var(--ink);font-size:15.5px;line-height:1.6;position:relative;z-index:1;}
.testi-who{display:flex;align-items:center;gap:11px;margin-top:4px;padding-top:14px;border-top:1px solid rgba(43,38,25,0.08);}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px var(--cream-3);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--leaf-dark);font-family:'Fraunces',serif;font-size:15px;}
.testi-who strong{display:flex;align-items:center;gap:5px;font-size:13.5px;}
.testi-who span{font-size:11.5px;color:var(--ink-soft);}
@media (max-width:720px){
  .testi-marquee-wrap{margin-top:26px;}
  .testi-card{width:270px;padding:22px 20px 20px;}
  .testi-strip{animation-duration:36s;}
}

/* ---------- Newsletter ---------- */
.newsletter{background:linear-gradient(135deg,var(--kesari) 0%, var(--kesari-dark) 100%);border-radius:var(--radius-l);padding:52px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#fff;}
.newsletter h3{color:#fff;font-size:26px;margin-bottom:8px;}
.newsletter p{color:rgba(255,255,255,0.85);}
.newsletter-form{display:flex;gap:10px;background:#fff;padding:6px;border-radius:999px;min-width:360px;}
.newsletter-form input{flex:1;border:none;background:transparent;padding:10px 16px;font-size:14.5px;}
.newsletter-form input:focus{outline:none;}

/* ---------- Footer ---------- */
footer.site{background:var(--leaf-dark);color:#C9C2AC;padding:64px 0 24px;margin-top:0;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.1fr;gap:30px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.1);}
.footer-brand img{height:34px;margin-bottom:14px;filter:brightness(0) invert(1);}
.footer-brand p{color:#9BA087;font-size:13.5px;max-width:260px;}
.social-row{display:flex;gap:10px;margin-top:18px;}
.social-row a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;transition:background .15s;}
.social-row a:hover{background:var(--kesari);}
.footer-install-btn{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.14);border-radius:999px;padding:9px 16px;font-size:13px;font-weight:600;color:#EDE7D3;cursor:pointer;transition:background .15s;}
.footer-install-btn:hover{background:var(--kesari);border-color:var(--kesari);color:#fff;}

.ios-guide-scrim{position:fixed;inset:0;z-index:900;display:none;align-items:center;justify-content:center;background:rgba(20,18,12,0.55);padding:20px;}
.ios-guide-scrim.show{display:flex;}
.ios-guide-card{position:relative;width:min(360px,100%);background:#fff;border-radius:var(--radius-l,16px);box-shadow:var(--shadow-2);padding:26px 22px 22px;animation:iosGuideIn .25s ease;}
.ios-guide-card h3{font-family:'Fraunces',serif;font-size:19px;margin-bottom:16px;padding-right:20px;}
.ios-guide-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;}
.ios-guide-close{position:absolute;top:14px;right:14px;width:26px;height:26px;border-radius:50%;background:var(--cream);border:none;font-size:18px;line-height:1;color:var(--ink-soft);cursor:pointer;}
.ios-guide-close:hover{background:var(--line);}
.ios-guide-steps{display:flex;flex-direction:column;gap:14px;}
.ios-guide-steps li{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;line-height:1.5;}
.ios-guide-num{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--kesari);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;}
.ios-guide-icon{display:inline-flex;vertical-align:-3px;color:var(--kesari-dark);}
.ios-guide-hint{margin-top:10px;font-size:12.5px;}
.footer-col p{color:#C9C2AC;}
.footer-col h5{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:16px;font-family:'Inter',sans-serif;font-weight:700;}
.footer-col ul{display:flex;flex-direction:column;gap:11px;}
.footer-col a{font-size:13.5px;color:#C9C2AC;transition:color .15s;}
.footer-col a:hover{color:var(--kesari-light);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;font-size:12.5px;color:#8B8F76;flex-wrap:wrap;gap:12px;}
.pay-icons{display:flex;gap:8px;}
.pay-icons span{background:rgba(255,255,255,0.08);border-radius:5px;padding:4px 8px;font-size:10.5px;font-weight:700;color:#EDE7D3;}

/* ---------- Breadcrumb ---------- */
.crumb{padding:18px 0;font-size:13px;color:var(--ink-soft);display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.crumb a:hover{color:var(--kesari-dark);}
.crumb .sep{color:#c9bfa4;flex-shrink:0;}
.crumb .current{color:var(--ink);font-weight:600;}
@media (max-width:720px){
  .crumb{flex-wrap:nowrap;overflow:hidden;}
  .crumb a{flex-shrink:0;}
  .crumb .current{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
}

/* ---------- Blog ---------- */
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:36px;}
.blog-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden;transition:transform .2s ease, box-shadow .2s ease;}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);}
.blog-card-img{aspect-ratio:16/10;background:var(--cream-2);overflow:hidden;}
.blog-card-img img{width:100%;height:100%;object-fit:cover;display:block;}
.blog-card-img-fallback{display:flex;align-items:center;justify-content:center;color:var(--kesari-light);}
.blog-card-img-fallback svg{width:36px;height:36px;}
.blog-card-body{padding:20px;}
.blog-card-category{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--kesari);margin-bottom:8px;}
.blog-card-body h3{font-size:17px;line-height:1.35;margin-bottom:8px;color:var(--ink);}
.blog-card-body p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.blog-card-meta{font-size:12px;color:var(--ink-soft);display:flex;gap:6px;align-items:center;}

.blog-post{width:100%;}
.blog-post-header{text-align:center;margin-bottom:28px;}
.blog-post-header h1{font-family:'Fraunces',serif;font-size:clamp(28px,4.2vw,44px);line-height:1.18;margin:10px 0 16px;}
.blog-post-meta{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:13px;color:var(--ink-soft);}
.blog-post-author-bio{font-size:13px;color:var(--ink-soft);margin-top:10px;}
.blog-post-hero{border-radius:var(--radius-l);overflow:hidden;margin-bottom:32px;aspect-ratio:16/8;background:var(--cream-2);}
.blog-post-hero img{width:100%;height:100%;object-fit:cover;display:block;}
.blog-post-tldr{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-m);padding:20px 22px;margin-bottom:32px;max-width:820px;}
.blog-post-tldr strong{display:flex;align-items:center;gap:8px;color:var(--leaf-dark);font-size:13px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px;}
.blog-post-tldr p{font-size:14.5px;line-height:1.6;color:var(--ink);}
.blog-post-content{font-size:16px;line-height:1.75;color:var(--ink);max-width:820px;}
.blog-post-content h2{font-family:'Fraunces',serif;font-size:24px;margin:36px 0 14px;}
.blog-post-content h3{font-size:19px;margin:26px 0 10px;}
.blog-post-content p{margin-bottom:18px;}
.blog-post-content ul,.blog-post-content ol{margin:0 0 18px 22px;}
.blog-post-content img{max-width:100%;border-radius:var(--radius-m);margin:20px 0;}
.blog-post-content a{color:var(--kesari-dark);text-decoration:underline;}
.blog-post-faqs{margin-top:44px;padding-top:32px;border-top:1px solid var(--line);max-width:820px;}
.blog-post-faqs h2{font-family:'Fraunces',serif;font-size:24px;margin-bottom:20px;}
.blog-faq-item{padding:16px 0;border-bottom:1px solid var(--line);}
.blog-faq-item:last-child{border-bottom:none;}
.blog-faq-item h3{font-size:15.5px;margin-bottom:6px;}
.blog-faq-item p{font-size:14px;color:var(--ink-soft);line-height:1.6;}
.blog-post-products{margin-top:44px;padding-top:32px;border-top:1px solid var(--line);}
.blog-post-products h2{font-family:'Fraunces',serif;font-size:24px;margin-bottom:20px;}
.blog-related{width:100%;margin:64px auto 0;padding-top:44px;border-top:1px solid var(--line);}
.blog-related h2{font-family:'Fraunces',serif;font-size:24px;margin-bottom:8px;text-align:center;}
.blog-related .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:900px){
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  .blog-grid,.blog-related .blog-grid{grid-template-columns:1fr;}
  .blog-post-content{font-size:15px;}
}

/* ---------- Shop layout ---------- */
.shop-header{padding-top:26px;padding-bottom:8px;}
.shop-header h1{font-size:clamp(28px,3.4vw,40px);}
.shop-layout{display:grid;grid-template-columns:262px 1fr;gap:34px;padding-bottom:80px;align-items:start;}
.filter-panel{position:sticky;top:calc(var(--header-h) + 20px);background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:22px;max-height:calc(100vh - var(--header-h) - 40px);overflow-y:auto;}
.filter-group{padding:16px 0;border-bottom:1px solid var(--line);}
.filter-group:first-child{padding-top:0;}
.filter-group:last-child{border-bottom:none;}
.filter-group h5{font-size:12.5px;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:12px;color:var(--leaf-dark);}
.filter-opt{display:flex;align-items:center;justify-content:space-between;padding:7px 0;font-size:14px;color:var(--ink);cursor:pointer;}
.filter-opt .fo-left{display:flex;align-items:center;gap:9px;}
.filter-opt .box{width:17px;height:17px;border-radius:5px;border:1.6px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s, border-color .15s;}
.filter-opt.selected .box{background:var(--kesari);border-color:var(--kesari);color:#fff;}
.filter-opt span.count{color:var(--ink-soft);font-size:12px;}
.filter-opt.selected{color:var(--kesari-dark);font-weight:700;}
.price-slider{width:100%;accent-color:var(--kesari);margin-top:10px;}
.price-slider-label{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-soft);margin-top:6px;}
.star-filter-opt{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:13.5px;cursor:pointer;color:var(--ink);}
.star-filter-opt.selected{color:var(--kesari-dark);font-weight:700;}
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px;}
.result-count{font-size:13.5px;color:var(--ink-soft);}
.sort-select{border:1px solid var(--line);border-radius:999px;padding:9px 34px 9px 16px;font-size:13.5px;background:#fff;font-weight:600;color:var(--ink);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235B564C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 14px center;background-size:13px;}
.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.chip{background:var(--cream-2);border-radius:999px;padding:6px 12px;font-size:12.5px;display:flex;align-items:center;gap:6px;font-weight:600;color:var(--leaf-dark);}
.chip button{background:none;border:none;color:var(--ink-soft);display:flex;}
.filter-toggle-mobile{display:none;}
.empty-state{text-align:center;padding:70px 20px;}
.empty-state svg{margin-bottom:16px;color:var(--cream-3);}

/* ---------- Product detail ---------- */
.pd-layout{display:grid;grid-template-columns:minmax(0,0.95fr) minmax(0,1fr);gap:56px;padding-bottom:40px;}
.pd-gallery-main{background:var(--cream-2);position:relative;}
.pd-zoom-frame{width:100%;height:100%;border-radius:var(--radius-l);overflow:hidden;position:relative;}
.pd-gallery-main img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
/* Hover-zoom (desktop, mouse-and-fine-pointer only, sufficiently wide
   viewport — see initPdHoverZoom() in app.js, which skips binding entirely
   otherwise). Amazon-style: a small "lens" square tracks the cursor over
   the image, and a separate magnified panel floats to the right showing
   whatever's under the lens — not an in-place CSS scale. */
.pd-zoom-frame.zoom-hoverable{cursor:zoom-in;}
.pd-zoom-lens{position:absolute;top:0;left:0;display:none;background:rgba(255,255,255,0.35);border:1px solid rgba(20,18,12,0.5);box-shadow:0 0 0 1px rgba(255,255,255,0.6) inset;pointer-events:none;z-index:4;}
.pd-zoom-frame.zoom-active .pd-zoom-lens{display:block;}
.pd-zoom-result{position:absolute;top:0;left:calc(100% + 24px);width:100%;height:100%;background-repeat:no-repeat;background-color:#fff;border:1px solid var(--line);border-radius:var(--radius-l);box-shadow:var(--shadow-2);display:none;z-index:20;}
.pd-zoom-result.active{display:block;}
/* Overflow deliberately left visible (radius/clipping now lives on the img
   itself, not this wrapper) so the arrows below can sit half on the photo,
   half past its edge — the "peek" look, not buttons floating fully inside. */
.pd-gallery-arrow{display:none;position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,0.95);box-shadow:var(--shadow-2);align-items:center;justify-content:center;z-index:5;border:none;color:var(--ink);}
.pd-gallery-arrow svg{width:14px;height:14px;}
.pd-gallery-arrow.left{left:-15px;}
.pd-gallery-arrow.right{right:-15px;}
.pd-thumbs{display:flex;gap:10px;margin-top:12px;}
.pd-thumb{width:76px;height:76px;border-radius:12px;overflow:hidden;background:var(--cream-2);border:2px solid transparent;flex-shrink:0;cursor:pointer;}
.pd-thumb img{width:100%;height:100%;object-fit:cover;}
.pd-thumb.active{border-color:var(--kesari);}

/* ---------- Product gallery zoom lightbox ---------- */
.pd-zoom-btn{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.95);box-shadow:var(--shadow-2);display:flex;align-items:center;justify-content:center;border:none;color:var(--ink);z-index:6;cursor:pointer;transition:transform .15s ease,background .15s ease;}
.pd-zoom-btn:hover{transform:scale(1.08);background:#fff;}
.pd-lightbox{position:fixed;inset:0;background:#fff;z-index:500;display:none;align-items:center;justify-content:center;}
.pd-lightbox.open{display:flex;}
.pd-lightbox-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:70px 90px;}
.pd-lightbox-stage img{max-width:100%;max-height:100%;object-fit:contain;animation:pdLightboxIn .25s ease;}
@keyframes pdLightboxIn{from{opacity:0;transform:scale(.97);}to{opacity:1;transform:scale(1);}}
.pd-lightbox-close{position:absolute;top:24px;right:24px;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);z-index:2;transition:background .15s ease;}
.pd-lightbox-close:hover{background:var(--cream);}
.pd-lightbox-nav{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 10px;display:flex;align-items:center;gap:6px;box-shadow:var(--shadow-1);}
.pd-lightbox-nav-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);transition:background .15s ease;}
.pd-lightbox-nav-btn:hover{background:var(--cream);}
.pd-lightbox-nav-btn svg{width:14px;height:14px;}
.pd-lightbox-nav span{font-size:13px;font-weight:700;min-width:40px;text-align:center;}

/* ---------- Before/After comparison slider ---------- */
.ba-slider{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-l);overflow:hidden;box-shadow:var(--shadow-2);cursor:ew-resize;user-select:none;-webkit-user-select:none;touch-action:pan-y;}
.ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;}
/* Anchored to the right edge (not left) so it reveals the "after" image
   growing in from the right as the handle moves left — matching the
   Before-label-left / After-label-right convention below. */
.ba-after-wrap{position:absolute;inset:0;left:auto;width:50%;overflow:hidden;}
.ba-after-wrap .ba-img{position:absolute;inset:0;left:auto;width:var(--ba-w,100vw);max-width:none;height:100%;}
.ba-handle{position:absolute;top:0;bottom:0;left:50%;width:0;transform:translateX(-50%);z-index:2;}
.ba-handle::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(0,0,0,0.08);}
.ba-handle-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:#fff;box-shadow:var(--shadow-2);display:flex;align-items:center;justify-content:center;gap:1px;color:var(--ink);}
.ba-handle-btn svg{width:12px;height:12px;}
.ba-label{position:absolute;top:16px;background:rgba(20,18,12,0.72);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:6px 14px;border-radius:999px;pointer-events:none;z-index:1;}
.ba-label-before{left:16px;}
.ba-label-after{right:16px;}
@media (max-width:900px){
  .pd-lightbox-stage{padding:60px 60px;}
}
@media (max-width:480px){
  .pd-zoom-btn{width:34px;height:34px;top:10px;right:10px;}
  .pd-zoom-btn svg{width:15px;height:15px;}
  .pd-lightbox-stage{padding:70px 20px 90px;}
  .pd-lightbox-close{top:14px;right:14px;width:38px;height:38px;}
  .pd-lightbox-nav{bottom:20px;padding:5px 8px;gap:2px;}
  .pd-lightbox-nav-btn{width:30px;height:30px;}
}
.pd-info .eyebrow{margin-bottom:10px;display:block;}
.pd-info h1{font-size:clamp(26px,3vw,34px);margin-bottom:10px;line-height:1.15;}
.live-viewers{display:inline-flex;align-items:center;gap:8px;background:#FBEDE9;color:var(--danger);padding:7px 14px;border-radius:999px;font-size:12.5px;font-weight:700;margin:6px 0 4px;}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);animation:pulse 1.6s infinite;flex-shrink:0;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(178,59,46,0.45);}70%{box-shadow:0 0 0 8px rgba(178,59,46,0);}100%{box-shadow:0 0 0 0 rgba(178,59,46,0);}}
.pd-price{display:flex;align-items:baseline;gap:12px;margin:16px 0;}
.pd-price .now{font-size:28px;font-weight:700;font-family:'Fraunces',serif;color:var(--leaf-dark);}
.pd-price .mrp{font-size:16px;text-decoration:line-through;color:#a79f8c;}
.pd-price .off{background:#FBEDE9;color:var(--danger);font-size:12.5px;font-weight:700;padding:4px 9px;border-radius:6px;}
.pd-tax{font-size:12.5px;color:var(--ink-soft);margin-bottom:20px;}
.pd-stock-alert{display:inline-flex;align-items:center;gap:7px;background:#FCEEE7;color:var(--danger);font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:999px;margin-bottom:16px;}
.pd-stock-alert svg{width:15px;height:15px;flex-shrink:0;}
.pd-desc{margin-bottom:22px;}
.opt-block{margin-bottom:22px;}
.opt-block h5{font-size:13px;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:0.04em;color:var(--leaf-dark);}
.swatches{display:flex;gap:14px;flex-wrap:wrap;}
.swatch-opt{display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer;}
.swatch-box{width:56px;height:56px;border-radius:12px;border:2px solid var(--line);overflow:hidden;background:var(--cream-2);transition:border-color .15s, transform .15s;}
.swatch-box img{width:100%;height:100%;object-fit:cover;}
.swatch-opt:hover .swatch-box{transform:translateY(-2px);}
.swatch-opt.active .swatch-box{border-color:var(--kesari);box-shadow:0 0 0 1.5px var(--kesari);}
.swatch-label{font-size:11px;font-weight:700;color:var(--ink-soft);background:var(--cream-2);padding:3px 11px;border-radius:999px;transition:background .15s, color .15s;}
.swatch-opt.active .swatch-label{background:var(--kesari);color:#fff;}
.pack-opts{display:flex;gap:10px;flex-wrap:wrap;}
.pack-opt{padding:9px 18px;border-radius:999px;border:1.5px solid var(--line);font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;transition:border-color .15s, background .15s, color .15s;}
.pack-opt:hover{border-color:var(--kesari-light);}
.pack-opt.active{border-color:var(--kesari);background:var(--kesari);color:#fff;}
.qty-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;}
.qty-stepper button{width:38px;height:40px;background:#fff;border:none;font-size:16px;color:var(--ink);}
.qty-stepper button:hover{background:var(--cream-2);}
.qty-stepper span{width:38px;text-align:center;font-weight:700;}
.pd-actions{display:flex;gap:12px;margin:26px 0;}
.pd-actions .btn{flex:1;padding:16px;}

/* Buy Now — payment badges float inside the button on the right, and a
   light diagonal shine sweeps across it every few seconds. Pauses on
   hover so it doesn't fight the existing hover state. */
.pd-buynow-btn{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;animation:pdBuyNowPulse 2.4s ease-in-out infinite;}
.pd-buynow-btn:hover{animation-play-state:paused;}
.pd-buynow-btn:hover .pd-buynow-shine{animation-play-state:paused;}
@keyframes pdBuyNowPulse{
  0%, 100%{box-shadow:0 8px 20px rgba(225,122,31,0.28), 0 0 0 0 rgba(225,122,31,0.35);}
  50%{box-shadow:0 8px 20px rgba(225,122,31,0.28), 0 0 0 8px rgba(225,122,31,0);}
}
.pd-buynow-label{display:flex;align-items:center;gap:8px;white-space:nowrap;}
.pd-buynow-shine{position:absolute;top:0;left:-75%;width:45%;height:100%;background:linear-gradient(115deg, transparent, rgba(255,255,255,0.55), transparent);transform:skewX(-20deg);animation:pdBuyNowShine 2.8s ease-in-out infinite;pointer-events:none;}
@keyframes pdBuyNowShine{
  0%{left:-75%;}
  35%{left:130%;}
  100%{left:130%;}
}

.pd-buynow-badges{display:flex;align-items:center;flex-shrink:0;}
.pd-pay-badge{width:22px;height:22px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.9);position:relative;}
.pd-pay-badge:nth-child(1){z-index:3;transform:translateX(0px);}
.pd-pay-badge:nth-child(2){z-index:2;transform:translateX(-6px);}
.pd-pay-badge:nth-child(3){z-index:1;transform:translateX(-12px);}
.pd-pay-badge svg{width:100%;height:100%;}
.pd-pay-text{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-soft);margin:-16px 0 20px 2px;}
.pd-pay-text svg{width:13px;height:13px;flex-shrink:0;}
.pd-meta-row{display:flex;gap:20px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);margin-top:6px;}
.pd-meta-item{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--ink-soft);max-width:150px;}
.pd-meta-item svg{color:var(--leaf-dark);flex-shrink:0;}
.pd-meta-item strong{display:block;color:var(--ink);font-size:12.5px;}

/* Tabs */
.pd-tabs{display:flex;gap:8px;background:var(--cream-2);padding:6px;border-radius:999px;margin-bottom:28px;overflow-x:auto;width:fit-content;max-width:100%;scrollbar-width:none;-ms-overflow-style:none;}
.pd-tabs::-webkit-scrollbar{display:none;}
.pd-tab-btn{padding:11px 22px;font-weight:700;font-size:13.5px;color:var(--ink-soft);border:none;background:none;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .2s ease, color .2s ease, box-shadow .2s ease;}
.pd-tab-btn:hover{color:var(--ink);}
.pd-tab-btn.active{color:#fff;background:var(--kesari);box-shadow:0 6px 16px rgba(225,122,31,0.32);}
.pd-tab-panel{display:none;}
.pd-tab-panel.active{display:block;}
.dims-table{width:100%;border-collapse:collapse;margin-top:6px;}
.dims-table td{padding:11px 4px;border-bottom:1px solid var(--line);font-size:14px;}
.dims-table td:first-child{color:var(--ink-soft);width:46%;}
.dims-table td:last-child{font-weight:700;color:var(--ink);}

.reviews-summary{display:flex;gap:40px;padding:26px;background:var(--cream-2);border-radius:var(--radius-m);margin-bottom:26px;}
.rs-score{text-align:center;}
.rs-score strong{font-family:'Fraunces',serif;font-size:44px;display:block;color:var(--leaf-dark);}
.rs-bars{flex:1;display:flex;flex-direction:column;gap:6px;justify-content:center;}
.rs-bar-row{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-soft);}
.rs-bar-track{flex:1;height:6px;background:#fff;border-radius:4px;overflow:hidden;}
.rs-bar-fill{height:100%;background:var(--gold);}
.review-card{padding:18px 0;border-bottom:1px solid var(--line);}
.review-head{display:flex;justify-content:space-between;margin-bottom:8px;}
.review-head strong{font-size:14px;}
.review-head span{font-size:12px;color:var(--ink-soft);}
.review-verified-badge{display:inline-flex;align-items:center;gap:4px;background:#EAF5EC;color:#2F8A4E;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;}
.review-verified-badge svg{width:11px;height:11px;}
.review-photo-grid{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;}
.review-photo-grid img{width:72px;height:72px;object-fit:cover;border-radius:8px;border:1px solid var(--line);}

.related-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}

/* sticky mobile add to cart */
.sticky-add{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:10px 14px;z-index:81;box-shadow:0 -6px 20px rgba(0,0,0,0.08);}
.sticky-add-row{display:flex;align-items:center;gap:10px;}
.sticky-add-left{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.sticky-add .price{font-weight:700;font-family:'Fraunces',serif;font-size:15px;flex-shrink:0;line-height:1.15;}
.sticky-add .price small{display:block;font-family:'Inter';font-weight:500;font-size:10px;color:var(--ink-soft);text-decoration:line-through;}
.sticky-add-left .btn-outline{width:36px;height:36px;padding:0;flex-shrink:0;}
.sticky-add-row .pd-buynow-btn{flex:1;min-width:0;padding:12px 10px;font-size:14px;gap:6px;}
.sticky-add-row .pd-buynow-label{white-space:nowrap;}

/* ---------- Cart page ---------- */
.gift-box{background:linear-gradient(135deg,#FFF8EF,#F8EFDA);border:1px solid #EBD9B4;border-radius:var(--radius-m);padding:16px 18px;margin-bottom:22px;}
.gift-box .gb-top{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;color:var(--leaf-dark);margin-bottom:10px;}
.gift-bar-track{height:9px;background:#EADFC2;border-radius:999px;overflow:hidden;}
.gift-bar-fill{height:100%;background:linear-gradient(90deg,var(--kesari),var(--gold));border-radius:999px;transition:width .5s ease;}
.gift-box.unlocked{background:linear-gradient(135deg,#EAF1DE,#F3F7EA);border-color:#CFE0B4;}
.gift-box.unlocked .gb-top{color:var(--leaf);}

.cart-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;padding:20px 0 80px;align-items:start;}
.cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center;}
.cart-item .thumb{width:90px;height:90px;background:var(--cream-2);border-radius:12px;overflow:hidden;}
.cart-item .thumb img{width:100%;height:100%;object-fit:cover;}
.cart-item h4{font-size:15.5px;margin-bottom:4px;}
.cart-item .variant{font-size:12.5px;color:var(--ink-soft);margin-bottom:8px;}
.cart-item-actions{display:flex;align-items:center;gap:16px;}
.remove-link{font-size:12.5px;color:var(--ink-soft);display:flex;align-items:center;gap:4px;background:none;border:none;}
.remove-link:hover{color:var(--danger);}
.cart-price-col{text-align:right;}
.cart-price-col strong{font-family:'Fraunces',serif;font-size:16px;}
.freebie-row{display:flex;gap:14px;align-items:center;padding:14px;background:#FFF8EF;border-radius:12px;margin-bottom:14px;border:1px dashed var(--gold);}
.freebie-row .thumb{width:56px;height:56px;border-radius:10px;background:var(--cream-3);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--kesari-dark);}
.freebie-tag{background:var(--leaf);color:#fff;font-size:10px;padding:3px 8px;border-radius:999px;font-weight:700;letter-spacing:0.03em;}
.summary-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:26px;position:sticky;top:calc(var(--header-h) + 20px);}
.summary-row{display:flex;justify-content:space-between;font-size:14px;color:var(--ink-soft);padding:8px 0;}
.summary-row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;font-weight:700;color:var(--ink);font-size:16px;}
.summary-row.total .val{font-family:'Fraunces',serif;font-size:20px;color:var(--leaf-dark);}
.promo-row{display:flex;gap:8px;margin:16px 0;}
.promo-row input{flex:1;border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-size:13.5px;}
.secure-badge{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-soft);}
.secure-badge svg{width:15px;height:15px;flex-shrink:0;}
.empty-cart{text-align:center;padding:90px 20px;}
.empty-cart svg{color:var(--cream-3);margin-bottom:18px;}

/* ---------- Cart drawer ---------- */
.cart-drawer-scrim{position:fixed;inset:0;background:rgba(20,18,12,0.5);z-index:150;display:none;}
.cart-drawer-scrim.open{display:block;}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;height:100vh;height:100dvh;width:min(420px,94vw);background:#fff;z-index:160;transform:translateX(105%);transition:transform .32s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;box-shadow:-14px 0 44px rgba(0,0,0,0.2);}
.cart-drawer.open{transform:translateX(0);}
.cd-head{padding:20px 20px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;}
.cd-head h3{font-size:18px;}
.cd-body{flex:1;overflow-y:auto;padding:0 20px;}
.cd-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);}
.cd-item .thumb{width:64px;height:64px;border-radius:10px;overflow:hidden;flex-shrink:0;background:var(--cream-2);}
.cd-item .thumb img{width:100%;height:100%;object-fit:cover;}
.cd-item h5{font-size:13.5px;font-weight:700;margin-bottom:2px;font-family:'Inter';color:var(--ink);}
.cd-item .variant{font-size:11.5px;color:var(--ink-soft);margin-bottom:6px;}
.cd-item .row-btm{display:flex;justify-content:space-between;align-items:center;}
.cd-foot{padding:18px 20px;border-top:1px solid var(--line);flex-shrink:0;}
.cd-subtotal{display:flex;justify-content:space-between;font-size:15px;font-weight:700;margin-bottom:14px;}
.cd-subtotal span:last-child{font-family:'Fraunces',serif;font-size:18px;color:var(--leaf-dark);}
.cd-actions{display:flex;flex-direction:column;gap:10px;}
.cd-empty{padding:60px 10px;text-align:center;}
.cd-empty svg{color:var(--cream-3);margin-bottom:14px;}

/* ---------- Checkout ---------- */
.checkout-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;padding:30px 0 80px;align-items:start;}
.checkout-step{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:26px;margin-bottom:20px;}
.checkout-step h3{font-size:16px;margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.checkout-step h3 .num{width:26px;height:26px;border-radius:50%;background:var(--kesari);color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center;font-family:'Inter';}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.checkout-addr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:16px;}
.checkout-addr-card{text-align:left;background:var(--cream);border:1.5px solid var(--line);border-radius:var(--radius-s);padding:14px;display:flex;flex-direction:column;gap:5px;cursor:pointer;transition:border-color .15s, background .15s;font-family:inherit;}
.checkout-addr-card:hover{border-color:var(--kesari-light);}
.checkout-addr-card.selected{border-color:var(--kesari);background:#FFF8EF;}
.checkout-addr-card .tag{display:inline-block;background:var(--cream-2);color:var(--leaf-dark);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;padding:3px 9px;border-radius:999px;width:fit-content;}
.checkout-addr-card strong{font-size:13.5px;}
.checkout-addr-card span:not(.tag){font-size:12px;color:var(--ink-soft);line-height:1.4;}
.checkout-addr-card.checkout-addr-new{align-items:center;justify-content:center;flex-direction:row;gap:8px;color:var(--kesari-dark);font-weight:700;font-size:13.5px;border-style:dashed;}
.checkout-addr-card.checkout-addr-new.selected{background:#FFF8EF;}
.order-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.form-grid.full{grid-template-columns:1fr;}
.field label{font-size:12.5px;font-weight:700;color:var(--leaf-dark);margin-bottom:6px;display:block;}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-s);padding:12px 14px;font-size:14px;background:var(--cream);}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--kesari);background:#fff;}
.pay-options{display:flex;flex-direction:column;gap:10px;}
.pay-opt{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--radius-s);padding:14px;cursor:pointer;}
.pay-opt.selected{border-color:var(--kesari);background:#FFF8EF;}
.pay-opt input{accent-color:var(--kesari);}
.order-confirm{text-align:center;padding:80px 20px;max-width:520px;margin:0 auto;}
.order-confirm .check-circle{width:74px;height:74px;border-radius:50%;background:#EAF1DE;color:var(--leaf);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;}

/* ---------- About page ---------- */
.about-hero{position:relative;background:var(--leaf-dark);padding:120px 0 92px;overflow:hidden;}
.about-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.about-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,38,17,0.6),rgba(20,26,12,0.93));z-index:1;}
.about-hero .container{position:relative;z-index:2;max-width:760px;text-align:center;margin:0 auto;}
.about-hero .eyebrow{color:var(--kesari-light);}
.about-hero h1{color:#fff;font-size:clamp(32px,4.4vw,52px);margin:16px 0;}
.about-hero p{color:#C9C2AC;font-size:16.5px;max-width:600px;margin:0 auto;}
.about-hero-stats{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:26px;}
.about-hero-stats span{color:#EDE7D3;font-size:13px;font-weight:600;}
.about-hero-stats i{width:4px;height:4px;border-radius:50%;background:var(--kesari-light);display:inline-block;opacity:0.7;}

/* Alternating story chapters */
.story-chapter{display:grid;grid-template-columns:0.95fr 1.05fr;gap:52px;align-items:center;}
.story-chapter.reverse{grid-template-columns:1.05fr 0.95fr;}
.story-chapter.reverse .story-chapter-art{order:2;}
.story-chapter-art{position:relative;border-radius:var(--radius-l);overflow:hidden;height:440px;}
.story-chapter-art img{width:100%;height:100%;object-fit:cover;display:block;}
.story-chapter-copy .eyebrow{margin-bottom:12px;display:block;}
.story-chapter-copy h2{font-size:clamp(24px,2.8vw,34px);margin-bottom:16px;}
.story-chapter-copy p{font-size:15.5px;margin-bottom:14px;}
.story-chapter-copy p:last-child{margin-bottom:0;}
@media (max-width:860px){
  .story-chapter, .story-chapter.reverse{grid-template-columns:1fr;gap:24px;}
  .story-chapter.reverse .story-chapter-art{order:-1;}
  .story-chapter-art{height:auto;aspect-ratio:4/3;}
}

/* What makes KesariNest different — punchy bullet list */
.diff-list{width:100%;}
.diff-list li{display:flex;align-items:flex-start;gap:16px;font-family:'Fraunces',serif;font-size:clamp(18px,2.1vw,24px);color:var(--leaf-dark);padding:18px 0;border-top:1px solid var(--line);}
.diff-list li:last-child{border-bottom:1px solid var(--line);}
.diff-list li svg{flex-shrink:0;margin-top:6px;color:var(--kesari-dark);}

/* The story behind the name */
.name-story{background:var(--cream-2);border-radius:var(--radius-l);padding:52px 48px;}
.name-story-intro{max-width:680px;margin:0 auto 40px;text-align:center;}
.name-story-intro h2{font-size:clamp(26px,3vw,36px);margin:12px 0 14px;}
.name-story-intro p{font-size:15.5px;}
.name-story-blocks{display:flex;flex-direction:column;gap:26px;max-width:740px;margin:0 auto;}
.name-story-block{border-left:3px solid var(--kesari-light);padding-left:22px;}
.name-story-block h4{font-size:17px;margin-bottom:6px;}
.name-story-block p{font-size:14.5px;}
.name-story-outro{max-width:660px;margin:34px auto 0;text-align:center;font-size:15px;}
.name-story-quote{margin:22px auto 0;text-align:center;font-family:'Fraunces',serif;font-style:italic;font-size:clamp(18px,2.1vw,23px);color:var(--leaf-dark);max-width:640px;line-height:1.6;}
@media (max-width:640px){
  .name-story{padding:32px 22px;}
  .name-story-block{padding-left:16px;}
}

/* Purpose statement band */
.purpose-band{background:var(--leaf-dark);border-radius:var(--radius-l);padding:70px 40px;text-align:center;}
.purpose-band p{font-family:'Fraunces',serif;font-style:italic;color:#fff;font-size:clamp(21px,2.6vw,32px);line-height:1.5;max-width:820px;margin:0 auto;}

/* Closing note + CTA */
.closing-cta{text-align:center;max-width:600px;margin:0 auto;}
.closing-cta p{font-size:16px;margin-bottom:8px;}
.closing-cta .cc-signature{font-family:'Fraunces',serif;font-style:italic;font-size:17px;color:var(--leaf-dark);margin:18px 0 28px;display:block;}

/* ---------- Bulk Orders page ---------- */
.bulk-category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
.bulk-category-card{background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-m);padding:26px 14px;text-align:center;cursor:pointer;transition:border-color .15s ease, transform .15s ease, background .15s ease;font-family:inherit;}
.bulk-category-card:hover{border-color:var(--kesari-light);transform:translateY(-3px);}
.bulk-category-card.active{border-color:var(--kesari);background:#FFF8EF;}
.bulk-category-card svg{color:var(--kesari-dark);margin-bottom:10px;}
.bulk-category-card span{display:block;font-weight:700;font-size:13.5px;color:var(--ink);}
@media (max-width:900px){ .bulk-category-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:560px){ .bulk-category-grid{grid-template-columns:repeat(2,1fr);} }

/* ---------- Lead hero (hero copy + form, side by side) ---------- */
/* Used by lead-gen pages (Bulk Orders, Invest With Us) so the actual form is
   visible without scrolling, instead of being buried at the bottom of a long
   page. */
.lead-hero{position:relative;background:var(--leaf-dark);padding:64px 0;overflow:hidden;}
.lead-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.lead-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(20,26,12,0.95),rgba(20,26,12,0.8));z-index:1;}
.lead-hero .container{position:relative;z-index:2;}
.lead-hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:48px;align-items:center;}
.lead-hero-copy .eyebrow{color:var(--kesari-light);margin-bottom:14px;display:block;}
.lead-hero-copy h1{color:#fff;font-size:clamp(28px,3.4vw,44px);margin-bottom:16px;}
.lead-hero-copy p{color:#C9C2AC;font-size:15.5px;max-width:480px;margin-bottom:22px;}
.lead-hero-stats{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.lead-hero-stats span{color:#EDE7D3;font-size:13px;font-weight:600;}
.lead-hero-stats i{width:4px;height:4px;border-radius:50%;background:var(--kesari-light);display:inline-block;opacity:0.7;}
.lead-hero-form{background:#fff;border-radius:var(--radius-l);padding:32px;box-shadow:var(--shadow-2);}
.lead-hero-form h3{margin-bottom:4px;}
.lead-hero-form>p{margin-bottom:18px;}
@media (max-width:900px){
  .lead-hero{padding:40px 0 48px;}
  .lead-hero-grid{grid-template-columns:1fr;gap:28px;}
  .lead-hero-form{padding:24px;}
}

/* ---------- Dark contrast band (white cards on a dark section) ---------- */
.dark-band{background:var(--leaf-dark);padding:64px 0;}
.dark-band .section-head .eyebrow{color:var(--kesari-light);}
.dark-band .section-head h2{color:#fff;}
.dark-band .section-head p{color:#C9C2AC;}

/* ---------- Invest With Us page ---------- */
.invest-intro{max-width:720px;margin:0 auto;text-align:center;}
.invest-intro p{font-size:16.5px;margin-bottom:16px;}
.invest-intro p:first-of-type{font-family:'Fraunces',serif;font-size:clamp(20px,2.2vw,26px);color:var(--leaf-dark);line-height:1.5;}
.invest-split{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.invest-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:32px;}
.invest-panel h3{font-size:18px;margin-bottom:12px;}
.invest-panel p{font-size:14.5px;}
@media (max-width:860px){ .invest-split{grid-template-columns:1fr;} }

.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.values-grid.cols-3{grid-template-columns:repeat(3,1fr);}
.value-card{padding:30px 24px;border-radius:var(--radius-m);background:#fff;border:1px solid var(--line);text-align:left;}
.value-card svg{color:var(--kesari-dark);margin-bottom:16px;}
.value-card h4{font-size:16px;margin-bottom:8px;}
.value-card p{font-size:13.5px;}
.process-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.process-row.cols-3{grid-template-columns:repeat(3,1fr);}
.process-row::before{content:'';position:absolute;top:26px;left:8%;right:8%;height:1px;background:var(--line);z-index:0;}
.process-step{text-align:center;position:relative;z-index:1;padding:0 14px;}
.process-step .num-circ{width:52px;height:52px;border-radius:50%;background:var(--cream);border:2px solid var(--kesari);color:var(--kesari-dark);font-family:'Fraunces',serif;font-size:19px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-weight:600;}
.process-step h5{font-size:14.5px;margin-bottom:8px;}
.process-step p{font-size:12.5px;}
.founder-row{display:grid;grid-template-columns:0.7fr 1.3fr;gap:44px;align-items:center;background:var(--cream-2);border-radius:var(--radius-l);padding:48px;}
.founder-art{aspect-ratio:1/1;border-radius:var(--radius-m);overflow:hidden;}
.founder-art img{width:100%;height:100%;object-fit:cover;}
.founder-quote{font-family:'Fraunces',serif;font-style:italic;font-size:20px;color:var(--leaf-dark);line-height:1.5;margin-bottom:16px;}

/* ---------- Contact page ---------- */
.contact-layout{display:grid;grid-template-columns:0.9fr 1.1fr;gap:50px;padding:20px 0 80px;}
.contact-info-card{background:var(--leaf-dark);color:#EDE7D3;border-radius:var(--radius-l);padding:40px;}
.contact-info-card h3{color:#fff;font-size:22px;margin-bottom:18px;}
.contact-info-row{display:flex;gap:14px;padding:16px 0;border-top:1px solid rgba(255,255,255,0.12);}
.contact-info-row svg{color:var(--kesari-light);flex-shrink:0;}
.contact-info-row strong{display:block;font-size:14px;color:#fff;margin-bottom:2px;}
.contact-info-row span{font-size:13px;color:#B7B49C;}
.map-box{margin-top:26px;border-radius:var(--radius-m);overflow:hidden;}
.faq-wrap{margin-top:16px;}
.accordion-item{border-bottom:1px solid var(--line);}
.accordion-head{display:flex;justify-content:space-between;align-items:center;padding:18px 2px;cursor:pointer;font-weight:700;font-size:14.5px;color:var(--leaf-dark);}
.accordion-head svg{transition:transform .2s;flex-shrink:0;}
.accordion-item.open .accordion-head svg{transform:rotate(45deg);}
.accordion-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease;}
.accordion-item.open .accordion-body{grid-template-rows:1fr;}
.accordion-body-inner{overflow:hidden;min-height:0;font-size:14px;color:var(--ink-soft);}
.accordion-body-inner p{padding:0 2px 18px;margin:0;}

/* ---------- Toast ---------- */
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(10px);background:var(--leaf-dark);color:#fff;padding:14px 22px;border-radius:999px;font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow-2);z-index:200;opacity:0;pointer-events:none;transition:opacity .25s, transform .25s;}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;}
.toast svg{color:var(--kesari-light);flex-shrink:0;}

/* ---------- Mobile bottom nav ---------- */
.bottom-nav{display:none;}

/* ---------- Grid view toggle ---------- */
.view-toggle{display:flex;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px;box-shadow:var(--shadow-1);}
.view-toggle a{width:34px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:background .18s ease, color .18s ease, box-shadow .18s ease;}
.view-toggle a:hover{color:var(--ink);background:var(--cream-2);}
.view-toggle a.active{background:var(--kesari);color:#fff;box-shadow:0 4px 12px rgba(225,122,31,0.35);}
.view-toggle a.active:hover{background:var(--kesari);color:#fff;}

/* ---------- Marketplace badges ---------- */
.marketplace-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;}
.marketplace-row span.label{font-size:12px;color:var(--ink-soft);font-weight:600;}
.mp-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:700;text-decoration:none;}
.mp-badge.amazon{background:#131921;color:#FF9900;}
.mp-badge.amazon span{color:#fff;}
.marketplace-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;}
.marketplace-strip .container{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;}
.marketplace-strip span.label{font-size:13px;color:var(--ink-soft);font-weight:600;}

/* ---------- Full-width detail sections ---------- */
.pd-detail-section{padding:44px 0;border-top:1px solid var(--line);}
.pd-detail-section:first-of-type{border-top:none;}

/* ---------- YouTube embeds (product video + unboxing) — full width, autoplay muted ---------- */
.yt-embed-wrap{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-l);overflow:hidden;box-shadow:var(--shadow-2);background:#000;}
.yt-embed-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.yt-embed-placeholder{width:100%;aspect-ratio:16/9;border-radius:var(--radius-l);background:var(--cream-2);border:1.5px dashed var(--cream-3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--ink-soft);}
.yt-embed-placeholder svg{color:var(--kesari-dark);margin-bottom:4px;}
.yt-embed-placeholder code{background:#fff;padding:2px 6px;border-radius:5px;font-size:12px;}

/* ---------- Feature Highlight Cards (product page A+ content) ---------- */
.feature-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;}
.feature-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden;box-shadow:var(--shadow-1);}
.feature-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.feature-card-body{padding:18px;}
.feature-card-body h4{font-size:16px;margin-bottom:8px;overflow-wrap:break-word;}
.feature-card-body p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;}
@media (max-width:720px){
  .feature-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .feature-card-body{padding:12px;}
  .feature-card-body h4{font-size:13.5px;}
  .feature-card-body p{font-size:11.5px;}
}

/* ---------- Product page image slider — a real horizontal slider on every screen size, not just mobile ---------- */
.pd-slides{position:relative;}
.pd-slides-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:var(--kesari) var(--cream-2);}
.pd-slides-grid::-webkit-scrollbar{height:5px;}
.pd-slides-grid::-webkit-scrollbar-track{background:var(--cream-2);border-radius:999px;}
.pd-slides-grid::-webkit-scrollbar-thumb{background:var(--kesari);border-radius:999px;}
.pd-slide{flex:0 0 auto;width:calc((100% - 3 * 16px) / 4);scroll-snap-align:start;}
.pd-slide img{width:100%;height:100%;border-radius:var(--radius-l);box-shadow:var(--shadow-2);aspect-ratio:1/1;object-fit:cover;display:block;}
.pd-slide-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:var(--shadow-2);display:flex;align-items:center;justify-content:center;z-index:5;border:none;color:var(--ink);transition:background .15s;}
.pd-slide-arrow:hover{background:var(--cream-2);}
.pd-slide-arrow.left{left:-10px;}
.pd-slide-arrow.right{right:-10px;}
@media (max-width:720px){
  .pd-slide{width:78vw;}
  .pd-slide img{aspect-ratio:16/9;}
  .pd-slide-arrow{display:none;}
}

/* ---------- Exclusive Offers slider (product page) ---------- */
.offers-block{margin-bottom:22px;}
.offers-block h4{font-size:20px;font-weight:800;margin-bottom:12px;}
.offers-slider{position:relative;}
.offers-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;}
.offers-track::-webkit-scrollbar{display:none;}
.offer-card{flex:0 0 auto;width:calc((100% - 28px) / 2.3);scroll-snap-align:start;border-radius:16px;padding:16px;box-shadow:var(--shadow-1);transition:transform .2s ease, box-shadow .2s ease;}
.offer-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2);}
.offer-card.theme-coupon{background:linear-gradient(120deg,#C0392B 0%,#E8827A 100%);}
.offer-card.theme-auto{background:linear-gradient(120deg,#E6F6E9 0%,#F6FBF4 100%);border:1px solid #D9EEDD;}
.offer-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.offer-card-title{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15.5px;min-width:0;}
.offer-card-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.theme-coupon .offer-card-title{color:#fff;}
.theme-auto .offer-card-title{color:var(--ink);}
.offer-icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.theme-coupon .offer-icon{background:rgba(255,255,255,0.22);color:#fff;}
.theme-auto .offer-icon{background:rgba(43,55,25,0.08);color:var(--leaf);}
.offer-badge{flex-shrink:0;font-size:11.5px;font-weight:800;letter-spacing:.02em;padding:5px 11px;border-radius:999px;border:1.5px dashed;white-space:nowrap;transition:background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;}
.theme-coupon .offer-badge{background:#fff;color:#B23B2E;border-color:#B23B2E;}
.theme-auto .offer-badge{background:#fff;color:var(--leaf);border-color:var(--leaf);}
.offer-badge[data-copy-code]{cursor:pointer;}
.offer-badge[data-copy-code]:hover{transform:scale(1.05);}
.offer-badge.copied{background:var(--ink);color:#fff;border-color:var(--ink);border-style:solid;}
.offer-desc{background:#fff;border-radius:11px;padding:13px 14px;font-size:13px;line-height:1.55;color:var(--ink-soft);}
.theme-auto .offer-desc{background:rgba(255,255,255,0.7);}
@media (max-width:720px){
  .offer-card{width:80vw;}
}

/* ---------- Watch & Shop (shoppable video reels) ---------- */
.ws-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;}
.ws-card{border-radius:var(--radius-m);overflow:hidden;position:relative;box-shadow:var(--shadow-1);cursor:pointer;border:1px solid var(--line);background:#000;transition:transform .2s, box-shadow .2s;}
.ws-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);}
.ws-card .ws-media{position:relative;aspect-ratio:9/20;background:#111;}
.ws-card .ws-media img,.ws-card .ws-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.ws-card .ws-badge{position:absolute;top:10px;left:10px;background:rgba(255,255,255,0.92);color:var(--leaf-dark);font-size:10px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;padding:4px 9px;border-radius:999px;}
.ws-card .ws-info{position:absolute;left:0;right:0;bottom:0;padding:14px 12px 12px;background:linear-gradient(0deg,rgba(0,0,0,0.82) 10%,rgba(0,0,0,0) 100%);color:#fff;}
.ws-card .ws-info .name{font-size:12.5px;font-weight:700;line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ws-card .ws-info .price-row{margin:0;gap:6px;}
.ws-card .ws-info .now{color:#fff;font-size:14px;}
.ws-card .ws-info .mrp{color:rgba(255,255,255,0.65);font-size:11.5px;}

.ws-modal-scrim{position:fixed;inset:0;background:rgba(10,9,6,0.9);z-index:300;display:none;align-items:center;justify-content:center;padding:20px;}
.ws-modal-scrim.open{display:flex;}
.ws-modal{width:min(880px,96vw);max-height:92vh;background:#fff;border-radius:var(--radius-l);overflow:hidden;display:grid;grid-template-columns:0.62fr 1fr;position:relative;}
.ws-modal-close{position:absolute;top:14px;right:14px;color:#fff;background:rgba(0,0,0,0.4);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;z-index:5;}
.ws-modal-video{background:#000;position:relative;aspect-ratio:9/16;max-height:92vh;}
.ws-modal-video video{width:100%;height:100%;object-fit:cover;}
.ws-modal-info{padding:34px;overflow-y:auto;}
.ws-modal-info .eyebrow{margin-bottom:10px;display:block;}

/* ---------- "Turn On Notifications?" prompt — minimal top-right toast ---------- */
.notif-scrim{position:fixed;top:110px;right:22px;z-index:400;display:none;pointer-events:none;}
.notif-scrim.show{display:block;}
.notif-card{position:relative;pointer-events:auto;width:min(320px,calc(100vw - 32px));background:#fff;border-radius:var(--radius-m);box-shadow:var(--shadow-2);border:1px solid var(--line);padding:18px;text-align:left;display:flex;flex-direction:column;gap:12px;animation:notifCardIn .3s ease;}
/* Speech-bubble pointer — a rotated square peeking above the card, with
   matching fill/border on its two outward-facing edges so it reads as one
   continuous shape with the card instead of a separate floating triangle. */
.notif-card::before{content:'';position:absolute;top:-8px;right:28px;width:16px;height:16px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);border-radius:3px 0 0 0;transform:rotate(45deg);}
@keyframes notifCardIn{from{opacity:0;transform:translate(10px,-6px);}to{opacity:1;transform:translate(0,0);}}
@keyframes iosGuideIn{from{opacity:0;transform:scale(.96);}to{opacity:1;transform:scale(1);}}
.notif-head{display:flex;align-items:flex-start;gap:12px;}
.notif-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--leaf);color:#fff;display:flex;align-items:center;justify-content:center;}
.notif-icon svg{width:18px;height:18px;}
.notif-body h3{font-size:14.5px;font-weight:800;margin-bottom:3px;}
.notif-body p{font-size:12px;color:var(--ink-soft);line-height:1.5;}
.notif-actions{display:flex;gap:8px;}
.notif-btn{flex:1;padding:9px 8px;border-radius:999px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s ease,transform .15s ease;white-space:nowrap;}
.notif-btn:active{transform:scale(0.97);}
.notif-btn-outline{background:#fff;border:1.5px solid var(--kesari);color:var(--kesari);}
.notif-btn-outline:hover{background:var(--cream);}
.notif-btn-solid{background:var(--kesari);border:1.5px solid var(--kesari);color:#fff;}
.notif-btn-solid:hover{background:var(--kesari-dark);}
@media (max-width:480px){
  .notif-scrim{top:70px;right:12px;left:12px;}
  .notif-card{width:100%;}
}
/* Same card styling as the notifications prompt, offset lower so the two
   never overlap if both happen to be eligible around the same time. */
.pwa-install-scrim{top:300px;}
@media (max-width:480px){
  .pwa-install-scrim{top:210px;}
}
.ws-modal-info h3{font-size:22px;margin-bottom:10px;}
.ws-modal-info .price-row{margin:12px 0 18px;}
.ws-modal-info .price-row .now{font-size:22px;}
@media (max-width:720px){
  .ws-modal{grid-template-columns:1fr;max-height:94vh;overflow-y:auto;}
  .ws-modal-video{aspect-ratio:9/13;width:100%;}
  .ws-modal-info{padding:22px;}
  .ws-strip{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;}
  .ws-strip::-webkit-scrollbar{display:none;}
  .ws-card{flex:0 0 auto;width:calc((100% - 24px) / 2.2);scroll-snap-align:start;}
}

/* ---------- Instagram / social proof section ---------- */
.insta-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:26px;}
.insta-follow-btn{display:inline-flex;align-items:center;gap:8px;}

/* ---------- Reels strip (real Instagram embeds) ---------- */
.insta-reel-strip{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;flex-wrap:wrap;}
.insta-reel-embed{flex:0 0 auto;min-width:326px;margin:0 !important;}

/* ---------- WhatsApp floating button ---------- */
.whatsapp-float{position:fixed;bottom:26px;right:22px;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(37,211,102,0.45);z-index:90;transition:transform .18s ease;}
.whatsapp-float:hover{transform:scale(1.06);}
@media (max-width:720px){
  .whatsapp-float{width:50px;height:50px;bottom:calc(78px + env(safe-area-inset-bottom));right:16px;}
  body:has(.sticky-add:not(:empty)) .whatsapp-float{bottom:calc(142px + env(safe-area-inset-bottom));}
}

/* ---------- Password show/hide toggle ---------- */
.pw-toggle-wrap{position:relative;}
.pw-toggle-btn{position:absolute;top:50%;right:6px;transform:translateY(-50%);background:none;border:none;padding:6px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);cursor:pointer;border-radius:50%;transition:color .15s, background .15s;}
.pw-toggle-btn:hover{color:var(--ink);background:var(--cream-2);}

/* ---------- Auth pages ---------- */
.auth-wrap{min-height:66vh;display:flex;align-items:center;justify-content:center;padding:60px 16px;}
.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:var(--radius-l);padding:40px;box-shadow:var(--shadow-1);}
.auth-card h1{font-size:26px;margin-bottom:6px;text-align:center;}
.auth-card p.sub{text-align:center;margin-bottom:26px;font-size:13.5px;}
.auth-field{margin-bottom:16px;}
.auth-field label{font-size:12.5px;font-weight:700;color:var(--leaf-dark);margin-bottom:6px;display:block;}
.auth-field input{width:100%;border:1px solid var(--line);border-radius:var(--radius-s);padding:12px 14px;font-size:14px;background:var(--cream);}
.auth-field input:focus{outline:none;border-color:var(--kesari);background:#fff;}
.auth-row-between{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:18px;flex-wrap:wrap;gap:8px;}
.auth-row-between label{display:flex;align-items:center;gap:6px;color:var(--ink-soft);}
.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--ink-soft);font-size:12px;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--line);}
.social-auth-row{display:flex;gap:10px;}
.social-auth-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-s);font-size:13px;font-weight:600;background:#fff;}
.social-auth-btn:hover{background:var(--cream-2);}
.auth-foot{text-align:center;margin-top:22px;font-size:13.5px;}

/* ---------- Account pages ---------- */
.account-layout{display:grid;grid-template-columns:260px 1fr;gap:34px;padding:30px 0 80px;align-items:start;}
.account-sidebar{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:20px;position:sticky;top:calc(var(--header-h) + 20px);}
.account-user{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:14px;}
.account-avatar{width:44px;height:44px;border-radius:50%;background:var(--cream-2);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:700;color:var(--leaf-dark);font-size:17px;flex-shrink:0;}
.account-user strong{display:block;font-size:14px;}
.account-user span{font-size:12px;color:var(--ink-soft);}
.account-nav a,.account-nav button{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:var(--radius-s);font-size:14px;font-weight:600;color:var(--ink);margin-bottom:2px;width:100%;text-align:left;background:none;border:none;cursor:pointer;}
.account-nav a:hover,.account-nav button:hover{background:var(--cream-2);}
.account-nav a.active{background:var(--cream-2);color:var(--kesari-dark);}
.account-nav .logout{color:var(--danger);margin-top:10px;border-top:1px solid var(--line);padding-top:12px;}
.account-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:30px;}
.account-panel h2{font-size:20px;margin-bottom:22px;}
.order-card{border:1px solid var(--line);border-radius:var(--radius-m);padding:20px;margin-bottom:16px;}
.order-card-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line);}
.order-status{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;text-transform:uppercase;}
.order-status.delivered{background:#EAF1DE;color:var(--leaf);}
.order-status.transit{background:#FBEDE9;color:var(--kesari-dark);}
.order-status.processing{background:var(--cream-2);color:var(--ink-soft);}
.order-items-list{display:flex;flex-direction:column;gap:12px;}
.order-item-row{display:flex;align-items:center;gap:12px;}
.order-item-row .thumb{width:56px;height:56px;border-radius:10px;overflow:hidden;flex-shrink:0;background:var(--cream-2);}
.order-item-row .thumb img{width:100%;height:100%;object-fit:cover;}
.order-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;}
.order-item-info .name{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.order-item-info .meta{font-size:11.5px;color:var(--ink-soft);}
.addr-card{border:1px solid var(--line);border-radius:var(--radius-m);padding:18px;margin-bottom:14px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.addr-card .tag{font-size:10.5px;font-weight:700;background:var(--cream-2);color:var(--leaf-dark);padding:3px 9px;border-radius:999px;text-transform:uppercase;margin-bottom:8px;display:inline-block;}
.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);}
.switch{position:relative;width:42px;height:24px;flex-shrink:0;display:inline-block;}
.switch input{opacity:0;width:0;height:0;position:absolute;}
.switch .slider{position:absolute;inset:0;background:var(--cream-3);border-radius:999px;transition:.2s;cursor:pointer;}
.switch .slider::before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,0.3);}
.switch input:checked + .slider{background:var(--leaf);}
.switch input:checked + .slider::before{transform:translateX(18px);}

/* ================= RESPONSIVE ================= */
@media (max-width:1080px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .founder-row{grid-template-columns:1fr;}
  .craft-premium{grid-template-columns:1fr;}
  .craft-photo-strip{height:auto;}
  .craft-photo{height:auto;aspect-ratio:3/4;}
  .craft-map-deco{display:none;}
}
@media (max-width:900px){
  .bundle-promo{grid-template-columns:1fr;}
  .bundle-promo-art{min-height:280px;order:-1;}
  .bundle-promo-copy{padding:36px 28px;}
}
@media (max-width:860px){
  .hero-inner{grid-template-columns:1fr;padding-top:30px;text-align:center;}
  .hero-copy .lead{margin-left:auto;margin-right:auto;}
  .hero-cta{justify-content:center;}
  .hero-stats{justify-content:center;}
  .hero-art{order:-1;max-width:320px;margin:0 auto 26px;}
  .hero-badge-float{left:50%;transform:translateX(-50%);}
  .hero-stats{gap:18px;flex-wrap:wrap;}
  .trust-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;}
  .spotlight{grid-template-columns:1fr;}
  .spotlight-art{min-height:260px;}
  .spotlight-copy{padding:40px 28px;text-align:center;}
  .spotlight-copy p{margin-left:auto;margin-right:auto;}
  .testi-grid{grid-template-columns:1fr;}
  .pd-layout{grid-template-columns:minmax(0,1fr);gap:30px;}
  .cart-layout,.checkout-layout,.contact-layout,.account-layout{grid-template-columns:minmax(0,1fr);}
  .account-sidebar{position:static;}
  .related-strip{grid-template-columns:repeat(2,1fr);}
  .shop-layout{grid-template-columns:minmax(0,1fr);}
  .filter-panel{position:fixed;top:0;left:0;bottom:0;height:100vh;height:100dvh;max-height:none;width:86vw;max-width:340px;z-index:120;border-radius:0;overflow-y:auto;transform:translateX(-105%);transition:transform .25s;box-shadow:var(--shadow-2);scrollbar-width:thin;scrollbar-color:var(--kesari) var(--cream-2);}
  .filter-panel::-webkit-scrollbar{width:6px;}
  .filter-panel::-webkit-scrollbar-track{background:var(--cream-2);}
  .filter-panel::-webkit-scrollbar-thumb{background:var(--kesari);border-radius:999px;}
  .filter-panel.open{transform:translateX(0);}
  .filter-toggle-mobile{display:inline-flex;}
  .filter-scrim{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:115;}
  .filter-scrim.open{display:block;}
  .values-grid{grid-template-columns:repeat(2,1fr);}
  .process-row{grid-template-columns:repeat(2,1fr);row-gap:30px;}
  .process-row::before{display:none;}
}
@media (max-width:720px){
  :root{--header-h:var(--header-h-mobile);}
  .announce{font-size:11px;height:34px;}
  .announce-item{padding:0 10px;}
  .nav-main{display:none;}
  .nav-scrim{display:none;position:fixed;inset:0;background:rgba(20,18,12,0.5);z-index:165;}
  .nav-scrim.open{display:block;}
  .header-inner{height:var(--header-h-mobile);}
  .logo-mark img{height:30px;}
  .icon-btn.desktop-only{display:none;}
  .hamburger{display:flex !important;}
  .container{padding-left:16px;padding-right:16px;}
  .section{padding:46px 0;}
  .section-head{flex-direction:column;align-items:flex-start;gap:8px;}
  .press-strip{gap:22px;}
  .press-strip span{font-size:13px;}

  /* Hero — collapsed into one compact overlay block instead of five
     stacked pieces (image, badge, eyebrow/heading/lead, CTAs, stats). */
  .hero-inner{position:relative;display:block;padding-top:0;padding-bottom:0;padding-left:0;padding-right:0;text-align:left;}
  .hero-art{order:0;max-width:100%;margin:0;}
  .hero-art .frame{max-width:100%;height:300px;border-radius:0;box-shadow:none;}
  .hero-art .frame img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;}
  .hero-art .frame::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,18,12,0.85) 0%,rgba(20,18,12,0.32) 42%,rgba(20,18,12,0) 68%);}
  .hero-badge-float{top:16px;left:16px;bottom:auto;transform:none;}
  .hero-copy{position:absolute;left:0;right:0;bottom:0;padding:20px 20px 26px;z-index:2;}
  .hero-copy .eyebrow{background:rgba(255,255,255,0.18);color:#fff;box-shadow:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
  .hero-copy h1{color:#fff;font-size:clamp(26px,7.5vw,34px);margin:14px 0 10px;}
  .hero-copy h1 em{color:var(--kesari-light);}
  .hero-copy p.lead{color:rgba(255,255,255,0.9);max-width:100%;font-size:14.5px;margin-bottom:18px;}
  .hero-cta{justify-content:flex-start;}
  .hero-cta .btn-outline{border-color:rgba(255,255,255,0.75);color:#fff;}
  .hero-stats{display:none;}

  /* Real admin-uploaded banners (Marketing → Banner Management) are trusted
     to carry their own message in the graphic itself — no HTML text/button/
     badge/scrim layered on top, just the image, swipeable via the existing
     dots. The no-banners fallback above keeps the overlay treatment since
     it has no designed graphic to rely on. */
  .hero-slides .hero-copy{display:none;}
  .hero-slides .hero-badge-float{display:none;}
  .hero-slides .hero-art .frame::after{content:none;}

  /* Dots overlay directly on the banner image (bottom-center) instead of
     floating in blank space below it — the mobile image is edge-to-edge,
     so this lines up exactly with it either way. */
  .hero-slide-dots{position:absolute;left:0;right:0;bottom:14px;padding-bottom:0;z-index:4;}
  .hero-slide-dot{background:rgba(255,255,255,0.55);}
  .hero-slide-dot.active{background:#fff;}
  .hero-slide-arrow{display:flex;width:32px;height:32px;}

  .rating-banner{display:none;}
  .press-strip{display:none;}

  /* About page hero — the mobile banner (Admin-uploaded photo) carries its
     own heading/text baked in, same convention as the homepage banners, so
     the real HTML text + dark scrim (both designed for a plain photo) are
     hidden here to avoid doubling up. */
  .about-hero{padding:0;height:300px;}
  .about-hero::before{content:none;}
  .about-hero .container{display:none;}

  /* Trust strip — one row of 4, icon above title, no subtext, matching the reference layout. */
  .trust-inner{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:20px 0;}
  .trust-item{flex-direction:column;align-items:center;text-align:center;gap:7px;}
  .trust-item svg{width:18px;height:18px;background:rgba(255,255,255,0.12);border-radius:50%;padding:9px;box-sizing:content-box;}
  .trust-item strong{font-size:10px;line-height:1.25;}
  .trust-item span{display:none;}
  .marketplace-strip .container{flex-direction:column;gap:8px;}
  .product-grid{grid-template-columns:repeat(min(var(--grid-cols,4),2),1fr);gap:12px;}
  .product-info{padding:12px;}
  .product-info h4{font-size:14px;}
  .price-row .now{font-size:15px;}
  /* No hover on touch devices — hide the image-overlay Add to Cart (mobile
     browsers can render :hover "stuck" over the card after a tap) and show
     the always-visible one below the price row instead. */
  .quick-add-hover{display:none;}
  .quick-add-static{display:block;padding:0 12px 12px;}
  .newsletter{flex-direction:column;text-align:center;padding:34px 22px;}
  .newsletter-form{min-width:0;width:100%;flex-direction:column;background:none;padding:0;border-radius:0;gap:12px;}
  .newsletter-form input{background:#fff;border-radius:999px;padding:15px 20px;width:100%;}
  .newsletter-form .btn{width:100%;padding:15px 20px;}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
  .footer-brand{grid-column:1/-1;}
  .footer-newsletter-form{flex-direction:column;}
  .footer-newsletter-form input{width:100%;}
  .footer-newsletter-form .btn{width:100%;}
  /* Bottom-nav (and sticky-add, on product pages) are fixed and need the
     page's last element pushed clear of them — putting that clearance on
     the footer's own bottom padding (instead of body) means the footer's
     dark background fills the reserved space instead of leaving a blank
     gap in the body's background color underneath it. */
  footer.site{padding-bottom:calc(88px + env(safe-area-inset-bottom));}
  .bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:80;padding:6px 4px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;box-shadow:0 -4px 16px rgba(0,0,0,0.06);}
  .bn-item{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--ink-soft);font-size:10px;font-weight:600;flex:1;padding:6px 0;position:relative;background:none;border:none;}
  .bn-item.active{color:var(--kesari-dark);}
  .bn-item .bn-badge{position:absolute;top:-2px;right:22%;background:var(--kesari);color:#fff;font-size:9px;min-width:14px;height:14px;border-radius:999px;display:flex;align-items:center;justify-content:center;}
  .values-grid{grid-template-columns:1fr;}
  .process-row{grid-template-columns:1fr;}
  .reviews-summary{flex-direction:column;gap:18px;text-align:center;}
  .rs-bars{width:100%;}
  .sticky-add:not(:empty){display:block;bottom:calc(58px + env(safe-area-inset-bottom));}
  body:has(.sticky-add:not(:empty)) footer.site{padding-bottom:calc(158px + env(safe-area-inset-bottom));}
  .related-strip{grid-template-columns:repeat(2,1fr);gap:12px;}
  .founder-row{padding:26px;}
  .cart-item{grid-template-columns:64px 1fr;column-gap:16px;row-gap:10px;align-items:flex-start;}
  .cart-item .thumb{width:64px;height:64px;}
  .form-grid{grid-template-columns:1fr;}
  .checkout-step{padding:18px;}
  .order-detail-grid{grid-template-columns:1fr;}
  .cart-price-col{grid-column:2/3;text-align:right;padding-top:10px;border-top:1px dashed var(--line);}
  .cart-price-col strong{font-size:17px;}
  .contact-info-card{padding:26px;}
  .filter-panel{width:88vw;}
  .cart-drawer{width:100vw;}
  .pd-tab-btn{padding:10px 16px;font-size:12.5px;}
  /* Thumbnail strip replaced by prev/next arrows directly on the main
     image — one big photo, no separate row of small thumbnails eating
     into vertical space. The thumbs stay in the DOM (just hidden) since
     the arrows drive them programmatically, reusing the same color-swap
     logic instead of duplicating state. */
  .pd-thumbs{display:none;}
  .pd-gallery-arrow{display:flex;}
  .pd-save-share-row{margin-top:0;gap:12px 16px;}
  .pd-share-label{display:none;}
  .ba-slider{aspect-ratio:4/5;border-radius:var(--radius-m);}
  .ba-handle-btn{width:36px;height:36px;}
  .ba-label{font-size:10px;padding:5px 11px;top:10px;}
  .view-toggle{display:none;}
  /* Native <select> sizes itself to its widest OPTION text ("Price: High
     to Low"), not the selected one — that pushed it wider than the row
     had room for, wrapping it below the Filters button instead of sitting
     beside it. Capping the width + ellipsis keeps it on the same line. */
  .shop-toolbar{flex-wrap:nowrap;}
  .shop-toolbar > div{flex-shrink:0;}
  .shop-toolbar .result-count{white-space:nowrap;}
  .sort-select{max-width:132px;padding:9px 26px 9px 12px;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background-position:right 10px center;}
  .account-layout{grid-template-columns:minmax(0,1fr);gap:18px;padding-bottom:24px;}
  .account-sidebar{position:static;}
  /* On mobile, sub-pages (Orders, Wishlist, Addresses, Settings, an order's
     own detail page) drop the full menu card entirely instead of stacking
     it above the content — the menu is redundant once you've already
     navigated into a section; the crumb + bottom nav's Account tab are the
     way back. Only the main account hub keeps the menu visible. */
  .account-layout--sub .account-sidebar{display:none;}
  .auth-card{padding:26px 22px;}

  .bundle-promo-copy{padding:28px 20px;}
  .bundle-recipe{gap:8px;}
  .bundle-recipe-item{width:100px;padding:10px;}
  .bundle-recipe-total{width:100%;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px 10px;}
  .bundle-recipe-total .brt-label{width:100%;margin-bottom:0;}
  .bundle-recipe-op{font-size:20px;}
  .bundle-save-badge{width:72px;height:72px;top:14px;right:14px;}
  .bundle-save-badge strong{font-size:14px;}

  .craft-premium{padding:22px;grid-template-columns:1fr;gap:24px;}
  .craft-photo-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;height:auto;}
  .craft-photo{height:auto;aspect-ratio:3/4;}
  .craft-photo-tag{padding:6px;gap:5px;}
  .craft-photo-tag svg{width:24px;height:24px;padding:5px;}
  .craft-photo-tag strong{font-size:9.5px;}
  .craft-photo-tag em{display:none;}
}

/* ---------- Nest Assistant chatbot ---------- */
.chatbot-launcher{position:fixed;bottom:96px;right:22px;width:58px;height:58px;border-radius:50%;background:var(--kesari);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(225,122,31,0.4);z-index:91;cursor:pointer;border:none;transition:transform .18s ease;}
.chatbot-launcher:hover{transform:scale(1.06);}
.chatbot-launcher.hide{display:none;}

.chatbot-proactive{position:fixed;bottom:168px;right:22px;max-width:230px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-m) var(--radius-m) 4px var(--radius-m);padding:14px 30px 14px 16px;box-shadow:var(--shadow-2);z-index:91;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .25s ease, transform .25s ease;}
.chatbot-proactive.show{opacity:1;transform:translateY(0);pointer-events:auto;}
.chatbot-proactive p{font-size:13.5px;color:var(--ink);margin:0;}
.chatbot-proactive-close{position:absolute;top:8px;right:8px;background:none;border:none;color:var(--ink-soft);cursor:pointer;padding:4px;line-height:0;}

.chatbot-window{position:fixed;bottom:96px;right:22px;width:380px;max-width:calc(100vw - 32px);height:600px;max-height:calc(100vh - 140px);background:var(--cream);border-radius:var(--radius-l);box-shadow:var(--shadow-2);display:flex;flex-direction:column;overflow:hidden;z-index:200;opacity:0;transform:translateY(16px) scale(0.98);pointer-events:none;transition:opacity .22s ease, transform .22s ease;}
.chatbot-window.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}

.chatbot-header{background:var(--leaf-dark);color:#fff;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.chatbot-header-info{display:flex;align-items:center;gap:12px;}
.chatbot-avatar{width:38px;height:38px;border-radius:50%;background:var(--kesari);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.chatbot-header-info strong{display:block;font-size:14.5px;}
.chatbot-header-info span{font-size:11.5px;color:#B7B49C;display:flex;align-items:center;gap:5px;}
.chatbot-header-info span::before{content:'';width:7px;height:7px;border-radius:50%;background:#4CAF50;display:inline-block;}
.chatbot-close{background:none;border:none;color:#fff;cursor:pointer;padding:6px;opacity:0.85;}
.chatbot-close:hover{opacity:1;}

.chatbot-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;}

.chatbot-msg{max-width:82%;padding:11px 14px;border-radius:16px;font-size:13.5px;line-height:1.5;animation:chatbotPop .2s ease;}
.chatbot-msg.bot{background:#fff;border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:4px;color:var(--ink);}
.chatbot-msg.user{background:var(--kesari);color:#fff;align-self:flex-end;border-bottom-right-radius:4px;}
.chatbot-msg a{color:inherit;text-decoration:underline;font-weight:600;}
@keyframes chatbotPop{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

.chatbot-typing{align-self:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;border-bottom-left-radius:4px;padding:12px 16px;display:flex;gap:4px;}
.chatbot-typing span{width:6px;height:6px;border-radius:50%;background:var(--ink-soft);opacity:0.5;animation:chatbotBlink 1.2s infinite;}
.chatbot-typing span:nth-child(2){animation-delay:.2s;}
.chatbot-typing span:nth-child(3){animation-delay:.4s;}
@keyframes chatbotBlink{0%,80%,100%{opacity:0.3;transform:scale(0.8);}40%{opacity:1;transform:scale(1);}}

.chatbot-quick-replies{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;max-width:100%;}
.chatbot-quick-replies button{background:#fff;border:1.5px solid var(--kesari-light);color:var(--kesari-dark);font-weight:600;font-size:12.5px;padding:9px 14px;border-radius:999px;cursor:pointer;transition:background .15s,color .15s;font-family:inherit;}
.chatbot-quick-replies button:hover{background:var(--kesari);color:#fff;border-color:var(--kesari);}
.chatbot-quick-replies button:disabled{opacity:0.45;cursor:default;}

.chatbot-products-list{display:flex;flex-direction:column;gap:8px;width:100%;align-self:flex-start;}
.chatbot-product-card{display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-m);padding:10px;align-items:center;text-decoration:none !important;color:inherit;transition:border-color .15s;}
.chatbot-product-card:hover{border-color:var(--kesari-light);}
.chatbot-product-card img{width:54px;height:54px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--cream-2);}
.chatbot-product-card-info{flex:1;min-width:0;}
.chatbot-product-card-info strong{display:block;font-size:12.5px;line-height:1.3;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;}
.chatbot-product-card-price{font-size:13px;font-weight:700;color:var(--kesari-dark);}
.chatbot-product-card-price s{color:var(--ink-soft);font-weight:400;font-size:11.5px;margin-left:5px;}

.chatbot-input-row{display:flex;gap:8px;padding:14px;border-top:1px solid var(--line);background:#fff;flex-shrink:0;}
.chatbot-input-row input{flex:1;border:1px solid var(--line);border-radius:999px;padding:11px 16px;font-size:13.5px;background:var(--cream);}
.chatbot-input-row input:focus{outline:none;border-color:var(--kesari);background:#fff;}
.chatbot-input-row button{width:40px;height:40px;border-radius:50%;background:var(--kesari);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
.chatbot-input-row button:hover{background:var(--kesari-dark);}

@media (max-width:720px){
  .chatbot-launcher{width:52px;height:52px;bottom:calc(140px + env(safe-area-inset-bottom));right:16px;}
  body:has(.sticky-add:not(:empty)) .chatbot-launcher{bottom:calc(204px + env(safe-area-inset-bottom));}
  .chatbot-proactive{bottom:calc(200px + env(safe-area-inset-bottom));right:16px;}
  body:has(.sticky-add:not(:empty)) .chatbot-proactive{bottom:calc(264px + env(safe-area-inset-bottom));}

  /* App-style full-screen takeover on mobile, not a floating panel. */
  .chatbot-window{bottom:0;right:0;left:0;top:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;transform:translateY(100%);}
  .chatbot-window.open{transform:translateY(0);}
  .chatbot-header{padding-top:calc(16px + env(safe-area-inset-top));}
  .chatbot-input-row{padding-bottom:calc(14px + env(safe-area-inset-bottom));}
}
