/* Shared restaurant palette; structural layouts remain in style.css. */
:root { --armandos-sage: #53654a; --armandos-soft-sage: #eaf0e2; --armandos-terracotta: #a64f37; --armandos-gold: #c49a52; }
body { background: var(--armandos-cream); color: var(--armandos-text); }
#masthead.site-header { background: var(--armandos-header-background, #fffaf2); border-top: 3px solid var(--armandos-burgundy); border-bottom: 1px solid #e2d4c1; box-shadow: 0 2px 12px #49321c06; }
#masthead .armandos-site-name { color: var(--armandos-burgundy); }
#masthead .armandos-header-menu .current-menu-item > a { color: var(--armandos-burgundy); text-decoration-color: var(--armandos-terracotta); text-underline-offset: 7px; }
#masthead .armandos-header-menu a:hover { color: var(--armandos-terracotta); }
#masthead .armandos-header-icon:hover { background: #efe6d7; border-radius: 6px; }
.entry-title, .woocommerce-products-header h1 { color: var(--armandos-burgundy); }
.entry-content h2, .entry-content h3 { color: var(--armandos-burgundy); }
.woocommerce-breadcrumb, .woocommerce-breadcrumb a { color: #806a56; }
button, input[type="submit"], .button, a.button, .wp-block-button__link { border-radius: 5px; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--armandos-sage); outline-offset: 3px; }
.entry-content input.input-text, .entry-content textarea, .entry-content select,
.woocommerce input.input-text, .woocommerce textarea, .woocommerce select { background: #fffdf8; border: 1px solid #dbcebc; border-radius: 5px; box-shadow: none; color: var(--armandos-text); }
.entry-content input.input-text:focus, .woocommerce input.input-text:focus,
.woocommerce textarea:focus, .woocommerce select:focus { border-color: var(--armandos-sage); background: white; }
.woocommerce-info { background: var(--armandos-sage); }
.woocommerce-info.armandos-store-closed { background: #fbefd7; color: #714718; border: 1px solid #dfbd7e; border-left: 4px solid var(--armandos-gold); border-radius: 6px; }
.woocommerce-info.armandos-store-closed::before { color: #946422; }
.woocommerce-message { background: var(--armandos-sage); }
.woocommerce-error { background: var(--armandos-burgundy); }
.armandos-shop-widgets .armandos-panel { background: var(--armandos-surface); border: 1px solid #e0d1bc; border-radius: 8px; box-shadow: 0 3px 12px #49321c05; }
.armandos-shop-widgets .widget-title { color: var(--armandos-sage); }
.armandos-categories [id^="armandos_categories-"] { border-top: 3px solid var(--armandos-sage); }
.armandos-categories a { border-radius: 4px; padding-left: 8px; padding-right: 8px; text-decoration: none; }
.armandos-categories a:hover { background: #f1e7d5; color: var(--armandos-burgundy); }
.armandos-categories .current-cat > a, .armandos-categories a[aria-current="page"] { background: var(--armandos-soft-sage); color: #3f5336; font-weight: 700; }
.armandos-cart [id^="armandos_cart-"] { border-top: 3px solid var(--armandos-burgundy); }
.armandos-cart .woocommerce-mini-cart__total { background: #f0e5d5; border-radius: 4px; padding: 10px; }
.armandos-menu #main ul.products li.product { padding-left: 12px; padding-right: 12px; border-bottom-color: #e5d8c5; }
.armandos-menu #main ul.products li.product:nth-child(odd) { background: #f2ebde; }
.armandos-menu #main ul.products li.product:nth-child(even) { background: var(--armandos-surface); }
.armandos-menu #main ul.products li.product:hover { background: var(--armandos-soft-sage); }
.armandos-menu .armandos-product-copy h2 { color: var(--armandos-burgundy); }
.armandos-menu .armandos-product-description { color: #6b5b4a; }
.armandos-menu ul.products li.product .price { color: var(--armandos-sage); font-weight: 600; }
.armandos-menu ul.products li.product .armandos-add-button { background: var(--armandos-button); color: var(--armandos-button-text); border-color: var(--armandos-button); border-radius: 6px; }
.armandos-menu ul.products li.product .armandos-add-button:hover { background: var(--armandos-terracotta); border-color: var(--armandos-terracotta); }
.armandos-combined-checkout #armandos-checkout-shipping { background: #f0e7d8; border: 1px solid #deceb7; border-radius: 8px; padding: 14px; margin-bottom: 18px; }
.armandos-combined-checkout #armandos-checkout-shipping h3 { color: var(--armandos-sage); }
.armandos-combined-checkout input[type="radio"], .armandos-combined-checkout input[type="checkbox"] { accent-color: var(--armandos-sage); }
.armandos-combined-checkout .woocommerce-checkout-review-order-table { border: 1px solid #ded1bd; border-collapse: separate; border-spacing: 0; border-radius: 8px; overflow: hidden; }
.armandos-combined-checkout .woocommerce-checkout-review-order-table thead th { background: var(--armandos-sage); color: white; }
.armandos-combined-checkout .woocommerce-checkout-review-order-table tbody td { background: #fffaf2; }
.armandos-combined-checkout .woocommerce-checkout-review-order-table tfoot td,
.armandos-combined-checkout .woocommerce-checkout-review-order-table tfoot th { background: #f0e7d8; }
.armandos-combined-checkout .woocommerce-checkout-review-order-table .order-total td,
.armandos-combined-checkout .woocommerce-checkout-review-order-table .order-total th { background: var(--armandos-soft-sage); color: #3f5336; }
.armandos-combined-checkout #payment { border: 1px solid #ded1bd; border-radius: 8px; overflow: hidden; background: #fffaf2; }
.armandos-combined-checkout #payment .payment_methods > li > label { background: #eee2cf; color: var(--armandos-burgundy); }
.armandos-combined-checkout #payment .payment_box, .armandos-combined-checkout #payment .place-order { background: #fffaf2; }
.armandos-combined-checkout .armandos-minimum-notice { color: #814b32; }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) { background: transparent; padding: 0; border: 0; margin: 0 0 12px; }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 12px; margin: 0 6px 8px 0; border: 1px solid #d7c8b3; border-radius: 7px; background: #fffdf8; color: #594b3d; font-size: 14px; line-height: 1.3; cursor: pointer; transition: background-color .15s, border-color .15s; }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) label[hidden] { display: none; }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) label:hover { background: #f7eedf; border-color: #bba17d; }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) label:has(input:checked) { background: var(--armandos-soft-sage); border-color: var(--armandos-sage); color: #3f5336; box-shadow: inset 0 0 0 1px var(--armandos-sage); }
.armandos-combined-checkout #armandos-checkout-shipping :is(#armandos-fulfilment, #armandos-delivery-cities) label:focus-within { outline: 2px solid var(--armandos-sage); outline-offset: 2px; }
.armandos-combined-checkout #armandos-checkout-shipping input[type="radio"] { flex: 0 0 16px; width: 16px; height: 16px; margin: 0; accent-color: var(--armandos-sage); }
.armandos-combined-checkout #armandos-delivery-cities legend { color: var(--armandos-sage); font-weight: 600; margin-bottom: 8px; }
.woocommerce-MyAccount-navigation a { border-radius: 4px; }
.woocommerce-MyAccount-navigation .is-active a { color: var(--armandos-sage); font-weight: 700; }
.entry-content .wp-block-group.has-background { border: 1px solid #dfd0bb; }
#colophon.site-footer { background: var(--armandos-footer-background, #54252b); color: var(--armandos-footer-text, #fff6e8); border-top: 4px solid var(--armandos-gold); }
#colophon.site-footer h2, #colophon.site-footer a { color: var(--armandos-footer-text, #fff6e8); }
#colophon.site-footer a:hover { color: #e7c185; }
#colophon .armandos-footer-bottom { border-top-color: #ffffff30; color: var(--armandos-footer-text, #fff6e8); }
body .button:not(.armandos-order-remove), body button.single_add_to_cart_button, body #place_order,
body input[type="submit"], body .wp-block-button:not(.is-style-outline) > .wp-block-button__link:not(.has-background) { background: var(--armandos-button); border-color: var(--armandos-button); color: var(--armandos-button-text); }
body .button:not(.armandos-order-remove):hover, body #place_order:hover { background: var(--armandos-terracotta); border-color: var(--armandos-terracotta); }
#armandos-product-modal .single_add_to_cart_button { background: var(--armandos-button); color: var(--armandos-button-text); }
#armandos-product-modal { background: linear-gradient(155deg, color-mix(in srgb, var(--armandos-cream) 85%, var(--armandos-gold)) 0, var(--armandos-surface) 210px); }
#armandos-product-modal .armandos-extra-options > div:has(input:checked) { background: var(--armandos-soft-sage); border-color: var(--armandos-sage); box-shadow: inset 3px 0 var(--armandos-sage); }
#armandos-product-modal .armandos-extra-options input[type="checkbox"] { accent-color: var(--armandos-sage); }
#armandos-product-modal .wc-pao-addon-name { color: var(--armandos-sage); }
#armandos-product-modal .armandos-extra-options > div:has(input:checked) .wc-pao-addon-price { color: var(--armandos-sage); }
@media (max-width: 600px) {
  .armandos-menu .armandos-categories { background: var(--armandos-cream); }
  .armandos-categories [id^="armandos_categories-"] > ul > li > a { background: #f0e5d2; }
  .armandos-categories [id^="armandos_categories-"] > ul > li.current-cat > a { background: var(--armandos-soft-sage); }
}

/* Single product pages share the restaurant palette and compact ordering form. */
.single-product #primary { float: none; width: 100%; margin-right: 0; }
.single-product .storefront-breadcrumb { margin-bottom: 22px; padding: 18px 0 0; }
.single-product div.product { background: var(--armandos-surface); border: 1px solid #e0d1bc; border-top: 3px solid var(--armandos-burgundy); border-radius: 10px; padding: clamp(20px, 3vw, 40px); }
.single-product div.product .product_title { color: var(--armandos-burgundy); font-family: Georgia, serif; font-size: clamp(28px, 3vw, 40px); margin-bottom: 12px; }
.single-product div.product .summary > .price { color: var(--armandos-sage); font-size: 24px; font-weight: 600; margin-bottom: 18px; }
.single-product div.product .woocommerce-product-details__short-description { color: var(--armandos-text); }
.single-product div.product .woocommerce-product-gallery img { border-radius: 8px; }
.single-product.armandos-product-no-image div.product .summary { width: 100%; float: none; margin: 0 0 24px; }
.single-product div.product form.cart { margin: 20px 0; padding: 20px 0; border-top: 1px solid #e0d1bc; border-bottom: 1px solid #e0d1bc; }
.single-product div.product form.cart .quantity .qty { min-height: 46px; width: 68px; border: 1px solid #d7c8b3; border-radius: 6px; background: #fffdf8; box-shadow: none; }
.single-product div.product form.cart .single_add_to_cart_button { min-height: 46px; border-radius: 6px; }
.single-product div.product .wc-pao-addon { margin-bottom: 20px; }
.single-product div.product .wc-pao-addon-name { color: var(--armandos-sage); font-size: 18px; font-weight: 600; }
.single-product div.product .wc-pao-addon-container input[type="checkbox"], .single-product div.product .wc-pao-addon-container input[type="radio"] { accent-color: var(--armandos-sage); }
.single-product div.product .wc-pao-addon-wrap { margin-bottom: 8px; }
.single-product div.product .wc-pao-addon-wrap label { display: block; padding: 10px 12px; background: var(--armandos-cream); border: 1px solid #e0d1bc; border-radius: 6px; cursor: pointer; }
.single-product div.product .wc-pao-addon-wrap label:has(input:checked) { background: var(--armandos-soft-sage); border-color: var(--armandos-sage); }
.single-product div.product .product_meta { color: #806a56; font-size: 13px; }
.single-product div.product .woocommerce-tabs { padding-top: 24px; border-top: 1px solid #e0d1bc; }
.single-product div.product .woocommerce-tabs ul.tabs li.active a { color: var(--armandos-burgundy); }
.single-product div.product .woocommerce-tabs .panel h2, .single-product div.product .related > h2 { color: var(--armandos-burgundy); font-family: Georgia, serif; }
.single-product .related ul.products li.product { background: var(--armandos-cream); border-radius: 8px; padding: 16px; }
.single-product .related ul.products li.product .woocommerce-loop-product__title { color: var(--armandos-burgundy); }
.single-product .related ul.products li.product .price { color: var(--armandos-sage); }
@media (min-width: 768px) {
  .single-product div.product .wc-pao-addon-container:has(input[type="checkbox"]) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; }
  .single-product div.product .wc-pao-addon-container:has(input[type="checkbox"]) > .wc-pao-addon-name, .single-product div.product .wc-pao-addon-container:has(input[type="checkbox"]) > .wc-pao-addon-description { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .single-product div.product .summary { width: 100%; float: none; }
  .single-product div.product .woocommerce-product-gallery { width: 100%; float: none; margin-bottom: 24px; }
}
.single-product div.product .wc-pao-addon-container:has(input[type="checkbox"]) { display: block; }
.single-product div.product .wc-pao-addon-wrap:has(input[type="checkbox"]) { display: grid; grid-template-columns: 1fr; gap: 8px 12px; }
.single-product div.product .wc-pao-addon-wrap > div:has(input[type="checkbox"]) { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid #e0d1bc; border-radius: 6px; background: var(--armandos-cream); }
.single-product div.product .wc-pao-addon-wrap > div:has(input:checked) { background: var(--armandos-soft-sage); border-color: var(--armandos-sage); }
.single-product div.product .wc-pao-addon-wrap > div > input { margin: 0; flex-shrink: 0; }
.single-product div.product .wc-pao-addon-wrap > div > label { flex: 1; margin: 0; padding: 0; border: 0; background: transparent; }
@media (min-width: 768px) { .single-product div.product .wc-pao-addon-wrap:has(input[type="checkbox"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.single-product .armandos-single-layout { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 24px; }
.single-product .armandos-single-layout::before, .single-product .armandos-single-layout::after { display: none; }
.single-product .armandos-single-layout #primary { min-width: 0; }
.single-product .armandos-single-layout > .armandos-cart { grid-column: 2; }
@media (max-width: 767px) {
  .single-product .armandos-single-layout { grid-template-columns: minmax(0, 1fr); }
  .single-product .armandos-single-layout > .armandos-cart { grid-column: 1; }
}

/* Clear header icons on the light header; mobile keeps exactly three actions. */
#masthead .armandos-header-icon { color: var(--armandos-burgundy); background: transparent; flex-shrink: 0; }
#masthead .armandos-header-icon:hover { color: var(--armandos-burgundy); background: var(--armandos-soft-sage); }
#masthead .armandos-header-icon svg { stroke: currentColor; }
#masthead .armandos-header-account { display: none; }
@media (max-width: 850px) {


  #masthead .armandos-header-actions { flex-shrink: 0; gap: 2px; }
  #masthead .armandos-header-icon { width: 40px; height: 44px; }
  #masthead .armandos-site-name { min-width: 0; white-space: normal; line-height: 1.2; }
  #masthead .armandos-store-logo { max-width: min(180px, 38vw); }
}
/* The extras scroll independently; title, variations and ordering stay visible. */
#armandos-product-modal { overflow: hidden; padding: 28px; }
#armandos-product-modal[open] { display: flex; flex-direction: column; }
#armandos-product-modal.armandos-modal-has-extras { height: min(780px, calc(100dvh - 32px)); }
#armandos-product-modal .armandos-modal-content { display: flex; flex-direction: column; min-height: 0; }
#armandos-product-modal.armandos-modal-has-extras .armandos-modal-content { flex: 1; }
#armandos-product-modal .armandos-modal-content > h2,
#armandos-product-modal .armandos-modal-description { flex-shrink: 0; }
#armandos-product-modal .armandos-modal-description p:last-child { margin-bottom: 0; }
#armandos-product-modal form.cart { display: flex; flex-direction: column; min-height: 0; margin-top: 12px; }
#armandos-product-modal.armandos-modal-has-extras form.cart { flex: 1; }
#armandos-product-modal form.cart > :not(.armandos-modal-extras) { flex-shrink: 0; }
#armandos-product-modal .armandos-modal-extras { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding: 2px 6px 4px 2px; }
#armandos-product-modal .armandos-modal-extras .wc-pao-addon-container:last-child { margin-bottom: 0; }
#armandos-product-modal .armandos-modal-actions { flex-shrink: 0; margin-top: 12px; padding-top: 12px; }
#armandos-product-modal .armandos-modal-actions .single_add_to_cart_button { flex: 1 1 auto; width: 100%; max-width: 340px; min-height: 48px; justify-content: center; font-size: 15px; }
#armandos-product-modal .armandos-modal-errors:empty { display: none; }
#armandos-product-modal .armandos-modal-errors { flex-shrink: 0; max-height: 20dvh; overflow-y: auto; }
@media (max-width: 480px) {
  #armandos-product-modal { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); padding: 24px 12px 16px; }
  #armandos-product-modal.armandos-modal-has-extras { height: calc(100dvh - 16px); }
  #armandos-product-modal .armandos-modal-actions .single_add_to_cart_button { flex-direction: row; gap: 0; padding: 12px 10px; font-size: 14px; }
  #armandos-product-modal .armandos-modal-actions .armandos-modal-total { border-right: 1px solid #ffffff70; padding-right: 8px; margin-right: 8px; }
}

/* The mobile footer sits inside the dark footer but has a light surface. */
#colophon .storefront-handheld-footer-bar { background: var(--armandos-surface); color: var(--armandos-burgundy); border-top: 1px solid var(--armandos-gold); padding-bottom: env(safe-area-inset-bottom); }
#colophon .storefront-handheld-footer-bar ul li > a { color: var(--armandos-burgundy); background: var(--armandos-surface); }
#colophon .storefront-handheld-footer-bar ul li > a:hover { color: var(--armandos-burgundy); background: var(--armandos-soft-sage); }
#colophon .storefront-handheld-footer-bar ul li.menu > a { position: relative; }
#colophon .storefront-handheld-footer-bar ul li.menu svg { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); stroke: currentColor; }
#colophon .storefront-handheld-footer-bar .count { background: var(--armandos-burgundy); border-color: var(--armandos-burgundy); color: var(--armandos-button-text); }
/* Use the same bundled Font Awesome icon font as the native account/cart. */
#colophon .storefront-handheld-footer-bar ul li.menu > a::before {
  content: "\f2e7";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-style: normal;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  line-height: 2.618046972;
  font-size: 1.618em;
  text-align: center;
  text-indent: 0;
}
/* Avoid an iPhone keyboard toolbar overlap and Safari's small-input auto zoom. */
@media (max-width: 767px) {
  body.armandos-checkout-editing #colophon .storefront-handheld-footer-bar { display: none; }
  .armandos-combined-checkout form.checkout input.input-text,
  .armandos-combined-checkout form.checkout textarea,
  .armandos-combined-checkout form.checkout select { font-size: 16px; }
}
/* Include card padding in the checkbox click target. */
#armandos-product-modal .armandos-extra-options > div:has(input[type="checkbox"]:not(:disabled)) { cursor: pointer; }
#armandos-product-modal .armandos-extra-options > div:focus-within { outline: 2px solid var(--armandos-sage); outline-offset: 2px; }
