/* Shared Joci identity around the existing native cart, checkout and time picker. */
body.joci-site.jc-checkout-page { --jc-accent:var(--joci-burgundy,#741f2c); --jc-paper:var(--joci-paper,#f4f0e8); --jc-ink:var(--joci-ink,#202220); --jc-line:var(--joci-line,#d9d2c7); }
body.joci-site.jc-checkout-page .article--main,
body.joci-site.jc-checkout-page .article--main > .article__content { background:var(--jc-paper)!important; }
body.joci-site.jc-checkout-page .page__content,
body.joci-site.jc-checkout-page .page__content input,
body.joci-site.jc-checkout-page .page__content select,
body.joci-site.jc-checkout-page .page__content textarea,
body.joci-site.jc-checkout-page .page__content button,
body.joci-site.jc-checkout-page .jc-time-picker,
body.joci-site.jc-checkout-page .jc-time-picker select.jc-time-select,
body.joci-site.jc-checkout-page .woocommerce .button { font-family:var(--joci-font,Inter,Arial,sans-serif)!important; }
body.joci-site.jc-checkout-page .page__content h1,
body.joci-site.jc-checkout-page .page__content h2,
body.joci-site.jc-checkout-page .page__content h3 { color:var(--jc-ink); font-family:var(--joci-display,'Bricolage Grotesque',Arial,sans-serif); font-weight:650; letter-spacing:-.035em; }
body.joci-site.jc-checkout-page .jc-order-intro h1 { max-width:900px; font-size:clamp(38px,4.8vw,66px); line-height:1.06; }
body.joci-site.jc-checkout-page .jc-order-eyebrow { color:var(--jc-accent); font-family:var(--joci-font,Inter,Arial,sans-serif); }
body.joci-site.jc-checkout-page .jc-order-menu,
body.joci-site.jc-checkout-page .jc-basket__heading a,
body.joci-site.jc-checkout-page .woocommerce .woocommerce-info a,
body.joci-site.jc-checkout-page .woocommerce .woocommerce-message a,
body.joci-site.jc-checkout-page #payment .woocommerce-privacy-policy-text a,
body.joci-site.jc-checkout-page #payment .woocommerce-terms-and-conditions-wrapper a,
body.joci-site.jc-checkout-page #order_review .order-total th,
body.joci-site.jc-checkout-page #order_review .order-total td,
body.joci-site.jc-checkout-page .jc-time-picker--selected .jc-time-summary { color:var(--jc-accent)!important; }
body.joci-site.jc-checkout-page .woocommerce .button,
body.joci-site.jc-checkout-page .woocommerce input[type=submit],
body.joci-site.jc-checkout-page .woocommerce .btn { background:var(--jc-accent)!important; border-color:var(--jc-accent)!important; border-radius:3px!important; }
body.joci-site.jc-checkout-page .woocommerce .button:hover { background:var(--joci-accent-hover,#591724)!important; }
body.joci-site.jc-checkout-page .woocommerce-billing-fields,
body.joci-site.jc-checkout-page .woocommerce-additional-fields,
body.joci-site.jc-checkout-page #order_review,
body.joci-site.jc-checkout-page #order_review_heading,
body.joci-site.jc-checkout-page .woocommerce-cart-form { border-color:var(--jc-line)!important; border-radius:4px; box-shadow:none; }
body.joci-site.jc-checkout-page .page__content input[type=checkbox],
body.joci-site.jc-checkout-page .page__content input[type=radio] { accent-color:var(--jc-accent); }
body.joci-site.jc-checkout-page .jc-time-picker .jc-time-summary { border-left-color:var(--jc-accent); background:var(--jc-paper); }
body.joci-site.jc-checkout-page .page__content a:focus-visible,
body.joci-site.jc-checkout-page .page__content button:focus-visible,
body.joci-site.jc-checkout-page .page__content input:focus-visible,
body.joci-site.jc-checkout-page .page__content select:focus-visible { outline-color:var(--jc-accent)!important; }
body.joci-site.jc-checkout-page .jc-order-intro__top { flex-wrap:wrap; }
@media(max-width:600px){body.joci-site.jc-checkout-page .jc-order-intro h1{font-size:40px;}body.joci-site.jc-checkout-page #customer_details h3,body.joci-site.jc-checkout-page #order_review_heading{font-size:28px;}}

/* The shared header occupies its own row; the native form needs no second header gap. */
body.joci-site.jc-checkout-page .article--main { padding-top:0!important; }
body.joci-site.jc-checkout-page .article--main > .article__content { padding-top:40px!important; }
body.joci-site.jc-checkout-page .woocommerce-cart-form .product-name>a,
body.joci-site.jc-checkout-page #order_review .product-name>a { color:var(--jc-accent)!important; }
body.joci-site.jc-checkout-page #order_review thead th,
body.joci-site.jc-checkout-page .woocommerce-cart-form thead th { color:var(--jc-accent)!important; }
body.joci-site.jc-checkout-page input::placeholder,
body.joci-site.jc-checkout-page textarea::placeholder { text-transform:none!important;letter-spacing:0!important; }
body.joci-site.jc-checkout-page form.checkout > .joci-fulfillment { margin:0 0 24px; }
@media(min-width:1000px){
 body.joci-site.jc-checkout-page form.checkout { grid-template-rows:none; }
 body.joci-site.jc-checkout-page form.checkout > #customer_details { grid-row:auto; }
 body.joci-site.jc-checkout-page form.checkout > .joci-checkout-order { grid-column:2; }
 body.joci-site.jc-checkout-page .joci-checkout-order > #order_review_heading { margin:0; padding:28px 28px 0; border:1px solid var(--jc-line); border-bottom:0; border-radius:4px 4px 0 0; background:#fffdfa; }
 body.joci-site.jc-checkout-page .joci-checkout-order > #order_review { padding-top:12px; border-top:0; border-radius:0 0 4px 4px; }
}
@media(max-width:767px){body.joci-site.jc-checkout-page .article--main > .article__content{padding-top:26px!important;}}

/* Follow the current restaurant palette without changing native checkout states. */
body.joci-site.jc-checkout-page .jc-order-intro,
body.joci-site.jc-checkout-page #order_review table td,
body.joci-site.jc-checkout-page #order_review table th,
body.joci-site.jc-checkout-page #payment,
body.joci-site.jc-checkout-page #payment .payment_box,
body.joci-site.jc-checkout-page .woocommerce-cart-form table.shop_table.cart td,
body.joci-site.jc-checkout-page .woocommerce-cart-form table.shop_table.cart th { border-color:var(--jc-line); }
body.joci-site.jc-checkout-page .page__content .woocommerce-info,
body.joci-site.jc-checkout-page .page__content .woocommerce-message,
body.joci-site.jc-checkout-page .jc-existing-notice { border-color:var(--jc-line)!important; border-left-color:var(--jc-accent)!important; background:var(--jc-paper)!important; }
body.joci-site.jc-checkout-page .page__content .woocommerce-info::before,
body.joci-site.jc-checkout-page .page__content .woocommerce-message::before { color:var(--jc-accent); }
body.joci-site.jc-checkout-page #payment .payment_box { background:var(--jc-paper); }
body.joci-site.jc-checkout-page .page__content .form-row:not(.woocommerce-invalid) input.input-text,
body.joci-site.jc-checkout-page .page__content .form-row:not(.woocommerce-invalid) textarea,
body.joci-site.jc-checkout-page .page__content .form-row:not(.woocommerce-invalid) select,
body.joci-site.jc-checkout-page .select2-container .select2-selection--single,
body.joci-site.jc-checkout-page .jc-time-picker:not(.jc-time-picker--invalid) select.jc-time-select { border-color:var(--jc-line)!important; }
body.joci-site.jc-checkout-page .jc-time-picker--invalid .jc-time-summary { border-color:#a52f38; color:#8a2932; }
