.mobile-actions{display:none}
.mobile-location-dialog{width:min(520px,100vw);max-width:100vw;max-height:85dvh;position:fixed;inset:auto 0 0;margin:0 auto;padding:22px 24px max(26px,env(safe-area-inset-bottom));border:0;border-radius:18px 18px 0 0;background:var(--cream);color:var(--ink);overflow-y:auto;overscroll-behavior:contain}
.mobile-location-dialog::backdrop{background:rgba(36,27,20,.48)}
.mobile-location-dialog[open]{animation:mobile-sheet-in .23s var(--ease)}
@keyframes mobile-sheet-in{from{opacity:.4;transform:translateY(25px)}to{opacity:1;transform:none}}
.mobile-sheet-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.mobile-sheet-close{width:44px;height:44px;display:grid;place-items:center;background:transparent;padding:10px;color:var(--ink)}
.mobile-sheet-close svg{width:24px;height:24px}
.mobile-location-dialog h2{font:44px/1 var(--serif);letter-spacing:-.035em;margin:8px 0 16px}
.mobile-location-dialog p{font-size:13px;line-height:1.7;color:var(--muted)}
.mobile-location-options{margin-top:25px;border-top:1px solid var(--line)}
.mobile-location-options button{display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px;text-align:left;padding:20px 0;min-height:110px;background:none;border-bottom:1px solid var(--line)}
.mobile-location-options button strong{display:block;font:32px/1.2 var(--serif);letter-spacing:-.02em;margin-bottom:8px}
.mobile-location-options button>span>span{font-size:13px;line-height:1.6;color:var(--muted)}
.mobile-choice-arrow{font-size:24px;color:var(--muted)}
.mobile-location-options button[aria-pressed=true] .mobile-choice-arrow{color:var(--ink)}
@media(max-width:680px){
 :root{--mobile-dock-height:88px;--mobile-safe:env(safe-area-inset-bottom,0px);--mobile-header-height:84px}
 html{scroll-padding-top:20px;scroll-padding-bottom:calc(var(--mobile-dock-height) + var(--mobile-safe) + 20px)}
 body:has(.mobile-actions){padding-bottom:calc(var(--mobile-dock-height) + var(--mobile-safe))}
 .mobile-actions:not([hidden]){position:fixed;display:block;inset:auto 0 0;z-index:30;height:calc(var(--mobile-dock-height) + var(--mobile-safe));padding:0 max(16px,env(safe-area-inset-left)) var(--mobile-safe);background:var(--cream);border-top:1px solid var(--line);box-shadow:0 -5px 25px rgba(36,27,20,.06)}
 .mobile-location-row{height:32px;border-bottom:1px solid var(--line);display:flex;align-items:center}
 .mobile-location{display:flex;align-items:center;gap:8px;min-height:44px;width:calc(100% - 110px);background:transparent;text-align:left;padding:0 4px;font-size:13px;font-weight:600;white-space:nowrap}
 .mobile-location-dot{width:5px;height:5px;border-radius:50%;background:var(--walnut);flex-shrink:0}
 .mobile-chevron{font-size:16px;margin-left:2px}
 .mobile-action-links{display:grid;grid-template-columns:repeat(4,1fr);height:56px;gap:3px;padding:8px 0 4px}
 .mobile-action-links a{display:flex;align-items:center;justify-content:center;gap:2px;flex-direction:column;font:500 13px/1.2 var(--sans);letter-spacing:.015em;min-height:44px;border-radius:3px}
 .mobile-action-links svg{width:20px;height:20px;flex-shrink:0}
 .mobile-action-links [data-mobile-action=order]{background:var(--walnut);color:var(--cream)}
 .mobile-action-links a[aria-current=page]:not([data-mobile-action=order]){background:var(--sand)}
 .mobile-action-links a:active{opacity:.7}
 #qxy-assistant-launcher{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(50px + var(--mobile-safe));z-index:31;min-height:44px;height:44px;width:auto;gap:6px;padding:0 0 0 8px;border:0;border-radius:0;box-shadow:none;background:transparent;color:var(--ink);font-size:13px;font-weight:500}
 #qxy-assistant-launcher svg{width:17px;height:17px}
 #qxy-assistant-launcher span{position:static;width:auto;height:auto;clip:auto;overflow:visible}
 #qxy-assistant-launcher:hover{transform:none;background:transparent}
 body:has(dialog[open]) .mobile-actions,body:has(dialog[open]) #qxy-assistant-launcher,.mobile-editing .mobile-actions,.mobile-editing #qxy-assistant-launcher{visibility:hidden;pointer-events:none}
 #qxy-assistant .qa-location select{font-size:16px;max-width:180px;min-height:44px}
 #qxy-assistant{height:min(740px,calc(100dvh - 16px - var(--mobile-safe)));max-height:calc(100dvh - 16px - var(--mobile-safe));bottom:max(8px,var(--mobile-safe));width:calc(100vw - 16px)}
 .header{height:84px;padding:14px 7vw}
 .hero{height:calc(100svh - var(--mobile-dock-height) - var(--mobile-safe));min-height:570px}
 .hero-content{padding-top:125px;padding-bottom:100px}
 .hero-content h1{margin:20px 0 25px}.hero-promise{font-size:32px}.hero-content .line-link{margin-top:22px}
 body:has(#qxy-assistant-launcher) .hero-bottom>span:last-child{display:none}
 .hero-bottom{bottom:24px}.video-toggle{bottom:20px;min-height:44px;right:7vw;font-size:9px}.scroll-cue{min-height:44px;gap:10px}
 .page-menu .menu-browser{padding-bottom:55px}
 .order-masthead{padding:112px 7vw 25px;display:block}
 .order-masthead>.eyebrow{font-size:9px;margin-bottom:16px}
 .page-order .order-masthead h1{font-size:48px;line-height:.95}
 .order-masthead .order-intro{font-size:13px;line-height:1.6;margin-top:17px}
 .order-city-map{display:none}
 .order-reminder{padding:14px 16px;margin-bottom:25px;gap:12px}
 .order-reminder strong{font-size:12px}.order-reminder p>span{font-size:11px}
 .order-location-grid{gap:24px}.order-location-meta{margin-bottom:10px}.order-location-meta .eyebrow{font-size:9px}
 .page-order .order-location h2{font-size:34px;scroll-margin-top:25px}
 .order-location address{margin-top:12px;font-size:14px}.order-location address>span{font-size:12px}
 .order-map{min-height:44px;margin:3px 0 12px}.order-continue{min-height:54px;font-size:12px}
 .order-address-check{font-size:10px;line-height:1.6}.order-location+.order-location{padding-top:24px}
 .order-location:has(h2:target){border-left:2px solid var(--walnut);padding-left:14px}
 .order-toast-note{font-size:12px;line-height:1.7}
 .site-footer{padding-bottom:30px}
}
@media(max-width:360px){.mobile-actions:not([hidden]){padding-left:12px;padding-right:12px}.mobile-location{font-size:12px;width:calc(100% - 104px)}#qxy-assistant-launcher{right:16px;font-size:12px}.mobile-location-dialog{padding-left:20px;padding-right:20px}.mobile-location-dialog h2{font-size:39px}.hero-content h1{font-size:132px}.hero-promise{font-size:30px}}
@media(prefers-reduced-motion:reduce){.mobile-location-dialog[open]{animation:none}}
