@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");
:root{--ink:#070A09;--bg:#070A09;--surface:#111714;--glass:rgba(17,23,20,.74);--green:#25E879;--orange:#FF7A18;--yellow:#FFD23F;--cyan:#38BDF8;--text:#F5F7F6;--muted:#A7B0AA;--line:rgba(245,247,246,.14);--radius:24px;--radius-sm:14px;--shadow:0 24px 70px rgba(0,0,0,.38);--section:clamp(28px,5vw,80px);--trans:240ms ease}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,sans-serif;background:radial-gradient(circle at 15% 5%,rgba(37,232,121,.16),transparent 28%),radial-gradient(circle at 85% 10%,rgba(255,122,24,.12),transparent 24%),var(--bg);color:var(--text);min-width:0;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{color:var(--muted);line-height:1.7;margin:.65rem 0}h1{font-size:clamp(2.4rem,7vw,6.8rem);line-height:.93;letter-spacing:-.07em}h2{font-size:clamp(1.75rem,4vw,3.6rem);line-height:1;letter-spacing:-.045em}h3{font-size:1.25rem}.section-p1{padding:var(--section)}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:.78rem}.glass{background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:var(--radius)}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass,.site-header,#navbar{background:#111714}}
.btn,button{min-height:44px}.btn,.icon-button,.filter{border:0;cursor:pointer;transition:transform var(--trans),box-shadow var(--trans),background var(--trans),border-color var(--trans);font-weight:800}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;padding:.9rem 1.35rem}.primary{background:linear-gradient(135deg,var(--green),#9afec6);color:#06100b;box-shadow:0 12px 30px rgba(37,232,121,.22)}.secondary{border:1px solid var(--line);color:var(--text);background:rgba(255,255,255,.05)}.btn:hover,.icon-button:hover,.filter:hover{transform:translateY(-2px)}:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px clamp(18px,5vw,80px);background:rgba(7,10,9,.74);border-bottom:1px solid var(--line);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.brand span{font-size:1.55rem;font-weight:900;letter-spacing:-.06em;background:linear-gradient(135deg,var(--text),var(--green));-webkit-background-clip:text;color:transparent}.brand span:after{content:"";display:inline-block;width:.45em;height:.45em;margin-left:.12em;border-radius:50%;background:var(--orange)}#navbar{display:flex;align-items:center;gap:8px;list-style:none}#navbar a{position:relative;padding:12px 14px;color:var(--muted);font-weight:700}#navbar a:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;background:var(--green);transform:scaleX(0);transition:transform var(--trans);transform-origin:left}#navbar a:hover,#navbar a.active{color:var(--text)}#navbar a:hover:after,#navbar a.active:after{transform:scaleX(1)}.cart-link{display:inline-flex;align-items:center;gap:6px}.cart-count{background:var(--orange);color:#130701;border-radius:999px;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}.icon-button{background:rgba(255,255,255,.06);color:var(--text);border-radius:12px;padding:10px;border:1px solid var(--line)}#mobile,#close{display:none}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;min-height:calc(100vh - 76px)}.hero-copy>p:not(.eyebrow){font-size:1.12rem;max-width:620px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.hero-media{position:relative}.hero-media img,.about-hero img{height:min(70vh,720px);width:100%;object-fit:cover;border-radius:36px;border:1px solid var(--line);filter:saturate(1.05) contrast(1.04)}.stat{position:absolute;right:24px;bottom:24px;padding:20px;max-width:190px}.stat strong{display:block;font-size:2.4rem;color:var(--yellow)}.collection{text-align:center}.collection>p{max-width:760px;margin-inline:auto}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.2vw,28px);margin-top:28px;text-align:left}.product-card{position:relative;overflow:hidden;padding:12px;min-width:0;border-radius:var(--radius);background:rgba(17,23,20,.68);border:1px solid var(--line);box-shadow:0 18px 46px rgba(0,0,0,.22);transition:transform var(--trans),border-color var(--trans),box-shadow var(--trans)}.product-card:hover{transform:translateY(-7px);border-color:rgba(37,232,121,.55);box-shadow:0 28px 70px rgba(37,232,121,.12)}.product-card .image{overflow:hidden;border-radius:18px;background:#1b211e}.product-card img{width:100%;height:290px;object-fit:cover;transition:transform 320ms ease}.product-card:hover img{transform:scale(1.055)}.badge{position:absolute;top:24px;left:24px;background:rgba(255,122,24,.92);color:var(--ink);border-radius:999px;padding:6px 10px;font-weight:900;font-size:.72rem}.product-card .meta{padding:15px 4px 4px}.product-card span{color:var(--muted);font-size:.82rem}.product-card h3{margin:6px 0;min-height:2.7em;overflow-wrap:anywhere;padding-right:58px}.stars{color:var(--yellow);letter-spacing:1px}.price{color:var(--green);font-size:1.35rem;font-weight:900}.cart-btn{position:absolute;right:16px;bottom:16px;border-radius:50%;width:46px;height:46px;min-width:46px;padding:0;border:1px solid var(--line);background:rgba(37,232,121,.14);color:var(--green);font-size:1.2rem}.promo-banner .glass{padding:clamp(28px,7vw,82px);background:linear-gradient(120deg,rgba(17,23,20,.9),rgba(37,232,121,.1)),url("img/banner/b2.jpg") center/cover}.newsletter-panel{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:32px}.newsletter-form div{display:flex;gap:10px}.newsletter-form label,.contact-form label,.filters label,.product-info label{display:block;color:var(--text);font-weight:800;margin:12px 0 6px}input,select,textarea{width:100%;background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:14px;color:var(--text);padding:14px 16px;font:inherit}input::placeholder,textarea::placeholder{color:#7d8781}.form-status{min-height:1.5em;color:var(--yellow)}.page-hero{text-align:center;padding-top:80px}.page-hero p{max-width:760px;margin-inline:auto}.filters{display:flex;gap:14px;align-items:end;justify-content:space-between;flex-wrap:wrap;padding:18px}.filter{padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.07);color:var(--text);border:1px solid var(--line)}.filter.active{background:var(--green);color:#071009}.empty-state{padding:32px;text-align:center;margin-top:24px}.product-detail{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;align-items:start}.gallery,.product-info,.contact-card,.contact-form,.cart-items,.cart-summary{padding:22px}.gallery>img{width:100%;height:620px;object-fit:cover;border-radius:20px}.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.thumbs button{background:transparent;border:1px solid var(--line);border-radius:14px;overflow:hidden;cursor:pointer}.thumbs img{height:115px;width:100%;object-fit:cover}.product-info ul{margin:12px 0 0 20px;color:var(--muted);line-height:1.8}.about-hero{display:grid;grid-template-columns:1fr .9fr;gap:32px;align-items:center}.values,.contact-layout,.cart-layout{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.values article{padding:24px}.contact-layout{grid-template-columns:.85fr 1.15fr}.contact-card p{display:flex;gap:10px;align-items:flex-start}.contact-card i{color:var(--green);font-size:1.3rem;margin-top:4px}.cart-layout{grid-template-columns:1fr 360px;align-items:start}.cart-row{display:grid;grid-template-columns:96px 1fr auto;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}.cart-row img{width:96px;height:110px;object-fit:cover;border-radius:14px}.qty-controls{display:flex;align-items:center;gap:8px}.qty-controls button,.remove-btn{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);border-radius:10px;padding:8px 11px;cursor:pointer}.cart-summary p{display:flex;justify-content:space-between}.total{border-top:1px solid var(--line);padding-top:14px}.site-footer{border-top:1px solid var(--line);background:rgba(0,0,0,.34)}.footer-grid{display:grid;grid-template-columns:1.4fr 1.2fr .8fr .9fr;gap:30px}.site-footer h3{margin-bottom:10px}.site-footer a{display:block;color:var(--muted);margin:8px 0}.site-footer a:hover,.social a:hover{color:var(--green)}.social{display:flex;gap:10px}.social a{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:1.25rem}.copyright{text-align:center;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
@media(max-width:1024px){.product-grid{grid-template-columns:repeat(3,1fr)}.hero,.about-hero,.product-detail{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.site-header{padding:12px 18px}#navbar{position:fixed;right:0;top:0;height:100dvh;width:min(82vw,340px);flex-direction:column;align-items:flex-start;gap:10px;padding:92px 26px 28px;background:rgba(17,23,20,.97);border-left:1px solid var(--line);transform:translateX(105%);opacity:0;visibility:hidden;pointer-events:none;transition:transform var(--trans),opacity var(--trans),visibility var(--trans);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:-24px 0 70px rgba(0,0,0,.42);z-index:70}#navbar.active{transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto}#navbar a{display:block;font-size:1.05rem;padding:14px 4px}#mobile{display:flex;gap:10px;align-items:center;position:relative;z-index:90}#close{display:none;visibility:hidden;pointer-events:none}body.nav-open{overflow:hidden}.nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--trans),visibility var(--trans);z-index:60}.nav-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.menu-toggle{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center}.menu-toggle i{font-size:1.45rem}#lg-bag{display:none}.hero{min-height:auto}.product-grid{grid-template-columns:repeat(2,1fr);gap:14px}.product-card img{height:230px}.values,.contact-layout,.cart-layout,.newsletter-panel{grid-template-columns:1fr}.newsletter-form div{flex-direction:column}.cart-summary{position:static}.gallery>img{height:420px}.footer-grid{grid-template-columns:1fr}}
@media(max-width:480px){.section-p1{padding:28px 16px}h1{font-size:2.55rem}.product-grid{grid-template-columns:1fr}.product-card img{height:310px}.cart-row{grid-template-columns:72px 1fr}.cart-row img{width:72px;height:84px}.cart-row>div:last-child{grid-column:1/-1}.thumbs img{height:74px}.actions{flex-direction:column}.btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Iteration 2 refinements: reusable spacing, liquid glass and editorial sections */
.glass{background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025)),var(--glass);border-color:rgba(255,255,255,.16);box-shadow:0 22px 60px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)}
.btn,.filter,.icon-button,.qty-controls button,.remove-btn,.faq-question{position:relative;isolation:isolate;overflow:hidden;line-height:1.15}
.btn{margin-top:clamp(14px,2vw,22px);border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.16)}
.btn::before,.filter::before,.cart-btn::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(255,255,255,.22),transparent 38%,rgba(255,255,255,.08));opacity:.65;transition:opacity var(--trans),transform var(--trans)}
.btn:hover::before,.filter:hover::before,.cart-btn:hover::before{opacity:1;transform:translateX(6%)}
.primary{background:linear-gradient(135deg,rgba(37,232,121,.96),rgba(154,254,198,.72));box-shadow:0 18px 40px rgba(37,232,121,.24),inset 0 1px 0 rgba(255,255,255,.32)}
.secondary{background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.btn:active,.cart-btn:active,.filter:active{transform:translateY(0) scale(.98)}
.actions,.newsletter-form div,.qty-controls{gap:16px}.cart-summary .btn,.product-info .btn,.contact-form .btn{margin-top:18px;margin-bottom:10px}.form-status{margin-top:12px}.product-card .meta{padding-bottom:60px}.cart-btn{display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(37,232,121,.15)}
input,select,textarea{min-height:50px;background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.035));border-color:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:border-color var(--trans),box-shadow var(--trans),background var(--trans)}
input:hover,select:hover,textarea:hover,input:focus,select:focus,textarea:focus{border-color:rgba(37,232,121,.55);box-shadow:0 0 0 4px rgba(37,232,121,.08),inset 0 1px 0 rgba(255,255,255,.1);outline:0}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.035)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23F5F7F6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:0 0,right 14px center;background-size:auto,18px;padding-right:46px;color:var(--text)}
select option{background:#0b100e;color:#f5f7f6}.filters{align-items:center;gap:18px 20px;padding:22px 24px;margin-bottom:30px}.filters label{min-width:min(100%,230px);margin:0}.filters [role="group"]{display:flex;gap:12px;flex-wrap:wrap}.filter.active{background:linear-gradient(135deg,var(--green),#8df6bd)}#product-count{align-self:center;min-width:150px;margin:0 0 0 auto;padding:12px 16px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.055);color:var(--text);font-weight:800}
.festive-banner{position:relative;display:grid;grid-template-columns:1.05fr .75fr;gap:clamp(24px,5vw,56px);align-items:center;padding:clamp(30px,6vw,70px);overflow:hidden;background:radial-gradient(circle at 18% 18%,rgba(255,122,24,.28),transparent 28%),radial-gradient(circle at 82% 24%,rgba(37,232,121,.24),transparent 30%),linear-gradient(135deg,rgba(9,13,12,.96),rgba(20,30,25,.88))}
.festive-banner::after{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(120deg,rgba(255,255,255,.1),transparent 30%,rgba(37,232,121,.08));pointer-events:none}.promo-copy{position:relative;z-index:1;max-width:720px}.promo-copy p:not(.eyebrow){max-width:610px}.promo-copy .offer{display:inline-flex;margin-top:18px;margin-bottom:4px;padding:8px 12px;border-radius:999px;background:rgba(255,122,24,.14);border:1px solid rgba(255,122,24,.32);color:var(--yellow);font-weight:900}.promo-copy .btn{margin-top:22px}.promo-media{position:relative;z-index:1}.promo-media img{width:100%;height:430px;object-fit:cover;border-radius:30px;border:1px solid rgba(255,255,255,.18);box-shadow:0 24px 60px rgba(0,0,0,.36)}.discount-badge{position:absolute;top:18px;left:18px;z-index:2;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,var(--orange),var(--yellow));color:#160800;font-weight:900;box-shadow:0 12px 30px rgba(255,122,24,.25)}
.section-heading{text-align:center;max-width:760px;margin:0 auto 28px}.mood-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:240px;gap:18px}.mood-tile{position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid rgba(255,255,255,.16);background:#101713;box-shadow:0 20px 50px rgba(0,0,0,.28)}.mood-large{grid-row:span 2}.mood-wide{grid-column:span 2}.mood-tile img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.04);transition:transform 520ms ease}.mood-tile::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.82)),radial-gradient(circle at 22% 18%,rgba(37,232,121,.24),transparent 28%);pointer-events:none}.mood-tile:nth-child(2)::before{background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.84)),radial-gradient(circle at 82% 15%,rgba(255,122,24,.32),transparent 30%)}.mood-tile:nth-child(3)::before{background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.84)),radial-gradient(circle at 15% 20%,rgba(255,255,255,.16),transparent 28%)}.mood-tile:nth-child(4)::before{background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.84)),radial-gradient(circle at 78% 15%,rgba(255,210,63,.28),transparent 30%)}.mood-tile div{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}.mood-tile span{color:var(--orange);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}.mood-tile p{max-width:520px;color:#dbe3df}.mood-link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:var(--text);font-weight:900}.mood-link i{transition:transform var(--trans);color:var(--green)}.mood-tile:hover img{transform:scale(1.065)}.mood-tile:hover .mood-link i{transform:translateX(5px)}
.faq-section{padding-top:0}.faq-list{max-width:940px;margin:0 auto;padding:14px}.faq-item+.faq-item{border-top:1px solid rgba(255,255,255,.11)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 10px;background:transparent;color:var(--text);border:0;text-align:left;font:inherit;font-weight:900;cursor:pointer}.faq-question i{color:var(--green);font-size:1.45rem;transition:transform var(--trans)}.faq-question[aria-expanded="true"] i{transform:rotate(180deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows 260ms ease}.faq-answer.open{grid-template-rows:1fr}.faq-answer p{overflow:hidden;margin:0;padding:0 10px 18px;color:var(--muted)}
.contact-card,.contact-form,.cart-summary,.cart-items,.product-info,.gallery,.newsletter-panel,.filters,.product-card{background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.026)),rgba(17,23,20,.72)}
@media(max-width:1024px){.festive-banner{grid-template-columns:1fr .8fr}.mood-grid{grid-template-columns:1fr 1fr;grid-auto-rows:250px}.mood-large,.mood-wide{grid-column:span 1;grid-row:span 1}.filters{align-items:stretch}#product-count{margin:4px 0 0;width:100%}}
@media(max-width:900px){.festive-banner{grid-template-columns:1fr;text-align:center}.promo-copy,.promo-copy p:not(.eyebrow){margin-inline:auto}.festive-actions{justify-content:center}.promo-media img{height:360px}.mood-grid{grid-template-columns:1fr;grid-auto-rows:300px}.mood-large,.mood-wide{grid-column:auto}.filters{flex-direction:column;align-items:stretch}.filters label,.filters [role="group"]{width:100%}.filter{flex:1}.faq-question{padding:16px 6px}.cart-summary .btn{width:100%}}
@media(max-width:480px){.promo-media img{height:300px}.festive-banner{padding:24px}.festive-actions{flex-direction:column;align-items:center}.festive-actions .btn{width:auto;max-width:100%;margin-top:0}.mood-grid{grid-auto-rows:280px}.newsletter-form .btn{margin-top:6px}.filters [role="group"]{gap:8px}.filter{padding:11px 12px}}


/* Iteration 3 responsive stability refinements */
.icon-button,.cart-btn,.social a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.icon-button i,.cart-btn i,.social i{line-height:1}.cart-btn{z-index:3;overflow:hidden}.cart-btn:hover{transform:translateY(-2px)}.cart-btn:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.product-card .meta{padding-right:62px}.product-card .price{margin-bottom:0}.festive-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}.festive-actions .btn{margin-top:0}.promo-copy .offer{margin:0;padding:9px 14px;color:var(--ink);background:linear-gradient(135deg,rgba(255,122,24,.95),rgba(255,210,63,.9));box-shadow:0 12px 28px rgba(255,122,24,.18)}.festive-composition{min-height:470px;isolation:isolate}.promo-main-img{position:relative;z-index:2;max-width:82%;margin-left:auto}.promo-float{position:absolute;z-index:3;width:38%;height:190px!important;object-fit:cover;border-radius:24px;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 44px rgba(0,0,0,.34)}.promo-float-one{left:0;bottom:34px}.promo-float-two{right:8px;top:18px;width:32%;height:160px!important}.promo-orb{position:absolute;border-radius:999px;filter:blur(.2px);z-index:1}.promo-orb-one{left:8%;top:12%;width:170px;height:170px;background:radial-gradient(circle,rgba(37,232,121,.32),transparent 68%)}.discount-badge{color:var(--ink);right:auto}.values article{position:relative;overflow:hidden}.values article::before{content:"";display:block;width:46px;height:3px;margin-bottom:18px;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--orange))}.values article h2{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:800;letter-spacing:-.035em;line-height:1.15;text-transform:capitalize}.values article p{max-width:60ch;line-height:1.75;margin-top:14px;color:#c7d0cb}.faq-answer{max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height 260ms ease,opacity 220ms ease,visibility 260ms ease}.faq-answer.open{opacity:1;visibility:visible}.faq-answer p{padding:0 10px 18px}.mood-grid{gap:clamp(16px,2vw,26px)}.newsletter-panel,.values,.contact-layout,.cart-layout{gap:clamp(18px,2vw,26px)}@media(max-width:1024px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.values{grid-template-columns:1fr}.festive-composition{min-height:430px}.promo-main-img{max-width:76%;margin-inline:auto}.promo-float-one{left:3%}}@media(max-width:620px){.product-grid{grid-template-columns:1fr}.product-card img{height:310px}.product-card .meta{padding-right:62px}.festive-composition{min-height:390px}.promo-main-img{max-width:88%}.promo-float{width:42%;height:140px!important}.promo-float-two{height:125px!important}.discount-badge{top:12px;left:12px}}@media(max-width:360px){.section-p1{padding-left:14px;padding-right:14px}.product-card img{height:280px}.cart-btn{right:16px;bottom:16px}.promo-float{display:none}.festive-composition{min-height:auto}.promo-main-img{max-width:100%}}


/* Iteration 4: mobile drawer clickability and horizontal-overflow fix */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

@supports (overflow: clip) {
  html,
  body {
    overflow-x: clip;
  }
}

.site-header,
main,
footer,
section {
  max-width: 100%;
}

.site-header {
  width: 100%;
  z-index: 1000;
}

html.nav-open,
body.nav-open {
  overflow: hidden;
  overscroll-behavior: none;
}

@media (max-width: 900px) {
  #navbar {
    right: 0;
    left: auto;
    width: min(84vw, 340px);
    max-width: calc(100vw - 24px);
    transform: translate3d(110%, 0, 0);
    z-index: 1001;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    touch-action: pan-y;
  }

  #navbar.active {
    transform: translate3d(0, 0, 0);
    pointer-events: auto;
  }

  #navbar li {
    width: 100%;
  }

  #navbar a {
    width: 100%;
    min-height: 48px;
    display: flex;
    align-items: center;
    touch-action: manipulation;
  }

  #mobile {
    z-index: 1002;
  }

  .menu-toggle {
    position: relative;
    z-index: 1003;
    touch-action: manipulation;
  }

  .nav-overlay {
    z-index: 900;
    width: 100%;
    max-width: 100vw;
    border: 0;
    padding: 0;
    touch-action: manipulation;
  }
}

