@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111c24;--font-sans:"Inter", Arial, Helvetica, sans-serif;--font-extended:"Space Grotesk", Arial, Helvetica, sans-serif;--ink:#111c24;--paper:#fff;--black:#000;--surface:#f4f2ef;--surface-container-low:#fbfaf7;--surface-container:#ebe9e3;--surface-container-high:#dfddd5;--on-surface-variant:#48515a;--outline:#59636d;--outline-variant:#111c2433;--primary:#122855;--primary-container:#2a5e4d;--accent-blue:#8edeff;--accent-violet:#5f249f;--accent-pink:#ffcfd8;--accent-yellow:#fff382;--accent-green:#42cfa5;--pink-soft:#fff0f4;--pink:#ffcfd8;--green-soft:#e9f6e8;--green:#42cfa5;--yellow-soft:#fff9ca;--yellow:#fff382;--blue-soft:#e9ecf7;--blue:#8995d2;--orange-soft:#fff5e7;--orange:#ffb36b;--border:#111c2433;--shadow:0 1.25rem 4rem #111c241f;--shadow-soft:0 .8rem 2.2rem #111c2414;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);background:#f4f2ef;font-family:Inter,Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--surface)}body{background:linear-gradient(180deg, #ffffff8c, #f4f2ef1a 38rem), var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-width:320px;min-height:100vh;margin:0}body,button,input,select{font:inherit}button,select,input{color:inherit}button,a,select,input{outline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--black)}a{color:inherit}img{max-width:100%;display:block}::selection{background:var(--accent-yellow);color:var(--ink)}@keyframes pageRise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes mediaScaleIn{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes dialogEnter{0%{opacity:0;transform:translateY(1rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes floatCart{0%,to{transform:translateY(0)}50%{transform:translateY(-.18rem)}}.app-shell{min-height:100vh}.skip-link{z-index:10;background:var(--black);color:var(--paper);padding:.75rem 1rem;transition:transform .18s;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.shop-header{z-index:40;border-top:3px solid var(--black);border-bottom:1px solid var(--surface-container-high);background:color-mix(in srgb, var(--surface) 88%, white);-webkit-backdrop-filter:blur(22px)saturate(1.18);grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:4.25rem;padding:0 2rem;display:grid;position:sticky;top:0;box-shadow:0 .5rem 1.5rem #111c240a}.shop-logo{width:max-content;font-family:var(--font-extended);color:var(--ink);text-transform:uppercase;font-size:1.12rem;font-weight:700;line-height:1;text-decoration:none;position:relative}.shop-logo:after{content:"";transform-origin:100%;height:2px;transition:transform .22s var(--ease-out);background:currentColor;position:absolute;bottom:-.45rem;left:0;right:0;transform:scaleX(0)}.shop-logo:hover:after{transform-origin:0;transform:scaleX(1)}.shop-nav{justify-content:center;align-items:center;gap:2.25rem;display:flex}.shop-nav a,.shop-actions,.shopping-list-link,.ticket-link,.member-link,.account-link,.dashboard-link{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:600;line-height:1}.shop-nav a{color:#1a1c1cb8;transition:color .18s var(--ease-smooth), background-size .22s var(--ease-out), background-position .22s var(--ease-out);background:linear-gradient(currentColor,currentColor) right 100%/0 1px no-repeat;padding-bottom:.22rem;text-decoration:none}.shop-nav a:hover,.shop-nav a.is-active{color:var(--black);background-position-x:left;background-size:100% 1px}.shop-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.language-switcher{border:1px solid var(--black);min-height:2.25rem;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out);background:#ffffffc7;align-items:center;display:inline-flex}.language-switcher>svg{color:#1a1c1cb8;flex:none;margin:0 .45rem}.language-switcher button{border:0;border-left:1px solid var(--outline-variant);min-width:2.15rem;font-family:var(--font-extended);letter-spacing:.05em;cursor:pointer;transition:background .16s var(--ease-smooth), color .16s var(--ease-smooth);background:0 0;align-self:stretch;font-size:.68rem;font-weight:600}.language-switcher button:hover,.language-switcher button[aria-pressed=true]{background:var(--black);color:var(--paper)}.shopping-list-link{min-width:2.75rem;min-height:2.25rem;color:var(--ink);justify-content:center;align-items:center;gap:.35rem;text-decoration:none;display:inline-flex}.shopping-list-link span{border:1px solid var(--black);min-width:1.35rem;height:1.35rem;font-family:var(--font-extended);transition:background .18s var(--ease-smooth), color .18s var(--ease-smooth), transform .18s var(--ease-out);border-radius:999px;place-items:center;font-size:.68rem;font-weight:600;line-height:1;display:inline-grid}.shopping-list-link:hover span{background:var(--black);color:var(--paper);transform:scale(1.04)}.shopping-list-link,.ticket-link,.member-link,.account-link,.dashboard-link{border:1px solid var(--black);cursor:pointer;white-space:nowrap;min-height:2.25rem;transition:transform .18s var(--ease-out), border-color .18s var(--ease-smooth), background .18s var(--ease-smooth), color .18s var(--ease-smooth), box-shadow .18s var(--ease-out);border-radius:0;justify-content:center;align-items:center;gap:.45rem;padding:0 .85rem;text-decoration:none;display:inline-flex}.dashboard-link{color:var(--black);cursor:pointer;font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;background:0 0;font-size:.72rem;font-weight:600}.dashboard-link:hover{background:var(--surface-container)}.shopping-list-link{min-width:2.25rem;color:var(--black);background:0 0;padding:0 .7rem}.ticket-link,.member-link{background:var(--black);color:var(--paper)}.account-link{background:var(--paper);color:var(--black)}.shopping-list-link:hover{background:var(--surface-container)}.ticket-link:hover,.member-link:hover,.account-link.is-signed-in,.account-link:hover{border-color:var(--primary-container);background:var(--primary-container);color:var(--paper)}.shopping-list-link:hover,.ticket-link:hover,.member-link:hover,.account-link:hover,.dashboard-link:hover,.language-switcher:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.shop-landing{background:var(--black);max-width:118rem;min-height:clamp(36rem,76svh,47rem);color:var(--paper);isolation:isolate;animation:pageRise .7s var(--ease-out) both;align-items:end;margin:1rem auto 0;padding:clamp(5rem,12vh,9rem) 2.5rem clamp(2rem,7vh,4rem);display:grid;position:relative;overflow:hidden}.shop-landing__copy{z-index:2;align-content:end;max-width:min(43rem,100%);display:grid;position:relative}.breadcrumb{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1cb3;margin:0 0 1.5rem;font-size:.72rem;font-weight:600;line-height:1.2}.shop-landing .breadcrumb{color:#ffffffc7}.shop-landing h1{max-width:10.5ch;font-family:var(--font-extended);letter-spacing:0;text-transform:none;text-wrap:balance;overflow-wrap:break-word;margin-bottom:1.25rem;font-size:clamp(3.8rem,7.2vw,7rem);font-weight:700;line-height:.9}.shop-landing p:not(.breadcrumb){color:#ffffffd1;text-wrap:pretty;max-width:32rem;margin-bottom:2rem;font-size:clamp(1.05rem,1.4vw,1.35rem);line-height:1.42}.hero-actions{flex-wrap:wrap;gap:.75rem;display:flex}.primary-button,.secondary-button{min-height:2.7rem;font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:transform .18s var(--ease-out), border-color .18s var(--ease-smooth), background .18s var(--ease-smooth), color .18s var(--ease-smooth), box-shadow .18s var(--ease-out);justify-content:center;align-items:center;gap:.45rem;padding:0 1.2rem;font-size:.72rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.primary-button{border:1px solid var(--black);background:var(--black);color:var(--paper)}.primary-button:hover{border-color:var(--primary-container);background:var(--primary-container);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.secondary-button{border:1px solid var(--black);color:var(--black);background:0 0}.shop-landing .secondary-button{color:var(--paper);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#111c2438;border-color:#ffffffdb}.secondary-button:hover{background:var(--surface-container);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.shop-landing .primary-button{border-color:var(--paper);background:var(--paper);color:var(--ink)}.shop-landing .primary-button:hover,.shop-landing .secondary-button:hover{border-color:var(--accent-yellow);background:var(--accent-yellow);color:var(--ink)}.shop-landing__media{z-index:-2;background:var(--black);animation:mediaScaleIn .9s var(--ease-out) both;margin:0;position:absolute;inset:0;overflow:hidden}.shop-landing__media img{object-fit:cover;filter:saturate(1.02)contrast(1.05);width:100%;height:100%}.shop-landing__media:after{content:"";z-index:1;background:linear-gradient(90deg,#000000b8,#0000005c 42%,#0000000d 76%),linear-gradient(#0003,#0000001f 58%,#00000094);position:absolute;inset:0}.shop-landing:after{content:"";z-index:2;aspect-ratio:1;mix-blend-mode:screen;opacity:.58;background:linear-gradient(161.86deg,#42cfa5e6 0%,#ff8da1e6 100%);border:1px solid #ffffffb8;width:clamp(4.5rem,11vw,10rem);position:absolute;bottom:clamp(1rem,4vw,3rem);right:clamp(1rem,4vw,3rem)}.coffee-coupon{max-width:118rem;animation:pageRise .74s var(--ease-out) 80ms both;grid-template-columns:auto minmax(0,1fr) minmax(18rem,.5fr);align-items:stretch;gap:0;margin:1rem auto 0;padding:0 2.5rem;display:grid}.coffee-coupon__mark,.coffee-coupon__copy,.coffee-coupon__code{border:1px solid var(--black);background:var(--paper)}.coffee-coupon__mark{min-width:clamp(5rem,9vw,7rem);color:var(--ink);background:linear-gradient(161.86deg, var(--accent-green) 0%, var(--accent-pink) 100%);place-items:center;display:grid}.coffee-coupon__copy{border-left:0;padding:clamp(1.35rem,3vw,2rem)}.coffee-coupon__copy .breadcrumb{margin-bottom:.75rem}.coffee-coupon h2{font-family:var(--font-extended);text-wrap:balance;margin-bottom:.65rem;font-size:clamp(2.15rem,3.8vw,3.45rem);font-weight:700;line-height:.92}.coffee-coupon p:not(.breadcrumb){max-width:45rem;color:var(--on-surface-variant);margin-bottom:0;line-height:1.45}.coffee-coupon__code{background:var(--surface-container-low);border-left:0;align-content:center;justify-items:start;gap:.45rem;padding:clamp(1.35rem,3vw,2rem);display:grid}.coffee-coupon__code span,.coffee-coupon__code small{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:600;line-height:1.2}.coffee-coupon__code strong{font-family:var(--font-extended);overflow-wrap:anywhere;font-size:clamp(1.55rem,2.8vw,2.35rem);line-height:1;display:block}.coffee-coupon__code small{color:#1a1c1cb8}.visit-ticket{max-width:118rem;animation:pageRise .74s var(--ease-out) .14s both;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;gap:0;margin:1rem auto 0;padding:0 2.5rem;display:grid}.visit-ticket__mark,.visit-ticket__copy,.visit-ticket__actions{border:1px solid var(--black);background:var(--paper)}.visit-ticket__mark{min-width:clamp(5rem,9vw,7rem);color:var(--paper);background:var(--black);place-items:center;display:grid}.visit-ticket__copy{border-left:0;padding:clamp(1.35rem,3vw,2rem)}.visit-ticket__copy .breadcrumb{margin-bottom:.75rem}.visit-ticket h2{font-family:var(--font-extended);text-wrap:balance;margin-bottom:.65rem;font-size:clamp(2.15rem,3.6vw,3.35rem);font-weight:700;line-height:.92}.visit-ticket p:not(.breadcrumb){max-width:45rem;color:var(--on-surface-variant);margin-bottom:0;line-height:1.45}.visit-ticket__actions{background:linear-gradient(18.9deg, #8995d240 0%, #ffcfd88c 100%), var(--surface-container-low);border-left:0;align-content:center;justify-items:start;gap:.75rem;min-width:15rem;padding:clamp(1.35rem,3vw,2rem);display:grid}.hero{min-height:42rem;color:var(--paper);background:var(--black);isolation:isolate;position:relative;overflow:hidden}.hero__image,.hero__wash{position:absolute;inset:0}.hero__image{object-fit:cover;filter:saturate(.92)contrast(1.05);width:100%;height:100%;transform:scale(1.01)}.hero__wash{z-index:1;background:linear-gradient(90deg,#000000b8,#00000047 48%,#00000014),linear-gradient(#0000 66%,#0000006b)}.site-header{z-index:2;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:2rem;display:flex;position:relative}.brand-mark{width:min-content;color:var(--paper);gap:.35rem;text-decoration:none;display:inline-grid}.brand-mark span:first-child{font-family:var(--font-extended);font-size:4rem;line-height:.84}.brand-mark span:last-child{text-transform:uppercase;font-size:1rem;line-height:1}.site-nav{font-family:var(--font-extended);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem 1.25rem;display:flex}.site-nav a,.text-link{transition:background-size .2s var(--ease-out), background-position .2s var(--ease-out), color .16s var(--ease-smooth);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;align-items:center;gap:.4rem;padding-bottom:.12rem;text-decoration:none;display:inline-flex}.text-link:hover,.site-nav a:hover{background-position-x:right;background-size:0 1px}.hero__content{z-index:2;align-content:end;width:min(72rem,100%);min-height:30rem;padding:4rem 2rem 5rem;display:grid;position:relative}.eyebrow{font-family:var(--font-extended);text-transform:uppercase;margin:0 0 .9rem;font-size:.95rem;line-height:1}h1,h2,h3,p{margin-top:0}h1{max-width:10ch;font-family:var(--font-extended);text-transform:uppercase;margin-bottom:1rem;font-size:6.8rem;font-weight:500;line-height:.92}.hero__copy{max-width:42rem;margin-bottom:0;font-size:1.55rem;line-height:1.16}.summary-band{background:var(--black);border-top:1px solid var(--black);border-bottom:1px solid var(--black);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.stat-card{background:var(--paper);min-height:9rem;padding:1.4rem}.stat-card:nth-child(2){background:var(--surface-container-low)}.stat-card:nth-child(3){background:var(--surface-container)}.stat-card:nth-child(4){background:var(--surface-container-high)}.stat-card p{font-family:var(--font-extended);text-transform:uppercase;margin-bottom:1rem}.stat-card strong{letter-spacing:-.02em;font-size:2.5rem;font-weight:500;line-height:1;display:block}.product-page{max-width:118rem;animation:pageRise .62s var(--ease-out) both;margin:0 auto;padding:0 2.5rem 10rem}.product-page__nav{border-bottom:1px solid var(--outline-variant);align-items:center;gap:2rem;margin-bottom:0;padding:1.25rem 0;display:flex}.product-page__nav .breadcrumb{margin:0}.back-button{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:0 0;border:0;flex-shrink:0;align-items:center;gap:.5rem;padding:0;font-size:.72rem;font-weight:600;display:inline-flex}.back-button:hover{text-underline-offset:.28em;text-decoration:underline}.product-page__layout{border-bottom:1px solid var(--outline-variant);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:0;display:grid}.product-page__media{position:sticky;top:4.5rem}.product-page__media .product-media{aspect-ratio:1;border:0;border-right:1px solid var(--outline-variant);background:linear-gradient(18.9deg, #8995d23d 0%, #ffcfd857 100%), var(--surface-container-low);width:100%;min-height:100%}.product-page__content{background:#ffffff7a;align-content:start;gap:1.5rem;padding:clamp(2rem,4vw,4rem);display:grid}.product-page__header{gap:.5rem;display:grid}.product-page__header .breadcrumb{margin:0}.product-page__title{font-family:var(--font-extended);letter-spacing:0;text-transform:uppercase;overflow-wrap:break-word;text-wrap:balance;margin:0;font-size:clamp(2.2rem,4.5vw,4rem);font-weight:700;line-height:.96}.product-page__vendor{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c8c;margin:0;font-size:.72rem;font-weight:600}.product-page__price{font-family:var(--font-extended);margin:0;font-size:1.35rem;font-weight:500;line-height:1}.product-page__description{color:var(--on-surface-variant);text-wrap:pretty;max-width:46rem;margin:0;font-size:.95rem;line-height:1.65}.product-page__availability{color:var(--on-surface-variant);margin:0;font-size:.85rem}.product-page__sku{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c6b;margin:0;font-size:.72rem;font-weight:600}.product-page__actions{gap:.65rem;display:grid}.product-page__cta{justify-content:center;width:100%;min-height:3.25rem}.product-page__favorite{width:100%;min-height:3.25rem}.product-page__favorite.is-active{color:#c0392b;background:#fdf2f1;border-color:#c0392b}.product-page__favorite.is-active svg{fill:currentColor}.catalog-section{max-width:118rem;animation:pageRise .78s var(--ease-out) .2s both;margin:0 auto;padding:clamp(4rem,9vw,7rem) 2.5rem 10rem}.catalog-intro{border-bottom:2px solid var(--black);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2.5rem;margin-bottom:3rem;padding-bottom:2rem;display:grid}.catalog-intro h2{font-family:var(--font-extended);letter-spacing:0;text-transform:uppercase;text-wrap:balance;margin-bottom:1rem;font-size:clamp(3.4rem,6.2vw,6.5rem);font-weight:700;line-height:.86}.catalog-intro p:not(.breadcrumb){max-width:40rem;color:var(--on-surface-variant);margin-bottom:0;font-size:1rem;line-height:1.6}.catalog-facts{border:1px solid var(--black);background:var(--black);grid-template-columns:repeat(3,auto);gap:0;margin:0;display:grid}.catalog-facts div{background:var(--surface-container-low);min-width:7rem;padding:1rem}.catalog-facts dt{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c9e;font-size:.68rem;font-weight:600}.catalog-facts dd{font-family:var(--font-extended);margin:.35rem 0 0;font-size:1.25rem;line-height:1}.catalog-layout{grid-template-columns:minmax(13rem,.22fr) minmax(0,1fr);align-items:start;gap:clamp(1.5rem,3vw,3rem);display:grid}.catalog-sidebar{border:1px solid var(--outline-variant);-webkit-backdrop-filter:blur(18px);background:#ffffff94;gap:1.5rem;padding:1rem;display:grid;position:sticky;top:5.75rem}.filter-group{border-bottom:1px solid var(--outline-variant);padding-bottom:1.5rem}.filter-heading{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.85rem;font-size:.72rem;font-weight:600}.filter-option{width:100%;color:var(--on-surface-variant);text-align:left;cursor:pointer;transition:color .16s var(--ease-smooth), background-size .2s var(--ease-out), background-position .2s var(--ease-out), padding .2s var(--ease-out);background:linear-gradient(currentColor,currentColor) right 100%/0 1px no-repeat;border:0;justify-content:space-between;align-items:baseline;gap:1rem;padding:.48rem 0;display:flex}.filter-option:hover,.filter-option.is-active{color:var(--black);background-position-x:left;background-size:100% 1px;padding-left:.25rem}.filter-option__count{min-width:2ch;font-family:var(--font-extended);text-align:right;color:#1a1c1c85;flex:none;font-size:.68rem;font-weight:600;line-height:1;text-decoration:none}.filter-option:hover .filter-option__count,.filter-option.is-active .filter-option__count{color:var(--black)}.filter-check{color:var(--on-surface-variant);cursor:pointer;align-items:center;gap:.65rem;display:flex}.filter-check input{width:1rem;height:1rem;accent-color:var(--black);border-radius:0}.filter-note{color:#1a1c1c9e;margin:0;font-size:.82rem;line-height:1.5}.toolbar{z-index:15;border:1px solid var(--outline-variant);background:color-mix(in srgb, var(--surface) 88%, white);-webkit-backdrop-filter:blur(18px)saturate(1.08);grid-template-columns:minmax(18rem,1fr) minmax(11rem,15rem) minmax(10rem,auto) auto;gap:1rem;max-width:none;margin:0 0 2rem;padding:1rem;display:grid;position:sticky;top:4.25rem;box-shadow:0 .75rem 2rem #111c240d}.search-control,.select-control,.toggle-control{border:1px solid var(--outline-variant);min-height:3rem;transition:border-color .16s var(--ease-smooth), background .16s var(--ease-smooth), box-shadow .16s var(--ease-out);background:#ffffff9e;align-items:center;gap:.7rem;display:flex}.search-control:focus-within,.select-control:focus-within,.toggle-control:focus-within,.toggle-control:hover{border-color:var(--black);background:var(--paper);box-shadow:0 .55rem 1.5rem #111c240f}.search-control,.select-control{padding:0 1rem}.search-control input,.select-control select{background:0 0;border:0;width:100%;min-width:0}.search-control input:focus,.select-control select:focus{outline:0}.search-clear-button{color:#1a1c1c9e;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;flex:none;place-items:center;width:1.85rem;height:1.85rem;margin-right:-.35rem;display:inline-grid}.search-clear-button:hover,.search-clear-button:focus-visible{border-color:var(--black);background:var(--black);color:var(--paper)}.select-control select{cursor:pointer}.toggle-control{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;padding:0 1.1rem}.toggle-control input{width:1.15rem;height:1.15rem;accent-color:var(--black)}.toggle-control span{min-width:0;font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:600;line-height:1}.shopping-list{border:1px solid var(--outline-variant);background:var(--paper);margin:0 0 2.5rem}.shopping-list__header{border-bottom:1px solid var(--outline-variant);background:var(--surface-container-low);justify-content:space-between;align-items:end;gap:1rem;padding:1.1rem 1.25rem;display:flex}.shopping-list__header .breadcrumb{margin-bottom:.55rem}.shopping-list__header h3{font-family:var(--font-extended);margin:0;font-size:1.35rem;line-height:1.05}.shopping-list__header-actions{justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:flex}.shopping-list__summary{font-family:var(--font-extended);letter-spacing:.1em;text-align:right;text-transform:uppercase;align-items:center;gap:.45rem;margin:0;font-size:.78rem;font-weight:600;display:inline-flex}.shopping-list__close{border-color:var(--outline-variant);flex:none;width:2.35rem;height:2.35rem}.shopping-list__items{margin:0;padding:0;list-style:none;display:grid}.shopping-list__item{border-top:1px solid var(--outline-variant);grid-template-columns:minmax(0,1fr) auto minmax(6rem,auto);align-items:center;gap:1rem;padding:1rem 1.25rem;display:grid}.shopping-list__item:first-child{border-top:0}.shopping-list__details{min-width:0}.shopping-list__details h4{overflow-wrap:anywhere;margin:0 0 .35rem;font-size:.98rem;font-weight:600;line-height:1.25}.shopping-list__details p{color:var(--on-surface-variant);flex-wrap:wrap;gap:.5rem .85rem;margin:0;font-size:.82rem;line-height:1.25;display:flex}.shopping-list__controls{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.quantity-stepper{border:1px solid var(--outline-variant);background:var(--surface);align-items:center;min-height:2.35rem;display:inline-flex}.quantity-stepper button{cursor:pointer;background:0 0;border:0;place-items:center;width:2.35rem;height:2.35rem;display:inline-grid}.quantity-stepper button:hover:not(:disabled){background:var(--surface-container)}.quantity-stepper button:disabled{color:#1a1c1c47;cursor:not-allowed}.quantity-stepper span{border-right:1px solid var(--outline-variant);border-left:1px solid var(--outline-variant);min-width:2.25rem;font-family:var(--font-extended);text-align:center;font-size:.85rem;font-weight:600;line-height:2.35rem}.remove-button{border-color:var(--outline-variant);width:2.35rem;height:2.35rem}.shopping-list__line-total{font-family:var(--font-extended);text-align:right;white-space:nowrap;font-size:.92rem;font-weight:600;line-height:1}.email-form{border-top:1px solid var(--outline-variant);background:var(--surface-container-low);grid-template-columns:minmax(14rem,1fr) auto auto auto;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:grid}.email-control{border:1px solid var(--outline-variant);background:var(--paper);align-items:center;gap:.7rem;min-height:2.7rem;padding:0 .9rem;display:flex}.email-control input{background:0 0;border:0;width:100%;min-width:0}.email-control input:focus{outline:0}.email-status{grid-column:1/-1;margin:0;font-size:.85rem;line-height:1.35}.email-status--error{color:#802424}.email-status--success{color:var(--primary)}.shopping-list__empty{color:var(--on-surface-variant);align-items:center;gap:.75rem;padding:1.1rem 1.25rem;display:flex}.shopping-list__empty p{margin:0}.floating-shopping-list{z-index:30;right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));pointer-events:none;justify-items:end;gap:.75rem;display:grid;position:fixed}.floating-shopping-list>*{pointer-events:auto}.floating-shopping-list__panel{border:1px solid var(--black);background:var(--paper);width:min(31rem,100vw - 2rem);max-height:min(38rem,100vh - 7rem);box-shadow:var(--shadow);animation:dialogEnter .24s var(--ease-out) both;overflow:hidden}.floating-shopping-list__panel[hidden]{display:none}.floating-shopping-list__panel .shopping-list{max-height:inherit;border:0;margin:0;overflow-y:auto}.floating-shopping-list__panel .email-form{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}.floating-shopping-list__panel .email-control{grid-column:1/-1}.floating-shopping-list__panel .primary-button,.floating-shopping-list__panel .secondary-button{width:100%;padding:0 .75rem}.floating-shopping-list__trigger{border:1px solid var(--black);background:var(--black);max-width:calc(100vw - 2rem);min-height:3.1rem;color:var(--paper);cursor:pointer;font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;transition:background .18s var(--ease-smooth), border-color .18s var(--ease-smooth), transform .18s var(--ease-out), box-shadow .18s var(--ease-out);border-radius:0;justify-content:center;align-items:center;gap:.65rem;padding:0 1rem;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 .85rem 2.3rem #00000038}.floating-shopping-list__trigger:hover{border-color:var(--primary-container);background:var(--primary-container);box-shadow:var(--shadow);transform:translateY(-2px)}.floating-shopping-list__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.floating-shopping-list__count{border:1px solid;border-radius:999px;flex:none;place-items:center;min-width:1.45rem;height:1.45rem;font-size:.68rem;line-height:1;display:inline-grid}.shopper-dialog{border:1px solid var(--black);background:var(--paper);width:min(31rem,100vw - 2rem);max-width:none;color:var(--ink);box-shadow:var(--shadow);animation:dialogEnter .22s var(--ease-out) both;padding:0}.shopper-dialog::backdrop{background:#00000073}.shopper-dialog__header{border-bottom:1px solid var(--outline-variant);background:var(--surface-container-low);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.shopper-dialog__header .breadcrumb{margin-bottom:.55rem}.shopper-dialog__header h2{font-family:var(--font-extended);margin:0;font-size:1.45rem;line-height:1.05}.shopper-login,.shopper-account{gap:1rem;padding:1.25rem;display:grid}.shopper-login>svg{color:var(--primary)}.shopper-login p,.shopper-account p{color:var(--on-surface-variant);margin:0;line-height:1.45}.shopper-login__notice{font-weight:600;color:var(--ink)!important}.shopper-login label{font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;gap:.45rem;font-size:.72rem;font-weight:600;display:grid}.shopper-login input{border:1px solid var(--outline-variant);background:var(--paper);min-height:2.7rem;font-family:var(--font-sans);letter-spacing:0;text-transform:none;padding:0 .9rem;font-size:.95rem;font-weight:400}.shopper-account__identity{font-family:var(--font-extended);overflow-wrap:anywhere;font-weight:600;color:var(--ink)!important}.shopper-account__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.shopper-account__stats span{border:1px solid var(--outline-variant);min-height:2.7rem;font-family:var(--font-extended);letter-spacing:.08em;text-align:center;text-transform:uppercase;justify-content:center;align-items:center;gap:.45rem;font-size:.72rem;font-weight:600;line-height:1.1;display:inline-flex}.shopper-account__actions{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.result-count{font-family:var(--font-extended);letter-spacing:.1em;text-align:right;text-transform:uppercase;align-self:center;margin:0;font-size:.72rem;font-weight:600}.active-filters{border-top:1px solid var(--outline-variant);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8rem 1rem;margin:-.75rem 0 2rem;padding-top:1rem;display:grid}.active-filters>span{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c9e;padding-top:.52rem;font-size:.68rem;font-weight:600;line-height:1}.active-filters__list{flex-wrap:wrap;gap:.5rem;min-width:0;display:flex}.active-filter-chip,.active-filter-clear{min-height:2rem;font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-content:center;align-items:center;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}.active-filter-chip{border:1px solid var(--black);background:var(--paper);gap:.45rem;max-width:min(100%,24rem);padding:0 .72rem}.active-filter-chip:hover,.active-filter-clear:hover{background:var(--black);color:var(--paper)}.active-filter-chip svg{flex:none}.active-filter-clear{color:var(--on-surface-variant);text-underline-offset:.35em;background:0 0;border:0;padding:0;text-decoration:underline}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:clamp(2rem,3vw,3.5rem) clamp(1rem,2vw,1.75rem);max-width:none;margin:0 auto;display:grid}.product-card{min-width:0;transition:transform .26s var(--ease-out), border-color .22s var(--ease-smooth), background .22s var(--ease-smooth), box-shadow .26s var(--ease-out);animation:pageRise .62s var(--ease-out) both;background:#fff0;border:1px solid #0000;grid-template-rows:auto auto;align-content:start;padding:.75rem;display:grid;position:relative}.product-card:nth-child(2n){animation-delay:40ms}.product-card:nth-child(3n){animation-delay:80ms}.product-card:nth-child(4n){animation-delay:.12s}.product-card:hover,.product-card:focus-within{z-index:2;border-color:var(--outline-variant);box-shadow:var(--shadow-soft);background:#ffffffb8;transform:translateY(-.35rem)}.product-card__button{width:100%;min-width:0;height:auto;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:auto auto;padding:0;text-decoration:none;display:grid}.product-card__button:hover h3,.product-card__button:focus-visible h3{text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:1px}.product-card__button:hover .product-media,.product-card__button:focus-visible .product-media{outline:1px solid var(--black)}.product-card__body{background:0 0;gap:.3rem;margin:0;padding:.9rem 0 0;display:grid;position:relative}.product-card__name{font-family:var(--font-extended);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.9rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.product-card__vendor{color:#1a1c1c85;text-overflow:ellipsis;white-space:nowrap;transition:color .18s var(--ease-smooth);margin:0;font-size:.78rem;line-height:1.2;overflow:hidden}.product-card__description{display:none}.product-card__meta{align-items:baseline;gap:.5rem;padding-top:.25rem;display:flex}.product-card__meta strong{font-family:var(--font-extended);font-size:.9rem;font-weight:500;line-height:1}.product-card__actions{opacity:.94;transition:transform .22s var(--ease-out), opacity .22s var(--ease-out);align-items:stretch;gap:.5rem;margin-top:.75rem;display:flex;transform:translateY(.15rem)}.product-card:hover .product-card__actions,.product-card:focus-within .product-card__actions{opacity:1;transform:translateY(0)}.product-card .product-media{aspect-ratio:1}.favorite-button{border:1px solid var(--outline-variant);color:#1a1c1c73;cursor:pointer;width:2.45rem;min-height:2.45rem;transition:border-color .16s var(--ease-smooth), background .16s var(--ease-smooth), color .16s var(--ease-smooth), transform .18s var(--ease-out);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.favorite-button:hover{border-color:var(--black);color:var(--black);transform:translateY(-1px)}.favorite-button.is-active{color:#c0392b;background:#fdf2f1;border-color:#c0392b}.favorite-button.is-active svg{fill:currentColor}.add-list-button{border:1px solid var(--outline-variant);width:100%;min-height:2.45rem;color:var(--ink);font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .16s var(--ease-smooth), background .16s var(--ease-smooth), color .16s var(--ease-smooth), transform .18s var(--ease-out);background:0 0;justify-content:center;align-items:center;gap:.45rem;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}.add-list-button:hover{border-color:var(--black);background:var(--black);color:var(--paper);transform:translateY(-1px)}.add-list-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.product-media{aspect-ratio:4/5;background:var(--surface-container);transition:filter .22s var(--ease-smooth), transform .26s var(--ease-out), background .22s var(--ease-smooth);isolation:isolate;border:0;place-items:center;margin:0;display:grid;position:relative;overflow:hidden}.product-media:before{content:"";z-index:-1;opacity:0;transition:opacity .22s var(--ease-smooth);background:linear-gradient(18.9deg,#8995d28c 0%,#ffcfd88c 100%);position:absolute;inset:0}.product-card:hover .product-media:before,.product-card:focus-within .product-media:before{opacity:1}.product-media img{object-fit:cover;width:100%;height:100%;transition:transform .42s var(--ease-out), filter .22s var(--ease-smooth)}.product-card:hover .product-media img,.product-card:focus-within .product-media img{transform:scale(1.045)}.product-media--image{background:var(--surface-container)}.product-media--image img{object-fit:contain;filter:drop-shadow(0 1rem 1.8rem #111c241f);width:54%;height:54%;padding:0}.product-media span{max-width:88%;font-family:var(--font-extended);letter-spacing:-.03em;text-align:center;text-transform:uppercase;overflow-wrap:anywhere;color:#1a1c1c26;font-size:4.8rem;font-weight:700;line-height:.88}.product-media figcaption{font-family:var(--font-extended);text-transform:uppercase;color:#111c248c;font-size:.68rem;position:absolute;bottom:.75rem;left:.75rem}.product-media--pink{background:#f5f1f1}.product-media--green{background:#f1f5f1}.product-media--yellow{background:var(--surface-container-low)}.product-media--blue{background:var(--surface-container)}.product-media--orange{background:var(--surface-container-high)}.load-error,.empty-state{border:1px solid var(--black);background:var(--paper);max-width:118rem;margin:0 auto;padding:1.4rem}.load-error{color:#802424}.empty-state{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.empty-state p{margin-bottom:0}.catalog-main .empty-state{max-width:none;margin:0}.external-overlay-dialog{border:1px solid var(--black);background:var(--paper);width:min(88rem,100vw - 2rem);max-width:none;height:min(54rem,100vh - 2rem);max-height:none;color:var(--ink);box-shadow:var(--shadow);animation:dialogEnter .24s var(--ease-out) both;padding:0;overflow:hidden}.external-overlay-dialog::backdrop{background:#0000008c}.external-overlay-layout{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.external-overlay-bar{border-bottom:1px solid var(--black);background:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem 1.5rem;padding:1.25rem 1.5rem;display:flex}.external-overlay-copy{gap:.65rem;min-width:0;display:grid}.external-overlay-copy .breadcrumb{margin-bottom:0}.external-overlay-copy h2{font-family:var(--font-extended);margin-bottom:0;font-size:clamp(1.5rem,2vw,2rem);line-height:1}.external-overlay-copy p:not(.breadcrumb){color:#111c24b8;max-width:40rem;margin-bottom:0;line-height:1.45}.external-overlay-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.external-overlay-frame{background:var(--surface-container-low);min-height:0}.external-overlay-frame iframe{background:var(--paper);border:0;width:100%;height:100%;display:block}.external-overlay-panel{background:var(--surface-container-low);min-height:0;padding:1.5rem;overflow-y:auto}.membership-option-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;display:grid}.membership-option-card{border:1px solid var(--black);background:var(--paper);gap:1rem;padding:1.25rem;display:grid}.membership-option-copy{gap:.45rem;display:grid}.membership-option-copy h3{font-family:var(--font-extended);margin-bottom:0;font-size:1.25rem;line-height:1.05}.membership-option-price,.membership-option-regular,.membership-option-detail,.membership-option-gift p{margin-bottom:0}.membership-option-price{font-family:var(--font-extended);font-size:1.2rem;font-weight:700}.membership-option-regular,.membership-option-detail{color:#111c24b8;line-height:1.45}.membership-option-card .primary-button{width:100%}.membership-option-gift{border:1px solid var(--black);background:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-top:1rem;padding:1rem 1.25rem;display:flex}.membership-option-gift p{font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:600}.membership-gift-link{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.product-dialog{border:1px solid var(--black);background:var(--paper);width:min(64rem,100vw - 2rem);max-height:min(48rem,100vh - 2rem);color:var(--ink);box-shadow:var(--shadow);animation:dialogEnter .24s var(--ease-out) both;padding:0;overflow:hidden}.product-dialog::backdrop{background:#00000073}.dialog-layout{grid-template-columns:minmax(18rem,.9fr) minmax(0,1.1fr);gap:0;min-height:min(48rem,100vh - 2rem);display:grid;position:relative}.dialog-layout .product-media{border:0;border-right:1px solid var(--black);min-height:100%}.dialog-content{align-content:start;gap:1rem;min-width:0;padding:2rem;display:grid;overflow-y:auto}.dialog-content h2{font-family:var(--font-extended);overflow-wrap:break-word;margin-bottom:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;line-height:1.1}.dialog-content p:not(.eyebrow){color:#111c24c7;line-height:1.35}.icon-button{border:1px solid var(--black);background:var(--paper);cursor:pointer;border-radius:0;place-items:center;width:2.75rem;height:2.75rem;display:inline-grid}.icon-button:hover{background:var(--surface-container-low)}.dialog-close{z-index:2;position:absolute;top:1rem;right:1rem}.detail-list{background:var(--black);border:1px solid var(--black);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.detail-list div{background:var(--surface-container-low);min-width:0;padding:1rem}.detail-list div:nth-child(2),.detail-list div:nth-child(3){background:var(--surface-container)}.detail-list dt{font-family:var(--font-extended);text-transform:uppercase;margin-bottom:.4rem}.detail-list dd{overflow-wrap:anywhere;margin:0;font-size:1.4rem}.status-row{flex-wrap:wrap;gap:.5rem;display:flex}.status-pill{color:#111c2494;border:1px solid #111c2440;align-items:center;gap:.35rem;padding:.45rem .6rem;display:inline-flex}.status-pill--active{border-color:var(--black);background:var(--yellow-soft);color:var(--ink)}.dialog-actions{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=980px){.shop-header{grid-template-columns:minmax(0,1fr) auto;gap:.85rem 1rem;min-height:auto;padding:.85rem 1.5rem}.shop-nav{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;gap:1.35rem;padding-bottom:.15rem;overflow-x:auto}.shop-nav::-webkit-scrollbar{display:none}.shop-landing{grid-template-columns:1fr;min-height:clamp(34rem,74svh,42rem)}.catalog-intro{grid-template-columns:1fr;align-items:start}.catalog-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-layout{grid-template-columns:1fr}.catalog-sidebar{grid-template-columns:repeat(3,minmax(0,1fr));padding:1rem;position:static}.summary-band{grid-template-columns:repeat(2,minmax(0,1fr))}.coffee-coupon{grid-template-columns:auto minmax(0,1fr)}.coffee-coupon__code{grid-column:1/-1}.visit-ticket{grid-template-columns:auto minmax(0,1fr)}.visit-ticket__actions{grid-column:1/-1}.toolbar{grid-template-columns:1fr 1fr;position:static}.active-filters{grid-template-columns:1fr}.shopping-list__item{grid-template-columns:minmax(0,1fr) auto}.shopping-list__line-total{text-align:left;grid-column:1/-1}.email-form{grid-template-columns:1fr auto auto auto}.product-page__layout{grid-template-columns:1fr}.product-page__media{position:static}.product-page__media .product-media{aspect-ratio:4/3;min-height:unset;border-right:0;border-bottom:1px solid var(--outline-variant)}.product-page__content{padding:2rem 0 0}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.25rem}.search-control{grid-column:1/-1}.dialog-layout{grid-template-columns:1fr}.dialog-layout .product-media{border-right:0;border-bottom:1px solid var(--black);max-height:24rem}}@media (width<=760px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.shop-header{grid-template-columns:1fr;gap:.75rem;padding:1rem}.shop-logo{grid-row:1}.shop-nav{grid-area:3/1;gap:1rem;padding-bottom:.2rem}.shop-actions>svg{display:none}.shop-actions{scrollbar-width:none;scroll-snap-type:x proximity;grid-row:2;justify-content:flex-start;gap:.55rem;width:100%;padding-bottom:.15rem;overflow-x:auto}.shop-actions::-webkit-scrollbar{display:none}.language-switcher>svg{display:none}.language-switcher button{min-width:2rem;padding:0 .45rem}.shopping-list-link,.ticket-link,.member-link,.account-link,.dashboard-link{scroll-snap-align:start;min-height:2.2rem;padding:0 .7rem}.ticket-link span,.member-link span,.account-link span,.dashboard-link{display:none}.shop-landing{grid-template-columns:1fr;min-height:calc(100svh - 10rem);margin-top:0;padding:5.5rem 1rem 2rem}.shop-landing h1{text-wrap:normal;overflow-wrap:normal;max-width:10.2ch;font-size:clamp(2.45rem,10.4vw,2.85rem)}.shop-landing p:not(.breadcrumb){max-width:26rem;font-size:1rem}.catalog-facts,.catalog-sidebar{grid-template-columns:1fr}.hero-actions{display:grid}.coffee-coupon{grid-template-columns:1fr;gap:0;padding:0 1rem}.coffee-coupon__mark{min-height:4.5rem}.coffee-coupon__copy,.coffee-coupon__code{border-top:0;border-left:1px solid var(--black)}.coffee-coupon h2{font-size:2rem}.coffee-coupon__code strong{font-size:1.55rem}.visit-ticket{grid-template-columns:1fr;gap:0;padding:0 1rem}.visit-ticket__mark{min-height:4.5rem}.visit-ticket__copy,.visit-ticket__actions{border-top:0;border-left:1px solid var(--black)}.visit-ticket h2{font-size:2rem}.visit-ticket__actions{min-width:0}.hero{min-height:35rem}.site-header{padding:1rem}.brand-mark span:first-child{font-size:2.8rem}.brand-mark span:last-child{max-width:7rem;font-size:.78rem}.site-nav{gap:.7rem;font-size:.95rem}.hero__content{min-height:29rem;padding:3rem 1rem 4rem}h1{font-size:4rem}.hero__copy{font-size:1.2rem}.summary-band,.toolbar{grid-template-columns:1fr}.active-filters{margin-top:-1rem}.active-filter-chip,.active-filter-clear{min-height:2.25rem}.shopping-list__header,.shopping-list__item,.email-form{grid-template-columns:1fr;display:grid}.shopping-list__header{align-items:start}.shopping-list__summary,.shopping-list__line-total{text-align:left}.shopping-list__header-actions{justify-content:space-between;width:100%}.shopping-list__controls{justify-content:flex-start}.email-form .primary-button,.email-form .secondary-button{width:100%}.product-page{padding:0 1rem 4rem}.catalog-section{padding:3.5rem 1rem 5rem}.floating-shopping-list{right:max(.75rem, env(safe-area-inset-right));bottom:max(.75rem, env(safe-area-inset-bottom))}.floating-shopping-list__panel{width:calc(100vw - 1.5rem);max-height:min(36rem,100vh - 6rem)}.floating-shopping-list__trigger{min-height:2.9rem;padding:0 .85rem}.floating-shopping-list__panel .email-form,.shopper-account__stats,.shopper-account__actions{grid-template-columns:1fr}.section-heading{gap:.75rem;display:grid}.section-heading h2{font-size:3.1rem}.product-grid{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:1.5rem 1rem}.product-card{padding:.55rem}.product-media--image img{width:50%;height:50%}.product-media span{font-size:4.4rem}.product-dialog{width:calc(100vw - 1rem)}.external-overlay-dialog{width:calc(100vw - 1rem);height:calc(100vh - 1rem)}.external-overlay-bar,.external-overlay-panel{padding:1rem}.external-overlay-actions{justify-content:space-between;width:100%}.membership-option-gift{align-items:flex-start}.dialog-content{padding:1.25rem}.dialog-content h2{font-size:1.5rem}.detail-list{grid-template-columns:1fr}}@media (width<=420px){.floating-shopping-list__label{display:none}}.dashboard{max-width:118rem;margin:0 auto;padding:0 2.5rem 8rem}.dashboard__nav{border-bottom:1px solid var(--outline-variant);align-items:center;gap:1.5rem;margin-bottom:2.5rem;padding:1.75rem 0 2rem;display:flex}.dashboard__title{font-family:var(--font-extended);flex:1;margin:0;font-size:1.4rem;font-weight:700}.dashboard__refresh{margin-left:auto}.dashboard__persistence{border:1px solid var(--outline-variant);font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:.5rem .65rem;font-size:.64rem;font-weight:600}.dashboard__persistence--mongodb{color:#2c622c;background:#f0f9f0;border-color:#2c622c47}.dashboard__persistence--memory,.dashboard__persistence--local{color:#9c5a00;background:#fff5e9;border-color:#9c5a0047}.dashboard__persistence--disabled,.dashboard__persistence--unavailable{color:#c0392b;background:#fdf2f1;border-color:#c0392b47}.dashboard__controls{flex-wrap:wrap;align-items:stretch;gap:.75rem;margin:-.75rem 0 1.25rem;display:flex}.dashboard__range-control,.dashboard__date-control,.dashboard__active-filter{border:1px solid var(--outline-variant);background:var(--surface-container);align-items:center;gap:.7rem;min-height:3rem;padding:0 1rem;display:flex}.dashboard__range-control{min-width:min(100%,18rem)}.dashboard__range-control>span,.dashboard__date-control>span{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c9e;white-space:nowrap;align-items:center;gap:.4rem;font-size:.66rem;font-weight:600;display:inline-flex}.dashboard__range-control select,.dashboard__date-control input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0}.dashboard__range-control select:focus,.dashboard__date-control input:focus{outline:0}.dashboard__active-filter{margin-left:auto}.dashboard__active-filter span,.dashboard__active-filter strong{font-family:var(--font-extended);font-size:.72rem}.dashboard__active-filter span{color:#1a1c1c99}.dashboard__active-filter strong{color:var(--black)}.dashboard__active-filter button{width:1.8rem;height:1.8rem;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;margin-right:-.35rem;display:inline-grid}.dashboard__active-filter button:hover,.dashboard__active-filter button:focus-visible{border-color:var(--black);background:var(--black);color:var(--paper)}.dashboard__summary{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;margin-bottom:1rem;display:grid}.dashboard__stat{border:1px solid var(--outline-variant);background:var(--surface-container);color:var(--ink);text-align:left;flex-direction:column;gap:.35rem;padding:1.25rem 1.5rem;display:flex}.dashboard__stat--button{cursor:pointer;transition:transform .18s var(--ease-out), border-color .18s var(--ease-smooth), background .18s var(--ease-smooth), box-shadow .18s var(--ease-out)}.dashboard__stat--button:hover,.dashboard__stat--button:focus-visible,.dashboard__stat--button.is-active{border-color:var(--black);background:var(--paper)}.dashboard__stat--button:hover,.dashboard__stat--button:focus-visible{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.dashboard__stat--button.is-active{box-shadow:inset 0 -.22rem 0 var(--black)}.dashboard__stat--total{border-color:var(--black)}.dashboard__stat-label{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c99;font-size:.68rem;font-weight:600}.dashboard__stat-count{font-family:var(--font-extended);font-size:2.5rem;font-weight:700;line-height:1}.dashboard__stat-share{color:#1a1c1c94;font-size:.76rem}.dashboard__chart-grid{grid-template-columns:minmax(24rem,1.35fr) repeat(2,minmax(17rem,1fr));align-items:start;gap:1rem;margin-bottom:3rem;display:grid}.dashboard__chart-panel{border:1px solid var(--outline-variant);background:var(--surface-container);flex-direction:column;min-height:22rem;padding:1.25rem;display:flex}.dashboard__chart-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.dashboard__chart-header h2{font-family:var(--font-extended);text-align:right;margin:0;font-size:1rem;font-weight:700}.dashboard__eyebrow svg{vertical-align:-.18em}.analytics-trend-chart{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:.45rem;min-height:16rem;padding:.25rem .15rem 0;display:grid}.analytics-trend-chart__bucket{grid-template-rows:1.2rem 1fr 2.35rem;align-items:end;gap:.35rem;min-width:0;height:100%;display:grid}.analytics-trend-chart__value{font-family:var(--font-extended);text-align:center;color:#1a1c1c94;font-size:.72rem}.analytics-trend-chart__bar{background:#0b6774;align-self:end;width:100%;min-height:.35rem;display:block}.analytics-trend-chart__label{color:#1a1c1c94;text-align:center;overflow-wrap:anywhere;align-self:start;font-size:.64rem;line-height:1.15}.analytics-breakdown{gap:.7rem;display:grid}.analytics-breakdown__row{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-bottom:1px solid #1a1c1c1f;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:.35rem .75rem;padding:0 0 .7rem;display:grid}.analytics-breakdown__row:last-child{border-bottom:0;padding-bottom:0}.analytics-breakdown__row--button{cursor:pointer}.analytics-breakdown__row--button:hover .analytics-breakdown__label,.analytics-breakdown__row--button:focus-visible .analytics-breakdown__label,.analytics-breakdown__row--button.is-active .analytics-breakdown__label{text-underline-offset:.28em;text-decoration:underline}.analytics-breakdown__label{overflow-wrap:anywhere;text-transform:capitalize;min-width:0}.analytics-breakdown strong{font-family:var(--font-extended)}.analytics-breakdown small{color:#1a1c1c94;grid-column:2;font-size:.76rem}.analytics-breakdown__track{background:#1a1c1c1a;grid-column:1;height:.5rem;overflow:hidden}.analytics-breakdown__track span{background:#2c622c;height:100%;display:block}.dashboard__members{margin-bottom:3rem}.dashboard__section-header{border-bottom:2px solid var(--black);justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.dashboard__section-header h2,.dashboard__member-panel h3{font-family:var(--font-extended);margin:0;font-weight:700}.dashboard__section-header h2{font-size:1.1rem}.dashboard__member-panel h3{font-size:.95rem}.dashboard__eyebrow,.dashboard__section-total{font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c8c;margin:0;font-size:.68rem;font-weight:600}.dashboard__section-total{white-space:nowrap}.dashboard__member-stats{grid-template-columns:repeat(4,minmax(11rem,1fr));gap:1rem;margin-bottom:1rem;display:grid}.dashboard__member-grid{grid-template-columns:minmax(18rem,1.3fr) minmax(14rem,.75fr) minmax(18rem,1fr);gap:1rem;display:grid}.dashboard__member-panel{border:1px solid var(--outline-variant);background:var(--surface-container);padding:1.25rem}.member-plan-list,.member-source-list,.member-action-list{gap:.8rem;margin-top:1rem;display:grid}.member-plan-row{grid-template-columns:minmax(0,1fr) 3rem;align-items:center;gap:.45rem .8rem;display:grid}.member-plan-row__label,.member-source-row,.member-action-row{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.member-plan-row__label span,.member-source-row span,.member-action-row span:not(.event-badge){overflow-wrap:anywhere;min-width:0}.member-plan-row__label strong,.member-source-row strong{font-family:var(--font-extended)}.member-plan-bar{background:#1a1c1c1a;grid-column:1;height:.55rem;overflow:hidden}.member-plan-bar span{background:#2c622c;height:100%;display:block}.member-plan-row small{color:#1a1c1c94;grid-area:2/2;font-size:.76rem}.member-source-row,.member-action-row{text-transform:capitalize;border-bottom:1px solid #1a1c1c1f;padding-bottom:.65rem}.member-source-row:last-child,.member-action-row:last-child{border-bottom:0;padding-bottom:0}.member-action-row{grid-template-columns:minmax(8.5rem,max-content) minmax(8rem,1fr);align-items:flex-start;display:grid}.member-action-row time{color:#1a1c1c8c;white-space:nowrap;grid-column:2;font-size:.78rem}.dashboard__events-header{border-bottom:2px solid var(--black);justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.dashboard__events h2,.dashboard__events-header h2{font-family:var(--font-extended);margin:0 0 1.25rem;font-size:1.1rem;font-weight:700}.dashboard__events-header h2{margin:0}.dashboard__empty{color:#1a1c1c8c;padding:2rem 0}.dashboard__empty--compact{padding:1rem 0 0}.dashboard__table{border-collapse:collapse;width:100%;font-size:.88rem}.dashboard__table th{text-align:left;border-bottom:2px solid var(--black);font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;padding:.6rem .8rem;font-size:.68rem;font-weight:600}.dashboard__table td{border-bottom:1px solid var(--outline-variant);vertical-align:top;padding:.55rem .8rem}.dashboard__table tbody tr:hover td{background:var(--surface-container)}.dashboard__ts{white-space:nowrap;color:#1a1c1c8c;font-size:.8rem}.dashboard__data{color:#1a1c1cb8;font-size:.82rem}.event-badge{font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;background:#1a1c1c12;padding:.2rem .5rem;font-size:.64rem;font-weight:600;display:inline-block}.event-badge--add_to_wishlist{color:#c0392b;background:#fdf2f1}.event-badge--share_wishlist{color:#5c2db2;background:#f6f2ff}.event-badge--favorite{color:#c0392b;background:#fdf2f1}.event-badge--unfavorite{color:#9c5a00;background:#fff5e9}.event-badge--buy_tickets{color:#2c622c;background:#f0f9f0}.event-badge--ticket_app_click{color:#0b6774;background:#e7f6f8}.event-badge--become_member{color:#1a4bcc;background:#eef4ff}.event-badge--membership_plan_select{color:#5c2db2;background:#f6f2ff}.event-badge--membership_gift_select{color:#9c5a00;background:#fff5e9}.event-badge--product_view{background:var(--surface-container);color:var(--ink)}.event-badge--search{color:#1a4bcc;background:#eef4ff}.event-badge--category_filter{color:#0b6774;background:#e7f6f8}.event-badge--plan_visit{color:#2c622c;background:#f0f9f0}@media (width<=980px){.dashboard__chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard__chart-panel:first-child{grid-column:1/-1}.dashboard__member-stats,.dashboard__member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard__member-panel:last-child{grid-column:1/-1}}@media (width<=640px){.dashboard{padding:0 1.25rem 6rem}.dashboard__nav,.dashboard__section-header,.dashboard__events-header{flex-direction:column;align-items:flex-start}.dashboard__controls,.dashboard__range-control,.dashboard__date-control,.dashboard__active-filter{width:100%}.dashboard__active-filter{justify-content:space-between;margin-left:0}.dashboard__section-total{white-space:normal}.dashboard__summary,.dashboard__chart-grid{grid-template-columns:1fr}.dashboard__chart-panel:first-child{grid-column:auto}.dashboard__member-stats,.dashboard__member-grid{grid-template-columns:1fr}.dashboard__member-panel:last-child{grid-column:auto}.member-action-row{grid-template-columns:1fr}.member-action-row time{white-space:normal;grid-column:auto}.dashboard__table,.dashboard__table tbody,.dashboard__table tr,.dashboard__table td{width:100%;display:block}.dashboard__table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dashboard__table tr{border-bottom:1px solid var(--outline-variant);padding:.85rem 0}.dashboard__table td{border-bottom:0;padding:.22rem 0}.dashboard__table td:before{content:attr(data-label);font-family:var(--font-extended);letter-spacing:.1em;text-transform:uppercase;color:#1a1c1c85;margin-bottom:.12rem;font-size:.58rem;font-weight:600;display:block}.dashboard__table tbody tr:hover td{background:0 0}.dashboard__ts{white-space:normal}}.admin-panel{max-width:118rem;margin:0 auto;padding:0 2.5rem 8rem}.admin-panel--login{max-width:48rem}.admin-login{border:1px solid var(--outline-variant);background:var(--paper);gap:.9rem;max-width:28rem;padding:1.5rem;display:grid}.admin-login label,.admin-grid label{font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;gap:.45rem;font-size:.68rem;font-weight:600;display:grid}.admin-login input,.admin-grid input,.admin-grid textarea,.admin-section-header textarea{border:1px solid var(--outline-variant);background:var(--paper);width:100%;min-width:0;font:inherit;padding:.7rem .8rem}.admin-grid textarea,.admin-section-header textarea{resize:vertical;min-height:6rem}.admin-toolbar-actions,.admin-editor__actions,.admin-job-actions,.admin-candidate__actions{flex-wrap:wrap;gap:.65rem;display:flex}.admin-upload-control{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.admin-upload-control input[type=file]{max-width:100%}.admin-toolbar-meta{color:#1a1c1cad;flex-wrap:wrap;gap:.75rem 1.25rem;margin:-.35rem 0 1.25rem;display:flex}.admin-view-tabs{border:1px solid var(--outline-variant);background:var(--paper);gap:.4rem;margin:0 0 1.5rem;padding:.3rem;display:inline-flex}.admin-view-tab{font:inherit;color:#1a1c1cb8;cursor:pointer;background:0 0;border:0;padding:.65rem .9rem}.admin-view-tab.is-active{background:var(--surface-container-low);color:var(--ink)}.admin-status{border:1px solid var(--outline-variant);margin:-1.25rem 0 1.5rem;padding:.85rem 1rem}.admin-status--success{background:var(--green-soft)}.admin-status--error{color:#9f1d12;background:#fdf2f1}.admin-layout{grid-template-columns:minmax(17rem,.32fr) minmax(0,1fr);align-items:start;gap:2rem;display:grid}.admin-products{gap:1rem;display:grid;position:sticky;top:6rem}.admin-search{background:var(--paper)}.admin-product-list{border:1px solid var(--outline-variant);background:var(--paper);max-height:calc(100vh - 12rem);display:grid;overflow:auto}.admin-sync-runs,.admin-change-list{border:1px solid var(--outline-variant);background:var(--paper);display:grid}.admin-product-row{border:0;border-bottom:1px solid var(--outline-variant);text-align:left;cursor:pointer;background:0 0;gap:.35rem;width:100%;padding:.85rem 1rem;display:grid}.admin-product-row:hover,.admin-product-row.is-active{background:var(--surface-container-low)}.admin-product-row span{font-weight:600}.admin-product-row small{color:#1a1c1c99}.admin-change-row{border:0;border-bottom:1px solid var(--outline-variant);text-align:left;cursor:pointer;background:0 0;gap:.35rem;width:100%;padding:.85rem 1rem;display:grid}.admin-change-row:hover,.admin-change-row.is-active{background:var(--surface-container-low)}.admin-change-row span{font-weight:600}.admin-change-row small{color:#1a1c1c99}.admin-editor{gap:1.5rem;display:grid}.admin-editor__header{border-bottom:1px solid var(--outline-variant);grid-template-columns:minmax(0,1fr) 9rem;align-items:stretch;gap:1.5rem;padding-bottom:1.5rem;display:grid}.admin-editor__header h2{font-family:var(--font-extended);margin:0 0 .5rem;font-size:clamp(1.8rem,3vw,3rem);line-height:1}.admin-current-image{aspect-ratio:1;border:1px solid var(--outline-variant);background:var(--surface-container-low);place-items:center;display:grid}.admin-current-image img{object-fit:contain;width:100%;height:100%}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.admin-grid__wide{grid-column:1/-1}.admin-checks{border:1px solid var(--outline-variant);background:var(--surface-container-low);flex-wrap:wrap;gap:.9rem 1.35rem;padding:1rem;display:flex}.admin-images,.admin-salesforce{border-top:1px solid var(--outline-variant);gap:1rem;margin-top:1rem;padding-top:1.5rem;display:grid}.admin-section-header{grid-template-columns:minmax(0,1fr) minmax(16rem,.55fr);align-items:start;gap:1rem;display:grid}.admin-section-header h3,.admin-jobs h4{font-family:var(--font-extended);margin:0;font-size:1.2rem}.admin-section-meta{color:#1a1c1cad;justify-items:end;gap:.35rem;display:grid}.admin-sync-controls{gap:.8rem;display:grid}.admin-select{display:grid}.admin-select select{border:1px solid var(--outline-variant);background:var(--paper);width:100%;min-width:0;font:inherit;padding:.7rem .8rem}.admin-candidates{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;display:grid}.admin-candidate{border:1px solid var(--outline-variant);background:var(--paper);gap:.9rem;padding:1rem;display:grid}.admin-candidate img{aspect-ratio:1;object-fit:contain;background:var(--surface-container-low);width:100%}.admin-candidate strong,.admin-candidate span,.admin-candidate small,.admin-candidate a{display:block}.admin-candidate span{font-family:var(--font-extended);letter-spacing:.08em;text-transform:uppercase;color:#1a1c1c9e;margin:.3rem 0;font-size:.68rem}.admin-candidate p,.admin-jobs p{color:#1a1c1cb3;margin:.5rem 0 0;font-size:.82rem;line-height:1.45}.admin-upload-meta{color:#1a1c1cad}.admin-jobs{border:1px solid var(--outline-variant);background:var(--surface-container-low);gap:.5rem;padding:1rem;display:grid}.admin-salesforce-changes{gap:1rem;display:grid}.admin-sync-change{border:1px solid var(--outline-variant);background:var(--paper);gap:.9rem;padding:1rem;display:grid}.admin-sync-change__header{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;display:flex}.admin-change-fields{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.9rem;display:grid}.admin-change-field{border:1px solid var(--outline-variant);background:var(--surface-container-low);gap:.3rem;padding:.85rem;display:grid}.admin-change-field.is-masked{background:#fff9ea;border-color:#a36e0059}.admin-change-field small{color:#1a1c1cb8}@media (width<=980px){.admin-layout,.admin-editor__header,.admin-section-header{grid-template-columns:1fr}.admin-products{position:static}.admin-grid{grid-template-columns:1fr}.admin-section-meta{justify-items:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
