@font-face{font-family:"Playfair Display";src:url(../fonts/playfair-display-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(../fonts/playfair-display-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/cormorant-garamond-latin-500-italic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(../fonts/atkinson-hyperlegible-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(../fonts/atkinson-hyperlegible-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--navy:#17283A;--navy-d:#0E1A27;--ivory:#F4E7CE;--ivory-l:#FBF4E6;--gold:#B89451;--gold-l:#D9B977;--walnut:#5A3E2B;--walnut-d:#3B281B;--green:#1F3D2B;--ink:#1B1712;
--serif:"Playfair Display",Georgia,"Times New Roman",serif;--body:"Atkinson Hyperlegible",Verdana,Arial,sans-serif;--fine:"Cormorant Garamond",Georgia,serif;--hdr:76px}
*,*::before,*::after{box-sizing:border-box}
html{font-size:19px;-webkit-text-size-adjust:100%;scroll-padding-top:var(--hdr)}
@media (min-width:1024px){html{font-size:20px}}
body{margin:0;font-family:var(--body);font-size:1rem;line-height:1.6;color:var(--ink);background:var(--ivory)}
img{max-width:100%;height:auto;display:block}
a{color:var(--walnut)}a:hover{color:var(--navy)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.15;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(2.1rem,5vw,3.2rem)}h2{font-size:clamp(1.7rem,3.6vw,2.6rem)}h3{font-size:1.4rem}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mm-skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:var(--navy);padding:12px 18px;z-index:200;font-weight:700}.mm-skip:focus{left:8px}

/* Header */
.mm-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--hdr);background:linear-gradient(180deg,rgba(14,26,39,.92),rgba(14,26,39,.72));backdrop-filter:blur(6px);border-bottom:1px solid rgba(184,148,81,.35)}
.mm-header__inner{max-width:1320px;margin:0 auto;height:100%;display:flex;align-items:center;gap:20px;padding:0 20px}
.mm-logo{display:inline-flex;flex-direction:column;align-items:center;line-height:.9;font-family:var(--serif);font-weight:700;color:var(--ivory);text-decoration:none;font-size:1.25rem;position:relative;min-height:48px;justify-content:center;padding:0 6px}
.mm-logo:hover{color:var(--gold-l)}
.mm-logo__spark{position:absolute;top:2px;right:-6px;color:var(--gold);font-size:.7rem}
.mm-nav{margin-left:auto}
.mm-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px}
.mm-nav a{display:flex;align-items:center;min-height:48px;padding:0 16px;color:var(--ivory);text-decoration:none;font-weight:700;font-size:1rem;border-radius:6px}
.mm-nav a:hover,.mm-nav a:focus-visible{background:rgba(184,148,81,.22);color:#fff}
.mm-basket{position:relative;display:grid;place-items:center;width:56px;height:56px;color:var(--ivory);border:1.5px solid rgba(184,148,81,.6);border-radius:50%;text-decoration:none}
.mm-basket:hover{background:rgba(184,148,81,.22);color:#fff}
.mm-count{position:absolute;top:-4px;right:-6px;min-width:26px;height:26px;padding:0 6px;border-radius:13px;background:var(--gold);color:var(--navy);font-weight:700;font-size:.8rem;display:grid;place-items:center}
.mm-menu-toggle{display:none}
@media (max-width:900px){
 .mm-menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;min-height:52px;padding:0 16px;background:transparent;border:1.5px solid rgba(184,148,81,.6);border-radius:8px;color:var(--ivory);font:700 1rem var(--body);cursor:pointer}
 .mm-burger,.mm-burger::before,.mm-burger::after{display:block;width:22px;height:2.5px;background:currentColor;position:relative;border-radius:2px}
 .mm-burger::before,.mm-burger::after{content:"";position:absolute;left:0}.mm-burger::before{top:-7px}.mm-burger::after{top:7px}
 .mm-nav{position:fixed;top:var(--hdr);left:0;right:0;background:var(--navy-d);border-bottom:2px solid var(--gold);display:none;margin:0}
 .mm-nav.is-open{display:block}
 .mm-nav ul{flex-direction:column;padding:10px 16px 20px}
 .mm-nav a{min-height:60px;font-size:1.2rem;border-bottom:1px solid rgba(244,231,206,.12)}
}

/* Buttons */
.mm-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 30px;border-radius:999px;font:700 1.1rem var(--body);text-decoration:none;cursor:pointer;border:2px solid var(--gold);background:var(--green);color:var(--ivory);box-shadow:0 6px 20px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.15);transition:transform .2s,background .2s}
.mm-btn:hover,.mm-btn:focus-visible{background:#285039;color:#fff;transform:translateY(-2px)}
.mm-btn--hero{font-family:var(--serif);font-size:1.35rem;min-height:64px;padding:0 40px}
.mm-btn--buy{width:100%;min-height:60px;font-size:1.15rem}

/* ---------- Home scenes ---------- */
.mm-home{background:var(--navy-d);color:var(--ivory)}
.scene{position:relative;min-height:100vh;min-height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate}
.layer{position:absolute;inset:-8% 0;will-change:transform}
.layer picture,.layer>img{width:100%;height:100%}
.layer img{width:100%;height:100%;object-fit:cover}
.only-desk{display:block}
@media (max-width:767px){.only-desk{display:none!important}}
.scene__copy{position:relative;z-index:5;text-align:center;max-width:820px;padding:calc(var(--hdr) + 20px) 24px 40px}
.scene h2{color:var(--ivory);text-shadow:0 2px 18px rgba(0,0,0,.6)}
.scene p{font-size:1.15rem;text-shadow:0 1px 10px rgba(0,0,0,.8)}
.flourish{width:260px;height:22px;margin:6px auto 26px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 22'%3E%3Cg fill='none' stroke='%23B89451' stroke-width='1.6'%3E%3Cpath d='M10 11h95M155 11h95'/%3E%3Cpath d='M105 11c8-9 17-9 25 0 8 9 17 9 25 0'/%3E%3Cpath d='M105 11c8 9 17 9 25 0 8-9 17-9 25 0'/%3E%3C/g%3E%3Ccircle cx='130' cy='11' r='3' fill='%23D9B977'/%3E%3C/svg%3E")}
canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}

/* 1 hero */
.s1 .l-far{inset:-10%;opacity:.9}
.s1 .l-bg{inset:-6% 0 -12%}
.s1 .l-bg img{object-position:50% 40%}
.s1 .dusk{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 48% 42% at 50% 46%,rgba(14,26,39,.72),rgba(14,26,39,.25) 70%,transparent),linear-gradient(180deg,rgba(23,40,58,.55),rgba(23,40,58,.05) 40%,rgba(14,26,39,.6))}
.s1 .l-mid{z-index:2;inset:0 auto 0 0;width:22%}
.s1 .fg-left{height:110%;width:auto;object-fit:cover;filter:blur(1.5px) brightness(.9)}
.s1 .l-fg{z-index:3;inset:auto 0 -6% 0;height:30%}
.s1 .fg-floor{height:100%;object-fit:cover;filter:blur(3px) brightness(.55)}
.glow--lantern{position:absolute;z-index:2;left:2%;top:20%;width:30vw;height:30vw;border-radius:50%;background:radial-gradient(circle,rgba(255,196,110,.38),rgba(255,160,60,.12) 45%,transparent 70%);mix-blend-mode:screen;animation:flicker 3.2s infinite alternate ease-in-out;pointer-events:none}
@keyframes flicker{0%{opacity:.75;transform:scale(1)}40%{opacity:1}60%{opacity:.85;transform:scale(1.04)}100%{opacity:.95;transform:scale(.98)}}
.s1 canvas{z-index:4}
.s1__copy{z-index:6}
.eyebrow{font-family:var(--fine);font-style:italic;font-size:1.45rem!important;color:var(--gold-l);margin:0 0 8px;letter-spacing:.02em}
.wordmark{font-size:clamp(3.4rem,10vw,7.4rem);line-height:.92;color:var(--ivory);margin:0;text-shadow:0 0 30px rgba(255,200,120,.35),0 4px 24px rgba(0,0,0,.7);position:relative}
.wordmark span{display:block}
.wm-star{position:absolute!important;top:-.35em;left:50%;transform:translateX(-50%);font-size:.3em;color:var(--gold-l);animation:twinkle 2.4s infinite}
@keyframes twinkle{50%{opacity:.4;transform:translateX(-50%) scale(.8) rotate(20deg)}}
.scroll-cue{position:absolute;z-index:6;bottom:24px;left:50%;transform:translateX(-50%);color:var(--ivory);text-decoration:none;font-size:.95rem;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:48px;padding:6px 12px}
.scroll-cue::after{content:"";width:2px;height:40px;background:linear-gradient(var(--gold),transparent);animation:cue 1.8s infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* 2 spell */
.s2{justify-content:flex-start}
.s2 .shade--left{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,26,39,.85),rgba(14,26,39,.45) 38%,transparent 60%)}
.s2 canvas{z-index:3}
.s2 .l-fg{z-index:4;inset:0;pointer-events:none}
.s2 .fg-candle{position:absolute;left:-2%;bottom:-4%;width:20vw;height:auto;object-fit:contain;filter:blur(2.5px)}
.s2 .fg-candle-r{position:absolute;right:-1%;bottom:-6%;width:12vw;height:auto;object-fit:contain;filter:blur(3px)}
.s2__copy{text-align:left;max-width:560px;margin-left:6vw;z-index:5}
@media (max-width:767px){.s2{align-items:flex-end}.s2 .shade--left{background:linear-gradient(0deg,rgba(14,26,39,.92),rgba(14,26,39,.4) 50%,transparent 75%)}.s2__copy{margin:0;text-align:center}}

