#order-dialog{width:min(680px,calc(100% - 28px));max-height:92dvh;border:1px solid var(--ink);border-radius:26px 8px 26px 8px;background:var(--cream-300);color:var(--ink);padding:26px;overflow:auto;box-shadow:9px 9px 0 var(--ink)}
#order-dialog::backdrop{background:#121210b3}.order-close{position:sticky;top:0;z-index:4;float:right;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:var(--cream-100);color:var(--ink);font-size:24px;line-height:1;cursor:pointer;box-shadow:0 2px 0 #1212101f}.order-close:hover{background:var(--ink);color:var(--cream-100)}
.order-form{display:grid;gap:18px;clear:both}.order-form h2{margin:10px 52px 0 0;font-size:clamp(37px,7vw,52px)}.order-intro{max-width:48ch;margin:0;color:var(--gray);font-size:14px;line-height:1.5}.order-form fieldset{min-inline-size:0;margin:0;padding:15px;border:1px solid var(--ink);border-radius:4px 18px 4px 18px;background:color-mix(in srgb,var(--cream-100) 75%,transparent)}.order-form legend{padding:0 7px;color:var(--ink);font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:17px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.order-form small{display:block;color:var(--gray);font-size:12px;line-height:1.35}
.order-choice-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.order-choice-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;min-height:104px;padding:11px;border:1px solid var(--line);border-radius:18px 5px 18px 5px;background:var(--cream-100);color:var(--ink);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.order-choice-card:hover{transform:translateY(-2px);border-color:var(--ink)}.order-choice-card input,.order-slot-card input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.order-choice-card strong{display:block;font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:18px;font-weight:900;line-height:1.05;letter-spacing:.02em;text-transform:uppercase}.order-choice-card small{margin-top:4px}.order-choice-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50% 50% 8px 8px;background:var(--ink);color:var(--cream-100);overflow:hidden}.order-choice-icon img{width:37px;height:37px;object-fit:contain}.order-payment-icon img{width:27px;height:27px;object-fit:contain}.order-date-icon img{width:23px;height:23px;object-fit:contain}.order-choice-card:has(input:checked){border-color:var(--red);background:#f9e6e2;box-shadow:4px 4px 0 var(--red)}.order-choice-card:has(input:checked) .order-choice-icon{background:var(--red)}.order-choice-card:has(input:focus-visible),.order-slot-card:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px}
.order-planning{display:grid;grid-template-columns:190px minmax(0,1fr);gap:13px;align-items:stretch}.order-date{display:grid;grid-template-columns:39px 1fr;grid-template-rows:auto auto;gap:3px 10px;align-content:center;padding:14px;border:1px solid var(--ink);border-radius:18px 4px 18px 4px;background:var(--ink);color:var(--cream-100);font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:16px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.order-date-icon{grid-row:span 2;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:var(--red)}.order-date input{width:100%;min-width:0;border:0;border-bottom:1px solid #ffffff8c;background:transparent;color:var(--cream-100);padding:3px 0 5px;font:700 13px "Source Sans 3",sans-serif;color-scheme:dark}.order-date input:focus-visible{outline:2px solid var(--cream-100);outline-offset:3px}.order-slot-group{display:grid;gap:8px}.order-slot-group small{margin-top:-3px}.order-slot-grid{display:grid;gap:10px}.order-slot-service{display:grid;gap:6px}.order-slot-service>strong{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:13px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.order-slot-row{display:flex;gap:7px;overflow-x:auto;padding:2px 2px 7px;scroll-snap-type:x proximity}.order-slot-row::-webkit-scrollbar{height:5px}.order-slot-row::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}.order-slot-card{position:relative;display:grid;place-items:center;flex:0 0 64px;min-height:44px;border:1px solid var(--line);border-radius:10px 3px 10px 3px;background:var(--cream-100);color:var(--ink);font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:15px;font-weight:900;letter-spacing:.03em;cursor:pointer;scroll-snap-align:start;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.order-slot-card:hover{transform:translateY(-1px);border-color:var(--ink)}.order-slot-card:has(input:checked){border-color:var(--red);background:var(--red);color:var(--cream-100);box-shadow:2px 2px 0 var(--red-dark)}
[data-delivery-address][hidden]{display:none!important}.order-payment-group{padding-top:13px!important}.order-payment-cards .order-choice-card{min-height:76px}.order-payment-cards .order-choice-icon{width:42px;height:42px}.order-payment-cards .order-choice-card{grid-template-columns:42px minmax(0,1fr)}.order-payment-cards .order-choice-card small{display:none}.order-customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.order-form>label,.order-customer-fields label{display:grid;gap:6px;font-size:13px;font-weight:800}.order-form input:not([type=radio]),.order-form textarea{width:100%;border:1px solid var(--line);border-radius:4px 12px 4px 12px;background:var(--cream-100);color:var(--ink);padding:12px;font:inherit;transition:border-color .18s ease,box-shadow .18s ease}.order-form input:not([type=radio]):focus,.order-form textarea:focus{border-color:var(--red);box-shadow:3px 3px 0 #d51c2430;outline:0}.order-text-field textarea{min-height:76px;resize:vertical}.order-disclaimer{padding:11px 13px;border-left:3px solid var(--red);background:var(--cream-200)}.order-submit{min-height:54px;border:0;border-radius:5px 18px 5px 18px;background:var(--red);color:#fff;font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:17px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,background .18s ease}.order-submit:hover{background:var(--red-dark);transform:translateY(-2px)}.order-status{min-height:1.5em;margin:0;font-size:13px;line-height:1.45}.receipt-order{display:block;width:100%;margin-top:10px;padding:12px 8px;border:0;background:var(--red);color:#fff;font:700 12px "Source Sans 3",sans-serif;cursor:pointer}.receipt-order:hover{background:var(--red-dark)}
@media(max-width:600px){#order-dialog{padding:20px;box-shadow:5px 5px 0 var(--ink)}.order-form{gap:15px}.order-choice-cards,.order-customer-fields,.order-planning{grid-template-columns:1fr}.order-choice-card{min-height:86px}.order-date{min-height:86px}.order-slot-row{margin-inline:-1px}.order-slot-card{flex-basis:61px}.order-form h2{font-size:37px}.order-payment-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.order-payment-cards .order-choice-card{padding:9px;gap:7px}.order-payment-cards .order-choice-icon{width:38px;height:38px}}
@media(max-width:380px){#order-dialog{width:calc(100% - 18px);padding:16px}.order-slot-card{flex-basis:58px}.order-payment-cards .order-choice-card{grid-template-columns:1fr;text-align:center}.order-payment-cards .order-choice-icon{margin:auto}}

/* Illustrated companions of the existing restaurant icon series. */
.order-payment-cards .order-choice-card{grid-template-columns:72px minmax(0,1fr);min-height:98px}
.order-payment-cards .order-payment-icon,.order-choice-card:has(input:checked) .order-payment-icon{width:72px;height:72px;border-radius:8px;background:var(--cream-100)}
.order-payment-icon img{width:100%;height:100%;object-fit:contain}
.order-date{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:9px}
.order-date-icon{grid-row:auto;width:64px;height:64px;border-radius:8px;background:var(--cream-100)}
.order-date-icon img{width:100%;height:100%;object-fit:contain}
.order-date input{grid-column:1/-1}
@media(max-width:600px){.order-payment-cards .order-choice-card{grid-template-columns:1fr;justify-items:center;text-align:center;gap:4px}.order-payment-cards .order-payment-icon{width:68px;height:68px}}

/* Compact date: illustration left, label and field stacked to its right. */
.order-planning{grid-template-columns:240px minmax(0,1fr);align-items:start}
.order-date{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 10px;padding:12px;min-height:90px;align-content:center}
.order-date-icon{grid-column:1;grid-row:1 / 3}
.order-date>label{grid-column:2;grid-row:1;font-size:15px;letter-spacing:.01em}
.order-form .order-date input{grid-column:2;grid-row:2;padding:8px 6px;font-size:13px;line-height:1.2;color-scheme:light;cursor:pointer;border-radius:4px 9px 4px 9px}
.order-choice-card:has(.order-service-icon){grid-template-columns:72px minmax(0,1fr)}
.order-choice-icon.order-service-icon,.order-choice-card:has(input:checked) .order-service-icon{width:72px;height:72px;border-radius:8px;background:var(--cream-100)}
.order-service-icon img{width:100%;height:100%;object-fit:contain}
@media(max-width:600px){.order-planning{grid-template-columns:1fr}.order-date{min-height:90px}.order-choice-card:has(.order-service-icon){grid-template-columns:68px minmax(0,1fr)}.order-choice-icon.order-service-icon{width:68px;height:68px}}

.order-date{position:relative}
.order-date-trigger{grid-column:2;grid-row:2;display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%;padding:9px 8px;border:1px solid var(--line);border-radius:4px 9px 4px 9px;background:var(--cream-100);color:var(--ink);font:700 13px "Source Sans 3",sans-serif;cursor:pointer}
.order-date-trigger::after{content:'▾';color:var(--red)}
.order-date-trigger:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.order-calendar[hidden]{display:none}
.order-calendar{position:absolute;top:calc(100% + 8px);left:0;z-index:6;width:280px;max-width:calc(100vw - 64px);padding:12px;border:1px solid var(--ink);border-radius:16px 4px 16px 4px;background:var(--cream-100);color:var(--ink);box-shadow:5px 5px 0 var(--ink);text-transform:none;letter-spacing:0}
.order-calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.order-calendar-heading strong{font-size:18px;text-transform:capitalize}
.order-calendar button{border:0;background:transparent;color:var(--ink);font:700 15px "Source Sans 3",sans-serif;cursor:pointer;border-radius:8px;min-height:34px;min-width:30px}
.order-calendar-heading button{font-size:26px}
.order-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}
.order-calendar-grid>span{font-size:12px;color:#766e61;padding-bottom:4px}
.order-calendar button:disabled{opacity:.25;cursor:default}
.order-calendar button:not(:disabled):hover{background:#efd8d3}
.order-calendar button[aria-pressed=true]{background:var(--red);color:white}
.order-calendar button:focus-visible{outline:2px solid var(--red);outline-offset:1px}

.order-calendar.order-calendar-above{top:auto;bottom:calc(100% + 8px)}

@media(max-width:380px){.order-form h2{font-size:31px;margin-right:44px}.order-calendar{left:-4px}.order-form .order-payment-group legend{font-size:15px}}
