@font-face{font-family:Halyard;src:url('assets/Halyard-Display.ttf') format('truetype');font-display:swap}
:root{--burgundy:#701c3c;--cream:#f5f4e0;--cream-light:#FAF9EE;--purple:#494364;--line:rgba(245,244,224,.16);font-family:Futura,'Futura Medium',Halyard,sans-serif;color:var(--cream);background:var(--burgundy);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,textarea{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}img{display:block}h1,h2,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #dd81a9;outline-offset:4px}[hidden]{display:none!important}.site{max-width:540px;margin:auto;background:var(--burgundy);min-height:100svh}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:852px;height:100svh;max-height:1100px;display:flex;flex-direction:column;padding:64px 24px;gap:24px}.hero-art{position:absolute;inset:0;z-index:-1;pointer-events:none}.hero-art img{position:absolute;width:706px;height:565px;object-fit:cover}.art-top{right:-96px;top:-240px}.art-bottom{right:95px;bottom:-56px;transform:rotate(60deg)}.hero-header{height:44px;display:flex;align-items:center;justify-content:center;position:relative}.wordmark{display:block;overflow:hidden;flex-shrink:0}.small{width:96px;height:auto}.small img{width:96px;height:auto}.hero-message{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:24px}.hero h1{text-transform:uppercase;font-size:44px;line-height:1.25;font-weight:500}.hero-message p{font-size:14px;line-height:26px}.button{border:0;border-radius:8px;display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;font-size:16px;line-height:24px;text-decoration:none;width:100%}.cream{background:var(--cream);color:var(--burgundy)}.burgundy{background:var(--burgundy);color:var(--cream)}.button:hover{filter:brightness(.94)}.product-section{background:var(--cream);color:var(--purple);border-radius:20px;padding:40px 12px;display:flex;flex-direction:column;gap:22px;scroll-margin-top:16px}.product-section h2{color:var(--burgundy);font-weight:500;font-size:32px;line-height:1.1;text-align:center;letter-spacing:-.6px}.product-section h2 span{font-size:23px;letter-spacing:0}.product-photo{width:100%;height:391px;position:relative;overflow:hidden;border-radius:8px}.photo-background{width:100%;height:100%;object-fit:cover}.photo-crop{position:absolute;top:0;left:0;width:100%;aspect-ratio:3024/4032;overflow:hidden}.photo-crop img{position:absolute;width:140.04%;height:140.04%;max-width:none;left:-37.67%;top:-40.06%;object-fit:fill}form{display:flex;flex-direction:column;gap:16px}fieldset{border:0;padding:0;margin:0;display:grid;gap:8px;min-width:0}legend{padding:0;margin-bottom:12px;text-transform:uppercase;font-size:16px;line-height:23px}.package-option{position:relative;display:flex;gap:12px;align-items:center;border:1px solid #49436480;border-radius:8px;background:#4943641a;padding:8px 16px 8px 8px;cursor:pointer;min-height:98px}.package-option:has(input:checked){background:var(--burgundy);color:var(--cream);border-color:#320818}.package-option input{appearance:none;position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:8px;cursor:pointer}.thumbnail{position:relative;flex:0 0 80px;height:80px;overflow:hidden;border-radius:4px}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail.single img{position:absolute;max-width:none;width:132.5%;height:167.37%;left:-32.5%;top:-19.91%}.package-copy{flex:1;min-width:0;display:grid;gap:4px}.package-copy strong{font-weight:500;font-size:16px}.package-copy small{font-size:12px}.selection-mark{width:24px;height:24px;flex-shrink:0}.package-option:not(:has(input:checked)) .selection-mark{opacity:.4}.price-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px}.price-quantity p{font-size:16px;line-height:23px}.price-quantity small{font-size:13px}.quantity{border:1px solid var(--burgundy);border-radius:8px;display:flex;width:132px;flex-shrink:0;height:44px;align-items:center;justify-content:space-between;color:var(--burgundy)}.quantity button{border:0;background:none;width:44px;height:42px;display:grid;place-items:center;color:inherit}.quantity img{width:20px;height:20px}.quantity output{font-size:17px}.quantity button:disabled{opacity:.35;cursor:default}.text-button{border:0;background:none;color:var(--burgundy);text-decoration:underline;text-underline-offset:4px;font-size:14px;padding:4px}.order-note{text-align:center;font-size:14px;line-height:1.5}.information{padding:40px 12px;display:flex;flex-direction:column;gap:16px;align-items:center}.information h2{text-transform:uppercase;font-size:16px;font-weight:500;line-height:23px}.information h2:not(:first-child){margin-top:16px}.pills{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;width:100%}.pills li{background:var(--purple);border-radius:8px;padding:12px 20px;text-align:center;font-size:14px;line-height:20px;max-width:100%}.certifications{display:flex;justify-content:center;gap:24px;width:100%;padding:24px 0 0;border-bottom:1px solid var(--line);padding-bottom:30px}footer{padding:0 12px 24px;display:flex;flex-direction:column;align-items:center;gap:24px}footer .socials{display:flex;gap:16px;align-items:center}.socials img{width:24px;height:24px}.socials img:first-child{width:20px;height:20px}.large{width:min(322px,100%);height:auto}.large img{width:100%;height:auto}footer small{font-size:11px;opacity:.65}dialog{border:0;background:var(--cream);color:var(--purple);border-radius:20px;padding:24px;width:calc(100% - 24px);max-width:420px;max-height:90svh;overflow:auto}dialog::backdrop{background:#210711b3}dialog h2{color:var(--burgundy);font-weight:500;margin:18px 0 12px;font-size:28px}dialog p{line-height:1.5;margin-bottom:16px}.close-dialog{position:absolute;right:12px;top:12px;border:0;border-radius:50%;background:var(--cream);color:var(--burgundy);width:44px;height:44px;font-size:30px}.dialog-photo{width:100%;height:280px;object-fit:cover;border-radius:8px}textarea{width:100%;height:200px;padding:12px;border:1px solid #49436455;border-radius:8px;resize:vertical;color:var(--purple);background:#fff8;margin-bottom:16px}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--line)}.cart-header>a:last-child{font-size:13px}.cart-content{padding:40px 24px}.cart-content h1{font-size:36px;font-weight:500}.cart-intro{margin-top:8px;margin-bottom:32px}.cart-item{background:var(--cream);color:var(--purple);padding:12px;border-radius:12px;margin-bottom:12px;display:grid;grid-template-columns:80px 1fr;gap:12px}.cart-item>img{width:80px;height:96px;object-fit:cover;border-radius:6px}.cart-item h2{font-size:18px;font-weight:500}.cart-item small{display:block;margin:4px 0 12px}.cart-item-actions{display:flex;justify-content:space-between;align-items:center;gap:8px}.cart-item .quantity{width:116px}.remove-item{border:0;background:none;color:var(--burgundy);text-decoration:underline;font-size:12px;padding:10px 0}.summary-row{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0}.summary-row strong{font-weight:500}#cart-summary .order-note{margin:20px 0}.empty-cart{padding:40px 0;text-align:center}.empty-cart p{margin-bottom:24px}.empty-cart h2{font-weight:500;margin-bottom:12px}
@media(min-width:500px){.hero{padding:64px 40px}.hero h1{font-size:56px}.hero-message p{font-size:17px}.product-section{padding:40px 24px}.product-photo{height:520px}.information{padding:40px 24px}.package-copy strong{font-size:18px}.pills li{font-size:16px}.hero-art .art-top{right:-35px}.hero-art .art-bottom{right:168px}}
@media(max-width:359px){.hero{padding:40px 20px;min-height:740px}.hero h1{font-size:36px}.hero-message p{font-size:12px}.package-copy strong{font-size:14px}.thumbnail{flex-basis:64px;height:72px}.package-option{padding-right:8px;gap:8px}.price-quantity p{font-size:14px}.quantity{width:116px}.large{width:min(270px,100%);height:auto}.large img{width:100%;height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.cart-bar{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:516px;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--cream);color:var(--burgundy);border-radius:40px;padding:10px 10px 10px 24px;min-height:64px;box-shadow:0 4px 24px #32081840}.cart-bar>span{font-size:16px}.cart-bar>a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:30px;background:var(--burgundy);color:var(--cream);text-decoration:none;font-size:14px}.cart-bar>a:hover{filter:brightness(1.1)}.has-cart-bar .site{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}

.product-brand{display:flex;flex-direction:column;align-items:center;gap:10px}.product-brand img{width:160px;height:auto;max-width:100%}.product-brand span{display:block}.cart-intro.product-brand{align-items:flex-start;gap:8px}.cart-intro.product-brand img{width:120px}.dialog-brand img{width:150px}

.product-section #product-name{margin-bottom:18px}

#product-form fieldset{gap:12px}#product-form legend{margin-bottom:16px}#product-form .price-quantity{margin-block:12px}

button,.button,.cart-bar>a{text-transform:uppercase}

.hero-message p{text-transform:uppercase;font-size:18px;line-height:28px}@media(min-width:500px){.hero-message p{font-size:22px;line-height:32px}}@media(max-width:359px){.hero-message p{font-size:16px;line-height:25px}}

.certifications{align-items:center;gap:16px}.certification-badge{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:16px;padding:16px;flex-shrink:0}.bpom-badge{width:clamp(168px,50vw,212px)}.halal-badge{width:96px}.certification-logo{position:relative;overflow:hidden;max-width:100%}.certification-logo img{position:absolute;height:auto;max-width:none}.bpom-logo{width:180px;aspect-ratio:1352/410}.bpom-logo img{width:142.011834%;left:-17.011834%;top:-112.682927%}.halal-logo{width:64px;aspect-ratio:580/1031}.halal-logo img{width:206.896552%;left:-53.448276%;top:-8.341416%}

.certification-badge{padding:13px;border-radius:13px}.bpom-badge{width:clamp(134px,40vw,170px)}.halal-badge{width:77px}.bpom-logo{width:144px}.halal-logo{width:51px}

.packaging-shop{display:flex;flex-direction:column;gap:20px;width:100%}.packaging-heading{font-size:16px;line-height:23px;text-transform:uppercase;font-weight:500;margin:0}.shop-cards{display:grid;gap:12px}.shop-card{display:grid;grid-template-columns:1fr 1fr;min-height:220px;border:1px solid #49436430;border-radius:16px;overflow:hidden;background:var(--cream-light);color:var(--purple)}.shop-photo{min-width:0;background:#eeeae6;border-right:1px solid #49436420}.shop-photo img{width:100%;height:100%;min-height:220px;object-fit:cover}.shop-info{display:flex;flex-direction:column;padding:20px 16px;min-width:0}.shop-info h3{font-size:18px;line-height:1.25;font-weight:500;margin:0 0 8px}.shop-unit{font-size:12px;line-height:1.5}.shop-price{font-size:14px;line-height:1.45;margin-top:12px}.shop-action{margin-top:auto;padding-top:24px}.shop-action .button{border-radius:28px;font-size:14px}.shop-quantity{width:100%;border-color:#49436430;border-radius:28px;overflow:hidden;gap:0}.shop-quantity button{flex:0 0 36px;width:36px;height:42px}.shop-quantity button:last-child{background:var(--burgundy);border-radius:50%;height:36px;margin-right:3px}.shop-quantity button:last-child img{filter:brightness(0) invert(1)}.shop-quantity input{width:100%;min-width:0;padding:0;border:0;background:none;color:var(--burgundy);text-align:center;font-size:16px;appearance:textfield;-moz-appearance:textfield}.shop-quantity input::-webkit-inner-spin-button,.shop-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.shop-quantity input:focus-visible{outline-offset:-2px}
@media(min-width:500px){.shop-card{min-height:280px}.shop-photo img{min-height:280px}.shop-info{padding:24px}.shop-info h3{font-size:21px}.shop-unit{font-size:14px}.shop-price{font-size:16px}.shop-quantity button{flex-basis:44px;width:44px}.shop-quantity button:last-child{width:36px;flex-basis:36px}}
@media(max-width:359px){.shop-info{padding:16px 10px}.shop-info h3{font-size:16px}.shop-price{font-size:13px}.shop-quantity button{flex-basis:32px;width:32px}.shop-quantity button:last-child{flex-basis:32px;width:32px;height:32px}.shop-quantity input{font-size:14px}}

footer .wordmark.large{width:100%;height:auto}footer .wordmark.large img{width:100%;height:auto}@media(min-width:500px){footer{padding-inline:24px}}

footer{padding-top:0}

.shop-quantity output{flex:1;min-width:0;text-align:center;font-size:16px;color:var(--burgundy)}@media(max-width:359px){.shop-quantity output{font-size:14px}}

footer .socials{gap:16px}footer .socials a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px}footer .socials a img{width:24px;height:24px}footer .socials a:first-child img{width:20px;height:20px}

footer .socials a[href*="threads.com"] img{width:30px;height:30px}

footer .socials a[href*="instagram.com"] img{width:24px;height:24px}

.empty-cart-button{width:100%;min-height:48px;border:1px solid var(--line);border-radius:28px;background:none;color:var(--cream);font-size:14px;margin:4px 0 24px;padding:12px 20px}.customer-fields{display:flex;flex-direction:column;gap:10px;background:var(--cream);color:var(--purple);padding:20px;border-radius:20px;margin-bottom:12px}.customer-fields label{font-size:15px;line-height:22px}.customer-fields label:not(:first-child){margin-top:8px}.customer-fields input,.customer-fields textarea{width:100%;border:1px solid #49436426;background:var(--cream-light);color:var(--purple);border-radius:12px;padding:14px 16px;font-size:15px;line-height:22px;margin:0}.customer-fields input{min-height:50px}.customer-fields textarea{height:96px;min-height:96px;resize:vertical}.customer-fields input::placeholder,.customer-fields textarea::placeholder{color:#49436499}#checkout-form{gap:0}#checkout-form .order-note{margin:20px 0}#checkout-form .button{border-radius:28px}

@media(min-width:768px){.shop-card{grid-template-columns:180px minmax(0,1fr);min-height:220px}.shop-photo{position:relative}.shop-photo img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover}.shop-info{padding:20px}.shop-info h3{font-size:18px}.shop-unit{font-size:13px}.shop-price{font-size:14px}.shop-action{width:100%;max-width:none}.shop-action .button{font-size:14px}.shop-quantity output{font-size:16px}}

.shop-card{border:0}.shop-photo{border-right:0}

.shop-card{border:1px solid #E4E3D0;border-radius:16px;overflow:hidden}.shop-photo{border-right:0}

.product-section{position:relative;z-index:1;margin-top:-20px}

:root.cart-route{background:var(--cream)}.cart-page{background:var(--cream);color:var(--purple);padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}.cart-page .cart-header{display:grid;grid-template-columns:44px 1fr 44px;gap:16px;border:0;padding:24px 24px 12px}.cart-header h1{font-size:20px;font-weight:500;line-height:28px;text-align:center;margin:0}.cart-header .cart-back{width:44px;height:44px;display:grid;place-items:center;background:#EAE9D7;border-radius:50%;text-decoration:none}.cart-back span{width:11px;height:11px;border-left:2px solid var(--burgundy);border-bottom:2px solid var(--burgundy);transform:translateX(2px) rotate(45deg)}.cart-page .cart-content{padding:12px 24px 24px}.cart-page .cart-item{background:var(--cream-light);border:1px solid #E4E3D0}.cart-page .empty-cart-button{color:var(--burgundy);border-color:#DAD9C5}.cart-page .customer-fields{background:#ECEBD9}.cart-page .summary-row{border-color:#DEDDC9}.cart-page #order-button{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));width:calc(100% - 48px);max-width:492px;min-height:52px;z-index:10;box-shadow:0 4px 24px #32081826}.cart-page .empty-cart .button{background:var(--burgundy);color:var(--cream)}

.order-totals-card{background:#ECEBD9;border-radius:20px;padding:20px;margin-top:12px}.cart-page .order-totals-card .summary-row{border:0;padding:6px 0;gap:16px;font-size:14px;line-height:22px}.order-totals-card .summary-row>:last-child{text-align:right}.cart-page .order-totals-card .total-row{border-top:1px dashed #CECCB9;margin-top:12px;padding-top:16px;font-size:16px}.order-totals-card .total-row strong{font-weight:500}

.cart-page .customer-fields,.cart-page .order-totals-card{background:var(--cream-light);border:1px solid #E4E3D0}.cart-page .customer-fields input,.cart-page .customer-fields textarea{background:var(--cream)}.cart-page .remove-item{display:grid;place-items:center;width:44px;height:44px;padding:0;flex-shrink:0;text-decoration:none;border-radius:8px}.cart-page .remove-item img{width:20px;height:20px}

.cart-page .cart-item .quantity{width:132px;border-color:#49436430;border-radius:28px;overflow:hidden;gap:0}.cart-page .cart-item .quantity button{flex:0 0 36px;width:36px;height:42px}.cart-page .cart-item .quantity button:last-child{background:var(--burgundy);border-radius:50%;height:36px;margin-right:3px}.cart-page .cart-item .quantity button:last-child img{filter:brightness(0) invert(1)}.cart-page .cart-item .quantity output{flex:1;min-width:0;text-align:center;font-size:16px;color:var(--burgundy)}
@media(min-width:500px){.cart-page .cart-item .quantity{width:152px}.cart-page .cart-item .quantity button{flex-basis:44px;width:44px}.cart-page .cart-item .quantity button:last-child{width:36px;flex-basis:36px}}
@media(max-width:359px){.cart-page .cart-item .quantity{width:116px}.cart-page .cart-item .quantity button{flex-basis:32px;width:32px}.cart-page .cart-item .quantity button:last-child{flex-basis:32px;width:32px;height:32px}.cart-page .cart-item .quantity output{font-size:14px}}

.cart-photo{position:relative;width:80px;min-height:96px;align-self:stretch;overflow:hidden;border-radius:6px}.cart-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.cart-page .customer-fields input,.cart-page .customer-fields textarea{background:#F5F5F4;border-color:#DEDEDB}

.cart-page .customer-fields input,.cart-page .customer-fields textarea{background:#fff}.cart-page .cart-item{grid-template-columns:92px minmax(0,1fr)}.cart-page .cart-photo{width:92px;min-height:108px}.cart-page .cart-item>div:last-child{padding-top:6px}.cart-page .cart-item h2{font-size:14px;line-height:20px}
@media(max-width:359px){.cart-page .cart-item{gap:10px;grid-template-columns:84px minmax(0,1fr)}.cart-page .cart-photo{width:84px}.cart-page .cart-item-actions{gap:4px}.cart-page .cart-item .quantity{width:108px}.cart-page .remove-item{width:32px}}

.order-totals-card{padding:14px 16px}.cart-page .order-totals-card .summary-row{padding:4px 0}.cart-page .order-totals-card .total-row{margin-top:8px;padding-top:10px}.cart-page{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}.cart-page .cart-content{padding-bottom:16px}

:root.cart-route{background:var(--burgundy)}.cart-page{background:var(--burgundy);color:var(--cream)}.cart-header .cart-back{background:var(--cream)}.cart-page .cart-content{background:var(--cream);color:var(--purple);border-radius:20px;margin:8px 12px 0;padding:20px 12px}.cart-page #order-button{background:var(--cream);color:var(--burgundy);border-radius:28px;box-shadow:0 4px 24px #32081840}
@media(min-width:500px){.cart-page .cart-content{margin-inline:24px;padding:20px}}

.cart-page .cart-item,.cart-page .customer-fields,.cart-page .order-totals-card,.cart-page .empty-cart-button{background:var(--cream-light);border-color:#E4E3D0}

.cart-page .empty-cart-button{width:fit-content;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:1px solid #DAD9C5;padding:10px 18px;margin:4px auto 24px}.empty-cart-button img{width:18px;height:18px}

.cart-page .empty-cart-button{font-size:12px}

.cart-page .customer-fields{margin-bottom:0}.cart-page .order-totals-card{margin-top:8px}.cart-page #order-button{position:static;transform:none;width:100%;max-width:none;margin-top:12px;background:var(--burgundy);color:var(--cream);box-shadow:none}.cart-page{padding-bottom:24px}

.hero{padding-top:32px}.hero-message{padding-bottom:32px}@media(max-width:359px){.hero{padding-top:24px}.hero-message{padding-bottom:24px}}

.hero{height:100vh;min-height:0;max-height:none}@media(max-width:359px){.hero{min-height:0}}

.hero h1{font-size:clamp(23px,6.4vw,34px);line-height:1.3}.hero h1 span{white-space:nowrap}

.hero-message p{font-size:14px;line-height:22px}@media(min-width:500px){.hero-message p{font-size:16px;line-height:24px}}

.hero{padding-inline:24px}.hero h1{font-size:calc((min(100vw,540px) - 48px) * .085);line-height:1.3}

/* Product gallery and packaging selector */
.packaging-shop{gap:20px}.product-gallery{min-width:0}.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:16px;background:var(--cream-light);overscroll-behavior-x:contain}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.gallery-slide img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.gallery-navigation{display:flex;align-items:center;justify-content:center;gap:18px;padding-top:8px}.gallery-arrow{width:44px;height:44px;border:0;background:transparent;color:var(--burgundy);font-size:30px;line-height:1;border-radius:50%}.gallery-arrow:disabled{opacity:.25;cursor:default}.gallery-dots{display:flex;align-items:center;gap:0}.gallery-dots button{position:relative;width:32px;height:44px;border:0;background:transparent;padding:0}.gallery-dots button::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:#701c3c33}.gallery-dots button[aria-current]::after{width:10px;height:10px;background:var(--burgundy)}.product-purchase{display:flex;flex-direction:column;gap:16px}.package-picker{display:block}.package-picker legend{font-size:13px;line-height:20px;margin-bottom:10px;color:var(--purple)}.package-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.package-choices label{position:relative;cursor:pointer;min-width:0}.package-choices input{position:absolute;opacity:0;width:1px;height:1px}.package-choices span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:80px;padding:12px 8px;border:1px solid #DAD9C5;border-radius:14px;background:var(--cream-light);font-size:17px;color:var(--purple);text-align:center}.package-choices small{font-size:12px;line-height:18px}.package-choices input:checked+span{background:var(--burgundy);border-color:var(--burgundy);color:var(--cream)}.package-choices input:focus-visible+span{outline:3px solid #dd81a9;outline-offset:4px}.purchase-price{text-align:center;font-size:14px;line-height:22px}.purchase-action .button{border-radius:28px;min-height:52px}.purchase-action .shop-quantity{width:100%;height:52px;background:var(--cream-light)}.purchase-action .shop-quantity button{flex-basis:48px;width:48px;height:50px}.purchase-action .shop-quantity button:last-child{flex-basis:44px;width:44px;height:44px;margin-right:3px}.purchase-action .shop-quantity output{font-size:18px}.quantity-note{text-align:center;font-size:12px;line-height:18px;margin-top:-8px}.packaging-shop>.order-note{font-size:12px;line-height:20px}@media(min-width:500px){.package-choices span{font-size:18px}.package-choices small{font-size:13px}.package-picker legend{font-size:14px}}@media(max-width:359px){.package-choices span{font-size:15px}.package-choices small{font-size:11px}}

/* Compact product controls with arrows inside the image */
.product-gallery{position:relative}.gallery-arrow{position:absolute;top:calc((100% - 36px)/2);transform:translateY(-50%);z-index:1;width:40px;height:40px;display:grid;place-items:center;background:rgba(0,0,0,.35);color:#fff;border-radius:50%;padding:10px}.gallery-arrow[data-gallery-step="-1"]{left:12px}.gallery-arrow[data-gallery-step="1"]{right:12px}.gallery-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gallery-arrow:disabled{opacity:.35}.gallery-navigation{padding-top:4px;height:36px}.gallery-dots button{height:32px}.packaging-shop{gap:16px}.product-purchase{gap:16px}.package-choices span{min-height:48px;padding:12px 8px;font-size:14px;line-height:20px;border-radius:12px}@media(min-width:500px){.package-choices span{font-size:15px}}@media(max-width:359px){.package-choices span{font-size:13px}}

/* Indicators inside the image */
.gallery-navigation{position:absolute;left:0;right:0;bottom:20px;height:12px;padding:0;z-index:1;pointer-events:none}.gallery-dots{gap:6px;pointer-events:auto}.gallery-dots button{width:12px;height:12px}.gallery-dots button::after{width:7px;height:7px}.gallery-dots button[aria-current]::after{width:8px;height:8px}.gallery-arrow{top:50%}

.gallery-track{border:1px solid #DAD9C5}

/* Responsive tablet and desktop layout */
.information-group{display:contents}
@media(min-width:768px) and (max-width:1023px){
 .site{max-width:760px}.hero h1{font-size:46px}.hero-message p{font-size:18px;line-height:28px}.product-section{margin-inline:24px;padding:40px}.product-gallery{width:100%;max-width:540px;margin-inline:auto}.product-purchase{width:100%;max-width:540px;margin-inline:auto}.information{padding:48px 40px}.cart-page .cart-content{margin-inline:32px;padding:24px}.cart-bar{max-width:640px}
}
@media(min-width:1024px){
 .site{max-width:none}.hero{height:100svh;min-height:640px;max-height:960px;padding:36px max(48px,calc((100vw - 1120px)/2));gap:32px}.hero-art{background:url('assets/bg-desktop.png') center/cover no-repeat}.hero-art img{display:none}.hero-header{height:48px}.hero-header .small,.hero-header .small img{width:112px}.hero-message{padding-bottom:60px;gap:28px}.hero h1{font-size:clamp(48px,4.1vw,68px);line-height:1.18;letter-spacing:-1.5px}.hero-message p{font-size:19px;line-height:30px;letter-spacing:.5px}
 .product-section{max-width:1120px;margin:-24px auto 0;padding:48px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-rows:1fr 1fr;column-gap:64px;row-gap:28px;border-radius:28px}.packaging-shop{display:contents}.product-gallery{grid-column:1;grid-row:1 / 3;align-self:center;width:100%;min-width:0}.product-section #product-name{grid-column:2;grid-row:1;align-self:end;align-items:flex-start;margin:0}.product-section #product-name img{width:240px}.product-purchase{grid-column:2;grid-row:2;align-self:start;gap:20px}.package-choices{gap:12px}.package-choices span{min-height:52px;font-size:15px}.purchase-action .button{min-height:56px;font-size:15px}.purchase-action .shop-quantity{height:56px}.gallery-track{border-radius:20px}.gallery-arrow{width:44px;height:44px}
 .information{max-width:1120px;margin:0 auto;padding:72px 48px 48px;display:grid;grid-template-columns:1fr 1fr;column-gap:64px;row-gap:40px;align-items:start}.information-group{display:flex;flex-direction:column;gap:20px;min-width:0}.information h2{font-size:16px;text-align:left;line-height:24px}.information h2:not(:first-child){margin:0}.pills{justify-content:flex-start;gap:10px}.pills li{font-size:14px;padding:12px 18px}.certifications{grid-column:1 / 3;gap:20px;padding:24px 0 40px;margin:0;border-bottom:1px solid var(--line)}
 footer{max-width:1120px;margin:auto;padding:0 48px 40px;gap:28px}footer .wordmark.large{width:min(520px,100%)}.cart-bar{max-width:420px;left:auto;right:32px;transform:none;bottom:24px}.has-cart-bar .site{padding-bottom:112px}
 .cart-page{max-width:1120px;margin:auto;padding-bottom:48px;min-height:100svh}.cart-page .cart-header{padding:32px 0 24px;grid-template-columns:44px 1fr 44px}.cart-header h1{font-size:28px;line-height:36px}.cart-page .cart-content{margin:0;padding:32px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px 32px;border-radius:28px;align-items:start}.cart-page #cart-items{grid-column:1;grid-row:1;min-width:0}.cart-page #cart-summary,.cart-page #checkout-form{display:contents}.cart-page .customer-fields{grid-column:1;grid-row:2;padding:24px}.cart-page .checkout-summary{grid-column:2;grid-row:1 / 3;position:sticky;top:24px}.cart-page .order-totals-card{margin:0;padding:24px}.cart-page #order-button{margin-top:16px;min-height:56px}.cart-page .cart-item{padding:16px;grid-template-columns:112px minmax(0,1fr);gap:20px;margin-bottom:12px}.cart-page .cart-photo{width:112px;min-height:132px}.cart-page .cart-item h2{font-size:18px;line-height:26px}.cart-page .cart-item small{font-size:13px;margin-bottom:18px}.cart-page .cart-content:has(.empty-cart){display:block}.cart-page .empty-cart{max-width:480px;margin:auto;padding:64px 0}
}
@media(min-width:1024px) and (max-width:1199px){.product-section{margin-inline:32px;padding:36px;column-gap:40px}.information{padding-inline:68px;column-gap:40px}.cart-page{margin-inline:32px}}

@media(min-width:1024px){.hero-art{inset:-3px}}

@media(min-width:1024px){.product-section{grid-template-rows:auto 1fr}.product-section #product-name{align-self:start;padding-top:48px}.product-purchase{align-self:stretch;padding-bottom:48px}.product-purchase .purchase-action{margin-top:auto}}

@media(min-width:1024px){.product-section{grid-template-rows:auto 1fr}.product-section #product-name{padding-top:72px}.product-purchase{align-self:start;padding-bottom:0;gap:36px}.product-purchase .purchase-action{margin-top:0}}

@media(min-width:1024px){.cart-bar{left:50%;right:auto;transform:translateX(-50%)}}

@media(min-width:1024px){.cart-page{max-width:640px;margin-inline:auto}.cart-page .cart-header{padding:32px 24px 16px}.cart-page .cart-content{display:block;margin:8px 24px 0;padding:24px;border-radius:20px}.cart-page #cart-summary{display:block}.cart-page #checkout-form{display:flex;flex-direction:column;gap:0}.cart-page .checkout-summary{position:static}.cart-page .customer-fields{padding:20px}.cart-page .order-totals-card{margin-top:8px;padding:14px 16px}.cart-page #order-button{margin-top:12px;min-height:52px}.cart-page .cart-item{padding:12px;grid-template-columns:92px minmax(0,1fr);gap:12px}.cart-page .cart-photo{width:92px;min-height:108px}.cart-page .cart-item h2{font-size:14px;line-height:20px}.cart-page .cart-item small{margin:4px 0 12px}.cart-header h1{font-size:20px;line-height:28px}}

/* Restore separate storefront rows while preserving the latest page layout. */
.separate-shop{display:flex;flex-direction:column;gap:22px}
.separate-shop #product-name{align-self:auto;align-items:center;padding-top:0;margin:0 0 18px}
.separate-shop .packaging-shop{display:flex;flex-direction:column;gap:20px}
.separate-shop .shop-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@media(min-width:1024px){
 .separate-shop{max-width:1120px;padding:48px;gap:22px}
 .separate-shop #product-name img{width:160px}
 .separate-shop .shop-card{grid-template-columns:180px minmax(0,1fr)}
}

/* Independent galleries with larger photos in each storefront. */
.separate-shop .shop-card{display:flex;flex-direction:column;min-width:0;min-height:0}
.separate-shop .product-gallery{width:100%;max-width:none;margin:0;align-self:auto;grid-column:auto;grid-row:auto}
.separate-shop .gallery-track{border:0;border-bottom:1px solid #E4E3D0;border-radius:0}
.separate-shop .gallery-slide img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.separate-shop .shop-info{flex:1;padding:24px}
.separate-shop .shop-action{padding-top:24px}
@media(min-width:1024px){
 .separate-shop .shop-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 .separate-shop .shop-info h3{font-size:20px}
}

/* Product pricing and order subtotals. */
.shop-price{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.shop-price strong{font-size:24px;line-height:1.25;font-weight:500;color:var(--burgundy)}
.price-unit{font-size:12px;line-height:18px}
.price-offer{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}
.price-offer s{opacity:.65}
.special-price{background:#701c3c12;color:var(--burgundy);border-radius:20px;padding:3px 8px;font-size:11px}
.cart-item-price{font-size:13px;line-height:20px;margin:0 0 12px}
.cart-line-subtotal{display:block;color:var(--burgundy);font-size:14px}

.price-main{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.price-regular{font-size:13px;line-height:20px;opacity:.65}

/* Keep the quantity control the same size as its Add button. */
.separate-shop .shop-action .button,
.separate-shop .shop-action .shop-quantity{width:100%;height:48px;min-height:48px}
.separate-shop .shop-action .shop-quantity button{height:46px;flex-basis:44px;width:44px}
.separate-shop .shop-action .shop-quantity button:last-child{height:40px;flex-basis:40px;width:40px;margin-right:3px}

.cart-page .cart-item h2{margin-bottom:0}
.cart-page .cart-item h2 + .cart-item-price{margin-top:12px}

/* Compact cart composition: photo, title, then price and quantity in one row. */
.cart-page .cart-item{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:12px}
.cart-page .cart-photo{width:64px;min-height:88px}
.cart-page .cart-item>div:last-child{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding-top:0;min-width:0}
.cart-page .cart-item h2{margin:0;font-size:14px;line-height:20px}
.cart-page .cart-item-actions{display:flex;align-items:center;gap:8px}
.cart-page .cart-item-price{margin:0 auto 0 0;font-size:14px;line-height:20px;color:var(--burgundy);white-space:nowrap}
.cart-page .cart-item .quantity{width:108px;height:40px}
.cart-page .cart-item .quantity button{width:32px;flex-basis:32px;height:38px}
.cart-page .cart-item .quantity button:last-child{width:32px;flex-basis:32px;height:32px;margin-right:3px}
.cart-page .cart-item .quantity output{font-size:14px}
.cart-page .remove-item{width:32px;height:40px}
@media(max-width:399px){
 .cart-page .cart-item{grid-template-columns:48px minmax(0,1fr);gap:8px;padding:10px}
 .cart-page .cart-photo{width:48px;min-height:76px}
 .cart-page .cart-item-actions{gap:4px}
 .cart-page .cart-item-price{font-size:12px}
 .cart-page .cart-item .quantity{width:88px}
 .cart-page .cart-item .quantity button{width:28px;flex-basis:28px}
 .cart-page .cart-item .quantity button:last-child{width:28px;flex-basis:28px;height:28px;margin-right:2px}
 .cart-page .remove-item{width:28px}
}

/* Larger square cart thumbnails. */
.cart-page .cart-item{grid-template-columns:88px minmax(0,1fr)}
.cart-page .cart-photo{width:88px;height:88px;min-height:0;aspect-ratio:1;align-self:center}
@media(max-width:399px){
 .cart-page .cart-item{grid-template-columns:72px minmax(0,1fr)}
 .cart-page .cart-photo{width:72px;height:72px}
}
@media(max-width:359px){
 .cart-page .cart-content{padding-inline:8px}
 .cart-page .cart-item{padding:8px;gap:6px;grid-template-columns:64px minmax(0,1fr)}
 .cart-page .cart-photo{width:64px;height:64px}
 .cart-page .cart-item .quantity{width:80px}
 .cart-page .cart-item .quantity button{width:24px;flex-basis:24px}
 .cart-page .cart-item .quantity button:last-child{width:24px;flex-basis:24px;height:24px}
 .cart-page .remove-item{width:24px}
}

@media(min-width:1024px){
 .cart-page .cart-item{grid-template-columns:120px minmax(0,1fr)}
 .cart-page .cart-photo{width:120px;height:120px}
}

.cart-page .cart-item h2,
.cart-page .cart-item-price{font-size:16px;line-height:24px}
@media(max-width:359px){
 .cart-page .cart-item-actions{gap:2px}
 .cart-page .cart-item .quantity{width:72px}
}

.cart-regular-price{display:block;font-size:13px;line-height:18px;opacity:.6;margin-bottom:2px}

/* Dedicated, directly shareable product pages. */
.product-detail-link{display:flex;align-items:center;justify-content:space-between;gap:16px;text-decoration:none;color:var(--burgundy)}
.product-detail-link span{font-size:20px;font-weight:400}.product-detail-link:hover,.view-product:hover{text-decoration:underline}
.view-product{margin-top:16px;color:var(--burgundy);font-size:14px;text-underline-offset:4px;align-self:flex-start}
/* Product detail layout follows the cart header, width and cream panels. */
.product-detail-page{background:var(--burgundy);padding:0 0 40px;min-height:100svh}
.detail-shell{max-width:540px;margin:auto}
.detail-header.cart-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:16px;border:0;padding:24px 24px 12px}
.detail-header p{font-size:20px;line-height:28px;font-weight:500;text-align:center}
.detail-shell .shop-card{display:flex;flex-direction:column;gap:12px;margin:8px 24px 0;padding:16px;border-radius:20px;background:var(--cream);border:0;overflow:hidden}
.detail-shell .product-gallery{width:100%;max-width:none;margin:0;grid-column:auto;grid-row:auto;align-self:auto}
.detail-shell .gallery-track{border:1px solid #E4E3D0;border-radius:12px}
.detail-shell .gallery-slide img{aspect-ratio:1;object-fit:cover;width:100%}
.detail-shell .shop-info{padding:20px;background:var(--cream-light);border:1px solid #E4E3D0;border-radius:12px}
.detail-shell h1{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0;color:var(--purple)}
.detail-shell .shop-price{margin-top:12px}.detail-shell .shop-price strong{font-size:20px;line-height:28px}
.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-top:1px solid #E4E3D0;margin:16px 0 0;padding:16px 0 0;font-size:14px;line-height:22px}
.detail-facts dt{opacity:.7}.detail-facts dd{margin:4px 0 0;color:var(--purple)}
.detail-shell .shop-action{padding-top:20px}
.detail-shell .shop-action .button,.detail-shell .shop-quantity{height:48px;min-height:48px;width:100%;border-radius:28px;font-size:16px}
.detail-shell .shop-quantity button{height:46px;width:44px;flex-basis:44px}
.detail-shell .shop-quantity button:last-child{height:40px;width:40px;flex-basis:40px;margin-right:3px}
.product-detail-page.has-cart-bar{padding-bottom:120px}
@media(min-width:768px){.detail-shell{max-width:760px}}
@media(min-width:1024px){.detail-shell{max-width:640px}.detail-header.cart-header{padding:32px 24px 16px}.detail-shell .shop-card{padding:24px}.detail-shell .shop-info{padding:20px}}

/* Align floating cart bars with each page's content column. */
.cart-bar{left:50%;right:auto;transform:translateX(-50%);width:calc(100% - 24px);max-width:516px}
.product-detail-page .cart-bar{width:calc(100% - 48px);max-width:492px}
@media(min-width:768px){
 .cart-bar,.product-detail-page .cart-bar{width:calc(100% - 48px);max-width:712px}
}
@media(min-width:1024px){
 .cart-bar{width:calc(100% - 64px);max-width:1120px}
 .product-detail-page .cart-bar{width:calc(100% - 48px);max-width:592px}
}

/* A normal product link covers the card without covering its controls. */
.separate-shop .shop-card{position:relative}
.product-detail-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:16px}
.product-detail-link:focus-visible{outline:0}
.product-detail-link:focus-visible::after{outline:3px solid #dd81a9;outline-offset:4px}
.separate-shop .shop-action{position:relative;z-index:2}
.separate-shop .gallery-arrow,.separate-shop .gallery-navigation{z-index:3}
.separate-shop .gallery-arrow{position:absolute}
.product-detail-link:hover{text-decoration:none}

.separate-shop .gallery-track{position:relative;z-index:2}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.order-error{margin-top:12px;text-align:center;font-size:14px;line-height:1.5;color:var(--burgundy)}.order-error p{margin-bottom:4px}.order-error a{font-weight:500;text-underline-offset:4px}.cart-page #order-button:disabled{opacity:.7;cursor:progress}
