:root {
  --ink: #392716;
  --night: #241609;
  --paper: #faf5eb;
  --white: #fffdf8;
  --orange: #a97528;
  --lavender: #f1d99e;
  --lilac: #f1e6d1;
  --violet: #8d6330;
  --aqua: #dac18d;
  --royal: #c29143;
  --muted: #786b58;
  --line: #e9ddc7;
  --editorial: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --display: "Space Grotesk", "Trebuchet MS", sans-serif;
  --body: "DM Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html, body, .category-strip, .cart-drawer, .cart-items, .checkout-page { scrollbar-width: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar, .category-strip::-webkit-scrollbar, .cart-drawer::-webkit-scrollbar, .cart-items::-webkit-scrollbar, .checkout-page::-webkit-scrollbar { display: none; }
html { scroll-behavior: smooth; scroll-padding-top: 86px; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--body); -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
::selection { color: var(--white); background: var(--night); }

.intro-screen { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; background: #000; animation: intro-screen-exit .35s ease 1.65s forwards; }
.intro-screen img { display: block; width: min(68vw, 320px); aspect-ratio: 1; object-fit: contain; }
@keyframes intro-screen-exit { to { opacity: 0; visibility: hidden; } }

.site-header { height: 77px; padding: 0 6.3%; display: flex; align-items: center; justify-content: space-between; background: rgba(250,245,235,.97); backdrop-filter: blur(15px); position: sticky; z-index: 20; top: 0; border-bottom: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: 10px; min-width: max-content; }
.brand-mark { display: block; width: 48px; height: 48px; border: 1px solid rgba(169,117,40,.38); border-radius: 4px; background: #0b0703; box-shadow: 0 0 0 4px rgba(169,117,40,.09); object-fit: cover; }
.brand-name { font: 700 15px/1 var(--display); letter-spacing: .03em; }
.brand-name span { display: block; margin-top: 5px; font: 700 10px/1 var(--body); letter-spacing: .12em; }
.main-nav { display: flex; align-items: center; gap: 36px; }
.nav-link { color: #716555; font-size: 14px; font-weight: 600; transition: color .2s ease; }
.nav-link:hover { color: #a97528; }
.nav-contact { color: var(--ink); }
.nav-contact span, .footer-phone span { color: var(--orange); }
.cart-trigger { display: inline-flex; align-items: center; gap: 9px; padding: 10px 13px; border: 1px solid #e3ddcf; border-radius: 2px; background: var(--white); cursor: pointer; font-size: 13px; font-weight: 600; transition: border-color .2s, transform .2s; }
.cart-trigger:hover { border-color: var(--ink); transform: translateY(-1px); }
.cart-trigger svg { width: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.cart-total-price { color: #805521; font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }
.cart-count { display: grid; place-items: center; min-width: 21px; height: 21px; padding: 0 4px; border-radius: 50%; color: #392716; background: #f0dfbd; font-size: 11px; }
.flying-rocket { position:fixed;z-index:60;left:0;top:0;width:28px;height:48px;pointer-events:none;will-change:left,top,transform,opacity;filter:drop-shadow(0 0 8px rgba(255,190,66,.9)); }
.flying-rocket::before { position:absolute;inset:0 2px 8px;content:"";background:linear-gradient(90deg,#ad5421 0%,#fff9e6 38%,#efb643 68%,#a7431d 100%);clip-path:polygon(50% 0,100% 27%,82% 100%,18% 100%,0 27%); }
.flying-rocket::after { position:absolute;left:8px;bottom:-13px;width:12px;height:19px;content:"";background:linear-gradient(#fff9dc 0%,#ffc342 42%,rgba(255,119,25,0) 100%);clip-path:polygon(50% 0,100% 100%,50% 72%,0 100%); }
.flying-rocket i { position:absolute;z-index:1;left:10px;top:14px;width:8px;height:8px;border-radius:50%;background:#fffbe8;box-shadow:0 0 8px 3px rgba(255,244,194,.9); }
.menu-toggle { display: none; }

.hero { padding: 63px 8% 27px; max-width: 1480px; margin: auto; display: grid; grid-template-columns: 1fr; align-items: center; position: relative; }
.hero-copy { width: min(100%, 980px); max-width: 980px; padding: 12px 0 42px; }
.eyebrow { display: flex; align-items: center; gap: 9px; font-size: 11px; font-weight: 800; letter-spacing: .13em; }
.eyebrow-dot { display: inline-block; width: 7px; height: 7px; background: var(--orange); border-radius: 50%; }
h1, h2, h3, p { margin-top: 0; }
.hero h1 { width: min(100%, 980px); margin: 24px 0 18px; font: 500 clamp(58px,9vw,118px)/.82 var(--editorial); letter-spacing: -.045em; }
.hero-title-break { display: none; }
.hero h1 span { color: #a97528; font-style: italic; }
.hero-intro { max-width: 660px; margin: 0 0 27px; color: var(--muted); font-size: 16px; line-height: 1.75; }
.button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 23px; padding: 0 20px; border: 0; border-radius: 3px; cursor: pointer; font-size: 14px; font-weight: 700; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-dark { color: var(--white); background: var(--night); box-shadow: 0 5px 0 rgba(52,17,95,.14); }
.button-dark:hover { background: #373052; }
.button-outline { border: 1px solid var(--ink); background: transparent; }
.hero-trust { display: flex; gap: 12px; align-items: center; margin-top: 39px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.trust-stars { color: var(--orange); font-size: 18px; letter-spacing: .13em; }
.hero-art { min-height: 435px; position: relative; overflow: hidden; background: radial-gradient(ellipse at 60% 42%,#5f3d1d 0%,#3a230e 51%,#241609 100%); isolation: isolate; }
.hero-art::before, .hero-art::after { position: absolute; z-index: -1; content: ""; border-radius: 50%; }
.hero-art::before { width: 440px; height: 440px; right: 4%; top: 1%; border: 1px solid rgba(245,218,164,.2); }
.hero-art::after { width: 335px; height: 335px; right: 15%; top: 13%; border: 1px solid rgba(245,218,164,.24); }
.hero-art-caption { position: absolute; z-index: 4; left: 24px; right: 24px; display: flex; justify-content: space-between; font-size: 11px; font-weight: 800; letter-spacing: .08em; line-height: 1.7; color: #f4e3c1; }
.hero-art-caption { bottom: 18px; align-items: flex-end; }
.hero-art-caption span:last-child { color: #d2b77f; font-size: 10px; }
.hero-art-caption span:first-child { color: #fff4dc; }
.burst { position: absolute; z-index: 1; width: 155px; height: 155px; }
.burst i { position: absolute; left: calc(50% - 2px); top: 50%; width: 4px; height: 55px; border-radius: 0 0 50% 50%; background: var(--orange); transform-origin: 50% 0; }
.burst i:nth-child(2) { transform: rotate(45deg); background: #f1d99e; }.burst i:nth-child(3) { transform: rotate(90deg); background: #c29143; }.burst i:nth-child(4) { transform: rotate(135deg); background: #f6e9c9; }.burst i:nth-child(5) { transform: rotate(180deg); background: #ddbd79; }.burst i:nth-child(6) { transform: rotate(225deg); background: #c29143; }.burst i:nth-child(7) { transform: rotate(270deg); background: #f6e9c9; }.burst i:nth-child(8) { transform: rotate(315deg); background: #f1d99e; }
.burst b { position: absolute; z-index: 2; left: 50%; top: 50%; width: 24px; height: 24px; border-radius: 50%; background: var(--lavender); transform: translate(-50%,-50%); box-shadow: 0 0 0 7px rgba(241,217,158,.28); }
.burst-one { width: 203px; height: 203px; left: 12%; top: 19%; transform: rotate(22deg); }
.burst-one i { height: 79px; width: 6px; left: calc(50% - 3px); }
.burst-one b { width: 31px; height: 31px; background: #e2a943; box-shadow: 0 0 0 9px rgba(232,189,104,.22); }
.burst-two { right: 8%; top: 12%; transform: scale(.62) rotate(-10deg); }
.burst-three { right: 20%; bottom: 8%; transform: scale(.55) rotate(25deg); }
.burst-three i { background: var(--violet); }
.hero-rocket { position:absolute;z-index:2;width:16px;height:40px;clip-path:polygon(50% 0,100% 24%,88% 100%,12% 100%,0 24%);background:linear-gradient(90deg,#c29143 0%,#fff9eb 42%,#edc873 100%);filter:drop-shadow(0 0 9px rgba(232,189,104,.8));opacity:0; }
.hero-rocket::after { position:absolute;top:31px;left:5px;width:6px;height:32px;background:linear-gradient(#fff0c4,rgba(232,189,104,0));content:""; }
.hero-rocket-one { left:24%;bottom:16%; }
.hero-rocket-two { left:61%;bottom:9%;transform:scale(.78); }
.hero-rocket-three { left:78%;bottom:18%;transform:scale(.62); }
.hero-orbit { position: absolute; z-index: 0; border: 1px solid rgba(222,196,148,.2); border-radius: 50%; transform: rotate(-30deg); }
.orbit-one { width: 78%; height: 39%; top: 35%; left: 10%; }
.orbit-two { width: 92%; height: 56%; top: 25%; left: 4%; transform: rotate(32deg); }
.art-spark { position: absolute; z-index: 2; color: var(--orange); }
.spark-a { top: 25%; left: 52%; font-size: 23px; }.spark-b { right: 13%; bottom: 32%; color: var(--royal); font-size: 19px; }.spark-c { bottom: 29%; left: 15%; color: #f1d99e; font-size: 16px; }
.hero-sticker { position: absolute; z-index: 5; right: 8%; top: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 124px; height: 124px; border: 2px solid #fff2d4; border-radius: 50%; color: #30200e; background: radial-gradient(circle at 32% 27%,#fff8e5 0,#f5d993 42%,#dca84b 100%); transform: translateY(-25%) rotate(11deg); box-shadow: 0 5px 25px rgba(0,0,0,.36),0 0 0 5px rgba(232,189,104,.2); text-align:center; }
.hero-sticker span { font-size: 10px; font-weight: 800; letter-spacing: .08em; }.hero-sticker strong { font: 700 37px/.92 var(--display); letter-spacing: -.08em; }.hero-sticker small { margin-top: 7px; font-size: 9px; font-weight: 800; text-align: center; letter-spacing: .07em; line-height: 1.4; }
.hero-index { grid-column: 1/-1; margin-top: 26px; padding-top: 14px; border-top: 1px solid var(--line); color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .1em; }

.diwali-banner { --diwali-gold:#e8bd68; --diwali-cream:#fff5df; min-height:420px; display:grid; grid-template-columns:minmax(220px,.82fr) minmax(0,1.4fr); align-items:center; gap:clamp(24px,5vw,72px); position:relative; isolation:isolate; overflow:hidden; padding:48px max(7%,calc((100vw - 1160px)/2)); color:var(--diwali-cream); background:linear-gradient(90deg,rgba(27,16,6,.98) 0%,rgba(37,22,8,.92) 37%,rgba(37,22,8,.26) 100%),url("images/diwali-banner.jpg") center 43%/cover no-repeat,#241609; }
.diwali-banner::before,.diwali-banner::after { position:absolute; z-index:1; border:1px solid rgba(232,189,104,.2); border-radius:50%; content:"";pointer-events:none; }
.diwali-banner::before { width:470px;height:470px;right:-100px;top:-315px;box-shadow:0 0 0 22px rgba(232,189,104,.055),0 0 0 48px rgba(232,189,104,.045),0 0 0 78px rgba(232,189,104,.035); }
.diwali-banner::after { width:230px;height:230px;left:35%;bottom:-198px;box-shadow:0 0 0 20px rgba(232,189,104,.05),0 0 0 43px rgba(232,189,104,.04); }
.diwali-copy { position:relative;z-index:2;max-width:340px; }
.diwali-eyebrow { display:flex;align-items:center;gap:9px;color:#f0d89f;font-size:11px;font-weight:700;letter-spacing:.13em; }
.diwali-eyebrow i { width:7px;height:7px;border-radius:50%;background:#e8bd68;box-shadow:0 0 13px rgba(232,189,104,.8); }
.diwali-offer { position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:11px;margin:9px 0 11px;padding:8px 14px 8px 10px;border:1px solid #ffe3a7;color:#fff8e8;background:linear-gradient(110deg,#edc873,#a76c27 78%);box-shadow:0 7px 24px rgba(0,0,0,.36),0 0 0 3px rgba(232,189,104,.15); }
.diwali-offer::after { position:absolute;z-index:0;top:-30%;bottom:-30%;left:-55%;width:35%;content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg); }
.diwali-offer>strong { position:relative;z-index:1;color:#291906;font:700 31px/.9 var(--display);letter-spacing:-.07em;text-shadow:0 1px 0 rgba(255,244,216,.35); }
.diwali-offer>span { position:relative;z-index:1;display:flex;flex-direction:column;font-size:13px;font-weight:800;letter-spacing:.1em;line-height:1.2; }
.diwali-offer small { margin-top:3px;color:#fff0d0;font-size:9px;letter-spacing:.08em; }
.diwali-copy h2 { margin:5px 0 8px;color:#fffefa;font:500 clamp(42px,4.5vw,61px)/.81 var(--editorial);letter-spacing:-.035em; }
.diwali-copy h2 em { color:#edc873;font-weight:500; }
.diwali-copy>p { max-width:300px;margin:0;color:rgba(247,244,237,.9);font-size:14px;line-height:1.75; }
.diwali-greeting { display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(232,189,104,.34);color:#f0d89f;font-size:11px;font-weight:700;letter-spacing:.12em; }
.diwali-greeting b { color:#edc873;font-size:12px; }
.diwali-brands { position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.diwali-brand { min-height:137px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:15px 8px 12px;border:1px solid rgba(232,211,168,.65);color:#382716;background:linear-gradient(150deg,rgba(255,251,240,.98),rgba(244,227,190,.95));box-shadow:0 12px 32px rgba(15,8,3,.32);text-align:center;transition:transform .3s,box-shadow .3s; }
.diwali-brand::before { position:absolute;inset:5px;border:1px solid rgba(167,119,68,.21);content:"";pointer-events:none; }
.diwali-brand:hover { transform:translateY(-5px);box-shadow:0 17px 36px rgba(15,8,3,.44); }
.diwali-brand-number { position:absolute;top:12px;left:12px;color:#806747;font-size:10px;letter-spacing:.08em; }
.brand-seal { width:39px;height:39px;display:grid;place-items:center;border:1px solid #bb9657;border-radius:50%;color:#805521;background:#fffaf0;font:600 20px var(--editorial);box-shadow:0 0 0 4px rgba(190,151,88,.1); }
.diwali-brand h3 { margin:9px 0 0;color:#3a2938;font:600 clamp(14px,1.6vw,20px) var(--display);letter-spacing:.095em; }
.diwali-brand-caption { margin-top:5px;color:#776344;font-size:9px;font-weight:700;letter-spacing:.08em; }
.brand-sonny .brand-seal { color:#a04d28;border-color:#c27a4c; }
.brand-sonny h3 { color:#944324; }
.brand-vadivel .brand-seal { color:#526244;border-color:#8a9569; }
.brand-vadivel h3 { color:#4c5c3f; }
.diwali-side-note { position:absolute;right:16px;top:50%;color:rgba(255,239,206,.9);font-size:10px;font-weight:600;letter-spacing:.1em;writing-mode:vertical-rl; }
.diwali-fireworks { position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none; }
.diwali-burst { position:absolute;display:block;width:4px;height:4px;border-radius:50%;background:#fff4cb;box-shadow:0 0 9px 3px rgba(232,189,104,.7);opacity:0; }
.diwali-burst i { position:absolute;left:2px;top:2px;width:2px;height:19px;border-radius:50%;background:linear-gradient(#fffdf4,#e8bd68,rgba(232,189,104,0));transform:translate(-50%,-50%) rotate(calc(var(--ray)*30deg)) translateY(-16px) scaleY(.2);transform-origin:50% 50%;opacity:0; }
.diwali-burst i:nth-child(1){--ray:0}.diwali-burst i:nth-child(2){--ray:1}.diwali-burst i:nth-child(3){--ray:2}.diwali-burst i:nth-child(4){--ray:3}.diwali-burst i:nth-child(5){--ray:4}.diwali-burst i:nth-child(6){--ray:5}.diwali-burst i:nth-child(7){--ray:6}.diwali-burst i:nth-child(8){--ray:7}.diwali-burst i:nth-child(9){--ray:8}.diwali-burst i:nth-child(10){--ray:9}.diwali-burst i:nth-child(11){--ray:10}.diwali-burst i:nth-child(12){--ray:11}
.diwali-burst-one { top:25%;left:53%; }.diwali-burst-two { top:72%;left:74%; }.diwali-burst-three { top:19%;left:91%; }
.diwali-rocket { position:absolute;left:46%;bottom:5%;width:10px;height:30px;border:1px solid rgba(255,241,204,.8);border-radius:60% 60% 3px 3px;background:linear-gradient(90deg,#d09a3e,#fff4cb 48%,#b16a27);transform:rotate(31deg);filter:drop-shadow(0 0 5px rgba(232,189,104,.75)); }
.diwali-rocket::before { position:absolute;left:1px;top:-7px;width:6px;height:9px;border-radius:50% 50% 0 0;background:#f1d18d;content:""; }
.diwali-rocket::after { position:absolute;top:24px;left:1px;width:6px;height:24px;background:linear-gradient(#e6b95f,rgba(230,185,95,0));content:""; }
.diwali-horizon { position:absolute;right:14%;bottom:-48px;width:180px;height:83px;border:1px solid rgba(232,189,104,.35);border-radius:50% 50% 0 0; }
.diwali-diya { position:absolute;bottom:20px;color:#edc873;font-size:18px;text-shadow:0 0 16px rgba(232,189,104,.75); }
.diya-one { left:38%; }.diya-two { right:6%;bottom:37px;color:#efb65e; }
.ticker { overflow: hidden; margin-top: 0; padding: 13px 0; color: #f5e7ca; background: var(--night); border-top: 1px solid rgba(224,205,168,.25); border-bottom: 1px solid rgba(224,205,168,.25); }
.ticker-track { display: flex; justify-content: space-around; align-items: center; gap: 34px; width: max-content; min-width: 100%; white-space: nowrap; animation: marquee 40s linear infinite; }
.ticker-track span { font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.ticker-track b { margin-left: 28px; color: #e2bd70; font-size: 12px; }
@keyframes marquee { to { transform: translateX(-20%); } }

.shop-section { max-width: 1320px; margin: 0 auto; padding: 98px 6% 104px; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 25px; margin-bottom: 38px; }
.section-heading h2, .delivery-title h2 { margin: 18px 0 0; font: 500 clamp(48px,6vw,76px)/.91 var(--editorial); letter-spacing: -.045em; }
.section-heading h2 span, .delivery-title h2 span { color: #a97528; font-style: italic; }
.section-heading > p { max-width: 360px; margin: 0 0 4px; color: var(--muted); font-size: 15px; line-height: 1.75; }
.catalog-sticky { position:sticky;top:77px;z-index:15;margin:0 -6% 18px;padding:0 6% 8px;background:rgba(250,245,235,.97);box-shadow:0 10px 16px -18px rgba(36,22,9,.5); }
.shop-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 15px 0; border-top: 1px solid var(--line); }
.search-box { display: flex; align-items: center; gap: 10px; width: min(360px, 60%); }
.search-box svg { flex: 0 0 auto; width: 17px; fill: none; stroke: #827d89; stroke-width: 1.6; stroke-linecap: round; }
.search-box input { width: 100%; padding: 9px 0; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 14px; }
.search-box input::placeholder { color: #948f98; }
.sort-label { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.sort-label select { border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 13px; font-weight: 600; cursor: pointer; }
.category-strip { display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:10px 0 14px;border-bottom:1px solid var(--line);background:transparent;scrollbar-width:none;scrollbar-color:transparent transparent;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x; }
.category-strip::-webkit-scrollbar { display:none;width:0;height:0; }
.category-chip { flex:0 0 auto;min-height:38px;padding:8px 14px;border:1px solid var(--line);border-radius:4px;color:var(--ink);background:var(--white);cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap;scroll-snap-align:start;transition:background-color .2s,border-color .2s,color .2s; }
.category-chip-label { display:inline-block;color:inherit; }
.category-chip:hover { border-color:#c29143;background:#fff9ed; }
.category-chip:focus-visible { outline:2px solid #a97528;outline-offset:2px; }
.category-chip.active,.category-chip.active:hover { border-color:var(--night);color:var(--white);background:var(--night); }
@keyframes category-glitter { 0%,12% { background-position:100% 50%; } 72%,100% { background-position:-100% 50%; } }
@media (prefers-reduced-motion: reduce) { .category-chip { transition:none; } }
.catalog-meta { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 0 0 16px; color: var(--muted); font-size: 12px; }
.catalog-meta p { margin: 0; }
.catalog-meta span { color: #756b5c; }.catalog-meta span b { color: #986823; font-weight: 700; letter-spacing: .06em; }
.product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px 17px; }
.product-card { min-width: 0; position:relative;overflow:hidden;padding: 8px 8px 15px; border: 1px solid #e9ddc7; background: var(--white); transition: transform .25s, box-shadow .25s, border-color .25s; }
.product-card::before { position:absolute;z-index:3;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#a97528,#f1d99e,#d5a64b);content:"";transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.65,.3,1); }
.product-card:hover::before { transform:scaleX(1); }
.product-card:hover { transform: translateY(-4px); border-color: #d2b77f; box-shadow: 0 14px 36px rgba(57,39,22,.12); }
.product-visual { display: flex; align-items: center; justify-content: center; position: relative; aspect-ratio: 1.2; overflow: hidden; background: #f1e6d1; }
.product-card, .peacock-pick { transition: transform .25s, box-shadow .25s, border-color .25s; }
.product-card.cracker-dimming, .peacock-pick.cracker-dimming { animation: cracker-brighten 1s linear forwards; }
.product-artwork { position: absolute; inset: 0; width: 100%; height: 100%; }
.product-photo-frame { position:absolute;inset:0;padding:8px;background:#fffefa; }
.product-photo { display:block;width:100%;height:100%;object-fit:contain; }
.product-watermark-mask { position:absolute;top:8%;left:18%;width:36%;height:19%;background:#fffefa;pointer-events:none; }
.image-sparkles { position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none; }
.image-sparkles i { position:absolute;color:#e7ad36;font-size:19px;font-style:normal;line-height:1;text-shadow:0 0 4px #fff5d5,0 0 12px rgba(222,160,47,.95);opacity:.62; }
.image-sparkles i:nth-child(1) { top:24%;left:22%; }
.image-sparkles i:nth-child(2) { top:47%;right:22%;font-size:15px; }
.image-sparkles i:nth-child(3) { top:68%;left:39%;font-size:13px; }
.image-sparkles i:nth-child(4) { top:30%;right:38%;font-size:12px; }
.image-sparkles i:nth-child(5) { bottom:17%;right:18%;font-size:16px; }
.image-sparkles i:nth-child(6) { top:57%;left:15%;font-size:12px; }
.cracker-blast { position: absolute; z-index: 2; inset: 0; overflow: hidden; pointer-events: none; }
.cracker-blast::before { position: absolute; top: 50%; left: 50%; width: 20px; height: 20px; border: 1px solid #d2a854; border-radius: 50%; content: ""; opacity: 0; transform: translate(-50%,-50%) scale(.2); }
.blast-core { position: absolute; top: 50%; left: 50%; width: 27px; height: 27px; border: 1px solid #d2a854; border-radius: 50%; background: radial-gradient(circle,#fffdf5 0 9%,#f1d99e 23%,rgba(210,168,84,.72) 47%,rgba(210,168,84,0) 74%); opacity: 0; transform: translate(-50%,-50%) scale(.2); }
.cracker-blast i { --spark-angle: calc(var(--spark-index) * 30deg); position: absolute; top: 50%; left: 50%; width: 4px; height: 24px; border-radius: 50%; background: linear-gradient(#fffdf4,#d2a854 75%,rgba(210,168,84,0)); opacity: 0; transform: translate(-50%,-50%) rotate(var(--spark-angle)) translateY(-6px) scale(.2); }
.cracker-blast i:nth-of-type(2n) { width: 3px; height: 17px; background: linear-gradient(#fffdf4,#f4e3bc 75%,rgba(244,227,188,0)); }
.add-glyph { display: block; }
.add-button.just-added .add-glyph { animation: added-check .75s both; }
@media (prefers-reduced-motion: no-preference) {
  .cracker-blast.is-playing::before { animation: blast-ring .7s ease-out both; }
  .cracker-blast.is-playing .blast-core { animation: blast-core .55s ease-out both; }
  .cracker-blast.is-playing i { animation: spark-shoot .68s cubic-bezier(.15,.7,.24,1) both; animation-delay: calc(var(--spark-index) * 9ms); }
  .cracker-blast i:nth-of-type(1) { --spark-index: 0; }
  .cracker-blast i:nth-of-type(2) { --spark-index: 1; }
  .cracker-blast i:nth-of-type(3) { --spark-index: 2; }
  .cracker-blast i:nth-of-type(4) { --spark-index: 3; }
  .cracker-blast i:nth-of-type(5) { --spark-index: 4; }
  .cracker-blast i:nth-of-type(6) { --spark-index: 5; }
  .cracker-blast i:nth-of-type(7) { --spark-index: 6; }
  .cracker-blast i:nth-of-type(8) { --spark-index: 7; }
  .cracker-blast i:nth-of-type(9) { --spark-index: 8; }
  .cracker-blast i:nth-of-type(10) { --spark-index: 9; }
  .cracker-blast i:nth-of-type(11) { --spark-index: 10; }
  .cracker-blast i:nth-of-type(12) { --spark-index: 11; }
  .add-button.just-added { color: #fffefa; border-color: #241609; background: #241609; box-shadow: 0 0 0 5px rgba(169,117,40,.24); }
}
@keyframes blast-ring { 0% { opacity: .8; transform: translate(-50%,-50%) scale(.2); } 100% { opacity: 0; transform: translate(-50%,-50%) scale(10); } }
@keyframes blast-core { 0% { opacity: 0; transform: translate(-50%,-50%) scale(.2); } 23% { opacity: 1; transform: translate(-50%,-50%) scale(1.45); } 100% { opacity: 0; transform: translate(-50%,-50%) scale(.45); } }
@keyframes spark-shoot { 0% { opacity: 0; transform: translate(-50%,-50%) rotate(var(--spark-angle)) translateY(-6px) scale(.25); } 22% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%,-50%) rotate(var(--spark-angle)) translateY(-96px) scale(.55); } }
@keyframes added-check { 0% { transform: scale(.65); } 36% { transform: scale(1.24) rotate(-9deg); } 65% { transform: scale(.92) rotate(5deg); } 100% { transform: scale(1); } }
@keyframes cracker-brighten {
  0% { filter: brightness(.5) saturate(.75); }
  20% { filter: brightness(.58) saturate(.8); }
  40% { filter: brightness(.68) saturate(.86); }
  60% { filter: brightness(.8) saturate(.92); }
  80% { filter: brightness(.91) saturate(.97); }
  100% { filter: brightness(1) saturate(1); }
}
.offer-badge { position: absolute; z-index: 2; top: 9px; right: 8px; padding: 7px 9px; border: 1px solid #e6c77e; border-radius: 1px; color: #fff4dc; background: var(--night); box-shadow: 0 2px 6px rgba(36,22,9,.18); font-size: 11px; font-weight: 600; letter-spacing: .06em; }
.actual-visual-price { position: absolute; z-index: 2; top: 36px; right: 8px; padding: 4px 6px; color: #595148; background: rgba(255,253,248,.94); font-size: 11px; font-weight: 600; text-decoration: line-through; text-decoration-color: #a97528; text-decoration-thickness: 1px; }
.product-number { position: absolute; bottom: 8px; left: 9px; z-index: 2; color: color-mix(in srgb,var(--art-accent) 80%,var(--ink)); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.product-category { margin: 14px 3px 7px; overflow: hidden; color: #76664e; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.product-title { min-height:46px;margin:0 3px 8px;padding:0;color:#805521;font:700 19px/1.16 var(--editorial);letter-spacing:0; }
.product-brand { min-height: 14px; margin: -3px 3px 8px; color: #716e61; font-size: 11px; letter-spacing: .04em; }
.product-bottom { display: flex; align-items: center; justify-content: space-between; gap: 5px; margin: 0 2px; }
.product-price { display: flex; flex-direction: column; gap: 2px; }
.sale-price { font: 700 18px/1 var(--body); letter-spacing: -.04em; }
.old-price { color: #706b61; font-size: 11px; text-decoration: line-through; text-decoration-color: #a97528; }
.add-button { display: grid; place-items: center; width: 31px; height: 31px; flex: 0 0 auto; border: 1px solid #d8c49d; border-radius: 50%; color: var(--night); background: #f5ead4; cursor: pointer; font-size: 17px; line-height: 1; transition: color .2s, background .2s, border-color .2s; }
.add-button:hover { color: #f6eddb; border-color: var(--night); background: var(--night); }
.no-results { padding: 45px 10px; text-align: center; color: var(--muted); font-size: 13px; }
.load-more { display:flex;min-width:190px;margin:35px auto 0;border:1px solid #b78232;color:#fff6e2;background:linear-gradient(115deg,#704414,#8e5b1d);box-shadow:0 5px 0 rgba(90,54,14,.12),0 9px 22px rgba(115,76,25,.14); }
.load-more[hidden] { display:none; }
.load-more:hover { border-color:#d2a04b;background:linear-gradient(115deg,#805019,#9a6622); }
.load-more span { color:#f3d68d;font-size:15px; }

.promo-band { min-height: 348px; display: grid; grid-template-columns: 1fr .8fr; align-items: center; padding: 60px 12%; overflow: hidden; color: #fff4dc; background: linear-gradient(112deg,#241609 0%,#43280f 68%,#684016 100%); }
.promo-kicker { color: #f1d99e; font-size: 11px; font-weight: 600; letter-spacing: .12em; }
.promo-copy h2 { margin: 17px 0 13px; font: 500 clamp(45px,5.5vw,68px)/.91 var(--editorial); letter-spacing: -.04em; }
.promo-copy h2 span { color: #edc873; font-style: italic; }
.promo-copy p { max-width: 450px; margin: 0 0 19px; color: #e2d9c9; font-size: 15px; line-height: 1.75; }
.promo-link { display: inline-flex; align-items: center; gap: 13px; padding-bottom: 6px; border-bottom: 1px solid var(--lavender); color: var(--lavender); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.promo-art { height: 230px; position: relative; display: grid; place-items: center; }
.promo-art::before,.promo-art::after { position: absolute; content: ""; border: 1px solid rgba(255,236,190,.25); border-radius: 50%; }
.promo-art::before { width: 220px; height: 220px; }.promo-art::after { width: 167px; height: 167px; }
.promo-sticker { z-index: 1; display: grid; place-items: center; width: 130px; height: 130px; border: 2px solid var(--ink); border-radius: 50%; color: var(--ink); background: #f1d99e; transform: rotate(-10deg); font: 700 22px/.88 var(--display); letter-spacing: -.06em; text-align: center; box-shadow: 4px 5px 0 #a97528; }
.promo-sticker b { color: var(--orange); font-size: 16px; }
.promo-spark { position: absolute; z-index: 1; color: var(--orange); }.promo-spark-one { top: 9%; left: 16%; font-size: 26px; }.promo-spark-two { right: 12%; bottom: 7%; color: var(--lavender); font-size: 20px; }
.promo-note { position: absolute; z-index: 1; right: 0; bottom: 3%; color: #ddc99d; font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.7; }

.delivery-section { max-width: 1250px; margin: auto; padding: 84px 6% 80px; }
.delivery-title h2 { margin-bottom: 36px; }
.delivery-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.delivery-card { min-height: 170px; padding: 19px 25px 23px 0; }
.delivery-card + .delivery-card { padding-left: 25px; border-left: 1px solid var(--line); }
.delivery-num { color: var(--orange); font: 600 11px var(--display); }
.delivery-card h3 { margin: 24px 0 8px; font: 600 15px var(--display); }
.delivery-card p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.payment-info { margin-top:24px;padding:20px 22px;border:1px solid #d9c79e;border-left:4px solid var(--orange);background:#fffaf0; }
.payment-info h3 { margin:0 0 8px;color:var(--night);font:600 17px var(--display); }
.payment-info p { max-width:900px;margin:0;color:var(--muted);font-size:14px;line-height:1.75; }
.delivery-fineprint { margin: 16px 0 0; color: #716b60; font-size: 12px; line-height: 1.75; }

.last-call { min-height: 332px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; color: #fff8e9; background: linear-gradient(115deg,#241609,#4c2d10); text-align: center; }
.last-call > span { font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.last-call > span { color: #f1d99e; }
.last-call h2 { margin: 16px 0 23px; font: 500 clamp(52px,6.5vw,78px)/.88 var(--editorial); letter-spacing: -.035em; }
.last-call h2 i { color: #edc873; font-style: italic; }
.button-light { color: #392716; background: #f1d99e; }
.button-light:hover { background: #faebc8; }
.last-call-spark { position: absolute; top: 10px; right: 13%; color: #edc873; font-size: 57px; opacity: .8; }

.site-footer { padding: 34px 7% 0; color: #f8edda; background: #201509; }
.footer-brand .brand-mark { color: var(--ink); background: var(--lavender); }.footer-brand .brand-name { color: var(--white); }
.site-footer > p { margin: 15px 0 10px; color: #e9dcc4; font-size: 14px; line-height: 1.75; }
.site-footer > p span { color: #d4c4aa; font-size: 12px; }
.footer-phone { display: inline-flex; gap: 8px; align-items: center; font-size: 14px; font-weight: 700; }
.footer-bottom { display: flex; justify-content: space-between; gap: 15px; margin-top: 25px; padding: 14px 0; border-top: 1px solid #5d492f; color: #d4c4aa; font-size: 11px; }

.drawer-backdrop { position: fixed; z-index: 39; inset: 0; background: rgba(22,17,36,.48); }
.cart-drawer { position: fixed; z-index: 40; top: 0; right: 0; bottom: 0; width: min(500px,100%); display: flex; flex-direction: column; padding: 25px; overflow-y: auto; background: var(--paper); box-shadow: -10px 0 40px rgba(20,14,35,.15); transform: translateX(103%); transition: transform .3s ease; }
.cart-drawer.is-open { transform: translateX(0); }
.drawer-header { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.cart-header-actions { display:flex;align-items:center;gap:8px; }
.cart-pdf-button { display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 9px;border:1px solid #d8c49d;border-radius:4px;color:#805521;background:#fffaf0;cursor:pointer;font-size:11px;font-weight:800;letter-spacing:.04em;transition:background-color .2s,border-color .2s; }
.cart-pdf-button:hover:not(:disabled) { border-color:#a97528;background:#fff3d7; }
.cart-pdf-button:focus-visible { outline:2px solid #a97528;outline-offset:2px; }
.cart-pdf-button:disabled { opacity:.45;cursor:not-allowed; }
.cart-pdf-button svg { width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round; }
.drawer-kicker { color: var(--orange); font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.drawer-header h2 { margin: 8px 0 0; font: 600 26px var(--display); letter-spacing: -.06em; }
.drawer-header h2 span { color: var(--muted); font: 500 12px var(--body); letter-spacing: 0; }
.drawer-close { width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 50%; background: transparent; cursor: pointer; font-size: 22px; line-height: 1; }
.cart-items { min-height:0;flex:1 1 auto;overflow-y:auto;scrollbar-width:none; }
.cart-items::-webkit-scrollbar { display:none; }
.cart-category-group + .cart-category-group { margin-top:8px; }
.cart-category-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:13px 0 2px;border-bottom:1px solid var(--line);color:#805521;font:700 13px var(--display);letter-spacing:.04em; }
.cart-category-link { display:inline-flex;align-items:center;gap:5px;padding:0;border:0;color:inherit;background:transparent;font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer; }
.cart-category-link span { color:#a97528;font-size:12px;opacity:.65;transition:transform .2s,opacity .2s; }
.cart-category-link:hover span { transform:translate(2px,-2px);opacity:1; }
.cart-category-link:focus-visible { outline:2px solid #a97528;outline-offset:3px; }
.cart-category-total { display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--ink); }
.cart-category-total svg { width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6; }
.cart-category-heading strong { color:inherit;font:700 14px var(--display);letter-spacing:0;white-space:nowrap; }
.cart-inline-price { display:inline-flex;align-items:flex-start;gap:1px;white-space:nowrap; }
.cart-price-symbol { margin-top:.08em;font-size:.62em;line-height:1; }
.cart-item { padding:14px 0; }
.cart-item-main { min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(70px,auto);grid-template-areas:"details each actions price";align-items:center;gap:6px 12px; }
.cart-item-details { grid-area:details;min-width:0; }
.cart-item-name { margin:0 0 4px;font:600 13px/1.35 var(--display); }
.cart-item-info,.cart-item-unit-price,.cart-item-each { color:var(--muted);font-size:12px; }
.cart-item-each { grid-area:each;display:flex;align-items:baseline;gap:3px;white-space:nowrap;font-variant-numeric:tabular-nums; }
.cart-item-each small { font-size:10px; }
.cart-item-unit-price { grid-area:price;justify-self:end;text-align:right;white-space:nowrap; }
.cart-item-actions { grid-area:actions;display:flex;align-items:center;justify-content:center;gap:10px; }
.quantity-control { display:flex;align-items:center;gap:10px;padding:3px 7px;border:1px solid #d8c49d;border-radius:5px;background:#fffaf0; }
.quantity-control button { width:22px;height:22px;border:0;color:var(--ink);background:transparent;cursor:pointer;font-size:16px;line-height:1; }
.quantity-control button svg { display:block;width:14px;height:14px;margin:auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7; }
.quantity-control span { min-width:14px;text-align:center;font-size:11px;font-weight:700; }
.cart-empty { display: none; flex: 1; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.cart-empty.visible { display: flex; }
.empty-icon { color: var(--orange); font-size: 40px; }
.cart-empty h3 { margin: 12px 0 5px; font: 600 17px var(--display); }
.cart-empty p { margin-bottom: 20px; color: var(--muted); font-size: 13px; }
.cart-order-summary { flex:0 0 auto;margin-top:auto;padding-top:16px;border-top:1px solid var(--line); }
.cart-order-summary[hidden] { display:none; }
.cart-total { display: flex; justify-content: space-between; align-items: center; margin-bottom: 5px; }
.cart-total span { font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.cart-total-prices { display:flex;flex-direction:column;align-items:flex-end;gap:2px; }
.cart-total-prices s { color:var(--muted);font-size:12px; }
.cart-total strong,.checkout-order-total strong { font: 700 22px var(--display); }
.cart-total-note { margin:4px 0 13px;color:var(--muted);font-size:12px; }
.checkout-page { position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:radial-gradient(ellipse at 50% 0%,#fffdf8 0%,var(--paper) 66%);overflow-y:auto; }
.checkout-page::backdrop { background:rgba(22,17,36,.62);backdrop-filter:blur(3px); }
.checkout-page[open] { animation:checkout-page-enter .35s ease-out both; }
.checkout-page-header { min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px max(6%,calc((100vw - 1040px)/2));border-top:3px solid #b77b27;border-bottom:1px solid var(--line);background:rgba(255,253,248,.94); }
.checkout-back { display:inline-flex;align-items:center;gap:9px;padding:8px 0;border:0;color:var(--ink);background:transparent;cursor:pointer;font-size:14px;font-weight:700; }
.checkout-back span { color:var(--orange);font-size:20px; }
.checkout-page-header .drawer-kicker { color:#805521;letter-spacing:.14em; }
.checkout-page-content { position:relative;width:min(100% - 40px,680px);margin:42px auto 64px;padding:42px 48px 40px;border:1px solid #eadfc9;border-top:0;border-radius:5px;background:rgba(255,253,248,.96);box-shadow:0 18px 55px rgba(57,39,22,.09);animation:checkout-card-enter .65s cubic-bezier(.2,.75,.25,1) both; }
.checkout-page-content::before { position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#9c5c15 0%,#efc66d 28%,#fff1c5 48%,#d69a38 67%,#9c5c15 100%);background-size:220% 100%;content:"";animation:checkout-gold-sweep 1.35s ease-out .2s both; }
.checkout-page-content h2 { margin:10px 0;color:#a56c1c;font:600 clamp(34px,5vw,44px) var(--display);letter-spacing:-.045em; }
.checkout-page-content > .dialog-kicker { display:inline-block;color:#a56c1c;font-size:11px;font-weight:800;letter-spacing:.16em; }
.checkout-page-intro { margin:0 0 25px;color:var(--muted);font-size:14px;line-height:1.7; }
.checkout-form { padding-top:21px;border-top:1px solid var(--line); }
.checkout-order-total { display:flex;align-items:center;justify-content:space-between;margin:0 0 8px;padding:15px 18px;border:1px solid #e8d6b5;border-radius:4px;background:linear-gradient(110deg,#fff9ed,#f7ecd7); }
.checkout-order-total span { font-size:11px;font-weight:800;letter-spacing:.1em; }
.checkout-order-total strong { color:#3c210b;font-size:25px; }
.min-order-note { margin:7px 0 18px;color:var(--muted);font-size:12px;line-height:1.6; }
.checkout-form > label:not(.age-check) { display:block;margin:14px 0;font-size:12px;font-weight:700;letter-spacing:.01em; }
.checkout-form > label[hidden] { display: none; }
.checkout-form > label input, .checkout-form > label select, .checkout-form > label textarea { display:block;width:100%;height:48px;margin-top:7px;padding:0 13px;border:1px solid #e5d9c5;border-radius:4px;outline:0;background:#fffefa;color:var(--ink);font-size:14px;transition:border-color .2s,box-shadow .2s; }
.checkout-form > label:not([hidden]) input, .checkout-form > label:not([hidden]) select { animation:checkout-field-enter .45s ease-out both; }
.checkout-form > label:nth-of-type(2) input { animation-delay:.08s; }
.checkout-form > label:nth-of-type(3) select { animation-delay:.14s; }
.checkout-form > label:nth-of-type(5) input { animation-delay:.2s; }
.checkout-form > label:nth-of-type(6) input { animation-delay:.26s; }
.checkout-form > label input:focus, .checkout-form > label select:focus, .checkout-form > label textarea:focus { border-color:#b77b27;box-shadow:0 0 0 3px rgba(183,123,39,.12); }
.checkout-form > label textarea { min-height: 70px; height: auto; resize: vertical; padding: 8px 9px; line-height: 1.5; }
.age-check { display: flex; align-items: flex-start; gap: 7px; margin: 10px 0; color: #635e6c; font-size: 12px; line-height: 1.5; }
.checkout-form > label.age-check input[type="checkbox"] { display:inline-block;width:14px;height:14px;min-width:14px;flex:0 0 14px;margin:2px 0 0;padding:0;border-radius:2px;accent-color:#87734e; }
.checkout-button { width: 100%; }
.checkout-button { transition:transform .2s ease,box-shadow .2s ease; }
.checkout-button:hover { transform:translateY(-2px);box-shadow:0 8px 20px rgba(36,22,9,.18); }
.whatsapp-note { margin: 8px 0 0; color: #716b60; font-size: 11px; line-height: 1.55; text-align: center; }
.checkout-error { margin: 8px 0 0; color: #a64d69; font-size: 10px; line-height: 1.5; }
.checkout-error:empty { display: none; }
@keyframes checkout-page-enter { from { opacity:0; } to { opacity:1; } }
@keyframes checkout-card-enter { from { opacity:0;transform:translateY(18px) scale(.985); } to { opacity:1;transform:translateY(0) scale(1); } }
@keyframes checkout-gold-sweep { from { background-position:100% 50%; } to { background-position:-100% 50%; } }
@keyframes checkout-field-enter { from { opacity:.55;transform:translateY(7px); } to { opacity:1;transform:translateY(0); } }
.body-locked { overflow: hidden; }
.delivery-confirmation { width:min(440px,calc(100% - 32px));padding:25px;border:1px solid #d9c79e;color:var(--ink);background:var(--paper);box-shadow:0 20px 65px rgba(20,14,35,.28); }
.delivery-confirmation::backdrop { background:rgba(22,17,36,.62);backdrop-filter:blur(3px); }
.dialog-kicker { color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.1em; }
.delivery-confirmation h2 { margin:10px 0;color:var(--night);font:600 23px var(--display); }
.delivery-confirmation p { margin:10px 0;color:var(--muted);font-size:14px;line-height:1.7; }
.delivery-confirmation-actions { display:flex;justify-content:flex-end;gap:9px;margin-top:20px; }
.delivery-confirmation-actions .button { min-height:44px;padding:0 13px;font-size:13px; }

@media (prefers-reduced-motion: no-preference) {
  .hero-copy > * { animation: copy-arrive .75s both; }
  .hero-copy > *:nth-child(2) { animation-delay: .08s; }
  .hero-copy > *:nth-child(3) { animation-delay: .16s; }
  .hero-copy > *:nth-child(4) { animation-delay: .24s; }
  .hero-copy > *:nth-child(5) { animation-delay: .32s; }
  .hero-art { animation: stage-arrive .9s .12s both; }
  .burst-one { animation: burst-breathe 3.2s ease-in-out infinite; }
  .burst-two { animation: burst-hover 4s .5s ease-in-out infinite; }
  .burst-three { animation: burst-hover 4.6s 1.1s ease-in-out infinite reverse; }
  .burst i { animation: firework-ray 2.6s ease-in-out infinite; }
  .burst-one i:nth-child(2n) { animation-delay:.45s; }
  .burst-two i:nth-child(2n+1) { animation-delay:.8s; }
  .burst-three i:nth-child(2n) { animation-delay:1.1s; }
  .hero-rocket-one { animation: cracker-launch 3.8s .2s ease-out infinite; }
  .hero-rocket-two { animation: cracker-launch 4.5s 1.4s ease-out infinite; }
  .hero-rocket-three { animation: cracker-launch 4.1s 2.5s ease-out infinite; }
  .spark-a { animation: twinkle 1.8s ease-in-out infinite; }
  .spark-b { animation: twinkle 2.2s .5s ease-in-out infinite; }
  .spark-c { animation: twinkle 2.5s .9s ease-in-out infinite; }
  .hero-sticker { animation: sticker-arrive .8s .7s both, sticker-glow 5s 1.5s ease-in-out infinite; }
  .diwali-offer { animation: offer-pulse 2.8s ease-in-out infinite; }
  .diwali-offer::after { animation: offer-shine 4.2s .8s ease-in-out infinite; }
  .diwali-offer>strong { animation: offer-number-pop 2.8s ease-in-out infinite; }
  .promo-sticker { animation: sticker-float 4s ease-in-out infinite; }
  .promo-spark-one { animation: twinkle 2.1s .2s ease-in-out infinite; }
  .promo-spark-two { animation: twinkle 1.9s .8s ease-in-out infinite; }
  .last-call-spark { animation: spark-turn 12s linear infinite; }
  .trust-stars { animation: twinkle 2s ease-in-out infinite; }
  .diwali-burst-one { animation: diwali-burst-show 4.6s 0s ease-out infinite; }
  .diwali-burst-two { animation: diwali-burst-show 4.6s 1.5s ease-out infinite; }
  .diwali-burst-three { animation: diwali-burst-show 4.6s 2.9s ease-out infinite; }
  .diwali-burst-one i { animation: diwali-rays 4.6s 0s ease-out infinite; }
  .diwali-burst-two i { animation: diwali-rays 4.6s 1.5s ease-out infinite; }
  .diwali-burst-three i { animation: diwali-rays 4.6s 2.9s ease-out infinite; }
  .diwali-rocket { animation: diwali-launch 4.6s .5s ease-in infinite; }
  .diwali-diya { animation: diya-glow 2.8s ease-in-out infinite; }
  .diya-two { animation-delay: 1.4s; }
  .ticker-track { animation-duration: 58s; will-change: transform; }
  .product-card { transform: translateY(0); }
  .motion-ready .product-card { opacity:1;transform:translateY(12px);transition:transform .55s cubic-bezier(.2,.65,.3,1),box-shadow .23s; }
  .motion-ready .product-card.is-visible { transform:translateY(0); }
  .motion-ready .product-card.is-visible:hover { transform:translateY(-4px); }
  .product-card.is-visible:nth-child(4n+2) { transition-delay: .07s; }
  .product-card.is-visible:nth-child(4n+3) { transition-delay: .12s; }
  .product-card.is-visible:nth-child(4n) { transition-delay: .17s; }
  .image-sparkles i { animation:image-sparkle 1.8s ease-in-out infinite; }
  .image-sparkles i:nth-child(2) { animation-delay:.3s; }
  .image-sparkles i:nth-child(3) { animation-delay:.65s; }
  .image-sparkles i:nth-child(4) { animation-delay:.95s; }
  .image-sparkles i:nth-child(5) { animation-delay:1.25s; }
  .image-sparkles i:nth-child(6) { animation-delay:1.55s; }
  .load-more { animation: load-more-glow 3s ease-in-out infinite; }
  .add-button.just-added { color: var(--white); border-color: var(--orange); background: var(--orange); animation: add-pop .4s cubic-bezier(.2,.8,.2,1); }
  .cart-count.bump { animation: badge-bump .35s cubic-bezier(.2,.8,.2,1); }
}
@keyframes copy-arrive { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }
@keyframes stage-arrive { from { opacity: 0; transform: translateY(16px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes burst-breathe { 0%,100% { transform: scale(.96) rotate(22deg); } 50% { transform: scale(1.01) rotate(26deg); } }
@keyframes burst-hover { 0%,100% { filter: brightness(1); } 50% { filter: brightness(1.12); } }
@keyframes firework-ray { 0%,100% { opacity:.58;filter:brightness(.92); } 50% { opacity:1;filter:brightness(1.45); } }
@keyframes image-sparkle { 0%,100% { opacity:0;transform:translateY(5px) scale(.35) rotate(-25deg); } 20%,58% { opacity:1;transform:translateY(-2px) scale(1.22) rotate(12deg); } 78% { opacity:.1;transform:translateY(-5px) scale(.65) rotate(32deg); } }
@keyframes load-more-glow { 0%,100% { box-shadow:0 5px 0 rgba(90,54,14,.12),0 9px 22px rgba(115,76,25,.14); } 50% { box-shadow:0 5px 0 rgba(90,54,14,.12),0 9px 26px rgba(183,130,50,.34); } }
@keyframes twinkle { 0%,100% { opacity: .72; scale: .92; } 50% { opacity: 1; scale: 1.04; } }
@keyframes cracker-launch { 0%,8% { opacity:0;transform:translate(0,18px) rotate(12deg) scale(.72); } 16% { opacity:1; } 72% { opacity:.9;transform:translate(28px,-185px) rotate(12deg) scale(1); } 88%,100% { opacity:0;transform:translate(37px,-225px) rotate(12deg) scale(.75); } }
@keyframes offer-pulse { 0%,100% { box-shadow:0 7px 24px rgba(0,0,0,.36),0 0 0 3px rgba(232,189,104,.15); } 50% { box-shadow:0 9px 29px rgba(0,0,0,.43),0 0 0 6px rgba(232,189,104,.2); } }
@keyframes offer-shine { 0%,35% { left:-55%; } 65%,100% { left:125%; } }
@keyframes offer-number-pop { 0%,100% { transform:scale(1); } 50% { transform:scale(1.08); } }
@keyframes sticker-arrive { from { opacity: 0; transform: translateY(-15%) rotate(-12deg) scale(.55); } to { opacity: 1; transform: translateY(-25%) rotate(11deg) scale(1); } }
@keyframes sticker-glow { 0%,100% { box-shadow: 0 4px 20px rgba(0,0,0,.23); } 50% { box-shadow: 0 4px 25px rgba(219,187,131,.38); } }
@keyframes sticker-float { 0%,100% { transform: rotate(-10deg) translateY(0); } 50% { transform: rotate(-5deg) translateY(-9px); } }
@keyframes diwali-burst-show { 0%,100% { opacity:0;transform:scale(.25); } 8% { opacity:1; } 28% { opacity:.9;transform:scale(1.4); } 44% { opacity:0;transform:scale(1.85); } }
@keyframes diwali-rays { 0%,5% { opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--ray)*30deg)) translateY(-7px) scaleY(.15); } 14% { opacity:1; } 39% { opacity:.8;transform:translate(-50%,-50%) rotate(calc(var(--ray)*30deg)) translateY(-23px) scaleY(1); } 52%,100% { opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--ray)*30deg)) translateY(-29px) scaleY(.4); } }
@keyframes diwali-launch { 0%,8% { opacity:0;transform:translate(32px,40px) rotate(31deg); } 13% { opacity:1; } 53% { opacity:1;transform:translate(-37px,-134px) rotate(31deg); } 60%,100% { opacity:0;transform:translate(-49px,-154px) rotate(31deg); } }
@keyframes diya-glow { 0%,100% { opacity:.72;text-shadow:0 0 8px rgba(255,174,55,.5); } 50% { opacity:1;text-shadow:0 0 22px rgba(255,174,55,1); } }
@keyframes cracker-display-float { 0%,100% { transform:translateY(0) rotate(-1deg); } 50% { transform:translateY(-6px) rotate(1deg); } }
@keyframes spark-turn { to { transform: rotate(360deg); } }
@keyframes add-pop { 50% { transform: scale(1.24); } }
@keyframes badge-bump { 50% { transform: scale(1.35) rotate(8deg); } }

@media (min-width: 1500px) { .hero { padding-top: 78px; padding-bottom: 40px; } }
@media (max-width: 900px) {
  .site-header { padding: 0 4%; }.main-nav { gap: 20px; }
  .hero { padding: 52px 6% 24px; column-gap: 5%; }.hero-art { min-height: 370px; }
  .diwali-banner { grid-template-columns:minmax(175px,.7fr) minmax(0,1.3fr);gap:20px;padding:38px 5%; }
  .diwali-brand { min-height:123px; }
  .diwali-side-note { display:none; }
  .product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .promo-band { padding: 52px 8%; }
}
@media (max-width: 650px) {
  html { scroll-padding-top: 70px; }
  .site-header { height: 65px; padding: 0 5%; }
  .catalog-sticky { top:65px;margin:0 -5% 14px;padding:0 5% 7px; }
  .brand-mark { width: 38px; height: 38px; }.brand-name { font-size: 12px; }.brand-name span { font-size: 8px; letter-spacing:.08em; }
  .main-nav { position: absolute; top: 64px; left: 0; right: 0; display: none; align-items: stretch; gap: 0; padding: 8px 6% 14px; background: var(--paper); border-bottom: 1px solid var(--line); }
  .main-nav.is-open { display: flex; flex-direction: column; }
  .nav-link { padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 15px; }
  .cart-trigger { gap: 6px; padding: 8px; }.cart-trigger svg { width: 16px; }.cart-word { display: none; }.cart-total-price { font-size: 12px; }.cart-count { min-width: 19px; height: 19px; font-size:10px; }
  .menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 30px; height: 34px; padding: 5px; border: 0; background: transparent; cursor: pointer; }
  .menu-toggle span { width: 19px; height: 1px; background: var(--ink); }
  .hero { grid-template-columns: 1fr; gap: 5px; padding: 42px 6% 22px; }
  .hero-copy { padding: 5px 0 17px; }.hero h1 { margin: 20px 0 12px; font-size: clamp(57px,14vw,83px); }.hero-title-break { display: block; }
  .hero-intro { max-width: 360px; margin-bottom: 18px; font-size: 15px; }
  .hero-trust { margin-top: 20px; }.hero-art { min-height: 310px; }.hero-index { margin-top: 18px; font-size: 10px; }
  .hero-art-caption { left:14px;right:14px;font-size:10px; }
  .hero-art-caption span:last-child { font-size:9px; }
  .diwali-banner { grid-template-columns:1fr;gap:22px;padding:35px 6% 29px; }
  .diwali-copy { max-width:360px; }
  .diwali-copy h2 { font-size:55px; }
  .diwali-copy>p { max-width:300px; }
  .diwali-greeting { margin-top:13px; }
  .diwali-brands { gap:9px; }
  .diwali-brand { min-height:116px;padding:13px 4px 10px; }
  .diwali-brand::before { inset:4px; }
  .diwali-brand-number { top:9px;left:8px;font-size:10px; }
  .brand-seal { width:33px;height:33px;font-size:17px; }
  .diwali-brand h3 { margin-top:8px;font-size:clamp(12px,3.5vw,16px);letter-spacing:.04em; }
  .diwali-brand-caption { font-size:9px;letter-spacing:.04em; }
  .diwali-burst-one { top:24%;left:71%; }.diwali-burst-two { top:71%;left:77%; }.diwali-burst-three { top:16%;left:93%; }
  .diwali-rocket { left:79%;bottom:0; }
  .burst-one { left: 10%; top: 19%; transform: scale(.8) rotate(22deg); }.burst-two { right: 5%; top: 8%; transform: scale(.52) rotate(-10deg); }.burst-three { right: 17%; bottom: 1%; transform: scale(.47) rotate(25deg); }
  .hero-sticker { width: 98px; height: 98px; right: 7%; }.hero-sticker strong { font-size: 29px; }.hero-sticker span { font-size: 10px; }.hero-sticker small { font-size: 10px; }
  .ticker { padding: 11px 0; }.ticker-track { gap: 20px; animation-duration: 44s; }.ticker-track span { font-size: 10px; }.ticker-track b { margin-left: 17px; }
  .shop-section { padding: 65px 5% 72px; }.section-heading { align-items: flex-start; flex-direction: column; gap: 9px; margin-bottom: 22px; }
  .section-heading h2, .delivery-title h2 { margin-top: 15px; font-size: 45px; }.section-heading > p { max-width: 360px; font-size: 14px; }
  .shop-toolbar { align-items: flex-start; flex-direction: column; gap: 8px; padding: 10px 0; }
  .search-box { width: 100%; }.sort-label { width: 100%; justify-content: space-between; padding: 7px 0; border-top: 1px solid var(--line); }
  .sort-label select { margin-left: auto; }.category-strip { margin:0 -5%;padding:8px 5% 14px;border-right:0;border-left:0;border-radius:0; }
  .catalog-meta { font-size: 13px; }.product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px 9px; }
  .product-card { padding: 5px 5px 10px; }.product-visual { aspect-ratio: .98; }.visual-spark { width: 66px; height: 66px; font-size: 30px; }
  .offer-badge { top: 6px; right: 5px; padding: 5px 6px; font-size: 10px; }.actual-visual-price { top: 29px; right: 5px; padding: 4px 5px; font-size: 11px; }
  .product-category { margin-top: 9px; font-size: 11px; font-weight: 700; letter-spacing:.02em; }.product-title { min-height:42px;margin:0 3px 8px;padding:0;font-size:17px; }.product-brand { font-size: 12px; }.sale-price { font-size: 17px; }.old-price { font-size: 12px; }.add-button { width: 32px; height: 32px; }
  .promo-band { min-height: unset; grid-template-columns: 1fr; gap: 4px; padding: 45px 7% 27px; }.promo-copy h2 { font-size: 43px; }.promo-art { height: 205px; }
  .delivery-section { padding: 62px 6% 55px; }.delivery-title h2 { margin-bottom: 24px; }
  .delivery-grid { grid-template-columns: 1fr; }.delivery-card { min-height: unset; padding: 17px 0 19px; }.delivery-card + .delivery-card { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
  .delivery-card h3 { margin: 11px 0 6px; font-size: 19px; }.delivery-card p { max-width: 470px;font-size:16px; line-height:1.65; }
  .last-call { min-height: 286px; }.last-call h2 { font-size: 49px; }.last-call-spark { right: 7%; font-size: 37px; }
  .site-footer { padding: 28px 6% 0; }.footer-bottom { flex-wrap: wrap; font-size: 12px; }.footer-bottom span:nth-child(2) { order: 3; width: 100%; }
  .cart-drawer { padding:20px; }.checkout-page-header { min-height:64px;padding:10px 20px; }.checkout-page-content { padding:30px 20px 44px; }.delivery-confirmation { padding:21px; }.delivery-confirmation-actions { flex-direction:column-reverse; }.delivery-confirmation-actions .button { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .checkout-page[open], .checkout-page-content, .checkout-page-content::before, .checkout-form > label input, .checkout-form > label select { animation:none !important; }
  .intro-screen { animation-delay: 1.99s; }
}