/* 3 pinned worm */
.s3{min-height:auto;display:block}
.s3__pin{position:relative;height:100vh;height:100svh;overflow:hidden;background:#0b0705}
.s3 .l-bg{inset:0;opacity:.38}
.s3 .l-bg img{filter:saturate(1.1)}
.s3__vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 25%,rgba(8,5,3,.85) 80%)}
.s3 canvas{z-index:2}
.cap{position:absolute;z-index:3;margin:0;font-family:var(--fine);font-style:italic;font-weight:500;color:var(--ivory);font-size:clamp(1.7rem,3vw,2.4rem)!important;letter-spacing:.06em;opacity:0;text-shadow:0 0 20px rgba(255,200,120,.55),0 2px 8px #000}
.cap::before{content:"";display:block;width:56px;height:1px;background:var(--gold);margin:0 auto 8px}
.cap--protein{left:16%;top:30%}
.cap--omega{right:14%;bottom:28%}
.s3__note{position:absolute;z-index:3;left:0;right:0;bottom:6%;text-align:center;font-family:var(--fine);font-style:italic;color:var(--gold-l);font-size:1.35rem!important;margin:0}
@media (max-width:767px){.cap--protein{left:8%;top:22%}.cap--omega{right:8%;bottom:24%}}

/* 4 garden flight */
.s4{justify-content:flex-end;align-items:flex-start}
.s4 .l-mid{z-index:2;inset:-4% auto -4% 0;width:40%}
.s4 .window{height:100%;width:100%;object-fit:cover;object-position:left center}
.s4 .flight{position:absolute;inset:0;width:100%;height:100%}
.s4 canvas{z-index:3}
.s4__copy{z-index:5;max-width:520px;margin-right:5vw;text-align:right}
.s4::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,26,39,.55),transparent 35%)}
@media (max-width:767px){.s4{justify-content:center}.s4__copy{text-align:center;margin:0}}

