/* Catering: browse, choose, then prepare one request. Scoped to Café. */
#siteCafe #page-catering{--c2-line:#d8cfb2;--c2-surface:#fffbed;--c2-muted:#625b4d;--c2-tint:#f1e7d5;padding:0 0 clamp(48px,6vw,100px);color:var(--ink);font-family:var(--font-ui);line-height:1.65}
#siteCafe #page-catering [hidden]{display:none!important}
#siteCafe #page-catering :is(button,input,textarea,select){font-family:var(--font-ui);letter-spacing:0;text-transform:none}
#siteCafe #page-catering :is(button,summary,a,input,select,textarea):focus-visible{outline:2px solid var(--cherry);outline-offset:4px}
#siteCafe #page-catering :is(h2,h3,h4){font-family:var(--font-ui);font-weight:600;line-height:1.3;text-transform:none;letter-spacing:-.02em}
#siteCafe #page-catering h2{font-size:var(--type-section)}
#siteCafe #page-catering h3{font-size:var(--type-card)}
#siteCafe #page-catering h4{font-size:var(--type-body)}
#siteCafe #page-catering p{margin:0}
#siteCafe #page-catering :is(.c2-main,.c2-side,.c2-review,.c2-request-form){min-width:0}
#siteCafe #page-catering :is(#c2-app,#c2-catalog,#c2-focus){scroll-margin-top:110px}
#siteCafe #page-catering #c2-focus:focus{outline:none}
#siteCafe #page-catering .c2-eyebrow{display:block;color:var(--cherry);font-size:var(--type-caption);font-weight:600;letter-spacing:.1em;line-height:1.5}
#siteCafe #page-catering .c2-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;max-width:100%;padding:11px 19px;border:1px solid var(--c2-line);border-radius:3px;background:transparent;color:var(--ink);font-size:var(--type-small);font-weight:600;line-height:1.5;text-align:center;text-decoration:none;cursor:pointer;transition:background .16s,border-color .16s}
#siteCafe #page-catering .c2-btn:hover{background:var(--c2-tint);border-color:var(--olive)}
#siteCafe #page-catering .c2-primary{background:var(--cherry);border-color:var(--cherry);color:var(--cream)}
#siteCafe #page-catering .c2-primary:hover{background:var(--cherry-d);border-color:var(--cherry-d)}
#siteCafe #page-catering .c2-text{padding:5px 0;border:0;color:var(--cherry);text-align:start;text-decoration:underline;text-underline-offset:5px;font-weight:500}
#siteCafe #page-catering .c2-text:hover{background:transparent;color:var(--ink)}
#siteCafe #page-catering .c2-btn:disabled{opacity:.35;cursor:default}
#siteCafe #page-catering .ct-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.43fr);align-items:end;gap:36px;padding:clamp(30px,4.2vw,76px) 0 32px}
#siteCafe #page-catering .ct-intro h1{font-family:var(--font-display);font-size:clamp(2.5rem,2.1rem + 2.3vw,5rem);font-weight:400;text-transform:uppercase;letter-spacing:0;line-height:1.08;max-width:19ch;margin:12px 0 16px}
#siteCafe #page-catering .ct-intro p{font-size:var(--type-body);color:var(--c2-muted);max-width:57ch;line-height:1.7}
#siteCafe #page-catering .c2-hero-aside{border-inline-start:1px solid var(--c2-line);padding-inline-start:30px;padding-bottom:4px;max-width:390px}
#siteCafe #page-catering .c2-hero-aside b{font-size:var(--type-body);display:block;margin-bottom:8px}
#siteCafe #page-catering .c2-hero-aside p{font-size:var(--type-small);margin-bottom:9px}
#siteCafe #page-catering .c2-essentials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;border-block:1px solid var(--c2-line);padding:19px 0;margin-bottom:clamp(30px,4vw,58px)}
#siteCafe #page-catering .c2-essentials div{padding-inline-end:24px;border-inline-end:1px solid var(--c2-line)}
#siteCafe #page-catering .c2-essentials div:last-child{border:0}
#siteCafe #page-catering .c2-essentials b{display:block;font-size:var(--type-small);margin-bottom:3px}
#siteCafe #page-catering .c2-essentials span{font-size:var(--type-small);color:var(--c2-muted);display:block}
#siteCafe #page-catering .c2-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:21px}
#siteCafe #page-catering .c2-section-heading h2{margin-top:6px}
#siteCafe #page-catering .c2-section-heading p{font-size:var(--type-small);color:var(--c2-muted);margin-top:6px}
#siteCafe #page-catering .c2-tabs{display:flex;gap:30px;border-bottom:1px solid var(--c2-line);margin-bottom:22px}
#siteCafe #page-catering .c2-tab{border:0;border-bottom:3px solid transparent;border-radius:0;padding:12px 0 15px;justify-content:start;text-align:start;color:var(--c2-muted)}
#siteCafe #page-catering .c2-tab[aria-pressed=true]{border-color:var(--cherry);color:var(--cherry)}
#siteCafe #page-catering .c2-tab:hover{background:transparent}
#siteCafe #page-catering .c2-layout{display:grid;gap:clamp(24px,3vw,54px);align-items:start}
#siteCafe #page-catering .c2-with-summary{grid-template-columns:minmax(0,1fr) minmax(300px,.39fr)}
#siteCafe #page-catering .c2-browse-intro{font-size:var(--type-small);color:var(--c2-muted);margin:0 0 24px}
#siteCafe #page-catering .c2-browse-intro p+p{margin-top:7px}
#siteCafe #page-catering .c2-inline-note{padding:12px 16px;background:var(--c2-tint);color:var(--ink)}
#siteCafe #page-catering .c2-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#siteCafe #page-catering .c2-with-summary .c2-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#siteCafe #page-catering .c2-menu-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--c2-line);border-radius:4px;overflow:hidden;background:var(--c2-surface)}
#siteCafe #page-catering .c2-card-photo{position:relative;background:var(--c2-tint);aspect-ratio:1.55;overflow:hidden}
#siteCafe #page-catering .c2-card-photo img{width:100%;height:100%;object-fit:cover}
#siteCafe #page-catering .c2-menu-card:last-child .c2-card-photo img{object-position:75% center}
#siteCafe #page-catering :is(.c2-card-photo,.c2-item-art)>span{position:absolute;inset-inline-start:10px;bottom:10px;padding:4px 7px;border-radius:2px;background:var(--c2-surface);font-size:var(--type-caption);color:var(--c2-muted);line-height:1.4}
#siteCafe #page-catering .c2-card-body{display:flex;flex:1;flex-direction:column;align-items:start;padding:clamp(18px,1.5vw,28px)}
#siteCafe #page-catering .c2-menu-name{font-size:var(--type-caption);color:var(--c2-muted);margin-bottom:7px}
#siteCafe #page-catering .c2-card-body h3{font-size:var(--type-card);margin-bottom:11px}
#siteCafe #page-catering .c2-card-body>p{font-size:var(--type-small);line-height:1.65;color:var(--c2-muted);margin-bottom:20px}
#siteCafe #page-catering .c2-service-line{font-size:var(--type-caption);font-weight:500;color:var(--cherry);display:block}
#siteCafe #page-catering .c2-card-body .c2-service-line{margin-top:auto;padding-bottom:17px}
#siteCafe #page-catering .c2-card-price{border-top:1px solid var(--c2-line);padding:17px 0;width:100%;font-size:var(--type-small);font-variant-numeric:tabular-nums}
#siteCafe #page-catering .c2-card-price b{font-size:var(--type-card);white-space:nowrap}
#siteCafe #page-catering .c2-card-price span{font-size:var(--type-caption);white-space:nowrap}
#siteCafe #page-catering .c2-card-price small{font-size:var(--type-caption);color:var(--c2-muted);display:block;margin-top:4px}
#siteCafe #page-catering .c2-card-body>.c2-btn{width:100%;justify-content:space-between}
#siteCafe #page-catering .c2-photo-note{font-size:var(--type-caption);color:var(--c2-muted);margin-top:15px;max-width:90ch}
#siteCafe #page-catering .c2-categories{display:flex;gap:8px;overflow-x:auto;padding:0 0 16px;margin-bottom:8px}
#siteCafe #page-catering .c2-category{flex-shrink:0;font-weight:500;padding:8px 14px}
#siteCafe #page-catering .c2-category[aria-pressed=true]{background:var(--cherry);border-color:var(--cherry);color:var(--cream)}
#siteCafe #page-catering .c2-item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:18px}
#siteCafe #page-catering .c2-item{border:1px solid var(--c2-line);border-radius:4px;overflow:hidden;min-width:0;background:var(--c2-surface)}
#siteCafe #page-catering .c2-item-art{height:135px;background:var(--c2-tint);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:var(--cherry)}
#siteCafe #page-catering .c2-item-art img{width:100%;height:100%;object-fit:cover}
#siteCafe #page-catering .c2-item-art>svg+span{inset-inline-start:auto;background:transparent;bottom:6px;letter-spacing:.08em;color:var(--cherry)}
#siteCafe #page-catering .c2-food-icon{width:45px;height:54px;flex:0 0 auto}
#siteCafe #page-catering .c2-item-content{padding:20px}
#siteCafe #page-catering .c2-item-content h3{font-size:var(--type-body);margin-bottom:6px}
#siteCafe #page-catering .c2-item-content>p{font-size:var(--type-small);color:var(--c2-muted)}
#siteCafe #page-catering .c2-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:20px}
#siteCafe #page-catering .c2-item-bottom b{font-size:var(--type-body);font-variant-numeric:tabular-nums;white-space:nowrap}
#siteCafe #page-catering .c2-item-bottom small{font-size:var(--type-caption);color:var(--c2-muted);display:block}
#siteCafe #page-catering .c2-quantity{display:flex;align-items:center;border:1px solid var(--c2-line);border-radius:3px;overflow:hidden;background:var(--c2-surface);flex:0 0 auto}
#siteCafe #page-catering .c2-qty{border:0;border-radius:0;width:44px;min-height:44px;padding:0;font-size:var(--type-card);font-weight:400}
#siteCafe #page-catering .c2-quantity input{width:42px;min-width:0;border:0;background:transparent;text-align:center;appearance:textfield;font-size:var(--type-body);line-height:1.5;padding:6px 0}
#siteCafe #page-catering .c2-quantity input::-webkit-inner-spin-button{appearance:none}
#siteCafe #page-catering .c2-item-details{border-top:1px solid var(--c2-line);margin-top:18px;padding-top:12px;font-size:var(--type-small);color:var(--c2-muted)}
#siteCafe #page-catering .c2-item-details summary{font-size:var(--type-caption);cursor:pointer;min-height:32px}
#siteCafe #page-catering .c2-item-details p{margin:8px 0 0}
#siteCafe #page-catering .c2-quantity-help{display:flex;justify-content:space-between;align-items:center;gap:25px;background:var(--c2-tint);padding:24px;margin-top:30px}
#siteCafe #page-catering .c2-quantity-help p{font-size:var(--type-small);max-width:65ch;margin-top:6px;color:var(--c2-muted)}
#siteCafe #page-catering .c2-quantity-help>.c2-btn{flex-shrink:0}
#siteCafe #page-catering .c2-progress{display:flex;align-items:center;gap:20px;font-size:var(--type-small);color:var(--c2-muted);padding:25px 0;border-bottom:1px solid var(--c2-line)}
#siteCafe #page-catering .c2-progress .c2-text{text-decoration:none;color:inherit}
#siteCafe #page-catering .c2-progress [aria-current=step]{color:var(--cherry);font-weight:600}
#siteCafe #page-catering .c2-work-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:34px 0}
#siteCafe #page-catering .c2-work-heading h2{margin:8px 0 10px}
#siteCafe #page-catering .c2-work-heading p{max-width:65ch;color:var(--c2-muted);font-size:var(--type-body)}
#siteCafe #page-catering .c2-selected-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px;align-items:center}
#siteCafe #page-catering .c2-selected-intro figure{margin:0}
#siteCafe #page-catering .c2-selected-intro img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:4px}
#siteCafe #page-catering figcaption{font-size:var(--type-caption);color:var(--c2-muted);line-height:1.5;margin-top:8px}
#siteCafe #page-catering .c2-selected-price{font-size:var(--type-small)}
#siteCafe #page-catering .c2-selected-price b{font-size:var(--type-group);font-weight:500;font-variant-numeric:tabular-nums}
#siteCafe #page-catering .c2-selected-price span{display:block;color:var(--c2-muted);font-size:var(--type-small);margin-top:3px}
#siteCafe #page-catering .c2-guests{padding:22px 0}
#siteCafe #page-catering .c2-guests label{display:block;font-size:var(--type-small);font-weight:600;margin-bottom:8px}
#siteCafe #page-catering .c2-guests>div{display:flex;align-items:center;gap:12px}
#siteCafe #page-catering .c2-guests input{min-width:0;width:110px;min-height:48px;padding:10px 12px;border:1px solid var(--c2-line);border-radius:3px;background:var(--c2-surface);font-size:var(--type-lead);font-variant-numeric:tabular-nums}
#siteCafe #page-catering .c2-guests span{font-size:var(--type-caption);max-width:13ch;color:var(--c2-muted);line-height:1.5}
#siteCafe #page-catering .c2-contents{margin-top:28px;padding:26px;background:var(--c2-surface);border:1px solid var(--c2-line);border-radius:4px}
#siteCafe #page-catering .c2-inclusions{list-style:none;padding:0;margin:15px 0;display:grid;gap:9px;font-size:var(--type-small)}
#siteCafe #page-catering .c2-inclusions li{padding-inline-start:19px;position:relative}
#siteCafe #page-catering .c2-inclusions li:before{content:'✓';position:absolute;inset-inline-start:0;color:var(--cherry)}
#siteCafe #page-catering .c2-definition{font-size:var(--type-small);color:var(--c2-muted);padding-top:15px;border-top:1px solid var(--c2-line)}
#siteCafe #page-catering .c2-definition details{margin-top:9px}
#siteCafe #page-catering .c2-definition summary{cursor:pointer;color:var(--ink)}
#siteCafe #page-catering .c2-definition details p{margin-top:8px}
#siteCafe #page-catering .c2-section{margin-top:32px;padding-top:30px;border-top:1px solid var(--c2-line)}
#siteCafe #page-catering .c2-choice-group{border:0;padding:0;margin:20px 0 0;min-width:0}
#siteCafe #page-catering .c2-choice-group legend{font-size:var(--type-small);font-weight:600;width:100%;margin-bottom:10px}
#siteCafe #page-catering .c2-choice-group legend span{display:inline-block;color:var(--c2-muted);font-size:var(--type-caption);font-weight:400;margin-inline-start:12px}
#siteCafe #page-catering .c2-choice-list{display:flex;flex-wrap:wrap;gap:9px}
#siteCafe #page-catering .c2-choice{font-size:var(--type-small);font-weight:500;text-align:start;justify-content:start;padding:11px 15px}
#siteCafe #page-catering .c2-choice[aria-pressed=true]{background:var(--c2-tint);border-color:var(--cherry);color:var(--cherry)}
#siteCafe #page-catering .c2-pairing{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--c2-tint);padding:20px;border-radius:4px}
#siteCafe #page-catering .c2-pairing>div:first-child{display:flex;align-items:center;gap:18px}
#siteCafe #page-catering .c2-pairing b{font-size:var(--type-small)}
#siteCafe #page-catering .c2-pairing p{font-size:var(--type-small);color:var(--c2-muted);margin-top:4px}
#siteCafe #page-catering .c2-soft{font-size:var(--type-small);color:var(--c2-muted);margin-top:15px}
#siteCafe #page-catering .c2-more{margin:20px 0}
#siteCafe #page-catering .c2-enhancements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#siteCafe #page-catering .c2-enhancement{display:flex;align-items:start;gap:13px;text-align:start;padding:18px;border:1px solid var(--c2-line);border-radius:4px;background:transparent;cursor:pointer}
#siteCafe #page-catering .c2-enhancement[aria-pressed=true]{background:var(--c2-tint);border-color:var(--cherry)}
#siteCafe #page-catering .c2-enhancement>span:last-child{min-width:0;display:flex;flex-direction:column;gap:8px}
#siteCafe #page-catering .c2-enhancement b{font-size:var(--type-small)}
#siteCafe #page-catering .c2-enhancement span span{font-size:var(--type-small);color:var(--c2-muted);line-height:1.6}
#siteCafe #page-catering .c2-enhancement small{font-size:var(--type-caption);color:var(--cherry);line-height:1.5}
#siteCafe #page-catering .c2-check{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border:1px solid var(--c2-line);color:var(--cherry);border-radius:2px}
#siteCafe #page-catering .c2-service-context{background:var(--c2-surface);padding:24px;border:1px solid var(--c2-line);margin-top:18px;border-radius:4px}
#siteCafe #page-catering .c2-service-context>p{color:var(--c2-muted);font-size:var(--type-small);margin:8px 0 20px}
#siteCafe #page-catering .c2-main-action{display:flex;align-items:center;flex-wrap:wrap;gap:15px 24px;border-top:1px solid var(--c2-line);padding-top:26px;margin-top:32px}
#siteCafe #page-catering .c2-main-action small{display:block;width:100%;color:var(--c2-muted);font-size:var(--type-caption)}
#siteCafe #page-catering .c2-side{position:sticky;top:100px}
#siteCafe #page-catering .c2-summary{padding:clamp(20px,2vw,34px);background:var(--c2-tint);border:1px solid var(--c2-line);border-radius:4px}
#siteCafe #page-catering .c2-summary-title{margin-bottom:24px}
#siteCafe #page-catering .c2-summary-title h3{font-size:var(--type-group);margin-top:7px}
#siteCafe #page-catering .c2-summary-title .c2-text{margin-top:4px}
#siteCafe #page-catering .c2-summary-menu>b{font-size:var(--type-body);display:block}
#siteCafe #page-catering .c2-summary-menu>span{display:block;font-size:var(--type-caption);color:var(--c2-muted);margin:4px 0 9px}
#siteCafe #page-catering .c2-summary-menu p{font-size:var(--type-small);margin:8px 0}
#siteCafe #page-catering .c2-summary-menu>small{font-size:var(--type-caption);color:var(--cherry)}
#siteCafe #page-catering .c2-details{border-block:1px solid var(--c2-line);margin:17px 0;font-size:var(--type-small)}
#siteCafe #page-catering .c2-details summary{cursor:pointer;min-height:46px;padding:12px 0;font-weight:500}
#siteCafe #page-catering .c2-details summary>span{float:right;color:var(--cherry)}
#siteCafe #page-catering .c2-details>div{padding-bottom:14px}
#siteCafe #page-catering .c2-details .c2-detail-note{font-size:var(--type-caption);line-height:1.6;color:var(--c2-muted);margin:12px 0 0}
#siteCafe #page-catering .c2-selected-choices{font-size:var(--type-small);margin:15px 0}
#siteCafe #page-catering .c2-selected-choices div{margin-top:10px}
#siteCafe #page-catering .c2-selected-choices dt{font-weight:600}
#siteCafe #page-catering .c2-selected-choices dd{margin:3px 0 0;color:var(--c2-muted)}
#siteCafe #page-catering .c2-summary-items{list-style:none;padding:0;margin:0}
#siteCafe #page-catering .c2-summary-items li{display:flex;align-items:start;justify-content:space-between;gap:13px;border-bottom:1px solid var(--c2-line);padding:16px 0;font-size:var(--type-small)}
#siteCafe #page-catering .c2-summary-items small{display:block;font-size:var(--type-caption);color:var(--c2-muted);margin-top:4px}
#siteCafe #page-catering .c2-summary-items li>div:last-child{text-align:end;flex-shrink:0}
#siteCafe #page-catering .c2-summary-items .c2-text{display:flex;justify-content:end;font-size:var(--type-caption);margin-inline-start:auto}
#siteCafe #page-catering .c2-pending{padding:20px 0 2px;font-size:var(--type-small)}
#siteCafe #page-catering .c2-pending>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px}
#siteCafe #page-catering .c2-pending small{display:block;font-size:var(--type-caption);color:var(--c2-muted)}
#siteCafe #page-catering .c2-remove{flex-shrink:0;min-width:44px;padding:0;font-size:var(--type-card);border:0;font-weight:400}
#siteCafe #page-catering .c2-price-block{border-top:1px solid var(--c2-line);margin-top:24px;padding-top:21px}
#siteCafe #page-catering .c2-price-block>span{font-size:var(--type-small);display:block}
#siteCafe #page-catering .c2-price-block>strong{font-size:var(--type-heading);font-weight:500;font-variant-numeric:tabular-nums;display:block;margin:5px 0}
#siteCafe #page-catering .c2-price-block>small{font-size:var(--type-caption);color:var(--c2-muted);display:block}
#siteCafe #page-catering .c2-cost-notes{font-size:var(--type-caption);margin-top:18px;border-top:1px solid var(--c2-line);padding-top:12px}
#siteCafe #page-catering .c2-cost-notes div{display:flex;justify-content:space-between;gap:14px;margin-top:5px}
#siteCafe #page-catering .c2-cost-notes dd{margin:0;text-align:end;color:var(--c2-muted)}
#siteCafe #page-catering .c2-price-block>p{font-size:var(--type-caption);color:var(--c2-muted);line-height:1.6;margin:14px 0 0}
#siteCafe #page-catering .c2-subline{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:var(--type-small)}
#siteCafe #page-catering .c2-flags{padding:16px 0 0;margin-top:18px;border-top:1px solid var(--c2-line);font-size:var(--type-small);color:var(--cherry)}
#siteCafe #page-catering .c2-flags ul{margin:8px 0 0;padding-inline-start:17px;font-size:var(--type-caption);line-height:1.65}
#siteCafe #page-catering .c2-flags li+li{margin-top:8px}
#siteCafe #page-catering .c2-summary-actions{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:23px}
#siteCafe #page-catering .c2-summary-actions .c2-primary{width:100%}
#siteCafe #page-catering .c2-summary-actions small{font-size:var(--type-caption);color:var(--c2-muted)}
#siteCafe #page-catering .c2-muted{font-size:var(--type-small);color:var(--c2-muted)}
#siteCafe #page-catering .c2-notice{padding:14px 18px;margin-top:20px;background:var(--c2-tint);border-inline-start:3px solid var(--cherry);color:var(--cherry);font-size:var(--type-small)}
#siteCafe #page-catering .c2-request-layout{display:grid;grid-template-columns:minmax(290px,.7fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);align-items:start}
#siteCafe #page-catering .c2-request-form{background:var(--c2-surface);border:1px solid var(--c2-line);border-radius:4px;padding:clamp(24px,3vw,48px)}
#siteCafe #page-catering .c2-form-section+.c2-form-section{margin-top:30px;padding-top:28px;border-top:1px solid var(--c2-line)}
#siteCafe #page-catering .c2-form-section h3{margin-bottom:18px}
#siteCafe #page-catering .c2-form-section>p{font-size:var(--type-small);color:var(--c2-muted);margin:-6px 0 20px}
#siteCafe #page-catering .c2-form-section>p.c2-soft{margin:18px 0 0;font-size:var(--type-caption)}
#siteCafe #page-catering .c2-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
#siteCafe #page-catering .c2-field{display:block;min-width:0;font-size:var(--type-small);font-weight:500}
#siteCafe #page-catering .c2-field>span{display:block;margin-bottom:8px}
#siteCafe #page-catering .c2-field small{font-size:var(--type-caption);font-weight:400;color:var(--c2-muted)}
#siteCafe #page-catering .c2-field :is(input,select,textarea){display:block;width:100%;min-width:0;max-width:100%;min-height:50px;border:1px solid var(--c2-line);border-radius:3px;padding:12px;background:var(--c2-surface);font-size:var(--type-body);line-height:1.5;color:var(--ink)}
#siteCafe #page-catering .c2-field textarea{resize:vertical;min-height:110px}
#siteCafe #page-catering .c2-field input:disabled{opacity:.45;background:var(--c2-tint)}
#siteCafe #page-catering .c2-field [aria-invalid=true]{border-color:var(--cherry);outline:1px solid var(--cherry)}
#siteCafe #page-catering .c2-field .c2-error{display:block;color:var(--cherry);margin-top:7px}
#siteCafe #page-catering .c2-wide{grid-column:1/-1}
#siteCafe #page-catering .c2-checkbox{display:flex;align-items:center;gap:10px;font-size:var(--type-small);cursor:pointer;margin-top:-10px;min-height:36px}
#siteCafe #page-catering .c2-checkbox input{width:19px;height:19px;accent-color:var(--cherry)}
#siteCafe #page-catering .c2-request-end{border-top:1px solid var(--c2-line);padding-top:26px;margin-top:28px}
#siteCafe #page-catering .c2-request-end p{font-size:var(--type-small);color:var(--c2-muted);margin-bottom:9px}
#siteCafe #page-catering .c2-request-end b{color:var(--ink)}
#siteCafe #page-catering .c2-request-end>.c2-primary{width:100%;margin:14px 0}
#siteCafe #page-catering .c2-request-end :is(.c2-no-payment,.c2-preview-note){font-size:var(--type-caption);margin:0 0 8px;text-align:center}
#siteCafe #page-catering .c2-preview-note{color:var(--cherry)}
#siteCafe #page-catering .c2-next{border-top:1px solid var(--c2-line);padding-top:32px;margin-top:42px}
#siteCafe #page-catering .c2-next ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;list-style:none;counter-reset:next;margin-top:22px;padding:0}
#siteCafe #page-catering .c2-next li{counter-increment:next;font-size:var(--type-small);padding-inline-start:36px;position:relative}
#siteCafe #page-catering .c2-next li:before{content:'0' counter(next);position:absolute;inset-inline-start:0;color:var(--cherry);font-size:var(--type-caption);padding-top:3px}
#siteCafe #page-catering .c2-next b{display:block;margin-bottom:7px}
#siteCafe #page-catering .c2-next span{color:var(--c2-muted)}
#siteCafe #page-catering .c2-success{padding:48px 0;max-width:980px;margin:0 auto}
#siteCafe #page-catering .c2-success>h2{margin:12px 0 15px}
#siteCafe #page-catering .c2-success>p{max-width:65ch;color:var(--c2-muted)}
#siteCafe #page-catering .c2-success-actions{display:flex;flex-wrap:wrap;gap:14px 24px;margin:24px 0 32px}
#siteCafe #page-catering .c2-success-summary .c2-summary{background:var(--c2-surface)}
#siteCafe #page-catering .c2-success pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:var(--type-small);line-height:1.7;padding:20px 0}
#siteCafe #page-catering .ct-questions{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:clamp(25px,6vw,100px);border-top:1px solid var(--c2-line);padding-top:40px;margin-top:clamp(44px,6vw,90px)}
#siteCafe #page-catering .ct-questions h2{font-family:var(--font-display);text-transform:uppercase;font-weight:400;letter-spacing:0;font-size:var(--type-section);margin-top:10px;max-width:20ch}
#siteCafe #page-catering .c2-question{border-bottom:1px solid var(--c2-line);font-size:var(--type-small);color:var(--c2-muted)}
#siteCafe #page-catering .c2-question summary{position:relative;cursor:pointer;font-size:var(--type-body);color:var(--ink);padding:18px 28px 18px 0;list-style:none;line-height:1.5}
#siteCafe #page-catering .c2-question summary:after{content:'+';position:absolute;inset-inline-end:3px;top:18px}
#siteCafe #page-catering .c2-question[open] summary:after{content:'−'}
#siteCafe #page-catering .c2-question summary::-webkit-details-marker{display:none}
#siteCafe #page-catering .c2-question p{padding:0 0 20px;max-width:75ch}
#siteCafe #page-catering #c2-mobile{display:none}
#siteCafe #page-catering .c2-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(min-width:1800px){#siteCafe #page-catering .c2-item-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}
@media(max-width:1299px){
 #siteCafe #page-catering .c2-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #siteCafe #page-catering .c2-card-photo{aspect-ratio:2}
 #siteCafe #page-catering .c2-with-summary{grid-template-columns:minmax(0,1fr) 320px}
 #siteCafe #page-catering .c2-enhancements{grid-template-columns:1fr}
}
@media(max-width:999px){
 #siteCafe #page-catering .c2-with-summary{grid-template-columns:1fr}
 #siteCafe #page-catering .c2-side{position:static}
 #siteCafe #page-catering .c2-summary{padding:26px}
 #siteCafe #page-catering .c2-summary-actions{align-items:start}
 #siteCafe #page-catering .c2-summary-actions .c2-primary{width:auto}
 #siteCafe #page-catering .c2-request-layout{grid-template-columns:1fr}
 #siteCafe #page-catering .c2-enhancements{grid-template-columns:repeat(2,minmax(0,1fr))}
 #siteCafe #page-catering .ct-intro{grid-template-columns:1fr;gap:25px}
 #siteCafe #page-catering .c2-hero-aside{display:none}
 #siteCafe #page-catering #c2-mobile:not(:empty){display:block;position:fixed;inset-inline:0;bottom:0;z-index:75;padding:12px var(--page-gutter) calc(12px + env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--c2-line);box-shadow:0 -5px 24px #04050308}
 #siteCafe #page-catering.c2-keyboard #c2-mobile{display:none}
 #siteCafe #page-catering .c2-mobile-inner{display:flex;justify-content:space-between;align-items:center;gap:15px}
 #siteCafe #page-catering .c2-mobile-inner small{display:block;font-size:var(--type-caption);color:var(--c2-muted)}
 #siteCafe #page-catering .c2-mobile-inner b{font-size:var(--type-lead);font-weight:500;font-variant-numeric:tabular-nums}
 #siteCafe #page-catering .c2-mobile-inner .c2-btn{max-width:55%;font-size:var(--type-small);padding:11px 14px}
}
@media(max-width:649px){
 #siteCafe #page-catering .ct-intro{padding:30px 0 25px}
 #siteCafe #page-catering .ct-intro h1{font-size:clamp(2.5rem,9.2vw,3.5rem)}
 #siteCafe #page-catering .c2-essentials{grid-template-columns:1fr;gap:12px;padding:17px 0;margin-bottom:32px}
 #siteCafe #page-catering .c2-essentials div{border:0;padding:0;display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px}
 #siteCafe #page-catering .c2-essentials span{font-size:var(--type-caption)}
 #siteCafe #page-catering .c2-essentials b{font-size:var(--type-caption);margin:0}
 #siteCafe #page-catering .c2-section-heading{align-items:start;flex-direction:column;gap:8px}
 #siteCafe #page-catering .c2-tabs{gap:20px}
 #siteCafe #page-catering .c2-tab{flex:1;padding:10px 0 13px;font-size:var(--type-small)}
 #siteCafe #page-catering :is(.c2-menu-grid,.c2-with-summary .c2-menu-grid){grid-template-columns:1fr;gap:22px}
 #siteCafe #page-catering .c2-card-photo{aspect-ratio:1.8}
 #siteCafe #page-catering .c2-card-body{padding:23px}
 #siteCafe #page-catering .c2-card-body h3{font-size:var(--type-group)}
 #siteCafe #page-catering .c2-card-body>p{margin-bottom:17px}
 #siteCafe #page-catering .c2-card-body .c2-service-line{padding-bottom:15px}
 #siteCafe #page-catering .c2-card-price{padding:15px 0}
 #siteCafe #page-catering .c2-item-grid{grid-template-columns:1fr}
 #siteCafe #page-catering .c2-item-art{height:150px}
 #siteCafe #page-catering .c2-quantity-help{align-items:start;flex-direction:column;padding:22px;gap:15px}
 #siteCafe #page-catering .c2-progress{gap:13px;padding:15px 0;font-size:var(--type-caption)}
 #siteCafe #page-catering .c2-progress .c2-btn{font-size:var(--type-caption)}
 #siteCafe #page-catering .c2-work-heading{display:block;padding:26px 0}
 #siteCafe #page-catering .c2-work-heading>.c2-btn{margin-top:7px}
 #siteCafe #page-catering .c2-selected-intro{grid-template-columns:1fr;gap:22px}
 #siteCafe #page-catering .c2-selected-intro img{aspect-ratio:1.7}
 #siteCafe #page-catering .c2-guests{padding:20px 0}
 #siteCafe #page-catering .c2-guests span{max-width:none}
 #siteCafe #page-catering .c2-contents{padding:22px}
 #siteCafe #page-catering .c2-choice-list{display:grid;grid-template-columns:1fr}
 #siteCafe #page-catering .c2-pairing{align-items:start;flex-direction:column;padding:20px;gap:18px}
 #siteCafe #page-catering .c2-pairing .c2-quantity{align-self:flex-end}
 #siteCafe #page-catering .c2-enhancements{grid-template-columns:1fr}
 #siteCafe #page-catering .c2-service-context{padding:20px}
 #siteCafe #page-catering .c2-form-grid{grid-template-columns:1fr;gap:18px}
 #siteCafe #page-catering .c2-request-form{padding:22px}
 #siteCafe #page-catering .c2-summary{padding:23px}
 #siteCafe #page-catering .c2-main-action{flex-direction:column;align-items:stretch}
 #siteCafe #page-catering .c2-main-action .c2-text{align-self:start}
 #siteCafe #page-catering .c2-next ol{grid-template-columns:1fr;gap:23px}
 #siteCafe #page-catering .ct-questions{grid-template-columns:1fr;gap:18px;padding-top:30px}
 #siteCafe #page-catering .ct-questions h2{max-width:none}
 #siteCafe #page-catering .c2-success{padding:32px 0}
 #siteCafe #page-catering .c2-success-actions{gap:12px}
}
@media(prefers-reduced-motion:reduce){#siteCafe #page-catering *{scroll-behavior:auto!important;transition:none!important}}

/* Request details remain visible outside the full-menu disclosure. */
#siteCafe #page-catering .c2-event-summary{font-size:var(--type-small);border-top:1px solid var(--c2-line);margin-top:20px;padding-top:12px}
#siteCafe #page-catering .c2-event-summary div{margin-top:10px}
#siteCafe #page-catering .c2-event-summary dt{font-size:var(--type-caption);color:var(--c2-muted)}
#siteCafe #page-catering .c2-event-summary dd{margin:3px 0 0;overflow-wrap:anywhere}
#siteCafe #page-catering .c2-service-disclosure{border-top:1px solid var(--c2-line);margin-top:28px;padding-top:15px}
#siteCafe #page-catering .c2-service-disclosure>summary{cursor:pointer;min-height:44px;color:var(--cherry);font-size:var(--type-small);padding:10px 0}
#siteCafe #page-catering .c2-service-disclosure .c2-section{margin-top:0;border:0;padding-top:15px}
#siteCafe #page-catering .c2-mobile-inner>div{min-width:0}
#siteCafe #page-catering .c2-mobile-inner>div>span{display:block;font-size:var(--type-caption);color:var(--c2-muted);line-height:1.4}
