@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=DM+Sans:wght@300;400;500&display=swap";:root{--paper:#f5ede0;--tan:#c8a882;--tan-light:#e8d5bc;--tan-dark:#9a7a58;--white:#fdf8f3;--rose-gold:#b8866e;--rose-gold-light:#d4a898;--rose-gold-dark:#8a5c48;--text-dark:#3a2d24;--text-mid:#6b5344;--text-light:#9a8070;--cream:#faf3e8;--space-xs:clamp(.25rem, .5vw, .5rem);--space-sm:clamp(.5rem, 1vw, 1rem);--space-md:clamp(1rem, 2vw, 2rem);--space-lg:clamp(2rem, 4vw, 4rem);--space-xl:clamp(3rem, 6vw, 6rem);--space-2xl:clamp(4rem, 8vw, 8rem);--pad-x:clamp(1.25rem, 5vw, 4rem);--nav-h:clamp(3rem, 5vw, 4rem);--banner-h:clamp(2rem, 2.8vw, 2.4rem)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:clamp(.875rem,1vw + .5rem,1rem)}body{background:var(--white);color:var(--text-dark);font-family:DM Sans,sans-serif;overflow-x:hidden}nav{z-index:100;padding:var(--space-sm) var(--pad-x);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);border-bottom:.0625rem solid var(--tan-light);height:var(--nav-h);background:#fdf8f3f0;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}nav .logo{align-items:center;text-decoration:none;display:flex}.logo-img{object-fit:contain;width:auto;height:clamp(2.2rem,4vw,3rem)}nav ul{gap:clamp(1.2rem,3vw,2.5rem);list-style:none;display:flex}nav ul a{color:var(--text-mid);letter-spacing:.08em;text-transform:uppercase;font-size:clamp(.72rem,1vw,.85rem);font-weight:400;text-decoration:none;transition:color .2s}nav ul a:hover{color:var(--rose-gold)}.cart-btn{background:var(--rose-gold);color:#fff;letter-spacing:.06em;cursor:pointer;border:none;border-radius:.125rem;padding:.5em 1.2em;font-family:DM Sans,sans-serif;font-size:clamp(.75rem,1vw,.85rem);transition:background .2s;position:relative}.cart-btn:hover{background:var(--rose-gold-dark)}.cart-badge{background:var(--tan-dark);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:1.4em;height:1.4em;font-size:.65em;display:flex;position:absolute;top:-.4em;right:-.4em}.sitewide-banner{top:var(--nav-h);z-index:99;background:var(--rose-gold-dark);color:#fff;text-align:center;padding:.5rem var(--pad-x);letter-spacing:.08em;text-transform:uppercase;height:var(--banner-h);border:0;justify-content:center;align-items:center;margin:0;font-size:clamp(.7rem,.9vw,.82rem);line-height:1.2;display:flex;position:fixed;left:0;right:0}.hero{min-height:80vh;margin-top:calc(var(--nav-h) + var(--banner-h));text-align:center;border:0;justify-content:center;align-items:center;margin-bottom:0;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:inherit;z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0;transform:scaleX(-1)}.hero-overlay{pointer-events:none;z-index:1;background:#3a2d2485;position:absolute;inset:0}.hero-content{z-index:2;max-width:min(42rem,90vw);padding:var(--space-xl) var(--pad-x);position:relative}.hero-title{color:#fff;margin-bottom:var(--space-md);font-family:Playfair Display,serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1.12}.hero-subtext{color:#ffffffe0;margin-bottom:var(--space-xs);font-family:DM Sans,sans-serif;font-size:clamp(.9rem,1.2vw,1.1rem);line-height:1.7}.hero-cta{margin-top:var(--space-md)}.btn-primary{background:var(--rose-gold-dark);color:#fff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;border-radius:.125rem;padding:.8em 2em;font-family:DM Sans,sans-serif;font-size:clamp(.75rem,1vw,.85rem);text-decoration:none;transition:all .2s;display:inline-block}.btn-primary:hover{background:var(--text-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-outline{color:var(--rose-gold-dark);border:.0625rem solid var(--rose-gold);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:.125rem;padding:.8em 2em;font-family:DM Sans,sans-serif;font-size:clamp(.75rem,1vw,.85rem);text-decoration:none;transition:all .2s;display:inline-block}.btn-outline:hover{background:var(--rose-gold);color:#fff}.section-header{text-align:center;margin-bottom:var(--space-lg)}.section-label{letter-spacing:.18em;text-transform:uppercase;color:var(--rose-gold);margin-bottom:.6em;font-size:clamp(.6rem,.8vw,.72rem)}.section-title{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(1.8rem,3vw,2.5rem)}.section-title em{color:var(--tan-dark);font-style:italic}.section-sub{color:var(--text-light);margin-top:.5em;font-family:DM Sans,sans-serif;font-size:clamp(.9rem,1.1vw,1.05rem);font-weight:300}.how-it-works{padding:var(--space-xl) var(--pad-x);text-align:center;max-width:min(60rem,90vw);margin:0 auto}.how-it-works h2{color:var(--text-dark);margin-bottom:var(--space-lg);font-family:Playfair Display,serif;font-size:clamp(1.6rem,2.8vw,2.2rem)}.how-it-works h3{color:var(--text-dark);margin-top:var(--space-lg);margin-bottom:var(--space-md);font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.5vw,1.3rem)}.how-it-works-steps{justify-content:center;gap:var(--space-lg);flex-wrap:wrap;display:flex}.how-it-works-step{align-items:center;gap:var(--space-sm);flex-direction:column;max-width:min(12rem,30vw);display:flex}.step-number{background:var(--rose-gold);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.8rem;height:2.8rem;font-family:Playfair Display,serif;font-size:1.2rem;display:flex}.how-it-works-step p{color:var(--text-mid);font-size:clamp(.85rem,1vw,.95rem);line-height:1.5}.pickup-locations{text-align:left;max-width:min(36rem,85vw);margin:0 auto;list-style:none}.pickup-locations li{border-bottom:.0625rem solid var(--tan-light);color:var(--text-mid);padding:.6em 0;font-size:clamp(.82rem,1vw,.92rem);line-height:1.6}.pickup-locations li strong{color:var(--text-dark)}.product-section{background:var(--cream);padding:var(--space-xl) var(--pad-x)}.flavor-prompt{text-align:center;color:var(--text-mid);margin-bottom:var(--space-md);letter-spacing:.04em;font-size:clamp(.85rem,1vw,.95rem)}.flavor-grid{gap:var(--space-md);max-width:min(60rem,90vw);margin:0 auto var(--space-md);grid-template-columns:repeat(5,1fr);display:grid}.flavor-card{background:var(--white);border:.125rem solid var(--tan-light);padding:var(--space-sm);text-align:center;cursor:pointer;align-items:center;gap:var(--space-xs);border-radius:.375rem;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.flavor-card:hover{transform:translateY(-.2rem);box-shadow:0 .5rem 1.5rem #3a2d241a}.flavor-card.selected{border-color:var(--rose-gold);box-shadow:0 0 0 .125rem var(--rose-gold), 0 .5rem 1.5rem #b8866e2e}.flavor-card-img{aspect-ratio:1;background:linear-gradient(135deg, var(--tan-light), var(--rose-gold-light));border-radius:.25rem;width:100%;overflow:hidden}.flavor-card-img img{object-fit:cover;width:100%;height:100%;display:block}.flavor-card-name{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(.8rem,1vw,.95rem)}.sold-out-msg{text-align:center;color:var(--rose-gold-dark);margin-bottom:var(--space-sm);font-size:clamp(.85rem,1vw,.95rem);font-weight:500}.product-actions{text-align:center;margin-top:var(--space-sm)}.add-to-cart-btn{min-width:min(14rem,60vw)}.pickup-instructions{padding:var(--space-xl) var(--pad-x);max-width:min(48rem,90vw);margin:0 auto}.pickup-instructions h2{color:var(--text-dark);margin-bottom:var(--space-md);text-align:center;font-family:Playfair Display,serif;font-size:clamp(1.6rem,2.8vw,2.2rem)}.pickup-instructions-list{margin-bottom:var(--space-lg);padding-left:1.5em}.pickup-instructions-list li{color:var(--text-mid);padding:.4em 0;font-size:clamp(.85rem,1vw,.95rem);line-height:1.7}.pickup-reminder{background:var(--paper);border-left:.2rem solid var(--rose-gold);padding:var(--space-md);border-radius:.25rem}.pickup-reminder p{color:var(--text-mid);font-size:clamp(.82rem,1vw,.92rem);line-height:1.7}.pickup-reminder p:first-child{color:var(--text-dark);font-weight:500}.popup-calendar{background:var(--cream);padding:var(--space-xl) var(--pad-x)}.events-list{justify-content:center;gap:var(--space-md);flex-wrap:wrap;max-width:min(60rem,90vw);margin:0 auto;display:flex}.event-card{background:var(--white);border:.0625rem solid var(--tan-light);padding:var(--space-md);border-radius:.375rem;width:min(100%,18rem);transition:transform .2s,box-shadow .2s}.event-card:hover{transform:translateY(-.15rem);box-shadow:0 .5rem 1.5rem #3a2d2414}.event-location{color:var(--text-dark);margin-bottom:.3em;font-family:Playfair Display,serif;font-size:clamp(1rem,1.2vw,1.1rem)}.event-address{color:var(--text-light);margin-bottom:var(--space-sm);font-size:clamp(.78rem,.95vw,.88rem);line-height:1.5}.event-datetime{gap:var(--space-sm);color:var(--rose-gold-dark);font-size:clamp(.75rem,.9vw,.85rem);font-weight:500;display:flex}.no-events{text-align:center;color:var(--text-light);padding:var(--space-lg) 0;font-size:clamp(.9rem,1.1vw,1rem);font-style:italic}.social-proof{padding:var(--space-xl) var(--pad-x);max-width:min(60rem,90vw);margin:0 auto}.stats-row{justify-content:center;gap:var(--space-xl);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.stat-block{text-align:center}.stat-value{color:var(--rose-gold-dark);margin-bottom:.2em;font-family:Playfair Display,serif;font-size:clamp(1.6rem,2.8vw,2.2rem);display:block}.stat-label{color:var(--text-light);letter-spacing:.06em;text-transform:uppercase;font-size:clamp(.7rem,.9vw,.82rem)}.quotes-row{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));display:grid}.customer-quote{background:var(--paper);padding:var(--space-md);border:.0625rem solid var(--tan-light);border-radius:.375rem}.customer-quote p{color:var(--text-mid);margin-bottom:var(--space-sm);font-family:Playfair Display,serif;font-size:clamp(.9rem,1.1vw,1rem);font-style:italic;line-height:1.7}.customer-quote cite{color:var(--rose-gold);letter-spacing:.06em;text-transform:uppercase;font-size:clamp(.7rem,.85vw,.78rem);font-style:normal}.about{padding:var(--space-xl) var(--pad-x);gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;max-width:min(75rem,92vw);margin:0 auto;display:grid}.about-label{letter-spacing:.18em;text-transform:uppercase;color:var(--rose-gold);margin-bottom:var(--space-sm);font-size:clamp(.6rem,.8vw,.72rem)}.about h2{margin-bottom:var(--space-md);color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.2}.about h2 em{color:var(--tan-dark);font-style:italic}.about p{color:var(--text-mid);margin-bottom:var(--space-sm);font-family:DM Sans,sans-serif;font-size:clamp(.9rem,1.1vw,1rem);line-height:1.8}.about-stats{gap:var(--space-lg);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.stat .num{color:var(--rose-gold);font-family:Playfair Display,serif;font-size:clamp(1.5rem,2.5vw,2rem);display:block}.stat .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);font-size:clamp(.65rem,.85vw,.75rem)}.about-visual{background:var(--paper);border:.0625rem solid var(--tan-light);padding:var(--space-lg);gap:var(--space-md);border-radius:.25rem;flex-direction:column;display:flex}.about-tag{background:var(--rose-gold-light);letter-spacing:.06em;text-transform:uppercase;color:var(--rose-gold-dark);border-radius:.125rem;align-self:flex-start;padding:.35em .8em;font-size:clamp(.65rem,.85vw,.75rem);display:inline-block}.service-list{list-style:none}.service-list li{border-bottom:.0625rem solid var(--tan-light);color:var(--text-mid);align-items:center;gap:.7em;padding:.6em 0;font-size:clamp(.8rem,1vw,.9rem);display:flex}.service-list li:before{content:"";background:var(--rose-gold);border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.catering-events{padding:var(--space-xl) var(--pad-x);max-width:min(80rem,92vw);margin:0 auto}.catering-details{gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.catering-info h3{color:var(--text-dark);margin-bottom:var(--space-sm);margin-top:var(--space-md);font-family:Playfair Display,serif;font-size:clamp(1rem,1.3vw,1.15rem)}.catering-info h3:first-child{margin-top:0}.occasions-list,.menu-options-list{list-style:none}.occasions-list li,.menu-options-list li{color:var(--text-mid);align-items:center;gap:.6em;padding:.4em 0;font-size:clamp(.82rem,1vw,.92rem);display:flex}.occasions-list li:before,.menu-options-list li:before{content:"✦";color:var(--rose-gold);font-size:.6em}.catering-form{background:var(--paper);border:.0625rem solid var(--tan-light);padding:var(--space-lg);border-radius:.375rem}.catering-form h3{color:var(--text-dark);margin-bottom:var(--space-md);font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.4vw,1.25rem)}.form-row{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.form-group{margin-bottom:var(--space-sm)}.form-group label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-light);margin-bottom:.35em;font-size:clamp(.6rem,.8vw,.72rem);display:block}.form-group input,.form-group select,.form-group textarea{border:.0625rem solid var(--tan-light);background:var(--white);width:100%;color:var(--text-dark);border-radius:.125rem;outline:none;padding:.6em .8em;font-family:DM Sans,sans-serif;font-size:clamp(.78rem,1vw,.88rem);transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--rose-gold)}.form-group textarea{resize:vertical;min-height:clamp(4rem,10vh,6rem)}.field-error{color:#c0392b;margin-top:.25em;font-size:clamp(.65rem,.8vw,.75rem);display:block}.cart-overlay{z-index:200;opacity:0;pointer-events:none;background:#3a2d2466;transition:opacity .3s;position:fixed;inset:0}.cart-overlay.open{opacity:1;pointer-events:all}.cart-panel{z-index:201;background:var(--white);border-left:.0625rem solid var(--tan-light);flex-direction:column;width:min(26rem,100vw);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.cart-panel.open{transform:translate(0)}.cart-header{padding:var(--space-md);border-bottom:.0625rem solid var(--tan-light);justify-content:space-between;align-items:center;display:flex}.cart-header h3{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.5vw,1.3rem)}.close-cart{cursor:pointer;color:var(--text-light);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:2em;height:2em;font-size:1.3rem;transition:background .2s;display:flex}.close-cart:hover{background:var(--paper)}.cart-items{padding:var(--space-md);flex:1;overflow-y:auto}.cart-empty{text-align:center;padding:var(--space-lg) 0;color:var(--text-light);font-size:clamp(.85rem,1.1vw,1rem);font-style:italic}.cart-item{gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:.0625rem solid var(--tan-light);display:flex}.cart-item-name{color:var(--text-dark);margin-bottom:.15em;font-family:Playfair Display,serif;font-size:clamp(.85rem,1.1vw,.95rem)}.cart-item-meta{color:var(--text-light);font-size:clamp(.68rem,.9vw,.78rem)}.cart-item-actions{margin-top:var(--space-xs);align-items:center;gap:.5em;display:flex}.qty-btn{background:var(--paper);border:.0625rem solid var(--tan-light);cursor:pointer;width:1.6em;height:1.6em;color:var(--text-mid);border-radius:.125rem;justify-content:center;align-items:center;font-size:.95rem;line-height:1;transition:all .15s;display:flex}.qty-btn:hover{background:var(--tan-light)}.qty-display{text-align:center;min-width:1.4em;font-size:.85rem;font-weight:500}.cart-item-price{color:var(--rose-gold-dark);white-space:nowrap;margin-left:auto;font-family:Playfair Display,serif;font-size:clamp(.85rem,1.1vw,.95rem)}.cart-footer{padding:var(--space-md);border-top:.0625rem solid var(--tan-light)}.pickup-info{background:var(--paper);color:var(--text-mid);border-left:.125rem solid var(--rose-gold);margin:.6em 0;padding:.6em .8em;font-size:clamp(.7rem,.9vw,.8rem);line-height:1.5}.cart-totals{margin-bottom:var(--space-sm)}.cart-total-row{color:var(--text-mid);justify-content:space-between;padding:.25em 0;font-size:clamp(.75rem,1vw,.85rem);display:flex}.cart-total-row.grand{border-top:.0625rem solid var(--tan-light);margin-top:var(--space-xs);color:var(--text-dark);padding-top:.6em;font-family:Playfair Display,serif;font-size:clamp(.9rem,1.2vw,1.05rem)}.checkout-btn{background:var(--rose-gold-dark);color:#fff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;border-radius:.125rem;justify-content:center;align-items:center;gap:.5em;width:100%;padding:.8em;font-family:DM Sans,sans-serif;font-size:clamp(.78rem,1vw,.88rem);transition:background .2s;display:flex}.checkout-btn:hover{background:var(--text-dark)}.square-badge{text-align:center;color:var(--text-light);margin-top:.6em;font-size:clamp(.6rem,.8vw,.7rem)}.modal-overlay{z-index:300;padding:var(--space-md);background:#3a2d2480;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--white);border:.0625rem solid var(--tan-light);border-radius:.25rem;width:100%;max-width:min(35rem,92vw);max-height:90dvh;overflow-y:auto}.modal-header{padding:var(--space-md);border-bottom:.0625rem solid var(--tan-light);justify-content:space-between;align-items:center;display:flex}.modal-header h3{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(1.05rem,1.4vw,1.25rem)}.modal-body{padding:var(--space-md)}.modal-section{letter-spacing:.12em;text-transform:uppercase;color:var(--rose-gold);margin:var(--space-md) 0 var(--space-sm);padding-bottom:var(--space-xs);border-bottom:.0625rem solid var(--tan-light);font-size:clamp(.6rem,.8vw,.72rem)}.square-payment-area{background:var(--paper);border:.0625rem solid var(--tan-light);padding:var(--space-md);text-align:center;margin:var(--space-sm) 0;border-radius:.25rem}.square-logo{align-items:center;gap:.4em;margin-bottom:.6em;display:inline-flex}.square-logo-mark{background:var(--text-dark);color:#fff;border-radius:.375rem;justify-content:center;align-items:center;width:1.75em;height:1.75em;font-size:1rem;font-weight:700;display:flex}.square-logo-text{color:var(--text-mid);font-size:clamp(.7rem,.9vw,.8rem);font-weight:500}#square-card-container{border:.0625rem dashed var(--tan);min-height:clamp(3rem,5vh,4rem);padding:var(--space-sm);color:var(--text-light);border-radius:.25rem;justify-content:center;align-items:center;font-size:clamp(.7rem,.9vw,.8rem);display:flex}.square-note{color:var(--text-light);margin-top:.5em;font-size:clamp(.6rem,.8vw,.72rem)}.modal-footer{padding:var(--space-md);border-top:.0625rem solid var(--tan-light);gap:var(--space-sm);justify-content:flex-end;display:flex}footer{background:var(--text-dark);color:#fff9;padding:var(--space-lg) var(--pad-x);gap:var(--space-lg);grid-template-columns:2fr 1fr 1fr;display:grid}footer .footer-logo{margin-bottom:.6em;text-decoration:none;display:inline-block}.footer-logo-img{object-fit:contain;filter:brightness(0)invert();width:auto;height:clamp(2.5rem,5vw,3.5rem)}footer .footer-logo span{color:var(--rose-gold-light);font-style:italic}footer p{font-size:clamp(.72rem,.95vw,.82rem);line-height:1.7}footer h4{letter-spacing:.12em;text-transform:uppercase;color:#fff6;margin-bottom:var(--space-sm);font-size:clamp(.6rem,.8vw,.72rem)}footer ul{list-style:none}footer ul li{padding:.25em 0;font-size:clamp(.72rem,.95vw,.82rem)}footer ul a{color:#fff9;text-decoration:none;transition:color .2s}footer ul a:hover{color:var(--rose-gold-light)}.footer-bottom{background:var(--text-dark);padding:var(--space-sm) var(--pad-x);color:#ffffffbf;border-top:.0625rem solid #ffffff1a;justify-content:space-between;align-items:center;font-size:clamp(.6rem,.8vw,.72rem);display:flex}.toast{background:var(--text-dark);color:#fff;opacity:0;z-index:400;pointer-events:none;white-space:nowrap;border-radius:.25rem;padding:.7em 1.4em;font-size:clamp(.75rem,1vw,.85rem);transition:all .3s;position:fixed;bottom:3vh;left:50%;transform:translate(-50%)translateY(2vh)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (width<=56rem){nav ul{display:none}.hero{min-height:70vh}.hero-title{font-size:clamp(1.8rem,6vw,2.8rem)}.about,.catering-details{grid-template-columns:1fr}.flavor-grid{grid-template-columns:repeat(3,1fr)}footer{grid-template-columns:1fr}.footer-bottom{gap:var(--space-xs);text-align:center;flex-direction:column}.form-row{grid-template-columns:1fr}.how-it-works-steps{flex-direction:column;align-items:center}.stats-row{gap:var(--space-lg)}}@media (width<=30rem){.cart-panel{width:100vw}.hero{min-height:60vh}.hero-content{padding:var(--space-lg) var(--space-sm)}.flavor-grid{grid-template-columns:repeat(2,1fr)}.about-stats{gap:var(--space-md)}.events-list,.quotes-row{grid-template-columns:1fr}}.box-product-card{max-width:min(28rem,90vw);margin:0 auto var(--space-md);cursor:pointer;border:.125rem solid var(--tan-light);background:var(--white);border-radius:.5rem;transition:transform .2s,box-shadow .2s;overflow:hidden}.box-product-card:hover{transform:translateY(-.25rem);box-shadow:0 .75rem 2rem #3a2d241f}.box-product-img{aspect-ratio:4/3;width:100%;overflow:hidden}.box-product-img img{object-fit:cover;width:100%;height:100%;display:block}.box-product-info{padding:var(--space-md);text-align:center}.box-product-tag{background:var(--rose-gold-light);color:var(--rose-gold-dark);letter-spacing:.1em;text-transform:uppercase;border-radius:.125rem;margin-bottom:.5em;padding:.3em .8em;font-size:clamp(.6rem,.8vw,.72rem);display:inline-block}.box-product-cta{color:var(--rose-gold-dark);font-family:DM Sans,sans-serif;font-size:clamp(.85rem,1.1vw,1rem);font-weight:500}.builder-overlay{z-index:300;padding:var(--space-md);background:#3a2d2480;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.builder-modal{background:var(--white);border:.0625rem solid var(--tan-light);border-radius:.375rem;width:100%;max-width:min(32rem,92vw);max-height:90dvh;overflow-y:auto}.builder-header{padding:var(--space-md);border-bottom:.0625rem solid var(--tan-light);justify-content:space-between;align-items:center;display:flex}.builder-header h3{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.5vw,1.3rem)}.builder-counter{text-align:center;padding:var(--space-sm) var(--space-md);color:var(--text-mid);background:var(--paper);border-bottom:.0625rem solid var(--tan-light);justify-content:space-between;align-items:center;font-size:clamp(.82rem,1vw,.92rem);display:flex}.builder-count{color:var(--rose-gold-dark);font-family:Playfair Display,serif;font-size:clamp(.95rem,1.2vw,1.1rem);font-weight:600}.builder-flavors{padding:var(--space-sm) var(--space-md)}.builder-flavor-row{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:.0625rem solid var(--tan-light);transition:background .15s;display:flex}.builder-flavor-row.active{background:#b8866e0f}.builder-flavor-row:last-child{border-bottom:none}.builder-flavor-img{border-radius:.25rem;flex-shrink:0;width:3rem;height:3rem;overflow:hidden}.builder-flavor-img img{object-fit:cover;width:100%;height:100%;display:block}.builder-flavor-name{color:var(--text-dark);flex:1;font-family:Playfair Display,serif;font-size:clamp(.85rem,1.1vw,.95rem)}.builder-qty-controls{align-items:center;gap:.5em;display:flex}.builder-footer{padding:var(--space-md);border-top:.0625rem solid var(--tan-light);gap:var(--space-sm);justify-content:flex-end;display:flex}.how-it-works-note{color:var(--rose-gold-dark);margin-bottom:var(--space-lg);background:var(--paper);border-left:.2rem solid var(--rose-gold);border-radius:.125rem;padding:.6em 1em;font-size:clamp(.82rem,1vw,.92rem);font-weight:500;display:inline-block}.event-type-badge{background:var(--rose-gold);color:#fff;letter-spacing:.1em;text-transform:uppercase;border-radius:.125rem;margin-bottom:.5em;padding:.25em .7em;font-size:clamp(.55rem,.75vw,.65rem);display:inline-block}.event-preorder-note{color:var(--rose-gold-dark);margin-top:var(--space-sm);font-size:clamp(.68rem,.85vw,.78rem);font-style:italic;font-weight:500}.event-datetime{flex-direction:column;gap:.2em}.pickup-note-checkout{color:var(--rose-gold-dark);margin-top:.3em;margin-bottom:var(--space-sm);font-size:clamp(.7rem,.9vw,.8rem);font-style:italic}.confirmation-modal{max-width:min(38rem,92vw)}.confirmation-banner{text-align:center;padding:var(--space-md);background:linear-gradient(135deg, var(--paper), var(--cream));margin-bottom:var(--space-md);border:.0625rem solid var(--tan-light);border-radius:.25rem}.confirmation-banner p:first-child{color:var(--text-dark);margin-bottom:.3em;font-family:Playfair Display,serif;font-size:clamp(1.1rem,1.5vw,1.3rem)}.confirmation-sub{color:var(--text-mid);font-size:clamp(.78rem,1vw,.88rem)}.receipt-items{margin-bottom:var(--space-md)}.receipt-item{border-bottom:.0625rem solid var(--tan-light);justify-content:space-between;align-items:flex-start;padding:.5em 0;display:flex}.receipt-item:last-child{border-bottom:none}.receipt-item-name{color:var(--text-dark);font-family:Playfair Display,serif;font-size:clamp(.85rem,1.1vw,.95rem);display:block}.receipt-item-flavors{color:var(--text-light);margin-top:.15em;font-size:clamp(.68rem,.85vw,.78rem);display:block}.receipt-item-right{align-items:center;gap:var(--space-sm);white-space:nowrap;display:flex}.receipt-item-qty{color:var(--text-light);font-size:clamp(.75rem,.95vw,.85rem)}.receipt-item-price{color:var(--rose-gold-dark);font-family:Playfair Display,serif;font-size:clamp(.85rem,1.1vw,.95rem)}.receipt-totals{margin-bottom:var(--space-md);padding-top:var(--space-sm);border-top:.0625rem solid var(--tan-light)}.receipt-row{color:var(--text-mid);justify-content:space-between;padding:.2em 0;font-size:clamp(.78rem,1vw,.88rem);display:flex}.receipt-row.grand{border-top:.0625rem solid var(--tan-light);margin-top:var(--space-xs);color:var(--text-dark);padding-top:.5em;font-family:Playfair Display,serif;font-size:clamp(1rem,1.3vw,1.15rem);font-weight:600}.receipt-pickup{background:var(--paper);padding:var(--space-md);margin-bottom:var(--space-md);border:.0625rem solid var(--tan-light);border-radius:.25rem}.receipt-pickup-row{color:var(--text-mid);justify-content:space-between;padding:.35em 0;font-size:clamp(.78rem,1vw,.88rem);display:flex}.receipt-label{color:var(--text-dark);text-transform:uppercase;letter-spacing:.08em;font-size:clamp(.65rem,.85vw,.75rem);font-weight:500}.receipt-instructions{margin-bottom:var(--space-md)}.receipt-instructions p{color:var(--text-dark);margin-bottom:.5em;font-size:clamp(.82rem,1vw,.92rem)}.receipt-instructions ol{padding-left:1.5em}.receipt-instructions li{color:var(--text-mid);padding:.2em 0;font-size:clamp(.78rem,.95vw,.88rem);line-height:1.7}.receipt-note{text-align:center;color:var(--text-light);padding-top:var(--space-sm);border-top:.0625rem solid var(--tan-light);font-size:clamp(.72rem,.9vw,.82rem)}@media (width<=56rem){.builder-modal{max-width:95vw}.event-datetime{flex-direction:column}}@media (width<=30rem){.builder-flavor-img{width:2.5rem;height:2.5rem}.receipt-pickup-row{flex-direction:column;gap:.15em}}
