/* Shared interface refinement: deliberate hierarchy, quiet surfaces, clear selections. */
:root{--surface:#fff;--muted:#526154;--radius:8px;--soft-shadow:0 3px 14px #15392c08}
body{line-height:1.6}button,input,select,textarea{touch-action:manipulation}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:4px}button,a{transition:background-color .16s,color .16s,border-color .16s}h1,h2,h3{text-wrap:balance}.button{border-radius:5px}header{background:#f6f5eef5;backdrop-filter:blur(14px)}header nav a{font-weight:600}header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}.header-region select{border:1px solid #d5dacb;border-radius:30px;padding:9px 25px 9px 13px;background-color:#ffffffa6;font-size:12px;min-height:38px}.nav-secondary{display:none}
.hero{max-height:740px}.hero-copy{padding-top:11.5%}.hero h1{font-size:clamp(76px,8vw,116px)}.hero-actions{gap:12px}.hero-menu{font-weight:600;padding:12px 19px;min-height:44px}.hero p{max-width:38ch}.dish-selectors{gap:9px}.dish-selectors:before{font-size:12px}.dish-selector,.dish-selector:first-child{border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:#ffffff60}.dish-selector[aria-selected=true]{background:white;border-color:#8b9f87;box-shadow:var(--soft-shadow)}.dish-selector .thumb{border-radius:5px;object-fit:cover}.dish-selector small{color:var(--muted)}.featured{background:white;border-radius:var(--radius);box-shadow:var(--soft-shadow)}.featured>img{object-fit:cover;aspect-ratio:1.7}.feature-details p{color:var(--muted)}.places .place-photo,.company-photo>img,.jobs-photo,.about-visual{border-radius:var(--radius)}.places article:hover .place-photo>img{transform:none}.place-contact{font-weight:600}.places article>p,.places dl,.small-link{font-size:13px}.news-cover{border-radius:var(--radius)}.news-card h3{line-height:1.18}.news-meta{font-size:12px}.news-source{font-size:12px}
.region-tabs{border-radius:6px;padding:4px;background:#e8ebdf}.region-tabs button{font-size:13px;min-height:38px;border-radius:3px}.region-tabs button[aria-selected=true]{background:white;color:var(--ink);box-shadow:0 1px 5px #15392c15;font-weight:600}.category-tabs,.checkout-filters{gap:6px;flex-wrap:wrap;border:0;overflow:visible;padding:0}.category-tabs button,.checkout-filters button{font-size:12px;line-height:1.4;border:1px solid #d4daca;border-radius:30px;padding:9px 14px;min-height:38px;background:transparent;white-space:nowrap}.category-tabs button[aria-selected=true],.checkout-filters button[aria-pressed=true]{color:white;border-color:var(--ink);background:var(--ink);font-weight:600}.category-tabs button:hover:not([aria-selected=true]),.checkout-filters button:hover:not([aria-pressed=true]){background:#e6ebdd}.catalog-top{gap:16px}.catalog-top>.text-link{font-size:12px}.catalog-layout{gap:32px;grid-template-columns:minmax(0,1.95fr) minmax(290px,1fr)}.catalog{min-width:0}.menu-base,.checkout-base{font-size:12px;line-height:1.8;color:var(--muted);margin:18px 0}.catalog-dish,.catalog-dish:first-child{position:relative;grid-template-columns:120px minmax(0,1fr) auto;gap:18px;padding:16px 0;border-top:0;border-bottom:1px solid var(--line);margin:0}.catalog-photo{position:relative;align-self:start}.catalog-photo>img{width:120px;height:108px;object-fit:cover;border-radius:6px;background:#e9e8e7}.catalog-photo .recipe-number{position:absolute;left:6px;top:6px;padding:2px 6px;border-radius:4px;background:#fffffff2;color:var(--ink);font-size:11px;line-height:1.5}.catalog-copy{min-width:0}.catalog-dish h2{font-size:25px;line-height:1.1;letter-spacing:-.025em}.catalog-dish p{font-size:13px;line-height:1.65}.catalog-dish small{font-size:12px;color:var(--muted)}.catalog-dish .add-dish,.catalog-dish .quantity{grid-column:auto;justify-self:end;align-self:center;background:white;border-radius:5px}.catalog-dish .add-dish{min-height:40px;font-size:12px;padding:9px 11px;white-space:nowrap}.catalog-dish.is-selected{background:linear-gradient(90deg,transparent,#e9eede80)}.quantity button{min-height:40px;width:34px}.quantity output{font-weight:600}.lunch-planner{background:white;border-color:#d8ddce;border-radius:var(--radius);box-shadow:var(--soft-shadow);padding:24px}.planner-explainer,.planner-terms,.handoff-note,.planner-inquiry,.allergy-note,.mobile-planning-note{font-size:12px;line-height:1.75;color:var(--muted)}.mode-switch{background:#e8ebdf;border-color:#d9dfce;padding:4px;gap:4px}.mode-switch button{min-height:40px;font-size:13px}.mode-switch button[aria-pressed=true]{background:white;color:var(--ink);box-shadow:0 1px 5px #15392c15;font-weight:600}.list-row{font-size:13px}.planner-total{font-size:13px}.lunch-planner>.button{min-height:44px;font-size:13px}.reset-list{font-size:12px;min-height:36px}
.checkout-demo{font-size:12px}.checkout-demo>span{font-size:10px}.checkout-steps button{font-size:13px}.checkout-layout{gap:36px}.checkout-panel-heading>span{font-size:13px}.checkout-toolbar{gap:10px}.checkout-search input{font-size:14px;background:white;border-radius:5px}.checkout-selected-filter{font-size:12px;background:white;border-radius:5px}.checkout-selected-filter[aria-pressed=true]{background:var(--ink);color:white}.checkout-selected-filter span{font-size:12px}.checkout-filters{margin:8px 0 20px}.checkout-summary{border-radius:var(--radius);box-shadow:var(--soft-shadow)}.checkout-summary-row,.checkout-summary-row>strong,.checkout-cost-note,.checkout-summary-service,.checkout-price-guide,.checkout-price-guide h3,.checkout-price-guide dl,.checkout-summary-contact,.checkout-allergy{font-size:12px;line-height:1.7}.checkout-dish p{font-size:13px}.checkout-dish small{font-size:12px}.checkout-quantity{background:white;border-radius:5px}.checkout-quantity button{min-height:40px}.checkout-quantity input{height:40px;font-size:14px}.checkout-dish.is-selected .checkout-quantity{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.checkout-dish.is-selected{background:linear-gradient(90deg,transparent,#e9eede80)}.checkout-dish-photo{border-radius:6px}.checkout-summary-service small{font-size:12px}.checkout-price-guide dd,.checkout-price-guide dt{font-size:12px}
form label{font-size:13px}input,textarea,select{border-radius:5px}input,textarea{background:white}.form-guidance,.jobs-application .form-guidance,.job-send .handoff-note,#job-file-help,.job-cv-note p,.optional{font-size:12px;line-height:1.75}.jobs-application{background:#edf0e4;border-radius:var(--radius)}.jobs-application input,.jobs-application textarea{background:white}.jobs-application .upload-control{font-size:12px;min-height:40px}.company-content details>p{font-size:13px}.footer-grid a{font-size:13px}.footer-bottom,.footer-floor{font-size:11px}
@media(max-width:1100px){.catalog-dish,.catalog-dish:first-child{grid-template-columns:96px minmax(0,1fr);gap:10px 15px}.catalog-photo{grid-row:1 / 3}.catalog-photo>img{width:96px;height:105px}.catalog-dish .add-dish,.catalog-dish .quantity{grid-column:2;justify-self:start}.catalog-dish h2{font-size:24px}.catalog-layout{gap:24px}.hero-copy{padding-top:13%}}
@media(max-width:760px){header nav{gap:0}.nav-secondary{display:flex;flex-direction:column;border-top:1px solid var(--line);margin-top:12px;padding-top:12px;gap:0}.nav-secondary a{font-size:13px!important;color:var(--muted)}header nav.open{box-shadow:0 14px 24px #12362915;border-bottom:1px solid var(--line);max-height:calc(100dvh - 68px);overflow:auto}header nav>a,header .nav-secondary>a{padding:12px 0;min-height:44px}.header-region select{min-height:34px;padding:7px 17px 7px 9px;font-size:11px;max-width:99px}.hero{max-height:none}.catalog-layout{grid-template-columns:1fr}.catalog-dish,.catalog-dish:first-child{grid-template-columns:106px minmax(0,1fr) auto;gap:16px}.catalog-photo{grid-row:auto}.catalog-photo>img{width:106px;height:105px}.catalog-dish .add-dish,.catalog-dish .quantity{grid-column:auto;justify-self:end}.lunch-planner{position:static}.checkout-search input{font-size:16px}.checkout-steps button{font-size:12px}.checkout-demo{align-items:start}.checkout-summary{position:static}.dish-selector small{font-size:13px}.places dl{font-size:13px}}
@media(max-width:560px){header{gap:9px}header .brand{font-size:27px}header .button{font-size:11px;min-height:38px;padding:9px 11px}.header-region select{max-width:94px}.hero{height:530px}.hero-copy{padding-top:42px}.hero h1{font-size:clamp(45px,12.7vw,62px)}.hero p{font-size:14px}.hero-actions{gap:10px}.hero-menu{font-size:12px;padding:10px 14px;min-height:42px}.featured>img{aspect-ratio:1.5}.dish-selector,.dish-selector:first-child{padding:10px;grid-template-columns:80px minmax(0,1fr) 16px;gap:12px}.dish-selector .thumb{height:80px}.dish-selector strong{font-size:22px}.dish-selector small{font-size:12px;line-height:1.5}.menu-heading h2{font-size:46px}.full-menu{padding-top:24px}.catalog-top{align-items:start}.catalog-top>.text-link{padding:2px 0 7px}.category-tabs,.checkout-filters{gap:6px}.category-tabs button,.checkout-filters button{font-size:12px;padding:8px 11px;min-height:36px}.catalog-dish,.catalog-dish:first-child{grid-template-columns:94px minmax(0,1fr);gap:10px 14px;padding:17px 0}.catalog-photo{grid-row:1 / 3}.catalog-photo>img{width:94px;height:112px}.catalog-dish h2{font-size:24px}.catalog-dish p{font-size:13px;margin-top:6px}.catalog-dish small{font-size:12px}.catalog-dish .add-dish,.catalog-dish .quantity{grid-column:2;justify-self:start}.mobile-planning-note{font-size:12px;margin:15px 0}.lunch-planner{padding:22px}.checkout-demo{font-size:11px;gap:9px}.checkout-demo>span{font-size:9px}.checkout-steps button{font-size:11px;gap:6px}.checkout-dish p{font-size:13px}.checkout-dish small{font-size:12px}.checkout-panel-heading>span{font-size:12px}.checkout-summary{padding:22px}.checkout-cost-note,.checkout-summary-row,.checkout-summary-row>strong{font-size:12px}.checkout-toolbar{gap:8px}.checkout-selected-filter{padding:10px;font-size:12px}.news-card h3{font-size:23px}.news-meta,.news-source{font-size:11px}.company-photo>p,.company-terms,.about-story p:not(.eyebrow){font-size:14px}.footer-grid a{font-size:13px}.footer-floor{font-size:11px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
header .button{white-space:nowrap;gap:16px}
@media(max-width:560px){header .button{gap:0;flex-shrink:0}header .header-order-suffix{display:none}header .brand{font-size:25px;flex-shrink:0}.header-region select{width:99px;max-width:99px;font-size:11px}header .header-region{margin-left:auto}.nav-toggle{flex-shrink:0}}
