.catering-section{padding-top:60px;padding-bottom:70px}.catering-heading{max-width:700px;margin-bottom:30px}.catering-heading h2{font-size:clamp(42px,5vw,70px);margin:17px 0;color:var(--tomato)}.catering-heading>p:not(.eyebrow){font-size:15px;max-width:600px}.catering-test{display:inline-block;font-size:11px;padding:8px 12px;background:#ece5d8;border:1px solid var(--line);margin-top:12px}.catering-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#fffaf2;border:1px solid var(--line);padding:32px}.form-step{display:flex;gap:12px;align-items:center;margin-bottom:22px}.form-step>span{font-size:11px;background:var(--tomato);color:var(--paper);padding:7px 9px}.form-step h3{font:600 21px/1.2 var(--body,Arial,sans-serif);margin:0}.occasion-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:18px}.occasion-options label{cursor:pointer;position:relative}.occasion-options input{position:absolute;opacity:0}.occasion-options span{display:block;border:1px solid var(--line);padding:13px;font-size:13px;text-align:center;transition:background .2s,color .2s,transform .2s}.occasion-options input:checked+span{background:var(--tomato);color:var(--paper);border-color:var(--tomato);transform:translateY(-2px)}.occasion-options input:focus-visible+span{outline:3px solid #1d6cc1;outline-offset:2px}.catering-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.catering-fields label,.full-field{display:block;font-size:12px;font-weight:600}.catering-fields input,.full-field input,.full-field textarea{width:100%;display:block;margin-top:7px;border:1px solid var(--line);background:#fffefa;color:var(--ink);padding:12px;min-height:46px;font:14px Arial,sans-serif;border-radius:5px}.full-field{margin-bottom:18px}.full-field textarea{resize:vertical;line-height:1.5}.event-calendar{padding:16px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.calendar-head button{background:#fffaf2;border:1px solid var(--line);width:44px;height:44px;font-size:25px;cursor:pointer}.calendar-head strong{font-size:14px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-week span{text-align:center;font-size:10px;padding-bottom:9px;color:#70665a}.calendar-days button{border:0;background:transparent;min-height:40px;color:var(--ink);font-size:13px;border-radius:5px;cursor:pointer;transition:background .2s,transform .2s}.calendar-days button:hover:not(:disabled){background:#e4d8c7;transform:translateY(-2px)}.calendar-days button[aria-pressed=true]{background:var(--tomato);color:var(--paper)}.calendar-days button:disabled{opacity:.3;cursor:default}.event-calendar p,.catering-fine{font-size:11px;line-height:1.5;color:#72685b;margin:12px 0 0}.catering-consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.5;margin:22px 0}.catering-consent input{flex:none;width:18px;height:18px;accent-color:var(--tomato)}.catering-submit{width:100%;justify-content:space-between;min-height:50px;cursor:pointer}.catering-submit:disabled{opacity:.6;cursor:wait}#catering-status{font-size:13px;line-height:1.6;padding:0;margin-top:12px}#catering-status:not(:empty){border-left:3px solid var(--tomato);padding-left:12px}.honey{position:absolute;left:-10000px;opacity:0}@media(max-width:700px){.catering-section{padding-top:35px;padding-bottom:40px}.catering-layout{grid-template-columns:1fr;gap:26px;padding:18px}.catering-fields{gap:10px}.catering-heading h2{font-size:42px}.calendar-days button{min-height:38px}.catering-heading{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.occasion-options span,.calendar-days button{transition:none;transform:none!important}}
.catering-layout{display:block;max-width:760px;margin:auto}.catering-progress{display:flex;justify-content:center;gap:10px;margin:0 auto 18px;max-width:760px}.catering-progress span{flex:1;padding:12px;border-bottom:3px solid #d6c5b4;text-align:center;font-size:12px;font-weight:700;color:#75675c}.catering-progress span.is-current{border-color:var(--tomato);color:var(--tomato)}.catering-pane[hidden]{display:none!important}.catering-next{width:100%;min-height:48px;margin-top:18px;border:0;background:var(--tomato);color:var(--paper);font:700 14px Arial,sans-serif;cursor:pointer}.catering-back{border:0;background:none;color:var(--tomato);text-decoration:underline;text-underline-offset:3px;padding:0 0 20px;font:700 12px Arial,sans-serif;cursor:pointer}.event-calendar{max-width:520px;margin:auto}.catering-fields{max-width:650px}
@media(max-width:700px){.catering-layout{padding:20px}.catering-progress span{font-size:11px}}

/* The form keeps one short step on screen; the full calendar is optional. */
.catering-section{padding-top:44px;padding-bottom:52px}
.catering-heading{margin-bottom:20px}
.catering-heading h2{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:10px 0 12px}
.catering-test{margin-top:8px}
.catering-progress{max-width:760px;margin-bottom:10px}
.catering-progress[hidden],.catering-next[hidden],.catering-back[hidden]{display:none!important}
.catering-progress span{padding:9px 6px;font-size:11px}
.catering-layout{padding:25px 28px}
.form-step{margin-bottom:16px}
.form-step h3{font-size:19px}
.occasion-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:16px}
.occasion-options span{padding:11px 7px;min-height:42px}
.catering-fields{margin-bottom:12px}
.full-field{margin-bottom:14px}
.calendar-disclosure{margin-top:2px}
.calendar-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;border-top:1px solid var(--line);padding:13px 2px;color:var(--tomato);font:700 12px/1.4 Arial,sans-serif}
.calendar-disclosure summary::-webkit-details-marker{display:none}
.calendar-disclosure summary::after{content:'+';font-size:21px;font-weight:400;line-height:1}
.calendar-disclosure[open] summary::after{content:'−'}
.calendar-disclosure summary:focus-visible{outline:3px solid #1d6cc1;outline-offset:2px}
.calendar-disclosure .event-calendar{max-width:none;margin:0;padding:12px}
.calendar-head{margin-bottom:8px}
.calendar-head button{width:38px;height:38px}
.calendar-days button{min-height:38px}
.catering-next{margin-top:10px}
.catering-back{padding-bottom:12px}
.catering-consent{margin:14px 0}
@media(max-width:700px){
 .catering-section{padding-top:28px;padding-bottom:36px}
 .catering-heading{margin-bottom:14px}
 .catering-heading h2{font-size:clamp(32px,9vw,40px)}
 .catering-layout{padding:17px}
 .catering-progress span{padding:8px 3px;font-size:10px}
 .occasion-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .catering-fields{grid-template-columns:1fr;gap:10px}
 .calendar-days button{min-height:38px}
}
