:root{
  --bg:#F6EFDF; --surface:#FFFFFF; --ink:#2B1710; --muted:#79604E;
  --maroon:#6E1620; --maroon-2:#8A2230; --maroon-dark:#4A0E16;
  --gold:#C07F1F; --gold-soft:#E7CF94; --terracotta:#C0531F; --olive:#5B5A2F;
  --line:rgba(110,22,32,.16);
  --serif:"Marcellus","Didot","Bodoni 72",Georgia,serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
/* Shadhirra always shows its warm cream Mudhraa-style palette — it does not
   switch to a dark theme on viewer system preference, matching the reference site. */
*,*::before,*::after{box-sizing:inherit}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 96px)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{max-width:1220px;margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15;margin:0}
h2{font-size:clamp(1.9rem,4vw,2.6rem)}
.lede{color:var(--muted);max-width:58ch;margin:.8rem 0 0}
.eyebrow{color:var(--terracotta);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin:0 0 .5rem}
.kicker{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--terracotta);margin-bottom:.4rem}
section{padding:72px 0}
.center{text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.7rem;border-radius:999px;border:1px solid var(--gold);background:var(--gold);color:#2B1710;text-decoration:none;cursor:pointer;font-weight:600;font-size:.95rem;transition:background .2s,transform .2s}
.btn:hover{background:#A9690C;transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--bg);border-color:rgba(255,255,255,.55)}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
.btn.line{background:transparent;color:var(--maroon);border-color:var(--maroon)}
.btn.line:hover{background:rgba(110,22,32,.08)}
.btn.sm{padding:.55rem 1.1rem;font-size:.85rem}

/* Announcement + header */
.announce{text-align:center;background:#5B1025;color:#FFF4DF;font-size:.65rem;letter-spacing:.09em;padding:5px 12px}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:95px;gap:1rem}
.logo{font-family:var(--serif);font-size:1.9rem;text-decoration:none;color:var(--olive);letter-spacing:.02em;display:inline-flex;align-items:center;gap:.6rem}
.logo-mark{width:75px;height:75px;border-radius:14px;object-fit:cover;flex:0 0 auto}
.menu{display:flex;gap:1.9rem;list-style:none;margin:0;padding:0}
.menu>li{position:relative}
.menu a{text-decoration:none;font-size:.92rem;color:var(--ink);letter-spacing:.01em;display:inline-flex;align-items:center;gap:.3rem;padding:.4rem 0}
.menu a:hover{color:var(--maroon)}
.drop{position:absolute;top:100%;left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:.5rem;min-width:190px;box-shadow:0 18px 40px -16px rgba(74,14,22,.25);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;transform-origin:top center}
.menu>li:hover .drop,.menu>li:focus-within .drop{opacity:1;pointer-events:auto}
.drop a{display:block;padding:.55rem .8rem;border-radius:8px;font-size:.88rem}
.drop a:hover{background:var(--bg)}
.nav-actions{display:flex;gap:.3rem;align-items:center}
.icon-btn{background:none;border:none;border-radius:999px;height:40px;min-width:40px;padding:0 .6rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;position:relative;color:var(--ink)}
.icon-btn:hover{color:var(--maroon)}
.icon-btn svg{width:20px;height:20px;flex:0 0 auto}
.count{position:absolute;top:-2px;right:-2px;background:var(--terracotta);color:#fff;border-radius:999px;font-size:.65rem;min-width:1.15rem;height:1.15rem;display:flex;align-items:center;justify-content:center;padding:0 .2rem}
.search-wrap{display:none;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.3rem .3rem .3rem .9rem}
.search-wrap.open{display:inline-flex}
.search-wrap input{border:none;background:none;width:160px;font-size:.88rem}
.search-wrap input:focus{outline:none}
.burger{display:none}
@media (max-width:480px){
  .nav{gap:.4rem}
  .logo{font-size:1.45rem;gap:.45rem}
  .logo-mark{width:56px;height:56px;border-radius:11px}
  .nav-actions{gap:0}
  .icon-btn{min-width:36px;padding:0 .4rem}
}
@media (max-width:900px){
  .menu{display:none;position:absolute;left:0;right:0;top:72px;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:.5rem 0}
  .menu.open{display:flex}
  .menu a{display:block;padding:.9rem 20px}
  .drop{position:static;transform:none;opacity:1;pointer-events:auto;box-shadow:none;border:none;display:none;background:var(--bg);padding:0 0 0 1rem}
  .menu>li.open .drop{display:block}
  .burger{display:inline-flex}
  .search-wrap input{width:120px}
}

/* Hero */
/* Hero slider — taken as-is from the Shadhhirra reference design */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero{height:min(640px,64vw);min-height:440px;position:relative;overflow:hidden;background:#3d2019}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease}
.hero-slide.active{opacity:1;visibility:visible}
.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(35,14,11,.65),rgba(35,14,11,.32) 42%,rgba(35,14,11,.02) 78%)}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-slide[data-slide="0"] img{object-position:center}
@media(min-width:761px){.hero{height:min(640px,35.2vw);min-height:360px}}
/* Generations photo: always show the whole picture, fill any spare space with a soft blurred copy */
.hero-slide[data-slide="0"] .hero-fill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(24px) brightness(.8);transform:scale(1.15)}
.hero-slide[data-slide="0"] .hero-main{position:relative;width:100%;height:100%;object-fit:contain;object-position:center}
.hero-slide[data-slide="0"]:after{display:none}
.hero-copy{position:absolute;z-index:2;top:50%;left:9%;transform:translateY(-50%);max-width:490px;color:#fff9ec}
.hero-copy h1,.hero-copy h2{font:500 clamp(2.8rem,5vw,5.2rem)/.94 "Cormorant Garamond",Georgia,serif;letter-spacing:-.035em;margin:12px 0 18px}
.hero-copy p:not(.eyebrow){max-width:390px;font-size:.96rem;color:#fff1db}
.hero-copy .eyebrow{text-transform:uppercase;font-size:.68rem;letter-spacing:.2em;font-weight:700;color:#b78332;margin:0 0 10px}
.hero-copy .primary-button{display:inline-flex;align-items:center;gap:22px;background:#5b1025;color:white;padding:13px 20px;margin-top:18px;font-size:.78rem;letter-spacing:.04em;border:1px solid #5b1025;text-decoration:none;transition:background .2s,color .2s}
.hero-copy .primary-button:hover{background:#b78332;border-color:#b78332;color:#fff}
.hero-copy .primary-button span{font-size:1.1rem}
.hero-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);border:1px solid rgba(255,255,255,.6);background:rgba(50,20,15,.25);color:white;width:42px;height:42px;border-radius:50%;font-size:1.8rem;line-height:1;cursor:pointer}
.hero-arrow:hover{background:#5b1025}
.hero-arrow.prev{left:22px}
.hero-arrow.next{right:22px}
.hero-dots{position:absolute;z-index:4;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.hero-dots .dot{width:25px;height:3px;border:0;border-radius:0;background:rgba(255,255,255,.55);padding:0;cursor:pointer}
.hero-dots .dot.active{background:#f4d38e;width:42px}
@media(max-width:760px){.hero{height:460px;min-height:0}.hero-slide img{object-position:58% center}.hero-slide:after{background:linear-gradient(90deg,rgba(35,14,11,.73),rgba(35,14,11,.35) 70%,rgba(35,14,11,.15))}.hero-copy{left:8%;right:8%;max-width:430px}.hero-copy h1,.hero-copy h2{font-size:3.3rem}.hero-copy p:not(.eyebrow){font-size:.86rem;max-width:310px}.hero-arrow{width:34px;height:34px;font-size:1.4rem}.hero-arrow.prev{left:10px}.hero-arrow.next{right:10px}}
@media(max-width:420px){.hero{height:440px}.hero-copy h1,.hero-copy h2{font-size:2.8rem}}

/* Feature strip */
.features{background:var(--bg);border-block:1px solid var(--line);padding:16px 0}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:720px;margin:0 auto}
.feat{text-align:center;padding:4px}
.feat .ic{width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--gold) 16%,transparent);display:flex;align-items:center;justify-content:center;margin:0 auto .4rem;color:var(--terracotta)}
.feat .ic svg{width:18px;height:18px}
.feat b{display:block;font-size:.85rem;font-weight:600}
@media (max-width:760px){.feat-grid{gap:10px}.feat b{font-size:.75rem}}

/* Carousels */
.carousel-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.carousel-nav{display:flex;gap:.5rem}
.cnav{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.cnav:hover{border-color:var(--maroon);color:var(--maroon)}
.carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;scrollbar-width:none}
.carousel::-webkit-scrollbar{display:none}
.carousel-wrap{position:relative;margin-top:1.8rem}
.edge-nav{position:absolute;z-index:4;width:44px;height:44px;margin-top:-22px;border-radius:50%;border:none;background:#fff;color:var(--maroon);font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px rgba(43,23,16,.22);transition:opacity .2s,transform .15s}
.edge-nav:hover{transform:scale(1.08)}
.edge-nav.next{right:-14px}.edge-nav.prev{left:-14px}
.edge-nav[hidden]{display:none}
@media (max-width:700px){.edge-nav{width:38px;height:38px;margin-top:-19px;font-size:1.4rem}.edge-nav.next{right:-6px}.edge-nav.prev{left:-6px}}
.carousel>*{scroll-snap-align:start;flex:0 0 auto}

/* Product cards (shared) */
.pcard{width:240px;position:relative}
.pcard .ph{position:relative;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--line)}
.pcard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.pcard .ph .sw{position:absolute;inset:0}
/* Product photo gallery (swipe / arrows / dots) + zoom button */
.gal-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.gal-track::-webkit-scrollbar{display:none}
.gal-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start;display:block}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;border:none;background:rgba(255,255,255,.88);color:var(--ink);font-size:1.2rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .2s;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.gal-nav.prev{left:8px}.gal-nav.next{right:8px}
.pcard:hover .gal-nav{opacity:1}
@media (hover:none){.gal-nav{display:none}}
.gal-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:6px;z-index:2;pointer-events:none}
.gal-dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 2px rgba(0,0,0,.35);transition:all .2s}
.gal-dots span.on{background:#fff;width:18px;border-radius:4px}
.zoom-btn{position:absolute;right:10px;bottom:10px;width:38px;height:38px;border-radius:50%;border:none;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:0 2px 10px rgba(0,0,0,.18);transition:transform .15s}
.zoom-btn:hover{transform:scale(1.08)}
.zoom-btn svg{width:19px;height:19px}
/* Full-screen photo viewer */
.zoomer{position:fixed;inset:0;z-index:95;background:#fff;display:none;flex-direction:column}
.zoomer.open{display:flex}
.zoomer-stage{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:pan-y pinch-zoom}
.zoomer-stage img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .25s ease;cursor:zoom-in;user-select:none;-webkit-user-drag:none}
.zoomer-stage img.zoomed{cursor:zoom-out;transition:none}
.zoomer-bar{display:flex;justify-content:center;align-items:center;gap:14px;padding:14px 0 calc(18px + env(safe-area-inset-bottom,0px))}
.zoomer-bar button{width:46px;height:46px;border-radius:50%;border:1px solid #ddd;background:#fff;color:var(--ink);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center}
.zoomer-bar button:hover{border-color:var(--maroon);color:var(--maroon)}
.zoomer-head{flex:0 0 auto;text-align:center;padding:12px 16px 8px;background:#fff;position:relative;z-index:2}
.zoomer-title{font-family:var(--serif);font-size:1.1rem;color:var(--ink)}
.zoomer-count{font-size:.78rem;color:var(--muted);margin-top:2px}
.zoomer-bar{position:relative;z-index:2;background:#fff}
body.zoom-open{overflow:hidden}
.pcard .heart{position:absolute;top:10px;left:10px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.85);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--maroon);backdrop-filter:blur(3px)}
.pcard .heart svg{width:17px;height:17px}
.pcard .heart.saved svg{fill:var(--maroon)}
.pcard .badge{position:absolute;top:10px;right:10px;background:var(--maroon);color:#fff;font-size:.7rem;padding:.3rem .6rem;border-radius:999px;letter-spacing:.03em}
.pcard .vbtn{position:absolute;left:10px;bottom:10px;z-index:3;background:rgba(20,6,14,.6);color:#fff;border:none;border-radius:999px;padding:.4rem .8rem;font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;backdrop-filter:blur(4px)}
.pcard h3{font-size:1rem;margin-top:.8rem;text-transform:uppercase;letter-spacing:.01em;font-family:var(--sans);font-weight:700}
.pcard .tag{font-size:.8rem;color:var(--muted);margin-top:.15rem}
.pcard .pricing{display:flex;align-items:baseline;gap:.5rem;margin-top:.3rem;flex-wrap:wrap}
.pcard .price{font-weight:700}
.pcard .was{color:var(--muted);text-decoration:line-through;font-size:.85rem}
.pcard .save{color:#2E7D32;font-size:.8rem;font-weight:700}
.pcard.sold .gal-track img{filter:grayscale(.55) opacity(.7)}
.pcard.sold .price,.pcard.sold .was,.pcard.sold .save{opacity:.55}
.pcard .badge.sold-badge{background:#555}
.pcard .sold-note{font-weight:700;color:#8a8a8a;font-size:.9rem}
.add.buy-now{background:var(--maroon);color:#fff;text-decoration:none;display:inline-flex;align-items:center}
.add.buy-now:hover{background:var(--maroon-2)}
.pcard .meta{display:flex;justify-content:space-between;align-items:center;margin-top:.6rem;gap:.5rem}
.add{border:1px solid var(--maroon);color:var(--maroon);background:none;border-radius:999px;padding:.4rem .9rem;cursor:pointer;font-size:.85rem}
.add:hover,.add.done{background:var(--maroon);color:#fff}
.empty{grid-column:1/-1;text-align:center;padding:3rem 1rem;color:var(--muted)}

/* Collection tiles */
.coltile{width:230px;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:3/4;cursor:pointer;border:none;padding:0;text-align:left}
.coltile .frame{position:absolute;inset:10px;border:1px solid rgba(255,255,255,.65);border-radius:4px;z-index:2;pointer-events:none}
.coltile .frame::before,.coltile .frame::after{content:"";position:absolute;width:20px;height:20px;border:1.5px solid var(--gold-soft)}
.coltile .frame::before{top:-1px;left:-1px;border-right:none;border-bottom:none}
.coltile .frame::after{bottom:-1px;right:-1px;border-left:none;border-top:none}
.coltile .sw,.coltile .colimg{position:absolute;inset:0;border-radius:0}
.coltile .colimg{width:100%;height:100%;object-fit:cover}
.coltile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(20,6,10,.72));z-index:1}
.coltile .cap{position:absolute;left:0;right:0;bottom:16px;z-index:3;text-align:center;color:#fff}
.coltile .cap b{font-family:var(--serif);font-size:1.25rem;font-weight:400;display:block}
.coltile .cap span{font-size:.8rem;opacity:.85}

/* Sarees grid (shop) */
.shop-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.filters{margin-top:1.8rem;display:flex;flex-direction:column;gap:.9rem}
.chips{display:flex;gap:.5rem;flex-wrap:wrap}
.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:.45rem 1rem;cursor:pointer;font-size:.9rem;display:inline-flex;align-items:center;gap:.45rem}
.chip[aria-pressed="true"]{background:var(--maroon);color:#fff;border-color:var(--maroon)}
.dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.2)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:26px 18px;margin-top:2rem}
.grid .pcard{width:auto}
@media (max-width:560px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .grid .pcard h3{font-size:.82rem}
  .grid .pcard .tag{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.74rem}
  .grid .pcard .meta{flex-wrap:wrap;gap:6px}
  .grid .pcard .meta .add{flex:1 1 100%;padding:.4rem .5rem;font-size:.78rem}
  .grid .zoom-btn{width:32px;height:32px;right:8px;bottom:8px}
  .grid .zoom-btn svg{width:16px;height:16px}
  .grid .pcard .heart{width:30px;height:30px}
}

/* Fabric swatch engine */
.sw{position:relative;overflow:hidden;background:var(--base)}
.sw::before{content:"";position:absolute;inset:0}
.sw.butta::before{background:radial-gradient(circle,var(--motif) 2.4px,transparent 3.4px) 0 0/24px 24px,radial-gradient(circle,var(--motif) 1.4px,transparent 2.2px) 12px 12px/24px 24px}
.sw.stripe::before{background:repeating-linear-gradient(90deg,transparent 0 18px,var(--motif) 18px 21px,transparent 21px 26px,var(--motif) 26px 27px)}
.sw.check::before{background:repeating-linear-gradient(0deg,transparent 0 20px,var(--motif) 20px 24px),repeating-linear-gradient(90deg,transparent 0 20px,var(--motif) 20px 24px);opacity:.75}
.sw.floral::before{background:radial-gradient(circle,var(--motif) 3px,transparent 4px,transparent 7px,var(--motif) 7.5px,transparent 9px) 0 0/42px 42px,radial-gradient(circle,var(--motif) 1.5px,transparent 2.5px) 21px 21px/42px 42px}
.sw.sheer::before{background:linear-gradient(120deg,rgba(255,255,255,.55),transparent 40%,rgba(255,255,255,.35) 70%,transparent),radial-gradient(circle,var(--motif) 1.2px,transparent 2px) 0 0/16px 16px}
.sw::after{content:"";position:absolute;left:0;right:0;bottom:0;height:18%;
  background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(0,0,0,.14) 10px 11px),linear-gradient(180deg,var(--border) 0 18%,var(--base) 18% 26%,var(--border) 26% 100%)}
.sw .pleat{position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 10px,rgba(0,0,0,.08) 30px,rgba(255,255,255,.06) 50px)}

/* Customize */
.custom{background:var(--maroon-dark);color:#FBF1E7}
.custom .eyebrow{color:var(--gold-soft)}
.custom .lede{color:#E7CFC6}
.custom-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.form{background:#FFF8F0;color:#2B1710;border-radius:18px;padding:28px}
.form label.field{display:block;font-weight:500;margin:1.1rem 0 .4rem}
.form label.field:first-child{margin-top:0}
.form select,.form input[type=date],.form textarea{width:100%;border:1px solid rgba(110,22,32,.25);border-radius:10px;padding:.7rem .8rem;background:#fff;color:#2B1710}
.form textarea{min-height:90px;resize:vertical}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.opt{display:flex;gap:.55rem;align-items:flex-start;border:1px solid rgba(110,22,32,.2);border-radius:10px;padding:.65rem .75rem;cursor:pointer;font-size:.92rem;line-height:1.35}
.opt input{margin-top:.2rem;accent-color:var(--maroon)}
.form .btn{width:100%;margin-top:1.3rem}
.form small{display:block;margin-top:.7rem;color:#8A6F60}
.services{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;gap:.8rem}
.services li{display:flex;gap:.8rem;align-items:flex-start}
.services li::before{content:"";flex:0 0 10px;height:10px;margin-top:.5rem;background:var(--gold-soft);transform:rotate(45deg)}
@media (max-width:860px){.custom-grid{grid-template-columns:1fr}.opts{grid-template-columns:1fr}}

/* Story */
.story{background:var(--bg);border-block:1px solid var(--line);padding:32px 0}
.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:center}
.story .ph{border-radius:18px;overflow:hidden;aspect-ratio:4/5}
.story .ph img{width:100%;height:100%;object-fit:cover;display:block}
.story p{margin:1rem 0;color:var(--muted);max-width:56ch}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:1.5rem;max-width:340px}
.facts div{background:var(--surface);padding:1.1rem}
.facts b{font-family:var(--serif);font-weight:400;font-size:1.25rem;display:block;color:var(--maroon)}
.facts span{font-size:.85rem;color:var(--muted)}
@media (max-width:860px){.story-grid{grid-template-columns:1fr;gap:28px}}

/* Testimonials */
.quote-card{width:330px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;position:relative}
.quote-card .qm{font-family:var(--serif);font-size:2.6rem;color:var(--gold-soft);line-height:.6;display:block;margin-bottom:.6rem}
.quote-card p{font-family:var(--serif);font-size:1.1rem;line-height:1.5;margin:0 0 1rem}
.quote-card span{color:var(--muted);font-size:.88rem}

/* WhatsApp promo */
.promo{background:linear-gradient(135deg,#F3D9A8,#EFC58A);border-radius:24px;overflow:hidden;display:grid;grid-template-columns:.8fr 1.2fr}
.promo .ph{position:relative;aspect-ratio:4/5}
.promo .ph img{width:100%;height:100%;object-fit:cover;display:block}
.promo .body{padding:40px;color:#3A2410}
.promo .body .eyebrow{color:#8A4B12}
.promo .body h2{color:#2B1710}
.promo .body p{color:#5C4426;max-width:44ch;margin:.8rem 0 1.4rem}
@media (max-width:760px){.promo{grid-template-columns:1fr}.promo .ph{aspect-ratio:16/9}}

/* FAQ */
.faq{max-width:780px;margin:2rem auto 0}
details{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;padding:1.1rem 0;font-family:var(--serif);font-size:1.2rem;display:flex;justify-content:space-between;gap:1rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--gold);font-family:var(--sans);font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{margin:0 0 1.2rem;color:var(--muted);max-width:65ch}

/* Footer */
footer{background:#4F030C;color:#F3E6DC;padding:60px 0 24px}
.foot-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.1fr;gap:28px}
.foot-brand .logo{color:#F3E6DC;font-size:2rem}
.arch{display:block;width:150px;height:150px;border-radius:22px;overflow:hidden;margin-bottom:.9rem}
.arch img{width:100%;height:100%;object-fit:cover;display:block}
.arch svg{width:30px;height:30px}
.foot-brand p{color:rgba(243,230,220,.72);max-width:30ch;margin-top:.7rem;font-size:.92rem}
.social{display:flex;gap:.6rem;margin-top:1rem}
.social a{width:34px;height:34px;border-radius:50%;border:1px solid rgba(243,230,220,.3);display:flex;align-items:center;justify-content:center}
.social a:hover{border-color:var(--gold-soft);color:var(--gold-soft)}
.social svg{width:16px;height:16px}
.social a.wa-logo{border:none;overflow:hidden}
.social a.fb-logo{border:none;background:#1877F2;align-items:flex-end;overflow:hidden}
.social a.fb-logo svg{width:24px;height:24px}
.social a.ig-logo{border:none;border-radius:10px;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.social a.ig-logo svg{width:20px;height:20px}
.social a.li-logo{border:none;border-radius:8px;background:#0A66C2}
.social a.li-logo svg{width:18px;height:18px}
.social a.fb-logo:hover,.social a.ig-logo:hover,.social a.wa-logo:hover,.social a.li-logo:hover{opacity:.85}
.social a.wa-logo img{width:100%;height:100%;object-fit:cover;display:block}
footer h4{font-family:var(--serif);font-weight:400;font-size:1rem;margin:0 0 .9rem;color:rgba(243,230,220,.6);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
footer a{text-decoration:none;color:rgba(243,230,220,.82);font-size:.92rem}
footer a:hover{color:var(--gold-soft)}
.news p{color:rgba(243,230,220,.72);font-size:.9rem;margin:0 0 .8rem}
.news-form{display:flex;border:1px solid rgba(243,230,220,.3);border-radius:999px;overflow:hidden}
.news-form input{flex:1;background:none;border:none;padding:.7rem 1rem;color:#fff;font-size:.88rem}
.news-form input::placeholder{color:rgba(243,230,220,.5)}
.news-form button{background:var(--gold);color:#2B1710;border:none;padding:0 1.1rem;font-weight:600;cursor:pointer;font-size:.85rem}
.pay-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(243,230,220,.18)}
.pay-row span{border:1px solid rgba(243,230,220,.28);border-radius:6px;padding:.3rem .65rem;font-size:.72rem;letter-spacing:.03em;color:rgba(243,230,220,.75)}
.copy{margin-top:22px;padding-top:18px;border-top:1px solid rgba(243,230,220,.18);font-size:.82rem;color:rgba(243,230,220,.6);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
@media (max-width:900px){.foot-top{grid-template-columns:1fr 1fr;gap:34px 20px}}
.foot-top>*{min-width:0}
.news-form input{min-width:0;width:100%}
@media (max-width:560px){.foot-brand,.news{grid-column:1/-1}}

/* Cart drawer */
.scrim{position:fixed;inset:0;background:rgba(20,6,14,.45);opacity:0;pointer-events:none;transition:opacity .25s;z-index:50}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:var(--bg);z-index:60;transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.cart-open .scrim{opacity:1;pointer-events:auto}
.cart-open .drawer{transform:none}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--line)}
.drawer-body{flex:1;overflow:auto;padding:12px 20px}
.line{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.line .sw,.line .ph{width:56px;height:70px;border-radius:8px;overflow:hidden}
.line .ph img{width:100%;height:100%;object-fit:cover}
.line h3{font-size:1rem;font-family:var(--sans);font-weight:600}
.qty{display:inline-flex;align-items:center;gap:.5rem;margin-top:.3rem}
.qty button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:none;cursor:pointer}
.drawer-foot{padding:20px;border-top:1px solid var(--line)}
.total{display:flex;justify-content:space-between;font-weight:600;margin-bottom:1rem}
.drawer-foot .btn{width:100%}
.drawer-foot small{display:block;text-align:center;margin-top:.6rem;color:var(--muted)}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,120px);background:var(--ink);color:var(--bg);padding:.7rem 1.2rem;border-radius:999px;font-size:.92rem;transition:transform .3s;z-index:70}
.toast.show{transform:translate(-50%,0)}
.wa-float{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;background:#1E9E5A;color:#fff;border-radius:999px;width:54px;height:54px;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 10px 25px -8px rgba(0,0,0,.45)}
.wa-float svg{width:26px;height:26px}
.to-top{position:fixed;right:18px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:30;background:var(--gold);color:#2B1710;border:none;border-radius:999px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 25px -8px rgba(0,0,0,.45);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .25s,transform .25s}
.to-top.show{opacity:1;pointer-events:auto;transform:none}
.to-top svg{width:20px;height:20px}

/* Video lightbox */
/* Policy pages */
.policy-view{position:fixed;inset:0;z-index:90;background:var(--bg);overflow-y:auto;-webkit-overflow-scrolling:touch;display:none}
.policy-view.open{display:block}
body.policy-open{overflow:hidden}
.policy-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px max(16px,calc((100vw - 820px)/2));background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.policy-back{background:none;border:1px solid var(--line);border-radius:999px;padding:.45rem 1rem;font:600 .85rem var(--sans);color:var(--maroon);cursor:pointer}
.policy-back:hover{background:var(--maroon);color:#fff;border-color:var(--maroon)}
.policy-tabs{display:flex;gap:4px}
.policy-tabs a{padding:.4rem .8rem;border-radius:999px;font-size:.85rem;color:var(--muted);text-decoration:none}
.policy-tabs a.active{background:var(--maroon);color:#fff}
.policy-doc{display:none;max-width:780px;width:calc(100% - 24px);box-sizing:border-box;margin:28px auto 56px;background:var(--surface);border:1px solid var(--line);border-radius:6px;box-shadow:0 18px 40px -24px rgba(74,14,22,.35);padding:clamp(24px,5vw,52px)}
.policy-doc.active{display:block}
.policy-doc h1{font-family:var(--serif);font-weight:400;text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:clamp(1.9rem,5vw,2.6rem);color:var(--ink);margin:0 0 1rem}
.policy-doc h2{font-family:var(--serif);font-weight:400;font-size:1.45rem;color:var(--maroon);margin:2rem 0 .6rem}
.policy-doc p,.policy-doc li{color:var(--ink);font-size:.98rem;line-height:1.65}
.policy-doc ul{padding-left:1.2rem;margin:.4rem 0 .8rem}
.policy-doc li{margin:.3rem 0}
.policy-doc a{color:var(--maroon)}
.policy-intro{font-size:1.12rem!important;color:var(--muted)!important;text-align:center}
.policy-date{text-align:center;font-size:.82rem!important;color:var(--muted)!important;margin-top:-.2rem}
.policy-address{background:var(--bg);border-left:3px solid var(--maroon);padding:14px 18px;margin:.6rem 0;line-height:1.7}
.policy-note{font-style:italic;color:var(--muted)!important;border-top:1px solid var(--line);padding-top:1rem;margin-top:1.6rem}
@media (max-width:520px){.policy-tabs a{padding:.35rem .55rem;font-size:.8rem}}
.vlb{position:fixed;inset:0;background:rgba(10,4,7,.88);z-index:80;display:none;align-items:center;justify-content:center;padding:24px}
.vlb.open{display:flex}
.vlb video{max-width:min(92vw,420px);max-height:86vh;border-radius:16px;width:100%}
.vlb-close{position:absolute;top:18px;right:18px;background:rgba(255,255,255,.15);color:#fff;border:none;border-radius:999px;width:40px;height:40px;cursor:pointer;font-size:1.1rem}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