/* 5 sunrise */
.s5{flex-direction:column}
.s5 .l-bg img{object-position:50% 30%}
.sunrise{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 60% 40% at 50% 30%,rgba(255,214,140,.35),transparent 70%),linear-gradient(180deg,rgba(23,40,58,.35),rgba(23,40,58,.05) 30%,rgba(14,26,39,.55))}
.birds{position:absolute;z-index:2;inset:0;pointer-events:none;color:#1a1410}
.birds svg{position:absolute;animation:fly 18s linear infinite}
.birds--far svg{width:26px;opacity:.55;filter:blur(1px);animation-duration:34s}
.birds--mid svg{width:46px;opacity:.75;animation-duration:24s}
.birds--near svg{width:84px;z-index:4;animation-duration:16s;filter:blur(.5px)}
.birds svg:nth-child(1){top:12%;left:-10%;animation-delay:-3s}.birds svg:nth-child(2){top:20%;left:-10%;animation-delay:-11s}.birds svg:nth-child(3){top:8%;left:-10%;animation-delay:-19s}.birds svg:nth-child(4){top:26%;left:-10%;animation-delay:-27s}
@keyframes fly{0%{transform:translate(0,0) scaleY(1)}25%{transform:translate(30vw,-3vh) scaleY(.5)}50%{transform:translate(60vw,2vh) scaleY(1)}75%{transform:translate(90vw,-2vh) scaleY(.5)}100%{transform:translate(125vw,0) scaleY(1)}}
.s5__inner{position:relative;z-index:5;width:100%;max-width:1180px;padding:calc(var(--hdr) + 20px) 20px 50px;text-align:center}
.s5__lead{color:var(--ivory);font-weight:700}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:20px}
.mm-card{background:linear-gradient(180deg,var(--ivory-l),var(--ivory));color:var(--ink);border:2px solid var(--gold);border-radius:14px;padding:18px 18px 22px;box-shadow:0 12px 34px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center}
.mm-card img{width:auto;max-height:34vh;border-radius:6px;box-shadow:0 6px 14px rgba(0,0,0,.25)}
.mm-card h3{margin:14px 0 0;font-size:1.55rem}
.mm-card__price{margin:2px 0 14px;font-size:1.2rem!important;text-shadow:none!important;font-weight:700}
.mm-placeholder{display:block;font-weight:400;font-size:.75rem;color:#7a5a2c;font-style:italic}
.mm-card form{width:100%}
@media (max-width:767px){.cards{grid-template-columns:1fr;gap:18px}.mm-card{display:grid;grid-template-columns:110px 1fr;gap:4px 16px;text-align:left;align-items:center}.mm-card img{grid-row:span 3;max-height:180px}.mm-card h3{margin:0}.mm-card__price{margin:0 0 6px}.mm-card form{grid-column:1/-1}}

/* 6 close */
.s6{justify-content:flex-end}
.s6::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,transparent 30%,rgba(14,26,39,.55))}
.s6 .l-mid{z-index:2;inset:0 auto -6% 0;width:46%}
.s6 .door{height:100%;width:100%;object-fit:cover;object-position:center top}
.s6 canvas{z-index:3}
.s6__copy{max-width:600px;margin-right:6vw}
@media (max-width:767px){.s6{justify-content:center;align-items:flex-end}.s6::before{background:linear-gradient(0deg,rgba(14,26,39,.9),transparent 60%)}.s6__copy{margin:0}}

