.cp-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center;padding-block:64px 48px}.cp-hero h1{font-size:clamp(40px,4.1vw,66px);line-height:1.06;letter-spacing:-.035em}.cp-hero p:not(.eyebrow){max-width:470px;margin:24px 0;line-height:1.7;color:var(--muted)}.cp-hero figure{margin:0}.cp-hero img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:cover}.cp-hero figcaption,.cp-category-heading figcaption{font-size:11px;color:var(--muted);margin-top:9px}.cp-pdf{display:block;font-size:13px;margin-top:18px;text-decoration:underline;text-underline-offset:4px}
.cp-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-block:38px 60px;border-bottom:1px solid var(--line)}.cp-benefits h2{font-size:26px;line-height:1.2;margin:17px 0 12px}.cp-benefits strong{color:var(--green);font-size:17px}.cp-benefits p{font-size:14px;color:var(--muted);line-height:1.7;margin-top:10px}.cp-service-icon .icon{width:30px;height:30px;color:var(--green)}
.cp-builder{padding-top:65px;background:var(--paper)}.cp-intro{max-width:680px;margin-bottom:35px}.cp-intro h2{font-size:48px}.cp-intro p{margin-top:16px;line-height:1.7;color:var(--muted)}.cp-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px;border-bottom:1px solid var(--line);padding-bottom:18px}.cp-steps button{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px 14px;background:transparent;font-size:13px;border:1px solid transparent;border-radius:3px}.cp-steps button>span:first-child{color:var(--muted);font-variant-numeric:tabular-nums}.cp-steps button[aria-current]{background:var(--green);color:var(--paper)}.cp-steps button[aria-current]>span:first-child{color:inherit}.cp-steps button:focus-visible,.cp-cart-controls button:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.cp-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}.cp-panel[hidden],#cp-ready[hidden],.cp-navigation button[hidden]{display:none!important}.cp-category-heading{display:grid;grid-template-columns:1fr 210px;gap:25px;align-items:center;margin-bottom:25px}.cp-category-heading h3,.cp-panel>h3{font-size:34px;line-height:1.12;scroll-margin-top:115px}.cp-category-heading p:not(.eyebrow),.cp-panel>p{color:var(--muted);font-size:14px;line-height:1.6;margin-top:14px}.cp-category-heading img{width:100%;height:140px;object-fit:cover}.cp-dish{padding:24px 0;border-bottom:1px solid var(--line)}.cp-dish h4{font-family:var(--body);font-size:18px;font-weight:600;line-height:1.35}.cp-dish>p{font-size:13px;color:var(--muted);line-height:1.6;margin-top:7px}.cp-choice-row{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:18px}.cp-choice-row label{flex:1;min-width:160px}.cp-choice-row .cp-qty-label{flex:0 0 68px;min-width:0}.cp-builder label{display:block;font-size:12px;line-height:1.6}.cp-builder input,.cp-builder select,.cp-builder textarea{display:block;width:100%;border:1px solid var(--line);border-radius:3px;color:var(--ink);background:var(--paper);font:inherit;font-size:14px;padding:11px 10px;margin-top:6px;min-height:44px}.cp-builder input:focus,.cp-builder select:focus,.cp-builder textarea:focus{outline:2px solid var(--green);outline-offset:2px}.cp-add{min-height:44px;padding:10px 17px;font-size:13px}.cp-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:30px}.cp-navigation #cp-next{margin-left:auto}.cp-navigation .button{font-size:13px;padding:14px 18px}
.cp-summary{position:sticky;top:110px;background:var(--sage);padding:28px;border-radius:4px}.cp-summary h3{font-size:28px;margin-bottom:22px}.cp-empty{font-size:14px;line-height:1.7;color:var(--muted)}#cp-cart{max-height:42vh;overflow:auto;scrollbar-width:thin;padding-right:4px}.cp-cart-row{padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.cp-cart-row>strong{display:block;line-height:1.4}.cp-cart-row p{font-size:12px;color:var(--muted);margin:6px 0}.cp-cart-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cp-cart-controls button{min-width:36px;min-height:38px;background:var(--paper);border:1px solid var(--line);border-radius:3px}.cp-cart-controls .cp-remove{background:transparent;border:0;text-decoration:underline;font-size:12px;margin-left:2px}.cp-cart-controls b{margin-left:auto}.cp-subtotal{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;margin:22px 0 12px}.cp-subtotal strong{font-size:21px}.cp-note{font-size:12px;color:var(--muted);line-height:1.7;margin:16px 0}.cp-summary>.button{width:100%;font-size:13px;margin-top:12px}#cp-status{font-size:12px;line-height:1.5;margin-top:15px}.cp-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0 20px}#cp-form>button{margin-top:20px}#cp-ready{border-top:1px solid var(--line);padding-top:28px;margin-top:30px;scroll-margin-top:110px}#cp-ready h4{font-size:26px;margin-bottom:16px}#cp-ready>p{font-size:14px;line-height:1.7;margin:12px 0}.cp-send-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.cp-send-actions .button{font-size:13px;padding:12px 16px}
.cp-terms{padding-block:55px 75px;border-top:1px solid var(--line)}.cp-terms h2{font-size:35px;margin-bottom:22px}.cp-terms>p{font-size:14px;line-height:1.8;max-width:820px;color:var(--muted);margin-bottom:15px}.cp-contact{display:flex;gap:26px;flex-wrap:wrap;margin-top:30px;font-size:14px}.cp-contact a{text-decoration:underline;text-underline-offset:5px}
@media(prefers-reduced-motion:no-preference){@supports(animation-timeline:view()){.cp-benefits>div{animation:cp-arrive linear both;animation-timeline:view();animation-range:entry 0% entry 80%}@keyframes cp-arrive{from{opacity:.5;transform:translateY(12px)}to{opacity:1;transform:none}}}}
@media(max-width:1100px){.cp-layout{grid-template-columns:minmax(0,1fr) 290px;gap:28px}.cp-category-heading{grid-template-columns:1fr}.cp-category-heading figure{display:none}.cp-summary{padding:20px}.cp-benefits{gap:25px}.cp-hero{gap:30px}}
@media(max-width:760px){.cp-hero{grid-template-columns:1fr;gap:28px;padding-top:35px}.cp-hero h1{font-size:42px}.cp-hero img{aspect-ratio:16/10}.cp-benefits{grid-template-columns:1fr;gap:28px;padding-top:10px}.cp-benefits>div{padding-bottom:22px;border-bottom:1px solid var(--line)}.cp-benefits h2{font-size:27px}.cp-builder{padding-top:40px}.cp-intro h2{font-size:38px}.cp-layout{grid-template-columns:1fr;gap:35px}.cp-summary{position:static;grid-row:2}.cp-steps{gap:5px}.cp-steps button{font-size:11px;padding:8px;flex:1 0 30%;justify-content:center}.cp-category-heading h3,.cp-panel>h3{font-size:30px}.cp-choice-row label{min-width:150px}.cp-choice-row .cp-qty-label{flex-basis:60px}.cp-fields{grid-template-columns:1fr}.cp-navigation .button{font-size:12px;padding:12px}.cp-terms h2{font-size:30px}.cp-contact{flex-direction:column;gap:20px}#cp-cart{max-height:none}}
@media(max-width:760px){#cp-app[data-current-step="4"] .cp-summary{grid-row:1;scroll-margin-top:100px}#cp-app[data-current-step="4"] .cp-main{grid-row:2}}

/* Catering film v14: preserve the full 4:3 tray composition. */
.cp-hero{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:48px;padding-block:44px 30px}
.cp-hero-visual{min-width:0}.cp-film{position:relative;background:#32281f;overflow:hidden;border-radius:3px}
.cp-film video{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
#cp-film-toggle{position:absolute;top:14px;right:14px;min-height:44px;padding:10px 14px;border:1px solid #ffffff80;border-radius:30px;background:#1c241cbb;color:#fff;font:inherit;font-size:12px;cursor:pointer}
#cp-film-toggle[hidden]{display:none}#cp-film-toggle:focus-visible{outline:3px solid white;outline-offset:-5px}
.cp-film-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;font-size:12px;color:var(--muted)}.cp-film-caption>a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.cp-hero{gap:28px;grid-template-columns:1fr 1.15fr}.cp-hero h1{font-size:42px}.cp-film-caption{align-items:start;flex-direction:column;gap:6px}}
@media(max-width:760px){.cp-hero{grid-template-columns:1fr;padding-block:30px;gap:26px}.cp-hero h1{font-size:40px}.cp-hero-visual{grid-row:2}.cp-film-caption{flex-direction:row;font-size:11px}.cp-film-caption>a{text-align:right}}

.cp-dish .cp-added-note{color:var(--green);margin-top:12px;font-size:13px}.cp-added-note button{display:inline-block;background:none;color:inherit;text-decoration:underline;text-underline-offset:3px;border:0;padding:10px 4px;min-height:44px;font:inherit;cursor:pointer}
