.catering-hero .hero-grid{padding:clamp(3.5rem,7vw,6rem) 0}
.catering-hero img{aspect-ratio:1.25/1;border-radius:1.5rem}
.catering-hero h1{max-width:760px}
.catering-hero .lead{max-width:720px}
.catering-intro{padding:2.2rem 0;background:var(--paper);border-bottom:1px solid var(--line)}
.catering-intro .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.fact{padding:1rem 1.2rem;border-left:4px solid var(--gold)}
.fact strong{display:block;font-family:var(--serif);font-size:1.3rem}
.fact span{color:var(--muted);font-size:.9rem}
.catering-section{padding:clamp(3.5rem,7vw,6rem) 0}
.catering-section.alt{background:var(--paper)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.6rem}
.section-heading p{max-width:560px;margin:0;color:var(--muted)}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.package{display:flex;flex-direction:column;padding:1.4rem;border:1px solid var(--line);border-radius:1.25rem;background:var(--paper)}
.alt .package{background:var(--cream)}
.package.featured{border-color:var(--gold);box-shadow:0 12px 36px rgba(63,42,22,.1)}
.package .eyebrow{margin:0 0 .4rem;color:var(--red);font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.package h3{font-size:1.75rem}
.price{display:flex;align-items:baseline;gap:.3rem;margin:.75rem 0;color:var(--red);font:800 2rem/1 var(--serif)}
.price small{font:700 .8rem/1.3 var(--sans);color:var(--muted)}
.package p{margin:.2rem 0 .8rem;color:var(--muted)}
.package ul{margin:.2rem 0 0;padding-left:1.15rem}
.package li{margin:.38rem 0}
.package details{margin-top:auto;padding-top:1rem}
.package summary{cursor:pointer;font-weight:900;color:var(--red)}
.wide{grid-column:span 2}
.price-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.price-list .menu-section{height:100%}
.price-list li span{white-space:nowrap;color:var(--ink);font-weight:800}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.chip{padding:.35rem .65rem;border-radius:99px;background:var(--soft);font-size:.8rem;font-weight:800}
.fine-print{margin-top:1.5rem;padding:1rem 1.2rem;border-radius:1rem;background:#f6e9d1;color:#5e4931;font-size:.9rem}
.callout{display:grid;grid-template-columns:1.3fr auto;gap:2rem;align-items:center;padding:2rem;border-radius:1.5rem;background:var(--ink);color:#fff}
.callout p{margin:.7rem 0 0;color:#d8d0c5}
.callout .actions{margin:0}
.service-list{columns:2;column-gap:2rem;margin:1.2rem 0 0;padding-left:1.2rem}
.service-list li{break-inside:avoid;margin:.35rem 0}
.request-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.request-copy{position:sticky;top:150px}
.request-copy p:not(.kicker){color:var(--muted)}
.request-copy .contact-link{display:inline-block;margin-top:.7rem;color:var(--red);font-weight:900}
.form-card{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line);border-radius:1.4rem;background:var(--cream);box-shadow:0 16px 46px rgba(63,42,22,.09)}
.form-card h3{font-size:2rem}
.form-card>p{margin:.7rem 0 1.4rem;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.form-field{display:flex;flex-direction:column;gap:.35rem}
.form-field.full{grid-column:1/-1}
.form-field label,.form-group legend{font-size:.86rem;font-weight:900}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:50px;padding:.72rem .85rem;border:1px solid #cfc4b5;border-radius:.75rem;background:#fff;color:var(--ink);font:inherit}
.form-field textarea{min-height:120px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--red);outline:3px solid rgba(162,48,37,.13)}
.form-group{grid-column:1/-1;margin:0;padding:0;border:0}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:.45rem}
.choice{display:flex;align-items:flex-start;gap:.55rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:.75rem;background:#fff;font-size:.9rem}
.choice input{width:1rem;height:1rem;margin-top:.2rem;accent-color:var(--red)}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.25rem}
.form-actions .btn{border:0;cursor:pointer}
.form-note{margin:1rem 0 0;color:var(--muted);font-size:.84rem}
.form-status{margin:.85rem 0 0;font-weight:800;color:var(--red)}
.delivery-address[hidden]{display:none}
.required{color:var(--red)}
@media(max-width:900px){.package-grid{grid-template-columns:repeat(2,1fr)}.wide{grid-column:span 2}.catering-intro .wrap{grid-template-columns:1fr 1fr}.callout,.request-layout{grid-template-columns:1fr}.callout .actions{margin-top:.5rem}.request-copy{position:static}}
@media(max-width:620px){.package-grid,.price-list,.catering-intro .wrap,.form-grid,.choice-grid{grid-template-columns:1fr}.wide{grid-column:auto}.section-heading{align-items:start;flex-direction:column}.service-list{columns:1}.callout,.form-card{padding:1.2rem}.catering-hero img{border-radius:1rem}.price{font-size:1.7rem}}