/* Reveal */
.reveal{opacity:1}
.js-motion .reveal{opacity:0;transform:translateY(30px)}

/* Mobile simplification */
@media (max-width:767px){.layer{inset:0}.glow--lantern{width:70vw;height:70vw}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.layer{inset:0}}

/* ---------- Inner pages ---------- */
.mm-page{padding:calc(var(--hdr) + 40px) 0 70px;background:var(--ivory) radial-gradient(ellipse at top,rgba(184,148,81,.15),transparent 60%)}
.mm-wrap{max-width:860px;margin:0 auto;padding:0 22px}.mm-wrap--wide{max-width:1200px}
.mm-title{text-align:center}.mm-title::after{content:"";display:block;width:180px;height:18px;margin:10px auto 0;background:inherit}
.mm-content h2{font-size:1.7rem;margin-top:1.6em}
.mm-content p,.mm-content li{max-width:68ch}
.mm-content .tbc{display:inline-block;background:#fff3cf;border:1px dashed var(--gold);padding:2px 10px;border-radius:4px;font-weight:700;color:#6b4a14}
.mm-box{background:var(--ivory-l);border:1.5px solid var(--gold);border-radius:12px;padding:22px 26px;margin:24px 0}

/* Footer */
.mm-footer{background:var(--navy-d);color:var(--ivory);border-top:2px solid var(--gold);padding:46px 20px 30px;text-align:center}
.mm-footer__tag{font-family:var(--fine);font-style:italic;font-size:1.4rem;color:var(--gold-l);margin:8px 0 18px}
.mm-footer ul{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px}
.mm-footer a{color:var(--ivory);display:inline-flex;align-items:center;min-height:48px;padding:0 12px}
.mm-footer__legal{font-size:.9rem;opacity:.85;max-width:60ch;margin:0 auto}
.mm-logo--footer{font-size:1.6rem}
.mm-localnote{position:fixed;left:10px;bottom:10px;z-index:300;background:#b3261e;color:#fff;font-size:.75rem;padding:6px 10px;border-radius:6px;opacity:.9}

/* ---------- WooCommerce ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;background:var(--ivory-l);border-left:6px solid var(--gold);padding:16px 20px;margin:0 0 24px;border-radius:8px;font-size:1.05rem;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.woocommerce-error{border-color:#b3261e}
.woocommerce-message .button,.woocommerce-info .button{order:2}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.single_add_to_cart_button,#place_order{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border-radius:999px;border:2px solid var(--gold);background:var(--green);color:var(--ivory);font:700 1.1rem var(--body);text-decoration:none;cursor:pointer}
.woocommerce .button:hover,.single_add_to_cart_button:hover,#place_order:hover{background:#285039;color:#fff}
.woocommerce .button:disabled,.single_add_to_cart_button.disabled{opacity:.55;cursor:not-allowed}
/* product */
.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.single-product div.product .woocommerce-product-gallery{position:relative;background:var(--ivory-l);border:2px solid var(--gold);border-radius:14px;padding:18px}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery img{margin:0 auto;max-height:640px;width:auto}
.woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:10px;list-style:none;padding:0;margin:12px 0 0}
.woocommerce-product-gallery .flex-control-thumbs li{width:80px}
.woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;z-index:3;width:48px;height:48px;border-radius:50%;background:var(--ivory);border:1px solid var(--gold);font-size:0}
.single-product .product_title{font-size:clamp(1.8rem,3.2vw,2.5rem)}
.single-product .summary .price{font-size:1.6rem;font-weight:700;color:var(--walnut);margin:0 0 10px}
.woocommerce-product-details__short-description{font-size:1.1rem}
.variations{width:100%;border:0;margin:10px 0}
.variations th{text-align:left;font-family:var(--serif);font-size:1.3rem;padding:0 0 8px}
.variations td{display:block;padding:0}.variations tr{display:flex;flex-direction:column}
.mm-sizes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mm-size{min-height:72px;border:2px solid var(--gold);border-radius:12px;background:var(--ivory-l);color:var(--navy);font:700 1.3rem var(--serif);cursor:pointer;line-height:1.1}
.mm-size small{display:block;font:400 .8rem var(--body);margin-top:4px}
.mm-size[aria-pressed=true]{background:var(--navy);color:var(--ivory);box-shadow:0 0 0 3px var(--gold-l)}
.mm-sizes-hidden{position:absolute!important;opacity:0;pointer-events:none;width:1px;height:1px}
.woocommerce-variation-price .price{font-size:1.8rem!important;margin:16px 0 4px}
.woocommerce-variation-add-to-cart,form.cart:not(.variations_form){display:flex;flex-direction:column;gap:16px;margin-top:16px}
.mm-qty{display:inline-flex;align-items:stretch;border:2px solid var(--gold);border-radius:999px;overflow:hidden;width:max-content;background:var(--ivory-l)}
.mm-qty__btn{width:60px;min-height:60px;border:0;background:transparent;font-size:1.8rem;color:var(--navy);cursor:pointer}
.mm-qty__btn:hover{background:rgba(184,148,81,.2)}
.mm-qty .quantity input{width:70px;height:60px;border:0;text-align:center;font:700 1.3rem var(--body);background:transparent;-moz-appearance:textfield}
.mm-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.single_add_to_cart_button{width:100%;min-height:72px!important;font-size:1.4rem!important;font-family:var(--serif)!important}
.mm-delivery{display:flex;align-items:center;gap:12px;font-size:1.15rem;color:var(--green);margin:18px 0}
.woocommerce-tabs{grid-column:1/-1}
.woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:20px 0 0;border-bottom:2px solid var(--gold)}
.woocommerce-tabs ul.tabs li{display:inline-block}.woocommerce-tabs ul.tabs a{display:inline-flex;min-height:52px;align-items:center;padding:0 18px;font:700 1.2rem var(--serif);color:var(--navy);text-decoration:none}
.woocommerce-Tabs-panel{background:var(--ivory-l);border:1.5px solid rgba(184,148,81,.6);border-top:0;padding:24px 30px;border-radius:0 0 12px 12px;font-size:1.05rem}
.mm-aplus{display:grid;gap:22px}
.mm-aplus .mm-atb{max-width:420px}
.woocommerce-breadcrumb{display:none}
@media (max-width:860px){.single-product div.product{grid-template-columns:1fr;gap:22px}.woocommerce-product-gallery img{max-height:420px}}
/* shop archive */
ul.products{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
ul.products li.product{background:var(--ivory-l);border:2px solid var(--gold);border-radius:14px;padding:18px;text-align:center}
ul.products li.product a{text-decoration:none;color:var(--navy)}
.woocommerce-products-header__title{text-align:center}
.woocommerce-result-count,.woocommerce-ordering{display:none}
/* cart & checkout */
.shop_table{width:100%;border-collapse:collapse;background:var(--ivory-l);border:1.5px solid var(--gold);border-radius:12px;overflow:hidden;font-size:1.05rem}
.shop_table th,.shop_table td{padding:14px 16px;border-bottom:1px solid rgba(184,148,81,.35);text-align:left;vertical-align:middle}
.shop_table img{width:80px}
.shop_table .product-remove a{display:grid;place-items:center;width:48px;height:48px;font-size:1.6rem;text-decoration:none;color:#b3261e}
.coupon{display:none!important}
.cart-collaterals{margin-top:28px}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:68px!important;font-size:1.3rem!important}
.woocommerce form .form-row{margin:0 0 16px;display:flex;flex-direction:column}
.woocommerce form .form-row label{font-weight:700;margin-bottom:6px}
.woocommerce form .input-text,.woocommerce form select,.select2-container .select2-selection--single{width:100%;min-height:58px;padding:12px 16px;font:1.1rem var(--body);border:2px solid #9c845a;border-radius:10px;background:#fffdf8;color:var(--ink)}
.woocommerce form .input-text:focus{border-color:var(--navy);outline:3px solid var(--gold-l)}
.select2-container .select2-selection--single .select2-selection__rendered{line-height:32px}
.woocommerce-checkout{display:block}
form.checkout{display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:start}
form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1}
#customer_details,#order_review_heading,#order_review{background:var(--ivory-l);border:1.5px solid var(--gold);border-radius:14px;padding:24px}
#order_review_heading{margin:0;border-bottom:0;border-radius:14px 14px 0 0;padding-bottom:0;grid-column:2}
#order_review{grid-column:2;border-top:0;border-radius:0 0 14px 14px;margin-top:-34px}
#customer_details{grid-column:1;grid-row:1/span 2}
#customer_details .col-2{margin-top:10px}
.woocommerce-checkout-payment ul{list-style:none;padding:0}
.wc_payment_method{padding:14px;border:1.5px solid rgba(184,148,81,.6);border-radius:10px;margin-bottom:10px}
.wc_payment_method label{font-weight:700}
#place_order{width:100%;min-height:72px!important;font-size:1.4rem!important;font-family:var(--serif)!important;margin-top:14px}
.mm-steps{list-style:none;display:flex;justify-content:center;gap:10px;padding:0;margin:0 0 28px;counter-reset:s}
.mm-steps li{counter-increment:s;display:flex;align-items:center;gap:8px;font-weight:700;color:#6f6250}
.mm-steps li::before{content:counter(s);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:2px solid var(--gold);background:var(--ivory-l);color:var(--navy)}
.mm-steps li.is-current::before,.mm-steps li.is-done::before{background:var(--navy);color:var(--ivory)}
.mm-steps li+li::after{content:none}
@media (max-width:860px){form.checkout{grid-template-columns:1fr}#customer_details,#order_review_heading,#order_review{grid-column:1;grid-row:auto}.shop_table.cart thead{display:none}.shop_table.cart td{display:block;border:0;padding:8px 16px}.shop_table.cart tr{border-bottom:1px solid var(--gold);display:block;padding:8px 0}}
body.woocommerce-checkout .mm-page,body.woocommerce-cart .mm-page{background:linear-gradient(rgba(244,231,206,.94),rgba(244,231,206,.97)),url(../img/checkout-bg.webp) center bottom/cover fixed}
/* contrast panels */
.s4__copy,.s2__copy,.s6__copy{background:rgba(14,26,39,.62);border:1px solid rgba(184,148,81,.45);border-radius:16px;padding:26px 30px;backdrop-filter:blur(3px)}
.s4__copy{margin-top:calc(var(--hdr) + 30px)}
.s5__inner>h2,.s5__lead{display:inline-block;background:rgba(14,26,39,.55);padding:6px 22px;border-radius:12px}
.s5__lead{display:table;margin:8px auto 0}
@media (max-width:767px){.s1 .dusk{background:linear-gradient(180deg,rgba(14,26,39,.75),rgba(14,26,39,.55) 50%,rgba(14,26,39,.8))}.s4__copy,.s2__copy,.s6__copy{margin:0 16px 30px;padding:20px}.s4{align-items:flex-end}}
/* Woo layout without default CSS */
.single-product div.product>.onsale{display:none}
.woocommerce-product-gallery{opacity:1!important}
.woocommerce-product-gallery__image a{display:block}
.summary.entry-summary{min-width:0}
.single_variation_wrap{margin-top:6px}
.woocommerce-variation-description p{font-size:.85rem;color:#7a5a2c;font-style:italic;margin:0}
.col2-set .col-1,.col2-set .col-2{width:100%}
#ship-to-different-address{font-size:1.1rem}#ship-to-different-address label{display:flex;gap:10px;align-items:center;min-height:48px}
input[type=checkbox],input[type=radio]{width:24px;height:24px;accent-color:var(--green)}
.woocommerce-form__label-for-checkbox{display:flex!important;flex-direction:row!important;gap:10px;align-items:center}
.woocommerce-billing-fields h3,#order_review_heading{font-size:1.6rem}
.woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.woocommerce-billing-fields__field-wrapper .form-row-wide,#billing_country_field,#billing_address_1_field,#billing_address_2_field,#billing_email_field{grid-column:1/-1}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.required{color:#9a2a1e;text-decoration:none}
.payment_box{background:#fff8e6;padding:10px 14px;border-radius:8px;margin-top:8px;font-size:.95rem}
.woocommerce-terms-and-conditions-wrapper{font-size:.95rem}
.woocommerce-order-overview{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:18px}
.woocommerce-customer-details address{font-style:normal;background:var(--ivory-l);padding:14px;border:1px solid var(--gold);border-radius:10px}
.cart_totals h2{font-size:1.6rem}
.shop_table .quantity input{width:80px;min-height:52px;text-align:center;font-size:1.1rem;border:2px solid #9c845a;border-radius:10px}
button[name=update_cart]{background:var(--walnut)!important}
@media (max-width:860px){.mm-steps{flex-wrap:wrap;gap:6px 14px;font-size:.9rem}.woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}}
.mm-qty .quantity{display:flex;align-items:center}
.mm-qty>*{position:relative}
.woocommerce-variation-add-to-cart{display:flex;flex-direction:column;align-items:flex-start}
.mm-qty .quantity input.qty{width:80px!important;min-height:60px;border:0!important;background:transparent!important;padding:0;outline-offset:-3px}
