/* Refinement stays within PEACH's supplied palette, assets and typography. */
:root{--lab-duration:260ms;--lab-ease:cubic-bezier(.22,1,.36,1)}
.demo-bar{min-height:25px;justify-content:center;font-size:12px;padding:4px 14px}
.site-header{height:82px}.route-page,.menu-section{padding-top:24px}
.menu-section h1{font-size:clamp(34px,4.3vw,50px)}
.section-heading{margin-bottom:22px}.menu-toolbar{margin-bottom:18px}
.segments{position:relative;border-color:var(--theme-line);background:var(--surface-soft)}
.segments button{transition:background var(--lab-duration) var(--lab-ease),color 160ms}
.categories-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.categories-heading>span{font-size:13px;color:var(--theme-muted)}
.categories-toggle{display:inline-flex;align-items:center;gap:5px;background:transparent;border:0;padding:7px 0 7px 12px;min-height:40px;color:var(--theme-text);font-size:13px;font-weight:750}
.categories-toggle svg{width:16px;height:16px;transition:transform var(--lab-duration)}
.categories-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.category-list{position:relative;scrollbar-width:none;padding-bottom:4px;scroll-behavior:smooth}
.category-list::-webkit-scrollbar{display:none}
.category-list.is-expanded{flex-wrap:wrap;overflow:visible}
.category-list button{font-size:13px;padding:10px 17px;transition:background 160ms,color 160ms,border-color 160ms}
.result-status{margin:12px 0 18px;min-height:20px;font-size:13px}
.empty-state h2,.load-error h2{font-size:24px;line-height:1.25}
.search{transition:border-color 160ms,box-shadow 160ms}
.search-clear{flex:none;width:32px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--theme-muted);padding:5px}
.search-clear svg{width:17px;height:17px}.search-clear:hover{background:var(--surface-soft)}
.product-card{display:flex;flex-direction:column}.product-photo{aspect-ratio:1.17;flex-shrink:0}.product-copy{padding:12px 15px 15px;flex:1;display:flex;flex-direction:column}
.product-name{font-size:18px;min-height:38px}.product-bottom{display:block;margin-top:auto;padding-top:6px}
.product-bottom p{font-size:15px;min-height:24px;margin-bottom:10px}
.product-controls{min-height:44px}
.product-photo .photo-placeholder{min-height:0;height:100%;padding:12px;gap:6px}.product-photo .photo-placeholder strong{font-size:22px}
.add-button.add-button--wide{width:100%;height:44px;min-height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:750;font-size:14px;transition:background 160ms,transform 160ms}
.add-button--wide svg{width:18px;height:18px}.add-button--wide:active{transform:scale(.98)}
.product-quantity{display:grid;grid-template-columns:44px 1fr 44px;min-height:44px;border-radius:13px;background:var(--surface-soft);color:var(--theme-text);align-items:center}
.product-quantity button{width:44px;height:44px;border:0;background:transparent;border-radius:13px;font-size:21px;color:inherit}
.product-quantity button:hover{background:color-mix(in srgb,var(--theme-accent) 12%,transparent)}
.product-quantity span,.product-quantity output{text-align:center;font-weight:800;font-variant-numeric:tabular-nums}
.cart-remove{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:5px 0;border:0;background:transparent;color:var(--theme-muted);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.cart-remove:hover{color:var(--theme-text)}
.cart-item-quantity button{min-width:44px;min-height:44px}
.cart-page-row{padding:20px 0}.cart-page-summary{font-variant-numeric:tabular-nums}
.route-pending #page-content{opacity:.65;transition:opacity 120ms}
.route-pending .peach-nav-marker{opacity:.65}
.peach-nav-shell{width:min(430px,calc(100% - 24px))}
.peach-nav-surface{transition:--peach-cut 300ms var(--lab-ease)}
.peach-nav-marker{transition:left 300ms var(--lab-ease),opacity 150ms}








/* Reels fan: actions grow out of Menu, with Food raised in the centre. */
.peach-submenu{inset:auto 4px 104px;display:flex;justify-content:center;align-items:flex-end;gap:20px;width:auto;padding:0;margin:0;background:none;box-shadow:none;border-radius:0;pointer-events:none}
.peach-submenu button{width:84px;min-height:94px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 0 5px;border:0;background:transparent;border-radius:0;color:var(--theme-text);visibility:hidden;opacity:0;pointer-events:none;transform:translate(var(--from-x),70px) scale(.55);transition:transform 240ms var(--lab-ease),opacity 150ms,visibility 240ms}
.peach-submenu.is-open button{visibility:visible;opacity:1;pointer-events:auto;transform:translate(0,var(--lift)) scale(1);transition-duration:400ms,180ms,0ms}
.peach-submenu.is-open button:nth-child(2){transition-delay:30ms}.peach-submenu.is-open button:nth-child(3){transition-delay:60ms}
.peach-sub-icon{width:60px;height:60px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--peach-nav-paper);box-shadow:0 7px 20px var(--peach-nav-shadow);transition:background 140ms}
.peach-sub-icon svg{width:25px;height:25px;stroke-width:1.6}
.peach-sub-label{padding:3px 9px;background:var(--peach-nav-paper);border-radius:14px;font-size:13px;font-weight:650;box-shadow:0 3px 8px var(--peach-nav-shadow)}
.peach-submenu button:hover .peach-sub-icon{background:var(--surface-soft)}
.peach-submenu button:focus-visible{outline:none}.peach-submenu button:focus-visible .peach-sub-icon{outline:3px solid var(--theme-accent);outline-offset:4px}
.peach-nav [data-peach-nav=menu] .peach-nav-icon{position:relative;transition:transform 300ms var(--lab-ease),opacity 150ms}
.peach-nav [data-peach-nav=menu] .peach-nav-icon::before{content:"";position:absolute;width:60px;height:60px;top:50%;left:50%;transform:translate(-50%,-50%) scale(.6);opacity:0;border-radius:50%;background:var(--peach-nav-peach);box-shadow:0 7px 20px var(--peach-nav-shadow);transition:transform 300ms var(--lab-ease),opacity 150ms;z-index:-1}
.peach-nav [data-peach-nav=menu] .menu-close{display:none}
.menu-open .peach-nav [data-peach-nav=menu] .peach-nav-icon{opacity:1;transform:translateY(-22px);color:#353c2b}
.menu-open .peach-nav [data-peach-nav=menu] .peach-nav-icon::before{transform:translate(-50%,-50%) scale(1);opacity:1;outline:5px solid var(--theme-bg)}
.menu-open .peach-nav [data-peach-nav=menu] .menu-icon{display:none}.menu-open .peach-nav [data-peach-nav=menu] .menu-close{display:block}
.menu-open .peach-nav-marker{opacity:0}
.peach-nav-item.bulb-switch{font-size:12px}
.peach-nav-ready .toast{z-index:50;bottom:115px;pointer-events:none;max-width:min(460px,calc(100% - 28px));text-align:center}
body[data-page=home] .hero-video-controls{bottom:126px}
body[data-page=home] .hero-video .hero-copy{padding-bottom:32px}
@media(max-width:700px){.container{width:calc(100% - 32px)}.site-header{height:70px}.site-header .wordmark img{width:130px}.menu-section{padding-top:20px}.menu-section h1{font-size:36px}.section-heading{gap:6px;margin-bottom:20px}.menu-toolbar{gap:12px}.segments{width:100%;display:grid;grid-template-columns:1fr 1fr}.segments button{min-width:0}.category-list{margin-right:0;padding-right:0}.category-list button{font-size:12px;padding-inline:14px}.product-grid{gap:12px}.product-copy{padding:10px 11px 12px}.product-name{font-size:16px;min-height:40px}.product-bottom p{font-size:14px}.product-bottom p span{font-size:12px}.add-button.add-button--wide{font-size:13px}.search-clear{width:36px;min-height:40px}.peach-nav-shell{bottom:max(12px,env(safe-area-inset-bottom))}.route-intro{font-size:16px}.cart-page-row{grid-template-columns:58px minmax(0,1fr) auto;gap:10px}.cart-page-row img,.cart-item-placeholder{width:58px;height:72px}.cart-page-copy h2{font-size:16px}.cart-row-total{font-size:15px}.cart-item-quantity button{width:36px;min-height:44px}.cart-page-actions{gap:10px}.cart-page-actions .button{font-size:15px}body[data-page=home] .hero-video .hero-copy{padding-top:24px}body[data-page=home] .hero-video-controls{bottom:120px}.video-variants button{font-size:11px;padding-inline:10px}.video-pause{font-size:11px}}
@media(max-width:350px){.container{width:calc(100% - 24px)}.product-grid{gap:10px}.product-copy{padding-inline:9px}.add-button--wide svg{width:16px}.product-quantity{grid-template-columns:40px 1fr 40px}.product-quantity button{width:40px}.peach-submenu{gap:8px}.peach-submenu button{width:76px}.peach-nav-item{font-size:12px}}
@media(max-height:600px) and (orientation:landscape){.peach-submenu{bottom:90px;gap:16px}.peach-submenu button{min-height:82px}.peach-sub-icon{width:52px;height:52px}.menu-open .peach-nav [data-peach-nav=menu] .peach-nav-icon{transform:translateY(-15px)}}
@media(prefers-reduced-motion:reduce){.peach-submenu,.peach-nav-surface,.peach-nav-marker,.category-list,.add-button,.product-quantity button,.route-pending #page-content{transition:none;scroll-behavior:auto}}

/* Two-slot marker adapted from examples/dashboard-buttons; native category
   select adapted from examples/dashboard-v2, preserving the complete catalog. */
.menu-browse-controls{margin-top:26px;margin-bottom:0}
.menu-controlbar{display:flex;align-items:center;gap:10px}
.menu-controlbar .segments{--segment-index:0;display:grid;grid-template-columns:repeat(2,1fr);width:218px;flex:none;position:relative;padding:4px;border-radius:24px;min-height:48px}
.menu-controlbar .segment-marker{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/2);border-radius:20px;background:var(--theme-accent);transform:translateX(calc(var(--segment-index)*100%));transition:transform 320ms var(--lab-ease);pointer-events:none}
.menu-controlbar .segments button{position:relative;z-index:1;min-width:0;min-height:40px;padding:0 12px;font-size:14px;background:transparent;border:0;color:var(--theme-text);transition:color 180ms}
.menu-controlbar .segments button.active{background:transparent;color:var(--theme-on-accent)}
.menu-search-toggle{width:48px;min-height:48px;flex:none;border:1px solid var(--theme-line);border-radius:50%;display:grid;place-items:center;background:var(--input-bg);color:var(--theme-text);transition:background 180ms,border-color 180ms}
.menu-search-toggle svg{width:21px;height:21px}.menu-search-toggle[aria-expanded=true]{background:var(--theme-accent);color:var(--theme-on-accent)}
.category-picker{display:flex;align-items:center;gap:10px;margin:0 0 0 auto;min-width:0;font-size:12px;color:var(--theme-muted)}

.menu-search-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows 260ms var(--lab-ease),opacity 180ms}
.menu-search-panel.is-open{grid-template-rows:1fr;opacity:1}
.menu-search-inner{min-height:0;overflow:hidden}.menu-search-inner .search{margin-top:12px;width:100%;min-width:0}
.menu-browse-controls+.result-status{margin-top:14px}
@media(max-width:700px){.menu-controlbar{flex-wrap:wrap;gap:8px}.menu-controlbar .segments{width:218px}.category-picker{flex-basis:100%;margin:2px 0 0;justify-content:space-between}.menu-browse-controls{margin-top:26px}}
@media(prefers-reduced-motion:reduce){.menu-controlbar .segment-marker,.menu-search-panel{transition:none}}