@media (max-width: 480px) {
  .site-header {
    padding-inline: 14px;
  }

  #navbar {
    width: min(88vw, 340px);
    max-width: calc(100vw - 16px);
    padding-inline: 22px;
  }

  .section-p1,
  .hero,
  .product-grid,
  .newsletter-panel,
  .festive-banner,
  .mood-grid,
  .footer-grid {
    min-width: 0;
  }
}

/* Iteration 5: robust phone drawer and true overflow removal */
html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

body {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

.site-header,
main,
footer,
section,
.product-grid,
.mood-grid,
.festive-banner,
.newsletter-panel {
  min-width: 0;
  max-width: 100%;
}

.site-header {
  width: 100%;
  z-index: 1000;
}

html.nav-open,
body.nav-open {
  overflow: hidden;
  overscroll-behavior: none;
}

@media (max-width: 900px) {
  /* Mobile Safari can treat fixed children of a backdrop-filtered header
     as header-relative. Use an opaque glass fallback at drawer widths. */
  .site-header {
    background: rgba(7, 10, 9, 0.98);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  #navbar {
    position: fixed;
    top: 0;
    right: 0;
    left: auto;
    z-index: 1001;
    width: min(86vw, 340px);
    max-width: calc(100vw - 16px);
    height: 100vh;
    height: 100dvh;
    margin: 0;
    padding: calc(84px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom));

    /* Keep the closed drawer inside the viewport. This prevents the
       hidden menu from increasing body/viewport width on phones. */
    transform: none;
    clip-path: inset(0 0 0 100%);
    -webkit-clip-path: inset(0 0 0 100%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
    transition:
      clip-path 260ms ease,
      -webkit-clip-path 260ms ease,
      opacity 180ms ease,
      visibility 260ms ease;
    will-change: clip-path, opacity;
  }

  #navbar.active {
    transform: none;
    clip-path: inset(0 0 0 0);
    -webkit-clip-path: inset(0 0 0 0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  #navbar li {
    position: relative;
    z-index: 1;
    width: 100%;
  }

  #navbar a {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 50px;
    padding: 14px 6px;
    pointer-events: auto;
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(37, 232, 121, 0.18);
  }

  #mobile {
    position: relative;
    z-index: 1002;
  }

  .menu-toggle {
    position: relative;
    z-index: 1003;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .nav-overlay {
    position: fixed;
    inset: 0;
    z-index: 900;
    display: block;
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    height: 100dvh;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: rgba(0, 0, 0, 0.58);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    touch-action: manipulation;
    transition: opacity 220ms ease, visibility 220ms ease;
  }

  .nav-overlay.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}

@media (max-width: 480px) {
  .site-header {
    padding-left: max(14px, env(safe-area-inset-left));
    padding-right: max(14px, env(safe-area-inset-right));
  }

  #navbar {
    width: min(90vw, 340px);
    max-width: calc(100vw - 10px);
    padding-left: 22px;
    padding-right: 22px;
  }

  .hero,
  .product-grid,
  .newsletter-panel,
  .festive-banner,
  .mood-grid,
  .footer-grid {
    min-width: 0;
    max-width: 100%;
  }
}



/* Iteration 5: definitive FAQ collapsed-state fix */
.faq-answer {
  display: block;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  margin: 0;
  padding: 0;
  transition:
    max-height 260ms ease,
    opacity 180ms ease,
    visibility 0s linear 260ms;
}

.faq-answer p {
  margin: 0;
  padding: 0 10px;
  overflow: hidden;
}

.faq-answer.open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition:
    max-height 260ms ease,
    opacity 200ms ease,
    visibility 0s linear 0s;
}

.faq-answer.open p {
  padding-bottom: 18px;
}
