/* ═══════════════════════════════════════════════════════════
   SHIVAA — design system
   cream · maroon · gold | Cormorant Garamond · Marcellus · Jost
   ═══════════════════════════════════════════════════════════ */
:root{
  --maroon:#6e1e2a; --maroon-2:#571620; --maroon-deep:#3d0e15;
  --gold:#b98a2f; --gold-2:#d4af5a; --gold-soft:#efdcb2; --gold-faint:#f7eed8;
  /* third accent — emerald & ivory, used sparingly against maroon/gold */
  --emerald:#0f5b46; --emerald-2:#17795c; --emerald-soft:#d7ebe3; --emerald-glow:rgba(23,121,92,.30);
  --ivory:#fffdf8; --ivory-2:#f7f1e4;
  --wa:#25d366; --wa-deep:#128c7e;
  --cream:#faf6ef; --cream-2:#f4ecdd; --cream-3:#ede1cb;
  --ink:#2b2118; --ink-2:#5d5245; --ink-3:#6f6353;
  --line:#e6d9c0; --white:#fffdf9;
  --ok:#2e7d4f; --warn:#b3541e; --bad:#a32638;
  --sh-1:0 2px 10px rgba(61,14,21,.06); --sh-2:0 10px 30px rgba(61,14,21,.10); --sh-3:0 24px 70px rgba(61,14,21,.18);
  --r:14px; --r-lg:22px;
  --ff-disp:'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --ff-label:'Marcellus', 'Cormorant Garamond', Georgia, serif;
  --ff-body:'Jost', 'Segoe UI', system-ui, sans-serif;
  --ease:cubic-bezier(.22,.8,.24,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--ff-body);color:var(--ink);background:var(--cream);font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,select,textarea{font-family:inherit;font-size:15px;color:var(--ink)}
::selection{background:var(--gold-soft)}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:var(--cream-2)}
::-webkit-scrollbar-thumb{background:#cbb98f;border-radius:8px;border:2px solid var(--cream-2)}
.container{width:min(1240px,92vw);margin:0 auto}
h1,h2,h3{font-family:var(--ff-disp);font-weight:600;color:var(--maroon-deep);line-height:1.12}
.disp-italic{font-style:italic;font-weight:500;color:var(--gold)}
.label{font-family:var(--ff-label);text-transform:uppercase;letter-spacing:.32em;font-size:11.5px;color:var(--gold)}
.sec{padding:72px 0}
.sec-head{text-align:center;margin-bottom:44px}
.sec-head h2{font-size:clamp(30px,4vw,44px)}
.sec-head .label{display:block;margin-bottom:10px}
.sec-head p.sub{color:var(--ink-2);max-width:560px;margin:10px auto 0;font-size:16px}

/* ─────────── buttons ─────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--ff-label);font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:14px 28px;border-radius:40px;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),filter .3s var(--ease);position:relative;overflow:hidden;border:1.5px solid transparent;white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,var(--maroon) 0%,var(--maroon-2) 100%);color:#f9ecd2;box-shadow:0 8px 22px rgba(110,30,42,.28)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(110,30,42,.36)}
.btn-gold{background:linear-gradient(135deg,var(--gold) 0%,#9c7222 100%);color:#fff8ea;box-shadow:0 8px 22px rgba(185,138,47,.3)}
.btn-gold:hover{transform:translateY(-2px)}
.btn-outline{border-color:var(--maroon);color:var(--maroon);background:transparent}
.btn-outline:hover{background:var(--maroon);color:#f9ecd2}
.btn-ghost{border-color:var(--line);color:var(--ink-2);background:var(--white)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn-light{background:#fff;color:var(--maroon);box-shadow:var(--sh-1)}
.btn-sm{padding:9px 18px;font-size:11.5px}
.btn-lg{padding:17px 38px;font-size:14px}
.btn[disabled]{opacity:.5;pointer-events:none}
.btn-block{width:100%}

/* ─────────── topbar + LED ticker ─────────── */
.topbar{background:var(--maroon-deep);color:#f3dfae;font-size:12.5px;letter-spacing:.06em;overflow:hidden;position:relative;z-index:60}
.ticker-wrap{display:flex;width:max-content;animation:tick 36s linear infinite}
.ticker{display:flex;gap:0;width:max-content}
.ticker span{display:inline-flex;align-items:center;gap:8px;padding:7px 26px;white-space:nowrap}
.ticker .dot{width:5px;height:5px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 8px var(--gold-2);flex:none}
.ticker .up{color:#8fe3a8}.ticker .down{color:#ff9d9d}
.ticker b{font-weight:600;color:#ffe9bd}
@keyframes tick{to{transform:translateX(-50%)}}

/* ─────────── header ─────────── */
.header{position:sticky;top:0;z-index:50;background:rgba(250,246,239,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.header.scrolled{box-shadow:var(--sh-2)}
.header-in{display:flex;align-items:center;gap:26px;height:76px}
.brand{display:inline-flex;align-items:center;background:var(--white);border-radius:12px;padding:5px 12px;box-shadow:var(--sh-1);border:1px solid var(--line);transition:.3s}
.brand:hover{box-shadow:var(--sh-2);transform:translateY(-1px)}
.brand-logo{height:40px;width:auto;object-fit:contain}
.nav{flex:1;display:flex;justify-content:center;min-width:0}
.nav-scroll{display:flex;gap:4px;align-items:center}
.nav a{font-size:13.5px;font-weight:500;letter-spacing:.04em;color:var(--ink);padding:9px 13px;border-radius:30px;transition:.25s;display:inline-flex;align-items:center;gap:6px}
.nav a:hover{color:var(--maroon);background:var(--gold-faint)}
.nav a.active{color:var(--maroon);background:var(--gold-faint)}
.nav-b2b{color:var(--gold)!important;font-weight:600}
.nav-drop{position:relative}
.drop-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,8px);background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-3);padding:14px;min-width:430px;display:grid;grid-template-columns:1fr 1fr;opacity:0;visibility:hidden;transition:.28s var(--ease);z-index:70}
.nav-drop:hover .drop-menu,.drop-menu:hover{opacity:1;visibility:visible;transform:translate(-50%,0)}
.drop-menu a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;width:100%}
.drop-menu a:hover{background:var(--gold-faint)}
.drop-menu .dmi{width:38px;height:38px;border-radius:10px;object-fit:cover;flex:none}
.drop-menu b{display:block;font-size:13.5px;font-weight:600}
.drop-menu small{color:var(--ink-3);font-size:11.5px}
.header-actions{display:flex;gap:6px;align-items:center}
.icon-btn{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;position:relative;color:var(--ink-2);transition:.25s}
.icon-btn:hover{background:var(--gold-faint);color:var(--maroon)}
.icon-btn svg{width:21px;height:21px}
.badge{position:absolute;top:2px;right:0;background:var(--gold);color:#fff;font-size:10.5px;font-weight:600;min-width:17px;height:17px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}
.nav-toggle{display:none;flex-direction:column;gap:5px;width:42px;height:42px;align-items:center;justify-content:center;border-radius:10px}
.nav-toggle span{width:20px;height:2px;background:var(--ink);border-radius:2px;transition:.3s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* search drawer */
.search-drawer{position:absolute;top:100%;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--sh-2);transform:translateY(-110%);visibility:hidden;transition:transform .35s var(--ease),visibility .35s;z-index:40}
.search-drawer.open{transform:translateY(0);visibility:visible}
.search-in{display:flex;align-items:center;gap:14px;padding:18px 0}
.s-ico{width:22px;height:22px;color:var(--gold)}
#searchInput{flex:1;border:none;outline:none;font-size:19px;font-family:var(--ff-disp);background:transparent}
.s-close{font-size:11px;letter-spacing:.12em;color:var(--ink-3);border:1px solid var(--line);border-radius:8px;padding:6px 10px}
.search-sugg{display:none;padding-bottom:16px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.search-sugg.open{display:grid}
.sugg{display:flex;gap:12px;align-items:center;padding:8px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:.2s}
.sugg:hover{border-color:var(--line);background:var(--gold-faint)}
.sugg img{width:52px;height:52px;border-radius:9px;object-fit:cover}
.sugg b{font-size:13.5px;font-weight:500;display:block}
.sugg small{color:var(--ink-3)}

/* ─────────── hero ─────────── */
.hero{position:relative;min-height:calc(100vh - 118px);display:flex;align-items:center;background:radial-gradient(1200px 700px at 78% 30%,#5c1822 0%,var(--maroon-deep) 55%,#2a090e 100%);overflow:hidden;color:#f6e8c8}
.hero-img{position:absolute;inset:0;background:url('/images/banners/hero-main.jpg') center/cover no-repeat;opacity:.34}
.hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,var(--maroon-deep) 22%,rgba(61,14,21,.72) 48%,rgba(61,14,21,.18) 78%)}
.hero-orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.5;animation:float 9s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-26px) rotate(8deg)}}
.hero-in{position:relative;z-index:5;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding:70px 0}
.hero-kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-label);font-size:11.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-2);border:1px solid rgba(212,175,90,.4);padding:9px 18px;border-radius:40px;background:rgba(212,175,90,.07);margin-bottom:26px}
.hero h1{color:#fdf3dd;font-size:clamp(42px,5.6vw,74px);font-weight:600;line-height:1.06;margin-bottom:8px}
.hero h1 em{font-style:italic;color:var(--gold-2);font-weight:500}
.hero-sub{font-size:17px;color:rgba(246,232,200,.78);max-width:520px;margin:18px 0 34px;font-weight:300}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:44px}
.hero-stats{display:flex;gap:38px;flex-wrap:wrap}
.hstat{border-left:1px solid rgba(212,175,90,.35);padding-left:16px}
.hstat b{font-family:var(--ff-disp);font-size:30px;font-weight:600;color:#ffe9bd;display:block}
.hstat span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,232,200,.6)}
.hero-3d{position:relative;height:520px;cursor:grab}
.hero-3d:active{cursor:grabbing}
#ringCanvas{width:100%;height:100%;display:block}
.hero-3d-hint{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(246,232,200,.55)}

/* ─────────── rate strip (home) ─────────── */
.rate-strip{background:linear-gradient(180deg,#2a090e,var(--maroon-deep));border-top:1px solid rgba(212,175,90,.25);border-bottom:1px solid rgba(212,175,90,.25);color:#f3dfae}
.rate-strip-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(212,175,90,.18)}
.rscell{background:var(--maroon-deep);padding:22px 18px;text-align:center;position:relative;overflow:hidden}
.rscell::after{content:'';position:absolute;inset:0;background:radial-gradient(120px 60px at 50% 0,rgba(212,175,90,.14),transparent);pointer-events:none}
.rscell small{display:block;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:rgba(243,223,174,.6);margin-bottom:6px}
.rscell b{font-family:var(--ff-disp);font-size:27px;font-weight:600;color:#ffe9bd}
.rscell span{display:block;font-size:11.5px;margin-top:4px;color:rgba(243,223,174,.65)}
.rscell .chg{font-weight:600}
.chg.up{color:#8fe3a8}.chg.down{color:#ff9d9d}
.live-dot{display:inline-block;width:7px;height:7px;background:#5be08d;border-radius:50%;margin-right:7px;animation:pulse 1.6s infinite;box-shadow:0 0 10px #5be08d}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

/* ─────────── categories ─────────── */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.cat-card{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1.06;background:var(--white);box-shadow:var(--sh-1);transition:transform .35s var(--ease),box-shadow .35s;transform-style:preserve-3d;will-change:transform}
.cat-card:hover{box-shadow:var(--sh-3)}
.cat-card img{width:100%;height:78%;object-fit:cover;transition:transform .6s var(--ease)}
.cat-card:hover img{transform:scale(1.07)}
.cat-card .cc-body{padding:14px 16px;text-align:center}
.cat-card b{font-family:var(--ff-disp);font-size:21px;font-weight:600;color:var(--maroon-deep)}
.cat-card small{display:block;color:var(--ink-3);font-size:12px;margin-top:2px}

/* ─────────── product cards ─────────── */
.p-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:24px}
.p-card{background:var(--white);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1);transition:box-shadow .35s,transform .35s var(--ease);transform-style:preserve-3d;will-change:transform;position:relative}
.p-card:hover{box-shadow:var(--sh-3)}
.pc-imgwrap{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--cream-2)}
.pc-imgwrap img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.p-card:hover .pc-imgwrap img{transform:scale(1.08)}
.pc-tags{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:6px;z-index:2}
.tagx{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:5px 11px;border-radius:20px;background:rgba(255,253,249,.92);color:var(--maroon);border:1px solid var(--line)}
.tagx.gold{background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff;border:none}
.pc-wish{position:absolute;top:10px;right:10px;width:38px;height:38px;border-radius:50%;background:rgba(255,253,249,.94);display:flex;align-items:center;justify-content:center;color:var(--ink-3);transition:.25s;z-index:2;box-shadow:var(--sh-1)}
.pc-wish:hover{color:var(--bad);transform:scale(1.1)}
.pc-wish.on{color:var(--bad)}
.pc-wish svg{width:19px;height:19px}
.pc-wish.on svg{fill:var(--bad)}
.pc-body{padding:16px 18px 18px}
.pc-cat{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600}
.pc-name{font-family:var(--ff-disp);font-size:20px;font-weight:600;color:var(--maroon-deep);margin:4px 0 3px;line-height:1.2}
.pc-meta{font-size:12.5px;color:var(--ink-3);margin-bottom:10px}
.pc-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pc-price b{font-size:19px;font-weight:600;color:var(--ink)}
.pc-price small{font-size:11.5px;color:var(--ink-3)}
.pc-live{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ok);margin-top:7px}
.pc-rate-note{font-size:11px;color:var(--ink-3)}
.pc-rating{color:var(--gold);font-size:13px}
.pc-rating span{color:var(--ink-3);font-size:12px;margin-left:4px}
.glare{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(420px 220px at var(--gx,50%) var(--gy,50%),rgba(255,238,190,.35),transparent 62%)}
.p-card:hover .glare{opacity:1}

/* horizontal scroller */
.hscroll{display:flex;gap:22px;overflow-x:auto;padding:6px 6px 26px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.hscroll .p-card{min-width:270px;scroll-snap-align:start}

/* ─────────── banners ─────────── */
.banner{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:340px;display:flex;align-items:center;color:#fdf3dd;box-shadow:var(--sh-2)}
.banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.banner .b-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,9,14,.92) 8%,rgba(42,9,14,.55) 46%,rgba(42,9,14,.05) 80%)}
.banner .b-body{position:relative;z-index:2;padding:52px;max-width:560px}
.banner .label{color:var(--gold-2)}
.banner h3{color:#fdf3dd;font-size:clamp(28px,3.4vw,40px);margin:10px 0 12px}
.banner p{color:rgba(253,243,221,.82);margin-bottom:24px;font-weight:300}
.flash-countdown{display:flex;gap:10px;margin:18px 0 26px}
.fc-cell{background:rgba(250,246,239,.1);border:1px solid rgba(212,175,90,.4);border-radius:12px;padding:10px 14px;min-width:64px;text-align:center;backdrop-filter:blur(4px)}
.fc-cell b{font-family:var(--ff-disp);font-size:26px;display:block;color:#ffe9bd}
.fc-cell span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(253,243,221,.65)}

/* ─────────── making charges teaser/table ─────────── */
.mc-table-wrap{overflow-x:auto;background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1);border:1px solid var(--line)}
table.mc-table{width:100%;border-collapse:collapse;min-width:680px}
.mc-table th{font-family:var(--ff-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#f3dfae;background:var(--maroon);padding:15px 18px;text-align:left;font-weight:400}
.mc-table td{padding:14px 18px;border-bottom:1px solid var(--line);font-size:14px}
.mc-table tr:last-child td{border-bottom:none}
.mc-table tr:hover td{background:var(--gold-faint)}
.mc-table .num{text-align:right;font-variant-numeric:tabular-nums}
.mc-table .cat-cell b{font-family:var(--ff-disp);font-size:17px;font-weight:600;color:var(--maroon-deep)}
.mc-table .cat-cell small{display:block;color:var(--ink-3);font-size:12px}
.pill{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.08em;padding:4px 11px;border-radius:16px;text-transform:uppercase}
.pill.pm{background:var(--gold-faint);color:#8a6a1f;border:1px solid #e8d9b4}
.pill.pf{background:#fdeef0;color:var(--bad);border:1px #f5d3d9}
.gst-note{display:flex;gap:10px;align-items:center;background:var(--gold-faint);border:1px dashed var(--gold);border-radius:12px;padding:13px 18px;margin-top:16px;color:#7a5c17;font-size:13.5px}

/* ─────────── trust strip ─────────── */
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.trust{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:26px 20px;text-align:center;transition:.3s}
.trust:hover{transform:translateY(-4px);box-shadow:var(--sh-2);border-color:var(--gold-soft)}
.trust svg{width:34px;height:34px;color:var(--gold);margin:0 auto 12px}
.trust b{font-family:var(--ff-disp);font-size:18px;display:block;color:var(--maroon-deep)}
.trust small{color:var(--ink-3);font-size:12.5px}

/* ─────────── testimonials ─────────── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.testi{background:var(--white);border-radius:var(--r-lg);padding:30px;box-shadow:var(--sh-1);position:relative;border:1px solid var(--line)}
.testi::before{content:'“';font-family:var(--ff-disp);font-size:64px;color:var(--gold-soft);position:absolute;top:6px;left:20px;line-height:1}
.testi p{font-style:italic;font-family:var(--ff-disp);font-size:17px;color:var(--ink);margin:18px 0 16px;position:relative}
.testi b{font-size:14px;color:var(--maroon)}
.testi small{display:block;color:var(--ink-3)}
.stars{color:var(--gold);letter-spacing:2px}

/* ─────────── newsletter ─────────── */
.newsletter{background:radial-gradient(700px 300px at 20% 0,#5c1822,var(--maroon-deep));border-radius:var(--r-lg);color:#f6e8c8;padding:56px;text-align:center;position:relative;overflow:hidden}
.newsletter::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M60 18l6 18 18 6-18 6-6 18-6-18-18-6 18-6z' fill='%23d4af5a' fill-opacity='.07'/%3E%3C/svg%3E");pointer-events:none}
.newsletter h3{color:#fdf3dd;font-size:34px}
.newsletter p{color:rgba(246,232,200,.75);margin:10px 0 26px}
.nl-form{display:flex;max-width:460px;margin:0 auto;border-radius:40px;overflow:hidden;border:1px solid rgba(212,175,90,.5);background:rgba(250,246,239,.06)}
.nl-form input{flex:1;background:transparent;border:none;outline:none;padding:15px 22px;color:#fdf3dd;font-size:14.5px}
.nl-form input::placeholder{color:rgba(246,232,200,.5)}
.nl-form button{background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff8ea;padding:0 26px;font-family:var(--ff-label);letter-spacing:.12em;font-size:12px;text-transform:uppercase}

/* ─────────── page hero (inner pages) ─────────── */
.page-hero{background:linear-gradient(140deg,var(--maroon-deep),var(--maroon-2));color:#f6e8c8;padding:64px 0 58px;position:relative;overflow:hidden}
.page-hero::after{content:'';position:absolute;right:-120px;top:-120px;width:420px;height:420px;border:1px solid rgba(212,175,90,.25);border-radius:50%;box-shadow:0 0 0 60px rgba(212,175,90,.05),0 0 0 130px rgba(212,175,90,.04)}
.page-hero h1{color:#fdf3dd;font-size:clamp(32px,4.4vw,52px)}
.page-hero p{color:rgba(246,232,200,.75);max-width:640px;margin-top:10px;font-weight:300}
.crumbs{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(246,232,200,.55);margin-bottom:16px}
.crumbs a:hover{color:var(--gold-2)}

/* ─────────── shop layout ─────────── */
.shop-layout{display:grid;grid-template-columns:262px 1fr;gap:36px;align-items:start;padding:44px 0 80px}
.filters{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto}
.fgroup{padding:16px 0;border-bottom:1px solid var(--line)}
.fgroup:last-child{border:none}
.fgroup h4{font-family:var(--ff-label);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--maroon);margin-bottom:12px;font-weight:400}
.fcheck{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px;color:var(--ink-2);cursor:pointer;user-select:none}
.fcheck input{accent-color:var(--gold);width:16px;height:16px}
.fcheck:hover{color:var(--ink)}
.fmeta{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-3)}
.shop-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:26px;flex-wrap:wrap}
.shop-bar .res{font-size:14px;color:var(--ink-2)}
.shop-bar .res b{color:var(--maroon);font-size:17px}
.sortsel{border:1px solid var(--line);background:var(--white);border-radius:30px;padding:10px 18px;font-size:13.5px;outline:none;cursor:pointer}
.chipbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.chip{font-size:12px;padding:7px 16px;border-radius:20px;border:1px solid var(--line);background:var(--white);color:var(--ink-2);cursor:pointer;transition:.2s}
.chip.on{background:var(--maroon);color:#f9ecd2;border-color:var(--maroon)}
.empty{padding:70px 20px;text-align:center;color:var(--ink-3)}
.empty .big{font-size:44px;margin-bottom:12px}

/* ─────────── product page ─────────── */
.pd-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;padding:48px 0 80px;align-items:start}
.pd-gallery{position:sticky;top:100px}
.pd-main{border-radius:var(--r-lg);overflow:hidden;background:var(--white);box-shadow:var(--sh-2);aspect-ratio:1/1;cursor:zoom-in;position:relative}
.pd-main img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease);transform:scale(var(--zoom,1))}
.pd-main:hover img{transform:scale(calc(var(--zoom,1) * 1.55))}
.pd-thumbs{display:flex;gap:12px;margin-top:14px}
.pd-thumb{width:76px;height:76px;border-radius:14px;overflow:hidden;border:2px solid transparent;cursor:pointer;transition:.25s;background:var(--white)}
.pd-thumb.on{border-color:var(--gold)}
.pd-thumb img{width:100%;height:100%;object-fit:cover}
.pd-thumb.t2 img{transform:scale(1.7) translateY(6%)}
.pd-thumb.t3 img{transform:scale(1.7) translate(-8%,-4%) rotate(8deg)}
.pd-info h1{font-size:clamp(28px,3vw,38px);margin:6px 0 8px}
.pd-code{font-size:12.5px;color:var(--ink-3);letter-spacing:.05em}
.pd-pricebox{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;margin:20px 0;box-shadow:var(--sh-1)}
.pd-total{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.pd-total b{font-family:var(--ff-disp);font-size:38px;font-weight:700;color:var(--maroon-deep)}
.pd-live{font-size:12px;color:var(--ok);display:inline-flex;align-items:center;gap:7px}
.brk-btn{font-size:12px;color:var(--gold);text-decoration:underline dotted;margin-left:auto}
.pd-brk{margin-top:14px;border-top:1px dashed var(--line);padding-top:14px}
.pd-brk table{width:100%;border-collapse:collapse}
.pd-brk td{padding:6.5px 2px;font-size:13.5px;color:var(--ink-2)}
.pd-brk td:last-child{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.pd-brk tr.total td{border-top:1px solid var(--line);margin-top:4px;padding-top:10px;color:var(--maroon);font-weight:600;font-size:15px}
.opt-label{font-family:var(--ff-label);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2);margin:18px 0 9px;display:flex;justify-content:space-between}
.size-row{display:flex;gap:8px;flex-wrap:wrap}
.size-pill{min-width:52px;text-align:center;padding:9px 13px;border-radius:12px;border:1.5px solid var(--line);background:var(--white);font-size:13.5px;cursor:pointer;transition:.2s}
.size-pill.on{border-color:var(--gold);background:var(--gold-faint);color:var(--maroon);font-weight:600}
.qty-row{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:14px;background:var(--white);overflow:hidden}
.qty-row button{width:40px;height:42px;font-size:17px;color:var(--ink-2)}
.qty-row button:hover{background:var(--gold-faint);color:var(--maroon)}
.qty-row b{min-width:44px;text-align:center;font-size:15px}
.pd-ctas{display:flex;gap:12px;margin:24px 0 8px;flex-wrap:wrap}
.emi-strip{display:flex;align-items:center;gap:12px;background:var(--gold-faint);border:1px solid #ecdcba;border-radius:14px;padding:13px 18px;font-size:13.5px;color:#6d5518;margin-top:14px}
.pd-perks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.perk{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--ink-2)}
.perk svg{width:19px;height:19px;color:var(--gold);flex:none}
.pin-row{display:flex;gap:10px;margin-top:6px}
.pin-row input{flex:1;border:1.5px solid var(--line);border-radius:12px;padding:11px 16px;outline:none;background:var(--white)}
.pin-row input:focus{border-color:var(--gold)}
.pin-msg{font-size:12.5px;margin-top:8px;color:var(--ok)}
.acc{border:1px solid var(--line);border-radius:var(--r);background:var(--white);margin-top:12px;overflow:hidden}
.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;font-family:var(--ff-label);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--maroon);cursor:pointer}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:'+';font-size:18px;color:var(--gold)}
.acc[open] summary::after{content:'–'}
.acc .acc-body{padding:0 20px 18px;font-size:14px;color:var(--ink-2)}
.rv-item{border-top:1px solid var(--line);padding:16px 0}
.rv-item b{font-size:14.5px}
.rv-item small{color:var(--ink-3);margin-left:8px}
.rv-item p{margin-top:6px;color:var(--ink-2);font-size:14px}
.review-form{display:grid;gap:10px;margin-top:14px}
.rate-pick{display:flex;gap:4px;font-size:22px;color:var(--gold);cursor:pointer;user-select:none}

/* ─────────── cart / checkout ─────────── */
.cart-layout{display:grid;grid-template-columns:1.5fr .9fr;gap:36px;padding:44px 0 90px;align-items:start}
.cart-items{display:grid;gap:16px}
.cart-item{display:grid;grid-template-columns:96px 1fr auto;gap:18px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;align-items:center;animation:fadeUp .4s var(--ease)}
.cart-item img{width:96px;height:96px;border-radius:14px;object-fit:cover}
.ci-name{font-family:var(--ff-disp);font-size:19px;font-weight:600;color:var(--maroon-deep)}
.ci-meta{font-size:12.5px;color:var(--ink-3);margin:3px 0 8px}
.ci-right{text-align:right}
.ci-right b{font-size:17px}
.ci-remove{font-size:12px;color:var(--bad);margin-top:8px;display:inline-block;opacity:.75}
.ci-remove:hover{opacity:1}
.summary{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;position:sticky;top:100px;box-shadow:var(--sh-1)}
.summary h3{font-size:22px;margin-bottom:16px}
.sum-row{display:flex;justify-content:space-between;font-size:14px;color:var(--ink-2);padding:7px 0}
.sum-row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:14px;font-size:17px;color:var(--maroon-deep);font-weight:600}
.sum-row .free{color:var(--ok);font-weight:600}
.coupon-row{display:flex;gap:8px;margin:14px 0 4px}
.coupon-row input{flex:1;border:1.5px solid var(--line);border-radius:12px;padding:11px 14px;outline:none;text-transform:uppercase;font-size:13px;letter-spacing:.08em}
.coupon-row input:focus{border-color:var(--gold)}
.points-box{background:var(--gold-faint);border:1px dashed var(--gold);padding:13px 16px;border-radius:12px;margin:12px 0;font-size:13px;color:#6d5518}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
.fld label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px}
.fld input,.fld select,.fld textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 15px;outline:none;background:var(--white);transition:.2s}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(185,138,47,.12)}
.fld textarea{min-height:96px;resize:vertical}
.pay-opt{display:flex;gap:14px;align-items:flex-start;border:1.5px solid var(--line);background:var(--white);border-radius:14px;padding:16px;cursor:pointer;transition:.2s}
.pay-opt.on{border-color:var(--gold);background:var(--gold-faint)}
.pay-opt input{margin-top:3px;accent-color:var(--gold)}
.pay-opt b{font-size:14.5px;display:block}
.pay-opt small{color:var(--ink-3);font-size:12.5px}
.sec-title{font-family:var(--ff-label);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--maroon);margin:26px 0 14px;display:flex;align-items:center;gap:12px}
.sec-title::after{content:'';flex:1;height:1px;background:var(--line)}

/* ─────────── orders / account ─────────── */
.acct-layout{display:grid;grid-template-columns:250px 1fr;gap:34px;padding:44px 0 90px;align-items:start}
.acct-nav{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;position:sticky;top:100px}
.acct-nav a{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:12px;font-size:14px;color:var(--ink-2)}
.acct-nav a.on,.acct-nav a:hover{background:var(--gold-faint);color:var(--maroon)}
.order-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;margin-bottom:16px}
.order-top{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.order-id{font-family:var(--ff-label);letter-spacing:.1em;color:var(--maroon);font-size:15px}
.status-pill{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:5px 13px;border-radius:16px}
.st-placed{background:#eef2ff;color:#3f5bd8}.st-packed{background:#fff4e3;color:#b3541e}.st-shipped{background:#e8f4fd;color:#1d6fa8}.st-delivered{background:#e9f7ee;color:var(--ok)}.st-cancelled{background:#fdeef0;color:var(--bad)}
.timeline{display:flex;gap:0;margin:16px 0 4px}
.tl-step{flex:1;text-align:center;position:relative;font-size:11px;color:var(--ink-3)}
.tl-step::before{content:'';display:block;width:11px;height:11px;border-radius:50%;background:var(--line);margin:0 auto 7px;position:relative;z-index:2}
.tl-step::after{content:'';position:absolute;top:5px;left:50%;width:100%;height:1.5px;background:var(--line)}
.tl-step:last-child::after{display:none}
.tl-step.done::before{background:var(--gold);box-shadow:0 0 0 4px var(--gold-faint)}
.tl-step.done::after{background:var(--gold)}
.tl-step.done{color:var(--maroon)}
.loyalty-card{background:linear-gradient(135deg,var(--maroon) 0%,var(--maroon-deep) 100%);border-radius:var(--r-lg);color:#f6e8c8;padding:30px;position:relative;overflow:hidden}
.loyalty-card::after{content:'✦';position:absolute;right:22px;bottom:-20px;font-size:120px;color:rgba(212,175,90,.14)}
.loyalty-card b{font-family:var(--ff-disp);font-size:42px;color:#ffe9bd}
.tier-row{display:flex;gap:6px;margin-top:14px}
.tier{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:14px;border:1px solid rgba(212,175,90,.4);color:rgba(246,232,200,.7)}
.tier.on{background:var(--gold);color:#fff;border-color:var(--gold)}

/* ─────────── rates page ─────────── */
.rate-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.rate-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;text-align:center;position:relative;overflow:hidden;transition:.3s}
.rate-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.rate-card.gold{background:linear-gradient(160deg,#fffdf8,#f7eed8);border-color:#eaddb8}
.rate-card .rc-name{font-family:var(--ff-label);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2)}
.rate-card .rc-val{font-family:var(--ff-disp);font-size:33px;font-weight:700;color:var(--maroon-deep);margin:8px 0 2px}
.rate-card small{color:var(--ink-3);font-size:12px}
.chart-wrap{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-1)}
#rateChart{width:100%;height:300px;display:block}

/* ─────────── catalogues ─────────── */
.catlog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.catlog{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1);transition:.3s;display:flex;flex-direction:column}
.catlog:hover{transform:translateY(-5px);box-shadow:var(--sh-3)}
.catlog-cover{aspect-ratio:16/10;background:linear-gradient(140deg,var(--maroon-deep),var(--maroon-2));position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.catlog-cover::after{content:'';position:absolute;inset:12px;border:1px solid rgba(212,175,90,.35);border-radius:12px}
.catlog-cover .pdf-ico{font-family:var(--ff-disp);font-size:44px;color:var(--gold-2)}
.catlog-cover .pages{position:absolute;top:16px;right:16px;background:rgba(250,246,239,.15);border:1px solid rgba(212,175,90,.4);color:#f3dfae;font-size:11px;padding:4px 11px;border-radius:14px;backdrop-filter:blur(4px)}
.catlog-cover .feat{position:absolute;top:16px;left:16px;background:var(--gold);color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:14px;font-weight:600}
.catlog-body{padding:20px;flex:1;display:flex;flex-direction:column}
.catlog-body h4{font-family:var(--ff-disp);font-size:22px;color:var(--maroon-deep)}
.catlog-body p{font-size:13.5px;color:var(--ink-2);margin:6px 0 14px;flex:1}
.catlog-meta{display:flex;gap:14px;font-size:11.5px;color:var(--ink-3);margin-bottom:14px;flex-wrap:wrap}
.catlog-actions{display:flex;gap:10px}

/* ─────────── b2b ─────────── */
.b2b-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.b2b-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.b2b-stat{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:20px;text-align:center}
.b2b-stat b{font-family:var(--ff-disp);font-size:30px;color:var(--maroon);display:block}
.b2b-stat span{font-size:12px;color:var(--ink-3);letter-spacing:.06em}
.benefit{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:flex-start}
.benefit:last-child{border:none}
.benefit .bic{width:46px;height:46px;border-radius:14px;background:var(--gold-faint);display:flex;align-items:center;justify-content:center;flex:none;color:var(--gold)}
.benefit .bic svg{width:23px;height:23px}
.benefit b{font-family:var(--ff-disp);font-size:19px;color:var(--maroon-deep);display:block;margin-bottom:3px}
.benefit p{font-size:13.5px;color:var(--ink-2)}
.city-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.city-chips span{font-size:12.5px;background:var(--white);border:1px solid var(--line);padding:7px 15px;border-radius:18px;color:var(--ink-2)}
.settle-table td,.settle-table th{padding:12px 16px}

/* ─────────── about / contact ─────────── */
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.team-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;text-align:center}
.team-card .tav{width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,var(--maroon),var(--maroon-deep));color:var(--gold-2);font-family:var(--ff-disp);font-size:30px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.team-card b{font-family:var(--ff-disp);font-size:21px;color:var(--maroon-deep);display:block}
.team-card small{letter-spacing:.16em;text-transform:uppercase;font-size:10.5px;color:var(--gold)}
.team-card p{font-size:13.5px;color:var(--ink-2);margin-top:10px}
.reg-list{display:grid;gap:12px;margin-top:20px}
.reg-item{display:flex;gap:16px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:18px;align-items:center}
.reg-item .ric{width:44px;height:44px;border-radius:12px;background:var(--gold-faint);display:flex;align-items:center;justify-content:center;color:var(--gold)}
.reg-item b{display:block;font-size:14.5px}
.reg-item small{color:var(--ink-3)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px}
.info-tile{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:flex-start}
.info-tile svg{width:24px;height:24px;color:var(--gold);flex:none;margin-top:2px}
.info-tile b{display:block;font-size:15px}
.info-tile p,.info-tile a{font-size:14px;color:var(--ink-2)}

/* services */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;transition:.3s;position:relative;overflow:hidden}
.svc:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.svc .sic{width:54px;height:54px;border-radius:16px;background:var(--gold-faint);display:flex;align-items:center;justify-content:center;color:var(--gold);margin-bottom:18px}
.svc .sic svg{width:26px;height:26px}
.svc h4{font-family:var(--ff-disp);font-size:24px;color:var(--maroon-deep);margin-bottom:8px}
.svc p{font-size:14px;color:var(--ink-2);margin-bottom:16px}

/* ─────────── admin dashboard ─────────── */
.admin-shell{display:grid;grid-template-columns:242px 1fr;min-height:100vh}
.adm-side{background:var(--maroon-deep);color:#f3dfae;padding:24px 16px;position:sticky;top:0;height:100vh;overflow:auto}
.adm-logo{display:flex;align-items:center;gap:10px;padding:6px 10px 22px;border-bottom:1px solid rgba(212,175,90,.2);margin-bottom:18px}
.adm-logo img{height:32px;background:#faf6ef;border-radius:6px;padding:2px 6px}
.adm-nav a{display:flex;gap:12px;align-items:center;padding:11px 14px;border-radius:12px;font-size:13.5px;color:rgba(243,223,174,.8);margin-bottom:3px;transition:.2s}
.adm-nav a:hover{background:rgba(212,175,90,.12);color:#ffe9bd}
.adm-nav a.on{background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff8ea}
.adm-nav .cnt{margin-left:auto;background:rgba(255,255,255,.18);font-size:10.5px;padding:2px 8px;border-radius:10px}
.adm-main{padding:30px 36px;background:var(--cream);min-width:0}
.adm-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:14px;flex-wrap:wrap}
.adm-head h2{font-size:30px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
.stat{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:22px;position:relative;overflow:hidden}
.stat::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),transparent)}
.stat small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.stat b{font-family:var(--ff-disp);font-size:29px;color:var(--maroon-deep);display:block;margin-top:6px}
.stat span{font-size:12px;color:var(--ink-3)}
.adm-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:22px}
.adm-card h3{font-size:20px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.adm-table-wrap{overflow-x:auto}
table.adm-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}
.adm-table th{text-align:left;font-family:var(--ff-label);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding:10px 12px;border-bottom:1.5px solid var(--line);font-weight:400;white-space:nowrap}
.adm-table td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.adm-table tr:hover td{background:var(--gold-faint)}
.adm-table img{width:46px;height:46px;border-radius:9px;object-fit:cover}
.adm-table select{border:1px solid var(--line);border-radius:9px;padding:6px 10px;font-size:12.5px;background:var(--white)}
.icon-x{color:var(--bad);font-size:15px;padding:5px 8px;border-radius:8px}
.icon-x:hover{background:#fdeef0}
.icon-e{color:var(--gold);font-size:14px;padding:5px 8px;border-radius:8px}
.icon-e:hover{background:var(--gold-faint)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.tab{padding:9px 20px;border-radius:22px;font-size:13px;background:var(--white);border:1px solid var(--line);color:var(--ink-2)}
.tab.on{background:var(--maroon);color:#f9ecd2;border-color:var(--maroon)}
.src-badge{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:5px 13px;border-radius:14px}
.src-live{background:#e9f7ee;color:var(--ok)}
.src-sim{background:#fff4e3;color:var(--warn)}
.mc-edit td input{width:90px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;font-size:13px}
.mc-edit td input.tt{width:130px}
.drop-zone{border:2px dashed var(--gold-soft);background:var(--gold-faint);border-radius:var(--r);padding:36px;text-align:center;color:var(--ink-2);cursor:pointer;transition:.25s}
.drop-zone:hover,.drop-zone.drag{border-color:var(--gold);background:#f3e6c8}
.drop-zone b{color:var(--maroon)}
#admChart{width:100%;height:260px;display:block}
.partner-note{font-size:12.5px;color:var(--ink-3)}

/* ─────────── modals / toast / pdf ─────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(35,10,14,.55);backdrop-filter:blur(5px);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.open{display:flex;animation:fade .25s}
.modal{background:var(--white);border-radius:var(--r-lg);max-width:560px;width:100%;max-height:88vh;overflow:auto;padding:34px;position:relative;animation:pop .35s var(--ease);box-shadow:var(--sh-3)}
.modal.lg{max-width:780px}
@keyframes pop{from{transform:scale(.92) translateY(14px);opacity:0}}
@keyframes fade{from{opacity:0}}
@keyframes fadeUp{from{transform:translateY(14px);opacity:0}}
.modal-close{position:absolute;top:14px;right:16px;font-size:20px;color:var(--ink-3);width:36px;height:36px;border-radius:50%}
.modal-close:hover{background:var(--cream-2);color:var(--ink)}
.toast-wrap{position:fixed;bottom:26px;right:26px;z-index:200;display:grid;gap:10px}
.toast{background:var(--maroon-deep);color:#f9ecd2;padding:14px 22px;border-radius:14px;box-shadow:var(--sh-3);font-size:14px;display:flex;gap:12px;align-items:center;animation:toastIn .4s var(--ease);max-width:360px;border:1px solid rgba(212,175,90,.35)}
.toast.ok::before{content:'✓';color:#8fe3a8;font-weight:700}
.toast.err{background:#5c0f1a}.toast.err::before{content:'!';color:#ff9d9d;font-weight:700}
@keyframes toastIn{from{transform:translateX(40px);opacity:0}}
.pdf-viewer{position:fixed;inset:0;background:rgba(24,7,10,.9);z-index:110;display:none;flex-direction:column}
.pdf-viewer.open{display:flex}
.pdf-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 26px;background:var(--maroon-deep);color:#f3dfae}
.pdf-title{font-family:var(--ff-disp);font-size:22px}
.pdf-actions{display:flex;gap:12px;align-items:center}
.pdf-close{width:38px;height:38px;border-radius:50%;background:rgba(250,246,239,.12);color:#f3dfae;font-size:15px}
.pdf-close:hover{background:var(--gold);color:#fff}
#pdfFrame{flex:1;width:100%;border:none;background:#333}

/* reveal animations */
.rv{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv-d1{transition-delay:.08s}.rv-d2{transition-delay:.16s}.rv-d3{transition-delay:.24s}.rv-d4{transition-delay:.32s}

/* misc */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.divider-orn{display:flex;align-items:center;gap:16px;justify-content:center;margin:10px 0 34px;color:var(--gold)}
.divider-orn::before,.divider-orn::after{content:'';height:1px;width:90px;background:linear-gradient(90deg,transparent,var(--gold))}
.divider-orn::after{background:linear-gradient(90deg,var(--gold),transparent)}
.mt-2{margin-top:20px}.mt-3{margin-top:34px}.mb-2{margin-bottom:20px}
.center{text-align:center}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.loading-spin{width:46px;height:46px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite;margin:60px auto}
@keyframes spin{to{transform:rotate(360deg)}}
.qty-banner{background:linear-gradient(90deg,var(--gold-faint),transparent);border-left:3px solid var(--gold);padding:16px 20px;border-radius:0 12px 12px 0;font-size:14px;color:var(--ink-2);margin:20px 0}

/* ─────────── responsive ─────────── */
@media(max-width:1080px){
  .hero-in{grid-template-columns:1fr;padding:50px 0}
  .hero-3d{height:420px;order:-1}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .rate-cards{grid-template-columns:repeat(2,1fr)}
  .trust-grid,.testi-grid,.svc-grid,.team-grid{grid-template-columns:repeat(2,1fr)}
  .pd-layout,.cart-layout,.b2b-grid,.story-grid,.contact-grid,.grid2{grid-template-columns:1fr}
  .pd-gallery{position:static}
  .shop-layout{grid-template-columns:1fr}
  .filters{position:static;max-height:none}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .admin-shell{grid-template-columns:1fr}
  .adm-side{position:static;height:auto}
  .adm-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
  .rate-strip-in{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--sh-2);padding:14px 4vw 20px}
  .nav.open{display:block}
  .nav-scroll{flex-direction:column;align-items:stretch}
  .nav a{padding:13px 10px}
  .drop-menu{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;min-width:0;grid-template-columns:1fr;display:none}
  .nav-drop:hover .drop-menu,.nav-drop.open .drop-menu{display:grid}
  .nav-toggle{display:flex}
  .brand{margin-right:auto}
  .hero h1{font-size:clamp(36px,9vw,50px)}
  .hero-stats{gap:20px}
  .cat-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .cat-card b{font-size:17px}
  .form-grid{grid-template-columns:1fr}
  .rate-cards,.trust-grid,.testi-grid,.svc-grid,.team-grid,.grid3{grid-template-columns:1fr}
  .p-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .pc-name{font-size:17px}
  .banner .b-body{padding:30px 24px}
  .newsletter{padding:36px 22px}
  .adm-main{padding:20px 16px}
  .stat-grid{grid-template-columns:1fr 1fr}
  .cart-item{grid-template-columns:72px 1fr}
  .cart-item img{width:72px;height:72px}
  .ci-right{grid-column:1/-1;text-align:left;display:flex;gap:16px;align-items:center}
  .foot-grid{grid-template-columns:1fr 1fr}
  .search-in{padding:14px 0}
  .ticker{font-size:11.5px}
}

.foot-logo{height:44px;background:var(--white);border-radius:10px;padding:4px 10px;border:1px solid var(--line)}

/* ─────────── WhatsApp integration ─────────── */
.btn-wa{background:linear-gradient(135deg,#25d366,#0f8a47);color:#fff;box-shadow:0 8px 22px rgba(18,140,74,.3);border:1.5px solid transparent}
.btn-wa:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(18,140,74,.4)}
.btn-wa svg{width:17px;height:17px}
.wa-fab{position:fixed;left:26px;bottom:26px;z-index:90;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#25d366,#0f8a47);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(18,140,74,.42);transition:transform .3s var(--ease)}
.wa-fab:hover{transform:scale(1.1) rotate(6deg)}
.wa-fab svg{width:30px;height:30px;position:relative;z-index:2}
.wa-fab::before{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid rgba(37,211,102,.65);animation:waPulse 2.4s infinite;z-index:1}
.wa-fab span{position:absolute;right:-4px;top:-4px;width:20px;height:20px;border-radius:50%;background:#fff;color:#0f8a47;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.25);z-index:3}
@keyframes waPulse{0%{transform:scale(1);opacity:1}75%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}
.wa-inline{display:inline-flex;align-items:center;gap:8px;color:#0f8a47;font-weight:600}
.wa-inline svg{width:17px;height:17px}
.wa-hint{display:flex;gap:10px;align-items:center;background:#e9f9ef;border:1px solid #bdeccf;border-radius:12px;padding:12px 16px;font-size:13px;color:#0c6b3a;margin-top:14px}

/* ═══════════════════════════════════════════════════════════
   UPGRADE PASS — luxury footer, preloader, WhatsApp QR modal,
   logo branding, premium micro-interactions
   ═══════════════════════════════════════════════════════════ */

/* ── preloader ── */
.preloader{position:fixed;inset:0;z-index:400;background:radial-gradient(900px 600px at 50% 40%,#5c1822,var(--maroon-deep) 70%);display:flex;align-items:center;justify-content:center;transition:opacity .7s var(--ease),visibility .7s;animation:plAuto .6s 4s forwards}
.preloader.hide{opacity:0;visibility:hidden;pointer-events:none}
@keyframes plAuto{to{opacity:0;visibility:hidden;pointer-events:none}}
.pl-in{text-align:center;animation:plPop 1s var(--ease)}
@keyframes plPop{from{opacity:0;transform:scale(.92) translateY(12px)}}
.pl-in img{height:56px;background:var(--cream);border-radius:12px;padding:8px 16px;margin:0 auto 22px;box-shadow:0 10px 40px rgba(0,0,0,.35)}
.pl-line{width:180px;height:2px;background:rgba(212,175,90,.25);border-radius:2px;margin:0 auto 14px;overflow:hidden;position:relative}
.pl-line i{position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent,var(--gold-2),transparent);animation:plSweep 1.4s infinite}
@keyframes plSweep{from{left:-40%}to{left:100%}}
.pl-txt{font-family:var(--ff-label);font-size:10.5px;letter-spacing:.4em;text-transform:uppercase;color:rgba(243,223,174,.75)}

/* ── scroll progress ── */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--gold),#e8c877,var(--gold));z-index:4000;box-shadow:0 0 12px rgba(212,175,90,.6);transition:transform .12s linear;pointer-events:none}

/* ── cursor glow (desktop) ── */
.cursor-glow{display:none;position:fixed;width:340px;height:340px;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(circle,rgba(212,175,90,.10),rgba(212,175,90,.04) 45%,transparent 70%);transform:translate(-50%,-50%);mix-blend-mode:screen}
@media (hover:hover) and (pointer:fine){.cursor-glow.on{display:block}}

/* ── luxury footer (professional, minimal) ── */
.footer{background:radial-gradient(1100px 500px at 50% -10%,#5c1822,var(--maroon-deep) 60%);color:#e9d5a8;position:relative;overflow:hidden;padding:64px 0 0}
.footer::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cpath d='M32 26l6 6-6 6-6-6z' fill='%23d4af5a' fill-opacity='.05'/%3E%3C/svg%3E");pointer-events:none}
.footer .divider-orn{margin:34px 0 30px}
.foot-top{text-align:center}
.foot-logo{height:52px;background:var(--cream);border-radius:12px;padding:8px 18px;margin:0 auto 16px;display:inline-block;box-shadow:0 8px 30px rgba(0,0,0,.3)}
.foot-tag{font-family:var(--ff-disp);font-style:italic;font-size:16.5px;color:rgba(243,223,174,.85);letter-spacing:.04em}
.foot-social{display:flex;gap:12px;justify-content:center;margin-top:18px}
.foot-social a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(212,175,90,.35);display:inline-flex;align-items:center;justify-content:center;color:#f3dfae;transition:.3s}
.foot-social a:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-3px)}
.foot-social svg{width:19px;height:19px}
.footer .foot-grid{grid-template-columns:repeat(3,1fr);gap:40px;position:relative}
.footer .foot-col h4{font-family:var(--ff-label);font-size:11.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-2);margin-bottom:16px;font-weight:400;text-align:left}
.footer .foot-col a{display:block;color:rgba(233,213,168,.82);font-size:14px;padding:5.5px 0;transition:.25s;text-align:left}
.footer .foot-col a:hover{color:#fff;transform:translateX(4px)}
.footer .foot-addr{font-size:13.5px;color:rgba(233,213,168,.75);line-height:1.7;margin-bottom:12px}
.footer .foot-hrs{font-size:12px;color:rgba(233,213,168,.55);margin-top:12px;letter-spacing:.06em}
.footer .foot-legal{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(212,175,90,.22);margin-top:44px;padding:20px 0 26px;font-size:12px;color:rgba(233,213,168,.6);position:relative}
.footer .foot-staff a{color:rgba(233,213,168,.75);text-decoration:underline dotted}
.footer .foot-staff a:hover{color:var(--gold-2)}
@media(max-width:760px){.footer .foot-grid{grid-template-columns:1fr 1fr}.footer .foot-legal{justify-content:center;text-align:center}}

/* ── WhatsApp fallback modal with QR ── */
.wa-modal{text-align:center}
.wa-modal h3{font-size:26px;display:flex;gap:10px;align-items:center;justify-content:center;color:var(--maroon-deep)}
.wa-modal h3 svg{width:24px;height:24px;color:#0f8a47}
.wa-modal p.sub{font-size:13.5px;color:var(--ink-2);margin:8px 0 18px}
.wa-qr{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;display:inline-block;box-shadow:var(--sh-1)}
.wa-qr svg{display:block}
.wa-qr small{display:block;text-align:center;color:var(--ink-3);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;margin-top:8px}
.wa-msg{background:var(--cream-2);border:1px dashed #d8c9a8;border-radius:12px;padding:12px 14px;font-size:12.5px;color:var(--ink-2);text-align:left;max-height:150px;overflow:auto;margin:16px 0;white-space:pre-wrap;font-family:var(--ff-body)}
.wa-modal .btn{width:100%}
.wa-alt{display:flex;gap:10px;justify-content:center;margin-top:12px}
.wa-alt button{font-size:12px;color:var(--ink-2);border:1px solid var(--line);background:var(--white);border-radius:20px;padding:8px 16px;transition:.2s}
.wa-alt button:hover{border-color:var(--gold);color:var(--gold)}

/* ── logo branding everywhere ── */
.ph-logo{position:absolute;top:22px;right:26px;height:40px;background:rgba(250,246,239,.95);border-radius:10px;padding:5px 11px;box-shadow:0 6px 20px rgba(0,0,0,.25);opacity:.92;z-index:3}
.hero-logo{position:absolute;right:5%;bottom:6%;height:44px;opacity:.5;filter:saturate(.9);pointer-events:none;z-index:4}
.pd-stamp{position:absolute;left:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:9px;background:rgba(250,246,239,.94);border:1px solid var(--line);border-radius:30px;padding:7px 15px 7px 8px;box-shadow:var(--sh-1);font-family:var(--ff-label);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--maroon)}
.pd-stamp img{height:24px;border-radius:6px;padding:2px 6px;background:var(--white);border:1px solid var(--line)}
.empty-logo{height:52px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:7px 16px;margin:0 auto 18px;display:inline-block}
.sum-logo{display:flex;justify-content:space-between;align-items:center;margin:-6px 0 14px}
.sum-logo img{height:30px;background:var(--white);border:1px solid var(--line);border-radius:8px;padding:3px 9px}
.sum-logo span{font-family:var(--ff-label);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.order-logo{height:34px;background:var(--white);border:1px solid var(--line);border-radius:9px;padding:5px 12px;margin:0 auto 12px;display:inline-block}
.news-logo{height:46px;background:var(--white);border-radius:10px;padding:6px 14px;margin:0 auto 18px;display:inline-block;box-shadow:0 8px 26px rgba(0,0,0,.25)}
.pdf-ttl-wrap{display:flex;align-items:center;gap:14px}
.pdf-logo{height:30px;background:var(--cream);border-radius:7px;padding:3px 9px}

/* ── premium micro-interactions ── */
.btn-primary,.btn-gold{position:relative;overflow:hidden}
.btn-primary::before,.btn-gold::before{content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-20deg);transition:left .6s var(--ease)}
.btn-primary:hover::before,.btn-gold:hover::before{left:130%}
.shimmer-text{background:linear-gradient(100deg,#e8c877 10%,#fff3d0 30%,#f3dfae 50%,#e8c877 70%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimText 5s linear infinite}
@keyframes shimText{to{background-position:-220% 0}}
.hero h1 em.shimmer,em.shimmer{background:linear-gradient(100deg,#e8c877 10%,#fff3d0 35%,#e8c877 60%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimText 6s linear infinite;font-style:italic}
.p-card{border:1px solid transparent}
.p-card:hover{border-color:var(--gold-soft)}
.hero-cue{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);color:rgba(246,232,200,.55);z-index:4;animation:cue 2s infinite;text-align:center;font-size:10px;letter-spacing:.3em;text-transform:uppercase}
.hero-cue svg{display:block;margin:0 auto 6px;width:16px;height:16px}
@keyframes cue{0%,100%{transform:translate(-50%,0);opacity:.7}50%{transform:translate(-50%,8px);opacity:.3}}
.rate-strip{position:relative}
.rate-strip::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-2),transparent);background-size:50% 100%;animation:rateShim 4s linear infinite;z-index:2}
@keyframes rateShim{from{background-position:-100% 0}to{background-position:200% 0}}

/* ── mobile sticky product bar ── */
.pd-stickybar{display:none}
@media(max-width:768px){
  .pd-stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:85;background:rgba(250,246,239,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center;box-shadow:0 -10px 34px rgba(61,14,21,.14)}
  .pd-stickybar .ps-name{font-size:13px;font-weight:600;color:var(--maroon-deep);line-height:1.25}
  .pd-stickybar .ps-name small{display:block;font-weight:400;font-size:11.5px;color:var(--ink-3)}
  .pd-stickybar .btn{margin-left:auto;padding:11px 20px}
  body[data-page="product"] .wa-fab{bottom:86px;left:16px;width:50px;height:50px}
  body[data-page="product"] .wa-fab svg{width:26px;height:26px}
}

/* ── polish pass 2 ── */
@keyframes priceFlash{0%{color:var(--gold);text-shadow:0 0 14px rgba(212,175,90,.55)}100%{color:inherit}}
.flash-price{animation:priceFlash 1.2s var(--ease)}
.header-in{transition:height .3s var(--ease)}
.header.scrolled .header-in{height:64px}
.header.scrolled .brand-logo{height:34px}
.mc-stamp{display:flex;align-items:center;gap:16px;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--r);padding:16px 20px;margin-bottom:22px;box-shadow:var(--sh-1)}
.mc-stamp img{height:44px;background:var(--cream);border:1px solid var(--line);border-radius:9px;padding:5px 10px}
.mc-stamp b{font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep);display:block}
.mc-stamp small{color:var(--ink-3);font-size:12px}
.mc-stamp .mc-ver{margin-left:auto;font-family:var(--ff-label);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);border:1px dashed var(--gold);border-radius:14px;padding:6px 13px;white-space:nowrap}
.hero-orbs{transition:transform .6s cubic-bezier(.22,.8,.24,1)}
.pay-strip{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:18px 0 0}
.pay-chip{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:6px;border:1px solid rgba(212,175,90,.3);background:rgba(250,246,239,.05);color:#e9d5a8;font-family:var(--ff-label);font-size:10px;letter-spacing:.14em}
.pay-chip svg{width:26px;height:14px;margin-right:6px}

/* ── category pill bar (Tanishq-inspired quick-shop strip) ── */
.catbar-outer{padding:20px 0;background:var(--cream);border-bottom:1px solid var(--line)}
.catbar{display:flex;gap:28px;overflow-x:auto;padding:2px 2px 6px;scroll-snap-type:x proximity;scrollbar-width:none}
.catbar::-webkit-scrollbar{display:none}
.cat-pill{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:88px;scroll-snap-align:start}
.cp-ic{width:62px;height:62px;border-radius:50%;border:1.5px solid var(--line);background:var(--white);display:flex;align-items:center;justify-content:center;color:var(--maroon);transition:.3s var(--ease)}
.cp-ic svg{width:26px;height:26px}
.cat-pill:hover .cp-ic{border-color:var(--gold);color:var(--gold);transform:translateY(-5px);box-shadow:0 12px 24px rgba(185,138,47,.24)}
.cp-lb{font-size:12px;color:var(--ink-2);letter-spacing:.03em;white-space:nowrap}
.cat-pill:hover .cp-lb{color:var(--maroon);font-weight:500}

/* ── poster grid (festive offer posters) ── */
.poster-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px}
.poster{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:220px;box-shadow:var(--sh-2);display:flex;align-items:flex-end;background:var(--maroon-deep)}
.poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.poster:hover img{transform:scale(1.05)}
.p-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,6,10,.9) 0%,rgba(30,6,10,.5) 45%,rgba(30,6,10,.02) 78%)}
.poster-xl{min-height:462px}
.poster-xl .p-fade{background:linear-gradient(90deg,rgba(30,6,10,.92) 0%,rgba(30,6,10,.55) 42%,rgba(30,6,10,.04) 75%)}
.poster-side{display:grid;gap:22px}
.poster-side .poster{min-height:220px}
.p-body{position:relative;z-index:2;padding:28px;color:#fdf3dd;max-width:72%}
.poster-xl .p-body{padding:38px;max-width:64%}
.p-body h3{color:#fdf3dd;font-size:clamp(22px,2.2vw,34px);margin:8px 0 10px;line-height:1.15}
.p-body p{font-size:13.5px;color:rgba(253,243,221,.82);margin-bottom:14px;font-weight:300}
.offer-pill{display:inline-flex;align-items:baseline;gap:8px;background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff8ea;font-family:var(--ff-label);letter-spacing:.06em;font-size:14px;padding:8px 16px;border-radius:10px;margin:2px 0 10px;box-shadow:0 6px 18px rgba(185,138,47,.4)}
.offer-pill span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.9}
.offer-pill.sm{font-size:12px;padding:6px 13px}
.poster .flash-countdown{transform:scale(.8);transform-origin:left;margin:4px 0 10px}
.poster .fc-cell{padding:7px 10px;min-width:52px}
.poster .fc-cell b{font-size:20px}
@media(max-width:920px){.poster-grid{grid-template-columns:1fr}.poster-xl{min-height:380px}.p-body,.poster-xl .p-body{max-width:88%;padding:24px}}

/* ── footer quick-shop chips ── */
.foot-chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:28px}
.foot-chips a{font-size:12px;letter-spacing:.05em;color:rgba(233,213,168,.85);border:1px solid rgba(212,175,90,.35);border-radius:20px;padding:7px 16px;transition:.25s}
.foot-chips a:hover{background:var(--gold);color:#fff;border-color:var(--gold)}

/* ═══════════ header v2 — utility strip, refined nav ═══════════ */
.utilbar{background:var(--maroon-deep);color:rgba(243,223,174,.85);font-size:12px;letter-spacing:.05em;border-bottom:1px solid rgba(212,175,90,.25)}
.utilbar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:38px}
.ub-left,.ub-right{display:flex;gap:18px;align-items:center}
.utilbar a{color:rgba(243,223,174,.8);transition:.2s}
.utilbar a:hover{color:#ffe9bd}
.ub-rates{display:flex;gap:22px;align-items:center;font-size:12px;white-space:nowrap}
.ub-rates b{color:#ffe9bd;font-weight:600}
.ub-rates .up{color:#8fe3a8;font-style:normal;font-size:10.5px;margin-left:4px}
.ub-rates .down{color:#ff9d9d;font-style:normal;font-size:10.5px;margin-left:4px}
.ub-live{font-family:var(--ff-label);font-size:10px;letter-spacing:.26em;color:#8fe3a8;display:inline-flex;align-items:center;gap:7px}
@media(max-width:760px){
  .hide-sm{display:none}
  .ub-left{display:none}
  .ub-right{display:none}
  .utilbar-in{justify-content:center}
  .ub-rates{gap:16px;font-size:11.5px;margin:0 auto}
  .ub-live{letter-spacing:.18em}
}
.header-in{height:86px}
.header.scrolled .header-in{height:68px}
.header.scrolled .brand-logo{height:34px}
.nav a{font-family:var(--ff-label);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);position:relative;padding:10px 13px;border-radius:0;background:transparent !important}
.nav a::after{content:'';position:absolute;left:13px;right:13px;bottom:2px;height:1.5px;background:linear-gradient(90deg,var(--gold),var(--gold-2));transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:hover::after,.nav a.active::after{transform:scaleX(1)}
.nav a:hover{color:var(--maroon)}
.nav a.active{color:var(--maroon)}

/* ═══════════ poster carousel ═══════════ */
.carousel-sec{position:relative;background:var(--maroon-deep)}
.carousel{position:relative;overflow:hidden}
.c-track{display:flex;transition:transform .75s var(--ease)}
.c-slide{position:relative;flex:0 0 100%;min-height:500px;display:flex;align-items:center;touch-action:pan-y}
.c-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.c-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,6,10,.92) 0%,rgba(30,6,10,.6) 40%,rgba(30,6,10,.05) 75%)}
.c-body{position:relative;z-index:2;padding:54px max(6vw,40px);max-width:660px;color:#fdf3dd}
.c-body .label{display:inline-block;margin-bottom:10px}
.c-body h3{color:#fdf3dd;font-size:clamp(30px,4.4vw,52px);line-height:1.08;margin:0 0 16px}
.c-body p{font-size:15.5px;color:rgba(253,243,221,.85);margin:12px 0 20px;font-weight:300;max-width:480px}
.c-body .offer-pill{font-size:16px;padding:10px 20px;margin:0 0 14px}
.c-body .offer-pill span{font-size:11px}
.c-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.c-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(250,246,239,.94);color:var(--maroon);font-size:24px;line-height:1;box-shadow:var(--sh-2);z-index:4;transition:.3s var(--ease);display:flex;align-items:center;justify-content:center}
.c-arrow:hover{background:var(--gold);color:#fff;transform:translateY(-50%) scale(1.08)}
.c-prev{left:20px}.c-next{right:20px}
.c-dots{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:9px;z-index:4}
.c-dot{width:9px;height:9px;border-radius:50%;background:rgba(250,246,239,.45);transition:.35s var(--ease);cursor:pointer}
.c-dot.on{background:var(--gold-2);width:28px;border-radius:6px}
.c-slide .flash-countdown{transform:scale(.9);transform-origin:left;margin:6px 0 4px}
@media(max-width:760px){.c-slide{min-height:430px}.c-body{padding:30px 22px}.c-arrow{width:38px;height:38px;font-size:19px}.c-prev{left:10px}.c-next{right:10px}.c-slide .flash-countdown{transform:scale(.72)}}

/* ═══════════ subtle WhatsApp treatments ═══════════ */
.wa-fab{display:none !important}
.wa-subtle{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:var(--ink-3);letter-spacing:.02em;border-bottom:1px dashed var(--line);padding-bottom:4px;transition:.25s;background:none}
.wa-subtle:hover{color:var(--maroon);border-color:var(--gold)}
.wa-subtle span{color:var(--gold);transition:transform .25s}
.wa-subtle:hover span{transform:translateX(5px)}
.mini-wa{display:inline-flex;align-items:center;margin-left:8px;opacity:.5}
.mini-wa svg{width:15px;height:15px}
.ps-wa{font-size:11.5px;letter-spacing:.06em;color:var(--ink-2);border:1px solid var(--line);background:var(--white);border-radius:22px;padding:10px 15px;transition:.25s;white-space:nowrap}
.ps-wa:hover{border-color:var(--gold);color:var(--maroon)}
.wa-hint.subtle{background:var(--gold-faint);border-color:#ecdcba;color:#6d5518}
.foot-social a{width:34px;height:34px;border:none;background:transparent;color:rgba(233,213,168,.55)}
.foot-social a:hover{color:var(--gold-2);transform:translateY(-2px);background:transparent}
.foot-social svg{width:16px;height:16px}
.pd-stickybar .ps-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* mobile: grid blowout guards */
.grid2>*,.grid3>*,.cart-layout>*,.shop-layout>*,.pdlayout>*{min-width:0}
.acc{max-width:100%}
@media(max-width:680px){.mc-table{min-width:420px}.adm-table{min-width:520px}}

/* mobile: account layout */
@media(max-width:1080px){
  .acct-layout{grid-template-columns:1fr;gap:18px}
  .acct-nav{position:static;display:flex;overflow-x:auto;gap:6px;padding:10px}
  .acct-nav a{white-space:nowrap;border:1px solid var(--line);border-radius:20px;padding:9px 16px}
}

/* ═══════════════════════════════════════════════════════════
   LUXURY PASS — header v3 (spacious), mega menu, rich details
   ═══════════════════════════════════════════════════════════ */
/* ── header v3 ── */
.utilbar-in{height:42px}
.ub-rates{gap:0}
.ub-rates span{padding:0 20px;position:relative}
.ub-rates span + span::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:12px;background:rgba(212,175,90,.32)}
.ub-left{gap:22px}
.ub-right{gap:22px}
.header-in{height:98px;gap:40px;transition:height .35s var(--ease)}
.header.scrolled .header-in{height:74px}
.brand{padding:7px 18px}
.brand-logo{height:48px;transition:height .35s var(--ease)}
.header.scrolled .brand-logo{height:36px}
.nav-scroll{gap:8px}
.nav a{font-size:11.5px;letter-spacing:.17em;padding:12px 16px}
.nav a::after{height:1px;bottom:7px}
.header-actions{gap:8px}
.icon-btn{width:46px;height:46px}
.icon-btn:hover{box-shadow:inset 0 0 0 1.5px var(--gold-soft)}
.header{border-bottom:none}
.header::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft) 18%,var(--gold-soft) 82%,transparent);pointer-events:none}

/* ── mega menu ── */
.mega{position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%,10px);width:min(1060px,94vw);background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh-3);padding:26px;opacity:0;visibility:hidden;transition:.32s var(--ease);z-index:80}
.mega::before{content:'';position:absolute;top:-16px;left:0;right:0;height:16px}
.nav-drop:hover .mega,.nav-drop.open .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega-in{display:grid;grid-template-columns:1fr 300px;gap:26px}
.mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mega-tile{display:flex;align-items:center;gap:13px;padding:11px;border-radius:14px;transition:.25s;border:1px solid transparent}
.mega-tile:hover{background:var(--gold-faint);border-color:var(--gold-soft)}
.mt-img{width:56px;height:56px;border-radius:12px;overflow:hidden;flex:none;box-shadow:var(--sh-1)}
.mt-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.mega-tile:hover .mt-img img{transform:scale(1.12)}
.mt-tx b{display:block;font-family:var(--ff-disp);font-size:17.5px;font-weight:600;color:var(--maroon-deep)}
.mt-tx small{font-size:11.5px;color:var(--ink-3)}
.mega-rail{border-left:1px solid var(--line);padding-left:26px;display:flex;flex-direction:column;gap:14px}
.mega-feat{position:relative;border-radius:16px;overflow:hidden;min-height:150px;display:flex;align-items:flex-end}
.mega-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mega-feat::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,6,10,.88),rgba(30,6,10,.25))}
.mega-feat div{position:relative;z-index:2;padding:16px;color:#fdf3dd}
.mega-k{display:block;font-family:var(--ff-label);font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2);margin-bottom:5px}
.mega-feat b{font-size:15.5px;line-height:1.3;display:block;margin-bottom:5px}
.mega-feat small{font-size:11.5px;color:rgba(253,243,221,.85)}
.mega-cta{display:flex;justify-content:space-between;align-items:center;font-family:var(--ff-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--maroon);border:1px solid var(--line);border-radius:30px;padding:13px 18px;transition:.25s}
.mega-cta:hover{border-color:var(--gold);background:var(--gold-faint)}
.mega-cta.alt{color:var(--ink-2)}
.mega-cta span{color:var(--gold);transition:.25s}
.mega-cta:hover span{transform:translateX(4px)}

/* ── luxury global pass ── */
body{background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Cpath d='M26 22l4 4-4 4-4-4z' fill='%23b98a2f' fill-opacity='.035'/%3E%3C/svg%3E")}
.sec{padding:96px 0}
.sec-head{margin-bottom:58px}
.sec-head .label{display:inline-flex;align-items:center;gap:14px}
.sec-head .label::before,.sec-head .label::after{content:'';width:36px;height:1px}
.sec-head .label::before{background:linear-gradient(90deg,transparent,var(--gold))}
.sec-head .label::after{background:linear-gradient(90deg,var(--gold),transparent)}
.sec-head h2{letter-spacing:.005em}
.btn{letter-spacing:.18em}
.p-card{border-radius:18px}
.pc-body{padding:19px 21px 23px}
.pc-name{font-size:21.5px}
.p-card:hover{border-color:var(--gold-soft);box-shadow:0 18px 44px rgba(61,14,21,.14)}
.page-hero{padding:88px 0 78px;position:relative}
.page-hero::before{content:'';position:absolute;left:26px;top:24px;width:54px;height:54px;border-left:1px solid rgba(212,175,90,.5);border-top:1px solid rgba(212,175,90,.5);border-top-left-radius:6px;pointer-events:none}
.page-hero::after{content:'';position:absolute;right:26px;bottom:22px;width:54px;height:54px;border-right:1px solid rgba(212,175,90,.5);border-bottom:1px solid rgba(212,175,90,.5);border-bottom-right-radius:6px;pointer-events:none}
.rate-strip-in .rscell{padding:32px 18px}
.rscell b{font-size:34px}
.pd-pricebox{border-top:3px solid var(--gold)}
.summary{border-top:3px solid var(--gold)}
.c-body h3{letter-spacing:.004em}
.c-body{max-width:700px;padding:60px max(7vw,48px)}
.c-slide{min-height:540px}
.testi{padding:36px 32px}
.trust{padding:32px 22px}
.cat-card{border-radius:20px}
.banner{border-radius:20px}
.chart-wrap,.adm-card,.mc-stamp,.catlog{border-radius:18px}
.footer{padding-top:84px}
.footer .divider-orn{margin:42px 0 38px}
.foot-grid{gap:48px}
.hero-stats{gap:46px}
.hstat b{font-size:34px}
.pill{letter-spacing:.1em}
.tagx{letter-spacing:.14em}
.hero-cue{bottom:24px}

/* ── responsive guards for the luxury pass ── */
@media(max-width:1080px){
  .mega{width:min(760px,94vw);padding:20px}
  .mega-grid{grid-template-columns:repeat(2,1fr)}
  .mega-in{grid-template-columns:1fr}
  .mega-rail{border-left:none;padding-left:0;border-top:1px solid var(--line);padding-top:18px}
  .header-in{height:86px;gap:18px}
  .nav-scroll{gap:2px}
  .nav a{padding:10px 9px;font-size:10.5px}
}
@media(max-width:680px){
  .mega{position:static;width:100%;transform:none;opacity:1;visibility:visible;display:none;box-shadow:none;border:none;border-radius:0;padding:6px 4px}
  .nav-drop:hover .mega,.nav-drop.open .mega{display:block}
  .mega-in{gap:4px}
  .mega-grid{grid-template-columns:1fr;gap:0}
  .mega-tile{padding:9px 6px}
  .mt-img{width:46px;height:46px}
  .mega-rail{display:none}
  .header-in{height:78px;gap:10px}
  .sec{padding:64px 0}
  .sec-head{margin-bottom:38px}
  .c-slide{min-height:430px}
  .c-body{padding:30px 22px}
  .rate-strip-in .rscell{padding:20px 12px}
  .rscell b{font-size:24px}
  .page-hero{padding:56px 0 50px}
  .page-hero::before,.page-hero::after{display:none}
  .footer{padding-top:56px}
  .foot-grid{gap:30px}
}

/* mobile utility bar — compact after luxury pass */
@media(max-width:680px){
  .ub-rates{font-size:11px}
  .ub-rates span{padding:0 10px}
  .ub-rates span + span::before{height:10px}
  .ub-rates i.up,.ub-rates i.down{display:none}
  .ub-live{gap:5px;letter-spacing:.14em}
}

/* ═══════════════════════════════════════════════════════════
   LUXURY × 3D PASS — deeper palette, real depth, the Atelier
   ═══════════════════════════════════════════════════════════ */
:root{--maroon-deep:#1d0509;--maroon-2:#4d131d}

/* ── grand typography ── */
.hero h1{font-size:clamp(46px,6.2vw,84px);letter-spacing:-.01em}
.hero-sub{font-size:18px}
.sec-head h2{font-size:clamp(32px,4.4vw,52px)}
.c-body h3{font-size:clamp(32px,4.6vw,58px)}

/* ── 3D pressable buttons ── */
.btn-primary,.btn-gold{box-shadow:inset 0 1px 0 rgba(255,244,214,.35),0 3px 0 #450d16,0 14px 30px rgba(61,14,21,.38)}
.btn-gold{box-shadow:inset 0 1px 0 rgba(255,244,214,.4),0 3px 0 #6e5013,0 14px 30px rgba(110,84,20,.35)}
.btn-primary:active,.btn-gold:active{transform:translateY(3px);box-shadow:inset 0 1px 0 rgba(255,244,214,.3),0 0 0 #450d16,0 6px 14px rgba(61,14,21,.3)}

/* ── card depth (children pop in 3D while tilting) ── */
.p-card .pc-imgwrap,.p-card .pc-body,.p-card .pc-tags,.p-card .pc-wish{transition:transform .45s var(--ease)}
.p-card:hover .pc-imgwrap{transform:translateZ(26px)}
.p-card:hover .pc-body{transform:translateZ(10px)}
.p-card:hover .pc-tags{transform:translateZ(42px)}
.p-card:hover .pc-wish{transform:translateZ(40px)}
.pc-imgwrap::after{content:'';position:absolute;inset:9px;border:1px solid rgba(212,175,90,.34);border-radius:11px;pointer-events:none;z-index:1}
.pc-imgwrap img{border-radius:0}

/* ── perspective scroll reveals ── */
.rv{transform:perspective(1000px) translateY(36px) rotateX(7deg);transform-origin:50% 100%}
.rv.in{transform:none}

/* ── THE ATELIER ── */
.atelier{background:radial-gradient(1000px 620px at 72% 20%,#3a0d16,var(--maroon-deep) 62%);padding:110px 0;position:relative;overflow:hidden}
.atelier::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M60 50l10 10-10 10-10-10z' fill='%23d4af5a' fill-opacity='.05'/%3E%3C/svg%3E");pointer-events:none}
.atl-in{display:grid;grid-template-columns:.92fr 1.08fr;gap:56px;align-items:center;position:relative;z-index:2}
.atl-copy .label{color:var(--gold-2);display:inline-flex;align-items:center;gap:14px}
.atl-copy .label::before,.atl-copy .label::after{content:'';width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.atl-copy .label::after{background:linear-gradient(90deg,var(--gold),transparent)}
.atl-copy h2{color:#fdf3dd;font-size:clamp(34px,4.2vw,56px);margin:14px 0 16px}
.atl-sub{color:rgba(246,232,200,.78);font-size:16.5px;font-weight:300;max-width:480px}
.atl-points{margin-top:26px;display:grid;gap:14px}
.atl-points div{display:flex;gap:14px;align-items:center;color:rgba(246,232,200,.85);font-size:14.5px}
.atl-points b{width:40px;height:40px;flex:none;border-radius:12px;border:1px solid rgba(212,175,90,.4);color:var(--gold-2);display:flex;align-items:center;justify-content:center;background:rgba(212,175,90,.07)}
.btn-outline-light{border:1px solid rgba(212,175,90,.5);color:#f3dfae;background:transparent}
.btn-outline-light:hover{background:rgba(212,175,90,.12);border-color:var(--gold-2)}
.atl-stage{position:relative;border-radius:24px;background:radial-gradient(120% 120% at 50% 0%,rgba(212,175,90,.09),rgba(29,5,9,.4) 60%);border:1px solid rgba(212,175,90,.28);height:480px;overflow:hidden;cursor:grab;box-shadow:0 40px 90px rgba(0,0,0,.5),inset 0 1px 0 rgba(246,232,200,.12)}
.atl-stage:active{cursor:grabbing}
#atlCanvas{width:100%;height:100%;display:block;touch-action:pan-y}
.atl-corner{position:absolute;width:34px;height:34px;pointer-events:none;z-index:3}
.atl-corner.c1{top:14px;left:14px;border-top:1.5px solid var(--gold-2);border-left:1.5px solid var(--gold-2);border-top-left-radius:8px}
.atl-corner.c2{top:14px;right:14px;border-top:1.5px solid var(--gold-2);border-right:1.5px solid var(--gold-2);border-top-right-radius:8px}
.atl-corner.c3{bottom:14px;left:14px;border-bottom:1.5px solid var(--gold-2);border-left:1.5px solid var(--gold-2);border-bottom-left-radius:8px}
.atl-corner.c4{bottom:14px;right:14px;border-bottom:1.5px solid var(--gold-2);border-right:1.5px solid var(--gold-2);border-bottom-right-radius:8px}
.atl-hint{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);font-family:var(--ff-label);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(243,223,174,.6);z-index:3}
.atl-chips{display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.atl-chips button{font-family:var(--ff-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:11px 20px;border-radius:30px;border:1px solid rgba(212,175,90,.35);color:rgba(243,223,174,.75);background:rgba(212,175,90,.05);transition:.25s}
.atl-chips button:hover{color:#fff;border-color:var(--gold-2)}
.atl-chips button.on{background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff8ea;border-color:var(--gold);box-shadow:0 8px 22px rgba(185,138,47,.35)}

/* ── deepen hero / footer / rate strip ── */
.hero{background:radial-gradient(1300px 800px at 74% 26%,#54141f 0%,#2a070c 52%,#170308 100%)}
.hero-3d-hint{font-size:10px;letter-spacing:.3em}
.footer{background:radial-gradient(1200px 560px at 50% -12%,#48101b,var(--maroon-deep) 62%)}
.rate-strip{background:linear-gradient(180deg,#170308,#240710)}

/* ── framed media (gallery / pd) ── */
.pd-main::after{content:'';position:absolute;inset:12px;border:1px solid rgba(212,175,90,.4);border-radius:14px;pointer-events:none;z-index:2}
@media(max-width:980px){
  .atl-in{grid-template-columns:1fr;gap:34px}
  .atl-stage{height:360px}
  .atelier{padding:72px 0}
  .atl-sub{max-width:100%}
}
@media(max-width:680px){
  .atl-stage{height:300px}
  .rv{transform:translateY(26px)}
  .p-card:hover .pc-imgwrap{transform:none}
  .p-card:hover .pc-body,.p-card:hover .pc-tags,.p-card:hover .pc-wish{transform:none}
}

/* ═══════════════════════════════════════════════════════════
   v3 — layered hero stage · image category slider · branded banners
   ═══════════════════════════════════════════════════════════ */
/* ── hero stage: layered 3D composition (no models, pure depth) ── */
.hero-stage{position:relative;height:520px;perspective:1200px;transform-style:preserve-3d}
#heroDust{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hs-card{position:absolute;border-radius:18px;overflow:hidden;box-shadow:0 44px 90px rgba(0,0,0,.55),0 10px 28px rgba(0,0,0,.4);transform:translate3d(var(--px,0),var(--py,0),0) rotateX(2deg);transition:transform .5s var(--ease);will-change:transform}
.hs-card img{width:100%;height:100%;object-fit:cover;display:block}
.hs-frame{position:absolute;inset:10px;border:1px solid rgba(212,175,90,.55);border-radius:12px;pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.hs-main{width:66%;height:74%;left:2%;top:6%;transform:translate3d(var(--px,0),var(--py,0),0) rotateY(6deg) rotateX(2deg);animation:hsFloat 7s ease-in-out infinite}
.hs-a{width:34%;height:30%;right:1%;top:12%;transform:translate3d(var(--px,0),var(--py,0),0) rotateY(-8deg) rotateX(3deg);animation:hsFloat 8.5s ease-in-out -2s infinite}
.hs-b{width:30%;height:26%;right:6%;bottom:7%;transform:translate3d(var(--px,0),var(--py,0),0) rotateY(-6deg) rotateX(2deg);animation:hsFloat 9.5s ease-in-out -4s infinite}
.hs-main:hover,.hs-a:hover,.hs-b:hover{box-shadow:0 54px 110px rgba(0,0,0,.6),0 0 0 1.5px var(--gold-soft)}
.hs-tag{position:absolute;left:18px;bottom:16px;background:rgba(29,5,9,.72);backdrop-filter:blur(6px);border:1px solid rgba(212,175,90,.5);color:#f6e8c8;font-family:var(--ff-label);font-size:10px;letter-spacing:.24em;text-transform:uppercase;padding:9px 16px;border-radius:24px}
.hs-badge{position:absolute;left:-2%;bottom:4%;display:flex;align-items:center;gap:11px;background:rgba(250,246,239,.96);border-radius:16px;padding:10px 16px 10px 11px;box-shadow:0 18px 44px rgba(0,0,0,.45);transform:translate3d(var(--px,0),var(--py,0),0);animation:hsFloat 8s ease-in-out -3s infinite}
.hs-badge img{height:34px;background:var(--white);border-radius:8px;padding:3px 8px;border:1px solid var(--line)}
.hs-badge small{font-family:var(--ff-label);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--maroon);line-height:1.7}
@keyframes hsFloat{0%,100%{margin-top:0}50%{margin-top:-13px}}
.hero-trust{display:flex;gap:10px 24px;flex-wrap:wrap;margin:0 0 26px;font-family:var(--ff-label);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(246,232,200,.7)}
@media(max-width:1080px){.hero-stage{height:440px}}
@media(max-width:680px){.hero-stage{height:340px}.hs-main{width:78%;height:70%}.hs-a{width:44%;height:24%}.hs-b{width:38%;height:20%}.hs-badge{left:0;bottom:0;padding:8px 12px 8px 9px}.hs-badge img{height:26px}}

/* ── category slider v2 — image cards (Tanishq-inspired, richer) ── */
.catbar-outer{padding:26px 0;background:var(--cream);border-bottom:1px solid var(--line)}
.cb-wrap{position:relative;display:flex;align-items:center;gap:8px}
.catbar2{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 44px 14px;scrollbar-width:none;flex:1}
.catbar2::-webkit-scrollbar{display:none}
.cb-item{display:flex;flex-direction:column;align-items:center;gap:11px;min-width:96px;scroll-snap-align:center;transition:.25s}
.cb-img{position:relative;width:84px;height:84px;border-radius:50%;overflow:hidden;box-shadow:0 10px 26px rgba(61,14,21,.18),0 0 0 1px var(--line);transition:.35s var(--ease)}
.cb-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.cb-ring{position:absolute;inset:4px;border-radius:50%;border:1.5px solid rgba(212,175,90,0);transition:.35s}
.cb-item b{font-family:var(--ff-label);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;transition:.25s}
.cb-item:hover .cb-img{transform:translateY(-6px) scale(1.06);box-shadow:0 18px 38px rgba(61,14,21,.26),0 0 0 1px var(--gold-soft)}
.cb-item:hover .cb-ring{border-color:rgba(212,175,90,.85);inset:3px}
.cb-item:hover img{transform:scale(1.14)}
.cb-item:hover b{color:var(--maroon)}
.cb-arrow{width:38px;height:38px;flex:none;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--maroon);font-size:20px;display:flex;align-items:center;justify-content:center;transition:.25s;box-shadow:var(--sh-1);z-index:2}
.cb-arrow:hover{background:var(--maroon);color:#f9ecd2;border-color:var(--maroon)}
.cb-arrow[disabled]{opacity:.3;pointer-events:none}
@media(max-width:680px){.catbar2{padding:6px 8px 12px;gap:18px}.cb-img{width:70px;height:70px}.cb-arrow{display:none}}

/* ── branded page banners ── */
.page-hero{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cpath d='M45 38l7 7-7 7-7-7z' fill='%23d4af5a' fill-opacity='.06'/%3E%3C/svg%3E"),radial-gradient(900px 460px at 82% -10%,#5c1822,transparent 60%),linear-gradient(140deg,var(--maroon-deep),var(--maroon-2))}
.ph-mark{position:absolute;right:5%;top:50%;transform:translateY(-50%) rotate(-5deg);height:62%;max-height:210px;opacity:.11;pointer-events:none;filter:saturate(1.3) brightness(1.5)}
.ph-trust{display:flex;gap:10px 26px;flex-wrap:wrap;margin-top:26px;font-family:var(--ff-label);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(246,232,200,.72);position:relative;z-index:2}
.ph-trust span{display:inline-flex;align-items:center;gap:7px}
.ph-trust span::before{content:'';width:5px;height:5px;transform:rotate(45deg);background:var(--gold-2);display:inline-block}
.page-hero .crumbs{position:relative;z-index:2}
.page-hero h1,.page-hero p{position:relative;z-index:2}

/* ── richer depth pass ── */
.p-card{box-shadow:0 2px 8px rgba(61,14,21,.06),0 18px 40px -18px rgba(61,14,21,.14)}
.p-card:hover{box-shadow:0 6px 14px rgba(61,14,21,.08),0 34px 64px -20px rgba(61,14,21,.3)}
.mc-table-wrap,.chart-wrap,.adm-card{box-shadow:0 2px 8px rgba(61,14,21,.05),0 22px 48px -22px rgba(61,14,21,.16)}
.utilbar{background:rgba(29,5,9,.92);backdrop-filter:blur(8px)}

/* ═══════════════════════════════════════════════════════════
   v4 — attention jeweller CTA · KYC · Jaipur rates · 3D buttons
   ═══════════════════════════════════════════════════════════ */
/* ── attention-seeking "For Jewellers" buttons ── */
.btn-jwl{display:inline-flex;align-items:center;gap:8px;font-family:var(--ff-label);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;padding:13px 24px !important;border-radius:34px !important;background:linear-gradient(135deg,#e8c877,#b98a2f 55%,#8f6516);color:#fffaf0 !important;box-shadow:0 1px 0 rgba(255,250,225,.5) inset,0 3px 0 #6e5013,0 12px 28px rgba(158,116,28,.42);animation:jwlGlow 2.6s ease-in-out infinite;position:relative;transition:transform .25s var(--ease);border:1.5px solid rgba(255,240,200,.55)}
.btn-jwl:hover{transform:translateY(-2px) scale(1.04);color:#fff !important}
.btn-jwl::after{content:'';position:absolute;top:2px;left:14px;right:14px;height:45%;border-radius:20px 20px 40px 40px;background:linear-gradient(rgba(255,255,255,.32),rgba(255,255,255,0));pointer-events:none}
@keyframes jwlGlow{0%,100%{box-shadow:0 1px 0 rgba(255,250,225,.5) inset,0 3px 0 #6e5013,0 12px 28px rgba(158,116,28,.35)}50%{box-shadow:0 1px 0 rgba(255,250,225,.5) inset,0 3px 0 #6e5013,0 16px 42px rgba(212,175,90,.65)}}
.ub-jwl{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--gold),#8f6516);color:#fff8ea !important;border-radius:20px;padding:5px 14px;font-weight:600;letter-spacing:.08em;box-shadow:0 3px 12px rgba(158,116,28,.5)}
.ub-jwl:hover{color:#fff !important;transform:translateY(-1px)}

/* ── 3D buttons: every kind gets depth + press ── */
.btn-outline,.btn-ghost,.btn-light{box-shadow:0 2px 0 rgba(61,14,21,.12),0 8px 18px rgba(61,14,21,.10);transition:transform .22s var(--ease),box-shadow .22s var(--ease),background-color .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease),filter .22s var(--ease)}
.btn-outline:hover,.btn-ghost:hover,.btn-light:hover{transform:translateY(-2px)}
.btn-outline:active,.btn-ghost:active,.btn-light:active{transform:translateY(2px);box-shadow:0 0 0 rgba(61,14,21,.12),0 3px 8px rgba(61,14,21,.12)}
.size-pill,.chip,.cb-arrow,.pay-opt{transition:transform .18s var(--ease),box-shadow .2s}
.size-pill:active,.cb-arrow:active{transform:scale(.94)}

/* ── KYC form ── */
.kyc-badge{display:inline-block;vertical-align:middle;font-family:var(--ff-body);font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:var(--gold-faint);border:1px solid var(--gold-soft);color:#7a5c17;border-radius:16px;padding:5px 12px;margin-left:8px;font-weight:600}
.kyc-form .kyc-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kyc-form .kyc-inline input{flex:1;min-width:170px}
.kyc-status{font-size:12.5px;font-weight:600;white-space:nowrap}
.kyc-status.ok{color:var(--ok)}
.kyc-status.bad{color:var(--bad)}
.kyc-status.wait{color:var(--warn)}
.kyc-note{grid-column:1/-1;font-size:11.5px;color:var(--ink-3);letter-spacing:.04em;text-align:center;margin-top:2px}
#kycSubmit:disabled{opacity:.5;cursor:not-allowed}

/* ── Jaipur rates hero ── */
.jaipur-hero{display:grid;grid-template-columns:1.15fr .85fr;background:radial-gradient(600px 300px at 20% 0,#5c1822,var(--maroon-deep) 70%);border-radius:22px;color:#f6e8c8;padding:38px;gap:34px;box-shadow:0 30px 70px rgba(61,14,21,.35),inset 0 1px 0 rgba(246,232,200,.14);position:relative;overflow:hidden}
.jaipur-hero::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110' height='110' viewBox='0 0 110 110'%3E%3Cpath d='M55 48l7 7-7 7-7-7z' fill='%23d4af5a' fill-opacity='.06'/%3E%3C/svg%3E");pointer-events:none}
.jh-badge{display:inline-block;font-family:var(--ff-label);font-size:10px;letter-spacing:.3em;color:var(--gold-2);border:1px solid rgba(212,175,90,.5);border-radius:20px;padding:7px 16px;margin-bottom:16px;background:rgba(212,175,90,.08)}
.jh-name{font-family:var(--ff-disp);font-size:22px;color:#fdf3dd}
.jh-name small{font-size:14px;color:rgba(246,232,200,.6)}
.jh-val{font-family:var(--ff-disp);font-size:clamp(44px,6vw,66px);font-weight:700;color:#ffe9bd;line-height:1.05;text-shadow:0 6px 30px rgba(212,175,90,.3)}
.jh-val small{font-size:18px;font-weight:400;color:rgba(246,232,200,.7)}
.jh-sub{font-size:13px;color:rgba(246,232,200,.85);margin-top:8px}
.jh-side{border-left:1px solid rgba(212,175,90,.3);padding-left:32px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.jh-row{display:flex;justify-content:space-between;font-size:13.5px;color:rgba(246,232,200,.85);border-bottom:1px dashed rgba(212,175,90,.22);padding-bottom:10px}
.jh-row b{color:#ffe9bd}
.jh-note{font-size:12px;color:rgba(246,232,200,.6);font-style:italic;margin-top:6px}
@media(max-width:860px){.jaipur-hero{grid-template-columns:1fr;padding:26px}.jh-side{border-left:none;padding-left:0;border-top:1px solid rgba(212,175,90,.3);padding-top:20px}}

/* ── auth modes (password | OTP) ── */
.auth-modes{display:flex;gap:8px;margin:4px 0 14px}
.auth-modes .am{flex:1;font-family:var(--ff-label);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:11px;border-radius:12px;border:1px solid var(--line);color:var(--ink-2);background:var(--white);transition:.25s}
.auth-modes .am.on{background:var(--maroon);color:#f9ecd2;border-color:var(--maroon)}

/* ═══════════════════════════════════════════════════════════
   v5 — graphic poster frames + maison footer
   ═══════════════════════════════════════════════════════════ */
/* ── poster: ornate frame + corner diamonds + shine sweep ── */
.c-slide::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:3;
  background:linear-gradient(115deg,transparent 30%,rgba(255,238,190,.14) 45%,rgba(255,238,190,.05) 52%,transparent 60%);
  background-size:260% 100%;background-position:130% 0;animation:posterShine 7s var(--ease) infinite}
@keyframes posterShine{0%,55%{background-position:130% 0}85%,100%{background-position:-60% 0}}
.c-frame{position:absolute;inset:18px;z-index:4;pointer-events:none;
  border:1px solid rgba(212,175,90,.55);outline:1px solid rgba(212,175,90,.25);outline-offset:5px;border-radius:14px;
  box-shadow:inset 0 0 40px rgba(0,0,0,.35)}
.cf-c{position:absolute;width:12px;height:12px;background:linear-gradient(135deg,var(--gold-2),#8f6516);
  transform:rotate(45deg);border-radius:2px;box-shadow:0 0 12px rgba(212,175,90,.6)}
.cf-c.c1{top:-7px;left:-7px}.cf-c.c2{top:-7px;right:-7px}.cf-c.c3{bottom:-7px;left:-7px}.cf-c.c4{bottom:-7px;right:-7px}
.c-garland{position:absolute;top:0;left:0;right:0;height:56px;z-index:4;pointer-events:none;opacity:.95;
  background:repeating-linear-gradient(90deg,transparent 0 46px,rgba(212,175,90,.0) 0),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='56' viewBox='0 0 46 56'%3E%3Cpath d='M0 0q23 26 46 0' stroke='%23d4af5a' stroke-width='1.6' fill='none' opacity='.8'/%3E%3Ccircle cx='23' cy='30' r='5.5' fill='%23d4af5a' opacity='.9'/%3E%3Ccircle cx='23' cy='30' r='2' fill='%236e1e2a'/%3E%3Cpath d='M20.5 38l2.5 4 2.5-4z' fill='%23b98a2f' opacity='.85'/%3E%3C/svg%3E") repeat-x;
  mask-image:linear-gradient(180deg,#000 70%,transparent)}
.offer-seal{display:inline-flex;align-items:center;gap:14px;margin:4px 0 12px;position:relative}
.offer-seal b{display:flex;flex-direction:column;align-items:center;justify-content:center;width:86px;height:86px;border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#f3dfae,var(--gold) 55%,#7a5c17);color:#3d0e15;font-family:var(--ff-disp);font-size:21px;font-weight:700;line-height:1;
  box-shadow:0 0 0 4px rgba(212,175,90,.28),0 0 0 8px rgba(212,175,90,.12),0 14px 30px rgba(0,0,0,.5),inset 0 2px 6px rgba(255,244,214,.6);
  transform:rotate(-7deg)}
.offer-seal b small{font-size:11px;letter-spacing:.3em;margin-top:3px}
.offer-seal span{font-family:var(--ff-label);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#fdf3dd;
  border-top:1px solid rgba(212,175,90,.5);border-bottom:1px solid rgba(212,175,90,.5);padding:9px 2px;max-width:150px;line-height:1.6}
.offer-seal.alt b{background:radial-gradient(circle at 32% 28%,#fdf3dd,#e8c877 55%,#9c7222)}
@media(max-width:680px){.offer-seal b{width:68px;height:68px;font-size:16px}.offer-seal span{max-width:120px;font-size:9.5px}.c-frame{inset:10px;outline-offset:3px}.c-garland{height:40px;background-size:auto 40px}}

/* ── footer: maison edition ── */
.footer{background:linear-gradient(180deg,#2a070c,#1d0509 45%,#160307);color:#e9d5a8;padding:0 0 26px;position:relative;overflow:hidden}
.foot-glow{position:absolute;top:-220px;left:50%;transform:translateX(-50%);width:900px;height:440px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(212,175,90,.16),transparent 65%);pointer-events:none}
.foot-watermark{position:absolute;right:-3%;bottom:-8%;height:105%;opacity:.05;pointer-events:none;filter:brightness(2.4) saturate(.4)}
.footer::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cpath d='M36 30l6 6-6 6-6-6z' fill='%23d4af5a' fill-opacity='.04'/%3E%3Cpath d='M0 36h8M64 36h8M36 0v8M36 64v8' stroke='%23d4af5a' stroke-opacity='.05'/%3E%3C/svg%3E")}
.foot-hero{display:flex;align-items:center;gap:26px;padding:64px 0 40px;position:relative;z-index:2}
.fh-line{font-family:var(--ff-disp);font-size:clamp(24px,3.4vw,44px);font-weight:500;color:#fdf3dd;text-align:center;white-space:nowrap;flex:1;overflow:hidden;text-overflow:ellipsis}
.fh-line em{font-style:italic;color:transparent;background:linear-gradient(100deg,#e8c877,#fff3d0 40%,#d4af5a 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:shimText 6s linear infinite}
.fh-orn{display:flex;align-items:center;gap:10px;flex:none}
.fh-orn i{display:block;width:clamp(30px,7vw,120px);height:1px;background:linear-gradient(90deg,transparent,var(--gold-2))}
.fh-orn.right i{background:linear-gradient(90deg,var(--gold-2),transparent)}
.fh-orn b{color:var(--gold-2);font-size:15px}
.foot-grid-lux{display:grid;grid-template-columns:1.05fr 1.35fr .9fr;gap:44px;position:relative;z-index:2;padding-bottom:36px}
.fl-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.foot-logo{height:52px;background:var(--cream);border-radius:12px;padding:8px 18px;margin-bottom:16px}
.foot-tag{font-size:13.5px;color:rgba(233,213,168,.75);line-height:1.7;max-width:300px}
.foot-seals{display:flex;gap:10px;margin-top:18px}
.seal{display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;
  border:1.5px dashed rgba(212,175,90,.55);background:rgba(212,175,90,.06);color:#e9d5a8;text-align:center;transform:rotate(-4deg)}
.seal:nth-child(2){transform:rotate(3deg)}
.seal b{font-family:var(--ff-label);font-size:12px;letter-spacing:.06em;color:#ffe9bd}
.seal small{font-size:7.5px;letter-spacing:.04em;color:rgba(233,213,168,.65);margin-top:2px;max-width:56px;line-height:1.3}
.footer .foot-col h4{font-family:var(--ff-label);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-2);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.footer .foot-col h4::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(212,175,90,.5),transparent)}
.footer .foot-col a{display:block;color:rgba(233,213,168,.82);font-size:13.5px;padding:6px 0 6px 14px;position:relative;transition:.25s}
.footer .foot-col a::before{content:'✦';position:absolute;left:0;top:6px;font-size:8px;color:var(--gold);opacity:0;transition:.25s}
.footer .foot-col a:hover{color:#fff;transform:translateX(5px)}
.footer .foot-col a:hover::before{opacity:1;left:2px}
.footer .foot-addr{font-size:13px;color:rgba(233,213,168,.7);line-height:1.75;margin-bottom:12px}
.footer .foot-hrs{font-size:12px;color:rgba(233,213,168,.8);margin-top:12px;letter-spacing:.05em}
.fl-news{display:flex;align-items:flex-start}
.fn-card{background:rgba(212,175,90,.07);border:1px solid rgba(212,175,90,.3);border-radius:20px;padding:26px;width:100%;position:relative;overflow:hidden;backdrop-filter:blur(6px)}
.fn-card::after{content:'✦';position:absolute;right:-14px;bottom:-26px;font-size:110px;color:rgba(212,175,90,.08)}
.fn-card .label{color:var(--gold-2)}
.fn-card h4{font-family:var(--ff-disp);font-size:21px;color:#fdf3dd;margin:10px 0 16px;line-height:1.35;font-weight:500}
.fn-card .nl-form{border-radius:30px;overflow:hidden;border:1px solid rgba(212,175,90,.5);background:rgba(29,5,9,.5)}
.fn-card .nl-form input{background:transparent;border:none;outline:none;padding:14px 20px;color:#fdf3dd;font-size:14px;width:70%}
.fn-card .nl-form input::placeholder{color:rgba(233,213,168,.45)}
.fn-card .nl-form button{float:right;background:linear-gradient(135deg,var(--gold),#8f6516);color:#fff8ea;padding:13px 26px;font-family:var(--ff-label);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;border-radius:30px;margin:3px}
.fn-note{font-size:11.5px;color:rgba(233,213,168,.78);margin-top:14px}
.footer .foot-chips{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;border-top:1px solid rgba(212,175,90,.18);padding-top:26px}
.footer .pay-strip{margin-top:18px}
.footer .foot-legal{margin-top:10px;padding-top:16px}
@media(max-width:1080px){.foot-grid-lux{grid-template-columns:1fr 1fr}.fl-news{grid-column:1/-1}}
@media(max-width:680px){
  .foot-grid-lux{grid-template-columns:1fr;gap:30px}
  .fl-cols{grid-template-columns:1fr 1fr}
  .foot-hero{padding:44px 0 28px}
  .fh-line{white-space:normal;font-size:22px}
  .fh-orn i{width:26px}
  .foot-watermark{height:60%;right:-12%}
}

/* ═══════════════════════════════════════════════════════════
   v6 — footer: palatial couture edition (full replacement)
   ═══════════════════════════════════════════════════════════ */
.footer{background:linear-gradient(180deg,#240609 0%,#1a0407 40%,#120306 100%);color:#e9d5a8;padding:0 0 24px;position:relative;overflow:hidden}
.footer::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84' viewBox='0 0 84 84'%3E%3Cpath d='M42 36l6 6-6 6-6-6z' fill='%23d4af5a' fill-opacity='.035'/%3E%3C/svg%3E")}
/* cornice — architectural layered top edge */
.f-cornice{position:relative;display:flex;align-items:center;gap:18px;padding:26px min(6vw,60px) 0;max-width:1400px;margin:0 auto}
.f-cornice::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent,var(--gold) 12%,var(--gold-2) 50%,var(--gold) 88%,transparent)}
.f-cornice i{flex:1;height:0;border-top:1px solid rgba(212,175,90,.45);position:relative}
.f-cornice i::after{content:'';position:absolute;top:-3px;width:5px;height:5px;background:var(--gold-2);transform:rotate(45deg)}
.f-cornice i:first-child::after{right:0}
.f-cornice i:last-child::after{left:0}
.f-cornice b{color:var(--gold-2);font-size:17px;text-shadow:0 0 14px rgba(212,175,90,.8)}
/* twinkling gold bokeh */
.f-sparks{position:absolute;inset:0 0 40%;pointer-events:none}
.f-sparks span{position:absolute;width:4px;height:4px;border-radius:50%;
  background:radial-gradient(circle,#ffe9bd,rgba(212,175,90,0));animation:fTw 5s ease-in-out infinite}
.f-sparks span:nth-child(1){left:12%;top:30%;animation-delay:0s}
.f-sparks span:nth-child(2){left:26%;top:62%;animation-delay:1.1s;width:3px}
.f-sparks span:nth-child(3){left:44%;top:22%;animation-delay:2.3s}
.f-sparks span:nth-child(4){left:63%;top:55%;animation-delay:.6s;width:5px}
.f-sparks span:nth-child(5){left:78%;top:28%;animation-delay:3.1s;width:3px}
.f-sparks span:nth-child(6){left:90%;top:60%;animation-delay:1.8s}
.f-sparks span:nth-child(7){left:35%;top:80%;animation-delay:4s;width:3px}
@keyframes fTw{0%,100%{opacity:0;transform:scale(.4)}50%{opacity:.9;transform:scale(1.15)}}
/* crest — emblem + motto + museum stats */
.f-crest{text-align:center;padding:44px 0 42px;position:relative;z-index:2}
.f-emblem{position:relative;width:118px;height:118px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center}
.f-emblem img{height:58px;background:var(--cream);border-radius:12px;padding:8px 14px;position:relative;z-index:2;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.f-emblem .ring-a{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(212,175,90,.65);animation:spinSlow 26s linear infinite}
.f-emblem .ring-a::before{content:'';position:absolute;top:-4px;left:50%;width:7px;height:7px;margin-left:-3.5px;background:var(--gold-2);border-radius:50%;box-shadow:0 0 10px var(--gold-2)}
.f-emblem .ring-b{position:absolute;inset:9px;border-radius:50%;border:1px dashed rgba(212,175,90,.4);animation:spinSlow 40s linear infinite reverse}
@keyframes spinSlow{to{transform:rotate(360deg)}}
.f-motto{font-family:var(--ff-disp);font-weight:500;font-size:clamp(26px,3.6vw,46px);color:#fdf3dd;letter-spacing:.01em;max-width:820px;margin:0 auto;line-height:1.25}
.f-motto em{font-style:italic;background:linear-gradient(100deg,#e8c877,#fff3d0 45%,#d4af5a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimText 6s linear infinite}
.f-stats{display:flex;justify-content:center;gap:0;margin-top:34px;flex-wrap:wrap}
.f-stats>div{padding:6px 40px;border-left:1px solid rgba(212,175,90,.3);text-align:center}
.f-stats>div:first-child{border-left:none}
.f-stats b{display:block;font-family:var(--ff-disp);font-size:34px;font-weight:600;color:#ffe9bd;text-shadow:0 4px 20px rgba(212,175,90,.25)}
.f-stats span{font-family:var(--ff-label);font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:rgba(233,213,168,.6);display:block;margin-top:5px}
/* body columns */
.f-body{display:grid;grid-template-columns:1fr 1.5fr .95fr;gap:44px;padding:18px 0 8px;position:relative;z-index:2}
.f-brand-tag{font-size:13.5px;color:rgba(233,213,168,.72);line-height:1.8}
.f-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.footer .foot-col h4{font-family:var(--ff-label);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-2);margin-bottom:15px;display:flex;align-items:center;gap:10px}
.footer .foot-col h4::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(212,175,90,.5),transparent)}
.footer .foot-col a{display:block;color:rgba(233,213,168,.8);font-size:13.5px;padding:5.5px 0 5.5px 14px;position:relative;transition:.25s}
.footer .foot-col a::before{content:'✦';position:absolute;left:0;top:6px;font-size:8px;color:var(--gold);opacity:0;transition:.25s}
.footer .foot-col a:hover{color:#fff;transform:translateX(5px)}
.footer .foot-col a:hover::before{opacity:1}
.footer .foot-addr{font-size:13px;color:rgba(233,213,168,.68);line-height:1.75;margin-bottom:11px}
.footer .foot-hrs{font-size:12px;color:rgba(233,213,168,.8);margin-top:11px;letter-spacing:.05em}
.foot-social{display:flex;gap:10px;margin:18px 0 4px}
.foot-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(212,175,90,.35);display:inline-flex;align-items:center;justify-content:center;color:rgba(233,213,168,.8);transition:.3s}
.foot-social a:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-3px);box-shadow:0 8px 20px rgba(158,116,28,.4)}
.foot-social svg{width:17px;height:17px}
.foot-seals{display:flex;gap:10px;margin-top:14px}
.seal{display:flex;flex-direction:column;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;border:1.5px dashed rgba(212,175,90,.55);background:rgba(212,175,90,.06);color:#e9d5a8;text-align:center;transform:rotate(-4deg);transition:.35s}
.seal:hover{transform:rotate(4deg) scale(1.06);border-style:solid;border-color:var(--gold-2);box-shadow:0 0 24px rgba(212,175,90,.3)}
.seal:nth-child(2){transform:rotate(3deg)}.seal:nth-child(2):hover{transform:rotate(-3deg) scale(1.06)}
.seal b{font-family:var(--ff-label);font-size:11.5px;color:#ffe9bd}
.seal small{font-size:7.5px;color:rgba(233,213,168,.65);margin-top:2px;max-width:54px;line-height:1.3}
.fl-news .fn-card{background:rgba(212,175,90,.07);border:1px solid rgba(212,175,90,.3);border-radius:20px;padding:24px;position:relative;overflow:hidden;backdrop-filter:blur(6px)}
.fl-news .fn-card::after{content:'✦';position:absolute;right:-12px;bottom:-26px;font-size:104px;color:rgba(212,175,90,.08)}
.fl-news .label{color:var(--gold-2)}
.fl-news h4{font-family:var(--ff-disp);font-size:20px;color:#fdf3dd;margin:9px 0 14px;line-height:1.4;font-weight:500}
.fl-news .nl-form{border-radius:30px;overflow:hidden;border:1px solid rgba(212,175,90,.5);background:rgba(18,3,6,.55);display:flex}
.fl-news .nl-form input{background:transparent;border:none;outline:none;padding:14px 20px;color:#fdf3dd;font-size:14px;flex:1;min-width:0}
.fl-news .nl-form input::placeholder{color:rgba(233,213,168,.45)}
.fl-news .nl-form button{background:linear-gradient(135deg,var(--gold),#8f6516);color:#fff8ea;padding:12px 24px;font-family:var(--ff-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.fl-news .fn-note{font-size:11.5px;color:rgba(233,213,168,.8);margin-top:13px}
/* ghost wordmark */
.f-wordmark{font-family:var(--ff-disp);font-weight:700;font-size:clamp(72px,17vw,240px);line-height:.78;text-align:center;letter-spacing:.16em;margin:26px 0 8px;
  color:transparent;-webkit-text-stroke:1px rgba(212,175,90,.28);user-select:none;position:relative;z-index:1;
  text-shadow:0 0 60px rgba(212,175,90,.08)}
.f-wordmark::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(212,175,90,.09));pointer-events:none}
/* chips + pay + legal (inherited structure) */
.footer .foot-chips{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;border-top:1px solid rgba(212,175,90,.18);padding-top:24px;position:relative;z-index:2}
.footer .foot-chips a{font-size:12px;letter-spacing:.05em;color:rgba(233,213,168,.8);border:1px solid rgba(212,175,90,.32);border-radius:20px;padding:7px 16px;transition:.25s}
.footer .foot-chips a:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
.pay-strip{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:16px 0 0}
.pay-chip{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:6px;border:1px solid rgba(212,175,90,.3);background:rgba(250,246,239,.05);color:#e9d5a8;font-family:var(--ff-label);font-size:10px;letter-spacing:.14em}
.foot-legal{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(212,175,90,.2);margin-top:22px;padding-top:18px;font-size:12px;color:rgba(233,213,168,.55);position:relative;z-index:2}
.foot-staff a{color:rgba(233,213,168,.7);text-decoration:underline dotted}
.foot-staff a:hover{color:var(--gold-2)}
@media(max-width:1080px){.f-body{grid-template-columns:1fr 1fr}.fl-news{grid-column:1/-1}.f-stats>div{padding:6px 26px}}
@media(max-width:680px){
  .f-body{grid-template-columns:1fr;gap:28px;padding-top:8px}
  .f-cols{grid-template-columns:1fr 1fr}
  .f-crest{padding:30px 0 26px}
  .f-stats{gap:0}.f-stats>div{padding:6px 16px}.f-stats b{font-size:24px}
  .f-stats>div:nth-child(3){border-left:none}
  .f-motto{font-size:24px}
  .f-wordmark{letter-spacing:.1em;margin:18px 0 4px}
  .f-emblem{width:92px;height:92px}.f-emblem img{height:44px}
}

/* ═══════════════════════════════════════════════════════════
   v7 — stunning mobile experience (app-like)
   ═══════════════════════════════════════════════════════════ */
.mnav{display:none}
.fsheet-bar{display:none}
.f-toggle{display:none}
@media(max-width:768px){
  /* ── app bottom navigation ── */
  .mnav{position:fixed;left:0;right:0;bottom:0;z-index:92;display:flex;justify-content:space-around;
    background:rgba(26,4,7,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    border-top:1px solid rgba(212,175,90,.32);box-shadow:0 -12px 40px rgba(0,0,0,.45);
    padding:7px 6px calc(7px + env(safe-area-inset-bottom))}
  .mnav a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:9.5px;letter-spacing:.06em;
    color:rgba(233,213,168,.62);padding:7px 14px;border-radius:14px;position:relative;transition:color .25s var(--ease),background-color .25s var(--ease),transform .25s var(--m-spring,cubic-bezier(.34,1.42,.44,1)),filter .25s var(--ease)}
  .mnav a svg{width:21px;height:21px;transition:.25s}
  .mnav a.on{color:#ffe9bd}
  .mnav a.on svg{color:var(--gold-2);filter:drop-shadow(0 0 9px rgba(212,175,90,.75));transform:translateY(-1px)}
  .mnav a.on::after{content:'';position:absolute;top:2px;width:4px;height:4px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 8px var(--gold-2)}
  body{padding-bottom:60px}
  body[data-page="product"]{padding-bottom:0}
  body[data-page="product"] .mnav,
  body[data-page="admin"] .mnav,
  body[data-page="partner"] .mnav{display:none}
  body[data-page="admin"],body[data-page="partner"]{padding-bottom:0}
  .toast-wrap{bottom:76px;right:12px;left:12px}
  .toast{max-width:none}

  /* ── bottom-sheet filters ── */
  .f-toggle{display:inline-flex}
  .filters{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:96;max-height:74vh;overflow-y:auto;
    border-radius:26px 26px 0 0;border:none;box-shadow:0 -24px 70px rgba(0,0,0,.5);
    transform:translateY(106%);transition:transform .45s var(--ease);padding-top:0;max-width:none}
  .filters.open{transform:none}
  .filters::before{content:'';position:sticky;top:0;display:block;width:44px;height:4px;border-radius:3px;
    background:rgba(212,175,90,.45);margin:10px auto 2px}
  .fsheet-bar{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;
    background:var(--white);padding:10px 20px 8px;border-bottom:1px solid var(--line);z-index:2}
  .fsheet-bar b{font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep)}
  .fsheet-bar button{width:34px;height:34px;border-radius:50%;background:var(--cream-2);color:var(--ink-2);font-size:14px}
  .fsheet-overlay{position:fixed;inset:0;background:rgba(15,3,6,.58);backdrop-filter:blur(2px);z-index:95;
    opacity:0;pointer-events:none;transition:.35s}
  .fsheet-overlay.open{opacity:1;pointer-events:auto}

  /* ── modals slide up as sheets ── */
  .modal-overlay{align-items:flex-end;padding:0}
  .modal{border-radius:26px 26px 0 0;max-height:88vh;max-width:100%;width:100%;padding:26px 22px calc(26px + env(safe-area-inset-bottom));
    animation:sheetUp .45s var(--ease)}
  @keyframes sheetUp{from{transform:translateY(70px);opacity:0}}
  .modal-close{top:10px;right:12px}

  /* ── richer product cards ── */
  .p-grid{gap:13px}
  .p-card{border-radius:18px}
  .pc-imgwrap{aspect-ratio:1/1.12}
  .pc-name{font-size:18px}
  .pc-price b{font-size:17px}
  .pc-body{padding:14px 15px 17px}

  /* ── press feedback (native feel) ── */
  .btn:active{transform:scale(.96)}
  .mnav a:active{transform:scale(.9)}
  .cb-item:active .cb-img{transform:scale(.92)}
  .size-pill:active{transform:scale(.92);border-color:var(--gold)}
  .chip:active{transform:scale(.93)}

  /* ── hero & headings pop ── */
  .hero h1{font-size:clamp(40px,10.6vw,52px);line-height:1.06}
  .hero-sub{font-size:15.5px}
  .hero-cta .btn{flex:1 1 100%;justify-content:center}
  .hero-kicker{letter-spacing:.22em;font-size:10.5px}
  .sec-head h2{font-size:clamp(26px,7.4vw,34px)}
  .sec-head{margin-bottom:30px}
  .page-hero h1{font-size:clamp(30px,8.4vw,40px)}
  .c-body h3{font-size:clamp(28px,8vw,38px)}
  .c-cta .btn{flex:1 1 100%;justify-content:center}

  /* footer breathing room above bottom nav */
  .footer{padding-bottom:16px}
}

/* ═══════════════════════════════════════════════════════════
   v8 — account area (Tanishq-inspired, Shivaa-branded)
   ═══════════════════════════════════════════════════════════ */
.acct-wrap{max-width:1080px;margin:0 auto;padding:40px 0 10px}
.acct-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(120deg,var(--maroon-2),var(--maroon-deep));border-radius:20px;padding:26px 28px;color:#f6e8c8;position:relative;overflow:hidden;box-shadow:var(--sh-2)}
.acct-hero::after{content:'✦';position:absolute;right:14px;bottom:-30px;font-size:120px;color:rgba(212,175,90,.12)}
.ah-id{display:flex;gap:16px;align-items:center}
.ah-av{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#8f6516);display:flex;align-items:center;justify-content:center;font-family:var(--ff-disp);font-size:24px;color:#fff8ea;flex:none;box-shadow:0 8px 22px rgba(158,116,28,.4)}
.ah-id b{font-family:var(--ff-disp);font-size:24px;color:#fdf3dd;display:block}
.ah-id small{color:rgba(246,232,200,.65);font-size:12.5px;display:block;margin:3px 0 6px}
.ah-tier{display:inline-block;font-family:var(--ff-label);font-size:10px;letter-spacing:.16em;text-transform:uppercase;border:1px solid rgba(212,175,90,.5);border-radius:16px;padding:5px 12px;color:#ffe9bd}
.ah-tier.gold{background:linear-gradient(135deg,var(--gold),#9c7222);color:#fff;border-color:transparent}
.acct-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.acct-tile{display:flex;align-items:center;gap:14px;background:var(--white);border:1.5px solid var(--line);border-radius:18px;padding:18px;transition:.28s var(--ease);position:relative}
.acct-tile:hover{border-color:var(--gold-soft);transform:translateY(-3px);box-shadow:var(--sh-2)}
.acct-tile.on{border-color:var(--gold);background:var(--gold-faint)}
.acct-tile.danger:hover{border-color:#e8b4bb;background:#fdf3f4}
.at-ic{width:46px;height:46px;border-radius:14px;background:var(--gold-faint);border:1px solid var(--gold-soft);color:var(--maroon);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.acct-tile.on .at-ic,.acct-tile:hover .at-ic{background:linear-gradient(135deg,var(--maroon),var(--maroon-2));color:#f3dfae;border-color:transparent}
.acct-tile.danger .at-ic{background:#fdeef0;color:var(--bad);border-color:#f5d3d9}
.at-tx b{display:block;font-family:var(--ff-disp);font-size:17.5px;color:var(--maroon-deep)}
.at-tx small{color:var(--ink-3);font-size:11.5px}
.at-go{margin-left:auto;color:var(--gold);font-size:20px}
.acct-body{animation:fadeUp .4s var(--ease)}
.acct-sec{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--sh-1)}
.as-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.as-head h3{font-size:24px}
.as-note{font-size:12px;color:var(--ink-3)}
.prof-meter{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.pm-bar{flex:1;height:8px;border-radius:6px;background:var(--cream-2);overflow:hidden}
.pm-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-2));border-radius:6px;transition:width .6s var(--ease);box-shadow:0 0 12px rgba(212,175,90,.5)}
.prof-meter b{font-family:var(--ff-label);font-size:11px;letter-spacing:.1em;color:var(--gold);white-space:nowrap}
.prof-form input.locked{background:var(--cream-2);color:var(--ink-3);border-style:dashed}
.addr-list{display:grid;gap:14px;margin-top:18px}
.addr-card{border:1.5px solid var(--line);border-radius:16px;padding:18px;transition:.25s}
.addr-card:hover{border-color:var(--gold-soft)}
.addr-card.def{border-color:var(--gold);background:var(--gold-faint)}
.ac-top{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.ac-label{font-family:var(--ff-label);font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:var(--maroon);color:#f3dfae;border-radius:12px;padding:4px 12px}
.ac-def{font-size:10.5px;font-weight:600;color:var(--gold);letter-spacing:.08em}
.addr-card b{font-size:14.5px;color:var(--maroon-deep)}
.addr-card p{font-size:13.5px;color:var(--ink-2);margin:5px 0 12px}
.ac-actions{display:flex;gap:8px;flex-wrap:wrap}
#addrFormWrap{background:var(--cream-2);border:1px dashed var(--gold-soft);border-radius:16px;padding:22px;margin-bottom:6px}
@media(max-width:768px){
  .acct-wrap{padding:26px 0 6px}
  .acct-tiles{grid-template-columns:1fr;gap:11px;margin:20px 0}
  .acct-tile{padding:15px}
  .acct-sec{padding:20px;border-radius:18px}
  .as-head h3{font-size:20px}
  .ah-id b{font-size:20px}
}

/* ═══════ privacy page — branded, mobile-first ═══════ */
.priv-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px}
.pfact{background:var(--white);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:16px;padding:18px 14px;text-align:center;box-shadow:0 2px 10px rgba(61,14,21,.05)}
.pfact span{font-size:24px;display:block;margin-bottom:8px}
.pfact b{font-family:var(--ff-disp);font-size:19px;color:var(--maroon-deep);display:block}
.pfact small{font-size:11px;color:var(--ink-3);display:block;margin-top:3px}
.priv-hero-card{display:flex;gap:26px;background:radial-gradient(700px 300px at 12% 0,#5c1822,var(--maroon-deep) 70%);border-radius:22px;padding:32px;color:#f6e8c8;position:relative;overflow:hidden;align-items:center;margin-bottom:30px}
.priv-hero-card::after{content:'✦';position:absolute;right:-16px;bottom:-40px;font-size:150px;color:rgba(212,175,90,.1)}
.priv-logo{height:58px;background:var(--cream);border-radius:12px;padding:8px 16px;flex:none;align-self:center}
.priv-hero-card .label{color:var(--gold-2)}
.priv-hero-card h3{color:#fdf3dd;font-size:clamp(22px,3vw,30px);margin:8px 0 10px}
.priv-hero-card p{font-size:14px;color:rgba(246,232,200,.8);line-height:1.75;position:relative;z-index:2}
.priv-hero-card .btn-outline{border-color:var(--gold-2);color:#f3dfae;background:transparent}
.priv-sec{background:var(--white);border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}
.priv-sec summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:17px 20px;font-family:var(--ff-label);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--maroon);cursor:pointer;font-weight:600}
.priv-sec summary::-webkit-details-marker{display:none}
.priv-sec summary::after{content:'+';font-size:20px;color:var(--gold)}
.priv-sec[open] summary::after{content:'–'}
.priv-sec[open] summary{border-bottom:1px dashed var(--line)}
.ps-body{padding:18px 20px 20px;font-size:14px;color:var(--ink-2);line-height:1.8}
.ps-body p{margin-bottom:10px}
.ps-body b{color:var(--ink)}
.priv-table th{background:var(--maroon)}
.priv-rights{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.priv-rights div{background:var(--gold-faint);border:1px solid #ecdcba;border-radius:12px;padding:13px 15px}
.priv-rights b{font-family:var(--ff-disp);color:var(--maroon);font-size:15.5px;display:block;margin-bottom:3px}
.priv-rights small{font-size:12px;color:#6d5518;line-height:1.5}
.priv-dpo{margin-top:26px}
.dpo-card{background:linear-gradient(135deg,var(--maroon-2),var(--maroon-deep));border:1px solid rgba(212,175,90,.4);border-radius:20px;padding:30px;color:#f6e8c8;position:relative;overflow:hidden}
.dpo-card::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cpath d='M45 38l7 7-7 7-7-7z' fill='%23d4af5a' fill-opacity='.06'/%3E%3C/svg%3E");pointer-events:none}
.dpo-card .label{color:var(--gold-2)}
.dpo-card h3{color:#fdf3dd;font-size:clamp(20px,2.6vw,26px);margin:10px 0 18px;position:relative;z-index:2}
.dpo-row{display:flex;gap:13px;align-items:flex-start;margin-bottom:12px;position:relative;z-index:2}
.dpo-row span{width:38px;height:38px;flex:none;border-radius:11px;background:rgba(212,175,90,.14);border:1px solid rgba(212,175,90,.4);display:flex;align-items:center;justify-content:center;font-size:16px}
.dpo-row p{font-size:14px;color:rgba(246,232,200,.85);line-height:1.65}
.dpo-row a{color:#ffe9bd;text-decoration:underline dotted}
.dpo-note{margin-top:16px;font-size:12.5px;color:rgba(246,232,200,.8);border-top:1px dashed rgba(212,175,90,.35);padding-top:14px;position:relative;z-index:2}
@media(max-width:860px){
  .priv-facts{grid-template-columns:1fr 1fr}
  .priv-hero-card{flex-direction:column;text-align:center;padding:26px 20px}
  .priv-rights{grid-template-columns:1fr}
}
@media(max-width:480px){.priv-facts{gap:10px}.pfact{padding:14px 10px}.ps-body{padding:15px 16px 18px}}

/* ═══════════════════════════════════════════════════════════
   4D PASS — depth everywhere, magnetic interactions
   ═══════════════════════════════════════════════════════════ */
/* layered 3D press on every button */
.btn{position:relative;transition:transform .22s var(--ease),box-shadow .22s var(--ease),filter .22s}
.btn:not(.btn-wa):not(.btn-light):not(.btn-outline):not(.btn-ghost){box-shadow:inset 0 1px 0 rgba(255,244,214,.4),0 4px 0 rgba(24,4,6,.5),0 16px 34px rgba(61,14,21,.34)}
.btn:not(.btn-wa):not(.btn-light):not(.btn-outline):not(.btn-ghost):active{transform:translateY(4px);box-shadow:inset 0 1px 0 rgba(255,244,214,.3),0 0 0 rgba(0,0,0,0),0 8px 18px rgba(61,14,21,.3)}
.btn-light,.btn-outline,.btn-ghost{box-shadow:0 3px 0 rgba(61,14,21,.1),0 10px 22px rgba(61,14,21,.1)}
.btn-light:active,.btn-outline:active,.btn-ghost:active{transform:translateY(3px);box-shadow:0 0 0 rgba(61,14,21,.1),0 4px 10px rgba(61,14,21,.12)}
/* magnetic hover lift */
@media(hover:hover){
  .btn:hover{transform:translateY(-2px)}
  .btn:active:hover{transform:translateY(4px)}
}
/* 4D cards — floating children */
.p-card,.cat-card,.acct-tile,.addr-card,.order-card,.adm-card,.catlog,.testi,.trust{transform-style:preserve-3d;will-change:transform}
.p-card:hover .pc-imgwrap,.acct-tile:hover .at-ic,.addr-card:hover .ac-actions{transform:translateZ(24px)}
.order-card:hover,.addr-card:hover,.adm-card:hover{box-shadow:0 26px 54px -18px rgba(61,14,21,.28)}
/* deep glowing focus rings (a11y + 4D) */
.btn:focus-visible,a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px;border-radius:8px}
/* icon buttons pop 3D */
.icon-btn{transition:transform .25s var(--ease),box-shadow .25s}
.icon-btn:active{transform:scale(.88)}
/* mega tiles + atelier chips lift */
.mega-tile:hover{transform:translateY(-3px) translateZ(12px)}
/* section dividers get depth */
.divider-orn{position:relative}
.divider-orn::after{content:'';position:absolute;left:50%;transform:translateX(-50%);bottom:-14px;width:120px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,90,.5),transparent)}
/* toast 4D */
.toast{animation:toastIn .4s var(--ease),toastFloat 3s ease-in-out .4s infinite;box-shadow:0 24px 50px rgba(0,0,0,.4),inset 0 1px 0 rgba(246,232,200,.14)}
@keyframes toastFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
/* status pills dimensional */
.status-pill{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 2px 5px rgba(0,0,0,.12)}
/* page hero title depth */
.page-hero h1{text-shadow:0 2px 0 rgba(0,0,0,.35),0 18px 44px rgba(0,0,0,.4)}
.hero h1{text-shadow:0 3px 0 rgba(0,0,0,.3),0 24px 60px rgba(0,0,0,.5)}
/* size pills + qty buttons 4D */
.size-pill,.cb-item b,.chip{box-shadow:0 2px 0 rgba(61,14,21,.08)}
.size-pill:active{transform:translateY(2px)}
.qty-row{box-shadow:inset 0 2px 6px rgba(61,14,21,.08),0 2px 0 rgba(255,255,255,.7)}
.qty-row button:active{transform:scale(1.25)}

/* ═══════════════════════════════════════════════════════════
   DEVICE OPTIMISATION PASS — 360px phones · iOS zoom · tables
   ═══════════════════════════════════════════════════════════ */
/* 1) every input ≥16px on touch devices → no iOS focus-zoom */
@media (pointer:coarse){
  input:not([type=checkbox]):not([type=radio]):not([type=range]),
  select,textarea{font-size:16px !important}
  .nl-form input,.coupon-row input{font-size:16px !important}
}
/* 2) 360px small phones — tighten the live-rate strip */
@media (max-width:400px){
  .ub-rates{font-size:10.5px;gap:0}
  .ub-rates span{padding:0 7px}
  .ub-rates span + span::before{display:none}
  .ub-rates span + span{margin-left:7px}
  .ub-rates b{font-size:10.5px}
  .utilbar-in{height:36px}
  .cb-item{min-width:80px}
  .cb-img{width:64px;height:64px}
  .p-grid{grid-template-columns:1fr 1fr;gap:10px}
  .pc-name{font-size:16px}
  .pc-body{padding:12px 13px 15px}
  .c-body{padding:26px 16px}
  .c-slide{min-height:410px}
  .hero-in{padding:34px 0}
  .catbar2{gap:14px}
}
/* 3) tables self-scroll everywhere (privacy, partner settlements, admin) */
@media (max-width:768px){
  .ps-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .adm-table-wrap,.mc-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .settle-table,.adm-table{min-width:520px;max-width:100%}
  .priv-table{min-width:420px}
  .chart-wrap{padding:16px}
  /* admin sidebar usable on phones */
  .adm-main{padding:16px 12px}
  .adm-nav{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
  .adm-nav a{font-size:12.5px;padding:10px 12px}
  .adm-side{padding:14px 10px}
  .adm-logo img{height:26px}
  .stat-grid{grid-template-columns:1fr 1fr;gap:12px}
  .stat b{font-size:23px}
  .adm-card{padding:16px;border-radius:16px}
  .adm-head h2{font-size:24px}
  /* mega-safe touch rows */
  .fcheck{padding:10px 0;font-size:15px}
  .foot-col a{padding:9px 0 9px 14px;font-size:14.5px}
  .form-grid{gap:10px}
  .fld input,.fld select,.fld textarea{padding:13px 14px}
}
/* 4) tablet tuning (768–1080) */
@media (min-width:769px) and (max-width:1080px){
  .p-grid{grid-template-columns:repeat(3,1fr)}
  .hero-stage{height:420px}
  .foot-grid-lux{grid-template-columns:1fr 1fr}
  .fl-news{grid-column:1/-1}
}
/* 5) very large screens — keep elegance, avoid stretch */
@media (min-width:1600px){
  .container{width:min(1380px,90vw)}
  .hero h1{font-size:88px}
  .c-slide{min-height:600px}
  .c-body{max-width:760px}
}
/* 6) landscape phones: compress sticky bars so content stays visible */
@media (max-height:480px) and (orientation:landscape){
  .mnav{padding:4px 4px calc(4px + env(safe-area-inset-bottom))}
  .mnav a{padding:3px 10px}
  .mnav a span{display:none}
  .mnav a svg{width:22px;height:22px}
  .pd-stickybar{padding:6px 12px}
  body{padding-bottom:48px}
}
/* 7) print (bonus): store details sheet prints clean */
@media print{
  .mnav,.pd-stickybar,.utilbar,.header,.footer,.wa-fab,.cursor-glow,.scroll-progress,#preloader{display:none !important}
  body{padding:0;background:#fff}
  .pd-layout{grid-template-columns:1fr}
}

/* ── utilbar responsive rebuild (tablet fix + shrink-safe) ── */
.utilbar-in{min-width:0}
.ub-rates{min-width:0;flex:1;justify-content:center;overflow:hidden}
.ub-left,.ub-right{flex:none}
@media (max-width:920px){
  .ub-left{display:none}              /* phone/email links move to footer on tablets */
}
@media (min-width:761px) and (max-width:920px){
  .utilbar-in{gap:14px}
  .ub-right{gap:14px}
  .ub-rates span{padding:0 12px}
  .ub-rates{font-size:11.5px}
}
@media (max-width:760px){
  .ub-right{display:none}
  .ub-rates{justify-content:center}
}
/* partner/admin small-phone trims */
@media (max-width:420px){
  .b2b-stat b{font-size:22px}
  .adm-head h2{font-size:21px}
  .settle-table,.adm-table{min-width:500px}
  .ps-body table{min-width:400px}
}

/* canvases never spill (charts drawn during layout shifts) */
canvas{max-width:100%}
#rateChart,#admRateChart,#admChart,#ptChart{width:100%!important}


/* ── audit-2 fixes ── */
@supports (height:100dvh){.hero{min-height:calc(100dvh - 118px)}}
html.no-scroll{overflow:hidden}
.offline-bar{position:fixed;top:0;left:0;right:0;z-index:130;background:#5c0f1a;color:#ffd9de;text-align:center;font-size:12.5px;letter-spacing:.04em;padding:8px 14px;transform:translateY(-110%);transition:.35s var(--ease);box-shadow:0 8px 22px rgba(0,0,0,.35)}
.offline-bar.show{transform:none}
body.is-offline .icon-btn svg,body.is-offline .brand-logo{opacity:.55}

/* ═══════════════════════════════════════════════════════════
   v13 — product-dominant home · bullion mini-app · Tanishq table
   ═══════════════════════════════════════════════════════════ */
/* compact category cards */
.cat-mini{display:grid;grid-template-columns:repeat(9,1fr);gap:10px}
.cat-mini-card{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px 6px 10px;transition:.25s var(--ease)}
.cat-mini-card img{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 3px 10px rgba(61,14,21,.14)}
.cat-mini-card b{font-family:var(--ff-label);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);text-align:center;line-height:1.3}
.cat-mini-card:hover{border-color:var(--gold-soft);transform:translateY(-3px);box-shadow:var(--sh-1)}
.cat-mini-card:hover img{box-shadow:0 6px 16px rgba(185,138,47,.35)}
.see-all{font-family:var(--ff-body);font-size:12.5px;letter-spacing:.02em;color:var(--gold);text-transform:none;font-weight:500;margin-left:12px;white-space:nowrap}
@media(max-width:1080px){.cat-mini{grid-template-columns:repeat(5,1fr)}}
@media(max-width:680px){.cat-mini{grid-template-columns:repeat(4,1fr);gap:8px}.cat-mini-card{padding:9px 4px 8px}.cat-mini-card img{width:38px;height:38px}}
/* Tanishq-style product price table */
.tanq-table{width:100%;border-collapse:collapse}
.tanq-table td{padding:11px 4px;font-size:14px;color:var(--ink-2);border-bottom:1px solid var(--line)}
.tanq-table td:first-child{font-family:var(--ff-label);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);width:34%}
.tanq-table td:nth-child(2){font-size:12.5px;color:var(--ink-3)}
.tanq-table td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}
.tanq-table tr.total td{border-bottom:none;border-top:2px solid var(--gold);padding-top:13px;color:var(--maroon);font-size:16px;font-weight:700}
.tanq-table tr.total td:first-child{color:var(--maroon)}
/* ── bullion mini-app ── */
.bullion-card h3{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.bl-live{font-family:var(--ff-body);font-size:11px;letter-spacing:.1em;color:#2e7d4f;display:inline-flex;align-items:center;gap:7px}
.bl-rows{display:grid;gap:10px}
.bl-row{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(135deg,#fffdf8,#f7eed8);border:1px solid #eaddb8;border-radius:14px;padding:13px 16px;flex-wrap:wrap}
.bl-row.cash{background:linear-gradient(135deg,#fdf6f7,#fbe9ec);border-color:#eecdd4}
.bl-id b{font-family:var(--ff-disp);font-size:16.5px;color:var(--maroon-deep);display:block}
.bl-id small{font-size:11px;color:var(--ink-3)}
.bl-id em{color:var(--warn);font-style:normal;font-weight:600}
.bl-chg{font-style:normal;font-size:11px;font-weight:700;margin-left:6px}
.bl-chg.up{color:var(--ok)}.bl-chg.down{color:var(--bad)}.bl-chg.flat{color:var(--ink-3)}
.bl-btns{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.bl-rate small{display:block;font-size:9px;letter-spacing:.18em;color:var(--ink-3);text-align:center}
.bl-rate b{font-family:var(--ff-disp);font-size:17px;color:var(--ink)}
.bl-buy,.bl-sell{font-family:var(--ff-label);font-size:11px;letter-spacing:.14em;padding:10px 22px;border-radius:10px;color:#fff;box-shadow:0 3px 0 rgba(0,0,0,.25),0 8px 16px rgba(61,14,21,.2);transition:.15s var(--ease)}
.bl-buy{background:linear-gradient(135deg,#1e7d44,#155c32)}
.bl-sell{background:linear-gradient(135deg,#a32638,#7c1c2a)}
.bl-buy:active,.bl-sell:active{transform:translateY(3px);box-shadow:0 0 0 rgba(0,0,0,0)}
.bl-edit-row label{margin-bottom:6px;display:block}
@media(max-width:680px){
  .bl-row{padding:11px 12px}
  .bl-id b{font-size:14.5px}
  .bl-rate b{font-size:14.5px}
  .bl-buy,.bl-sell{padding:9px 16px;font-size:10px}
}

/* mobile shop: products first — hide category strip, single compact toolbar */
@media(max-width:768px){
  .shop-layout .catbar-outer{display:none}
  .shop-bar{margin-bottom:14px}
  .shop-bar .res{font-size:12.5px}
  .f-toggle{padding:8px 14px;font-size:11px}
  .sortsel{padding:8px 14px;font-size:12.5px}
  .filters{max-height:80vh}
}

/* shop category strip hidden on mobile (products first) */
@media(max-width:768px){.shop-catbar{display:none}}

/* ═══ design selection (jeweller catalogue) + custom order form ═══ */
.ds-wrap{background:var(--white);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:20px;padding:26px;box-shadow:var(--sh-1)}
.ds-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.ds-total{display:flex;align-items:center;gap:16px;background:radial-gradient(300px 140px at 80% 0%,#5c1822,var(--maroon-deep));border-radius:16px;padding:14px 20px;color:#f6e8c8}
.ds-total small{display:block;font-size:11px;color:rgba(246,232,200,.7)}
.ds-total b{display:block;font-family:var(--ff-disp);font-size:22px;color:#ffe9bd}
.ds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.ds-card{border:2px solid var(--line);border-radius:16px;padding:10px;background:var(--cream);text-align:center;transition:.2s var(--ease)}
.ds-card.on{border-color:var(--gold);background:var(--gold-faint);box-shadow:0 0 0 3px rgba(212,175,90,.2)}
.ds-img{position:relative;border-radius:11px;overflow:hidden;margin-bottom:8px;background:#fff}
.ds-img img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.ds-wt{position:absolute;top:7px;right:7px;background:rgba(29,5,9,.85);color:#ffe9bd;font-size:10.5px;font-weight:600;border-radius:10px;padding:4px 9px}
.ds-card b{font-size:13px;color:var(--maroon-deep);display:block}
.ds-card small{font-size:10.5px;color:var(--ink-3);display:block;margin:2px 0 8px}
.ds-qty{display:inline-flex;align-items:center;gap:0;border:1.5px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}
.ds-qty button{width:34px;height:34px;font-size:16px;color:var(--maroon)}
.ds-qty button:active{background:var(--gold-faint)}
.ds-qty span{min-width:34px;text-align:center;font-weight:600;font-size:14px}
@media(max-width:680px){.ds-grid{grid-template-columns:repeat(2,1fr);gap:10px}.ds-wrap{padding:16px}.ds-head{align-items:stretch}.ds-total{width:100%;justify-content:space-between}}

/* ── ring weight quick-entry desk ── */
.wt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.wt-card{display:flex;gap:12px;align-items:center;background:var(--cream);border:1.5px solid var(--line);border-radius:16px;padding:10px;transition:.25s}
.wt-card.assumed{border-color:#e8c99a;background:#fbf3e2}
.wt-card img{width:74px;height:74px;border-radius:12px;object-fit:cover;flex:none;box-shadow:var(--sh-1)}
.wt-tx{min-width:0}
.wt-tx b{font-size:12.5px;color:var(--maroon-deep);display:block;margin-bottom:6px}
.wt-tx input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:8px 10px;font-size:15px;font-weight:600}
.wt-tx input:focus{outline:none;border-color:var(--gold)}
.wt-flag{display:block;font-size:10.5px;margin-top:5px;color:var(--ink-3)}
.wt-card.assumed .wt-flag{color:var(--warn)}
@media(max-width:680px){.wt-grid{grid-template-columns:1fr 1fr;gap:10px}.wt-card{flex-direction:column;text-align:center}}

/* ═══════════════════════════════════════════════════════════
   BANNERS — full mobile-friendly pass (all banner types)
   ═══════════════════════════════════════════════════════════ */
@media (max-width:680px){
  /* poster carousel slides */
  .c-slide{min-height:400px;height:auto;padding-bottom:8px}
  .c-slide img{object-position:70% center}                    /* keep the jewellery visible */
  .c-fade{background:linear-gradient(180deg,rgba(30,6,10,.55) 0%,rgba(30,6,10,.82) 46%,rgba(30,6,10,.96) 72%)}  /* legible over any photo */
  .c-body{padding:26px 18px;max-width:100%;align-self:flex-end}
  .c-body h3{font-size:clamp(24px,7.6vw,32px);line-height:1.15;text-wrap:balance}
  .c-body p{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .c-body .label{font-size:9.5px;letter-spacing:.2em;padding:6px 12px}
  .c-cta{gap:9px;margin-top:14px}
  .c-cta .btn{flex:1 1 100%;padding:13px 16px;font-size:11.5px}
  .offer-seal{gap:10px;margin:2px 0 8px}
  .offer-seal b{width:60px;height:60px;font-size:14px}
  .offer-seal b small{font-size:9px;letter-spacing:.2em}
  .offer-seal span{font-size:9px;max-width:104px;padding:7px 1px}
  .c-slide .flash-countdown{transform:scale(.62);transform-origin:left;margin:-2px 0 -6px}
  .c-slide .fc-cell{min-width:46px;padding:6px 8px}
  .c-frame{inset:9px;outline-offset:3px;border-radius:10px}
  .cf-c{width:8px;height:8px}
  .c-garland{height:34px;background-size:auto 34px;opacity:.8}
  .c-arrow{width:34px;height:34px;font-size:17px;opacity:.85}
  .c-prev{left:7px}.c-next{right:7px}
  .c-dots{bottom:12px}
  /* generic banners (B2B etc.) */
  .banner{min-height:0;padding:0}
  .banner img{object-position:65% center}
  .banner .b-fade{background:linear-gradient(180deg,rgba(42,9,14,.5),rgba(42,9,14,.9) 60%)}
  .banner .b-body{padding:26px 18px;max-width:100%}
  .banner .b-body h3{font-size:24px}
  .banner .b-body p{font-size:13px;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
  /* hero layered stage */
  .hero-stage{height:330px}
  .hs-tag{font-size:8.5px;padding:7px 11px;left:12px;bottom:11px}
  /* Jaipur rates hero */
  .jaipur-hero{padding:20px;border-radius:18px}
  .jh-val{font-size:40px}
  .jh-side{gap:9px;padding-top:16px}
  .jh-row{font-size:12.5px;padding-bottom:8px}
}
@media (max-width:400px){
  .c-slide{min-height:380px}
  .c-body{padding:22px 14px}
  .offer-seal b{width:54px;height:54px;font-size:12.5px}
}
/* touch: no accidental text selection while swiping posters */
.c-slide,.banner{-webkit-user-select:none;user-select:none}

/* ── owner page manager + public pages ── */
.pg-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 4px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.pg-row b{font-family:var(--ff-disp);font-size:17px;color:var(--maroon-deep)}
.pg-row small{display:block;color:var(--ink-3);font-size:11.5px;margin-top:2px}
.pg-actions{display:flex;gap:8px;flex-wrap:wrap}
.custom-page p{font-size:15px;line-height:1.85;color:var(--ink-2);margin-bottom:14px}
#pgBody{font-family:var(--ff-body)}
@media(max-width:680px){.pg-row{flex-direction:column;align-items:flex-start}}

/* ═══ final polish — micro-refinements per UI/UX review ═══ */
/* consistent optical rhythm: section spacing scale harmonised */
.sec{padding:88px 0}
.page-hero{padding:84px 0 72px}
/* calmer, consistent card borders */
.p-card,.cat-mini-card,.adm-card,.acct-sec,.chart-wrap{border-color:#e9ddc6}
/* hero headline kerning for display serif */
.hero h1,.page-hero h1,.f-motto{letter-spacing:-.012em}
/* focus states polished across all interactive elements */
a:focus-visible,button:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px;border-radius:6px}
/* toast refinement (less bounce, more premium) */
@keyframes toastIn{from{transform:translateY(14px);opacity:0}}
.toast{animation:toastIn .35s var(--ease)}
/* scrollbar on desktop: brand-matched thin */
@media (pointer:fine){
  ::-webkit-scrollbar{width:9px}
  ::-webkit-scrollbar-thumb{background:#cdbb95;border-radius:8px;border:2px solid var(--cream)}
}
/* empty-states: consistent iconography */
.empty-logo{margin-bottom:18px}
.empty h3{font-family:var(--ff-disp);font-size:26px;color:var(--maroon-deep);margin-bottom:8px}
.empty p{font-size:14px;color:var(--ink-3)}
/* checkout/pay-opt selection: clearer radio affordance */
.pay-opt input{width:19px;height:19px;accent-color:var(--gold)}
/* sticky order summary on desktop checkout breathes */
@media(min-width:1081px){.summary{top:112px}}

/* ═══════ animated reviews ═══════ */
/* home marquee */
.rev-marquee{position:relative;overflow:hidden;margin:0 -4vw;padding:10px 0 6px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.rev-track{display:flex;gap:20px;width:max-content;animation:revScroll 46s linear infinite}
.rev-marquee:hover .rev-track{animation-play-state:paused}
@keyframes revScroll{to{transform:translateX(-50%)}}
.rev-card{position:relative;flex:none;width:330px;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:26px 24px 22px;box-shadow:var(--sh-1);transition:transform .3s var(--ease),box-shadow .3s;overflow:hidden}
.rev-card:hover{transform:translateY(-5px) rotate(-.4deg);box-shadow:var(--sh-2)}
.rev-card::before{content:'“';position:absolute;top:-8px;right:14px;font-family:var(--ff-disp);font-size:88px;color:var(--gold-faint);line-height:1}
.rev-card p{font-family:var(--ff-disp);font-style:italic;font-size:15.5px;color:var(--ink);line-height:1.65;margin:12px 0 14px;position:relative}
.rev-card b{font-size:14px;color:var(--maroon)}
.rev-card small{display:block;color:var(--ink-3);font-size:12px;margin-top:2px}
.rev-qr{position:absolute;bottom:10px;right:14px;color:var(--gold-soft);font-size:18px;animation:qrSpin 9s linear infinite}
@keyframes qrSpin{to{transform:rotate(360deg)}}
.rev-glow{position:absolute;top:0;bottom:0;width:70px;pointer-events:none;z-index:2}
.rev-glow.left{left:0;background:linear-gradient(90deg,var(--cream),transparent)}
.rev-glow.right{right:0;background:linear-gradient(-90deg,var(--cream),transparent)}
/* stars: staggered pop-in */
.rev-stars i,.stars-pop i{display:inline-block;font-style:normal;color:var(--gold);animation:starPop .55s var(--ease) backwards;text-shadow:0 2px 8px rgba(212,175,90,.45)}
.rev-stars i:nth-child(1){animation-delay:.05s}.rev-stars i:nth-child(2){animation-delay:.15s}
.rev-stars i:nth-child(3){animation-delay:.25s}.rev-stars i:nth-child(4){animation-delay:.35s}
.rev-stars i:nth-child(5){animation-delay:.45s}
@keyframes starPop{0%{transform:scale(0) rotate(-90deg);opacity:0}70%{transform:scale(1.35) rotate(8deg)}100%{transform:scale(1)}}
/* review items staggered entrance */
.rv-item{opacity:0;animation:rvIn .6s var(--ease) forwards}
@keyframes rvIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
/* star picker: playful */
.rate-pick span{display:inline-block;transition:transform .2s var(--ease),color .2s,text-shadow .2s;cursor:pointer}
.rate-pick span:hover{transform:scale(1.35) translateY(-3px);text-shadow:0 4px 14px rgba(212,175,90,.7)}
.rate-pick span.picked{animation:starPop .5s var(--ease)}
@media(max-width:680px){.rev-card{width:270px;padding:20px 18px 18px}.rev-track{gap:14px}}
@media (prefers-reduced-motion:reduce){.rev-track{animation:none}.rev-stars i,.rv-item{animation:none;opacity:1}}

/* ═══════════════════════════════════════════════════════════════
   v19 — refined palette · header v4 · mega panel · filter drawer · 5D
   ═══════════════════════════════════════════════════════════════ */
:root{
  --maroon:#5E1520; --maroon-2:#46101A; --maroon-deep:#1F0409;
  --gold:#C29A45; --gold-2:#E4C97E; --gold-soft:#F0DFB6; --gold-faint:#F8F1E1;
  --cream:#FBF8F1; --cream-2:#F4EDDF; --cream-3:#ECE2CD; --line:#E8DCC6;
}
/* ── header: elegant contact + slim jewellers links ── */
.ub-contact{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;letter-spacing:.02em}
.ub-contact svg{width:13px;height:13px;opacity:.85}
.ub-jwl{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;letter-spacing:.08em;color:var(--gold-2) !important;border:1px solid rgba(228,201,126,.4);border-radius:18px;padding:4px 13px;background:rgba(194,154,69,.12);transition:.25s}
.ub-jwl span{font-size:9px;opacity:.8}
.ub-jwl:hover{background:rgba(228,201,126,.22);border-color:var(--gold-2);transform:translateY(-1px)}
.nav-jwl{position:relative;padding:10px 14px !important;color:var(--maroon) !important;font-weight:600 !important}
.nav-jwl::before{content:'';position:absolute;inset:4px 8px;border:1.5px solid transparent;border-radius:14px;transition:.3s var(--ease)}
.nav-jwl:hover::before{border-color:var(--gold)}
.nav-jwl::after{display:none}
.nav-cats{font-family:var(--ff-label);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);padding:12px 16px;display:inline-flex;align-items:center;gap:7px;background:none;border:none;cursor:pointer;transition:.25s;border-radius:0 !important;box-shadow:none !important}
.nav-cats:hover,.nav-cats[aria-expanded="true"]{color:var(--maroon)}
.nav-cats[aria-expanded="true"] svg{transform:rotate(180deg)}
.nav-cats svg{transition:transform .3s var(--ease)}
/* ── mega panel: fixed full-width under header, never clipped ── */
.mega-panel{position:fixed;top:0;left:50%;transform:translate(-50%,10px);width:min(1120px,96vw);z-index:95;background:var(--white);border:1px solid var(--line);border-bottom:4px solid var(--gold);border-radius:0 0 24px 24px;box-shadow:0 40px 90px rgba(31,4,9,.28);padding:28px;animation:megaIn .35s var(--ease);max-height:calc(100vh - 140px);overflow-y:auto}
.mega-panel:not([hidden]){display:block}
@keyframes megaIn{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,10px)}}
.mega-panel .mega-grid{grid-template-columns:repeat(4,1fr)}
.mega-panel .mega-tile{padding:12px;border-radius:14px}
.mega-backdrop{position:fixed;inset:0;background:rgba(31,4,9,.35);backdrop-filter:blur(2px);z-index:94;animation:fade .3s}
.mcat-list{display:none}
@media(max-width:680px){
  .mega-panel,.mega-backdrop{display:none !important}
  .mcat-list{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 6px 4px;border-top:1px dashed var(--line);margin-top:8px}
  .mcat-list a{font-size:13px;padding:9px 12px;background:var(--cream);border-radius:10px;color:var(--ink-2)}
}
/* position mega under the actual header height */
@media(min-width:681px){.mega-panel{top:var(--headerH,118px)}}
/* ── filter drawer (all viewports) ── */
.shop-layout{grid-template-columns:1fr !important;gap:0}
.shop-main{padding:26px 0 80px}
.filters{position:fixed;top:0;left:0;bottom:0;width:min(340px,88vw);z-index:97;background:var(--white);box-shadow:0 30px 80px rgba(31,4,9,.3);transform:translateX(-105%);transition:transform .45s var(--ease);overflow-y:auto;padding:0 0 30px;border-radius:0 24px 24px 0;max-height:none;max-width:none}
.filters.open{transform:none}
.filters::before{content:'';display:block;height:5px;background:linear-gradient(90deg,var(--gold),var(--gold-2));margin-bottom:0}
.fsheet-bar{display:flex !important;justify-content:space-between;align-items:center;padding:18px 20px 14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--white);z-index:2}
.fsheet-bar b{font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep)}
.fsheet-bar button{width:36px;height:36px;border-radius:50%;background:var(--cream-2);color:var(--ink-2);font-size:15px}
.fsheet-bar button:hover{background:var(--gold-faint)}
.fgroup{padding:14px 20px}
.f-toggle{display:inline-flex !important;align-items:center;gap:6px}
.fbadge{background:var(--maroon);color:#f9ecd2;font-size:10.5px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.fsheet-overlay{position:fixed;inset:0;background:rgba(31,4,9,.45);z-index:96;opacity:0;pointer-events:none;transition:.35s}
.fsheet-overlay.open{opacity:1;pointer-events:auto}
/* remove old mobile-only sheet rules that conflict */
@media(max-width:768px){.filters{border-radius:0 24px 24px 0}}
/* ═══ 5D animation layer ═══ */
/* magnetic buttons + specular sweep */
.btn{position:relative;overflow:hidden;isolation:isolate}
.btn::after{content:'';position:absolute;top:0;left:-90%;width:55%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,248,225,.35),transparent);transform:skewX(-22deg);transition:left .65s var(--ease);z-index:-1}
.btn:hover::after{left:140%}
@media(hover:hover) and (pointer:fine){
  .btn.magnetic{transition:transform .18s var(--ease),box-shadow .25s var(--ease)}
}
/* aurora ambience behind hero & key sections */
.aurora{position:relative;overflow:hidden}
.aurora::before{content:'';position:absolute;inset:-12% -6%;z-index:0;pointer-events:none;background:
  radial-gradient(38% 45% at 18% 30%,rgba(228,201,126,.16),transparent 70%),
  radial-gradient(34% 42% at 82% 22%,rgba(94,21,32,.14),transparent 70%),
  radial-gradient(30% 38% at 55% 85%,rgba(194,154,69,.12),transparent 70%);
  filter:blur(26px);animation:auroraDrift 14s ease-in-out infinite alternate}
@keyframes auroraDrift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(2.5%,-2%,0) scale(1.05)}100%{transform:translate3d(-2%,2%,0) scale(1.02)}}
.aurora>*:not([class*="-img"]):not([class*="-fade"]):not([class*="-orbs"]):not(.ph-mark):not(.hero-logo):not(.dust):not([class*="-frame"]):not([class*="-garland"]){position:relative;z-index:1}
/* headline ink-reveal */
.ink-reveal{background:linear-gradient(90deg,var(--maroon-deep) 0 40%,var(--maroon) 60% 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:inkSweep 2.6s var(--ease) forwards}
@keyframes inkSweep{from{background-position:120% 0}to{background-position:0 0}}
/* gold underline draw for section heads */
.sec-head h2{position:relative}
.sec-head h2::after{content:'';position:absolute;left:50%;bottom:-12px;width:64px;height:2.5px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:translateX(-50%) scaleX(0);transform-origin:center;animation:drawLine .9s var(--ease) .25s forwards}
@keyframes drawLine{to{transform:translateX(-50%) scaleX(1)}}
/* banner light-sweep */
.banner::after,.c-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 42%,rgba(255,242,205,.16) 50%,transparent 58%);background-size:280% 100%;background-position:130% 0;animation:sheetSweep 6.5s var(--ease) infinite;pointer-events:none;z-index:5}
@keyframes sheetSweep{0%,55%{background-position:130% 0}90%,100%{background-position:-60% 0}}
/* catalogue + testimonial cards get depth-follow glare too */
.catlog,.testi,.acct-tile,.addr-card{position:relative;overflow:hidden}
.catlog::before,.testi::before,.acct-tile::before{content:'';position:absolute;inset:0;background:radial-gradient(320px 180px at var(--gx,50%) var(--gy,50%),rgba(255,240,200,.28),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;z-index:1}
.catlog:hover::before,.testi:hover::before,.acct-tile:hover::before{opacity:1}
/* page transition */
#view{animation:viewIn .45s var(--ease)}
@keyframes viewIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* 3D flip-lite on category mini cards */
.cat-mini-card{transform-style:preserve-3d;transition:transform .45s var(--ease),box-shadow .3s}
.cat-mini-card:hover{transform:translateY(-6px) rotateX(7deg) rotateY(-4deg);box-shadow:0 22px 40px -14px rgba(94,21,32,.35)}
.cat-mini-card:hover img{transform:scale(1.12) rotate(2deg)}
.cat-mini-card img{transition:transform .5s var(--ease)}
/* floating ornamental sparkles over rate strip */
.rate-strip{position:relative;overflow:hidden}
.rate-strip::after{content:'✦';position:absolute;right:8%;top:-14px;font-size:60px;color:rgba(228,201,126,.10);animation:sparkFloat 7s ease-in-out infinite}
@keyframes sparkFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(9px) rotate(16deg)}}
@media (prefers-reduced-motion:reduce){.aurora::before,.banner::after,.c-slide::after,.rate-strip::after{animation:none}#view{animation:none}.ink-reveal{animation:none;color:var(--maroon-deep);-webkit-text-fill-color:var(--maroon-deep)}.sec-head h2::after{animation:none;transform:translateX(-50%) scaleX(1)}}

/* ═══ v20 — hero mobile, gallery, CTAs, invoices, B2B gate, prime panel ═══ */
/* hero: mobile-first impression */
@media(max-width:680px){
  .hero{min-height:auto;padding:44px 0 38px}
  .hero-in{padding:0}
  .hero-kicker{font-size:9px;letter-spacing:.18em;padding:7px 13px;margin-bottom:14px}
  .hero h1{font-size:clamp(30px,8.6vw,40px);line-height:1.12;letter-spacing:-.01em}
  .hero h1 em{display:inline-block}
  .hero-sub{font-size:13.5px;line-height:1.6;margin:12px 0 18px;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
  .hero-cta{gap:9px;margin-bottom:18px}
  .hero-cta .btn{flex:1 1 100%;padding:13px 14px;font-size:11px}
  .hero-trust{gap:6px 14px;font-size:8.5px;letter-spacing:.12em;justify-content:center}
  .hero-trust span:nth-child(4){display:none}
  .hero-stats{gap:0;margin:18px -8px 0;border-radius:14px;background:rgba(29,5,9,.5);padding:10px 0}
  .hstat{flex:1;padding:0 4px !important;border-left:1px solid rgba(212,175,90,.25)}
  .hstat:first-child{border-left:none}
  .hstat b{font-size:19px}
  .hstat span{font-size:8px;letter-spacing:.1em}
  .hero-stage{height:300px;margin-top:8px}
  .hero-cue{display:none}
}
/* poster carousel small polish */
@media(max-width:680px){
  .c-body .label{background:rgba(29,5,9,.45);backdrop-filter:blur(4px);border-radius:16px}
  .offer-seal{background:rgba(29,5,9,.4);border-radius:14px;padding:6px 10px 6px 6px}
}
/* swipeable gallery */
.gal-wrap{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--white);box-shadow:var(--sh-2);aspect-ratio:1/1;user-select:none;touch-action:pan-y}
.gal-track{display:flex;height:100%;transition:transform .5s var(--ease)}
.gal-slide{flex:0 0 100%;height:100%;position:relative}
.gal-slide img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.gal-slide.on img{animation:galIn .8s var(--ease)}
@keyframes galIn{from{transform:scale(1.08);opacity:.6}to{transform:scale(1);opacity:1}}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(250,246,239,.92);color:var(--maroon);font-size:19px;box-shadow:var(--sh-1);z-index:4;opacity:.85}
.gal-prev{left:10px}.gal-next{right:10px}
.gal-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:4}
.gal-dots span{width:7px;height:7px;border-radius:50%;background:rgba(250,246,239,.55);transition:.3s;cursor:pointer}
.gal-dots span.on{background:var(--gold-2);width:22px;border-radius:5px}
.gal-hint{position:absolute;top:12px;right:12px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(43,33,24,.5);background:rgba(250,246,239,.85);border-radius:12px;padding:5px 10px;z-index:3}
.gal-wrap .pd-stamp{z-index:5}
/* product CTAs */
.miy-btn{margin:20px 0 0;font-size:15px !important;letter-spacing:.16em;padding:17px 20px !important;animation:miyGlow 3s ease-in-out infinite}
@keyframes miyGlow{0%,100%{box-shadow:inset 0 1px 0 rgba(255,244,214,.4),0 4px 0 rgba(24,4,6,.5),0 14px 30px rgba(61,14,21,.34)}50%{box-shadow:inset 0 1px 0 rgba(255,244,214,.4),0 4px 0 rgba(24,4,6,.5),0 18px 44px rgba(194,154,69,.5)}}
.pd-cta-row{display:flex;gap:10px;margin-top:10px}
.pd-cta-row .btn{flex:1;padding:12px 10px;font-size:11px}
.wa-order svg{width:15px;height:15px}
/* big price-details button */
.brk-btn-lg{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin:14px 0 4px;padding:14px 16px;border-radius:14px;background:var(--gold-faint);border:1.5px dashed var(--gold);color:var(--maroon);font-family:var(--ff-label);font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;transition:.25s}
.brk-btn-lg b{font-size:16px;transition:transform .3s}
.brk-btn-lg:hover{background:var(--gold-faint);border-style:solid;transform:translateY(-1px)}
.brk-btn-lg[aria-expanded="true"] b{transform:rotate(180deg)}
/* wholesale box (B2B on product page) */
.wholesale-box{background:linear-gradient(135deg,#fdf6f7,#f9e9ec);border:1.5px solid #eecdd4;border-radius:16px;padding:16px 18px;margin:14px 0}
.wholesale-box .label{color:var(--bad)}
/* B2B gate */
.b2b-gate{position:relative;overflow:hidden;text-align:center;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:22px;padding:46px 30px;box-shadow:var(--sh-2)}
.b2b-gate h2{font-size:30px;margin:8px 0 10px}
.b2b-gate p{color:var(--ink-2);max-width:460px;margin:0 auto 18px;font-size:14.5px}
.bg-orn{font-size:44px;color:var(--gold-2);animation:qrSpin 10s linear infinite}
.bg-steps{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:6px}
.bg-steps span{font-size:12px;background:var(--gold-faint);border:1px solid var(--gold-soft);color:#7a5c17;border-radius:20px;padding:8px 16px}
/* invoice */
.inv-page{padding:26px 0 60px;background:var(--cream-2);min-height:100vh}
.inv-top{display:flex;gap:10px;margin-bottom:16px}
.inv-sheet{position:relative;max-width:800px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:38px;overflow:hidden}
.inv-wm{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(-28deg);font-family:var(--ff-disp);font-size:34px;color:rgba(110,30,42,.07);pointer-events:none;line-height:1.5;z-index:0}
.inv-head{display:flex;align-items:center;gap:16px;border-bottom:3px double var(--gold);padding-bottom:18px;position:relative;z-index:1}
.inv-head img{height:44px;background:var(--cream);border-radius:9px;padding:4px 10px}
.inv-head b{font-family:var(--ff-disp);font-size:26px;color:var(--maroon-deep);display:block}
.inv-head small{color:var(--ink-3);font-size:11.5px}
.inv-meta{margin-left:auto;text-align:right}
.inv-meta b{color:var(--maroon);font-size:15px}
.inv-to{margin:18px 0 12px;font-size:14px;color:var(--ink-2);position:relative;z-index:1}
.inv-tbl{width:100%;border-collapse:collapse;position:relative;z-index:1}
.inv-tbl th{text-align:left;font-family:var(--ff-label);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--maroon);color:#f3dfae;padding:10px 12px}
.inv-tbl td{padding:10px 12px;border-bottom:1px solid var(--line);font-size:13.5px}
.inv-tbl .tot td{border-top:2px solid var(--gold);font-weight:700;color:var(--maroon);font-size:14.5px}
.inv-foot{margin-top:24px;padding-top:14px;border-top:1px dashed var(--line);font-size:11.5px;color:var(--ink-3);text-align:center;position:relative;z-index:1}
@media print{
  body *{visibility:hidden}
  .inv-sheet,.inv-sheet *{visibility:visible}
  .inv-sheet{position:absolute;left:0;top:0;width:100%;border:none;border-radius:0}
  .inv-no-print{display:none !important}
  .inv-wm{color:rgba(110,30,42,.1)}
}
/* place customer order (prime) */
.pco-prime{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--maroon-2),var(--maroon-deep));border:1px solid rgba(212,175,90,.45);border-radius:22px;padding:30px;color:#f6e8c8;margin-bottom:22px;box-shadow:0 24px 60px rgba(31,4,9,.4)}
.pco-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.pco-kicker{font-family:var(--ff-label);font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-2)}
.pco-head h3{color:#fdf3dd;font-size:26px;margin:6px 0 6px}
.pco-head p{font-size:13px;color:rgba(246,232,200,.75);max-width:520px}
.pco-orn{font-size:52px;color:rgba(212,175,90,.35);animation:qrSpin 12s linear infinite}
.pco-prime .fld label{color:rgba(246,232,200,.8)}
.pco-prime .fld input,.pco-prime .fld select{background:rgba(250,246,239,.96)}
.pco-prime .drop-zone{border-color:rgba(212,175,90,.5);background:rgba(212,175,90,.07);color:#f3dfae}
@media(max-width:680px){.inv-sheet{padding:20px 16px}.pco-prime{padding:20px}}

/* ═══ v21 — hero mobile perfected (single confident column) ═══ */
@media(max-width:680px){
  .hero{padding:0 !important;min-height:0 !important}
  .hero-in{display:flex !important;flex-direction:column;padding:30px 18px 26px !important;gap:18px}
  .hero > .container{width:100%}
  /* order: kicker → headline → stage → sub → CTAs → stats */
  .hero-kicker{order:1;font-size:9px;letter-spacing:.16em;padding:6px 12px;margin:0 auto 2px}
  .hero h1{order:2;font-size:clamp(27px,8vw,36px) !important;line-height:1.14 !important;text-align:center;margin:0 !important}
  .hero-stage{order:3;height:258px !important;width:100%;margin:2px 0}
  .hero-sub{order:4;font-size:12.5px !important;line-height:1.55;text-align:center;max-width:330px;margin:0 auto;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
  .hero-cta{order:5;margin:0;width:100%;gap:8px}
  .hero-cta .btn{flex:1 1 100%;padding:13px 12px;font-size:10.5px;letter-spacing:.14em}
  .hero-cta .btn + .btn{flex:1 1 100%}
  .hero-trust{order:6;justify-content:center;gap:5px 10px;font-size:7.5px;letter-spacing:.1em;flex-wrap:nowrap;overflow:hidden}
  .hero-trust span{white-space:nowrap}
  .hero-stats{order:7;margin:0 -18px;border-radius:0;background:rgba(20,3,7,.55);backdrop-filter:blur(8px);width:calc(100% + 36px)}
  .hstat{flex:1;padding:2px 2px !important}
  .hstat b{font-size:17px}
  .hstat span{font-size:7px;letter-spacing:.06em}
  .hero-orbs{inset:0 0 40%}
  /* stage cards sized to fit beautifully */
  .hs-main{width:74%;height:88%;left:13%;top:2%}
  .hs-a{width:30%;height:26%;right:0;top:5%}
  .hs-b{width:27%;height:23%;right:3%;bottom:2%}
  .hs-badge{left:0;bottom:5%;transform:scale(.82);transform-origin:left bottom}
  .hs-tag{font-size:7.5px;padding:5px 9px}
}
@media(max-width:380px){
  .hero h1{font-size:25px !important}
  .hero-stage{height:230px !important}
}

/* ═══ v21 — trust pillars (animated) + photo reviews ═══ */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pillar{position:relative;overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:30px 22px 26px;text-align:center;transform-style:preserve-3d;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.pillar:hover{transform:translateY(-6px) rotateX(6deg) rotateY(-4deg);box-shadow:0 30px 60px -18px rgba(94,21,32,.32);border-color:var(--gold-soft)}
.pl-orb{position:absolute;width:120px;height:120px;border-radius:50%;top:-46px;right:-38px;background:radial-gradient(circle at 35% 35%,rgba(228,201,126,.35),transparent 70%);filter:blur(4px);animation:plFloat 6s ease-in-out infinite}
.pillar:nth-child(2) .pl-orb{animation-delay:-1.5s}
.pillar:nth-child(3) .pl-orb{animation-delay:-3s}
.pillar:nth-child(4) .pl-orb{animation-delay:-4.5s}
@keyframes plFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(12px) scale(1.12)}}
.pl-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:20px;background:linear-gradient(145deg,var(--maroon-2),var(--maroon-deep));color:var(--gold-2);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:inset 0 1px 0 rgba(246,232,200,.2),0 12px 26px rgba(70,16,26,.35)}
.pl-icon::after{content:'';position:absolute;inset:-6px;border-radius:24px;border:1px dashed rgba(194,154,69,.4);animation:plRing 9s linear infinite}
.pillar:nth-child(2) .pl-icon::after{animation-delay:-2.2s}
.pillar:nth-child(3) .pl-icon::after{animation-delay:-4.5s}
.pillar:nth-child(4) .pl-icon::after{animation-delay:-6.8s}
@keyframes plRing{to{transform:rotate(360deg)}}
.pl-icon svg{width:30px;height:30px}
.pl-draw{stroke-dasharray:80;stroke-dashoffset:80;animation:plDraw 1.6s var(--ease) forwards .5s}
.pillar:nth-child(2) .pl-draw{animation-delay:.9s}
.pillar:nth-child(3) .pl-draw{animation-delay:1.3s}
.pillar:nth-child(4) .pl-draw{animation-delay:1.7s}
@keyframes plDraw{to{stroke-dashoffset:0}}
.pillar b{font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep);display:block;margin-bottom:6px}
.pillar small{font-size:12.5px;color:var(--ink-2);line-height:1.55;display:block}
.pl-shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 44%,rgba(255,242,205,.22) 50%,transparent 56%);background-size:280% 100%;background-position:130% 0;transition:none;pointer-events:none}
.pillar:hover .pl-shine{animation:plSweep 1.1s var(--ease)}
@keyframes plSweep{from{background-position:130% 0}to{background-position:-60% 0}}
@media(max-width:920px){.pillars{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pillars{grid-template-columns:1fr;gap:12px}.pillar{padding:22px 16px 20px}.pl-icon{width:52px;height:52px;border-radius:16px}.pl-icon svg{width:24px;height:24px}.pillar b{font-size:17px}}
/* photo reviews */
.rev-card{width:340px}
.rev-head{display:flex;align-items:center;gap:11px;margin-bottom:10px}
.rev-av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#8f6516);color:#fff8ea;font-family:var(--ff-disp);font-size:15px;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 4px 12px rgba(143,101,22,.35)}
.rev-head b{font-size:13.5px;color:var(--maroon-deep);display:block}
.rev-head small{color:var(--ink-3);font-size:11.5px}
.rev-ver{margin-left:auto;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--ok);background:#e9f7ee;border:1px solid #c4e8d1;border-radius:10px;padding:4px 8px;white-space:nowrap}
.rev-stars{margin:2px 0 8px}
.rev-card p{font-size:14px;line-height:1.6;min-height:44px}
.rev-photo{width:100%;height:118px;object-fit:cover;border-radius:12px;margin-top:10px;border:1px solid var(--line);filter:saturate(1.05)}
@media(max-width:680px){.rev-card{width:282px}.rev-photo{height:96px}}

/* ═══ v21 — B2B form-first page, mobile menu, DS filters ═══ */
/* B2B page */
.b2b-form-card{position:relative;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:24px;padding:34px;box-shadow:var(--sh-2);margin-bottom:44px}
.bf-head{margin-bottom:22px}
.bf-head .label{color:var(--gold)}
.bf-head h2{font-size:clamp(26px,3vw,34px);margin:8px 0 6px}
.bf-head p{color:var(--ink-3);font-size:13.5px}
.why-prime{position:relative}
.wp-head{text-align:center;margin-bottom:26px}
.wp-head .label{color:var(--gold)}
.wp-head h2{font-size:clamp(24px,3vw,32px);margin-top:8px}
.wp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.wp-card{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--white),var(--gold-faint));border:1px solid var(--gold-soft);border-radius:20px;padding:24px 20px;transition:transform .4s var(--ease),box-shadow .4s;transform-style:preserve-3d}
.wp-card:hover{transform:translateY(-6px) rotateX(5deg);box-shadow:0 26px 54px -16px rgba(94,21,32,.3)}
.wp-ic{width:50px;height:50px;border-radius:16px;background:linear-gradient(145deg,var(--maroon-2),var(--maroon-deep));color:var(--gold-2);font-size:21px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:inset 0 1px 0 rgba(246,232,200,.2),0 10px 22px rgba(70,16,26,.3);animation:plFloat 7s ease-in-out infinite}
.wp-card:nth-child(odd) .wp-ic{animation-delay:-2.4s}
.wp-card b{font-family:var(--ff-disp);font-size:18px;color:var(--maroon-deep);display:block;margin-bottom:6px;line-height:1.25}
.wp-card p{font-size:12.5px;color:var(--ink-2);line-height:1.6}
.wp-shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 44%,rgba(255,242,205,.3) 50%,transparent 56%);background-size:280% 100%;background-position:130% 0;pointer-events:none}
.wp-card:hover .wp-shine{animation:plSweep 1.1s var(--ease)}
@media(max-width:1000px){.wp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wp-grid{grid-template-columns:1fr}.b2b-form-card{padding:22px 16px}}
/* mobile menu premium */
.mm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}
.mm-cat{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:9px 4px;transition:.25s var(--ease)}
.mm-cat img{width:42px;height:42px;border-radius:50%;object-fit:cover;box-shadow:0 3px 9px rgba(61,14,21,.16);transition:.3s}
.mm-cat b{font-size:8.5px;color:var(--ink-2);text-align:center;letter-spacing:.04em;text-transform:uppercase;font-family:var(--ff-label)}
.mm-cat:active{transform:scale(.94)}
.mm-cat:hover{border-color:var(--gold-soft);background:var(--gold-faint)}
.mm-cat:hover img{transform:scale(1.14) rotate(4deg)}
.mm-feats{display:grid;gap:9px;margin-top:12px}
.mm-f{display:flex;align-items:center;gap:12px;background:var(--white);border:1.5px solid var(--line);border-radius:16px;padding:12px 14px;transition:.25s var(--ease)}
.mm-f.gold{background:linear-gradient(135deg,var(--maroon-2),var(--maroon-deep));border-color:rgba(228,201,126,.5)}
.mf-ic{width:38px;height:38px;border-radius:12px;background:var(--gold-faint);color:var(--maroon);display:flex;align-items:center;justify-content:center;font-size:16px;flex:none}
.mm-f.gold .mf-ic{background:rgba(228,201,126,.16);color:var(--gold-2)}
.mm-f b{font-size:13.5px;color:var(--maroon-deep);display:block}
.mm-f.gold b{color:#fdf3dd}
.mm-f small{font-size:10.5px;color:var(--ink-3)}
.mm-f.gold small{color:rgba(246,232,200,.7)}
.mf-go{margin-left:auto;color:var(--gold);font-size:17px;transition:transform .25s}
.mm-f:hover{border-color:var(--gold);transform:translateX(4px)}
.mm-f:hover .mf-go{transform:translateX(4px)}
/* DS filters */
.ds-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:14px}
.dsf-label{font-family:var(--ff-label);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.ds-filters select{border-radius:10px;padding:9px 12px;font-size:12.5px}
.dsf-w{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3)}
.dsf-w small{letter-spacing:.1em;text-transform:uppercase;font-size:9.5px}
.dsf-w input{width:64px;border:1.5px solid var(--line);border-radius:10px;padding:8px 9px;font-size:13px}
@media(max-width:680px){.ds-filters{gap:7px;padding:10px}.dsf-w{width:100%;justify-content:flex-start}}

/* v21b — hero full-bleed on mobile */
@media(max-width:680px){
  .hero .container{width:100%;padding:0}
  .hero-in{padding:30px 16px 26px !important}
  .hero-stats{width:100% !important;margin:0 !important}
  .hero-cta .btn{width:100%}
}

/* v21c — hero container forced full-bleed (mobile) */
@media(max-width:680px){
  .hero > .container{width:100% !important;max-width:100% !important;padding:0 !important;margin:0 !important}
  .hero-in{padding:26px 16px 24px !important}
  .hero-stats{width:100% !important;margin:0 !important;border-radius:0}
  .hero-cta{width:100%}
  .hero-cta .btn{width:100% !important;max-width:100% !important}
}

/* v21d — hero mobile: neutralise desktop flex (the 286px shrink bug) */
@media(max-width:680px){
  .hero{display:block !important}
  .hero > .container.hero-in{flex:none;width:100%;max-width:100%}
}

/* v21e — kicker centred on mobile */
@media(max-width:680px){
  .hero-kicker{margin-left:auto;margin-right:auto;display:inline-flex}
  .hero h1{text-align:center}
  .hero-in > div:first-child{display:flex;flex-direction:column;align-items:center;width:100%}
}

/* ══════════════════════════════════════════════════════════════════════
   SHIVAA v23 — UI/UX ELEVATION LAYER
   1. Mobile hero (rebuilt, true viewport sizing)
   2. Pillar cards (4 trust badges) — luxury animation
   3. Reviews — photo UGC wall + marquee
   4. Sidebar drawer — imagery + choreography
   5. B2B partner page + portal
   6. Accessibility / reduced-motion / performance
   ══════════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}

/* ═══════════ 1 · MOBILE HERO — full-bleed, dvh-correct ═══════════ */
@media(max-width:820px){
  .hero{
    display:block !important;padding:0 !important;
    position:relative !important;overflow:hidden;
    min-height:min(86svh,700px) !important;
  }
  @supports not (height:1svh){ .hero{min-height:84vh !important} }
  /* the absolutely-positioned photo + gradient must fill the hero box */
  .hero > .hero-img,.hero > .hero-fade{
    position:absolute !important;top:0 !important;left:0 !important;
    right:0 !important;bottom:0 !important;
    width:100% !important;height:100% !important;
  }
  .hero-img{
    /* re-declare the whole shorthand so nothing from the desktop rule leaks */
    background:url('/images/banners/hero-main.jpg') 68% 22%/cover no-repeat !important;
    opacity:1 !important;
    transform:scale(1.05);
    transform-origin:68% 25%;
    animation:none;
    will-change:transform;
  }
  .hero.ken-on .hero-img{animation:heroKen 24s ease-in-out infinite alternate}
  @keyframes heroKen{from{transform:scale(1.06) translateY(0)}to{transform:scale(1.14) translateY(-10px)}}

  .hero-fade{
    background:linear-gradient(180deg,
      rgba(29,5,9,.44) 0%,
      rgba(29,5,9,.08) 18%,
      rgba(29,5,9,.14) 34%,
      rgba(29,5,9,.55) 52%,
      rgba(29,5,9,.86) 68%,
      rgba(20,3,7,.97) 84%,
      #140306 100%) !important;
  }
  /* extra focused scrim directly behind the copy block for guaranteed contrast */
  .hero-in::before{
    content:'';position:absolute;left:0;right:0;bottom:0;height:62%;
    background:linear-gradient(180deg,transparent,rgba(16,3,6,.72) 42%,rgba(16,3,6,.94));
    pointer-events:none;z-index:0;
  }
  .hero-in > div:first-child{position:relative;z-index:2}
  .hero-orbs,.hero-stage,.hero-cue{display:none !important}

  /* KEY FIX: size to the real visible viewport, not a fixed 600px */
  .hero-in{
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    min-height:min(86svh, 700px);
    padding:min(34svh,300px) 20px 0 !important;   /* photo breathes above the text */
    gap:0 !important;
  }
  @supports not (height:1svh){ .hero-in{min-height:86vh} }

  .hero-in > div:first-child{display:flex !important;flex-direction:column !important;align-items:center !important;width:100%;justify-content:flex-end}

  .hero-kicker{
    order:1;margin:0 auto 16px;font-size:9.5px;letter-spacing:.22em;padding:8px 16px;
    background:rgba(20,3,7,.42);backdrop-filter:blur(8px);
    border:1px solid rgba(212,175,90,.34);border-radius:999px;
    animation:hUp .8s var(--ease) both .05s;
  }
  .hero h1{
    order:2;
    font-size:clamp(31px,8.6vw,42px) !important;
    line-height:1.1 !important;text-align:center;margin:0 0 13px !important;
    text-shadow:0 2px 30px rgba(0,0,0,.5);
    animation:hUp .9s var(--ease) both .14s;
  }
  .hero-sub{
    order:3;font-size:13px !important;line-height:1.6;text-align:center;
    max-width:340px;margin:0 auto 20px;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
    color:rgba(253,243,221,.92) !important;
    animation:hUp .9s var(--ease) both .22s;
  }
  .hero-cta{order:4;width:100%;gap:10px;margin-bottom:18px;animation:hUp .9s var(--ease) both .3s}
  .hero-cta .btn{
    flex:1 1 100%;width:100%;
    padding:15px 12px;font-size:11.5px;letter-spacing:.17em;
    min-height:50px;               /* thumb-friendly */
    display:flex;align-items:center;justify-content:center;
  }
  .hero-trust{
    order:5;justify-content:center;gap:7px 15px;font-size:8.5px;letter-spacing:.15em;
    margin-bottom:16px;color:rgba(246,232,200,.8);
    animation:hUp .9s var(--ease) both .38s;
  }
  .hero-stats{
    order:6;width:auto !important;
    margin:0 -20px !important;border-radius:0;
    background:linear-gradient(180deg,rgba(15,2,5,.72),rgba(15,2,5,.94)) !important;
    backdrop-filter:blur(12px);
    border-top:1px solid rgba(212,175,90,.26);
    display:flex;animation:hUp .9s var(--ease) both .46s;
  }
  .hstat{flex:1;padding:12px 4px !important;border-left:1px solid rgba(212,175,90,.2);text-align:center}
  .hstat:first-child{border-left:none}
  .hstat b{font-size:20px;display:block}
  .hstat span{font-size:7.5px;letter-spacing:.09em;line-height:1.3;display:block;margin-top:2px}
  @keyframes hUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
}
@media(max-width:390px){
  .hero-in{min-height:min(84svh,640px);padding-top:84px !important}
  .hero h1{font-size:28px !important}
  .hero-sub{font-size:12.4px !important;-webkit-line-clamp:2}
  .hstat b{font-size:17px}
  .hero-cta .btn{min-height:47px;font-size:11px}
}
/* very short phones (landscape / small) */
@media(max-width:820px) and (max-height:620px){
  .hero-in{min-height:auto;padding:80px 20px 0 !important}
  .hero-sub{display:none}
}
@supports (padding:env(safe-area-inset-bottom)){
  @media(max-width:820px){ .hero-stats{padding-bottom:max(0px,env(safe-area-inset-bottom))} }
}
/* the decorative floating logo must never collide with the stats strip on phones */
@media(max-width:820px){ .hero .hero-logo{display:none !important} }

/* ═══════════ 2 · PILLARS — the 4 trust badges, elevated ═══════════ */
.pillars{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  perspective:1400px;
}
.pillar{
  position:relative;isolation:isolate;
  padding:30px 22px 26px;
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,253,249,.96),rgba(247,238,216,.72));
  border:1px solid rgba(212,175,90,.3);
  box-shadow:0 2px 14px rgba(61,14,21,.05);
  overflow:hidden;
  transition:transform .55s var(--ease), box-shadow .55s var(--ease), border-color .4s;
  transform-style:preserve-3d;
  text-align:center;
}
/* gold hairline that traces the card on hover */
.pillar::before{
  content:'';position:absolute;inset:0;border-radius:20px;padding:1px;
  background:linear-gradient(135deg,transparent 20%,var(--gold-2) 45%,#fff3d4 52%,var(--gold) 60%,transparent 80%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:0;transition:opacity .5s var(--ease);pointer-events:none;z-index:3;
}
.pillar:hover::before,.pillar:focus-within::before{opacity:1}
/* soft radial glow that follows the card */
.pl-orb{
  position:absolute;width:210px;height:210px;border-radius:50%;
  top:-90px;right:-70px;
  background:radial-gradient(circle at 40% 40%,rgba(212,175,90,.34),rgba(212,175,90,0) 68%);
  opacity:.55;transition:transform .8s var(--ease),opacity .6s;z-index:0;
}
.pillar:hover .pl-orb{transform:scale(1.5) translate(-16px,18px);opacity:.95}

.pl-icon{
  position:relative;z-index:2;
  width:62px;height:62px;margin:0 auto 16px;
  display:grid;place-items:center;border-radius:18px;
  background:linear-gradient(145deg,#fffaf0,#f2e4c4);
  border:1px solid rgba(212,175,90,.42);
  box-shadow:0 6px 18px rgba(140,105,30,.16), inset 0 1px 0 #fff;
  transition:transform .6s var(--ease), box-shadow .6s;
}
.pl-icon svg{width:29px;height:29px;color:var(--gold);transition:color .4s}
.pillar:hover .pl-icon{transform:translateY(-5px) rotateY(180deg);box-shadow:0 14px 30px rgba(140,105,30,.28)}
.pillar:hover .pl-icon svg{color:var(--maroon)}

/* the stroke-draw animation on the icon path */
.pl-draw{stroke-dasharray:var(--dash,80);stroke-dashoffset:var(--dash,80);}
.pillar.seen .pl-draw{animation:plDraw 1.35s var(--ease) forwards}
@keyframes plDraw{to{stroke-dashoffset:0}}

.pillar b{
  position:relative;z-index:2;display:block;
  font-family:var(--ff-disp);font-size:19.5px;font-weight:600;
  color:var(--maroon-deep);margin-bottom:7px;letter-spacing:.01em;
}
.pillar small{position:relative;z-index:2;display:block;font-size:12.3px;line-height:1.6;color:var(--ink-2)}

/* sweeping shine */
.pl-shine{
  position:absolute;top:0;left:-70%;width:45%;height:100%;z-index:1;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.62),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.pillar:hover .pl-shine{animation:plShine 1.05s var(--ease)}
@keyframes plShine{to{left:125%}}

.pillar:hover{transform:translateY(-8px);box-shadow:0 22px 48px rgba(61,14,21,.16);border-color:rgba(212,175,90,.6)}

/* staggered reveal — works with either .seen (v23) or .in (legacy .rv) */
.pillar{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .55s,border-color .4s}
.pillar.seen,.pillar.in{opacity:1;transform:none}
.pillar.seen:nth-child(1),.pillar.in:nth-child(1){transition-delay:0s}
.pillar.seen:nth-child(2),.pillar.in:nth-child(2){transition-delay:.09s}
.pillar.seen:nth-child(3),.pillar.in:nth-child(3){transition-delay:.18s}
.pillar.seen:nth-child(4),.pillar.in:nth-child(4){transition-delay:.27s}
/* icon stroke draws on either trigger */
.pillar.in .pl-draw{animation:plDraw 1.35s var(--ease) forwards}

@media(max-width:960px){ .pillars{grid-template-columns:repeat(2,1fr);gap:13px} }
@media(max-width:560px){
  .pillars{grid-template-columns:repeat(2,1fr);gap:10px}
  .pillar{padding:20px 13px 18px;border-radius:16px}
  .pl-icon{width:48px;height:48px;margin-bottom:11px;border-radius:14px}
  .pl-icon svg{width:23px;height:23px}
  .pillar b{font-size:15px;line-height:1.25;margin-bottom:5px}
  .pillar small{font-size:10.8px;line-height:1.5}
  .pillar:hover{transform:none}
}

/* ═══════════ 3 · REVIEWS — photo UGC ═══════════ */
.ugc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.ugc-score{display:flex;align-items:center;gap:13px}
.ugc-score .big{font-family:var(--ff-disp);font-size:46px;line-height:1;color:var(--maroon-deep);font-weight:600}
.ugc-score .stars-lg{color:var(--gold);font-size:16px;letter-spacing:2px}
.ugc-score small{display:block;font-size:11.5px;color:var(--ink-3);margin-top:3px}

/* masonry-ish photo wall */
.ugc-wall{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(216px,1fr));
  gap:14px;
}
.ugc-card{
  position:relative;border-radius:18px;overflow:hidden;
  background:var(--white);border:1px solid var(--line);
  box-shadow:0 2px 12px rgba(61,14,21,.05);
  opacity:0;transform:translateY(24px) scale(.985);
  transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .5s;
  cursor:pointer;
}
.ugc-card.seen,.ugc-card.in{opacity:1;transform:none}
.ugc-card:hover{box-shadow:0 20px 44px rgba(61,14,21,.17);transform:translateY(-6px)}

.ugc-ph{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--cream-2)}
.ugc-ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.ugc-card:hover .ugc-ph img{transform:scale(1.07)}
.ugc-ph::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 42%,rgba(29,5,9,.82) 100%);
}
.ugc-badge{
  position:absolute;top:11px;left:11px;z-index:2;
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 10px;border-radius:999px;
  background:rgba(20,3,7,.6);backdrop-filter:blur(8px);
  border:1px solid rgba(212,175,90,.4);
  font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#f6e8c8;
}
.ugc-badge i{font-style:normal;color:#7ee0a1}
.ugc-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:13px 14px}
.ugc-cap .st{color:var(--gold-2);font-size:12px;letter-spacing:1.5px;margin-bottom:4px}
.ugc-cap b{display:block;color:#fff;font-family:var(--ff-disp);font-size:16.5px;font-weight:600;line-height:1.2}
.ugc-cap small{display:block;color:rgba(246,232,200,.78);font-size:10.5px;margin-top:1px}
.ugc-body{padding:13px 15px 15px}
.ugc-body p{font-size:13px;line-height:1.62;color:var(--ink-2);margin:0}
.ugc-prod{
  display:flex;align-items:center;gap:9px;margin-top:11px;padding-top:11px;
  border-top:1px dashed var(--line);
}
.ugc-prod img{width:34px;height:34px;border-radius:9px;object-fit:cover;border:1px solid var(--line)}
.ugc-prod span{font-size:11px;color:var(--ink-3);line-height:1.3}
.ugc-prod b{display:block;font-size:12px;color:var(--maroon);font-weight:600}

@media(max-width:560px){
  .ugc-wall{grid-template-columns:repeat(2,1fr);gap:10px}
  .ugc-body{padding:10px 11px 12px}
  .ugc-body p{font-size:11.6px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .ugc-cap b{font-size:14px}
  .ugc-card:hover{transform:none}
  .ugc-score .big{font-size:37px}
}

/* review marquee polish */
.rev-photo{border-radius:12px;transition:transform .8s var(--ease)}
.rev-card:hover .rev-photo{transform:scale(1.05)}

/* ═══════════ 4 · SIDEBAR DRAWER ═══════════ */
@media(max-width:820px){
  .nav{
    display:block !important;
    position:fixed !important;top:0 !important;left:0 !important;
    width:min(87vw,376px) !important;right:auto !important;
    height:100% !important;height:100dvh !important;
    background:linear-gradient(170deg,#2a0a11 0%,#3d0e15 40%,#571620 100%) !important;
    border:none !important;border-right:1px solid rgba(212,175,90,.24) !important;
    box-shadow:none !important;
    padding:0 !important;
    z-index:1400 !important;
    transform:translateX(-102%);
    transition:transform .5s var(--ease),box-shadow .5s;
    overflow-y:auto;overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    visibility:hidden;
    padding-bottom:0 !important;
  }
  .nav.open{transform:translateX(0);visibility:visible;box-shadow:34px 0 80px rgba(0,0,0,.5)}

  .nav-scroll{
    flex-direction:column !important;align-items:stretch !important;
    gap:0 !important;padding:0 0 34px !important;
  }

  /* drawer header */
  .dw-head{
    position:relative;padding:26px 20px 20px;
    border-bottom:1px solid rgba(212,175,90,.2);
    background:radial-gradient(120% 90% at 0% 0%,rgba(212,175,90,.2),transparent 62%);
    overflow:hidden;
  }
  .dw-head::after{
    content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;
    background:radial-gradient(circle,rgba(212,175,90,.24),transparent 68%);
  }
  .dw-head img{width:52px;margin-bottom:11px;filter:drop-shadow(0 3px 10px rgba(0,0,0,.4))}
  .dw-head b{display:block;font-family:var(--ff-disp);font-size:24px;color:#f7ecd2;font-weight:600;line-height:1.1}
  .dw-head small{display:block;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(212,175,90,.9);margin-top:5px}

  .dw-sec{
    padding:16px 20px 7px;font-size:9px;letter-spacing:.26em;text-transform:uppercase;
    color:rgba(212,175,90,.72);
  }

  /* each nav row = image tile + label */
  .nav .nav-scroll > a, .nav .nav-scroll > button.nav-cats, .nav .dw-foot > a{
    display:flex !important;align-items:center;gap:14px;
    padding:11px 20px !important;
    color:#f2e5cc !important;font-size:15.5px;font-weight:500;
    border:none;width:100%;text-align:left;
    position:relative;
    opacity:0;transform:translateX(-16px);
    transition:background .3s,color .3s;
  }
  /* when the drawer is open every row animates in */
  .nav.open .nav-scroll > a,
  .nav.open .nav-scroll > button.nav-cats,
  .nav.open .dw-foot > a{animation:dwIn .5s var(--ease) forwards}
  @keyframes dwIn{to{opacity:1;transform:none}}
  .nav.open .nav-scroll > *:nth-child(1){animation-delay:.04s}
  .nav.open .nav-scroll > *:nth-child(2){animation-delay:.08s}
  .nav.open .nav-scroll > *:nth-child(3){animation-delay:.12s}
  .nav.open .nav-scroll > *:nth-child(4){animation-delay:.16s}
  .nav.open .nav-scroll > *:nth-child(5){animation-delay:.20s}
  .nav.open .nav-scroll > *:nth-child(6){animation-delay:.24s}
  .nav.open .nav-scroll > *:nth-child(7){animation-delay:.28s}
  .nav.open .nav-scroll > *:nth-child(8){animation-delay:.32s}
  .nav.open .nav-scroll > *:nth-child(9){animation-delay:.36s}
  .nav.open .dw-foot > a:nth-child(1){animation-delay:.40s}
  .nav.open .dw-foot > a:nth-child(2){animation-delay:.43s}
  .nav.open .dw-foot > a:nth-child(3){animation-delay:.46s}
  .nav.open .dw-foot > a:nth-child(4){animation-delay:.49s}
  /* SAFETY: if animations are disabled the rows must still be visible */
  @media (prefers-reduced-motion: reduce){
    .nav.open .nav-scroll > a,
    .nav.open .nav-scroll > button.nav-cats,
    .nav.open .dw-foot > a{opacity:1 !important;transform:none !important;animation:none !important}
  }

  .dw-ic{
    flex:0 0 46px;width:46px;height:46px;border-radius:13px;overflow:hidden;
    background:rgba(255,255,255,.05);border:1px solid rgba(212,175,90,.3);
    display:grid;place-items:center;position:relative;
    transition:transform .45s var(--ease),border-color .35s,box-shadow .45s;
  }
  .dw-ic img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
  .nav a:active .dw-ic{transform:scale(.94)}
  .nav a:hover .dw-ic,.nav a.active .dw-ic{
    border-color:var(--gold-2);box-shadow:0 6px 20px rgba(212,175,90,.3);
  }
  .nav a:hover .dw-ic img{transform:scale(1.14)}
  .nav .nav-scroll a,.nav .nav-scroll button{text-transform:none !important;letter-spacing:0 !important;font-family:var(--ff-body) !important}
  .nav .nav-scroll a::after{display:none !important}
  .dw-tx{flex:1;min-width:0}
  .dw-tx b{display:block;font-size:15.5px;font-weight:600;color:#f7ecd2;line-height:1.25}
  .dw-tx small{display:block;font-size:10.5px;color:rgba(232,214,180,.62);margin-top:1px;line-height:1.3}
  .dw-ar{opacity:.42;flex:0 0 auto;transition:transform .35s var(--ease),opacity .3s}
  .nav a:hover .dw-ar{transform:translateX(4px);opacity:.9}

  .nav a.active{background:linear-gradient(90deg,rgba(212,175,90,.19),transparent 82%)}
  .nav a.active::before{
    content:'';position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;
    background:linear-gradient(180deg,var(--gold-2),var(--gold));
  }
  .nav a:active{background:rgba(212,175,90,.13)}

  /* the jeweller CTA gets special treatment */
  .nav a.nav-jwl{
    margin:16px 20px 0;padding:15px 17px !important;border-radius:15px;
    background:linear-gradient(120deg,var(--gold),#a5761f 55%,var(--gold-2));
    color:#2a0a11 !important;font-weight:700;justify-content:center;
    box-shadow:0 10px 26px rgba(185,138,47,.36);
    width:auto !important;
  }
  .nav a.nav-jwl .dw-tx b{color:#2a0a11}
  .nav a.nav-jwl .dw-tx small{color:rgba(42,10,17,.72)}
  .nav a.nav-jwl::before{display:none}

  .dw-foot{padding:20px 20px calc(96px + env(safe-area-inset-bottom,0px));margin-top:8px;border-top:1px solid rgba(212,175,90,.18)}
  .dw-foot a{padding:9px 0 !important;font-size:13px !important;color:rgba(232,214,180,.72) !important}
  .dw-call{
    display:flex;align-items:center;justify-content:center;gap:9px;
    padding:13px;border-radius:13px;margin-top:10px;
    border:1px solid rgba(212,175,90,.34);color:var(--gold-2) !important;
    font-size:13.5px;letter-spacing:.05em;
  }


  /* ══ drawer v24 — hierarchy: one hero row, a tile grid, quiet utility rows ══ */
  .nav .nav-scroll > a.dw-row,.nav .nav-scroll > a.nav-jwl{align-items:center}

  /* primary row keeps the photo tile */
  .dw-hero-row{padding:12px 20px !important}

  /* category tiles — 4 destinations in the height of one old row */
  .dw-tiles{
    display:grid;grid-template-columns:repeat(4,1fr);gap:8px;
    padding:4px 20px 2px;
  }
  .dw-tile{
    position:relative;display:block !important;width:100% !important;
    aspect-ratio:1/1;border-radius:14px;overflow:hidden;padding:0 !important;
    border:1px solid rgba(212,175,90,.26);
    background:rgba(255,255,255,.04);
    opacity:0;transform:translateY(10px) scale(.96);
    transition:border-color .35s,box-shadow .45s var(--ease),transform .45s var(--ease);
  }
  .dw-tile img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    transition:transform .7s var(--ease);
  }
  .dw-tile span{
    position:absolute;left:0;right:0;bottom:0;z-index:2;
    padding:14px 3px 5px;text-align:center;
    font-size:9.5px;font-weight:600;letter-spacing:.04em;color:#f7ecd2;
    background:linear-gradient(180deg,transparent,rgba(16,3,6,.88) 62%);
  }
  .nav.open .dw-tiles .dw-tile{animation:dwTile .5s var(--ease) forwards}
  @keyframes dwTile{to{opacity:1;transform:none}}
  .nav.open .dw-tile:nth-child(1){animation-delay:.14s}
  .nav.open .dw-tile:nth-child(2){animation-delay:.19s}
  .nav.open .dw-tile:nth-child(3){animation-delay:.24s}
  .nav.open .dw-tile:nth-child(4){animation-delay:.29s}
  .dw-tile:active{transform:scale(.95)}
  .dw-tile:hover{border-color:var(--gold-2);box-shadow:0 8px 22px rgba(212,175,90,.26)}
  .dw-tile:hover img{transform:scale(1.12)}

  /* "All 17 categories" — a quiet full-width pill, not a photo row */
  .nav .nav-scroll > button.dw-more{
    display:flex !important;align-items:center;justify-content:space-between;
    gap:10px;margin:10px 20px 2px;width:auto !important;
    padding:11px 15px !important;border-radius:12px;
    background:rgba(212,175,90,.09);border:1px solid rgba(212,175,90,.26) !important;
    color:#e9d9b6 !important;font-size:13px !important;font-weight:600;
  }
  .nav .nav-scroll > button.dw-more:active{background:rgba(212,175,90,.17)}
  .dw-more .dw-ar{opacity:.75}
  .dw-more .dt-more-lbl{display:none}
  .nav-cats.open .dw-ar{transform:rotate(180deg)}

  /* expandable full category list inside the drawer */
  .dw-catlist{
    display:grid;grid-template-columns:1fr 1fr;gap:6px;
    margin:0 20px;padding:0 !important;
    max-height:0;overflow:hidden;opacity:0;
    transition:max-height .5s var(--ease),opacity .35s var(--ease),margin .4s var(--ease);
  }
  .dw-catlist.open{max-height:620px;opacity:1;margin:8px 20px 2px}
  .nav .nav-scroll .dw-catlist a{
    display:flex !important;align-items:center;gap:9px;
    padding:7px 9px !important;border-radius:11px;width:100% !important;
    background:rgba(255,255,255,.045);border:1px solid rgba(212,175,90,.14);
    font-size:12px !important;color:#e8d8b8 !important;
    opacity:1 !important;transform:none !important;animation:none !important;
  }
  .dw-catlist a img{width:26px;height:26px;border-radius:7px;object-fit:cover;flex:0 0 26px}
  .dw-catlist a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .dw-catlist a:active{background:rgba(212,175,90,.16)}

  /* utility rows: glyph medallion instead of a competing photograph */
  .dw-lite{padding:9px 20px !important}
  .dw-gi{
    flex:0 0 38px;width:38px;height:38px;border-radius:11px;
    display:grid;place-items:center;font-size:16px;color:var(--gold-2);
    background:linear-gradient(150deg,rgba(212,175,90,.16),rgba(212,175,90,.05));
    border:1px solid rgba(212,175,90,.24);
    transition:transform .4s var(--ease),border-color .35s,box-shadow .4s;
  }
  .nav a:hover .dw-gi{border-color:var(--gold-2);box-shadow:0 6px 16px rgba(212,175,90,.22);transform:translateY(-1px)}
  .nav a:active .dw-gi{transform:scale(.94)}
  .dw-lite .dw-tx b{font-size:14.5px}
  .dw-lite .dw-tx small{font-size:10.5px}

  /* jeweller CTA — no photo, centred, unmistakably the odd one out */
  .nav a.nav-jwl{margin:18px 20px 4px;text-align:center}
  .nav a.nav-jwl .dw-tx{text-align:center}
  .nav a.nav-jwl .dw-tx b{font-size:14.5px}
  .nav a.nav-jwl .dw-tx small{font-size:10.5px}
  .nav a.nav-jwl .dw-ar{opacity:.65}

  /* footer: 3 utility links on one row + call button */
  .dw-flinks{display:flex;gap:6px;justify-content:space-between}
  .nav .dw-foot .dw-flinks a{
    flex:1;text-align:center;padding:10px 4px !important;border-radius:10px;
    font-size:11.5px !important;background:rgba(255,255,255,.04);
    border:1px solid rgba(212,175,90,.14);
  }
  /* must outrank `.nav .nav-scroll > a{display:flex !important}` */
  .nav .nav-scroll > a.b2b-only-hide,
  .nav .dw-foot > a.b2b-only-hide,
  a.b2b-only-hide{display:none !important}

  .nav-toggle{display:flex;z-index:1500;position:relative}
  /* category mega-panel rendered inside the drawer stays fully visible */
  .nav .mega-panel a,.nav .drop-menu a{opacity:1 !important;transform:none !important;animation:none !important}
  .drawer-scrim{
    position:fixed;inset:0;z-index:1350;
    background:rgba(20,3,7,.62);backdrop-filter:blur(4px);
    opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility .45s;
  }
  .drawer-scrim.on{opacity:1;visibility:visible}
  body.drawer-open{overflow:hidden}
}
/* desktop keeps the horizontal bar — hide drawer chrome */
@media(min-width:821px){
  /* drawer-only chrome must never appear in the horizontal desktop bar */
  .dw-head,.dw-sec,.dw-foot,.dw-ic,.dw-ar,.drawer-scrim,
  .dw-tiles,.dw-tile,.dw-gi,.dw-catlist,
  .dw-foot .dw-flinks,.dw-foot a,.dw-call{display:none !important}   /* v57: these live in the mobile drawer + footer, not the desktop header */
  .dw-tx small{display:none}
  /* the "All 17 categories" pill reverts to a plain nav item */
  .nav .nav-scroll > button.dw-more{
    margin:0 !important;padding:10px 13px !important;width:auto !important;
    background:transparent !important;border:0 !important;
    color:var(--ink) !important;font-size:12px !important;
  }
  .nav .nav-scroll > button.dw-more:hover{color:var(--maroon) !important}
  .dw-more .dw-more-lbl{display:none !important}
  .dw-more .dt-more-lbl{display:inline !important}
}

/* ═══════════ 5 · B2B — marketing blocks under the form ═══════════ */
.wp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.wp-card{
  position:relative;isolation:isolate;overflow:hidden;
  padding:26px 20px 22px;border-radius:19px;
  background:linear-gradient(180deg,rgba(255,253,249,.97),rgba(247,238,216,.68));
  border:1px solid rgba(212,175,90,.3);
  box-shadow:0 2px 12px rgba(61,14,21,.05);
  opacity:0;transform:translateY(26px);
  transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .5s,border-color .4s;
}
.wp-card.seen,.wp-card.in{opacity:1;transform:none}
.wp-card:hover{transform:translateY(-7px);box-shadow:0 22px 46px rgba(61,14,21,.16);border-color:rgba(212,175,90,.58)}
.wp-ic{
  display:grid;place-items:center;width:52px;height:52px;margin-bottom:14px;
  border-radius:15px;font-size:23px;
  background:linear-gradient(145deg,#fffaf0,#f0e0bd);
  border:1px solid rgba(212,175,90,.4);
  box-shadow:0 5px 15px rgba(140,105,30,.15),inset 0 1px 0 #fff;
  transition:transform .55s var(--ease);
}
.wp-card:hover .wp-ic{transform:translateY(-4px) rotate(-7deg) scale(1.07)}
.wp-card b{display:block;font-family:var(--ff-disp);font-size:18.5px;font-weight:600;color:var(--maroon-deep);margin-bottom:7px;line-height:1.24}
.wp-card p{font-size:12.4px;line-height:1.62;color:var(--ink-2);margin:0}
.wp-shine{position:absolute;top:0;left:-70%;width:42%;height:100%;z-index:1;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);pointer-events:none}
.wp-card:hover .wp-shine{animation:plShine 1s var(--ease)}
.wp-num{
  position:absolute;right:14px;top:10px;z-index:0;
  font-family:var(--ff-disp);font-size:52px;line-height:1;
  color:rgba(185,138,47,.11);font-weight:600;pointer-events:none;
}
@media(max-width:1080px){ .wp-grid{grid-template-columns:repeat(2,1fr)} }
@media(max-width:560px){
  .wp-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .wp-card{padding:17px 13px 15px;border-radius:15px}
  .wp-ic{width:42px;height:42px;font-size:19px;margin-bottom:10px;border-radius:12px}
  .wp-card b{font-size:14.4px;margin-bottom:5px}
  .wp-card p{font-size:11px;line-height:1.5}
  .wp-num{font-size:38px}
  .wp-card:hover{transform:none}
}

/* form-first emphasis */
.b2b-form-card{position:relative;scroll-margin-top:96px}
.bf-head h2{font-family:var(--ff-disp);font-size:clamp(26px,4vw,34px);color:var(--maroon-deep);margin:4px 0 6px}
.b2b-step{
  display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 2px;
}
.b2b-step span{
  display:inline-flex;align-items:center;gap:6px;
  font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  padding:6px 12px;border-radius:999px;
  background:var(--gold-faint);border:1px solid rgba(212,175,90,.34);color:#7a5c17;
}

/* ═══════════ 6 · B2B PORTAL — bullion + filters ═══════════ */
.pf-bar{
  display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;
  padding:15px 16px;border-radius:16px;margin-bottom:18px;
  background:linear-gradient(180deg,rgba(255,253,249,.97),rgba(247,238,216,.7));
  border:1px solid rgba(212,175,90,.3);
}
.pf-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.pf-f > label{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.pf-f select,.pf-f input{
  padding:9px 12px;border-radius:11px;border:1px solid var(--line);
  background:var(--white);font-size:13.5px;min-height:42px;
}
.pf-w{display:flex;align-items:center;gap:6px}
.pf-w input{width:82px}
.pf-chips{display:flex;gap:7px;flex-wrap:wrap}
.pf-chip{
  padding:8px 13px;border-radius:999px;cursor:pointer;
  border:1px solid var(--line);background:var(--white);
  font-size:12px;letter-spacing:.03em;color:var(--ink-2);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),filter .3s var(--ease);min-height:38px;display:inline-flex;align-items:center;
}
.pf-chip:hover{border-color:var(--gold-soft);background:var(--gold-faint)}
.pf-chip.on{background:linear-gradient(120deg,var(--gold),#a5761f);color:#fff;border-color:transparent;box-shadow:0 5px 14px rgba(185,138,47,.32)}
.pf-count{margin-left:auto;font-size:12px;color:var(--ink-3);white-space:nowrap}
.pf-reset{font-size:11.5px;color:var(--maroon);text-decoration:underline;cursor:pointer;background:none;border:none}
@media(max-width:640px){
  .pf-bar{padding:12px;gap:8px;border-radius:14px}
  .pf-f{flex:1 1 46%}
  .pf-f select,.pf-f input{width:100%;font-size:13px;min-height:44px}
  .pf-w input{width:100%}
  .pf-count{width:100%;margin:2px 0 0}
  .pf-chip{font-size:11.4px;padding:7px 11px;min-height:36px}
}

/* the hero CTA card for design selection in the portal */
.ds-hero{
  position:relative;overflow:hidden;
  border-radius:22px;padding:30px 28px;margin-bottom:20px;
  background:linear-gradient(125deg,#3d0e15 0%,#571620 46%,#6e1e2a 100%);
  border:1px solid rgba(212,175,90,.36);
  box-shadow:0 20px 50px rgba(61,14,21,.3);
}
.ds-hero::before{
  content:'';position:absolute;right:-70px;top:-70px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,90,.3),transparent 68%);
  animation:dsPulse 6s ease-in-out infinite;
}
@keyframes dsPulse{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.22);opacity:1}}
.ds-hero .k{font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-2)}
.ds-hero h3{font-family:var(--ff-disp);font-size:clamp(24px,3.4vw,32px);color:#f9efd8;margin:7px 0 8px;font-weight:600;line-height:1.16}
.ds-hero p{font-size:13.4px;line-height:1.62;color:rgba(246,232,200,.84);max-width:640px;margin-bottom:18px}
.ds-hero .btn{position:relative;z-index:2}
.ds-hero-row{display:flex;gap:11px;flex-wrap:wrap;align-items:center}
.ds-pill{
  display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.07);border:1px solid rgba(212,175,90,.3);
  font-size:11.5px;color:#f0e0bd;backdrop-filter:blur(6px);
}
@media(max-width:560px){
  .ds-hero{padding:22px 18px;border-radius:18px}
  .ds-hero p{font-size:12.6px}
  .ds-hero .btn{width:100%;justify-content:center}
}

/* bullion block inside dashboard */
.bl-rows{display:grid;gap:10px}
.bl-row{
  display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;
  padding:13px 15px;border-radius:14px;
  background:var(--white);border:1px solid var(--line);
  transition:border-color .3s,box-shadow .3s,transform .3s var(--ease);
}
.bl-row:hover{border-color:var(--gold-soft);box-shadow:0 8px 22px rgba(61,14,21,.08);transform:translateY(-2px)}
.bl-row .nm b{display:block;font-size:14.5px;color:var(--maroon-deep)}
.bl-row .nm small{font-size:10.5px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase}
.bl-row .pr{text-align:right}
.bl-row .pr b{display:block;font-size:17px;color:var(--ink);font-variant-numeric:tabular-nums}
.bl-row .pr small{font-size:10.5px;color:var(--ink-3)}
.bl-up{color:var(--ok)!important} .bl-dn{color:var(--bad)!important}
.bl-act{display:flex;gap:7px}
.bl-act .btn{padding:8px 14px;font-size:11.5px;min-height:38px}
@media(max-width:560px){
  .bl-row{grid-template-columns:1fr auto;gap:9px;padding:11px 12px}
  .bl-act{grid-column:1/-1;justify-content:stretch}
  .bl-act .btn{flex:1;justify-content:center}
}

/* generic reveal helper */
.rvl{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.rvl.seen,.rvl.in{opacity:1;transform:none}

/* touch targets everywhere on mobile */
@media(max-width:820px){
  .btn{min-height:46px}
  .btn-sm{min-height:40px}
  .icon-btn{min-width:44px;min-height:44px}
}


/* ── failsafe: if JS or IntersectionObserver never runs, show everything ── */
@media (scripting: none){
  .pillar,.wp-card,.ugc-card,.rvl,.rv{opacity:1 !important;transform:none !important}
}
.js-reveal-off .pillar,.js-reveal-off .wp-card,.js-reveal-off .ugc-card,
.js-reveal-off .rvl,.js-reveal-off .rv{opacity:1 !important;transform:none !important}

/* ═══════════════════════════════════════════════════════════════════
   v24 · LUXURY MOTION-POSTER BANNERS + PARTNER / JEWELLER ACTIONS
   Cinematic depth on every banner, tuned so mobile stays at 60fps.
   All heavy effects are GPU-friendly (transform/opacity only) and are
   disabled under prefers-reduced-motion.
   ═══════════════════════════════════════════════════════════════════ */

/* ── 1 · shared cinematic primitives ───────────────────────────── */
@keyframes shvKen      { 0%{transform:scale(1.06) translate3d(0,0,0)} 100%{transform:scale(1.16) translate3d(-1.4%,-1.6%,0)} }
@keyframes shvFoil     { 0%{background-position:-140% 0} 100%{background-position:240% 0} }
@keyframes shvRise     { 0%{opacity:0;transform:translate3d(0,20px,0)} 100%{opacity:1;transform:none} }
@keyframes shvGlowPulse{ 0%,100%{opacity:.34} 50%{opacity:.62} }
@keyframes shvDust     { 0%{transform:translate3d(0,0,0);opacity:0} 12%{opacity:.85} 100%{transform:translate3d(14px,-120px,0);opacity:0} }

/* animated gold-foil sweep — the signature "motion poster" cue */
.foil-txt,em.foil-txt,.hero h1 em.foil-txt,h1 .foil-txt,h3 .foil-txt{
  background:linear-gradient(100deg,
    var(--gold-soft) 0%, #fff6dd 18%, var(--gold-2) 34%,
    #fffaf0 46%, var(--gold-2) 58%, var(--gold-soft) 78%, #fff6dd 100%);
  background-size:240% 100%;
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
  animation:shvFoil 7s linear infinite;
}

/* floating gold dust — pure CSS, 6 motes, no JS cost */
.dust{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
.dust i{
  animation-play-state:paused;
  position:absolute;bottom:-8px;width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle,#ffeec2,rgba(212,175,90,0));
  animation:shvDust linear infinite;
}
.dust i:nth-child(1){left:12%;animation-duration:9s;animation-delay:0s}
.dust i:nth-child(2){left:29%;animation-duration:11s;animation-delay:1.6s;width:2px;height:2px}
.dust i:nth-child(3){left:47%;animation-duration:8.5s;animation-delay:3.1s}
.dust i:nth-child(4){left:63%;animation-duration:12s;animation-delay:.8s;width:4px;height:4px}
.dust i:nth-child(5){left:78%;animation-duration:10s;animation-delay:2.4s;width:2px;height:2px}
.dust i:nth-child(6){left:91%;animation-duration:9.5s;animation-delay:4.2s}

/* ── 2 · page-top banners (14 routes) — depth, light, ornament ─── */
.page-hero{
  background:
    radial-gradient(120% 150% at 88% -20%, rgba(23,121,92,.30) 0%, transparent 52%),
    radial-gradient(90% 130% at 0% 120%, rgba(212,175,90,.20) 0%, transparent 58%),
    linear-gradient(140deg,#2a090e 0%,var(--maroon-deep) 42%,var(--maroon-2) 100%) !important;
  padding:clamp(52px,7vw,86px) 0 clamp(48px,6vw,74px) !important;
  isolation:isolate;
}
/* soft cinematic light shaft */
.page-hero::before{
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(104deg,transparent 34%,rgba(255,244,214,.10) 47%,transparent 60%);
}
.page-hero.ken-on::before{animation:shvGlowPulse 9s ease-in-out infinite}
/* only lift the content container — never the absolutely-placed decor
   (.ph-mark / .dust), which this rule used to knock back into flow */
.page-hero > .container{position:relative;z-index:1}
/* trust row shares the container gutter so it lines up under the copy */
.page-hero > .ph-trust{
  position:relative;z-index:1;
  width:min(1240px,92vw);margin-left:auto;margin-right:auto;
}
.page-hero h1{
  text-shadow:0 2px 26px rgba(0,0,0,.45);
  letter-spacing:-.012em;
}
.page-hero h1 em,.page-hero h1 .disp-italic{font-style:italic}
.page-hero .crumbs{opacity:.82;letter-spacing:.16em}
.page-hero p{color:rgba(250,240,218,.84) !important;line-height:1.68}
@media (prefers-reduced-motion:reduce){
  .page-hero::before{animation:none}
  .foil-txt,em.foil-txt,.hero h1 em.foil-txt,h1 .foil-txt,h3 .foil-txt{animation:none !important}
  .dust{display:none}
}

/* ── 3 · poster / collection banners — glass, lift, sheen ──────── */
.poster{
  box-shadow:0 18px 46px rgba(45,10,16,.20),0 2px 8px rgba(45,10,16,.10);
  transition:transform .6s var(--ease),box-shadow .6s var(--ease);
  will-change:transform;
}
.poster::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(108deg,transparent 38%,rgba(255,255,255,.16) 50%,transparent 62%);
  transform:translateX(-120%);
  transition:transform .95s var(--ease);
}
.poster:hover::after{transform:translateX(120%)}
.poster:hover{transform:translateY(-6px);box-shadow:0 30px 68px rgba(45,10,16,.30)}
.poster img{will-change:transform}
.poster .p-body,.poster .p-in{position:relative;z-index:3}
/* gold hairline frame that draws in on hover */
.poster .p-frame{
  content:'';position:absolute;inset:13px;z-index:3;pointer-events:none;
  border:1px solid rgba(233,206,148,.34);border-radius:calc(var(--r-lg) - 9px);
  opacity:0;transform:scale(1.015);
  transition:opacity .5s var(--ease),transform .5s var(--ease);
}
.poster:hover .p-frame{opacity:1;transform:none}

/* ── 4 · partner form: WhatsApp + existing-partner actions ─────── */
.alt-actions{margin-top:22px}
.alt-div{display:flex;align-items:center;gap:14px;margin:0 0 16px}
.alt-div i{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.alt-div b{
  font-family:var(--ff-label);font-size:10.5px;letter-spacing:.28em;
  text-transform:uppercase;color:var(--ink-3);font-weight:400;
}
.alt-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.alt-btn{
  display:flex;align-items:center;gap:13px;width:100%;text-align:left;
  padding:15px 16px;border-radius:16px;cursor:pointer;
  border:1.5px solid var(--line);background:var(--ivory);
  position:relative;overflow:hidden;isolation:isolate;
  transition:transform .35s var(--ease),box-shadow .4s var(--ease),border-color .35s;
}
.alt-btn::before{
  content:'';position:absolute;inset:0;z-index:-1;opacity:0;
  transition:opacity .4s var(--ease);
}
.alt-btn:hover{transform:translateY(-3px)}
.alt-btn:active{transform:translateY(-1px) scale(.995)}
.alt-ic{
  flex:0 0 44px;width:44px;height:44px;border-radius:13px;
  display:grid;place-items:center;transition:transform .45s var(--ease);
}
.alt-ic svg{width:23px;height:23px}
.alt-btn:hover .alt-ic{transform:scale(1.07) rotate(-4deg)}
.alt-tx{flex:1;min-width:0}
.alt-tx b{display:block;font-size:14px;font-weight:700;line-height:1.28;margin-bottom:3px}
.alt-tx small{display:block;font-size:11.2px;line-height:1.45;color:var(--ink-3)}
.alt-go{flex:0 0 auto;font-size:17px;opacity:.5;transition:transform .35s var(--ease),opacity .3s}
.alt-btn:hover .alt-go{transform:translateX(4px);opacity:1}

/* WhatsApp — the only green on the site, so it reads instantly */
.alt-wa{border-color:rgba(18,140,126,.34)}
.alt-wa::before{background:linear-gradient(135deg,rgba(37,211,102,.10),rgba(18,140,126,.05))}
.alt-wa:hover{border-color:var(--wa-deep);box-shadow:0 14px 34px rgba(18,140,126,.20)}
.alt-wa:hover::before{opacity:1}
.alt-wa .alt-ic{background:linear-gradient(145deg,#25d366,#128c7e);color:#fff;box-shadow:0 6px 16px rgba(18,140,126,.32)}
.alt-wa .alt-tx b{color:#0d5c4f}

/* existing partner — emerald/ink, clearly secondary to the gold CTA */
.alt-login{border-color:rgba(15,91,70,.26)}
.alt-login::before{background:linear-gradient(135deg,rgba(15,91,70,.09),rgba(212,175,90,.06))}
.alt-login:hover{border-color:var(--emerald-2);box-shadow:0 14px 34px rgba(15,91,70,.18)}
.alt-login:hover::before{opacity:1}
.alt-login .alt-ic{
  background:linear-gradient(145deg,var(--emerald-soft),#eaf5f0);
  color:var(--emerald);border:1px solid rgba(15,91,70,.20);
}
.alt-login .alt-tx b{color:var(--emerald)}

@media(max-width:620px){
  .alt-grid{grid-template-columns:1fr}
  .alt-tx small{font-size:11.5px}
}

/* ── 5 · "Are you a jeweller?" prompt in the login modal ───────── */
.jwl-prompt{
  display:flex;align-items:center;gap:12px;width:100%;text-align:left;
  margin-top:18px;padding:14px 15px;border-radius:15px;cursor:pointer;
  border:1.5px dashed rgba(185,138,47,.44);
  background:linear-gradient(135deg,var(--gold-faint),rgba(247,241,228,.6));
  transition:transform .35s var(--ease),box-shadow .4s var(--ease),border-color .35s,background .35s;
}
.jwl-prompt:hover{
  transform:translateY(-2px);border-style:solid;border-color:var(--gold);
  box-shadow:0 12px 30px rgba(185,138,47,.22);
}
.jwl-prompt:active{transform:translateY(0) scale(.995)}
.jp-ic{
  flex:0 0 38px;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;
  font-size:17px;color:#5c4310;
  background:linear-gradient(145deg,#fff6e0,var(--gold-soft));
  border:1px solid rgba(185,138,47,.34);
  transition:transform .45s var(--ease);
}
.jwl-prompt:hover .jp-ic{transform:rotate(-8deg) scale(1.06)}
.jp-tx{flex:1;min-width:0}
.jp-tx b{display:block;font-size:13.5px;font-weight:700;color:var(--maroon);line-height:1.25}
.jp-tx small{display:block;font-size:11px;line-height:1.45;color:var(--ink-3);margin-top:2px}
.jp-go{flex:0 0 auto;color:var(--gold);font-size:16px;transition:transform .35s var(--ease)}
.jwl-prompt:hover .jp-go{transform:translateX(4px)}

@media (prefers-reduced-motion:reduce){
  .alt-btn,.jwl-prompt,.poster,.alt-ic,.jp-ic{transition:none !important}
  .alt-btn:hover,.jwl-prompt:hover,.poster:hover{transform:none !important}
}

/* ── 6 · cinematic slow zoom on banner imagery (desktop + carousel) ──
   Mobile hero already has heroKen inside its media query; this adds the
   same film-still drift to the desktop hero and the poster carousel.   */
@media (min-width:821px){
  .hero.ken-on .hero-img{
    transform-origin:62% 40%;
    animation:shvKen 26s ease-in-out infinite alternate;
    /* promote to its own compositor layer so the zoom never repaints
       the hero's text/photo beneath it */
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
}
/* carousel: only the visible slide animates, so idle slides cost nothing */
.c-slide img{
  transform:scale(1.04) translateZ(0);
  transform-origin:center 42%;
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.ken-on .c-slide.on img{
  animation:shvKen 22s ease-in-out infinite alternate;
}
/* elegant staged reveal of slide copy */
.c-slide.on .c-body > *{animation:shvRise .9s var(--ease) both}
.c-slide.on .c-body > *:nth-child(1){animation-delay:.06s}
.c-slide.on .c-body > *:nth-child(2){animation-delay:.16s}
.c-slide.on .c-body > *:nth-child(3){animation-delay:.26s}
.c-slide.on .c-body > *:nth-child(4){animation-delay:.36s}
.c-slide.on .c-body > *:nth-child(5){animation-delay:.46s}

@media (prefers-reduced-motion:reduce){
  .hero-img,.c-slide img,.c-slide.on img{animation:none !important;transform:none !important}
  .c-slide.on .c-body > *{animation:none !important}
}

/* dust only drifts while its banner is on screen */
.ken-on .dust i{animation-play-state:running}

/* hero stage card: poster-bridal.jpg carries an intentional dark copy-space
   panel across its left ~42% (the carousel prints slide text on it). In this
   small portrait card that panel just read as a black slab, so crop past it
   and frame the bride. Only .hs-main is affected — the carousel is untouched. */
.hs-main img{object-position:100% 42%}

/* ═══════════════════════════════════════════════════════════════════
   v26 · LUXURY FINANCE PAGES — Buyback · Swarna Nidhi · Metal Scheme
   Shared "5D" vocabulary: depth, live light, tactile controls.
   All motion is transform/opacity only and respects reduced-motion.
   ═══════════════════════════════════════════════════════════════════ */

.lux-wrap{padding:52px 0 100px}
.lux-wrap > section{margin-bottom:clamp(56px,7vw,92px)}
.lux-hero h1{font-size:clamp(34px,5.2vw,62px)}

/* ── shared: live pill ── */
.bbc-live{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--ff-label);font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;
  color:var(--emerald);background:var(--emerald-soft);
  border:1px solid rgba(15,91,70,.22);padding:7px 15px;border-radius:40px;margin-bottom:16px;
}
.bbc-live i{width:7px;height:7px;border-radius:50%;background:var(--emerald-2);animation:pulse 1.8s ease-in-out infinite}

/* ── VAULT CARDS (buyback promise) ── */
.vault-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:clamp(56px,7vw,92px)}
.vault-card{
  position:relative;isolation:isolate;overflow:hidden;
  padding:34px 28px 30px;border-radius:var(--r-lg);
  background:linear-gradient(160deg,#fff 0%,var(--cream) 100%);
  border:1px solid var(--line);
  box-shadow:0 14px 40px rgba(45,10,16,.07);
  transition:transform .55s var(--ease),box-shadow .55s var(--ease);
}
.vault-card::before{
  content:'';position:absolute;inset:0;z-index:-1;opacity:0;
  background:radial-gradient(120% 100% at 50% 0%,rgba(212,175,90,.16),transparent 62%);
  transition:opacity .5s var(--ease);
}
.vault-card:hover{transform:translateY(-7px);box-shadow:0 30px 66px rgba(45,10,16,.16)}
.vault-card:hover::before{opacity:1}
.vc-num{
  display:block;font-family:var(--ff-disp);font-size:66px;line-height:1;margin-bottom:14px;
  background:linear-gradient(135deg,var(--gold-2),#8a651f);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}
.vc-num small{font-size:26px;margin-left:2px}
.vault-card b{display:block;font-size:16px;margin-bottom:8px;color:var(--maroon)}
.vault-card p{font-size:13.4px;line-height:1.66;color:var(--ink-2)}
.vc-emerald .vc-num{background:linear-gradient(135deg,var(--emerald-2),var(--emerald));-webkit-background-clip:text;background-clip:text}
.vc-emerald b{color:var(--emerald)}

/* ── CALCULATOR SHELL ── */
.bb-calc,.sv-calc{
  position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(30px,4vw,52px);border-radius:28px;
  background:
    radial-gradient(90% 120% at 88% -10%,rgba(23,121,92,.18),transparent 56%),
    linear-gradient(150deg,#2a090e 0%,var(--maroon-deep) 46%,var(--maroon-2) 100%);
  color:var(--cream);
  box-shadow:0 30px 80px rgba(45,10,16,.34);
}
.bb-calc::before,.sv-calc::before{
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(104deg,transparent 36%,rgba(255,244,214,.09) 48%,transparent 60%);
}
.bbc-head{text-align:center;max-width:680px;margin:0 auto 34px}
.bbc-head h2{color:#fdf3dd;font-size:clamp(25px,3.3vw,40px);margin-bottom:10px;letter-spacing:-.01em}
.bbc-head p{color:rgba(250,240,218,.76);font-size:14px;line-height:1.7}
.bbc-head p b{color:var(--gold-2)}

.bbc-body,.svc-body{display:grid;grid-template-columns:1fr .88fr;gap:clamp(20px,3vw,38px);align-items:start}
.bbc-form,.svc-form{display:grid;gap:22px}
.bbc-form .fld label,.svc-form .fld label{
  display:block;font-family:var(--ff-label);font-size:10.5px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold-soft);margin-bottom:11px;
}

/* weight / amount input */
.bbc-wt,.svc-amt-row{
  display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.06);border:1.5px solid rgba(233,206,148,.26);
  border-radius:15px;padding:4px 16px 4px 4px;
  transition:border-color .3s,box-shadow .3s;
}
.bbc-wt:focus-within,.svc-amt-row:focus-within{border-color:var(--gold-2);box-shadow:0 0 0 4px rgba(212,175,90,.14)}
.bbc-wt input,.svc-amt-row input{
  flex:1;min-width:0;background:transparent;border:0;outline:0;
  font-family:var(--ff-disp);font-size:34px;color:#fff;padding:12px 14px;
}
.bbc-wt input::-webkit-outer-spin-button,.bbc-wt input::-webkit-inner-spin-button,
.svc-amt-row input::-webkit-outer-spin-button,.svc-amt-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.bbc-wt input[type=number],.svc-amt-row input[type=number]{-moz-appearance:textfield}
.bbc-unit{font-size:13px;color:var(--gold-soft);letter-spacing:.06em;white-space:nowrap}
.svc-rs{font-family:var(--ff-disp);font-size:30px;color:var(--gold-2);padding-left:14px}

/* slider */
.bbc-range{
  -webkit-appearance:none;appearance:none;width:100%;height:5px;margin-top:18px;
  border-radius:4px;outline:0;border:0;padding:0;
  background:linear-gradient(90deg,var(--gold-2),rgba(233,206,148,.2)) !important;
}
/* Firefox paints its own track unless told otherwise */
.bbc-range::-moz-range-track{
  height:5px;border-radius:4px;border:0;
  background:linear-gradient(90deg,var(--gold-2),rgba(233,206,148,.2));
}
.bbc-range::-webkit-slider-runnable-track{
  height:5px;border-radius:4px;border:0;background:transparent;
}
.bbc-range::-webkit-slider-thumb{
  -webkit-appearance:none;width:24px;height:24px;border-radius:50%;cursor:grab;
  background:radial-gradient(circle at 34% 30%,#fff6dd,var(--gold) 70%);
  border:2px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.4);
  transition:transform .2s var(--ease);
}
.bbc-range::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.16)}
.bbc-range::-moz-range-thumb{
  width:22px;height:22px;border-radius:50%;cursor:grab;
  background:radial-gradient(circle at 34% 30%,#fff6dd,var(--gold) 70%);
  border:2px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.4);
}

/* purity / metal toggle */
.bbc-purity{display:flex;gap:9px;flex-wrap:wrap}
.bbp{
  flex:1;min-width:96px;padding:13px 10px;border-radius:13px;cursor:pointer;
  background:rgba(255,255,255,.05);border:1.5px solid rgba(233,206,148,.22);
  color:var(--cream);font-size:14px;font-weight:600;line-height:1.2;
  transition:transform .3s var(--ease),background .3s,border-color .3s,box-shadow .3s;
}
.bbp small{display:block;font-size:10.5px;font-weight:400;opacity:.66;margin-top:3px}
.bbp:hover{transform:translateY(-2px);border-color:rgba(233,206,148,.5)}
.bbp.on{
  background:linear-gradient(140deg,var(--gold-2),var(--gold));
  border-color:var(--gold-2);color:#3d2a08;
  box-shadow:0 10px 26px rgba(185,138,47,.36);
}
.bbp.on small{opacity:.78}

/* quick chips */
.svc-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.svc-chips button{
  padding:9px 15px;border-radius:40px;cursor:pointer;font-size:12.5px;
  background:rgba(255,255,255,.05);border:1px solid rgba(233,206,148,.24);color:var(--cream);
  transition:transform .28s var(--ease),background .28s,border-color .28s;
}
.svc-chips button:hover{transform:translateY(-2px);border-color:var(--gold-2)}
.svc-chips button.on{background:var(--gold-2);border-color:var(--gold-2);color:#3d2a08;font-weight:700}

.bbc-note{display:flex;gap:11px;align-items:flex-start;padding-top:4px}
.bbc-note span{color:var(--gold-2);font-size:14px;line-height:1.4}
.bbc-note p{font-size:12.2px;line-height:1.62;color:rgba(250,240,218,.62)}

/* ── RESULT PANEL ── */
.bbc-result,.svc-result{
  position:relative;isolation:isolate;overflow:hidden;
  padding:30px 26px;border-radius:22px;text-align:center;
  background:linear-gradient(165deg,rgba(255,255,255,.13),rgba(255,255,255,.05));
  border:1px solid rgba(233,206,148,.3);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 20px 50px rgba(0,0,0,.3);
}
.bbr-shine{
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.13) 50%,transparent 60%);
  background-size:280% 100%;animation:shvFoil 8s linear infinite;
}
.bbr-label{
  display:block;font-family:var(--ff-label);font-size:10px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--gold-soft);margin-bottom:12px;
}
.bbr-amt,.svr-gold{
  font-family:var(--ff-disp);font-size:clamp(38px,5.6vw,58px);line-height:1.06;margin-bottom:8px;
  background:linear-gradient(100deg,var(--gold-soft),#fff6dd 30%,var(--gold-2) 55%,#fffaf0 78%,var(--gold-soft));
  background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:shvFoil 7s linear infinite;
}
@keyframes bbrPop{0%{transform:scale(.965);opacity:.55}100%{transform:scale(1);opacity:1}}
.bbr-pop{animation:shvFoil 7s linear infinite,bbrPop .42s var(--ease)}
.bbr-rate{font-size:12.6px;color:rgba(250,240,218,.7);margin-bottom:18px}
.bbr-split{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.bbr-split div{background:rgba(0,0,0,.2);border-radius:12px;padding:11px 8px}
.bbr-split small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:rgba(250,240,218,.55);margin-bottom:4px}
.bbr-split b{font-size:15px;color:#fdf3dd}
.bbr-zero{color:#6ee7a8 !important}
.bbr-fine{font-size:11px;line-height:1.6;color:rgba(250,240,218,.5);margin-top:13px}

/* ── COMPARISON ── */
.cmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cmp-card{
  position:relative;padding:28px 26px;border-radius:var(--r-lg);
  border:1px solid var(--line);background:#fff;
}
.cmp-tag{
  display:inline-block;font-family:var(--ff-label);font-size:9.6px;letter-spacing:.24em;
  text-transform:uppercase;padding:6px 13px;border-radius:30px;margin-bottom:18px;
}
.cmp-bad{background:var(--cream)}
.cmp-bad .cmp-tag{background:#f3e3e3;color:#8b3a3a}
.cmp-good{
  background:linear-gradient(160deg,#fff,var(--emerald-soft) 190%);
  border-color:rgba(15,91,70,.28);box-shadow:0 16px 44px rgba(15,91,70,.12);
}
.cmp-good .cmp-tag{background:var(--emerald-soft);color:var(--emerald)}
.cmp-card ul{list-style:none;padding:0;margin:0}
.cmp-card li{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13.6px}
.cmp-card li span{color:var(--ink-2)}
.cmp-card li b{white-space:nowrap}
.cmp-card li.cmp-tot{border-bottom:0;padding-top:15px;font-size:16px}
.cmp-card li.cmp-tot b{font-family:var(--ff-disp);font-size:23px;color:var(--maroon)}
.cmp-good li.cmp-tot b{color:var(--emerald)}
.neg{color:#a32638}
.zero{color:var(--emerald-2)}
.cmp-save{
  margin-top:16px;padding:12px;border-radius:12px;text-align:center;font-size:13.5px;
  background:var(--emerald);color:#fff;
}
.cmp-save b{font-size:16px}

/* ── STEP RAIL ── */
.step-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step-item{
  position:relative;padding:26px 22px;border-radius:var(--r-lg);
  background:var(--cream);border:1px solid var(--line);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),background .5s;
}
.step-item:hover{transform:translateY(-6px);background:#fff;box-shadow:0 24px 54px rgba(45,10,16,.14)}
.si-n{
  display:block;font-family:var(--ff-disp);font-size:34px;line-height:1;margin-bottom:12px;
  color:transparent;-webkit-text-stroke:1px var(--gold);
}
.step-item b{display:block;font-size:15px;margin-bottom:7px;color:var(--maroon)}
.step-item p{font-size:12.8px;line-height:1.64;color:var(--ink-2)}

/* ── FINE PRINT GRID ── */
.fine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:16px}
.fine-card{
  padding:24px 22px;border-radius:var(--r);
  background:#fff;border:1px solid var(--line);border-left:3px solid var(--gold-2);
  transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-left-color .45s;
}
.fine-card:hover{transform:translateX(4px);border-left-color:var(--emerald);box-shadow:0 16px 40px rgba(45,10,16,.1)}
.fine-card b{display:block;font-size:14.6px;margin-bottom:7px;color:var(--maroon)}
.fine-card p{font-size:13px;line-height:1.68;color:var(--ink-2)}

/* ── SWARNA NIDHI: plan hero + coin stack ── */
.plan-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,54px);align-items:center}
.ph-kicker{
  display:inline-block;font-family:var(--ff-label);font-size:10.5px;letter-spacing:.28em;
  text-transform:uppercase;color:var(--gold);margin-bottom:14px;
}
.ph-left h2{font-size:clamp(30px,4.4vw,52px);line-height:1.12;margin-bottom:16px;color:var(--maroon-deep)}
.ph-left > p{font-size:14.6px;line-height:1.76;color:var(--ink-2);margin-bottom:20px}
.ph-points{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.ph-points li{display:flex;gap:11px;align-items:flex-start;font-size:13.6px;line-height:1.6;color:var(--ink-2)}
.ph-points li span{color:var(--gold);flex:0 0 auto}

.ph-right{position:relative;display:grid;place-items:center;min-height:330px}
.coin-stack{position:relative;width:210px;height:250px}
.cs-coin{
  position:absolute;left:50%;width:132px;height:132px;margin-left:-66px;border-radius:50%;
  background:
    radial-gradient(circle at 34% 28%,#fff3cf,var(--gold-2) 42%,#9a7226 78%,#7a5a1c 100%);
  border:2px solid rgba(255,246,221,.5);
  box-shadow:0 6px 16px rgba(0,0,0,.24);
  transform:translateY(calc(var(--i) * -13px)) scaleY(.36);
  animation:coinRise .7s var(--ease) both;
  animation-delay:calc(var(--i) * 65ms);
}
@keyframes coinRise{from{opacity:0;transform:translateY(60px) scaleY(.36)}
  to{opacity:1;transform:translateY(calc(var(--i) * -13px)) scaleY(.36)}}
.cs-gift{
  background:radial-gradient(circle at 34% 28%,#eafff6,var(--emerald-2) 46%,var(--emerald) 100%);
  border-color:rgba(215,235,227,.7);
  box-shadow:0 0 0 4px rgba(23,121,92,.2),0 10px 26px rgba(15,91,70,.4);
}
.cs-cap{
  position:absolute;bottom:2px;text-align:center;
  background:var(--emerald);color:#fff;padding:9px 18px;border-radius:40px;
  box-shadow:0 12px 30px rgba(15,91,70,.3);
}
.cs-cap b{display:block;font-size:13.5px}
.cs-cap small{font-size:10.5px;opacity:.85;letter-spacing:.08em}

/* ledger */
.svc-ledger{background:rgba(0,0,0,.22);border-radius:16px;padding:6px 18px}
.svl-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 0;border-bottom:1px dashed rgba(233,206,148,.2);font-size:13.4px}
.svl-row:last-child{border-bottom:0}
.svl-row span{color:rgba(250,240,218,.72)}
.svl-row b{font-size:16px;color:#fdf3dd;white-space:nowrap}
.svl-gift b{color:#6ee7a8}
.svl-tot b{font-family:var(--ff-disp);font-size:23px;color:var(--gold-2)}

/* bonus ring */
.svr-bonus{display:flex;align-items:center;gap:14px;text-align:left;margin:18px 0 20px;padding:14px;border-radius:15px;background:rgba(0,0,0,.2)}
.svrb-ring{
  flex:0 0 62px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(var(--emerald-2) var(--p,36%),rgba(255,255,255,.1) 0);
  position:relative;
}
.svrb-ring::after{content:'';position:absolute;inset:6px;border-radius:50%;background:#2a090e}
.svrb-ring span{position:relative;z-index:1;font-size:14px;font-weight:700;color:#6ee7a8}
.svr-bonus b{display:block;font-size:14.6px;color:#fdf3dd;margin-bottom:2px}
.svr-bonus small{font-size:11.4px;color:rgba(250,240,218,.62);line-height:1.5}

/* month rail */
.mth-rail{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.mth-cell{
  padding:18px 12px;border-radius:15px;text-align:center;
  background:var(--cream);border:1px solid var(--line);
  transition:transform .45s var(--ease),box-shadow .45s var(--ease);
}
.mth-cell:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(45,10,16,.13)}
.mc-n{display:block;font-family:var(--ff-disp);font-size:22px;color:var(--gold);margin-bottom:6px}
.mth-cell b{display:block;font-size:14.5px;color:var(--maroon);margin-bottom:3px}
.mth-cell small{font-size:10.4px;color:var(--ink-3);line-height:1.4}
.mth-gift{
  background:linear-gradient(160deg,var(--emerald-soft),#fff);
  border-color:rgba(15,91,70,.3);box-shadow:0 14px 34px rgba(15,91,70,.14);
}
.mth-gift .mc-n,.mth-gift b{color:var(--emerald)}
.mth-gift small{color:var(--emerald-2);font-weight:600}

/* ── METAL SCHEME ── */
.mtl-hero{background:
  radial-gradient(120% 150% at 84% -20%,rgba(23,121,92,.34) 0%,transparent 54%),
  radial-gradient(90% 130% at 0% 120%,rgba(212,175,90,.2) 0%,transparent 58%),
  linear-gradient(140deg,#26080c 0%,var(--maroon-deep) 44%,#123c30 190%) !important}
.mtl-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:clamp(56px,7vw,92px)}
.ms-card{
  position:relative;overflow:hidden;isolation:isolate;
  padding:34px 26px;border-radius:var(--r-lg);text-align:center;
  background:#fff;border:1px solid var(--line);
  box-shadow:0 14px 40px rgba(45,10,16,.07);
  transition:transform .55s var(--ease),box-shadow .55s var(--ease);
}
.ms-card:hover{transform:translateY(-7px);box-shadow:0 30px 66px rgba(45,10,16,.16)}
.ms-big{
  display:block;font-family:var(--ff-disp);font-size:70px;line-height:1;margin-bottom:10px;
  background:linear-gradient(135deg,var(--gold-2),#8a651f);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}
.ms-big small{font-size:28px}
.ms-card b{display:block;font-family:var(--ff-label);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}
.ms-card p{font-size:13.2px;line-height:1.66;color:var(--ink-2)}
.ms-hero-card{
  background:linear-gradient(160deg,#fff,var(--emerald-soft) 210%);
  border-color:rgba(15,91,70,.3);
}
.ms-hero-card .ms-big{background:linear-gradient(135deg,var(--emerald-2),var(--emerald));-webkit-background-clip:text;background-clip:text}

/* growth bars */
.mt-bars{display:flex;align-items:flex-end;justify-content:center;gap:8px;height:104px;margin:18px 0 22px}
.mt-bars i{
  position:relative;flex:1;max-width:42px;border-radius:7px 7px 0 0;
  height:var(--h);
  background:linear-gradient(180deg,var(--gold-2),rgba(185,138,47,.28));
  transform-origin:bottom;animation:barGrow .65s var(--ease) both;animation-delay:var(--d);
}
@keyframes barGrow{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}
.mt-bars i span{
  position:absolute;bottom:-19px;left:0;right:0;text-align:center;
  font-size:9.6px;letter-spacing:.08em;color:rgba(250,240,218,.6);
}

/* regulatory notice */
.mtl-legal{
  display:flex;gap:16px;align-items:flex-start;
  padding:24px 26px;border-radius:var(--r-lg);
  background:#fffaf0;border:1px solid rgba(185,138,47,.34);border-left:4px solid var(--gold);
}
.ml-ic{font-size:22px;color:var(--gold);flex:0 0 auto;line-height:1.3}
.mtl-legal b{display:block;font-size:15px;margin-bottom:7px;color:var(--maroon)}
.mtl-legal p{font-size:12.8px;line-height:1.74;color:var(--ink-2)}

/* ── shared closing CTA ── */
.lux-cta{
  position:relative;overflow:hidden;isolation:isolate;text-align:center;
  padding:clamp(34px,4.6vw,60px);border-radius:28px;
  background:
    radial-gradient(80% 130% at 50% -20%,rgba(212,175,90,.22),transparent 60%),
    linear-gradient(150deg,var(--maroon-deep),var(--maroon-2));
  color:var(--cream);
}
.lux-cta h3{font-size:clamp(23px,3vw,36px);color:#fdf3dd;margin-bottom:10px}
.lux-cta > p{font-size:14px;color:rgba(250,240,218,.76);max-width:560px;margin:0 auto 24px;line-height:1.7}
.lux-cta-btns{display:flex;gap:13px;justify-content:center;flex-wrap:wrap}

/* ── RESPONSIVE ── */
@media(max-width:980px){
  .bbc-body,.svc-body,.plan-hero{grid-template-columns:1fr}
  .vault-grid,.mtl-stats,.cmp-grid{grid-template-columns:1fr}
  .step-rail{grid-template-columns:repeat(2,1fr)}
  .mth-rail{grid-template-columns:repeat(4,1fr)}
  .ph-right{min-height:250px;order:-1;margin-bottom:8px}
  /* the coin stack is decorative — shrink it so it never dominates a phone screen */
  .coin-stack{width:160px;height:190px;transform:scale(.82);transform-origin:center}
  .cs-coin{width:112px;margin-left:-56px}
}
@media(max-width:560px){
  .ph-right{min-height:215px}
  .coin-stack{width:140px;height:165px;transform:scale(.72)}
  .cs-cap{bottom:-6px;padding:7px 14px}
  .cs-cap b{font-size:12.5px}
  /* thumb-comfortable tap targets (Apple/Google guidance is 44px) */
  .svc-chips{display:grid;grid-template-columns:1fr 1fr}
  .svc-chips button{min-height:44px;font-size:13px}
  .bbp{min-height:52px}
  .step-rail{grid-template-columns:1fr}
  .mth-rail{grid-template-columns:repeat(3,1fr)}
  .bbc-wt input,.svc-amt-row input{font-size:27px}
  .bbr-split{grid-template-columns:1fr}
  .lux-cta-btns .btn{width:100%}
  .bbp{min-width:0}
}

@media (prefers-reduced-motion:reduce){
  .bbr-shine,.bbr-amt,.svr-gold,.bbr-pop{animation:none !important}
  .cs-coin,.mt-bars i{animation:none !important}
  .vault-card,.ms-card,.step-item,.fine-card,.mth-cell,.bbp,.svc-chips button{transition:none !important}
  .vault-card:hover,.ms-card:hover,.step-item:hover,.mth-cell:hover{transform:none !important}
  .fine-card:hover{transform:none !important}
}

/* metal-scheme teaser on the B2B page */
.mtl-teaser{
  display:flex;align-items:center;gap:14px;margin-top:16px;
  padding:16px 18px;border-radius:16px;text-decoration:none;
  background:linear-gradient(135deg,var(--emerald-soft),rgba(247,241,228,.7));
  border:1.5px solid rgba(15,91,70,.24);
  transition:transform .35s var(--ease),box-shadow .4s var(--ease),border-color .35s;
}
.mtl-teaser:hover{transform:translateY(-3px);border-color:var(--emerald-2);box-shadow:0 14px 34px rgba(15,91,70,.18)}
.mtt-ic{
  flex:0 0 42px;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  font-size:17px;color:#fff;background:linear-gradient(145deg,var(--emerald-2),var(--emerald));
  box-shadow:0 6px 16px rgba(15,91,70,.3);transition:transform .45s var(--ease);
}
.mtl-teaser:hover .mtt-ic{transform:rotate(-8deg) scale(1.06)}
.mtt-tx{flex:1;min-width:0}
.mtt-tx b{display:block;font-size:14px;color:var(--emerald);margin-bottom:3px}
.mtt-tx small{display:block;font-size:11.4px;line-height:1.5;color:var(--ink-2)}
.mtt-go{color:var(--emerald);font-size:16px;transition:transform .35s var(--ease)}
.mtl-teaser:hover .mtt-go{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){
  .mtl-teaser,.mtt-ic,.mtt-go{transition:none !important}
  .mtl-teaser:hover{transform:none !important}
}

/* ═══════════════════════════════════════════════════════════════════
   v27 · PARTNER DESKS — Metal Investment (flagship) + Dead Stock
   ═══════════════════════════════════════════════════════════════════ */

.lux-badge{
  display:inline-block;font-family:var(--ff-label);font-size:10px;letter-spacing:.28em;
  text-transform:uppercase;color:var(--gold-2);
  border:1px solid rgba(212,175,90,.42);background:rgba(212,175,90,.1);
  padding:6px 14px;border-radius:40px;margin-bottom:14px;
}

/* ── PORTAL FLAGSHIP: metal investment ── */
.mtl-prime{
  position:relative;display:block;overflow:hidden;isolation:isolate;
  border-radius:26px;padding:clamp(24px,3.2vw,42px);margin-bottom:18px;
  text-decoration:none;color:var(--cream);
  background:
    radial-gradient(90% 130% at 88% -20%,rgba(23,121,92,.42),transparent 58%),
    radial-gradient(70% 110% at 4% 120%,rgba(212,175,90,.24),transparent 60%),
    linear-gradient(145deg,#26080c 0%,var(--maroon-deep) 44%,#12352b 190%);
  border:1px solid rgba(212,175,90,.28);
  box-shadow:0 26px 70px rgba(20,6,10,.4);
  transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .45s;
}
.mtl-prime:hover{transform:translateY(-5px);border-color:rgba(212,175,90,.55);box-shadow:0 40px 96px rgba(20,6,10,.52)}
.mp-glow{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(104deg,transparent 34%,rgba(255,244,214,.12) 48%,transparent 62%);
  background-size:260% 100%;animation:shvFoil 9s linear infinite;
}
.mp-dust{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.mp-dust i{
  position:absolute;bottom:-8px;width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle,#ffeec2,rgba(212,175,90,0));
  animation:shvDust linear infinite;
}
.mp-dust i:nth-child(1){left:14%;animation-duration:9s}
.mp-dust i:nth-child(2){left:32%;animation-duration:11s;animation-delay:1.4s}
.mp-dust i:nth-child(3){left:51%;animation-duration:8.4s;animation-delay:2.9s}
.mp-dust i:nth-child(4){left:68%;animation-duration:12s;animation-delay:.7s;width:4px;height:4px}
.mp-dust i:nth-child(5){left:82%;animation-duration:10s;animation-delay:2.2s;width:2px;height:2px}
.mp-dust i:nth-child(6){left:93%;animation-duration:9.6s;animation-delay:4s}
.mp-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(18px,3vw,40px);align-items:center}
.mp-kicker{
  display:inline-block;font-family:var(--ff-label);font-size:9.6px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--gold-2);
  border:1px solid rgba(212,175,90,.4);background:rgba(212,175,90,.09);
  padding:6px 13px;border-radius:40px;margin-bottom:15px;
}
.mtl-prime h3{
  font-family:var(--ff-disp);font-size:clamp(27px,3.7vw,46px);line-height:1.08;
  color:#fdf3dd;margin:0 0 12px;letter-spacing:-.01em;
}
.mtl-prime h3 em{
  font-style:italic;
  background:linear-gradient(100deg,var(--gold-soft),#fff6dd 32%,var(--gold-2) 58%,#fffaf0 80%,var(--gold-soft));
  background-size:230% 100%;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  animation:shvFoil 7s linear infinite;
}
.mtl-prime p{font-size:14px;line-height:1.72;color:rgba(250,240,218,.82);margin-bottom:18px;max-width:56ch}
.mtl-prime p b{color:var(--gold-2)}
.mp-pills{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}
.mp-pill{
  display:inline-flex;align-items:center;gap:6px;font-size:12.4px;
  padding:8px 15px;border-radius:40px;
  background:rgba(255,255,255,.07);border:1px solid rgba(233,206,148,.24);color:rgba(250,240,218,.9);
}
.mp-pill b{font-family:var(--ff-disp);font-size:17px;color:var(--gold-2)}
.mp-pill-hero{
  background:linear-gradient(140deg,rgba(23,121,92,.6),rgba(15,91,70,.42));
  border-color:rgba(110,231,168,.4);
}
.mp-pill-hero b{color:#8df3c0}
.mp-cta{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--ff-label);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  color:#3d2a08;background:linear-gradient(140deg,var(--gold-2),var(--gold));
  padding:13px 26px;border-radius:40px;
  box-shadow:0 12px 30px rgba(185,138,47,.4);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.mtl-prime:hover .mp-cta{transform:translateX(4px);box-shadow:0 16px 40px rgba(185,138,47,.55)}
.mp-cta i{font-style:normal;transition:transform .35s var(--ease)}
.mtl-prime:hover .mp-cta i{transform:translateX(3px)}

.mp-right{display:flex;align-items:center;justify-content:center;gap:clamp(10px,2vw,22px)}
.mp-ring{position:relative;width:clamp(104px,11vw,138px);aspect-ratio:1}
.mp-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.mpr-bg{fill:none;stroke:rgba(255,255,255,.1);stroke-width:8}
.mpr-fg{
  fill:none;stroke:url(#mpg);stroke-width:8;stroke-linecap:round;
  stroke:#6ee7a8;
  stroke-dasharray:327;stroke-dashoffset:327;
  animation:mprDraw 1.5s var(--ease) .25s forwards;
}
@keyframes mprDraw{to{stroke-dashoffset:88}}
.mp-ring-tx{position:absolute;inset:0;display:grid;place-content:center;text-align:center;line-height:1}
.mp-ring-tx b{display:block;font-family:var(--ff-disp);font-size:clamp(26px,3.2vw,36px);color:#fdf3dd}
.mp-ring-tx b small{font-size:.5em}
.mp-ring-tx > small{font-size:9.6px;letter-spacing:.2em;text-transform:uppercase;color:rgba(250,240,218,.6)}
.mp-bars{display:flex;align-items:flex-end;gap:6px;height:clamp(70px,8vw,96px)}
.mp-bars i{
  width:clamp(12px,1.5vw,18px);border-radius:5px 5px 0 0;height:var(--h);
  background:linear-gradient(180deg,var(--gold-2),rgba(185,138,47,.22));
  transform-origin:bottom;animation:barGrow .7s var(--ease) both;animation-delay:var(--d);
}

/* ── PORTAL SECONDARY: dead stock (deliberately quieter) ── */
.ds-second{
  display:flex;align-items:center;gap:14px;margin-bottom:18px;
  padding:17px 20px;border-radius:18px;text-decoration:none;
  background:linear-gradient(135deg,#fff,var(--cream));
  border:1px solid var(--line);border-left:3px solid var(--emerald-2);
  transition:transform .4s var(--ease),box-shadow .45s var(--ease),border-left-color .4s;
}
.ds-second:hover{transform:translateX(4px);border-left-color:var(--gold);box-shadow:0 16px 40px rgba(45,10,16,.11)}
.dsx-ic{
  flex:0 0 40px;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  font-size:17px;color:var(--emerald);
  background:var(--emerald-soft);border:1px solid rgba(15,91,70,.2);
  transition:transform .4s var(--ease);
}
.ds-second:hover .dsx-ic{transform:rotate(-7deg) scale(1.05)}
.dsx-tx{flex:1;min-width:0}
.dsx-tx b{display:block;font-size:14px;color:var(--maroon);margin-bottom:2px}
.dsx-tx small{display:block;font-size:11.6px;line-height:1.5;color:var(--ink-2)}
.dsx-tx small b{display:inline;font-size:11.6px;color:var(--emerald)}
.dsx-go{color:var(--emerald);font-size:16px;transition:transform .35s var(--ease)}
.ds-second:hover .dsx-go{transform:translateX(4px)}
.adm-nav .nav-mtl{color:var(--gold-2)}

/* ── DEAD STOCK PAGE ── */
.ds-hero-bg{background:
  radial-gradient(120% 150% at 86% -20%,rgba(23,121,92,.3) 0%,transparent 54%),
  radial-gradient(90% 130% at 0% 120%,rgba(212,175,90,.2) 0%,transparent 58%),
  linear-gradient(140deg,#26080c 0%,var(--maroon-deep) 44%,#153b30 195%) !important}
.ds-mc-hint{font-size:11.4px;line-height:1.55;color:rgba(250,240,218,.55);margin-top:9px}
.ds-split{margin:16px 0 18px;padding:14px 16px;border-radius:15px;background:rgba(0,0,0,.22);text-align:left}
.dss-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0;border-bottom:1px dashed rgba(233,206,148,.18);font-size:12.8px}
.dss-row span{color:rgba(250,240,218,.72)}
.dss-row b{color:#fdf3dd;white-space:nowrap}
.dss-credit b{color:#6ee7a8}
.dss-vs{border-bottom:0;opacity:.62}
.dss-vs b{text-decoration:line-through}
.dss-gain{
  margin-top:11px;padding:11px;border-radius:11px;text-align:center;font-size:12.8px;
  background:linear-gradient(135deg,rgba(23,121,92,.5),rgba(15,91,70,.32));
  border:1px solid rgba(110,231,168,.3);color:#d9fbeb;
}
.dss-gain b{font-family:var(--ff-disp);font-size:19px;color:#8df3c0}
.ds-form-card{
  padding:clamp(24px,3.4vw,40px);border-radius:24px;
  background:linear-gradient(160deg,#fff,var(--cream));
  border:1px solid var(--line);box-shadow:0 20px 54px rgba(45,10,16,.1);
}
.ds-form-card .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ds-form-card .fld.full{grid-column:1/-1}
.ds-form-card .btn{grid-column:1/-1;margin-top:6px}
.ds-form-note{
  margin-top:16px;text-align:center;font-size:11.6px;color:var(--ink-3);
  padding-top:14px;border-top:1px dashed var(--line);
}

/* ═══ SWARNA NIDHI — redesigned plan hero ═══ */
.plan-hero{
  position:relative;overflow:hidden;isolation:isolate;
  padding:clamp(26px,3.6vw,50px);border-radius:28px;
  background:
    radial-gradient(80% 120% at 88% 0%,rgba(212,175,90,.14),transparent 58%),
    linear-gradient(160deg,#fff 0%,var(--cream) 62%,var(--cream-2) 100%);
  border:1px solid var(--line);
  box-shadow:0 22px 60px rgba(45,10,16,.09);
}
.ph-left h2 em{
  font-style:italic;
  background:linear-gradient(100deg,var(--gold),#e0bb6d 40%,var(--gold-2) 70%,var(--gold));
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  animation:shvFoil 7s linear infinite;
}
.ph-points li{
  padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.7);
  border:1px solid var(--line);
  transition:transform .4s var(--ease),border-color .4s,box-shadow .4s var(--ease);
}
.ph-points li:hover{transform:translateX(4px);border-color:var(--gold-2);box-shadow:0 10px 26px rgba(45,10,16,.08)}

@media (prefers-reduced-motion:reduce){
  .mp-glow,.mp-dust,.mtl-prime h3 em,.mp-bars i,.mpr-fg,.ph-left h2 em{animation:none !important}
  .mpr-fg{stroke-dashoffset:88}
  .mtl-prime,.ds-second,.dsx-ic,.mp-cta,.ph-points li{transition:none !important}
  .mtl-prime:hover,.ds-second:hover,.ph-points li:hover{transform:none !important}
}
@media(max-width:900px){
  .mp-inner{grid-template-columns:1fr;gap:22px}
  .mp-right{justify-content:flex-start}
  .ds-form-card .form-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .mtl-prime{padding:22px 18px;border-radius:20px}
  .mp-pills{gap:7px}
  .mp-pill{font-size:11.6px;padding:7px 12px}
  .mp-cta{width:100%;justify-content:center}
  .mp-right{justify-content:center}
  .ds-second{padding:14px 15px}
}

/* ═══════════════════════════════════════════════════════════════════
   v27 · SWARNA NIDHI 11+1 — dial, comparison band, month legend
   ═══════════════════════════════════════════════════════════════════ */

/* ── the 11+1 dial (replaces the old coin stack) ── */
.nidhi-dial{position:relative;width:min(300px,74vw);aspect-ratio:1;display:grid;place-items:center}
.nd-svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.nd-track{fill:none;stroke:rgba(110,30,42,.09);stroke-width:13}
.nd-seg{
  fill:none;stroke:url(#ndGold);stroke-width:13;stroke-linecap:round;
  opacity:0;transform-origin:100px 100px;
  animation:ndPop .52s var(--ease) forwards;
  animation-delay:calc(.16s + var(--i) * .075s);
}
.nd-gift{stroke:url(#ndEm);stroke-width:16}
@keyframes ndPop{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
.nd-core{
  position:absolute;inset:0;display:grid;place-content:center;text-align:center;
  opacity:0;animation:ndFade .7s var(--ease) 1.05s forwards;
}
@keyframes ndFade{to{opacity:1}}
.nd-num{
  display:block;font-family:var(--ff-disp);font-size:clamp(40px,7vw,60px);line-height:1;
  color:var(--maroon-deep);font-weight:600;
}
.nd-num em{
  font-style:normal;font-size:.56em;color:var(--emerald);
  background:linear-gradient(180deg,var(--emerald-2),var(--emerald));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.nd-lbl{
  display:block;margin-top:5px;font-family:var(--ff-label);font-size:11px;
  letter-spacing:.3em;text-transform:uppercase;color:var(--ink-3);
}
.ph-right{gap:0}
.ph-right .cs-cap{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);white-space:nowrap}
.nidhi-dial{margin-bottom:46px}

/* ── month rail legend ── */
.mth-legend{display:flex;gap:20px;justify-content:center;margin:-6px 0 16px;flex-wrap:wrap}
.mth-legend span{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3);letter-spacing:.04em}
.mth-legend i{width:13px;height:13px;border-radius:4px;display:inline-block}
.mth-legend .ml-you{background:linear-gradient(140deg,var(--gold-2),var(--gold));border:1px solid var(--gold)}
.mth-legend .ml-us{background:linear-gradient(140deg,var(--emerald-2),var(--emerald));border:1px solid var(--emerald)}

/* ── three-routes comparison ── */
.rte-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch;margin-top:14px}
.rte-card{
  position:relative;display:flex;flex-direction:column;
  background:var(--ivory);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:26px 22px 24px;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .45s var(--ease);
}
.rte-card:hover{transform:translateY(-6px);box-shadow:0 24px 54px rgba(45,10,16,.11);border-color:var(--gold-soft)}
.rte-tag{
  font-family:var(--ff-label);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink-3);margin-bottom:10px;display:block;
}
.rte-card > b{font-family:var(--ff-disp);font-size:21px;color:var(--maroon-deep);line-height:1.25;display:block}
.rte-fig{
  font-family:var(--ff-disp);font-size:clamp(26px,3.2vw,34px);color:var(--maroon);
  margin:12px 0 10px;letter-spacing:-.01em;
}
.rte-fig s{font-size:.52em;color:var(--ink-3);opacity:.75;margin-left:4px;font-family:var(--ff-body)}
.rte-card > p{font-size:13.4px;line-height:1.7;color:var(--ink-2);margin-bottom:14px}
.rte-card ul{list-style:none;padding:0;margin:auto 0 0;display:grid;gap:7px;border-top:1px dashed var(--line);padding-top:14px}
.rte-card li{font-size:12.6px;color:var(--ink-3);padding-left:16px;position:relative;line-height:1.55}
.rte-card li::before{content:'·';position:absolute;left:5px;top:-1px;color:var(--gold);font-size:17px}

/* the winning route */
.rte-win{
  background:linear-gradient(168deg,#fffdf8,#fbf4e6 62%,#f7ecd7);
  border:1.5px solid var(--gold-2);box-shadow:0 22px 52px rgba(110,30,42,.11);
}
.rte-win .rte-tag{color:var(--maroon)}
.rte-win .rte-fig{color:var(--emerald)}
.rte-win li::before{content:'✦';font-size:10px;top:1px}
.rte-win li{color:var(--ink-2);font-weight:500}
.rte-badge{
  position:absolute;top:-11px;right:18px;
  background:linear-gradient(120deg,var(--emerald),var(--emerald-2));color:#fff;
  font-family:var(--ff-label);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  padding:6px 13px;border-radius:999px;box-shadow:0 8px 20px rgba(15,91,70,.3);white-space:nowrap;
}

@media (max-width:900px){
  .rte-grid{grid-template-columns:1fr;gap:22px}
  .nidhi-dial{width:min(250px,64vw)}
  .ph-right .cs-cap{position:static;transform:none;margin-top:14px;display:inline-block}
}
@media (max-width:560px){
  .nidhi-dial{width:min(215px,60vw)}
  .nd-track,.nd-seg{stroke-width:11}
  .nd-gift{stroke-width:14}
  .rte-card{padding:22px 18px 20px}
  .rte-badge{right:12px;font-size:9px;padding:5px 10px}
  .mth-legend{gap:14px}
}
@media (prefers-reduced-motion:reduce){
  .nd-seg,.nd-core{animation:none !important;opacity:1 !important}
  .rte-card{transition:none !important}
  .rte-card:hover{transform:none !important}
}

/* ═══════════════════════════════════════════════════════════════════
   v28 — auth redesign · drawer close ✕ (right) · emerald jewellers CTA ·
   24K metal scheme · 22K dead-stock desk · global polish
   ═══════════════════════════════════════════════════════════════════ */

/* ── global polish ─────────────────────────────────────────────── */
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px}
.btn-primary::after,.btn-gold::after{z-index:0}
.fld input:hover,.fld select:hover,.fld textarea:hover{border-color:#d8c49a}
.toast-wrap .toast{border:1px solid rgba(185,138,47,.28);border-radius:14px;backdrop-filter:blur(8px)}
.page-hero::before{background:linear-gradient(180deg,rgba(61,14,21,.18),rgba(61,14,21,0) 46%)}

/* ── drawer: close ✕ lives on the RIGHT, opposite the logo ─────── */
.dw-close{
  position:absolute;top:16px;right:16px;z-index:6;
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;font-size:14px;line-height:1;
  color:#f2e5cc;background:rgba(61,14,21,.32);
  border:1px solid rgba(212,175,90,.38);
  transition:transform .3s var(--ease),background .3s,color .3s;
}
.dw-close:hover{background:rgba(212,175,90,.22);color:#fff8ea;transform:rotate(90deg)}

/* ── For Jewellers drawer CTA — emerald, unmistakable ──────────── */
@keyframes jwlSheen{from{background-position:130% 0}to{background-position:-130% 0}}
@media (max-width:820px){
  .nav a.nav-jwl{
    margin:18px 20px 2px;padding:14px 16px !important;border-radius:16px;
    background:linear-gradient(130deg,#0f5b46 0%,#17795c 58%,#0c4a38 100%) !important;
    box-shadow:0 12px 28px rgba(15,91,70,.42),inset 0 0 0 1px rgba(212,175,90,.38);
    justify-content:flex-start;text-align:left;width:auto !important;
    position:relative;overflow:hidden;isolation:isolate;
  }
  .nav a.nav-jwl::before{display:none}
  .nav a.nav-jwl::after{
    display:block;content:'';position:absolute;inset:0;z-index:-1;
    background:linear-gradient(105deg,transparent 32%,rgba(255,251,235,.16) 50%,transparent 68%);
    background-size:230% 100%;animation:jwlSheen 4.2s linear infinite;
  }
  .nav a.nav-jwl .dw-tx b{color:#f7f3e6 !important;font-size:15.5px;letter-spacing:.02em}
  .nav a.nav-jwl .dw-tx small{color:rgba(231,224,201,.78) !important}
  .nav a.nav-jwl .dw-ar{color:#e8c877;opacity:1}
  .nav a.nav-jwl .njl-gem{
    display:grid;place-items:center;width:36px;height:36px;border-radius:11px;flex-shrink:0;
    color:#efdcb2;background:rgba(212,175,90,.16);border:1px solid rgba(212,175,90,.3);font-size:15px;
  }
  /* while the drawer is open the header ☰ disappears — the ✕ is inside, top-right */
  body.drawer-open .nav-toggle{opacity:0;pointer-events:none}
  .nav-toggle{transition:opacity .25s var(--ease)}
}
@media (max-width:680px){
  .nav a.nav-jwl{margin:16px 16px 0}
  .dw-close{top:13px;right:13px}
}

/* ── AUTH — audience-aware sign-in shell ───────────────────────── */
.modal.auth-modal{max-width:940px;padding:0;overflow:hidden}
.auth-shell{display:grid;grid-template-columns:.9fr 1.1fr;min-height:600px}
.auth-brand{
  position:relative;padding:46px 40px 38px;color:#f6e8c8;overflow:hidden;
  background:radial-gradient(130% 100% at 0% 0%,#5c1822 0%,var(--maroon-deep) 58%,#2a090e 100%);
  display:flex;flex-direction:column;gap:14px;
}
.auth-brand::after{
  content:'';position:absolute;right:-120px;top:-120px;width:340px;height:340px;border-radius:50%;
  border:1px solid rgba(212,175,90,.25);box-shadow:0 0 0 55px rgba(212,175,90,.05),0 0 0 120px rgba(212,175,90,.04);
}
.ab-logo{height:46px;filter:drop-shadow(0 3px 10px rgba(0,0,0,.4))}
.auth-brand b{font-family:var(--ff-disp);font-size:31px;font-weight:600;line-height:1.12;color:#fdf3dd}
.auth-brand p{font-size:13px;line-height:1.6;color:rgba(246,232,200,.75)}
.ab-list{list-style:none;display:grid;gap:10px;margin:10px 0 0}
.ab-list li{font-size:13px;color:rgba(246,232,200,.85);padding-left:22px;position:relative}
.ab-list li::before{content:'\2726';position:absolute;left:0;top:1px;color:var(--gold-2)}
.ab-rates{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap;padding-top:18px}
.ab-rates span{font-size:11px;letter-spacing:.05em;border:1px solid rgba(212,175,90,.32);border-radius:30px;padding:7px 13px;color:rgba(246,232,200,.8)}
.ab-rates b{color:#f9ecd2;font-weight:600}
.auth-panel{background:var(--white);padding:32px 36px 24px;overflow-y:auto;max-height:88vh}

.auth-aud{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.au-btn{
  display:flex;gap:11px;align-items:center;text-align:left;
  padding:13px 14px;border-radius:16px;border:1.5px solid var(--line);
  background:var(--cream);transition:border-color .25s var(--ease),background .25s,box-shadow .25s,transform .25s;
}
.au-btn:hover{border-color:#d8c49a;transform:translateY(-1px)}
.au-btn.on{
  border-color:var(--maroon);background:linear-gradient(135deg,rgba(110,30,42,.05),rgba(212,175,90,.10));
  box-shadow:0 8px 20px rgba(110,30,42,.10);
}
.au-ic{
  width:38px;height:38px;border-radius:11px;flex-shrink:0;
  display:grid;place-items:center;font-size:17px;
  background:var(--white);border:1px solid var(--line);color:var(--gold);
  transition:background .25s,color .25s;
}
.au-btn.on .au-ic{background:var(--maroon);border-color:var(--maroon);color:#f9ecd2}
.au-tx b{display:block;font-size:13.5px;font-weight:600;color:var(--ink)}
.au-tx small{font-size:10.8px;color:var(--ink-3)}
.au-btn.on .au-tx b{color:var(--maroon)}

.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:var(--cream-2);border-radius:14px;padding:5px;margin-bottom:18px}
.at-btn{padding:10px;border-radius:10px;font-family:var(--ff-label);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);transition:.25s}
.at-btn.on{background:var(--white);color:var(--maroon);box-shadow:var(--sh-1)}

.am-pills{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.am2{padding:10px 12px;border-radius:12px;border:1.5px dashed var(--line);color:var(--ink-2);font-size:12.5px;transition:.25s;background:transparent}
.am2:hover{border-color:#d8c49a}
.am2.on{border-style:solid;border-color:var(--gold);background:var(--gold-faint);color:var(--maroon);font-weight:500}

#rtIn .fld,#rtUp .fld,#jwIn .fld{margin-bottom:13px}
#rtIn .btn-block,#rtUp .btn-block,#jwIn .btn-block{margin-top:6px}

.pw-wrap{position:relative}
.pw-wrap input{padding-right:50px}
.pw-eye{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  width:37px;height:37px;border-radius:10px;display:grid;place-items:center;
  color:var(--ink-3);transition:color .2s,background .2s;
}
.pw-eye:hover{color:var(--maroon);background:var(--gold-faint)}
.pw-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pw-eye .eye-off{display:none}
.pw-eye.on .eye-on{display:none}
.pw-eye.on .eye-off{display:block}
.pw-meter{height:4px;border-radius:4px;background:var(--cream-3);margin-top:9px;overflow:hidden}
.pw-meter i{display:block;height:100%;width:0;border-radius:4px;background:var(--bad);transition:width .3s var(--ease),background .3s}
.pw-meter[data-s="2"] i{background:var(--warn)}
.pw-meter[data-s="3"] i{background:var(--gold)}
.pw-meter[data-s="4"] i{background:var(--ok)}
.pw-meter span{display:block;font-size:10.5px;color:var(--ink-3);margin-top:5px}

.otp-boxes{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.otp-boxes input{
  width:100%;min-width:0;aspect-ratio:.82;text-align:center;
  font-size:22px;font-weight:600;font-family:var(--ff-disp);color:var(--maroon-deep);
  border:1.5px solid var(--line);border-radius:12px;background:var(--white);
  outline:none;padding:0;transition:border-color .2s,box-shadow .2s,transform .2s;
}
.otp-boxes input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(185,138,47,.15);transform:translateY(-1px)}
.auth-stat{display:block;font-size:12px;margin-top:7px;min-height:16px;color:var(--ink-3)}
.auth-stat.wait{color:var(--warn)}
.auth-stat.ok{color:var(--ok);font-weight:500}
.auth-stat.err{color:var(--bad)}
.auth-fine{font-size:11.8px;color:var(--ink-3);margin-top:14px;line-height:1.6}
.auth-legal{font-size:10.8px;color:var(--ink-3);margin-top:16px;padding-top:12px;border-top:1px dashed var(--line);line-height:1.55}

.jwl-badge{
  display:inline-block;font-family:var(--ff-label);font-size:10.5px;letter-spacing:.22em;
  color:var(--emerald-2);border:1px solid rgba(15,91,70,.3);background:var(--emerald-soft);
  border-radius:30px;padding:7px 15px;margin-bottom:16px;
}
.jwl-apply{
  margin-top:20px;border:1.5px dashed rgba(15,91,70,.35);border-radius:16px;
  padding:17px 18px;background:linear-gradient(135deg,rgba(15,91,70,.05),rgba(212,175,90,.07));
}
.jwl-apply b{color:var(--emerald);font-size:14px}
.jwl-apply p{font-size:12.5px;color:var(--ink-2);margin:6px 0 12px;line-height:1.6}
.jwl-apply small{display:block;text-align:center;margin-top:9px;color:var(--ink-3);font-size:11px}

/* ── purity-lock chip (24K / 22K desks) ────────────────────────── */
.purity-lock{
  display:flex;align-items:center;gap:13px;
  border:1.5px solid rgba(185,138,47,.35);border-radius:14px;padding:11px 15px;
  background:linear-gradient(120deg,var(--gold-faint),rgba(212,175,90,.05));
}
.purity-lock .pl-k{font-family:var(--ff-disp);font-weight:700;font-size:27px;line-height:1;color:var(--maroon)}
.purity-lock .pl-tx{font-size:11.5px;color:var(--ink-3);letter-spacing:.02em}
.purity-lock .pl-tx b{display:block;font-size:13.5px;color:var(--maroon);margin-bottom:1px}
.purity-lock.emerald{
  border-color:rgba(15,91,70,.35);
  background:linear-gradient(120deg,var(--emerald-soft),rgba(215,235,227,.4));
}
.purity-lock.emerald .pl-k{color:var(--emerald)}
.purity-lock.emerald .pl-tx b{color:var(--emerald)}
.ds-lock-sm{padding:8px 13px}
.ds-lock-sm .pl-k{font-size:22px}

/* ── metal scheme v28 ──────────────────────────────────────────── */
.mtl-pure{
  display:grid;grid-template-columns:auto 1fr auto;gap:clamp(18px,3.4vw,40px);align-items:center;
  border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(18px,3vw,32px);
  background:linear-gradient(120deg,#fffdf9 55%,var(--gold-faint));box-shadow:var(--sh-1);
  margin-bottom:clamp(48px,6vw,72px);
}
.mp-num b{display:block;font-family:var(--ff-disp);font-size:clamp(42px,6vw,66px);font-weight:700;line-height:.95;color:var(--maroon)}
.mp-num span{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}
.mp-tx b{display:block;font-size:17px;color:var(--maroon-deep);margin-bottom:6px}
.mp-tx p{font-size:13.4px;line-height:1.66;color:var(--ink-2);max-width:640px}
.mp-tx a{color:var(--maroon);font-weight:500;border-bottom:1px solid rgba(185,138,47,.5)}
.mp-chip{
  align-self:center;justify-self:end;text-align:center;
  font-family:var(--ff-label);font-size:11px;letter-spacing:.3em;color:var(--gold);
  border:1.5px solid rgba(185,138,47,.45);border-radius:14px;padding:14px 15px;line-height:1.7;
  transform:rotate(4deg);
}
.mp-chip span{display:block;font-size:8.5px;color:var(--ink-3)}
.svl-row.svl-int b{color:var(--gold-2)}
.svl-row.svl-app span{color:rgba(163,228,203,.78)}
.svl-row.svl-app b{color:#7fe0bd}
.mtl-split{display:flex;height:12px;border-radius:10px;overflow:hidden;margin:14px 0 7px;background:rgba(0,0,0,.22)}
.mtl-split i{display:block;height:100%;transition:width .5s var(--ease)}
.mtl-split i:first-child{background:linear-gradient(90deg,var(--gold),var(--gold-2))}
.mtl-split i:last-child{background:linear-gradient(90deg,#1d8f6c,#2ab58a)}
.mts-leg{display:flex;justify-content:center;gap:20px;font-size:11px;color:rgba(250,240,218,.65);margin-bottom:12px}
.mts-leg span::before{content:'';display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px}
.mts-leg .l1::before{background:var(--gold-2)}
.mts-leg .l2::before{background:#2ab58a}
.mt-grams{
  font-size:12.4px;color:#f9ecd2;background:rgba(0,0,0,.2);border-radius:11px;
  padding:9px 13px;margin-bottom:8px;text-align:center;
}

/* ── dead stock v28 ────────────────────────────────────────────── */
.dss-row.dss-fine b{color:#7fe0bd}

/* ── responsive ────────────────────────────────────────────────── */
@media (max-width:860px){
  .auth-shell{grid-template-columns:1fr;min-height:0}
  .auth-brand{display:none}
  .auth-panel{padding:24px 20px calc(22px + env(safe-area-inset-bottom,0px));max-height:82vh}
  .au-tx small{display:none}
  .au-btn{justify-content:flex-start}
}
@media (max-width:680px){
  .otp-boxes{gap:6px}
  .otp-boxes input{font-size:19px;border-radius:10px}
  .mtl-pure{grid-template-columns:1fr;text-align:center;justify-items:center}
  .mp-tx b{margin-top:4px}
  .mp-chip{display:none}
  .auth-aud{grid-template-columns:1fr}
  .am-pills{grid-template-columns:1fr 1fr}
}

/* ── reduced motion ────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  .nav a.nav-jwl::after{animation:none}
  .dw-close,.au-btn,.am2,.at-btn{transition:none}
  .mtl-split i{transition:none}
  .otp-boxes input:focus{transform:none}
}

/* ═══════════════════════════════════════════════════════════════════
   v29 — Tanishq-style two-tier header (icons far right, search centre),
   collapsing menu strip, evergreen heritage poster, button-feel polish
   ═══════════════════════════════════════════════════════════════════ */

/* ── tier 1 · brand · search · actions ─────────────────────────── */
.header-in.header-top{height:82px;gap:22px}
.header.scrolled .header-in.header-top{height:64px}
.header-top .brand{flex:none}
.header-top .header-actions{margin-left:auto;flex:none}

.hdr-search{
  flex:1;max-width:560px;margin-inline:auto;min-width:0;
  display:flex;align-items:center;gap:12px;height:48px;padding:0 8px 0 18px;
  background:var(--white);border:1.5px solid var(--line);border-radius:14px;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.hdr-search:hover{border-color:#d8c49a}
.hdr-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 4px rgba(185,138,47,.13)}
.hdr-search .hs-ic{width:20px;height:20px;color:var(--gold);flex:none}
.hdr-search input{
  flex:1;min-width:0;border:0;outline:0;background:transparent;
  font-size:15px;color:var(--ink);letter-spacing:.02em;
}
.hdr-search input::placeholder{color:var(--ink-3)}
.hdr-search input::-webkit-search-cancel-button,.hdr-search input::-webkit-search-decoration{-webkit-appearance:none;display:none}
.hs-clear{
  flex:none;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;
  font-size:12px;color:var(--ink-3);transition:.2s;
}
.hs-clear:hover{color:var(--maroon);background:var(--gold-faint)}

/* ── tier 2 · the menu strip ───────────────────────────────────── */
@media (min-width:821px){
  .header > .nav{
    flex:none;width:100%;height:52px;
    display:flex;justify-content:center;align-items:stretch;
    border-top:1px solid var(--line);
    transition:height .3s var(--ease),opacity .25s var(--ease);
  }
  .header > .nav .nav-scroll{height:100%;align-items:center}
  /* collapse into the slim sticky bar once the shopper scrolls */
  .header.compact > .nav{height:0;opacity:0;overflow:hidden;border-top-color:transparent;pointer-events:none}
  /* desktop: the field replaces the magnifier icon */
  .header-top .search-btn{display:none}
}
@media (max-width:1080px){
  .hdr-search{display:none}
  .header-top .search-btn{display:inline-flex}
}

/* ── header icons — Tanishq-style far-right utility row ────────── */
.header-top .icon-btn{width:44px;height:44px;border-radius:13px}
.header-top .icon-btn svg{transition:stroke-width .2s}
.header-top .icon-btn:hover{
  background:var(--gold-faint);color:var(--maroon);
  transform:translateY(-2px);box-shadow:0 8px 18px rgba(185,138,47,.18);
}
.header-top .icon-btn:hover svg{stroke-width:2}
.header-top .icon-btn:active{transform:translateY(0) scale(.9)}
.header-top .badge{
  background:linear-gradient(135deg,var(--gold),#9c7223);
  border:1.5px solid #fffdf9;box-shadow:0 2px 6px rgba(61,14,21,.25);
  top:-1px;right:-2px;
}

/* ── button-feel polish (global, no layout change) ─────────────── */
.btn-gold,.btn-primary{overflow:hidden}
.btn-gold::after,.btn-primary::after{
  content:'';position:absolute;top:0;left:-90%;width:55%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,248,225,.35),transparent);
  transform:skewX(-22deg);transition:left .65s var(--ease);z-index:0;pointer-events:none;
}
.btn-gold:hover::after,.btn-primary:hover::after{left:130%}
.btn-gold:hover,.btn-primary:hover{transform:translateY(-2px)}
.btn-gold:active,.btn-primary:active{transform:translateY(1px) scale(.98)}
/* v99 · will-change is now scoped to (hover:hover).
   A permanent will-change pins a composited layer in GPU memory for EVERY
   matching element. This page carries dozens of .btn/.icon-btn at once, so on
   a mid-range handset that is dozens of resident layers — which costs more
   memory than it saves and can make scrolling worse, not better. Browsers
   already promote an element for the duration of a transform transition, so
   touch devices lose nothing and desktop keeps its exact behaviour. */
@media (hover:hover){
  .btn{will-change:transform}
  .icon-btn,.dw-close,.au-btn,.am2,.at-btn{will-change:transform}
}

/* ── mobile: single-row header — ☰ · logo · icons far right ────── */
@media (max-width:820px){
  .hdr-search{display:none}
  .header-in.header-top{height:64px;gap:12px}
  .header.scrolled .header-in.header-top{height:56px}
  .header-top .brand-logo{height:38px}
  .header.scrolled .brand-logo{height:32px}
  .header-top .icon-btn{width:42px;height:42px;border-radius:12px}
}
@media (max-width:680px){
  .header-in.header-top{height:60px}
  .header.scrolled .header-in.header-top{height:54px}
}

/* ── heritage poster slide ─────────────────────────────────────── */
.c-slide .c-fade{background:linear-gradient(90deg,rgba(23,4,8,.88) 8%,rgba(23,4,8,.55) 38%,rgba(23,4,8,.12) 62%,rgba(23,4,8,0) 78%)}

/* ── reduced motion ────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  .header > .nav{transition:none}
  .header-top .icon-btn,.btn{transition:none}
  .btn-gold::after,.btn-primary::after{display:none}
}
.hs-clear[hidden]{display:none}
/* badge overhang is desktop-only — keep the mobile viewport pixel-clean */
@media (max-width:820px){ .header-top .badge{right:0} }

/* ── v30 — auth error & help affordances ───────────────────────── */
.auth-err{
  display:flex;align-items:flex-start;gap:8px;
  background:#fdf2f0;border:1px solid rgba(163,38,56,.25);color:var(--bad);
  border-radius:11px;padding:10px 13px;font-size:12.6px;line-height:1.55;
  margin:2px 0 10px;
}
.auth-err.shake{animation:authShake .4s var(--ease)}
@keyframes authShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
.auth-help{
  display:flex;justify-content:center;gap:7px;margin-top:13px;
  font-size:12px;color:var(--ink-3);text-decoration:underline;
  text-decoration-color:rgba(185,138,47,.5);text-underline-offset:3px;
  transition:color .2s;
}
.auth-help:hover{color:var(--maroon)}
@media (prefers-reduced-motion:reduce){.auth-err.shake{animation:none}}

/* ── v31 — preview-mode note in the auth modal ─────────────────── */
.auth-preview-note{
  margin-top:10px;font-size:11.5px;line-height:1.55;color:var(--ink-2);
  background:var(--gold-faint);border:1px dashed rgba(185,138,47,.4);
  border-radius:10px;padding:9px 12px;
}

/* ═══════════════════════════════════════════════════════════════
   v32 — SHIVAA PASSPORT · the completely new login sheet
   ═══════════════════════════════════════════════════════════════ */
#shvAuthWrap{position:fixed;inset:0;z-index:1300;display:flex;align-items:flex-end;justify-content:center}
#shvAuthWrap[hidden]{display:none !important}
@media(min-width:721px){#shvAuthWrap{align-items:center}}
.shv-backdrop{position:absolute;inset:0;background:rgba(26,8,12,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:shvFade .25s ease}
.shv-card{position:relative;width:100%;max-width:430px;max-height:92dvh;overflow-y:auto;background:
  linear-gradient(180deg,#fffdf8 0%,#fdf6e9 100%);border:1px solid rgba(185,138,47,.35);border-radius:26px 26px 0 0;
  box-shadow:0 -18px 70px rgba(46,10,18,.45);animation:shvUp .32s cubic-bezier(.22,1,.36,1)}
@media(min-width:721px){.shv-card{border-radius:22px;box-shadow:0 30px 90px rgba(46,10,18,.5);animation:shvPop .28s cubic-bezier(.22,1,.36,1)}}
@keyframes shvFade{from{opacity:0}to{opacity:1}}
@keyframes shvUp{from{transform:translateY(60px);opacity:0}to{transform:none;opacity:1}}
@keyframes shvPop{from{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.shv-head{display:flex;align-items:center;gap:12px;padding:18px 20px 14px;border-bottom:1px solid rgba(185,138,47,.22);
  background:linear-gradient(180deg,rgba(255,250,238,.9),rgba(253,246,233,.4));position:sticky;top:0;z-index:2}
.shv-emblem{position:relative;width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center}
.shv-emblem img{height:30px;position:relative;z-index:1}
.shv-emblem i{position:absolute;inset:0;border:1.5px solid var(--gold);border-radius:50%}
.shv-emblem i+i{inset:4px;border-color:rgba(185,138,47,.4);transform:rotate(24deg)}
.shv-head-tx{flex:1;min-width:0}
.shv-head-tx b{display:block;font-family:var(--ff-disp);font-size:19px;color:var(--maroon-deep);line-height:1.15}
.shv-head-tx small{display:block;font-size:12px;color:var(--ink-3);margin-top:2px}
.shv-x{width:38px;height:38px;flex:0 0 38px;border-radius:50%;border:1px solid rgba(185,138,47,.35);background:#fff;
  color:var(--maroon);font-size:14px;cursor:pointer;display:grid;place-items:center;transition:.18s}
.shv-x:hover{background:var(--maroon);color:#fff;transform:rotate(90deg)}
.shv-body{padding:20px 22px 8px;animation:shvStep .28s ease}
@keyframes shvStep{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.shv-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 22px 16px;font-size:11px;color:var(--ink-3)}
.shv-foot a{color:var(--maroon);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.shv-back{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0 0 12px;border-radius:50%;
  border:1px solid rgba(185,138,47,.35);background:#fff;color:var(--maroon);font-size:18px;cursor:pointer;line-height:1}
.shv-back:hover{background:var(--gold-faint)}
.shv-body{position:relative}

/* segmented audience control */
.shv-seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:rgba(185,138,47,.12);border:1px solid rgba(185,138,47,.25);
  padding:5px;border-radius:14px;margin-bottom:18px}
.shv-seg-btn{border:0;background:transparent;padding:10px 6px;border-radius:10px;font-size:13px;font-weight:600;color:var(--ink-2);
  cursor:pointer;transition:.18s;font-family:inherit}
.shv-seg-btn.on{background:linear-gradient(135deg,var(--maroon),var(--maroon-deep));color:#fff;box-shadow:0 4px 14px rgba(107,16,32,.35)}
.aud-jwl .shv-seg-btn.on{background:linear-gradient(135deg,#0c6b4e,#08563e);box-shadow:0 4px 14px rgba(12,107,78,.35)}

/* door buttons */
.shv-door{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:15px 16px;margin-bottom:12px;border-radius:16px;
  border:1px solid rgba(185,138,47,.4);background:#fff;cursor:pointer;transition:.18s;font-family:inherit;
  box-shadow:0 2px 10px rgba(107,16,32,.06)}
.shv-door:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(107,16,32,.14);border-color:var(--gold)}
.shv-door-gold{background:linear-gradient(135deg,#fff8e9,#fdf1d3);border-color:var(--gold)}
.shv-door-soft{background:#f4faf7;border-color:rgba(12,107,78,.3)}
.sd-ic{font-size:22px;flex:0 0 30px;text-align:center}
.sd-tx{flex:1;min-width:0}
.sd-tx b{display:block;font-size:15px;color:var(--maroon-deep)}
.sd-tx small{display:block;font-size:12px;color:var(--ink-3);margin-top:2px;line-height:1.4}
.sd-tx em.shv-rec{float:right;font-style:normal;font-size:10px;letter-spacing:.4px;text-transform:uppercase;background:var(--gold);
  color:#fff;border-radius:20px;padding:2px 8px;margin-left:6px}
.sd-arrow{font-size:22px;color:var(--gold);transition:.18s}
.shv-door:hover .sd-arrow{transform:translateX(4px)}
.shv-fine{font-size:12px;color:var(--ink-3);line-height:1.6;margin:12px 2px 10px}
.shv-fine a{color:var(--maroon);font-weight:600}

/* forms */
.shv-lbl{display:block;font-size:11.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-3);font-weight:700;margin:14px 0 6px}
.shv-lbl small{text-transform:none;letter-spacing:0;color:var(--ink-3);font-weight:500}
.shv-vfy{color:#0c6b4e;font-weight:700}
.shv-body input{width:100%;padding:13px 14px;border:1.5px solid rgba(185,138,47,.4);border-radius:12px;background:#fff;
  font:inherit;font-size:15px;color:var(--ink);transition:.18s}
.shv-body input:focus{outline:0;border-color:var(--maroon);box-shadow:0 0 0 3px rgba(107,16,32,.12)}
.shv-body input.shv-ro{background:var(--gold-faint);color:var(--ink-2)}
.shv-phone-row{display:flex;gap:8px;align-items:stretch}
.shv-cc{display:grid;place-items:center;padding:0 14px;border:1.5px solid rgba(185,138,47,.4);border-radius:12px;
  background:var(--gold-faint);font-weight:700;color:var(--maroon-deep)}
.shv-pw{position:relative}
.shv-pw input{padding-right:48px}
.shv-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:17px;
  cursor:pointer;padding:8px;opacity:.75}
.shv-cta{width:100%;margin-top:18px;padding:15px;border:0;border-radius:14px;cursor:pointer;
  background:linear-gradient(135deg,#8d1b34,var(--maroon-deep));color:#fff;font-family:var(--ff-disp);font-size:16px;
  letter-spacing:.6px;box-shadow:0 10px 24px rgba(107,16,32,.35);transition:.18s}
.shv-cta:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(107,16,32,.42)}
.shv-cta:disabled{opacity:.7;cursor:wait;transform:none}
.aud-jwl .shv-cta{background:linear-gradient(135deg,#0c6b4e,#08563e);box-shadow:0 10px 24px rgba(12,107,78,.32)}
.shv-spin{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;
  margin-right:8px;vertical-align:-2px;animation:shvRot .7s linear infinite}
@keyframes shvRot{to{transform:rotate(360deg)}}
.shv-link{border:0;background:transparent;color:var(--maroon);font-weight:600;font-size:13px;cursor:pointer;font-family:inherit;
  text-decoration:underline;text-underline-offset:3px;padding:4px 6px}
.shv-link:disabled{color:var(--ink-3);text-decoration:none;cursor:default}
.shv-otp-acts{display:flex;justify-content:space-between;align-items:center;margin-top:12px}

/* OTP boxes */
.shv-otp{display:flex;gap:8px;justify-content:center;margin:18px 0 4px}
.shv-otp input{width:46px;height:56px;text-align:center;font-size:24px;font-weight:700;font-family:var(--ff-disp);
  color:var(--maroon-deep);padding:0}
@media(max-width:380px){.shv-otp input{width:38px;height:50px;font-size:20px}}
.shv-demo{margin:12px auto 0;text-align:center;font-size:12.5px;color:var(--ink-2);background:var(--gold-faint);
  border:1px dashed rgba(185,138,47,.5);border-radius:10px;padding:8px 10px;max-width:280px}
.shv-new-hi{font-size:13.5px;line-height:1.6;color:var(--ink-2);background:#f4faf7;border:1px solid rgba(12,107,78,.25);
  border-radius:12px;padding:11px 13px;margin-top:6px}

/* password meter */
.shv-meter{height:4px;border-radius:4px;background:rgba(185,138,47,.2);margin-top:8px;overflow:hidden}
.shv-meter i{display:block;height:100%;width:0;border-radius:4px;transition:.25s;background:var(--gold)}
.shv-meter i.weak{width:25%;background:#c0392b}.shv-meter i.ok{width:50%;background:var(--gold)}
.shv-meter i.good{width:75%;background:#0c6b4e}.shv-meter i.strong{width:100%;background:#0a5c43}

/* inline error */
.shv-err{margin:0 0 12px;padding:11px 13px;border-radius:12px;font-size:13px;line-height:1.55;color:#7c0d22;
  background:#fdeef0;border:1px solid rgba(192,57,43,.35)}
.shv-err a{color:var(--maroon);font-weight:700}
.shv-err small{color:var(--ink-2)}
.shv-err.shake{animation:shvShake .4s}
@keyframes shvShake{20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}

/* preview note */
.shv-preview{margin:14px 0 8px;font-size:11.5px;line-height:1.55;color:var(--ink-2);background:var(--gold-faint);
  border:1px dashed rgba(185,138,47,.4);border-radius:10px;padding:9px 12px}

@media (prefers-reduced-motion: reduce){
  .shv-backdrop,.shv-card,.shv-body{animation:none}
  .shv-door,.shv-cta,.shv-x,.shv-door .sd-arrow{transition:none}
}

/* ═══════════════ v35 — partner portal reachability + banner art directions ═══════════════ */

/* ── emerald B2B portal pill (header, signed-in partners/admin only) ── */
.portal-pill{display:inline-flex;align-items:center;gap:7px;margin-right:6px;padding:8px 14px;border-radius:999px;
  background:linear-gradient(135deg,#0e3a2a,#1a5c44);border:1px solid #C29A45;color:#f3e7c8;font-size:12.5px;font-weight:600;
  letter-spacing:.05em;text-decoration:none;white-space:nowrap;transition:filter .18s ease,transform .18s ease}
.portal-pill svg{width:14px;height:14px;color:#d9b96a;flex:0 0 auto}
.portal-pill:hover{filter:brightness(1.15);transform:translateY(-1px)}
.portal-pill[hidden]{display:none!important}
@media(max-width:660px){.portal-pill{padding:9px 10px}.portal-pill span{display:none}.portal-pill{gap:0}}

/* ── account page · partner portal tile ── */
.acct-tile.portal{background:linear-gradient(135deg,rgba(14,58,42,.96),rgba(26,92,68,.9));border:1px solid rgba(194,154,69,.55)}
.acct-tile.portal .at-ic{color:#d9b96a}
.acct-tile.portal b{color:#f3e7c8}
.acct-tile.portal small{color:rgba(243,231,200,.75)}

/* ── carousel · four distinct art directions ── */
/* center stage (bridal) */
.c-fade.fade-c{background:radial-gradient(120% 95% at 50% 42%,rgba(24,4,8,.9) 0%,rgba(24,4,8,.62) 42%,rgba(24,4,8,.12) 78%)}
.s-center .c-body{text-align:center;margin:0 auto;max-width:640px}
.s-center .c-body p{margin-left:auto;margin-right:auto}
.s-center .c-cta{justify-content:center}
/* right rail (everyday) */
.c-fade.fade-r{background:linear-gradient(270deg,rgba(24,4,8,.93) 0%,rgba(24,4,8,.62) 40%,rgba(24,4,8,.06) 76%)}
.s-right .c-body{margin-left:auto;text-align:right;max-width:560px}
.s-right .c-body p{margin-left:auto}
.s-right .c-cta{justify-content:flex-end}
.s-right .c-body .label{color:#9fe0bd}
/* heritage watermark numeral */
.c-wm{position:absolute;right:1.5%;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;
  font-family:var(--ff-disp);font-size:clamp(56px,8.5vw,124px);color:rgba(216,181,106,.13);letter-spacing:.12em;
  z-index:1;user-select:none;pointer-events:none;font-weight:700}
.s-left .c-body::before{content:'';display:block;width:64px;height:2px;margin-bottom:16px;
  background:linear-gradient(90deg,#d9b96a,transparent)}
/* seal variants */
.seal-plaque{border-radius:14px;background:rgba(46,10,16,.55);border:1px solid rgba(194,154,69,.5);
  backdrop-filter:blur(5px);padding:12px 20px}
.seal-medallion{border-radius:50%;width:132px;height:132px;max-width:none;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;margin:6px auto 14px;position:relative;background:rgba(46,10,16,.5);border:1px solid rgba(194,154,69,.55);backdrop-filter:blur(5px)}
.seal-medallion::before{content:'';position:absolute;inset:-9px;border-radius:50%;border:1px dashed rgba(217,185,106,.6);
  animation:shvSpin 28s linear infinite}
.seal-medallion b{font-size:30px}
.seal-medallion small{display:block;font-size:9px;letter-spacing:.18em}
.seal-medallion span{font-size:9.5px;display:block;max-width:92px;line-height:1.35;margin-top:4px}
@keyframes shvSpin{to{transform:rotate(360deg)}}
/* price lockup (everyday) */
.price-lock{margin:4px 0 6px}
.price-lock b{display:block;font-family:var(--ff-disp);font-size:clamp(42px,5vw,64px);line-height:1;color:#fdf3dd}
.price-lock span{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:#d9b96a}
/* gold band panel (savings) */
.s-band .c-panel{position:relative;z-index:2;max-width:520px;margin-left:max(6vw,26px);padding:40px 44px;border-radius:22px;
  background:linear-gradient(160deg,rgba(61,14,21,.94),rgba(110,30,42,.82));border:1px solid rgba(194,154,69,.55);
  backdrop-filter:blur(6px);color:#fdf3dd}
.s-band .c-panel .label{color:#d9b96a;display:inline-block;margin-bottom:10px}
.s-band .sn-num{font-family:var(--ff-disp);font-size:clamp(54px,6.5vw,92px);line-height:1;
  background:linear-gradient(180deg,#f3dfae,#b98a2f);-webkit-background-clip:text;background-clip:text;color:transparent}
.s-band .sn-num span{color:#d9b96a;-webkit-text-fill-color:#d9b96a;font-size:.55em;vertical-align:12%}
.s-band .c-panel h3{font-size:clamp(24px,2.6vw,34px);margin:8px 0 10px}
.s-band .c-panel p{font-size:14.5px;color:rgba(253,243,221,.85);font-weight:300;margin:0 0 20px}
/* mobile + motion safety */
@media(max-width:760px){
  .c-wm{display:none}
  .s-band .c-panel{margin:0 18px;padding:26px 24px}
  .s-center .seal-medallion{width:108px;height:108px}
  .s-right .c-body{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  .seal-medallion::before{animation:none}
  .portal-pill:hover{transform:none}
}

/* ─────────────── v36 · product videos (AI photoshoot films) ─────────────── */
.gal-slide.gal-vid video{width:100%;height:100%;object-fit:cover;background:#111}
.gal-slide.gal-vid .gal-vid-tag{position:absolute;left:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:rgba(12,40,28,.82);color:#fff;font:600 12px/1 var(--sans);letter-spacing:.06em;padding:8px 12px;border-radius:99px;backdrop-filter:blur(4px);pointer-events:none}
.pc-vid-badge{position:absolute;right:10px;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:5px;background:rgba(12,40,28,.85);color:#fff;font:600 11px/1 var(--sans);letter-spacing:.05em;padding:6px 9px;border-radius:99px;pointer-events:none}
.pc-vid-badge svg{width:9px;height:9px;fill:currentColor}
@media(max-width:760px){.gal-slide.gal-vid .gal-vid-tag{font-size:11px;padding:7px 10px}}

/* ═══════════════ v38 · Feature 13 — product compare + shareable shortlist ═══════════════ */
.compare-btn.on{color:var(--maroon);background:var(--gold-faint);box-shadow:inset 0 0 0 1.5px var(--gold-soft)}
.pc-compare{position:absolute;top:10px;right:56px;z-index:3;height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border-radius:999px;background:rgba(255,253,249,.94);color:var(--ink-2);box-shadow:var(--sh-1);border:1px solid rgba(230,217,192,.86);font-family:var(--ff-label);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s,box-shadow .25s}
.pc-compare svg{width:16px;height:16px;flex:none}
.pc-compare:hover{color:var(--maroon);border-color:var(--gold);background:var(--gold-faint);box-shadow:var(--sh-2)}
.pc-compare.on{color:#fff;background:linear-gradient(135deg,var(--maroon),var(--maroon-2));border-color:var(--gold-soft)}
.p-card .pc-compare{transition:transform .45s var(--ease),background .25s,color .25s,border-color .25s,box-shadow .25s}
@media(hover:hover) and (pointer:fine){.p-card:hover .pc-compare{transform:translateZ(40px)}}
.pd-compare.on{background:var(--gold-faint);border-color:var(--gold);color:var(--maroon)}
.pd-cta-row{flex-wrap:wrap}.pd-cta-row .pd-compare{flex:1 1 100%}

.compare-tray{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:88;width:min(720px,calc(100vw - 28px));filter:drop-shadow(0 22px 42px rgba(61,14,21,.22));transition:transform .28s var(--ease),opacity .28s var(--ease)}
.compare-tray[hidden],body[data-page="compare"] .compare-tray{display:none!important}
.compare-tray-in{display:flex;align-items:center;gap:14px;padding:10px 12px 10px 16px;border:1px solid rgba(212,175,90,.45);border-radius:22px;background:linear-gradient(135deg,rgba(255,253,249,.96),rgba(247,238,216,.96));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.compare-tray-copy{min-width:142px}.compare-tray-copy b{display:block;font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep);line-height:1}.compare-tray-copy small{display:block;color:var(--ink-3);font-size:11.5px;margin-top:2px}
.compare-tray-thumbs{display:flex;gap:8px;align-items:center;flex:1;min-width:0;overflow:auto;padding:2px;scrollbar-width:thin}.ct-thumb{position:relative;flex:0 0 auto}.ct-thumb a{display:block;border-radius:13px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh-1)}.ct-thumb img{width:46px;height:46px;object-fit:cover}.ct-thumb button{position:absolute;right:-6px;top:-7px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--maroon);color:#fff;border:1.5px solid #fff;font-size:14px;line-height:1;box-shadow:0 4px 10px rgba(61,14,21,.25)}
.compare-tray-actions{display:flex;gap:8px;align-items:center;flex:none}.compare-tray-actions .btn{padding-inline:16px}

.pcmp-page{padding-top:46px}.pcmp-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.pcmp-toolbar h2{font-size:clamp(28px,3.8vw,42px);margin:4px 0}.pcmp-toolbar p{color:var(--ink-2);max-width:560px}.pcmp-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.pcmp-tools .btn svg,.pcmp-card-actions .btn svg,.pcmp-foot-cta .btn svg{width:16px;height:16px}
.pcmp-note{margin:0 0 18px;padding:14px 18px;border:1px solid rgba(212,175,90,.35);border-radius:16px;background:linear-gradient(135deg,var(--gold-faint),rgba(255,253,249,.9));color:var(--ink-2)}.pcmp-note b{font-family:var(--ff-disp);font-size:24px;color:var(--maroon-deep)}.pcmp-tip{margin-bottom:18px}
.pcmp-empty{padding:100px 20px 120px}.pcmp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:20px 0 28px}.pcmp-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--white);box-shadow:var(--sh-1);transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s}.pcmp-card:hover{transform:translateY(-4px);box-shadow:var(--sh-3);border-color:var(--gold-soft)}.pcmp-img{display:block;aspect-ratio:1/1;background:var(--cream-2);overflow:hidden}.pcmp-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.pcmp-card:hover .pcmp-img img{transform:scale(1.06)}.pcmp-card-body{padding:17px 18px 19px}.pcmp-card h3{font-size:23px;margin:4px 0 7px}.pcmp-card p{font-size:13px;color:var(--ink-3);min-height:42px}.pcmp-price{display:inline-block;margin-top:9px;font-size:24px;font-family:var(--ff-disp);color:var(--maroon-deep)}.pcmp-card-body small{color:var(--ink-3)}.pcmp-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pcmp-card-actions .btn{flex:1 1 120px;padding-inline:12px}.pcmp-remove{position:absolute;right:12px;top:12px;z-index:3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(61,14,21,.86);color:#fff;border:1px solid rgba(255,255,255,.55);box-shadow:var(--sh-1);font-size:22px;line-height:1;transition:transform .2s var(--ease),background .2s}.pcmp-remove:hover{background:var(--bad);transform:scale(1.06)}
.pcmp-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:22px;background:var(--white);box-shadow:var(--sh-1);outline:none}.pcmp-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}.pcmp-table th,.pcmp-table td{padding:15px 17px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.pcmp-table thead th{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,var(--maroon-deep),var(--maroon));color:#f9ecd2;font-family:var(--ff-label);font-weight:500;letter-spacing:.06em}.pcmp-table thead th a{color:#fff3d0}.pcmp-table tbody th{position:sticky;left:0;background:var(--ivory);z-index:1;color:var(--maroon);font-weight:600;min-width:150px}.pcmp-table td{color:var(--ink-2);min-width:180px}.pcmp-table td b{color:var(--ink);font-weight:600}.pcmp-table td small{display:block;color:var(--ink-3);font-size:11.5px}.pcmp-table tr:last-child th,.pcmp-table tr:last-child td{border-bottom:0}.pcmp-total-row td b{font-family:var(--ff-disp);font-size:23px;color:var(--maroon-deep)}
.pcmp-foot-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,var(--maroon-deep),var(--maroon));color:#f9ecd2;box-shadow:var(--sh-2);position:relative;overflow:hidden}.pcmp-foot-cta::after{content:'';position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(212,175,90,.28);box-shadow:0 0 0 44px rgba(212,175,90,.08);pointer-events:none}.pcmp-foot-cta b{font-family:var(--ff-disp);font-size:26px;color:#fff3d0}.pcmp-foot-cta p{color:rgba(249,236,210,.78);font-size:14px}.pcmp-foot-cta .btn{position:relative;z-index:1;flex:none}

@media(max-width:820px){
  .compare-tray{left:10px;right:10px;bottom:78px;transform:none;width:auto}.compare-tray-in{gap:10px;padding:10px;border-radius:18px}.compare-tray-copy{min-width:112px}.compare-tray-copy b{font-size:17px}.compare-tray-copy small{font-size:10.5px}.compare-tray-actions .btn{padding:9px 13px;font-size:10.5px}.ct-thumb img{width:42px;height:42px}
  body[data-page="product"] .compare-tray{bottom:92px}.pcmp-toolbar{display:block}.pcmp-tools{justify-content:flex-start;margin-top:16px}.pcmp-table{min-width:680px}.pcmp-foot-cta{display:block}.pcmp-foot-cta .btn{width:100%;margin-top:16px}
}
@media(max-width:560px){
  .pc-compare{top:8px;right:52px;width:36px;padding:0;justify-content:center}.pc-compare span{display:none}.header-top .compare-btn{display:none}.compare-tray-copy small{display:none}.compare-tray-thumbs{max-width:148px}.pcmp-grid{grid-template-columns:1fr}.pcmp-card p{min-height:0}.pcmp-tools .btn{flex:1 1 calc(50% - 6px);padding-inline:10px}.pcmp-table th,.pcmp-table td{padding:13px 14px}.pd-cta-row .pd-compare{flex-basis:100%}
}
@media(max-width:380px){.compare-tray-copy{display:none}.compare-tray-thumbs{max-width:170px}.compare-tray-actions{margin-left:auto}.compare-tray-actions .btn:last-child{display:none}}
@media(prefers-reduced-motion:reduce){
  .pc-compare,.p-card .pc-compare,.compare-tray,.pcmp-card,.pcmp-img img,.pcmp-remove{transition:none!important}.pc-compare:hover,.pc-compare.on,.p-card:hover .pc-compare,.pcmp-card:hover,.pcmp-remove:hover{transform:none!important}.pcmp-foot-cta::after{box-shadow:none}
}
.pcmp-table-wrap:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px}
@media print{.compare-tray{display:none!important}}

/* Narrow phones: account/wishlist remain in the bottom navigation. Avoid
   pushing search/cart off-screen when opening the HUID guide at 320px. */
@media(max-width:380px){
  .header-top .header-actions #acctBtn,.header-top .header-actions #wishBtn{display:none}
}

/* ═══════════════════════════════════════════════════════════════════
   v42 · MOBILE PERFORMANCE LOCKDOWN
   Fixes: homepage flicker, scroll-jank, hero-card vibration,
   white blank first banner, page unresponsiveness on Android Chrome.
   All heavy compositor work disabled on touch devices.
   ═══════════════════════════════════════════════════════════════════ */

/* ── Disable ALL heavy animations on mobile ── */
@media (max-width: 820px) {
  /* Kill hero orb float animation */
  .orb { animation: none !important; }
  
  /* Kill hero-stage card float + vibration */
  .hs-card, .hs-main, .hs-a, .hs-b, .hs-badge {
    animation: none !important;
    transform: none !important;
    will-change: auto !important;
  }
  
  /* Kill Ken-Burns zoom on mobile */
  .hero-img { animation: none !important; transform: none !important; }
  .ken-on .hero-img { animation: none !important; }
  .ken-on .c-slide.on img { animation: none !important; }
  .c-slide img { animation: none !important; }
  
  /* Kill poster shine sweep on mobile */
  .c-slide::after { animation: none !important; }
  
  /* Kill gold foil text animation on mobile */
  .foil-txt, em.foil-txt, .hero h1 em.foil-txt, h1 .foil-txt, h3 .foil-txt {
    animation: none !important;
    background: linear-gradient(135deg, var(--gold-soft), var(--gold-2)) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
  }
  
  /* Kill shimmer text on mobile */
  .shimmer-text, .hero h1 em.shimmer, em.shimmer {
    animation: none !important;
    background: linear-gradient(135deg, var(--gold-soft), var(--gold-2)) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
  }
  
  /* Kill dust particles on mobile */
  .dust { display: none !important; }
  #heroDust { display: none !important; }
  
  /* Kill cursor glow on mobile */
  .cursor-glow { display: none !important; }
  
  /* Kill magnetic hover effects */
  .magnetic { transform: none !important; }
  
  /* Kill card tilt on mobile */
  .p-card, .cat-card, .poster, .testi {
    transform: none !important;
    transform-style: flat !important;
    will-change: auto !important;
  }
  .p-card:hover .pc-imgwrap,
  .p-card:hover .pc-body,
  .p-card:hover .pc-tags,
  .p-card:hover .pc-wish { transform: none !important; }
  
  /* Kill pillar animations on mobile */
  .pillar:hover .pl-icon { transform: none !important; }
  .pl-shine { display: none !important; }
  .pl-draw { animation: none !important; stroke-dashoffset: 0 !important; }
  .pillar:hover .pl-orb { transform: none !important; }
  .pillar:hover .pl-shine { animation: none !important; }
  
  /* Kill wp-card animations on mobile */
  .wp-card:hover .wp-ic { transform: none !important; }
  .wp-card:hover .wp-shine { animation: none !important; }
  
  /* Kill poster hover transforms */
  .poster:hover { transform: none !important; }
  .poster:hover::after { transform: none !important; }
  .poster:hover .p-frame { opacity: 0 !important; }
  
  /* Kill vault card hover on mobile */
  .vault-card:hover, .ms-card:hover, .step-item:hover, .mth-cell:hover { transform: none !important; }
  
  /* Kill cat-card hover scale */
  .cat-card:hover img { transform: none !important; }
  .p-card:hover .pc-imgwrap img { transform: none !important; }
  
  /* Kill rate strip shimmer on mobile */
  .rate-strip::before { animation: none !important; }
  
  /* Kill footer sparkle animation on mobile */
  .f-sparks span { animation: none !important; opacity: 0 !important; }
  
  /* Kill emblem spin on mobile */
  .f-emblem .ring-a { animation: none !important; }
  .f-emblem .ring-b { animation: none !important; }
  
  /* Kill gold wordmark shimmer */
  .f-wordmark { text-shadow: none !important; }
  
  /* Kill preloader sweep on mobile */
  .pl-line i { animation-duration: 2.5s !important; }
  
  /* Kill btn sweep on mobile */
  .btn-primary::before, .btn-gold::before,
  .btn-gold::after, .btn-primary::after { display: none !important; }
  
  /* Kill jwlGlow on mobile */
  .btn-jwl { animation: none !important; }
  
  /* Kill seal medallion spin */
  .seal-medallion::before { animation: none !important; }
  
  /* Kill ndPop animation on mobile */
  .nd-seg { animation: none !important; opacity: 1 !important; transform: none !important; }
  .nd-core { animation: none !important; opacity: 1 !important; }
  
  /* Kill coin stack animation */
  .cs-coin { animation: none !important; opacity: 1 !important; }
  
  /* Kill bar grow */
  .mt-bars i { animation: none !important; }
  .mp-bars i { animation: none !important; }
  
  /* Kill mprDraw */
  .mpr-fg { animation: none !important; stroke-dashoffset: 88 !important; }
  
  /* Kill mp-glow, mp-dust */
  .mp-glow { animation: none !important; display: none !important; }
  .mp-dust { display: none !important; }
  
  /* Kill dsPulse */
  .ds-hero::before { animation: none !important; }
  
  /* Kill jwlSheen */
  .nav a.nav-jwl::after { animation: none !important; display: none !important; }
  
  /* Kill auth shake on mobile */
  .auth-err.shake { animation: none !important; }
  .shv-err.shake { animation: none !important; }
  
  /* Kill poster shine animation */
  @keyframes posterShine { 0%, 100% { background-position: 130% 0; } }
  
  /* Kill bbrPop on mobile */
  .bbr-pop { animation: none !important; }
  
  /* Kill shvKen on mobile */
  .c-slide.on .c-body > * { animation: none !important; }
  
  /* Kill hUp hero animations on mobile - show content immediately */
  .hero-kicker, .hero h1, .hero-sub, .hero-cta, .hero-trust, .hero-stats {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  
  /* Fix carousel transition — use simpler transform on mobile */
  .c-track { transition: transform 0.4s ease !important; }
}

/* ── Force GPU-only compositing on mobile ── */
@media (max-width: 820px) {
  .hero-stage {
    perspective: none !important;
    transform-style: flat !important;
  }
  
  .hs-card {
    transform-style: flat !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
  }
  
  /* Remove 3D card depth on mobile */
  .p-card {
    transform-style: flat !important;
  }
  
  /* Disable preserve-3d on cards */
  .cat-card, .acct-tile, .addr-card, .order-card, .adm-card, .catlog, .testi, .trust {
    transform-style: flat !important;
  }
}

/* ── Ensure hero stage cards are visible (fix white blank) ── */
@media (max-width: 680px) {
  .hs-card {
    transform: none !important;
    opacity: 1 !important;
  }
  .hs-main {
    width: 78% !important;
    height: 70% !important;
    left: 2% !important;
    top: 6% !important;
  }
  .hs-a {
    width: 44% !important;
    height: 24% !important;
    right: 1% !important;
    top: 12% !important;
  }
  .hs-b {
    width: 38% !important;
    height: 20% !important;
    right: 6% !important;
    bottom: 7% !important;
  }
}

/* ── Scroll jank prevention: limit paint on mobile ── */
@media (max-width: 820px) {
  /* v80 — a blurred translucent sticky header repaints every scroll frame on
     low-end Android (the visible header flicker). Use a solid cheap header
     and never animate its height while scrolling. */
  .header {
    background:#f7f3ea !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  .header-in, .header-in.header-top { transition:none !important; }
  .header.scrolled .header-in.header-top { height:64px; }
  .header.scrolled .brand-logo { height:38px; }

  /* Simplify scroll progress bar */
  .scroll-progress {
    transition: none !important;
  }
  
  /* Remove backdrop-filter from modal on mobile */
  .modal-overlay {
    backdrop-filter: blur(3px) !important;
    -webkit-backdrop-filter: blur(3px) !important;
  }
  
  /* Simplify mnav backdrop */
  .mnav {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }
  
  /* Reduce box-shadow complexity */
  .p-card:hover {
    box-shadow: 0 4px 12px rgba(61,14,21,.1) !important;
  }
  
  /* Disable glare effect on mobile */
  .glare { display: none !important; }
}

/* ── Fix for content visibility: never leave cards invisible ── */
.pillar, .wp-card, .ugc-card, .rvl, .rv {
  /* Failsafe: if JS never triggers the observer, show after 4s */
}

/* ── B2B mobile design selection clean fix ── */
@media (max-width: 680px) {
  .ds-hero { padding: 20px 16px !important; border-radius: 16px !important; }
  .ds-hero h3 { font-size: 22px !important; }
  .ds-hero p { font-size: 12px !important; }
  .ds-hero .btn { width: 100% !important; justify-content: center !important; }
  .ds-hero-row { gap: 8px !important; }
  .ds-pill { font-size: 11px !important; padding: 6px 12px !important; }
  
  /* Design selection grid — clean cards */
  .ds-card { border-radius: 14px !important; }
  .ds-card .ds-img { aspect-ratio: 1/1 !important; }
  .ds-qty { min-height: 40px !important; }
  .ds-qty button { min-width: 40px !important; min-height: 40px !important; }
  
  /* Filter bar — compact */
  .ds-filters { padding: 8px !important; gap: 6px !important; }
  .ds-filters select { font-size: 12px !important; padding: 8px 10px !important; }
  .dsf-w input { width: 58px !important; }
  
  /* Portal filter bar — clean */
  .pf-bar { padding: 10px !important; gap: 6px !important; }
  .pf-chip { min-height: 34px !important; font-size: 11px !important; padding: 6px 10px !important; }
  .pf-f select, .pf-f input { min-height: 40px !important; font-size: 12px !important; }
  
  /* Bullion rows — clean */
  .bl-row { padding: 10px 12px !important; gap: 8px !important; }
  .bl-row .nm b { font-size: 13px !important; }
  .bl-row .pr b { font-size: 15px !important; }
  
  /* Metal scheme teaser */
  .mtl-teaser { padding: 14px !important; gap: 10px !important; }
  .mtt-tx b { font-size: 13px !important; }
  .mtt-tx small { font-size: 11px !important; }
}

/* ── Deadstock page — intentionally untouched (preserved as-is) ── */

/* ─── v54 UX additions ─── */
#scrollProg {
  position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 4000;
  background: linear-gradient(90deg, var(--gold), #e7c574); transform-origin: 0 50%;
  transform: scaleX(0); pointer-events: none;
}
#backTop {
  position: fixed; right: 16px; bottom: 84px; z-index: 3000; width: 42px; height: 42px;
  border-radius: 50%; border: 1px solid var(--gold-soft); background: var(--maroon-deep);
  color: var(--gold-soft); font-size: 17px; cursor: pointer; opacity: 0; transform: translateY(10px);
  transition: opacity .25s var(--ease), transform .25s var(--ease); box-shadow: var(--sh-2);
}
#backTop.show { opacity: 1; transform: none; }
#view > * { animation: viewIn .45s var(--ease) both; }
@keyframes viewIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; border-radius: 4px; }

/* trending / recently viewed strips */
.tv-head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 14px; }
.tv-h { font-family: var(--ff-disp); font-size: clamp(22px, 3vw, 30px); color: var(--maroon-deep); margin: 4px 0 0; }
.tv-row { display: grid; grid-template-columns: repeat(auto-fill, minmax(158px, 1fr)); gap: 12px; }
.tv-card { background: var(--white); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; transition: transform .18s var(--ease), box-shadow .18s; }
.tv-card:hover { transform: translateY(-3px); box-shadow: var(--sh-2); }
.tv-ph { aspect-ratio: 1; background: var(--cream-2); }
.tv-ph img { width: 100%; height: 100%; object-fit: cover; }
.tv-b { padding: 9px 11px 12px; display: grid; gap: 2px; }
.tv-b b { font-size: 12.5px; color: var(--maroon); line-height: 1.3; }
.tv-b small { font-size: 10.5px; color: var(--ink-3); }
.tv-b span { font-size: 13px; font-weight: 600; color: var(--maroon-deep); margin-top: 3px; }

/* mobile sticky buy bar on product pages */
#pdpBuybar {
  display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 3500;
  gap: 8px; align-items: center; padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: rgba(255,255,255,.96); backdrop-filter: blur(8px); border-top: 1px solid var(--line);
  box-shadow: 0 -6px 20px rgba(29,5,9,.08);
}
body.pdp-on #pdpBuybar { display: flex; }
@media (min-width: 821px) { #pdpBuybar { display: none !important; } }
#pdpBuybar .bb-price { font-weight: 700; color: var(--maroon-deep); margin-right: auto; font-size: 15px; }
.gal-slide img.zoomed { transform: scale(2.1); transition: transform .25s var(--ease); cursor: zoom-out; }
.gal-slide img { transition: transform .25s var(--ease); }

/* ─── v55 additions ─── */
/* v56: the fixed bottom-left 22K-rate pill was removed on request — the
   rate stays available on #/rates and in the top utility strip. */
.ready-badge {
  position: absolute; top: 10px; left: 10px; z-index: 2; padding: 4px 9px; border-radius: 999px;
  background: rgba(61,14,21,.92); color: var(--gold-soft); font-size: 10.5px; font-weight: 700; letter-spacing: .04em;
}
.p-card { position: relative; }
#backBar {
  position: fixed; left: 50%; transform: translateX(-50%); bottom: 96px; z-index: 3600;
  display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-radius: 14px;
  background: var(--white); border: 1px solid var(--gold-soft); box-shadow: var(--sh-3, 0 12px 34px rgba(29,5,9,.22));
  font-size: 13px; max-width: min(94vw, 480px);
}
.emi-box { border: 1px dashed var(--gold-soft); border-radius: 12px; padding: 10px 14px; margin: 10px 0; background: var(--gold-faint); }
.emi-box summary { cursor: pointer; font-weight: 600; font-size: 13.5px; color: var(--maroon-deep); }
.emi-in { display: grid; gap: 4px; margin-top: 8px; font-size: 13.5px; }
.emi-in small { color: var(--ink-3); font-size: 11.5px; }
@media print {
  header, footer, .utility-strip, #backTop, #pdpBuybar, #backBar { display: none !important; }
  body { background: #fff; }
}

/* ═══════════════════════════════════════════════════════════════════
   v56 FIX PACK
   1. filter drawer really closes (the #view>* entrance animation used
      to pin the off-canvas sheet + scrim in their open end-state)
   2. GST partnership form: clearly visible fields + always-present
      "Complete KYC & Apply" bar, clickable only when everything is done
   3. mobile-OTP login polish · saved-login chip
   4. admin primary-image picker
   ═══════════════════════════════════════════════════════════════════ */

/* ── 1 · filter drawer: never trap the shopper again ── */
#view > .filters,
#view > .fsheet-overlay { animation: none !important; }
.filters {
  visibility: hidden; pointer-events: none;
  transition: transform .4s var(--ease), visibility 0s linear .4s;
}
.filters.open {
  transform: none; visibility: visible; pointer-events: auto;
  transition: transform .4s var(--ease), visibility 0s;
}
.fsheet-overlay { visibility: hidden; }
.fsheet-overlay.open { visibility: visible; }
.fsheet-bar button { min-width: 44px; min-height: 44px; cursor: pointer; }
.fsheet-acts {
  position: sticky; bottom: 0; z-index: 3; display: flex; gap: 10px;
  padding: 12px 20px calc(14px + env(safe-area-inset-bottom));
  background: var(--white); border-top: 1px solid var(--line);
}
.fsheet-acts .btn { flex: 1; justify-content: center; min-height: 44px; }
@media (max-width: 768px) {
  .filters {
    top: auto; bottom: 0; left: 0; right: 0; width: auto; max-height: 76vh;
    border-radius: 26px 26px 0 0; border: none;
    box-shadow: 0 -24px 70px rgba(0,0,0,.5);
    transform: translateY(110%);
  }
  .filters.open { transform: none; }
  .filters::before {
    width: 44px; height: 4px; border-radius: 3px;
    background: rgba(212,175,90,.55); margin: 10px auto 2px;
  }
}
@media (min-width: 769px) {
  .filters { transform: translateX(-105%); }
  .filters.open { transform: none; }
}

/* ── 2 · GST partnership form: legible fields + sticky KYC bar ── */
.kyc-form .fld label { color: var(--maroon-deep); font-weight: 700; font-size: 11.5px; }
.kyc-req { text-transform: none; letter-spacing: 0; color: var(--ink-3); font-weight: 500; }
.kyc-form .fld input {
  min-height: 48px; border: 1.5px solid #d6c6a6; background: #fffdf8;
  font-size: 15px; color: var(--ink); font-weight: 500;
}
.kyc-form .fld input::placeholder { color: #b2a58c; font-weight: 400; }
.kyc-form .fld input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(185,138,47,.16); background: #fff; }
.kyc-cc {
  display: grid; place-items: center; padding: 0 13px; min-height: 48px;
  border: 1.5px solid #d6c6a6; border-radius: 12px;
  background: var(--gold-faint); font-weight: 700; color: var(--maroon-deep);
}
.kyc-form .kyc-inline { gap: 8px; }
.kyc-form .kyc-inline input { flex: 1 1 200px; min-width: 180px; }
.kyc-verify-btn { flex: 0 0 auto !important; min-height: 44px; font-weight: 700; white-space: nowrap; }
.kyc-status { white-space: normal; flex: 1 0 100%; min-height: 18px; }
@media (max-width: 520px) {
  .kyc-verify-btn { flex: 1 1 100%; }
  .kyc-form .kyc-inline input { flex-basis: 100%; }
}
.kyc-bar {
  position: sticky; bottom: 14px; z-index: 30; display: flex; align-items: center;
  gap: 14px; justify-content: space-between; flex-wrap: wrap;
  margin: 22px -6px 0; padding: 14px 16px; border-radius: 18px;
  background: rgba(255,253,248,.97); border: 1px solid var(--gold-soft);
  box-shadow: 0 18px 44px rgba(61,14,21,.22); backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.kyc-bar-info { display: flex; flex-direction: column; gap: 3px; min-width: 210px; flex: 1; }
.kyc-bar-info b { font-size: 14px; color: var(--maroon-deep); }
.kyc-bar-info small { font-size: 12px; color: var(--ink-2); line-height: 1.45; }
.kyc-bar #kycSubmit { flex: 0 0 auto; }
.kyc-bar #kycSubmit:disabled { opacity: .55; cursor: not-allowed; box-shadow: none; filter: grayscale(.25); }
.kyc-bar.ready { border-color: var(--gold); background: linear-gradient(135deg,#fff9ea,#fdf3d8); }
@media (max-width: 600px) {
  .kyc-bar { bottom: 72px; margin: 18px -2px 0; padding: 12px; gap: 10px; }
  .kyc-bar #kycSubmit { flex: 1 1 100%; }
}

/* ── 3 · mobile-OTP login: saved-login chip, details step ── */
.shv-saved {
  display: flex; align-items: center; gap: 12px; width: 100%; text-align: left;
  padding: 13px 14px; margin-bottom: 12px; border-radius: 14px; cursor: pointer;
  border: 1.5px solid var(--gold); background: linear-gradient(135deg,#fff8e9,#fdf1d3);
  font-family: inherit; transition: transform .18s, box-shadow .18s;
}
.shv-saved:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(107,16,32,.14); }
.shv-saved .sv-ic { font-size: 22px; flex: 0 0 26px; text-align: center; }
.shv-saved b { display: block; color: var(--maroon-deep); font-size: 14.5px; }
.shv-saved small { display: block; color: var(--ink-3); font-size: 11.5px; }
.shv-saved .sv-go { margin-left: auto; color: var(--gold); font-size: 20px; flex: 0 0 auto; }
.shv-saved-x { border: 0; background: none; color: var(--ink-3); font-size: 16px; padding: 6px; cursor: pointer; flex: 0 0 auto; border-radius: 8px; }
.shv-saved-x:hover { color: var(--bad); background: rgba(192,57,43,.08); }
.shv-save {
  display: flex; gap: 10px; align-items: flex-start; margin: 14px 0 4px;
  font-size: 12.5px; color: var(--ink-2); line-height: 1.5; cursor: pointer;
}
.shv-save input { width: 17px !important; height: 17px !important; flex: 0 0 17px; margin: 1px 0 0 !important; padding: 0 !important; accent-color: var(--maroon); }
.shv-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
@media (max-width: 420px) { .shv-grid2 { grid-template-columns: 1fr; } }
.shv-body select {
  width: 100%; padding: 13px 14px; border: 1.5px solid rgba(185,138,47,.4);
  border-radius: 12px; background: #fff; font: inherit; font-size: 15px; color: var(--ink);
}
.shv-or { display: flex; align-items: center; gap: 10px; margin: 16px 0 10px; color: var(--ink-3); font-size: 12px; }
.shv-or::before, .shv-or::after { content: ''; flex: 1; height: 1px; background: rgba(185,138,47,.3); }
.shv-soft-acts { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.shv-sub-h { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--maroon); font-weight: 700; margin: 16px 0 4px; }

/* ── 4 · admin primary-image picker ── */
.apg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 10px; margin: 8px 0 4px; }
.apg-thumb {
  position: relative; border: 2px solid var(--line); border-radius: 12px; overflow: hidden;
  cursor: pointer; background: var(--cream-2); aspect-ratio: 1; padding: 0;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.apg-thumb:hover { transform: translateY(-2px); }
.apg-thumb img { width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.apg-thumb.primary { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(194,154,69,.25); }
.apg-star {
  position: absolute; top: 5px; left: 5px; width: 27px; height: 27px; border-radius: 50%;
  border: 0; background: rgba(255,255,255,.92); color: #b7a887; font-size: 14px;
  display: grid; place-items: center; cursor: pointer; line-height: 1;
}
.apg-thumb.primary .apg-star { background: linear-gradient(135deg,var(--gold-2),var(--gold)); color: #241503; }
.apg-tag {
  position: absolute; bottom: 5px; left: 5px; background: rgba(31,4,9,.82);
  color: var(--gold-soft); font-size: 8px; letter-spacing: .1em; text-transform: uppercase;
  padding: 2px 6px; border-radius: 6px; pointer-events: none;
}
.apg-x {
  position: absolute; top: 5px; right: 5px; width: 24px; height: 24px; border-radius: 50%;
  border: 0; background: rgba(255,255,255,.92); color: #7c0d22; font-size: 12px;
  cursor: pointer; line-height: 1;
}
.apg-add {
  display: flex; align-items: center; justify-content: center; border: 2px dashed var(--line);
  border-radius: 12px; aspect-ratio: 1; color: var(--ink-3); font-size: 24px;
  cursor: pointer; background: var(--cream); font-family: inherit;
}
.apg-add:hover { border-color: var(--gold); color: var(--gold); }
.apg-hint { font-size: 11.5px; color: var(--ink-3); margin: 2px 0 10px; }

/* ═══════════════════════════════════════════════════════════════════
   v57 — Passport two-audience, rate lock, certificates, registry,
   ring sizer, Pride-Gold bullion board, admin rate poster, hero polish
   ═══════════════════════════════════════════════════════════════════ */

/* ── Passport: audience tabs + panes (retail OTP / jeweller password) ── */
.shv-aud{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
.shv-aud-btn{display:flex;align-items:center;gap:9px;text-align:left;padding:11px 10px;border-radius:14px;
  border:1.5px solid rgba(185,138,47,.4);background:#fff;cursor:pointer;transition:.18s;font-family:inherit}
.shv-aud-btn .au-ic{font-size:19px;color:var(--maroon);flex:0 0 26px;text-align:center;transition:.18s}
.shv-aud-btn .au-tx b{display:block;font-size:12.5px;color:var(--maroon-deep);line-height:1.25}
.shv-aud-btn .au-tx small{display:block;font-size:9.8px;color:var(--ink-3);line-height:1.3;margin-top:2px}
.shv-aud-btn:hover{border-color:var(--gold);box-shadow:0 6px 16px rgba(107,16,32,.10)}
.shv-aud-btn.on{border-color:var(--maroon);background:linear-gradient(135deg,#fff4f6,#fde6ea);box-shadow:0 8px 20px rgba(107,16,32,.16)}
.shv-aud-btn.on .au-ic{transform:scale(1.12)}
body .shv-body.aud-jwl .shv-aud-btn.on{border-color:#0c6b4e;background:linear-gradient(135deg,#effaf5,#ddf3e9);box-shadow:0 8px 20px rgba(12,107,78,.18)}
body .shv-body.aud-jwl .shv-aud-btn.on .au-ic,body .shv-body.aud-jwl .shv-aud-btn.on .au-tx b{color:#0a5c43}
.shv-pane{animation:shvStep .26s ease}
.shv-otp-hint{text-align:center;font-size:12.5px;color:var(--ink-2);margin:-6px 0 2px}
.shv-otp-hint b{color:var(--maroon-deep)}
.shv-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.shv-cta-jwl{background:linear-gradient(135deg,#0c7a59,#07503b);box-shadow:0 10px 24px rgba(12,107,78,.32)}
.shv-cta-jwl:hover{box-shadow:0 14px 30px rgba(12,107,78,.4)}
.shv-otp.shv-otp4 input{width:54px;height:62px;font-size:28px}
@media(max-width:380px){.shv-otp.shv-otp4 input{width:44px;height:54px;font-size:22px}}

/* ── checkout: 20-minute rate lock ── */
.rate-lock-card{border-radius:16px;padding:13px 15px;margin-bottom:14px;border:1.5px solid rgba(185,138,47,.35);
  background:linear-gradient(135deg,#fff9ec,#fdf2d6);font-size:13px;transition:.25s}
.rate-lock-card.live{border-color:#0c6b4e;background:linear-gradient(135deg,#effaf5,#e0f4ea)}
.rate-lock-card.expired{border-style:dashed}
.rl-top{display:flex;align-items:center;gap:11px}
.rl-ic{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:50%;
  background:rgba(185,138,47,.16);font-size:17px}
.rate-lock-card.live .rl-ic{background:rgba(12,107,78,.16)}
.rl-top>div:not(.rl-ic){flex:1;min-width:0}
.rl-top b{display:block;font-size:13.5px;color:var(--maroon-deep)}
.rate-lock-card.live .rl-top b{color:#0a5c43}
.rl-top small{display:block;font-size:11.5px;color:var(--ink-3);line-height:1.4}
.rl-timer{font-family:var(--ff-disp);font-weight:700;font-size:18px;color:#0a5c43;letter-spacing:1px;
  font-variant-numeric:tabular-nums;flex:0 0 auto;padding:0 4px}
.rate-lock-card .btn{margin:10px 0 2px;width:100%}
.rl-rates{margin-top:9px;padding-top:9px;border-top:1px dashed rgba(12,107,78,.3);
  font-size:12px;color:var(--ink-2);display:flex;gap:14px;flex-wrap:wrap}
.rl-rates b{color:var(--maroon)}

/* ── digital certificate of authenticity ── */
.cert-page{padding:26px 0 70px}
.cert-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:22px}
.cert-sheet{max-width:920px;margin:0 auto;background:#fffdf8}
.cert-border{border:3px double var(--gold);padding:8px;background:
  linear-gradient(180deg,rgba(255,250,238,.6),rgba(255,255,255,.2))}
.cert-head{display:flex;align-items:center;gap:16px;padding:20px 26px;border-bottom:2px solid var(--gold);
  background:linear-gradient(135deg,var(--maroon-deep),var(--maroon))}
.cert-head img{height:46px;filter:brightness(0) invert(1);opacity:.95}
.cert-head>div{flex:1;text-align:center}
.cert-head b{display:block;letter-spacing:3px;font-size:16px;color:var(--gold-soft,#f1dba4);font-family:var(--ff-disp)}
.cert-head small{display:block;color:rgba(255,255,255,.72);font-size:11px;letter-spacing:.6px;margin-top:3px}
.cert-id{text-align:right;color:#fff}
.cert-id b{display:block;font-size:14px;color:var(--gold-soft,#f1dba4)}
.cert-id small{display:block;color:rgba(255,255,255,.7);font-size:10.5px;margin-top:3px}
.cert-issued{padding:22px 28px 16px;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;border-bottom:1px solid rgba(185,138,47,.3)}
.cert-issued span{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-3)}
.cert-issued b{font-family:var(--ff-disp);font-size:20px;color:var(--maroon-deep)}
.cert-place{width:100%;font-size:12.5px;color:var(--ink-2)}
.cert-place b{font-size:13px}
.cert-tbl{width:100%;border-collapse:collapse;font-size:12.5px}
.cert-tbl th{background:var(--gold-faint);color:var(--maroon-deep);font-size:10.5px;letter-spacing:.5px;
  text-transform:uppercase;padding:9px 10px;border-bottom:1.5px solid var(--gold);text-align:left}
.cert-tbl td{padding:10px;border-bottom:1px solid rgba(185,138,47,.18);vertical-align:top}
.cert-tbl td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.cert-tbl small{color:var(--ink-3)}
.cert-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(185,138,47,.3);
  border:1px solid rgba(185,138,47,.3);margin:20px 28px}
.cert-summary div{background:#fff;padding:12px 14px;text-align:center}
.cert-summary span{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);margin-bottom:5px}
.cert-summary b{font-size:13.5px;color:var(--maroon-deep);font-variant-numeric:tabular-nums}
.cert-assure{padding:6px 28px 18px}
.cert-assure p{font-size:12.5px;line-height:1.75;color:var(--ink-2);margin:8px 0}
.cert-assure b{color:var(--maroon-deep)}
.cert-foot{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;padding:22px 28px 24px;
  border-top:2px solid var(--gold);margin:0 0 2px}
.cert-sign span{display:block;width:170px;height:34px;border-bottom:1.5px solid var(--ink);margin-bottom:4px}
.cert-sign small,.cert-verify small{display:block;font-size:10.5px;color:var(--ink-3);line-height:1.5}
.cert-verify{text-align:right}
.cert-verify b{font-size:12px;color:var(--maroon);letter-spacing:.4px}
.cert-locker{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.cert-card{display:flex;align-items:center;gap:14px;padding:18px;border-radius:16px;text-decoration:none;
  background:#fff;border:1.5px solid rgba(185,138,47,.35);box-shadow:0 6px 20px rgba(107,16,32,.07);transition:.2s}
.cert-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(107,16,32,.15);border-color:var(--gold)}
.cc-ic{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:12px;
  background:linear-gradient(135deg,var(--gold-faint),#f5e2b4);font-size:22px}
.cert-card>div{flex:1;min-width:0}
.cert-card b{display:block;color:var(--maroon-deep);font-size:14px}
.cert-card small{display:block;color:var(--ink-3);font-size:11.5px;margin-top:2px;line-height:1.4}
.cc-go{color:var(--gold);font-size:12px;font-weight:700;white-space:nowrap}
html.cert-mode #siteHeader,html.cert-mode #siteFooter,html.cert-mode .float-actions,
html.cert-mode .mnav,html.cert-mode .toast-wrap,html.cert-mode .drawer-scrim,html.cert-mode #mainNav{display:none !important}
html.cert-mode #view{padding-top:0 !important}
@media(max-width:720px){
  .cert-summary{grid-template-columns:repeat(2,1fr);margin:16px 14px}
  .cert-head{padding:16px;flex-wrap:wrap}.cert-head>div{order:3;width:100%}
  .cert-issued,.cert-assure,.cert-foot{padding-left:16px;padding-right:16px}
  .cert-tbl{font-size:11px}.cert-tbl th,.cert-tbl td{padding:7px 6px}
  .cert-foot{flex-direction:column;align-items:flex-start}
}
@media print{
  html.cert-mode body{background:#fff}
  html.cert-mode .cert-actions,html.cert-mode .inv-no-print{display:none !important}
  html.cert-mode .cert-page{padding:0}
  html.cert-mode .cert-sheet{max-width:none;box-shadow:none}
  html.cert-mode .cert-border{border-width:2px}
  @page{margin:11mm}
}

/* ── shareable wishlist / bridal registry ── */
.registry-bar{display:flex;align-items:center;gap:18px;justify-content:space-between;flex-wrap:wrap;
  border-radius:18px;padding:20px 24px;margin-bottom:28px;position:relative;overflow:hidden;
  background:linear-gradient(135deg,#fff9ec,#fdeccb);border:1.5px solid var(--gold);
  box-shadow:0 12px 30px rgba(107,16,32,.10)}
.registry-bar::before{content:'✦';position:absolute;right:-14px;top:-26px;font-size:120px;color:rgba(185,138,47,.16)}
.rb-tx{flex:1;min-width:240px;position:relative;z-index:1}
.rb-tx b{display:block;font-family:var(--ff-disp);font-size:18px;color:var(--maroon-deep);margin-bottom:4px}
.rb-tx small{display:block;font-size:12.5px;color:var(--ink-2);line-height:1.55;max-width:520px}
.rb-acts{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}
.registry-cta{max-width:680px;margin:40px auto 0;text-align:center;padding:30px 26px;border-radius:20px;
  background:linear-gradient(180deg,#fffdf8,#fbf1da);border:1.5px solid rgba(185,138,47,.4)}
.registry-cta h3{font-family:var(--ff-disp);font-size:24px;color:var(--maroon-deep);margin-bottom:8px}
.registry-cta p{font-size:13.5px;color:var(--ink-2);line-height:1.7;margin-bottom:18px}
.registry-hero h1 em,.registry-hero .foil-txt{font-style:normal}

/* ── ring / bangle sizer ── */
.sizer-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start}
.sz-card h3{font-family:var(--ff-disp);color:var(--maroon-deep);margin-bottom:8px}
.sz-cal label{display:block;font-size:12.5px;color:var(--ink-2);margin-bottom:8px}
.sz-cardrow{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:18px}
.sz-bankcard{height:54px;border:2px dashed var(--gold);border-radius:8px;display:grid;place-items:center;
  font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-3);background:var(--gold-faint);
  min-width:160px}
.sz-stage{position:relative;height:340px;border-radius:16px;overflow:hidden;
  background:radial-gradient(circle at 50% 45%,#fff8ea,#f2e4c4);border:1px solid rgba(185,138,47,.35);
  display:grid;place-items:center}
.sz-circle{border-radius:50%;border:14px solid rgba(107,16,32,.85);
  box-shadow:0 0 0 2px rgba(185,138,47,.7),inset 0 0 0 2px rgba(185,138,47,.5),0 18px 40px rgba(107,16,32,.28);
  position:relative;transition:width .12s,height .12s}
.sz-circle span{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(255,255,255,.55)}
.sz-controls{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:16px}
.sz-readout{text-align:center;flex:1}
.sz-readout b{display:block;font-family:var(--ff-disp);font-size:30px;color:var(--maroon-deep);font-variant-numeric:tabular-nums;line-height:1.1}
.sz-readout small{font-size:12px;color:var(--ink-3)}
.sz-readout small b{display:inline;font-size:13px;color:var(--gold)}
.sz-strip-wrap{overflow-x:auto;border:1px solid rgba(185,138,47,.3);border-radius:12px;padding:16px 14px;margin-bottom:14px;background:#fffdf8}
.sz-arrow{font-size:11px;color:var(--maroon);font-weight:700;letter-spacing:.4px}
.sz-ruler{position:relative;height:74px;margin-top:26px}
.sz-ruler .tick{position:absolute;top:0;bottom:18px}
.sz-ruler .tick i{position:absolute;top:0;left:0;width:1px;height:9px;background:var(--ink-2)}
.sz-ruler .tick i.big{height:16px;background:var(--maroon)}
.sz-ruler .tick b{position:absolute;top:18px;left:-7px;font-size:9.5px;color:var(--ink-2);font-weight:600}
.sz-strip>small{display:block;font-size:10.5px;color:var(--ink-3);line-height:1.5;margin-top:4px}
.sz-tips{margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--gold-faint);font-size:12.5px}
.sz-tips b{color:var(--maroon-deep)}
.sz-tips ul{margin:8px 0 0 16px;color:var(--ink-2);line-height:1.8}
@media(max-width:860px){.sizer-grid{grid-template-columns:1fr}}

/* ── partner dashboard: bullion desk entry door ── */
.bullion-door{position:relative;display:flex;align-items:center;gap:20px;overflow:hidden;text-decoration:none;
  border-radius:20px;padding:28px 30px;margin:6px 0 18px;color:#f7ead0;
  background:radial-gradient(120% 160% at 8% 0,#24110a 0%,#0c0905 55%,#1c1206 100%);
  border:1.5px solid rgba(201,162,75,.65);box-shadow:0 18px 44px rgba(20,10,0,.35);transition:.25s}
.bullion-door:hover{transform:translateY(-3px);box-shadow:0 26px 60px rgba(20,10,0,.5);border-color:var(--gold)}
.bd-glow{position:absolute;width:340px;height:340px;right:-90px;top:-140px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,90,.32),transparent 68%);pointer-events:none}
.bd-door-ic{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:50%;
  border:1.5px solid rgba(201,162,75,.8);font-size:30px;background:rgba(201,162,75,.1)}
.bd-door-tx{flex:1;min-width:0;position:relative;z-index:1}
.bd-kicker{display:block;font-size:10px;letter-spacing:2.4px;color:var(--gold,#d4af5a);margin-bottom:7px;font-weight:700}
.bd-door-tx h3{font-family:var(--ff-disp);font-size:24px;line-height:1.25;color:#f3dfae;font-weight:700}
.bd-door-tx h3 em{font-style:normal;color:var(--gold,#e9c77a)}
.bd-door-tx p{font-size:12.5px;color:rgba(247,234,208,.72);line-height:1.6;margin-top:7px;max-width:520px}
.bd-door-cta{display:inline-flex;align-items:center;gap:8px;margin-top:13px;padding:10px 20px;border-radius:30px;
  background:linear-gradient(135deg,#d8b464,#b98a2f);color:#231503;font-weight:700;font-size:13px;letter-spacing:.3px}
.bd-door-cta i{transition:.2s;font-style:normal}.bullion-door:hover .bd-door-cta i{transform:translateX(4px)}
.bd-door-rate{flex:0 0 auto;text-align:center;border-left:1px solid rgba(201,162,75,.35);padding-left:22px;position:relative;z-index:1}
.bd-door-rate .live-dot{margin:0 auto 6px}
.bd-door-rate b{display:block;font-family:var(--ff-disp);font-size:24px;color:#fff;font-variant-numeric:tabular-nums}
.bd-door-rate small{display:block;font-size:10.5px;letter-spacing:1px;color:rgba(247,234,208,.6);text-transform:uppercase;margin-top:3px}
@media(max-width:640px){.bullion-door{flex-direction:column;align-items:flex-start;text-align:left;padding:22px}
  .bd-door-rate{border-left:0;border-top:1px solid rgba(201,162,75,.3);padding-left:0;padding-top:14px;width:100%;text-align:left;display:flex;align-items:baseline;gap:10px}
  .bd-door-rate .live-dot{margin:0 4px 0 0}}

/* ── Pride-Gold style live trading board (black + gold) ── */
.bullion-board-wrap{border-radius:20px;overflow:hidden}
.bd-board{position:relative;background:radial-gradient(140% 120% at 50% -10%,#18100a 0%,#070503 60%,#000 100%);
  color:#f4e8cf;border:1.5px solid rgba(201,162,75,.6);border-radius:20px;padding:0 0 18px;max-width:760px;margin:0 auto}
.bd-topbar{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid rgba(201,162,75,.4);
  background:linear-gradient(180deg,rgba(201,162,75,.13),transparent)}
.bd-topbar img{height:42px;filter:brightness(0) invert(1);opacity:.92}
.bd-title{flex:1;min-width:0}
.bd-title b{display:block;letter-spacing:2px;font-size:16px;color:#e9c77a;font-family:var(--ff-disp)}
.bd-title small{display:block;font-size:10.5px;color:rgba(244,232,207,.6);margin-top:2px}
.bd-live{text-align:right;font-size:9.5px;letter-spacing:1.2px;color:rgba(244,232,207,.75);text-transform:uppercase;line-height:1.5}
.bd-live b{font-size:10.5px;color:#fff;letter-spacing:.3px;text-transform:none;white-space:nowrap}
.bd-marquee{overflow:hidden;white-space:nowrap;background:#f6efe0;color:#7c5a17;font-weight:700;font-size:12.5px;
  padding:7px 0;border-top:1px solid rgba(201,162,75,.5);border-bottom:1px solid rgba(201,162,75,.5)}
.bd-marq-in{display:inline-block;animation:bdMarq 26s linear infinite}
@keyframes bdMarq{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}
.bd-gridhead{display:grid;grid-template-columns:1fr 86px 86px 84px;gap:6px;align-items:center;
  padding:10px 16px;background:linear-gradient(135deg,#c9a24b,#a37e2c);color:#1d1206;
  font-size:10.5px;letter-spacing:1.6px;font-weight:800;text-align:center}
.bd-gridhead span:first-child{text-align:left}
.bd-rows{padding:8px 12px}
.bd-row{display:grid;grid-template-columns:1fr 86px 86px 84px;gap:6px;align-items:center;
  border:1px solid rgba(201,162,75,.55);border-radius:12px;padding:9px 10px;margin-bottom:8px;
  background:linear-gradient(180deg,rgba(201,162,75,.08),rgba(201,162,75,.02))}
.bd-row.cash{border-color:rgba(201,162,75,.85);background:linear-gradient(180deg,rgba(201,162,75,.16),rgba(201,162,75,.04))}
.bd-desc{min-width:0}
.bd-desc b{display:block;font-size:12.5px;color:#f6ead0;line-height:1.3;font-weight:800}
.bd-desc small{display:block;font-size:10px;color:rgba(244,232,207,.6);margin-top:2px}
.bd-desc em{display:block;font-size:9.5px;color:rgba(244,232,207,.45);font-style:normal;margin-top:2px}
.bd-cell{text-align:center}
.bd-pill{display:block;width:100%;border-radius:9px;padding:7px 4px;font-family:var(--ff-disp);font-weight:800;
  font-size:13px;cursor:pointer;border:1.5px solid transparent;transition:.15s;font-variant-numeric:tabular-nums;line-height:1.15}
.bd-pill:active{transform:scale(.96)}
.bd-buy{background:linear-gradient(180deg,#13a567,#0b7c4d);color:#fff;border-color:rgba(70,220,150,.55);
  box-shadow:0 4px 12px rgba(11,124,77,.4)}
.bd-sell{background:linear-gradient(180deg,#d64553,#a52331);color:#fff;border-color:rgba(240,110,120,.55);
  box-shadow:0 4px 12px rgba(165,35,49,.4)}
.bd-pill:disabled{background:transparent;color:rgba(244,232,207,.35);border:1.5px dashed rgba(201,162,75,.3);cursor:default;box-shadow:none}
.bd-lh{display:block;font-size:9px;color:rgba(244,232,207,.55);margin-top:3px;font-variant-numeric:tabular-nums}
.bd-hitxt{color:#63e6a4}.bd-lowtxt{color:#ff8b97}
.bd-chg{text-align:center;font-size:11.5px;font-weight:800;font-variant-numeric:tabular-nums}
.bd-up{color:#5fd99a}.bd-down{color:#ff7f8c}.bd-flat{color:rgba(244,232,207,.5)}
.bd-spots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px 12px}
.bd-spots.bd-fut,.bd-spots.bd-duty{grid-template-columns:repeat(2,1fr)}
.bd-card{border:1px solid rgba(201,162,75,.5);border-radius:12px;padding:10px 8px;text-align:center;
  background:linear-gradient(180deg,rgba(201,162,75,.1),rgba(201,162,75,.02))}
.bd-card-h{font-size:9.5px;letter-spacing:1px;color:#e9c77a;font-weight:800;min-height:26px;
  display:flex;align-items:center;justify-content:center;line-height:1.25;text-transform:uppercase}
.bd-card-h small{text-transform:none;letter-spacing:0;color:rgba(244,232,207,.55);margin-left:3px}
.bd-card-v{font-family:var(--ff-disp);font-size:17px;color:#fff;font-weight:800;margin:4px 0;font-variant-numeric:tabular-nums}
.bd-ba{display:flex;justify-content:center;gap:8px;margin:4px 0}
.bd-ba>div{flex:1}
.bd-ba small{display:block;font-size:8.5px;letter-spacing:.8px;color:rgba(244,232,207,.55)}
.bd-bid{display:inline-block;margin-top:2px;padding:3px 7px;border-radius:6px;background:#0b7c4d;color:#fff;
  font-size:11.5px;font-weight:800;font-variant-numeric:tabular-nums}
.bd-ask{display:inline-block;margin-top:2px;padding:3px 7px;border-radius:6px;background:#a52331;color:#fff;
  font-size:11.5px;font-weight:800;font-variant-numeric:tabular-nums}
.bd-lhline{display:flex;justify-content:center;gap:6px;align-items:center;font-size:9.5px;
  color:rgba(244,232,207,.6);font-variant-numeric:tabular-nums}
.bd-lhline i{font-style:normal;color:rgba(201,162,75,.5)}
.bd-note{font-size:10.5px;line-height:1.7;color:rgba(244,232,207,.55);padding:10px 18px 4px}
.bd-note b{color:#e9c77a}
.bd-deals{padding:8px 14px 4px}
.bd-deals h4{color:#e9c77a;letter-spacing:1.4px;font-size:11.5px;text-transform:uppercase;margin:8px 4px 10px}
.bd-deals .adm-table{color:#f4e8cf;font-size:11.5px}
.bd-deals .adm-table th{color:#e9c77a;border-color:rgba(201,162,75,.35);background:rgba(201,162,75,.1)}
.bd-deals .adm-table td{border-color:rgba(201,162,75,.22)}
.bd-deals select{background:#160f08;color:#f4e8cf;border:1px solid rgba(201,162,75,.5);border-radius:8px;padding:3px 6px;font-size:11px}
.bd-call-fab{position:sticky;bottom:76px;margin-left:calc(100% - 76px);display:grid;place-items:center;
  width:54px;height:54px;border-radius:50%;text-decoration:none;font-size:22px;
  background:radial-gradient(circle at 35% 30%,#e7c878,#b98a2f);color:#241503;
  border:2px solid rgba(244,232,207,.6);box-shadow:0 10px 26px rgba(0,0,0,.6);z-index:5}
.bd-tabs{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);
  background:linear-gradient(180deg,#150e07,#050402);border-top:1px solid rgba(201,162,75,.5);
  border-radius:0 0 18px 18px;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
.bd-tabs a{display:flex;flex-direction:column;align-items:center;gap:2px;color:rgba(244,232,207,.6);
  text-decoration:none;font-size:9.5px;letter-spacing:.4px;padding:5px 0}
.bd-tabs a.on{color:#e9c77a}
@media(max-width:560px){
  .bd-board{border-radius:0;border-left:0;border-right:0}
  .bd-gridhead,.bd-row{grid-template-columns:1fr 70px 70px 64px}
  .bd-pill{font-size:11.5px;padding:6px 2px}
  .bd-topbar img{height:34px}.bd-title b{font-size:13px}
  .bd-spots{gap:6px;padding:6px 8px}
}
@media(min-width:821px){.bd-call-fab{bottom:18px}}

/* ── admin: daily WhatsApp rate poster generator ── */
.poster-preview{display:flex;justify-content:center;margin:16px 0 6px;
  background:repeating-conic-gradient(#f3ecdd 0% 25%,#faf5ea 0% 50%) 50%/22px 22px;
  border:1px solid var(--line);border-radius:14px;padding:16px}
.poster-preview canvas{width:auto;max-width:100%;max-height:620px;border-radius:10px;
  box-shadow:0 18px 44px rgba(46,10,18,.3);background:#3a0c14}

/* ── v57 hero: extra filigree luxe framing ── */
.hero-stage::before{content:'';position:absolute;width:130%;height:130%;left:-15%;top:-15%;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,90,.16),transparent 62%);pointer-events:none;z-index:0}
.hs-card{z-index:1}
.hero::after{content:'';position:absolute;inset:14px;border:1px solid rgba(212,175,90,.18);pointer-events:none;z-index:1}
@media(max-width:820px){.hero::after{inset:8px}}

/* v57 — buyback: old-gold origin toggle + deduction note */
.bb-src{margin-top:6px}
.bb-src .bbp{flex:1 1 100%;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.25;padding:10px 8px}
.bb-src .bbp small{font-weight:500;opacity:.75}
.bb-ded-note{margin-top:10px;font-size:11.5px;line-height:1.6;color:var(--ink-2);background:var(--gold-faint);
  border:1px dashed rgba(185,138,47,.5);border-radius:10px;padding:9px 12px}
.bb-ded-note b{color:var(--maroon)}

/* ── v57 hero luxe extra touches ── */
.hero-kicker{position:relative;overflow:hidden}
.hero-kicker::after{content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(110deg,transparent 30%,rgba(244,223,174,.35) 50%,transparent 70%);
  transform:translateX(-120%);animation:kickerSheen 4.6s ease-in-out infinite}
@keyframes kickerSheen{0%,62%{transform:translateX(-120%)}82%,100%{transform:translateX(120%)}}
.hs-card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(120% 90% at 50% -10%,rgba(255,240,200,.16),transparent 55%);}
.hs-frame{inset:10px;border-width:1px}
.hs-card.hs-main .hs-frame{inset:14px;border:1px solid rgba(212,175,90,.7);box-shadow:inset 0 0 0 4px rgba(29,5,9,.28),0 0 0 1px rgba(212,175,90,.25)}
.cb-img img{transition:transform .5s var(--ease),filter .5s var(--ease)}
.cb-item:hover .cb-img img{transform:scale(1.08)}
.cb-img{box-shadow:0 10px 26px rgba(107,16,32,.18)}

/* ═══════════════════════ v58 · payments · tracker · quote · care ═══════════════════════ */
:root{--ok:#1d7a46}
.pay-badge{font-style:normal;background:linear-gradient(135deg,#1d7a46,#2e9d5e);color:#fff;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:99px;margin-left:6px;letter-spacing:.3px}
.pay-due-card{max-width:640px;margin:16px auto;background:linear-gradient(135deg,#fff8e8,#fdeecb);border:1.5px solid var(--gold);border-radius:16px;padding:20px 22px;text-align:center}
.pay-due-card h3{margin:0 0 6px;font-family:var(--font-serif);color:var(--maroon-deep)}
.pay-due-card p{font-size:13.5px;color:var(--ink-2);margin:0 0 14px}
.pay-due-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
/* demo gateway sheet */
.pay-sheet{max-width:420px;margin:0 auto}
.pay-sheet .ps-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:14px}
.pay-sheet .ps-head img{width:42px;height:42px;border-radius:10px;object-fit:contain;background:var(--gold-faint)}
.pay-sheet .ps-head b{display:block;font-family:var(--font-serif);color:var(--maroon-deep)}
.pay-sheet .ps-head small{color:var(--ink-3);font-size:11.5px}
.pay-sheet .ps-amt{text-align:center;font-family:var(--font-serif);font-size:34px;color:var(--maroon-deep);padding:10px 0 16px}
.pay-sheet .ps-methods{display:grid;gap:8px;margin-bottom:16px}
.ps-m{text-align:left;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:12px 14px;font-size:13.5px;cursor:pointer;font-family:inherit}
.ps-m.on{border-color:var(--gold);background:var(--gold-faint);box-shadow:0 0 0 3px rgba(212,175,90,.15)}
.pay-sheet .ps-note{font-size:11.5px;color:var(--ink-3);text-align:center;margin-top:12px;line-height:1.55}
/* Domino-style workshop tracker */
.tracker-wrap{max-width:760px;margin:22px auto 6px;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:20px 24px 16px;box-shadow:0 8px 24px rgba(107,16,32,.06)}
.tracker-head{display:flex;align-items:center;gap:9px;font-weight:700;font-family:var(--font-serif);color:var(--maroon-deep);font-size:15px;margin-bottom:16px}
.live-dot{width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(29,122,70,.5);animation:livedot 1.8s infinite}
@keyframes livedot{70%{box-shadow:0 0 0 9px rgba(29,122,70,0)}100%{box-shadow:0 0 0 0 rgba(29,122,70,0)}}
.stages{display:flex;align-items:flex-start;overflow-x:auto;padding-bottom:6px}
.st-step{flex:1;min-width:86px;text-align:center;position:relative;color:var(--ink-3)}
.st-step::before{content:'';position:absolute;top:17px;left:50%;width:100%;height:2px;background:var(--line);z-index:0}
.st-step:last-child::before{display:none}
.st-ic{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;background:var(--white);border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:16px;margin:0 auto 8px}
.st-step b{display:block;font-size:11.5px;line-height:1.3;color:var(--ink-2)}
.st-step small{display:block;font-size:10px;color:var(--ink-3)}
.st-step.done::before{background:var(--gold)}
.st-step.done .st-ic{border-color:var(--gold);background:var(--gold-faint)}
.st-step.done b{color:var(--maroon-deep)}
.st-step.cur .st-ic{border-color:var(--maroon);background:var(--maroon);transform:scale(1.14)}
.st-step.cur b{color:var(--maroon);font-weight:800}
.tracker-cancel{background:#fdeeef;border:1px solid #f3c2c8;color:#8a1f2e;border-radius:12px;padding:14px 16px;font-size:13px;text-align:center}
.tracker-cancel a{color:var(--maroon);font-weight:700}
/* courier tracking card */
.track-card{max-width:760px;margin:12px auto;display:flex;gap:14px;align-items:center;background:#fff;border:1.5px dashed var(--gold);border-radius:14px;padding:14px 18px}
.tc-ic{font-size:28px}
.tc-tx{flex:1;font-size:13.5px}
.tc-tx small{display:block;color:var(--ink-3);font-size:12px;margin-top:3px;line-height:1.5}
/* mini stage strip in account */
.mini-stages{display:flex;align-items:center;margin-top:12px;gap:2px}
.ms-step{flex:1;text-align:center;font-size:14px;padding:5px 0;background:#f4f1ea;border-radius:8px;position:relative;color:#bdb4a4}
.ms-step.done{background:var(--gold-faint);color:var(--maroon-deep)}
.ms-step:not(:last-child)::after{content:'';position:absolute;right:-2px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--line)}
/* NPS */
.nps-card{max-width:640px;margin:18px auto;background:linear-gradient(135deg,#fff,var(--gold-faint));border:1px solid var(--line);border-radius:18px;padding:22px;text-align:center}
.nps-card h3{font-family:var(--font-serif);color:var(--maroon-deep);margin-bottom:10px}
.nps-row{display:flex;gap:5px;justify-content:center;margin:12px 0 8px;flex-wrap:wrap}
.nps-n{width:34px;height:34px;border-radius:9px;border:1.5px solid var(--line);background:var(--white);font-weight:700;cursor:pointer;font-family:inherit;font-size:13px;transition:.15s}
.nps-n:hover{transform:translateY(-2px)}
.nps-n.lo:hover{border-color:#c0392b;background:#fdeeef}
.nps-n.mid:hover{border-color:var(--gold);background:var(--gold-faint)}
.nps-n.hi:hover{border-color:var(--ok);background:#eafaf0}
.nps-done{font-size:13.5px;color:var(--ink-2)}
/* lifetime care */
.care-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start}
.care-list{display:grid;gap:10px;margin-bottom:16px}
.care-opt{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--line);background:var(--white);border-radius:14px;padding:14px 16px;cursor:pointer}
.care-opt.on{border-color:var(--gold);background:var(--gold-faint)}
.care-opt input{position:absolute;opacity:0;pointer-events:none}
.care-opt b{display:block;font-size:14px}
.care-opt small{color:var(--ink-3);font-size:12.5px;line-height:1.5}
.care-promise ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:7px;font-size:13px;color:var(--ink-2)}
.care-form{position:sticky;top:110px}
/* quotation print sheet */
.quote-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:18px}
.quote-sheet{background:#fff;border:1px solid var(--line);border-radius:14px;padding:34px 38px;box-shadow:0 14px 40px rgba(29,5,9,.1)}
.q-head{display:flex;align-items:center;gap:16px;border-bottom:3px double var(--gold);padding-bottom:16px;margin-bottom:14px}
.q-head img{height:52px}
.q-head b{font-family:var(--font-serif);font-size:21px;letter-spacing:3px;color:var(--maroon-deep);display:block}
.q-head small{color:var(--ink-3);font-size:12.5px}
.q-stamp{margin-left:auto;border:2px dashed var(--maroon);color:var(--maroon);border-radius:12px;padding:8px 12px;font-weight:800;font-size:12px;text-align:center;line-height:1.35;transform:rotate(-4deg)}
.q-note{font-size:12.5px;color:var(--ink-2);line-height:1.65;background:var(--gold-faint);border-radius:10px;padding:12px 14px;margin-bottom:14px}
.q-tbl{width:100%;border-collapse:collapse;font-size:13px}
.q-tbl th,.q-tbl td{border-bottom:1px solid var(--line);padding:9px 8px;text-align:left;vertical-align:top}
.q-tbl th{background:#faf6ec;font-family:var(--font-serif);color:var(--maroon-deep);font-size:12px;letter-spacing:.4px;text-transform:uppercase}
.q-tbl .num{text-align:right;white-space:nowrap}
.q-tbl small{color:var(--ink-3)}
.q-tot{margin-left:auto;max-width:340px;margin-top:14px;font-size:13.5px}
.q-tot div{display:flex;justify-content:space-between;padding:6px 4px}
.q-tot .ok{color:var(--ok)}
.q-tot .grand{border-top:2px solid var(--maroon-deep);margin-top:6px;padding-top:10px;font-family:var(--font-serif);font-size:16px;color:var(--maroon-deep)}
.q-foot{margin-top:22px;border-top:1px solid var(--line);padding-top:12px;font-size:11.5px;color:var(--ink-3);line-height:1.6}
html.quote-mode #siteHeader,html.quote-mode #siteFooter,html.quote-mode .float-actions,
html.quote-mode .mnav,html.quote-mode .toast-wrap,html.quote-mode .drawer-scrim,html.quote-mode #mainNav{display:none !important}
html.quote-mode #view{padding-top:0 !important}
@media(max-width:860px){.care-grid{grid-template-columns:1fr}.care-form{position:static}.quote-sheet{padding:22px 16px}.st-step{min-width:74px}.st-step b{font-size:10px}}
@media print{
  html.quote-mode body{background:#fff}
  html.quote-mode .quote-actions,html.quote-mode .inv-no-print{display:none !important}
  html.quote-mode .quote-sheet{border:0;box-shadow:none;padding:0}
  html.quote-mode #view{max-width:100%}
  .quote-page{padding:0 !important}
}

/* ═══════════════════════ v59 · UPI QR · pincode · ops ═══════════════════════ */
.ps-tabs{display:flex;gap:6px;background:var(--cream);border-radius:12px;padding:5px;margin-bottom:14px}
.ps-tab{flex:1;border:0;background:transparent;border-radius:9px;padding:9px 6px;font:600 12.5px var(--ff-body);color:var(--ink-2);cursor:pointer;line-height:1.3}
.ps-tab small{display:block;font-weight:400;font-size:10px;opacity:.7}
.ps-tab.on{background:var(--white);box-shadow:0 2px 8px rgba(29,5,9,.12);color:var(--maroon-deep)}
.ps-qr{display:flex;justify-content:center;padding:6px 0 10px}
.ps-qr svg{width:210px;height:210px}
.ps-upiid{display:flex;align-items:center;gap:8px;justify-content:center;background:var(--gold-faint);border:1px dashed var(--gold);border-radius:10px;padding:9px 12px;margin-bottom:12px;font-size:13.5px}
.ps-upiid span{color:var(--ink-3);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.ps-proof{display:grid;gap:9px;margin-top:10px}
.ps-upload{display:block;border:1.5px dashed var(--line);border-radius:10px;padding:11px;text-align:center;font-size:12.5px;color:var(--ink-2);cursor:pointer;background:var(--cream)}
.ps-upload input{display:none}
/* pincode promise */
.pin-msg.ok{color:var(--ok);font-size:12.5px;line-height:1.7;margin-top:8px}
.pin-msg.bad{color:#b03a3a;font-size:12.5px;margin-top:8px}
/* care tokens */
.care-token{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:12px 0;background:var(--white)}
.ct-head{display:flex;justify-content:space-between;align-items:center}
/* admin: payment proof banner */
.proof-banner{background:linear-gradient(135deg,#fff6e6,#ffedc8);border:1.5px solid var(--gold);border-radius:14px;padding:14px 18px;margin-bottom:16px;font-size:13.5px}
.proof-row{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;background:var(--white);border-radius:10px;padding:9px 12px;border:1px solid var(--line)}
/* cash book */
.cb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:8px}
.cb-tile{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:14px}
.cb-tile small{display:block;color:var(--ink-3);font-size:11.5px;margin-bottom:6px}
.cb-tile b{font-size:20px;color:var(--maroon-deep);font-family:var(--font-serif)}
.cb-tile.out b{color:#b04a4a}
.cb-close{margin-top:16px;border-top:2px solid var(--maroon-deep);padding-top:14px}
@media(max-width:860px){.cb-grid{grid-template-columns:repeat(2,1fr)}}

/* ═══════════════════════ v60 · payments · refunds · nidhi · reviews ═══════════════════════ */
.cod-confirm{max-width:640px;margin:14px auto;border:1.5px solid var(--gold);border-radius:16px;padding:16px 20px;
  background:linear-gradient(135deg,#fffaf0,#f6ead0);text-align:center}
.cod-confirm h3{margin:0 0 6px;font-family:var(--font-serif);color:var(--maroon-deep);font-size:17px}
.cod-confirm p{font-size:13px;color:var(--ink-2);margin:0 0 12px}
.cod-ok{max-width:640px;margin:12px auto;background:#eaf7ef;border:1px solid #b7e2c6;color:#166638;border-radius:12px;padding:10px 16px;font-size:13px;text-align:center}
.refund-card{max-width:640px;margin:16px auto;border:1px dashed rgba(176,74,74,.55);border-radius:16px;padding:16px 20px;background:#fdf6f3}
.refund-card h3{margin:0 0 6px;font-family:var(--font-serif);color:#9b3a3a;font-size:16px}
.refund-card p{font-size:13px;color:var(--ink-2);margin:0 0 12px}
.verified-badge{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;
  color:#fff;background:linear-gradient(135deg,#1d7a46,#2e9d5e);border-radius:99px;padding:2px 8px;margin-left:6px;vertical-align:middle}
.rv-photos{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.rv-photos img{width:78px;height:78px;object-fit:cover;border-radius:10px;border:1px solid var(--line);cursor:zoom-in}
.rv-reply{margin-top:8px;background:var(--gold-faint);border-left:3px solid var(--gold);border-radius:0 10px 10px 0;padding:8px 12px;font-size:12.5px;color:var(--ink-2)}
.rv-upload{display:inline-block;font-size:12.5px;color:var(--maroon-deep);border:1.5px dashed var(--gold);border-radius:12px;padding:9px 14px;cursor:pointer;margin:4px 0}
.rv-upload input{display:block;margin-top:6px;font-size:11.5px;color:var(--ink-3)}
.ref-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.rs-cell{text-align:center;background:var(--gold-faint);border-radius:14px;padding:14px 8px}
.rs-cell b{display:block;font-size:26px;font-family:var(--font-serif);color:var(--maroon-deep)}
.rs-cell small{font-size:11px;color:var(--ink-3);letter-spacing:.4px;text-transform:uppercase}
/* Swarna Nidhi digital passbook */
.sv-book{max-width:680px;margin:8px auto 0;border:1.5px solid var(--gold);border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#3a0c14,#5a1420 60%,#3a0c14);color:#f7e9d2}
.svb-top{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;padding:20px 16px 12px}
.svb-top small{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(247,233,210,.65)}
.svb-top b{font-family:var(--ff-disp);font-size:21px;color:#f3d27a;display:block;margin-top:5px}
.svb-bar{height:10px;margin:6px 18px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden}
.svb-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#d4af5a,#f3d27a)}
.svb-next{padding:12px 18px 4px;font-size:13px;color:rgba(247,233,210,.85)}
.svb-list{padding:10px 18px;max-height:280px;overflow:auto}
.svb-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:9px 0;border-bottom:1px dashed rgba(243,210,122,.25);font-size:13px;align-items:baseline}
.svb-row b{font-family:var(--ff-disp);color:#f3d27a}.svb-row small{color:rgba(247,233,210,.6);font-size:11px;text-align:right}
.svb-row.svb-gift{background:rgba(243,210,122,.12);border-radius:10px;padding-left:10px;padding-right:10px;border-bottom:0;margin-top:6px}
.svb-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:14px 18px 20px}
.svb-actions .btn{color:#f7e9d2;border-color:rgba(243,210,122,.55)}
.svb-redeemed{color:#8fe0b4}.svb-closed-refund{color:#f0a0a8}
/* admin: reports */
.rp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:10px}
.rp-kpi{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:linear-gradient(180deg,#fff,#fdf8ee)}
.rp-kpi small{display:block;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-3)}
.rp-kpi b{display:block;font-size:22px;font-family:var(--font-serif);color:var(--maroon-deep);margin-top:3px}
.rp-kpi em{display:block;font-size:11px;color:var(--ink-2);font-style:normal;margin-top:2px}
/* admin: refunds queue */
.ref-row{display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap;border:1px solid var(--line);border-left:4px solid var(--gold);
  border-radius:14px;padding:14px 16px;background:#fff}
.rr-main{flex:1;min-width:260px;font-size:13.5px}
.rr-main p{font-size:13px;color:var(--ink-2)}
.rr-note{display:block;margin-top:4px;color:var(--ok,#1d7a46)}
.rr-acts{display:flex;flex-direction:column;gap:7px;align-items:flex-end}
/* ═══════════════════════ v60 · bullion desk redesign ═══════════════════════ */
.bd-tabs{grid-template-columns:repeat(5,1fr)}
.bd-section{padding:10px 12px 4px;min-height:300px}
.bd-sech{color:#e9c77a;letter-spacing:1.4px;font-size:12px;text-transform:uppercase;margin:6px 4px 10px}
.bd-chartcard{border:1px solid rgba(201,162,75,.5);border-radius:14px;padding:10px;margin:2px 0 12px;
  background:linear-gradient(180deg,rgba(201,162,75,.1),rgba(201,162,75,.02))}
.bd-chart-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.bd-chips{display:flex;gap:6px;flex-wrap:wrap}
.bd-chip{background:transparent;border:1px solid rgba(201,162,75,.45);color:rgba(244,232,207,.75);border-radius:99px;
  padding:5px 11px;font-size:10.5px;cursor:pointer;font-family:inherit;letter-spacing:.3px}
.bd-chip.on{background:linear-gradient(135deg,#c9a24b,#a37e2c);color:#1d1206;font-weight:800;border-color:#e9c77a}
.bd-unfix{background:radial-gradient(circle at 35% 30%,#e7c878,#b98a2f);color:#241503;border:1px solid rgba(244,232,207,.5);
  border-radius:99px;padding:6px 13px;font-size:11px;font-weight:800;cursor:pointer;font-family:inherit}
.bd-svg{display:block;width:100%;height:auto;border-radius:8px}
.bd-chart-lims{display:flex;gap:14px;justify-content:flex-end;font-size:10px;padding:2px 6px 0;font-variant-numeric:tabular-nums}
.bd-chart-empty{height:120px;display:grid;place-items:center;color:rgba(244,232,207,.5);font-size:12px}
.bd-bigchart{padding:14px}.bd-bigchart .bd-svg{min-height:200px}
.bd-bell{float:right;font-size:14px;cursor:pointer;opacity:.75;padding:2px 4px}
.bd-bell:hover{opacity:1}
.bd-hstats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.bd-hstat{border:1px solid rgba(201,162,75,.4);border-radius:12px;padding:10px;background:rgba(201,162,75,.06)}
.bd-hstat small{color:#e9c77a;font-size:10px;letter-spacing:1px;text-transform:uppercase}
.bd-hstat div{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px;font-size:11px;color:rgba(244,232,207,.8)}
/* deal cards */
.bd-deal{border:1px solid rgba(201,162,75,.5);border-radius:14px;padding:12px 14px;margin-bottom:10px;
  background:linear-gradient(180deg,rgba(201,162,75,.1),rgba(201,162,75,.02))}
.bd-deal.cancelled{opacity:.55}
.bd-deal-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.bd-dealid{color:rgba(244,232,207,.55);font-size:10.5px;margin-left:6px}
.bd-deal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center;margin-bottom:10px}
.bd-deal-grid small{display:block;color:rgba(244,232,207,.55);font-size:9.5px;text-transform:uppercase;letter-spacing:.6px}
.bd-deal-grid b{font-size:12.5px;color:#f6ead0}
.bd-track{display:flex;align-items:center;margin:6px 0 8px}
.bd-track span{flex:1;text-align:center;font-size:9.5px;letter-spacing:.4px;color:rgba(244,232,207,.45);position:relative;z-index:1}
.bd-track span.done{color:#1d1206;font-weight:800}
.bd-track span::before{content:'';display:block;width:14px;height:14px;border-radius:50%;background:#241a0e;border:1.5px solid rgba(201,162,75,.6);margin:0 auto 4px}
.bd-track span.done::before{background:linear-gradient(135deg,#e7c878,#b98a2f);border-color:#f3d27a}
.bd-track i{flex:0 1 24px;height:2px;background:rgba(201,162,75,.4);margin:0 -6px;margin-bottom:16px}
.bd-cancelled{color:#ff8b97;font-size:11.5px;margin:4px 0}
.bd-dealnote{display:block;color:rgba(244,232,207,.55);font-size:11px;margin:4px 0}
.bd-deal-acts{display:flex;gap:8px;flex-wrap:wrap}
.bd-deal-acts .btn{color:#f4e8cf}
/* alerts */
.bd-alert{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid rgba(201,162,75,.4);
  border-radius:12px;padding:10px 12px;margin-bottom:8px;background:rgba(201,162,75,.06);font-size:12.5px}
.bd-alert.reached{border-color:#39d98a;background:rgba(57,217,138,.1)}
.bd-alert-flag{color:#63e6a4;font-weight:800;font-size:11px;margin-top:5px;letter-spacing:.5px}
.bd-alert-acts{display:flex;gap:6px;flex-direction:column;align-items:flex-end}
.bd-navcnt{position:absolute;top:2px;right:18%;background:#d64553;color:#fff;border-radius:99px;font-size:8.5px;
  font-style:normal;padding:1px 5px;font-weight:800}
.bd-tabs a{position:relative}
@media(max-width:560px){
  .bd-deal-grid{grid-template-columns:repeat(2,1fr)}
  .bd-hstats{grid-template-columns:1fr}
}
/* thermal / receipt print */
@media print{
  body *{visibility:hidden}
  .print-area,.print-area *{visibility:visible}
  .print-area{position:absolute;inset:0;margin:0;padding:8px}
}
@page{margin:10mm}
/* v60 payment milestone bar */
.paymil-bar{position:relative;height:22px;border-radius:99px;background:#eee2cf;overflow:hidden;border:1px solid var(--line)}
.paymil-bar i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#b98a2f,#e3c46d);border-radius:99px;transition:width .6s var(--ease)}
.paymil-bar span{position:relative;display:grid;place-items:center;height:22px;font-size:10.5px;font-weight:800;letter-spacing:.6px;color:#3a2208;text-align:center;width:100%}
/* ═══════ v61 bullion desk · Laxmi-style port ═══════ */
.bd-tabs{grid-template-columns:repeat(6,1fr)}
.bd-tabs a{font-size:8.5px}
.bd-navcnt{right:14%}
.bd-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px 2px}
.bd-sum{border:1px solid rgba(201,162,75,.55);border-radius:14px;padding:11px 13px;
  background:linear-gradient(160deg,rgba(201,162,75,.16),rgba(201,162,75,.03))}
.bd-sum.silver{border-color:rgba(220,220,220,.45);background:linear-gradient(160deg,rgba(220,220,220,.13),rgba(220,220,220,.02))}
.bd-sum-h{font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:#e9c77a;display:flex;align-items:center;gap:6px;font-weight:800}
.bd-sum.silver .bd-sum-h{color:#e8e8e8}
.bd-sum-h i{width:7px;height:7px;border-radius:50%;display:inline-block}
.bd-sum-h small{text-transform:none;letter-spacing:0;color:rgba(244,232,207,.55);margin-left:auto;font-weight:500}
.bd-sum-buy{font-family:var(--ff-disp);font-size:25px;color:#fff;font-weight:800;line-height:1.15;margin:4px 0 2px;font-variant-numeric:tabular-nums}
.bd-sum-b{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:rgba(244,232,207,.6)}
.bd-sum-b b{color:#f4e8cf;font-size:12.5px;font-variant-numeric:tabular-nums;margin-left:5px}
.bd-sum-b em{font-style:normal;font-size:10.5px;font-weight:800}
.bd-karstrip{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px 12px 2px}
.bd-kar{border:1px solid rgba(201,162,75,.35);border-radius:10px;text-align:center;padding:8px 4px;background:rgba(201,162,75,.06)}
.bd-kar small{display:block;font-size:8px;letter-spacing:.5px;color:rgba(244,232,207,.6);text-transform:uppercase}
.bd-kar b{display:block;font-size:12.5px;color:#f6ead0;margin-top:3px;font-variant-numeric:tabular-nums}
.bd-intl{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:6px 12px}
.bd-intl-it{border:1px solid rgba(201,162,75,.4);border-radius:12px;padding:9px 6px;text-align:center;background:rgba(201,162,75,.07)}
.bd-intl-it small{display:block;font-size:9px;color:#e9c77a;letter-spacing:.8px;text-transform:uppercase}
.bd-intl-it b{font-size:14.5px;color:#fff;font-variant-numeric:tabular-nums;display:block;margin-top:3px}
.bd-intl-it em{font-style:normal;font-size:8.5px;color:rgba(244,232,207,.5)}
.bd-pct{display:block;font-size:9px;opacity:.85;font-variant-numeric:tabular-nums}
@keyframes bdFlashUp{0%{background:#13a567;box-shadow:0 0 0 4px rgba(70,220,150,.35)}100%{}}
@keyframes bdFlashDown{0%{background:#d64553;box-shadow:0 0 0 4px rgba(240,110,120,.35)}100%{}}
.bd-pill.bd-flash-up{animation:bdFlashUp .9s ease-out}
.bd-pill.bd-flash-down{animation:bdFlashDown .9s ease-out}
.bd-bookbar{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;padding:12px 12px 2px}
.bd-bookbar .btn{color:#f4e8cf}
.bd-news{display:flex;align-items:center;gap:10px;border:1px solid rgba(201,162,75,.35);border-radius:12px;padding:10px 12px;margin-bottom:8px;
  background:rgba(201,162,75,.06);text-decoration:none;color:#f4e8cf}
.bd-news:active{transform:scale(.99)}
.bd-news-dot{width:8px;height:8px;border-radius:50%;flex:0 0 8px}
.bd-news div{flex:1;min-width:0}
.bd-news b{font-size:12.5px;line-height:1.4;font-weight:700;display:block}
.bd-news small{font-size:10px;color:rgba(244,232,207,.55)}
.bd-news>span:last-child{color:#e9c77a;font-size:20px}
@media(max-width:560px){
  .bd-summary{grid-template-columns:1fr}
  .bd-karstrip{grid-template-columns:repeat(3,1fr)}
  .bd-kar:last-child{grid-column:span 3}
  .bd-intl{grid-template-columns:repeat(2,1fr)}
}

/* ── v62 — official MCX feed badge + settings card ── */
.bd-feed{display:inline-block;margin-top:3px;font-size:10px;font-weight:700;letter-spacing:.4px;color:#c99a35;background:rgba(201,154,53,.1);border:1px solid rgba(201,154,53,.35);border-radius:20px;padding:1px 8px;text-transform:uppercase}
.bd-feed-mcx{color:#0f8a5f;background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.45);animation:bdLivePulse 2s infinite}
.bd-feed-mcx.bd-feed-closed{color:#b7791f;background:rgba(237,189,90,.12);border-color:rgba(237,189,90,.45);animation:none}
.bd-tickstate{display:block;font-size:8.5px;letter-spacing:.3px;color:#39d98a;margin-top:2px;font-weight:700;white-space:nowrap}
.bd-tickstate.bad{color:#ff8080}
.bd-pctchip{font-style:normal;font-size:9px;font-weight:800;margin-left:4px;white-space:nowrap}
.bd-card-spot .bd-card-v{font-size:15px}
.bd-macrorow{display:flex;gap:8px;padding:4px 12px 2px;flex-wrap:wrap}
.bd-ratio{flex:1;min-width:100px;border:1px solid rgba(201,162,75,.4);border-radius:10px;padding:6px 10px;font-size:8.5px;letter-spacing:.8px;color:#c9a24b;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:6px}
.bd-ratio b{font-family:var(--ff-disp);font-size:13px;color:#fff;font-weight:800;font-variant-numeric:tabular-nums}
.bd-stats{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.bd-stats small{font-size:8px;color:rgba(244,232,207,.55);letter-spacing:.3px;background:rgba(255,255,255,.05);border-radius:6px;padding:1px 5px}
.bd-feedtime{display:block;text-align:center;font-size:7.5px;color:rgba(244,232,207,.4);margin-top:3px}
.bd-live-tag{margin-left:auto;color:#39d98a;font-weight:800;font-size:9px;letter-spacing:.5px}
.bd-spotsrc{display:block;text-align:center;font-size:7.5px;letter-spacing:.3px;color:rgba(244,232,207,.42);margin-top:3px;text-transform:uppercase}
.bd-card-fut{min-height:148px}
.live-dot.beat{animation:bdHeartbeat 1s ease-out}
@keyframes bdHeartbeat{0%{box-shadow:0 0 0 0 rgba(57,217,138,.7)}100%{box-shadow:0 0 0 9px rgba(57,217,138,0)}}
@keyframes bdLivePulse{0%,100%{opacity:1}50%{opacity:.65}}
#feedForm .fld.full{grid-column:1/-1}

/* ═══════════════════════ v79 · Pride-style simple bullion board ═══════════════════════ */
.bd-board{max-width:600px;border-radius:16px;padding:0 0 14px;background:#050403}
.bd-section{padding-bottom:10px;min-height:40vh}
/* centered compact header */
.bd-topbar-v79{flex-direction:column;text-align:center;gap:3px;padding:14px 14px 10px}
.bd-topbar-v79 img{height:34px;margin-bottom:2px}
.bd-brand{display:block;font-family:var(--ff-disp);color:#e9c77a;letter-spacing:3px;font-size:17px;font-weight:800}
.bd-topbar-v79 .bd-live.v79{font-size:9px;letter-spacing:1.4px;color:rgba(244,232,207,.7);text-transform:none}
.bd-topbar-v79 .bd-live.v79 b{font-size:10px;color:#fff}
.bd-topbar-v79 .bd-tickstate{font-size:9.5px;color:#8fd8ab;letter-spacing:.4px;min-height:12px}
.bd-topbar-v79 .bd-feed{margin-top:2px;font-size:8.5px;padding:1px 8px;letter-spacing:.3px}
/* gold column header */
.bd-gridhead{grid-template-columns:1.55fr .9fr .9fr .85fr;padding:9px 12px;font-size:10px;letter-spacing:1.2px}
/* rate rows: plain white numbers like the reference app */
.bd-rows{padding:9px 10px 5px}
.bd-row{grid-template-columns:1.55fr .9fr .9fr .85fr;gap:4px;border:1px solid #8a6d2f;border-radius:9px;
  padding:10px 8px;margin-bottom:9px;background:#0a0805}
.bd-row.cash{border-color:#b8933f;background:#0e0b06}
.bd-desc b{font-size:12.5px;color:#fff;font-weight:800;letter-spacing:.2px}
.bd-desc small{font-size:9.5px;color:rgba(244,232,207,.62)}
.bd-desc em.bd-time{font-size:9px;color:rgba(244,232,207,.4)}
.bd-nfp{color:#e9c77a;font-style:normal;font-weight:700}
.bd-num{display:block;width:100%;background:transparent;border:0;color:#fff;font-family:var(--ff-disp);
  font-weight:800;font-size:15.5px;line-height:1.1;padding:5px 2px;border-radius:7px;cursor:pointer;
  font-variant-numeric:tabular-nums;transition:background .15s}
.bd-num:active{background:rgba(201,162,75,.18)}
.bd-num:disabled{color:rgba(244,232,207,.33);cursor:default}
.bd-num.bd-flash-up{animation:bdNumUp .8s ease-out}
.bd-num.bd-flash-down{animation:bdNumDown .8s ease-out}
@keyframes bdNumUp{0%{background:rgba(19,165,103,.85);color:#fff}100%{background:transparent}}
@keyframes bdNumDown{0%{background:rgba(214,69,83,.85);color:#fff}100%{background:transparent}}
.bd-band{display:block;font-size:9.5px;margin-top:2px;font-variant-numeric:tabular-nums;letter-spacing:.3px}
.bd-chg .bd-up,.bd-chg .bd-down{color:#f3ead6}
.bd-chg{font-size:11.5px}
.bd-flat{color:rgba(244,232,207,.45)}
/* strip cards: gold header bar, white value, red L / green H */
.bd-pgrid{display:grid;gap:8px;padding:4px 10px}
.bd-pgrid-3{grid-template-columns:repeat(3,1fr)}
.bd-pgrid-2{grid-template-columns:repeat(2,1fr)}
.bd-pcard{border:1px solid #8a6d2f;border-radius:9px;overflow:hidden;background:#0a0805;
  text-align:center;padding:0 0 8px}
.bd-pcard-h{background:linear-gradient(135deg,#d8b65e,#a8812f);color:#1d1206;font-size:10px;font-weight:800;
  letter-spacing:1.1px;padding:7px 4px;min-height:0;text-transform:uppercase}
.bd-pcard-v{display:block;font-family:var(--ff-disp);color:#fff;font-size:17px;font-weight:800;
  margin:8px 0 3px;font-variant-numeric:tabular-nums}
.bd-pcard-lh{display:flex;justify-content:center;gap:7px;align-items:center;font-size:10px;
  font-variant-numeric:tabular-nums;font-weight:700}
.bd-pcard-lh i{font-style:normal;color:#8a6d2f}
.bd-fba{display:flex;justify-content:center;gap:6px;margin:6px 0 2px}
.bd-fba>div{flex:1}
.bd-fba small{display:block;font-size:8.5px;letter-spacing:1px;color:rgba(244,232,207,.6);margin-bottom:2px}
.bd-fba b{font-family:var(--ff-disp);color:#fff;font-size:14.5px;font-weight:800;font-variant-numeric:tabular-nums}
.bd-duty-v{display:block;font-family:var(--ff-disp);color:#fff;font-size:18px;font-weight:800;
  padding:9px 4px 2px;font-variant-numeric:tabular-nums}
.bd-futunit{display:block;font-size:8.5px;color:rgba(244,232,207,.5);letter-spacing:.5px;margin-top:3px}
/* bottom nav: 5 slots with raised gold center button (Pride layout) */
.bd-tabs.bd-tabs-v79{grid-template-columns:repeat(5,1fr);align-items:center;padding:7px 6px calc(8px + env(safe-area-inset-bottom));
  border-radius:0 0 16px 16px}
.bd-tabs-v79 a{position:relative;gap:3px;font-size:9.5px}
.bd-tabs-v79 .bd-ic{font-style:normal;font-size:19px;line-height:1}
.bd-centerbtn{width:56px;height:56px;border-radius:50%;margin:-22px auto 0;cursor:pointer;
  border:2px solid rgba(244,232,207,.55);color:#241503;font-size:22px;font-weight:800;
  background:radial-gradient(circle at 35% 30%,#e7c878,#b98a2f);
  box-shadow:0 10px 24px rgba(0,0,0,.65);display:grid;place-items:center}
.bd-centerbtn:active{transform:scale(.93)}
.bd-centerbtn.spin{animation:bdCenterSpin .7s ease}
@keyframes bdCenterSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.bd-call-fab{bottom:84px}
/* Menu sheet */
.bd-menu{display:grid;gap:9px;padding:8px 12px}
.bd-menu-it{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer;
  background:linear-gradient(180deg,rgba(201,162,75,.1),rgba(201,162,75,.02));
  border:1px solid rgba(201,162,75,.5);border-radius:12px;padding:13px 14px;color:#f4e8cf}
.bd-menu-it:active{transform:scale(.99);background:rgba(201,162,75,.2)}
.bd-menu-ic{font-style:normal;font-size:20px;width:26px;text-align:center}
.bd-menu-it span{flex:1;min-width:0}
.bd-menu-it b{font-size:13.5px;color:#f6ead0;display:flex;align-items:center;gap:7px}
.bd-menu-it small{display:block;font-size:10.5px;color:rgba(244,232,207,.55);margin-top:2px}
.bd-menu-go{color:#e9c77a;font-size:22px;font-style:normal}
.bd-menu-it b .bd-navcnt{position:static}
.bd-tabs-v79 a{position:relative}
/* other sections keep the same calm dark frame */
.bd-section .bd-sech{padding:10px 14px 0}
.bd-section .partner-note{color:rgba(244,232,207,.62);padding:0 14px}
.bd-section .btn-gold,.bd-section .btn-outline{color:#1d1206}
.bd-section .btn-outline{color:#f4e8cf}
@media(max-width:560px){
  .bd-board{border-radius:0}
  .bd-tabs.bd-tabs-v79{border-radius:0}
  .bd-gridhead,.bd-row{grid-template-columns:1.45fr .82fr .82fr .78fr}
  .bd-num{font-size:14px}
  .bd-pcard-v{font-size:15px}
  .bd-duty-v{font-size:16px}
  .bd-fba b{font-size:13px}
  .bd-pgrid{gap:6px;padding:4px 8px}
  .bd-rows{padding:8px 8px 4px}
}

/* ═══════════════════════ v80 · scroll flicker + cross-device polish ═══════════════════════ */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; }
/* freeze header geometry on the smallest phones too (60px stays 60px) */
@media (max-width:680px){
  .header.scrolled .header-in.header-top{ height:60px; }
  .header.scrolled .brand-logo{ height:38px; }
}
/* desktop/laptop: keep the nav collapse on its own compositor-friendly
   property; the 200/150 px JS hysteresis prevents threshold flicker */
@media (min-width:821px){
  .header > .nav{ will-change:height,opacity; }
}
/* v79 bullion board on wide screens gets a touch more room without
   breaking the phone-app column look */
@media (min-width:900px){
  .bd-board{ max-width:640px; }
}
/* long unbroken strings (order ids, UTRs, URLs) must never cause
   horizontal page overflow on phones */
.ci-name, .deal-id, td, .partner-note, .bd-dealid{ overflow-wrap:anywhere; }
/* make taps feel instant on the live board without removing hover states */
.bd-num, .bd-menu-it, .bd-tabs-v79 a{ -webkit-tap-highlight-color:transparent; touch-action:manipulation; }

/* ════════════════════════════════════════════════════════════════════════
   v98 — DESKTOP VERTICAL RHYTHM (owner report: "gaps in the home page")
   Measured with qa/desktop_rhythm.py at 1440×900, not eyeballed.
   Scoped to min-width:769px so it provably cannot affect the phone layout
   (mobile.css is linked after this file and owns ≤768px).

   The home page renders EIGHT `<section class="sec container">` blocks and
   seven of them sit directly adjacent. `.sec{padding:88px 0}` therefore puts
   88px of bottom padding against the next section's 88px of top padding =
   176px of empty cream at every junction — ~1,230px of the home page is
   inter-section blank space. That is the "gap".

   Fix: collapse the doubling at the junction only. The first section keeps
   its full 88px of top padding and the last keeps its 88px of bottom, so the
   page's outer rhythm is untouched; only the seven internal junctions tighten
   from 176px to 112px, recovering ~450px of dead scroll.
   ════════════════════════════════════════════════════════════════════════ */
@media (min-width: 769px) {
  .sec + .sec { padding-top: 24px; }
  /* heading → content: 58px was set at a wider desktop; 44px is the base value
     this file already uses and reads tighter without crowding */
  .sec-head { margin-bottom: 44px; }
  /* The hero assumed 118px of chrome. Real scroll-0 chrome is 124px
     (.utilbar-in{height:42px} + .header-in.header-top{height:82px}), so the
     hero was 6px taller than the space beneath the sticky header and its
     "scroll" cue at bottom:24px fell just under the fold. Exact value, and
     deliberately NOT var(--headerH): setHeaderH() reads a position:sticky
     header, so that variable is 140px at scroll-0 but 98px once scrolled —
     it would make the hero resize while the user scrolls. */
  .hero { min-height: calc(100vh - 124px); }
  @supports (height: 100dvh) { .hero { min-height: calc(100dvh - 124px); } }
}