/* Preserve the parallel version's top-right coffee area. */
.menu-intro .menu-browse-controls{width:100%;margin-top:0}
.menu-intro .menu-controlbar{flex-wrap:wrap}
.menu-intro .category-picker{flex-basis:100%;justify-content:space-between;margin:4px 0 0}
.menu-coffee #coffee-date,.menu-coffee .coffee-copy>p,.menu-coffee .coffee-copy .coffee-price{font-size:12px}
.menu-coffee .coffee-copy .button{min-height:44px;font-size:12px}
.menu-coffee .coffee-art small{font-size:12px}
.menu-search-inner .search:focus-within{outline:0;box-shadow:inset 0 0 0 2px var(--theme-accent)}
.menu-search-inner input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}

/* Disclosure/focus lifecycle from the local Liquid Menu library, adapted for
   a single category choice rather than navigation links. */
peach-category-picker{display:block;position:relative;flex:none;width:218px;max-width:75%;font-family:var(--font-body);color:var(--theme-text);z-index:8}
.category-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--theme-line);border-radius:23px;background:var(--input-bg);color:var(--theme-text);font:750 14px/1.3 var(--font-body);text-align:left;cursor:pointer}
.category-trigger>span{min-width:0}.category-trigger>svg{width:18px;height:18px;flex:none;transition:transform 220ms var(--lab-ease)}
peach-category-picker[expanded] .category-trigger{border-color:var(--theme-accent)}
peach-category-picker[expanded] .category-trigger>svg{transform:rotate(180deg)}
.category-panel{position:absolute;top:calc(100% + 9px);right:0;width:min(320px,calc(100vw - 32px));max-height:var(--category-height,360px);padding:10px;display:flex;flex-direction:column;border-radius:16px;background:var(--peach-nav-paper);box-shadow:0 12px 28px var(--peach-nav-shadow);visibility:hidden;opacity:0;transform:translateY(-5px) scale(.97);transform-origin:top right;transition:opacity 150ms,transform 220ms var(--lab-ease),visibility 220ms;pointer-events:none}
peach-category-picker[data-side=above] .category-panel{top:auto;bottom:calc(100% + 9px);transform-origin:bottom right;transform:translateY(5px) scale(.97)}
peach-category-picker[expanded] .category-panel{visibility:visible;opacity:1;transform:none;pointer-events:auto}
.category-panel-heading{font-size:12px;color:var(--theme-muted);margin:0;padding:2px 8px 10px;flex:none}
.category-options{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--theme-line) transparent}
.category-options button{position:relative;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:4px;border:0;border-radius:10px;padding:8px 9px;font:650 13px/1.3 var(--font-body);background:transparent;color:var(--theme-text);text-align:left;cursor:pointer}
.category-options button:hover{background:var(--surface-soft)}
.category-options button[aria-checked=true]{background:var(--theme-accent);color:var(--theme-on-accent)}
.category-check{flex:none;width:15px;height:15px;opacity:0}.category-check svg{width:15px;height:15px;stroke-width:2}
.category-options button[aria-checked=true] .category-check{opacity:1}
.category-trigger:focus-visible,.category-options button:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}
.category-options button[aria-checked=true]:focus-visible{outline-color:var(--theme-text);outline-offset:-3px}
.staff-entry{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid var(--theme-line);border-radius:12px;color:var(--theme-text);font-size:13px;font-weight:750;text-decoration:none;white-space:nowrap;flex:none}
.staff-entry svg{width:18px;height:18px}.staff-entry:hover{background:var(--surface-soft)}
body[data-page=home] .staff-entry,body[data-page=address] .staff-entry{border-color:#fff6e999;color:#fff6e9;background:#172016c9}
.site-header{gap:14px}.site-header nav{gap:20px;font-size:14px}
@media(max-width:900px){.site-header nav{display:none}.staff-entry{margin-left:auto}.site-header .bag-button{margin-left:0}.site-header .wordmark img{width:130px}}
@media(max-width:560px){.site-header{gap:8px}.site-header .wordmark img{width:104px}.staff-entry{gap:5px;font-size:12px;padding-inline:9px}.staff-entry svg{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.category-panel,.category-trigger>svg{transition:none}}

/* Customer-facing browse strip: section, search, categories in one row. */
.menu-intro .menu-controlbar{display:flex;flex-wrap:nowrap;gap:8px}
.menu-controlbar .segments{width:218px;max-width:218px;min-width:0;flex:1 1 168px}
peach-category-picker.category-icon-picker{width:48px;max-width:none;flex:0 0 48px}
.category-icon-picker .category-trigger{width:48px;height:48px;min-height:48px;padding:0;justify-content:center;border-radius:50%;background:var(--input-bg)}
.category-icon-picker .category-trigger>svg{width:21px;height:21px;stroke-width:1.7;stroke-linecap:round;transform:none!important}
.category-icon-picker[expanded] .category-trigger{background:var(--theme-accent);border-color:var(--theme-accent);color:var(--theme-on-accent)}
.category-selection-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.menu-intro{margin-bottom:14px}.menu-intro-controls>.section-heading{margin-bottom:18px}
body[data-page=home] .site-header nav,body[data-page=home] .site-header .staff-entry,body[data-page=home] .site-header .bag-button{display:none}
@media(max-width:700px){.menu-intro{gap:14px;margin-bottom:14px}.menu-intro-controls>.section-heading{margin-bottom:18px}.menu-search-toggle{flex:0 0 48px}}

/* Single guest logo, all navigation in the shared dock. */
.site-header{justify-content:center}
.site-header .wordmark img{width:140px}
html{scroll-padding-bottom:150px}
.product-controls{scroll-margin-bottom:150px}
@media(prefers-reduced-motion:reduce){.peach-submenu button,.peach-sub-icon,.peach-nav [data-peach-nav=menu] .peach-nav-icon,.peach-nav [data-peach-nav=menu] .peach-nav-icon::before{transition:none!important}}

/* Keep clear space below the single centered PEACH mark before menu navigation. */
/* The selected top region contains the centered logo alone. */
body[data-page=menu] .site-header{height:270px;align-items:flex-start;padding-top:24px}
#menu.menu-section{padding-top:clamp(16px,2vh,20px)}
