.catering{background:#24474d;color:#fff;padding:80px max(2vw,20px);display:grid;grid-template-columns:.9fr 1.6fr;gap:40px;align-items:start}.catering-eyebrow,.step-caption{color:#e6bc75;font-weight:800}.catering-intro h2{font-size:clamp(28px,2.8vw,44px);line-height:1.5;margin:22px 0}.catering-intro em{font-style:normal;color:#e6bc75}.catering-intro p{color:#b9ced3;line-height:1.9;font-size:16px}.catering-progress{display:flex;gap:10px;padding:0;list-style:none;margin:38px 0}.catering-progress li{flex:1;border-top:6px solid #ffffff24;border-radius:3px;padding-top:12px;font-size:12px;font-weight:700;color:#afc3c6}.catering-progress li.active{border-color:#d2a15d;color:#e6bc75}.catering-note{padding:24px;border:1px solid #ffffff20;background:#ffffff12;border-radius:20px}.catering-note p{font-size:14px;margin:8px 0 0}.catering-form{background:#ffffff12;border:1px solid #ffffff20;border-radius:38px;padding:32px}.catering-form fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.catering-form fieldset[hidden]{display:none}.catering-form h3{font-size:29px;margin:10px 0 14px}.step-description{color:#a9bfc2;font-size:14px;line-height:1.7;margin-bottom:24px}.catering-form label{display:block;font-size:14px;font-weight:700;color:#c4d2d4}.guest-options{display:flex;border:1px solid #ffffff20;border-radius:20px;background:#ffffff09;padding:8px;margin:14px 0 24px}.guest-options label{flex:1;position:relative;cursor:pointer}.guest-options input,.package-option input{position:absolute;opacity:0;width:1px;height:1px}.guest-options span{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px;border-radius:20px}.guest-options b{font-size:23px}.guest-options input:checked+span{background:#d2a15d;color:#24474d}.guest-options input:focus-visible+span,.package-option:has(input:focus-visible){outline:3px solid #edc47c;outline-offset:3px}.catering-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.catering-form :is(input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select,textarea){width:100%;border:1px solid #ffffff20;border-radius:22px;background:#ffffff18;color:white;padding:14px;margin:8px 0 16px;font:inherit;min-width:0;color-scheme:dark}.catering-form select option{background:#24474d}.catering-form input::placeholder,.catering-form textarea::placeholder{color:#acbfc1}.catering-form textarea{min-height:90px;resize:vertical}.catering-actions{display:flex;gap:12px;align-items:center;margin-top:24px}.catering-back{color:#d6e1e2;border-color:#ffffff30;background:transparent}.catering-submit{background:#1dcb66;color:#123e42}.catering-packages{display:grid;grid-template-columns:1fr 1fr;gap:14px}.catering-form .package-option{position:relative;display:flex;align-items:center;gap:12px;border:1px solid #ffffff25;padding:14px;border-radius:20px;background:#ffffff09;cursor:pointer}.package-option:has(input:checked){border-color:#d2a15d;background:#ffffff20}.package-option img{width:66px;height:66px;object-fit:cover;border-radius:18px}.package-option>span{flex:1}.package-option b{color:white;font-size:15px}.package-option small{display:block;font-size:12px;line-height:1.6;margin:6px 0;color:#afc2c5}.package-option strong{color:#e6bc75;font-size:14px}.package-option i{border:1px solid #ffffff50;border-radius:50%;width:20px;height:20px;flex-shrink:0;color:transparent;text-align:center;font-style:normal}.package-option:has(input:checked) i{background:#d2a15d;color:#24474d}.package-tally{padding:10px 14px;border-radius:99px;background:#d2a15d18;color:#e6bc75;font-size:14px;margin-bottom:20px}.catering-summary{border:1px dashed #d2a15d88;border-radius:20px;padding:20px;color:#e6bc75;line-height:1.9;background:#d2a15d12}.catering-summary small{display:block;color:#c4d2d4}.catering-errors,.package-error{color:#ffe0cf}.catering-success{padding:20px;background:#1dcb6620;border:1px solid #1dcb66;border-radius:16px;margin-bottom:20px}.catering-form button:focus-visible{outline:3px solid #e6bc75;outline-offset:3px}@media(max-width:900px){.catering{grid-template-columns:1fr;padding:48px 20px;gap:24px}.catering-intro h2{font-size:32px}.catering-progress{margin:24px 0}.catering-note{display:none}}@media(max-width:560px){.catering-form{padding:22px 16px;border-radius:26px}.catering-fields,.catering-packages{grid-template-columns:1fr}.catering-form h3{font-size:25px}.catering-actions{flex-wrap:wrap}.catering-form .btn{font-size:14px}.catering-intro h2{font-size:28px}}
/* Source-priced catering catalog */
.catering-guest-shortcuts,.catering-presets{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 24px}.catering-guest-shortcuts button,.catering-presets button{border:1px solid #ffffff40;background:#ffffff0e;color:#fff;border-radius:20px;padding:9px 15px;font:inherit;cursor:pointer}.catering-presets button:hover{background:#d4a45f;color:#23484d}.catering-catalog-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.catering-catalog{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-height:570px;overflow:auto;margin:20px 0;padding:3px}.catering-dish{padding:16px;background:#ffffff0a;border:1px solid #ffffff26;border-radius:20px}.catering-dish>label{display:flex;gap:9px;align-items:center;font-size:15px}.catering-dish input[type=checkbox]{width:18px;height:18px;accent-color:#d4a45f}.catering-dish>small{display:block;color:#c6d8d9;font-size:12px;line-height:1.8;margin:10px 0}.catering-dish-image{height:160px;width:160px;max-width:100%;background-repeat:no-repeat;border-radius:12px;margin:10px 0}.catering-sizes label{display:grid;grid-template-columns:1fr 65px;gap:8px;align-items:center;font-size:11px;margin:10px 0}.catering-sizes input{padding:8px!important;text-align:center}.catering-sizes span{color:#eed19b}#cateringFeedback:not(:empty),#cateringWarnings:not(:empty){padding:14px;border:1px solid #d4a45f80;background:#d4a45f15;border-radius:14px;margin:14px 0;color:#f7ddb4;font-size:13px}#cateringAck{padding:14px;background:#d4a45f20;border-radius:12px;line-height:1.8}#cateringAck input{width:auto;accent-color:#d4a45f}#cateringReview p{font-size:13px;margin:8px 0}#cateringReview small{font-size:11px}#cateringReview strong{display:block;margin-top:16px}.catering [hidden]{display:none!important}@media(max-width:650px){.catering-catalog{grid-template-columns:1fr}.catering-catalog-tools{grid-template-columns:1fr}.catering-presets button{font-size:12px}.catering-dish-image{height:150px}}

.catering-dish-price{display:block;color:#e6bc75;font-size:18px;margin-top:12px}.catering-presets button:disabled{opacity:.55;cursor:wait}.catering-dish:has(input:checked){border-color:#d2a15d;background:#ffffff16}
