/* tribe-oxford */
body.tribe-oxford-theme #main-content { display: flow-root; }
body.tribe-oxford-theme #main-content > .order-history-page {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}
body.tribe-oxford-theme #main-content > .order-history-page .order-history-card {
  width: 100% !important;
  max-width: none !important;
}
body.tribe-oxford-theme .tribe-alert-banner {
  position: relative; top: auto; margin: 0; padding: 6px 16px; line-height: 1.4;
}
body.tribe-oxford-theme .tribe-logo { max-height: 80px; width: auto; object-fit: contain; }
body.tribe-oxford-theme .gift-voucher-page { width: 100%; max-width: none; }
body.tribe-oxford-theme .gift-voucher-shell,
body.tribe-oxford-theme .gift-voucher-panel,
body.tribe-oxford-theme .gift-voucher-table-wrap { min-width: 0; }
body.tribe-oxford-theme .gift-voucher-page > .gift-voucher-shell--narrow {
  width: min(900px, calc(100% - 32px)) !important;
  max-width: 900px !important; margin-inline: auto !important;
}
body.tribe-oxford-theme .gift-voucher-page--create .gift-voucher-form { margin-inline: auto; }
body.tribe-oxford-theme .gift-voucher-actions { margin-bottom: 24px; }
body.tribe-oxford-theme .tribe-footer .theme-footer-powered-logo {
  width: auto; height: 46px; max-width: 160px; object-fit: contain;
}

@media (min-width: 1200px) {
  body.tribe-oxford-theme { --tribe-page-width: min(1540px, calc(100vw - 96px)); }
  body.tribe-oxford-theme .tribe-navbar > .container,
  body.tribe-oxford-theme .tribe-footer > .container,
  body.tribe-oxford-theme #main-content > section > .container:not(.member_body_child),
  body.tribe-oxford-theme .tribe-ordering-section > .tribe-ordering-inner,
  body.tribe-oxford-theme .term_and_conditions_inner,
  body.tribe-oxford-theme .profile-page > .about_section_child_2,
  body.tribe-oxford-theme .gift-voucher-page > .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
    width: var(--tribe-page-width) !important;
    max-width: var(--tribe-page-width) !important;
    margin-inline: auto !important;
    padding-left: 0 !important; padding-right: 0 !important;
  }
  body.tribe-oxford-theme .tribe-navbar > .container { min-height: 90px; }
  body.tribe-oxford-theme #main-content > .order-history-page {
    padding-left: max(48px, calc((100% - 1540px) / 2)) !important;
    padding-right: max(48px, calc((100% - 1540px) / 2)) !important;
  }
  body.tribe-oxford-theme .tribe-ordering-inner {
    display: grid; grid-template-columns: minmax(0, 1fr) clamp(340px, 27vw, 420px);
    gap: 24px; align-items: start;
  }
  body.tribe-oxford-theme .tribe-ordering-inner > [class*="col-"] {
    width: 100% !important; max-width: 100% !important; min-width: 0; margin-top: 0;
  }
  body.tribe-oxford-theme .tribe-order-left { padding: 0; }
  body.tribe-oxford-theme .tribe-order-right { padding: 0; }
  body.tribe-oxford-theme .tribe-order-right-inner { margin: 0; padding: 0; }
  body.tribe-oxford-theme .tribe-order-right-inner > [class*="col-"] { margin-left: 0 !important; margin-right: 0 !important; }
  body.tribe-oxford-theme .tribe-order-left > .row {
    display: grid; grid-template-columns: 220px minmax(0, 1fr); margin: 0;
  }
  body.tribe-oxford-theme .tribe-order-title,
  body.tribe-oxford-theme .tribe-order-searchbar { grid-column: 1 / -1; width: 100%; }
  body.tribe-oxford-theme .tribe-order-searchbar { min-height: 80px; padding: 18px 24px; }
  body.tribe-oxford-theme .tribe-order-navbar { width: 220px; min-width: 0; padding: 20px 12px !important; }
  body.tribe-oxford-theme .tribe-order-navbar ul { padding: 0 !important; margin: 0 !important; }
  body.tribe-oxford-theme .tribe-order-navbar li { padding: 0; }
  body.tribe-oxford-theme .tribe-order-navbar li a {
    display: flex; align-items: center; min-height: 48px; padding: 12px;
    white-space: normal; line-height: 1.4;
  }
  body.tribe-oxford-theme .tribe-product-list { width: 100%; min-width: 0; padding: 20px; }
  body.tribe-oxford-theme .tribe-menu-banner { height: clamp(240px, 19vw, 320px); object-fit: cover; }
  body.tribe-oxford-theme .tribe-dish-card { min-height: 180px; padding-top: 24px !important; padding-bottom: 24px !important; }
  body.tribe-oxford-theme .tribe-product-desc { max-width: 46ch; line-height: 1.7; }
  body.tribe-oxford-theme .tribe-product-action-wrap > form { flex-direction: column; align-items: end !important; gap: 10px !important; }
  body.tribe-oxford-theme .tribe-variation-select { width: 100%; margin-top: 0 !important; min-height: 42px; }
  body.tribe-oxford-theme .tribe-qty-input,
  body.tribe-oxford-theme .tribe-add-btn { min-height: 42px; }

  body.tribe-oxford-theme .tribe-contact-section > .container > .row {
    display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 24px; margin: 0;
  }
  body.tribe-oxford-theme .tribe-contact-section > .container > .row > [class*="col-"] {
    width: 100%; min-width: 0; padding: 0; margin-top: 0;
  }
  body.tribe-oxford-theme .tribe-map-wrapper iframe { width: 100% !important; height: clamp(480px, 32vw, 560px) !important; }
  body.tribe-oxford-theme .tribe-contact-card { line-height: 1.75; overflow-wrap: anywhere; }

  body.tribe-oxford-theme .confirm_order_section_child {
    display: grid; grid-template-columns: minmax(270px, 1fr) minmax(0, 1.8fr) minmax(280px, 1fr);
    gap: 24px; align-items: start;
  }
  body.tribe-oxford-theme .confirm_order_section_child > :first-child { grid-column: 1 / -1; }
  body.tribe-oxford-theme .confirm_order_section_child > [class*="col-"] {
    width: 100% !important; max-width: 100% !important; min-width: 0; margin-top: 0; padding: 0;
  }
  body.tribe-oxford-theme .confirm_order_section_child > [class*="col-"] > div > .row { margin-left: 0; margin-right: 0; }
  body.tribe-oxford-theme .order_confirm_right_top1 .container { width: 100%; max-width: 100%; }
  body.tribe-oxford-theme .confirm_order_section_child input:not([type="checkbox"]):not([type="radio"]) { min-height: 48px; }
  body.tribe-oxford-theme .full-cart-shell td { padding-top: 12px; padding-bottom: 12px; }
  body.tribe-oxford-theme .order-history-loyalty-card .card-body { min-height: 230px; padding: 28px; line-height: 1.7; }
  body.tribe-oxford-theme .order-history-page table :is(td, th) { padding-top: 16px; padding-bottom: 16px; }
  body.tribe-oxford-theme .term_and_conditions_section_title_box_right_content { padding: 28px; line-height: 1.85; }
  body.tribe-oxford-theme .tribe-gallery-card img { height: clamp(280px, 21vw, 360px); object-fit: cover; }
  body.tribe-oxford-theme .tribe-menu-inner > div > .row { align-items: start; }
  body.tribe-oxford-theme .tribe-menu-img { display: block; width: 100%; height: auto; object-fit: contain; }

  body.tribe-oxford-theme .member_body_child {
    width: min(1280px, calc(100vw - 96px)) !important; max-width: 1280px !important; margin-inline: auto !important;
  }
  body.tribe-oxford-theme .member_body_child input:not([type="checkbox"]):not([type="radio"]) { min-height: 48px; }
  body.tribe-oxford-theme .member_body_child_left,
  body.tribe-oxford-theme .member_body_child_right_child { padding: 32px !important; }
  body.tribe-oxford-theme .profile-page .margin-section { width: 100%; max-width: 1080px; margin-inline: auto; }
  body.tribe-oxford-theme .profile-page .margin-section > .row { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 32px; margin: 0; }
  body.tribe-oxford-theme .profile-page .margin-section > .row > [class*="col-"] { width: 100%; min-width: 0; padding: 0; }
  body.tribe-oxford-theme .profile-page .update-section { max-width: none !important; }
  body.tribe-oxford-theme .tribe-account-section > .container { max-width: 1280px !important; }
  body.tribe-oxford-theme .tribe-password-form { max-width: 640px; margin-inline: auto; }
  body.tribe-oxford-theme .tribe-password-form .form-control { min-height: 50px; }
}

/* Kutting-Chai1 */
body.kuttingchai-theme { --kc-page-width: calc(100% - 32px); }

    /* Align page shells with the header; keep nested forms and modal widths local. */
    body.kuttingchai-theme .store-status-anchor > header > .container,
    body.kuttingchai-theme > footer > .container,
    body.kuttingchai-theme .kc-main > .container,
    body.kuttingchai-theme .kc-main > section > .container,
    body.kuttingchai-theme .kc-main > div > .container:not(.gift-voucher-shell--narrow),
    body.kuttingchai-theme .ordering_section > .ordering_section_child,
    body.kuttingchai-theme .term_and_conditions_inner,
    body.kuttingchai-theme .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        margin-inline: auto !important;
        max-width: var(--kc-page-width) !important;
        padding-inline: 0 !important;
        width: var(--kc-page-width) !important;
    }

    body.kuttingchai-theme .kc-main > .container-fluid,
    body.kuttingchai-theme .kc-main .ordering_section,
    body.kuttingchai-theme .kc-main .confirm_order_section { padding-inline: 0 !important; }
    body.kuttingchai-theme .store-status-anchor > header { position: relative; top: auto; }
    body.kuttingchai-theme .store-status-anchor header .kutting-chai img { height: 64px; width: auto; max-width: 120px; object-fit: contain; }
    body.kuttingchai-theme .kc-hero-slide { height: clamp(520px, 42vw, 740px); min-height: 0; }
    body.kuttingchai-theme .kc-hero-slide--single .kc-hero-content { min-height: 0; margin-top: 0 !important; padding-block: 64px; }
    body.kuttingchai-theme .kc-hero-content { max-width: min(1100px, calc(100% - 32px)); }
    body.kuttingchai-theme .kc-food-section,
    body.kuttingchai-theme .kc-loyalty-section { padding-block: clamp(48px, 5vw, 80px); padding-inline: 0; }
    body.kuttingchai-theme .kc-food-image,
    body.kuttingchai-theme .kc-loyalty-img { width: 100%; height: clamp(360px, 32vw, 520px); object-fit: cover; }
    body.kuttingchai-theme .kc-food-text,
    body.kuttingchai-theme .kc-loyalty-section p { line-height: 1.8; }
    body.kuttingchai-theme .kc-home-hero-content { width: min(960px, calc(100% - 32px)); margin-inline: auto; }
    body.kuttingchai-theme .kc-home-hero-text { line-height: 1.8; }

    body.kuttingchai-theme .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start !important; gap: 24px !important; }
    body.kuttingchai-theme .about_section_child_2 > .d-flex > div { min-width: 0; }
    body.kuttingchai-theme .about_section_child_2 > .d-flex img { height: auto; width: 100%; display: block; }
    body.kuttingchai-theme .about_section_child_2 > .d-flex embed { height: clamp(420px, 40vw, 650px); }
    body.kuttingchai-theme .kc-main .card-img-top { aspect-ratio: 4 / 3; height: auto; width: 100%; object-fit: cover; }
    body.kuttingchai-theme .kc-map-container iframe { width: 100% !important; height: clamp(340px, 30vw, 500px) !important; }
    body.kuttingchai-theme .contact_us_child_right { overflow-wrap: anywhere; }
    body.kuttingchai-theme .kc-contact-page { padding-block: clamp(40px, 4vw, 64px) !important; min-height: 0; }
    body.kuttingchai-theme .kc-contact-layout { --bs-gutter-x: 0; --bs-gutter-y: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
    body.kuttingchai-theme .kc-contact-title { grid-column: 1 / -1; margin: 0; padding: 0; }
    body.kuttingchai-theme .kc-contact-layout > :is(.contact_us_child_left, .contact_us_child_right) { margin: 0 !important; padding: 0 !important; width: 100%; min-width: 0; }
    body.kuttingchai-theme .kc-contact-layout :is(.contact_us_child_left > .row, .contact_us_child_right_child) { margin: 0 !important; width: 100%; gap: 24px; }
    body.kuttingchai-theme .kc-contact-layout :is(.contact_us_child_left_child_top, .delivery_body_box, .contact_us_child_right_child_top, .contact_us_child_right_child_bottom) { width: 100%; margin: 0 !important; }
    body.kuttingchai-theme .kc-contact-layout .contact_us_child_left_child_top > div { margin-bottom: 0 !important; }
    body.kuttingchai-theme .kc-contact-layout .card-body { padding: 16px; }
    body.kuttingchai-theme .kc-contact-layout .card-body > div { margin: 0 !important; padding: 0 !important; }
    body.kuttingchai-theme .kc-map-container iframe { display: block; height: clamp(360px, 34vw, 560px) !important; }
    body.kuttingchai-theme .ordering_section_child { align-items: start; }
    body.kuttingchai-theme .ordering_section_child_right_child { margin-inline: 0; }
    body.kuttingchai-theme .ordering_section_child_right_child > * { margin-inline: 0 !important; min-width: 0; max-width: 100%; }
    body.kuttingchai-theme .ordering_section_child_right_child .catalog-sidebar__image { height: auto !important; max-height: 440px; object-fit: cover; }
    body.kuttingchai-theme .ordering_section_child_left_child1_navbar_dish_list > img { height: auto !important; aspect-ratio: 3 / 1; object-fit: cover; }

    body.kuttingchai-theme .member_body { min-height: 0 !important; padding-block: clamp(40px, 5vw, 72px) !important; }
    body.kuttingchai-theme .member_body_child { display: grid; grid-template-columns: 1fr; align-items: start; gap: 24px; }
    body.kuttingchai-theme .member_body_child > [class*="col-"] { min-width: 0; width: 100%; padding: 24px !important; }
    body.kuttingchai-theme .member_body_child_right { margin-top: 0 !important; padding: 0 !important; }
    body.kuttingchai-theme .member_body_child_right_child1 { padding: 24px !important; }
    body.kuttingchai-theme .member_body_child form { max-width: 460px; margin-inline: auto; width: 100%; }
    body.kuttingchai-theme .member_body_child_right_child1 > div { max-width: 600px; width: 100%; }
    body.kuttingchai-theme .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; margin-top: 16px !important; padding-inline: 0; }
    body.kuttingchai-theme .member_body_child form > .row:has(> label) > label { width: 100% !important; padding: 0; text-align: left !important; }
    body.kuttingchai-theme .member_body_child form > .row:has(> label) > .invalid-feedback { grid-column: 2; }
    body.kuttingchai-theme .member_body_child input:not([type="checkbox"]):not([type="radio"]) { height: auto !important; min-height: 46px; min-width: 0; width: 100% !important; }
    body.kuttingchai-theme .profile-page .about_section_child_2 > .container { max-width: none; padding-inline: 0; width: 100%; }
    body.kuttingchai-theme .kc-main > .container > form { max-width: 760px; margin-inline: auto; }

    body.kuttingchai-theme .confirm_order_section_child .checkout-sidebar__stack { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 0 !important; width: 100%; }
    body.kuttingchai-theme .confirm_order_section_child .checkout-sidebar__stack > * { min-width: 0; width: 100%; margin: 0 !important; }
    body.kuttingchai-theme .confirm_order_section_child :is(.checkout-sidebar__card, .checkout-loyalty-card) { padding: 24px !important; }
    body.kuttingchai-theme .confirm_order_section_child .checkout-sidebar__security-row { margin: 24px 0 0 !important; padding: 0; }
    body.kuttingchai-theme .confirm_order_section_child .checkout-sidebar__security-row > .checkout-sidebar__card { margin-top: 0; }
    body.kuttingchai-theme .order_confirm_right_box > div > .row { margin-inline: 0; }

    @media (min-width: 576px) and (max-width: 767.98px) {
        body.kuttingchai-theme { --kc-page-width: min(540px, calc(100% - 32px)); }
    }
    @media (min-width: 768px) and (max-width: 991.98px) {
        body.kuttingchai-theme { --kc-page-width: min(720px, calc(100% - 32px)); }
    }
    @media (min-width: 768px) {
        body.kuttingchai-theme .kc-contact-layout { grid-template-columns: minmax(0, 1fr) 300px; }
        body.kuttingchai-theme :is(.kc-food-section, .kc-loyalty-section) > .container > .row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; margin-inline: 0; }
        body.kuttingchai-theme :is(.kc-food-section, .kc-loyalty-section) > .container > .row > [class*="col-"] { min-width: 0; padding-inline: 0; margin: 0 !important; width: 100%; }
    }
    @media (min-width: 992px) {
        body.kuttingchai-theme .store-status-anchor header > .container { display: grid; grid-template-columns: 120px minmax(0, 1fr); align-items: center; gap: 24px; min-height: 88px; }
        body.kuttingchai-theme .store-status-anchor header > .container > [class*="col-"] { min-width: 0; width: 100%; padding: 0 !important; }
        body.kuttingchai-theme .store-status-anchor header > .container > :first-child > .row { margin: 0; }
        body.kuttingchai-theme .store-status-anchor header > .container > :first-child .col-8 { width: 100%; padding: 0; }
        body.kuttingchai-theme .store-status-anchor header > .container > :first-child .col-4 { display: none; }
        body.kuttingchai-theme #navbar { position: static !important; inset: auto; transform: none !important; width: 100% !important; }
        body.kuttingchai-theme #navbar > ul { width: 100%; }
        body.kuttingchai-theme #navbar > ul { gap: clamp(6px, 0.8vw, 14px); justify-content: center !important; margin: 0; padding: 0; min-height: 88px; }
        body.kuttingchai-theme #navbar > ul > li:has(> .x_mark) { display: none; }
        body.kuttingchai-theme #navbar > ul > .col-lg-3 { flex: 0 0 auto; width: auto; white-space: nowrap; }
        body.kuttingchai-theme #navbar > ul > li { padding-inline: 0; }
        body.kuttingchai-theme #navbar > ul > .kc-nav-home,
        body.kuttingchai-theme #navbar > ul > .kc-auth-actions,
        body.kuttingchai-theme #navbar > ul > .kc-hygiene-item--member { margin-left: auto; }
        body.kuttingchai-theme #navbar > ul > .kc-hygiene-item { padding: 0; }
        body.kuttingchai-theme .kc-hygiene-item .food-hygiene-badge { margin-inline: 0; }
        body.kuttingchai-theme .ordering_section_child { display: grid; grid-template-columns: minmax(0, 1fr) clamp(320px, 26vw, 400px); gap: 24px; }
        body.kuttingchai-theme .ordering_section_child > [class*="col-"] { min-width: 0; padding: 0; width: 100%; }
        body.kuttingchai-theme .ordering_section_child_left_child1 { display: grid; grid-template-columns: 200px minmax(0, 1fr); margin-inline: 0; }
        body.kuttingchai-theme .ordering_section_child_left_child1_title,
        body.kuttingchai-theme .ordering_section_child_left_child1_search_bar { grid-column: 1 / -1; }
        body.kuttingchai-theme .ordering_section_child_left_child1 > [class*="col-"] { min-width: 0; width: 100%; }
        body.kuttingchai-theme .ordering_section_child_left_child1_search_bar { margin-inline: 0 !important; width: 100%; min-height: 76px; padding-block: 12px; }
        body.kuttingchai-theme .dish_card { min-height: 120px; }
        body.kuttingchai-theme .kc-contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; }
        body.kuttingchai-theme .kc-contact-layout > [class*="col-"] { min-width: 0; padding-inline: 0 !important; width: 100%; }
        body.kuttingchai-theme .contact_us_child_right_child { margin-inline: 0; }
        body.kuttingchai-theme .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.kuttingchai-theme .confirm_order_section_child { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(0, 1.65fr) minmax(260px, 1fr); align-items: start; gap: 32px; }
        body.kuttingchai-theme .confirm_order_section_child > .mt-4 { grid-column: 1 / -1; }
        body.kuttingchai-theme .confirm_order_section_child > [class*="col-"] { margin-top: 0; min-width: 0; padding-inline: 0; width: 100% !important; }
        body.kuttingchai-theme .order_confirm_left_box > div > .row { margin-inline: 0; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.kuttingchai-theme { --kc-page-width: min(960px, calc(100% - 32px)); }
        body.kuttingchai-theme .store-status-anchor header > .container { grid-template-columns: 96px minmax(0, 1fr); gap: 16px; }
        body.kuttingchai-theme #navbar > ul :is(a, button) { font-size: 0.7rem; }
        body.kuttingchai-theme #navbar > ul > .col-lg-3 .btn_sign_up { width: auto; min-width: 64px; padding-inline: 8px; }
        body.kuttingchai-theme .ordering_section_child_left_child1 { grid-template-columns: 160px minmax(0, 1fr); }
        body.kuttingchai-theme .dish_card > [class*="col-"] { width: 100%; }
        body.kuttingchai-theme .confirm_order_section_child { grid-template-columns: minmax(260px, 1fr) minmax(0, 1.5fr); gap: 24px; }
        body.kuttingchai-theme .confirm_order_section_child > .order_confirm_middle_box { grid-column: 1 / -1; }
    }
    @media (min-width: 1200px) {
        body.kuttingchai-theme { --kc-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 767.98px) {
        body.kuttingchai-theme .kc-hero-slide { height: 500px; }
        body.kuttingchai-theme .kc-food-image,
        body.kuttingchai-theme .kc-loyalty-img { height: 320px; }
        body.kuttingchai-theme .about_section_child_2 > .d-flex { grid-template-columns: 1fr; }
        body.kuttingchai-theme .member_body_child form > .row:has(> label) { grid-template-columns: 100px minmax(0, 1fr); }
        body.kuttingchai-theme .member_body_child label { font-size: 1rem !important; }
    }

/* sims-kitchen */
/* Shared desktop rails. Only page-level containers expand; nested forms keep their own width. */
@media (min-width: 1200px) {
  body.theme-sims-kitchen {
    --sk-page-width: min(1540px, calc(100vw - 96px));
  }

  body.theme-sims-kitchen .sk-header-nav > .container,
  body.theme-sims-kitchen .custom-footer > .container,
  body.theme-sims-kitchen .hero-sim > .container,
  body.theme-sims-kitchen .sk-story > .container,
  body.theme-sims-kitchen .sk-week-new > .container,
  body.theme-sims-kitchen .sk-month-spotlight > .container,
  body.theme-sims-kitchen .sk-love-new > .container,
  body.theme-sims-kitchen .sk-best-slider > .container,
  body.theme-sims-kitchen .sk-reviews-new > .container,
  body.theme-sims-kitchen .order-section > .container,
  body.theme-sims-kitchen .contact-tribe > .container,
  body.theme-sims-kitchen .sims-checkout-page > .container,
  body.theme-sims-kitchen .sims-gallery-inner,
  body.theme-sims-kitchen .term_and_conditions_inner,
  body.theme-sims-kitchen .order-history-page,
  body.theme-sims-kitchen .gift-voucher-page > .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
    width: var(--sk-page-width) !important;
    max-width: var(--sk-page-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.theme-sims-kitchen .hero-sim {
    min-height: 640px;
    padding-top: 80px;
    padding-bottom: 80px;
  }

  body.theme-sims-kitchen .hero-image-box img {
    width: 100%;
    height: clamp(380px, 30vw, 480px);
    object-fit: cover;
  }

  /* Menu: bounded category and cart columns, taller product rows. */
  body.theme-sims-kitchen .order-section > .container > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(340px, 28vw, 420px);
    gap: 24px;
    margin: 0;
  }

  body.theme-sims-kitchen .order-section > .container > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 0;
  }

  body.theme-sims-kitchen .left-panel {
    padding: 24px;
  }

  body.theme-sims-kitchen .sk-catalog-sidebar {
    flex: 0 0 220px;
    max-width: 220px;
  }

  body.theme-sims-kitchen .sk-catalog-sidebar + .col-lg-9 {
    flex: 0 0 calc(100% - 220px);
    max-width: calc(100% - 220px);
  }

  body.theme-sims-kitchen .sk-catalog-sidebar .category-btn {
    min-height: 48px;
    padding: 12px;
    line-height: 1.4;
    white-space: normal;
  }

  body.theme-sims-kitchen .order-section .product-card {
    min-height: 172px;
    padding: 24px 16px;
    gap: 16px;
  }

  body.theme-sims-kitchen .sk-product-description {
    max-width: 44ch;
    font-size: 14px;
    line-height: 1.7;
  }

  body.theme-sims-kitchen .sk-product-actions {
    flex-shrink: 0;
    max-width: 45%;
  }

  body.theme-sims-kitchen .sims-image-card__media,
  body.theme-sims-kitchen .sims-image-card__media img {
    height: clamp(280px, 20vw, 360px);
  }

  /* Contact: increase the map's height with its width. */
  body.theme-sims-kitchen .contact-tribe > .container > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 440px;
    gap: 24px;
    margin: 0;
  }

  body.theme-sims-kitchen .contact-tribe > .container > .row > .col-lg-6 {
    width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 0;
  }

  body.theme-sims-kitchen .contact-tribe .sk-map-frame,
  body.theme-sims-kitchen .contact-tribe .sk-map-frame iframe {
    width: 100% !important;
    height: clamp(480px, 32vw, 560px) !important;
  }

  body.theme-sims-kitchen .contact-tribe .sk-map-frame iframe {
    display: block;
  }

  body.theme-sims-kitchen .contact-tribe .box-body {
    padding: 26px;
    line-height: 1.75;
    overflow-wrap: anywhere;
  }

  /* Checkout: allow the contact/payment column more room than either side column. */
  body.theme-sims-kitchen .sims-checkout-page > .container > .row {
    display: grid;
    grid-template-columns: minmax(270px, 1fr) minmax(0, 1.7fr) minmax(280px, 1fr);
    gap: 24px;
    margin: 0;
    align-items: start;
  }

  body.theme-sims-kitchen .sims-checkout-page > .container > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 0;
  }

  body.theme-sims-kitchen .sims-checkout-page .checkout-contact-section .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  body.theme-sims-kitchen .sims-checkout-page .checkout-input {
    min-height: 50px;
  }

  body.theme-sims-kitchen .sims-checkout-page .full-cart-shell td {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  body.theme-sims-kitchen .sims-checkout-page .loyalty-points__panel {
    min-height: 420px;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }

  /* Taller loyalty summary and readable table rows. */
  body.theme-sims-kitchen .order-history-loyalty-card > .card-body {
    min-height: 240px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
  }

  body.theme-sims-kitchen .order-history-loyalty-card > .card-body > h4,
  body.theme-sims-kitchen .order-history-loyalty-card > .card-body > p {
    margin: 0 !important;
  }

  body.theme-sims-kitchen .order-history-table th,
  body.theme-sims-kitchen .order-history-table td {
    padding: 16px !important;
  }

  body.theme-sims-kitchen .term-sidebar p,
  body.theme-sims-kitchen #terms-text p,
  body.theme-sims-kitchen #terms-text li {
    line-height: 1.85;
  }

  body.theme-sims-kitchen .term_and_conditions_section_title_box_right_content {
    padding: 28px;
  }

  body.theme-sims-kitchen #terms-text {
    max-width: 74ch;
    margin-left: auto;
    margin-right: auto;
  }

  /* Account forms remain centered at a comfortable width. */
  body.theme-sims-kitchen .sk-login-section > .member_body_child {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-sims-kitchen .sk-login-section .member_body_child_right_child1 {
    min-height: 480px;
    padding: 40px 32px !important;
  }

  body.theme-sims-kitchen .sk-login-section .member_body_child_left {
    padding: 32px !important;
  }

  body.theme-sims-kitchen .sk-login-section form > .row:has(> label) {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding-left: 0;
    padding-right: 0;
  }

  body.theme-sims-kitchen .sk-login-section form > .row > label {
    width: 100%;
    padding: 0;
  }

  body.theme-sims-kitchen .sk-login-section form input:not([type="checkbox"]):not([type="submit"]) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 50px;
  }

  body.theme-sims-kitchen .sk-login-section .consent_box input[type="checkbox"] {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
  }

  body.theme-sims-kitchen .sk-login-section .member_body_child_right_child1 form {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  body.theme-sims-kitchen .sk-login-section .member_body_child_right_child1 form > .row {
    margin-top: 0 !important;
  }

  body.theme-sims-kitchen .profile-page .about_section_child_2 {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-sims-kitchen .profile-page .margin-section {
    width: 100%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
  }

  body.theme-sims-kitchen .profile-page .margin-section > .row {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 32px;
    margin: 0;
  }

  body.theme-sims-kitchen .profile-page .margin-section > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    padding: 0;
  }

  body.theme-sims-kitchen .profile-page .profile-form-card {
    max-width: none !important;
  }

  body.theme-sims-kitchen .pdf-menu-section > .container {
    width: min(1400px, calc(100vw - 96px)) !important;
    max-width: 1400px !important;
  }

  body.theme-sims-kitchen .pdf-menu-wrapper {
    width: 100%;
    max-width: none;
  }
}

@media (min-width: 768px) {
  body.theme-sims-kitchen .gift-voucher-page > .gift-voucher-shell--narrow {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

body.theme-sims-kitchen .gift-voucher-page--create .gift-voucher-form {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.theme-sims-kitchen .gift-voucher-page--index .gift-voucher-header {
  margin-bottom: 24px;
}

body.theme-sims-kitchen .gift-voucher-page--index .gift-voucher-actions .gift-voucher-btn {
  background: #e02bbf !important;
  border: 1px solid #e02bbf !important;
  color: #ffffff !important;
  padding: 10px 18px;
  border-radius: 8px;
  font-weight: 600;
}

body.theme-sims-kitchen .gift-voucher-page--index .gift-voucher-actions .gift-voucher-btn:hover {
  background: #c81aa6 !important;
  border-color: #c81aa6 !important;
}

body.theme-sims-kitchen .custom-footer .sk-footer-logo {
  display: block;
  width: auto;
  height: auto;
  max-width: min(210px, 100%);
  max-height: 145px;
  object-fit: contain;
}

body.theme-sims-kitchen .custom-footer .theme-footer-powered-logo {
  width: auto;
  height: 46px;
  max-width: 160px;
  object-fit: contain;
}
/* Mobile layout: widen the main sections while keeping a small, even gutter. */
@media (max-width: 767.98px) {
  body.theme-sims-kitchen .sk-header-nav > .container,
  body.theme-sims-kitchen .custom-footer > .container,
  body.theme-sims-kitchen .hero-sim > .container,
  body.theme-sims-kitchen .sk-story > .container,
  body.theme-sims-kitchen .sk-week-new > .container,
  body.theme-sims-kitchen .sk-month-spotlight > .container,
  body.theme-sims-kitchen .sk-love-new > .container,
  body.theme-sims-kitchen .sk-best-slider > .container,
  body.theme-sims-kitchen .sk-reviews-new > .container,
  body.theme-sims-kitchen .order-section > .container,
  body.theme-sims-kitchen .contact-tribe > .container,
  body.theme-sims-kitchen .sims-checkout-page > .container,
  body.theme-sims-kitchen .sims-gallery-inner,
  body.theme-sims-kitchen .term_and_conditions_inner,
  body.theme-sims-kitchen .order-history-page {
    box-sizing: border-box;
    width: calc(100% - 12px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-sims-kitchen .order-section {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  body.theme-sims-kitchen .order-section > .container > .row {
    --bs-gutter-x: 8px;
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-sims-kitchen .order-section > .container > .row > [class*="col-"] {
    padding-left: 4px;
    padding-right: 4px;
  }

  body.theme-sims-kitchen .left-panel {
    min-height: 0;
    padding: 12px;
  }

  body.theme-sims-kitchen .order-section .product-card {
    min-width: 0;
    padding: 10px;
    gap: 10px;
  }
}

/* punjabi */
body.punjabi-theme.page-order-history,
body.punjabi-theme.page-order-history .punjabi-main {
  background: var(--punjabi-black, #181818) !important;
}
body.punjabi-theme.page-order-history .punjabi-main {
  display: flow-root;
}
body.punjabi-theme .punjabi-pdf-menu-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start !important;
  gap: 24px !important;
}
body.punjabi-theme .punjabi-pdf-menu-grid > div { min-width: 0; }
body.punjabi-theme .punjabi-pdf-menu-grid a,
body.punjabi-theme .punjabi-pdf-menu-grid img { display: block; }
body.punjabi-theme .punjabi-pdf-menu-grid img { width: 100%; height: auto; }
@media (max-width: 767.98px) {
  body.punjabi-theme .punjabi-pdf-menu-grid { grid-template-columns: 1fr; }
}
body.punjabi-theme .store-status-anchor header {
  position: relative;
  top: auto;
}
body.punjabi-theme .store-status-anchor header .logo-punjabi img {
  width: auto !important;
  height: 80px !important;
  max-width: 150px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain;
}
body.punjabi-theme .store-status-anchor header .header_navbar { transform: none; }
body.punjabi-theme .store-status-anchor .theme-header-alert {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  margin: 0;
  padding: 6px 16px;
  line-height: 1.4;
}
@media (min-width: 992px) {
  body.punjabi-theme .punjabi-catalog__main > .row { margin-top: 0; }
  body.punjabi-theme .punjabi-catalog__aside { margin-top: 0; }
}
/* Keep full page rails aligned; nested forms retain their own readable widths. */
@media (min-width: 1200px) {
  body.punjabi-theme { --punjabi-page-width: min(1540px, calc(100vw - 96px)); }

  body.punjabi-theme .store-status-anchor header > .container,
  body.punjabi-theme .punjabi-footer > .container,
  body.punjabi-theme .punjabi-home > .container,
  body.punjabi-theme .punjabi-catalog > .punjabi-catalog__shell,
  body.punjabi-theme .punjabi-main > section > .container:not(.member_body_child),
  body.punjabi-theme .punjabi-main > .about_section > .about_section_child_2,
  body.punjabi-theme .term_and_conditions_inner,
  body.punjabi-theme .punjabi-main > .order-history-page,
  body.punjabi-theme .gift-voucher-page > .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
    width: var(--punjabi-page-width) !important;
    max-width: var(--punjabi-page-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.punjabi-theme .store-status-anchor header > .container { min-height: 100px; }

  body.punjabi-theme .punjabi-catalog__shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(340px, 27vw, 420px);
    gap: 24px;
  }
  body.punjabi-theme .punjabi-catalog__shell > .punjabi-catalog__title {
    grid-column: 1 / -1;
  }
  body.punjabi-theme .punjabi-catalog__shell > .punjabi-catalog__title p { margin-bottom: 0; }
  body.punjabi-theme .punjabi-catalog__shell > [class*="col-"] {
    width: 100% !important; max-width: 100% !important; min-width: 0; padding: 0;
  }
  body.punjabi-theme .punjabi-catalog__main > .row {
    margin: 0;
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
  }
  body.punjabi-theme .punjabi-catalog__title,
  body.punjabi-theme .punjabi-catalog__topbar { grid-column: 1 / -1; width: 100%; }
  body.punjabi-theme .punjabi-catalog__topbar { min-height: 100px; padding: 20px 24px 20px 234px; }
  body.punjabi-theme .punjabi-catalog__menu {
    width: 210px; margin-top: -100px; align-self: start;
  }
  body.punjabi-theme .punjabi-catalog__menu a {
    min-height: 48px; padding: 14px 18px; white-space: normal; line-height: 1.4;
  }
  body.punjabi-theme .punjabi-catalog__products {
    width: 100%; min-width: 0; padding: 24px 0 0 24px !important;
  }
  body.punjabi-theme .punjabi-catalog__grid {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px; margin: 0;
  }
  body.punjabi-theme .punjabi-catalog__grid > [class*="col-"] {
    width: 100%; min-width: 0; margin: 0; padding: 0;
  }
  body.punjabi-theme .punjabi-menu-card { min-height: 410px; }
  body.punjabi-theme .punjabi-menu-card__image-wrap { height: 220px; }
  body.punjabi-theme .punjabi-menu-card__image { width: 100%; height: 100%; object-fit: cover; }
  body.punjabi-theme .punjabi-menu-card__body { flex: 1; padding: 20px; }
  body.punjabi-theme .punjabi-menu-card__action { margin-top: auto; }

  body.punjabi-theme .kc-contact-layout {
    display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 32px;
  }
  body.punjabi-theme .kc-contact-layout > [class*="col-"] {
    width: 100%; min-width: 0; margin-top: 0; padding: 0 !important;
  }
  body.punjabi-theme .kc-map-container iframe {
    width: 100% !important; height: clamp(480px, 31vw, 560px) !important;
  }
  body.punjabi-theme .kc-contact-layout .card-body { line-height: 1.75; overflow-wrap: anywhere; }

  body.punjabi-theme .confirm_order_section_child {
    display: grid; grid-template-columns: minmax(270px, 1fr) minmax(0, 1.8fr) minmax(280px, 1fr);
    gap: 24px; align-items: start;
  }
  body.punjabi-theme .confirm_order_section_child > :first-child { grid-column: 1 / -1; }
  body.punjabi-theme .confirm_order_section_child > [class*="col-"] {
    width: 100% !important; min-width: 0; max-width: 100% !important; margin-top: 0; padding: 0;
  }
  body.punjabi-theme .confirm_order_section_child > [class*="col-"] > div > .row {
    margin-left: 0; margin-right: 0;
  }
  body.punjabi-theme .order_confirm_right_top1 > .container { width: 100%; max-width: 100%; }
  body.punjabi-theme .confirm_order_section input:not([type="checkbox"]):not([type="radio"]) { min-height: 48px; }
  body.punjabi-theme .full-cart-shell td { padding-top: 12px; padding-bottom: 12px; }

  body.punjabi-theme .order-history-page .loyalty-points-section {
    min-height: 230px; padding: 28px; line-height: 1.7;
  }
  body.punjabi-theme .order-history-page table td,
  body.punjabi-theme .order-history-page table th { padding-top: 16px; padding-bottom: 16px; }
  body.punjabi-theme .term_and_conditions_right { padding: 28px; line-height: 1.85; }
  body.punjabi-theme .term_and_conditions_right p { max-width: 74ch; }
  body.punjabi-theme .punjabi-gallery__image { height: clamp(280px, 21vw, 360px); object-fit: cover; }
  body.punjabi-theme .about_section_child_2 > .d-flex:has([data-fancybox]) {
    display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px !important;
  }
  body.punjabi-theme .about_section_child_2 > .d-flex:has([data-fancybox]) img {
    width: 100%; height: auto; object-fit: contain;
  }

  body.punjabi-theme .member_body_child {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important; margin-inline: auto !important;
  }
  body.punjabi-theme .member_body_child input:not([type="checkbox"]):not([type="radio"]) { min-height: 48px; }
  body.punjabi-theme .member_body_child_left,
  body.punjabi-theme .member_body_child_right_child { padding: 32px !important; }
  body.punjabi-theme .profile-page .margin-section {
    width: 100%; max-width: 1080px; margin-inline: auto;
  }
  body.punjabi-theme .profile-page .margin-section > .row {
    display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 32px; margin: 0;
  }
  body.punjabi-theme .profile-page .margin-section > .row > [class*="col-"] { width: 100%; min-width: 0; padding: 0; }
  body.punjabi-theme .profile-page .update-section { max-width: none !important; }
}

@media (min-width: 1600px) {
  body.punjabi-theme .punjabi-catalog__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

body.punjabi-theme .gift-voucher-page { width: 100%; max-width: none; }
body.punjabi-theme .gift-voucher-shell { min-width: 0; margin-inline: auto; }
body.punjabi-theme .gift-voucher-panel,
body.punjabi-theme .gift-voucher-table-wrap { min-width: 0; max-width: 100%; }
body.punjabi-theme .gift-voucher-page > .gift-voucher-shell--narrow {
  width: min(900px, calc(100% - 32px)) !important; max-width: 900px !important;
}
body.punjabi-theme .gift-voucher-page--create .gift-voucher-form { margin-inline: auto; }
body.punjabi-theme .gift-voucher-actions { margin-bottom: 24px; }
body.punjabi-theme .kc-change-password-shell .about_section_child_2,
body.punjabi-theme .kc-change-password-shell .order-history-page,
body.punjabi-theme .kc-change-password-shell .order-history-page > .container {
  width: 100% !important; max-width: none !important; margin-inline: auto !important; padding-inline: 0 !important;
}
body.punjabi-theme .kc-change-password-card {
  width: min(560px, calc(100% - 32px)); max-width: 560px; min-height: 420px; padding: 32px !important;
}
body.punjabi-theme .kc-change-password-card .form-control { min-height: 50px; margin-top: 8px; }
body.punjabi-theme .punjabi-footer .theme-footer-powered-logo {
  width: auto; height: 46px; max-width: 160px; object-fit: contain;
}

/* fish-stop */
body.fish-stop-theme { --fish-page-width: calc(100% - 32px); }

    /* Share the header edges across page shells, keeping nested forms bounded. */
    body.fish-stop-theme .fish-stop-topbar > .container,
    body.fish-stop-theme .fish-stop-nav > .container,
    body.fish-stop-theme .fish-stop-footer > .container,
    body.fish-stop-theme main > .container,
    body.fish-stop-theme main > section > .container,
    body.fish-stop-theme main > div > .container:not(.gift-voucher-shell--narrow),
    body.fish-stop-theme .fish-stop-gallery-section > .container,
    body.fish-stop-theme .fish-stop-about > .container-fluid,
    body.fish-stop-theme .fish-stop-menu-page .ordering_section_child,
    body.fish-stop-theme .fish-stop-checkout .confirm_order_section_child,
    body.fish-stop-theme .term_and_conditions_inner,
    body.fish-stop-theme .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--fish-page-width) !important;
        max-width: var(--fish-page-width) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }

    body.fish-stop-theme .fish-stop-menu-page .ordering_section,
    body.fish-stop-theme .fish-stop-auth-section,
    body.fish-stop-theme .fish-stop-checkout,
    body.fish-stop-theme .gift-voucher-page { padding-inline: 0 !important; }
    body.fish-stop-theme .fish-stop-nav .navbar-collapse { min-width: 0; }
    body.fish-stop-theme .fish-stop-nav .nav-link { white-space: nowrap; }
    body.fish-stop-theme .fish-stop-brand { flex-shrink: 0; }
    body.fish-stop-theme .fish-stop-topbar { min-height: 40px; font-size: 15px; }
    body.fish-stop-theme .fish-stop-socials { gap: 14px; }
    body.fish-stop-theme .fish-stop-socials a { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; min-height: 30px; font-size: 18px; }
    body.fish-stop-theme .fish-stop-nav { min-height: 108px; }
    body.fish-stop-theme .fish-stop-brand img { width: auto; height: 88px; max-height: 88px; max-width: 180px; object-fit: contain; }
    body.fish-stop-theme .fish-stop-brand-mark { width: 58px; height: 58px; font-size: 24px; }
    body.fish-stop-theme .fish-stop-brand-text { font-size: 26px; }
    body.fish-stop-theme .fish-stop-menu .nav-link { font-size: 16px; }
    body.fish-stop-theme .fish-stop-nav .dropdown-item { font-size: 15px; }
    body.fish-stop-theme .fish-stop-actions .fish-stop-btn { font-size: 14px; }
    body.fish-stop-theme .fish-stop-actions .food-hygiene-badge { flex-shrink: 0; width: 136px; padding: 6px 8px; background: #527f30; border: 2px solid #182410; border-radius: 8px; color: #ffffff; text-align: center; box-shadow: 0 2px 5px rgba(0, 0, 0, .18); }
    body.fish-stop-theme .food-hygiene-title { font: 800 10px/1.2 Arial, sans-serif; white-space: nowrap; }
    body.fish-stop-theme .rating-numbers { display: flex; justify-content: center; gap: 3px; margin-block: 5px 3px; }
    body.fish-stop-theme .rating-circle { display: inline-flex; justify-content: center; align-items: center; width: 16px; height: 16px; border-radius: 50%; background: #eeeeee; color: #333333; font: 700 10px/1 Arial, sans-serif; }
    body.fish-stop-theme .rating-circle.active { background: #2bb34a; color: #ffffff; }
    body.fish-stop-theme .rating-description { font: 700 9px/1.2 Arial, sans-serif; }

    body.fish-stop-theme .fish-stop-hero { padding-block: clamp(48px, 5vw, 88px); }
    body.fish-stop-theme .fish-stop-hero-copy { max-width: 620px; }
    body.fish-stop-theme .fish-stop-hero-image { margin-right: 0; }
    body.fish-stop-theme .fish-stop-hero-image img { width: 100%; height: auto; max-height: 640px; object-fit: contain; }
    body.fish-stop-theme :is(.fish-stop-popular, .fish-stop-choose, .fish-stop-reviews) { padding-block: clamp(48px, 4vw, 76px); }
    body.fish-stop-theme .fish-stop-pick-card img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.fish-stop-theme .fish-stop-pick-body { min-height: 160px; padding-block: 24px; }
    body.fish-stop-theme .fish-stop-about-copy { min-height: 0; padding: 48px 32px 48px 0; }
    body.fish-stop-theme .fish-stop-about-image { height: clamp(390px, 30vw, 520px); }
    body.fish-stop-theme .fish-stop-map-frame { height: clamp(300px, 27vw, 460px); }
    body.fish-stop-theme .fish-stop-gallery-card { grid-template-rows: auto auto; }
    body.fish-stop-theme .fish-stop-gallery-card img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.fish-stop-theme .gift-voucher-page--create .gift-voucher-title { width: 100%; max-width: none; white-space: nowrap; font-size: clamp(16px, 4.2vw, 36px) !important; letter-spacing: -0.02em; line-height: 1.15 !important; }

    body.fish-stop-theme .fish-stop-auth-component-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; }
    body.fish-stop-theme .fish-stop-auth-component-row > [class*="col-"] { width: 100%; min-width: 0; }
    body.fish-stop-theme .fish-stop-auth-component-row > .member_body_child_right { padding-inline: 0 !important; }
    body.fish-stop-theme .fish-stop-auth-section form { max-width: 560px; margin-inline: auto; }
    body.fish-stop-theme .fish-stop-auth-section form .row:has(> label) { grid-template-columns: minmax(0, 170px) minmax(0, 1fr); }
    body.fish-stop-theme .fish-stop-auth-section input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { min-width: 0; }

    body.fish-stop-theme .fish-stop-checkout .confirm_order_section_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
    body.fish-stop-theme .fish-stop-checkout .confirm_order_section_child > [class*="col-"] { min-width: 0; width: 100%; max-width: none; padding-inline: 0 !important; }
    body.fish-stop-theme .fish-stop-checkout :is(.order_confirm_left_box, .order_confirm_right_box) > div > .row { margin-inline: 0 !important; }
    body.fish-stop-theme .fish-stop-checkout__heading { grid-column: 1 / -1; }

    body.fish-stop-theme.page-profile .profile-page { padding-inline: 0 !important; }
    body.fish-stop-theme.page-profile .profile-page .margin-section { width: 100%; max-width: none; padding-inline: 0; }
    body.fish-stop-theme.page-profile .margin-section > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; align-items: start; }
    body.fish-stop-theme.page-profile .margin-section > .row > [class*="col-"] { min-width: 0; width: 100%; padding-inline: 0; margin-bottom: 0 !important; }
    body.fish-stop-theme.page-profile .profile-page .update-section { width: 100%; max-width: none !important; }
    body.fish-stop-theme.page-profile .margin-section > .row > div:last-child .update-section { max-width: 720px !important; }
    body.fish-stop-theme.page-profile #updateForm { max-width: 620px; margin-inline: auto; }

    body.fish-stop-theme .term_and_conditions_section { margin-top: 0 !important; padding: 48px 0 64px; background: var(--fish-soft); color: var(--fish-ink); }
    /* Kutting Chai's two-column policy layout, using Fish Stop's palette. */
    body.fish-stop-theme .term_and_conditions_section { min-height: 100vh; }
    body.fish-stop-theme .term_and_conditions_section_title_box { border-bottom: .2rem solid var(--fish-green); }
    body.fish-stop-theme .term_and_conditions_section_title_box h1 { color: var(--fish-green); font-size: 36px; font-weight: 900; }
    body.fish-stop-theme .term_and_conditions_section :is(.term-sidebar h6, .term_and_conditions_section_title_box_right_content h6) { color: var(--fish-green); font-size: 28px; line-height: 1.4; }
    body.fish-stop-theme .term_and_conditions_section p { font-size: 16px; line-height: 1.7; }
    body.fish-stop-theme .term-sidebar a[data-content] { display: flex; justify-content: center; align-items: center; height: 3rem; background: var(--fish-green); border: 1px solid var(--fish-green); border-radius: 10px; color: #ffffff; font-size: 16px; font-weight: 700; text-decoration: none; }
    body.fish-stop-theme .term_and_conditions_section_title_box_left_content a { width: 12rem; }
    body.fish-stop-theme .term-sidebar a[data-content]:is(:hover, :focus-visible) { background: var(--fish-green-dark); border-color: var(--fish-green-dark); color: #ffffff; transform: translateY(-1px); }
    body.fish-stop-theme #terms-content { border: 10px solid var(--fish-green); background: transparent; padding: 0; overflow-wrap: anywhere; }
    body.fish-stop-theme #terms-content > .row { margin-inline: 0; }
    body.fish-stop-theme .term_and_conditions_section_title_box_right_content { padding: clamp(20px, 2vw, 32px); }
    body.fish-stop-theme #terms-text p { margin-bottom: .75rem; }
    body.fish-stop-theme #terms-text ul { list-style-type: disc; padding-left: 1.5rem; }
    body.fish-stop-theme #terms-text :is(.terms-content-banner, .heading-highlight, .section-heading, .policy-header) { display: block; background: var(--fish-green); color: #ffffff !important; font-weight: 700; margin: .5rem 0 .75rem; padding: .5rem 1rem; }
    body.fish-stop-theme #terms-text :is(.subheading, .sub-heading, .section-title, .terms-section-heading) { color: var(--fish-green); font-size: 1.2rem; font-weight: 600; margin-top: 1rem; }
    body.fish-stop-theme #terms-text .terms-plain-link { color: var(--fish-ink); text-decoration: none; }
    body.fish-stop-theme .terms-lucky-draw-table th { background: var(--fish-green) !important; color: #ffffff !important; }
    @media (max-width: 767.98px) {
        body.fish-stop-theme .term_and_conditions_section { padding-top: 2rem; padding-bottom: 3rem; }
        body.fish-stop-theme .term_and_conditions_section_title_box h1 { font-size: 30px; }
        body.fish-stop-theme .term-sidebar { padding-inline: .75rem !important; }
        body.fish-stop-theme #terms-content { border-width: 6px; }
    }

    @media (min-width: 992px) {
        body.fish-stop-theme.page-profile .margin-section > .row { grid-template-columns: 300px minmax(0, 1fr); }
        body.fish-stop-theme .fish-stop-auth-component-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.fish-stop-theme .fish-stop-checkout .confirm_order_section_child { grid-template-columns: minmax(240px, 1fr) minmax(0, 1.6fr) minmax(240px, 1fr); }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.fish-stop-theme .fish-stop-nav:has(.food-hygiene-badge) .fish-stop-menu .nav-link { font-size: 12px; }
        body.fish-stop-theme .fish-stop-nav:has(.food-hygiene-badge) .fish-stop-actions .fish-stop-btn { font-size: 12px; padding-inline: 10px; }
        body.fish-stop-theme .fish-stop-menu .nav-link { font-size: 14px; }
        body.fish-stop-theme .fish-stop-menu { gap: 10px; }
        body.fish-stop-theme .fish-stop-actions { gap: 8px; }
        body.fish-stop-theme .fish-stop-actions .fish-stop-btn { padding-inline: 12px; }
        body.fish-stop-theme .fish-stop-auth-section :is(.member_body_child_left, .member_body_child_right_child1) { padding-inline: 24px !important; }
    }
    @media (min-width: 1200px) {
        body.fish-stop-theme { --fish-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 991.98px) {
        body.fish-stop-theme .fish-stop-about-copy { padding: 40px 0; }
    }
    @media (max-width: 575.98px) {
        body.fish-stop-theme .fish-stop-brand img { height: 72px; max-height: 72px; max-width: 160px; }
        body.fish-stop-theme .fish-stop-nav { min-height: 92px; }
        body.fish-stop-theme .fish-stop-topbar { font-size: 14px; }
        body.fish-stop-theme .fish-stop-socials { gap: 6px; }
        body.fish-stop-theme .fish-stop-socials a { font-size: 16px; }
        body.fish-stop-theme .fish-stop-auth-section form .row:has(> label) { grid-template-columns: minmax(0, 1fr); }
        body.fish-stop-theme .fish-stop-about-image { height: auto; }
        body.fish-stop-theme .fish-stop-about-image img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    }

/* mogasu */
body.mogasu-theme { --mogasu-page-width: calc(100% - 32px); margin-top: 0 !important; }
    body.mogasu-theme .mogasu-main { padding-top: 102px; }
    body.mogasu-theme .store-status-anchor > nav { min-height: 102px; }

    /* Share page edges with the header; keep nested forms and dialogs readable. */
    body.mogasu-theme .store-status-anchor > nav > .container,
    body.mogasu-theme > footer > .container,
    body.mogasu-theme .mogasu-main > .container,
    body.mogasu-theme .mogasu-main > section > .container,
    body.mogasu-theme .mogasu-main > div > .container:not(.gift-voucher-shell--narrow),
    body.mogasu-theme .ordering_section > .ordering_section_child,
    body.mogasu-theme .term_and_conditions_inner,
    body.mogasu-theme .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        margin-inline: auto !important;
        max-width: var(--mogasu-page-width) !important;
        padding-inline: 0 !important;
        width: var(--mogasu-page-width) !important;
    }

    body.mogasu-theme .mogasu-main > .container-fluid,
    body.mogasu-theme .mogasu-main .ordering_section {
        padding-inline: 0 !important;
    }

    body.mogasu-theme .store-status-anchor .navbar-brand img { object-fit: contain; }
    body.mogasu-theme .hero-section { margin-top: 0 !important; min-height: 0; height: clamp(480px, 40vw, 740px) !important; }
    body.mogasu-theme #heroCarousel .carousel-item { height: clamp(480px, 40vw, 740px) !important; }
    body.mogasu-theme .hero-content { width: min(100% - 48px, 1100px); }
    body.mogasu-theme .hero-section h1 { font-size: clamp(3rem, 6vw, 6.25rem) !important; }
    body.mogasu-theme .hero-section h2 { font-size: clamp(1.5rem, 3vw, 3rem); }
    body.mogasu-theme .mogasu-main > section.py-5 { padding-block: clamp(40px, 4.5vw, 72px) !important; }
    body.mogasu-theme .mogasu-main > section > .container > .row.gx-5 { --bs-gutter-x: 32px; }
    body.mogasu-theme .mogasu-main > section > .container > .row > .col-lg-5 > img { height: auto !important; aspect-ratio: 4 / 3; object-fit: cover; }
    body.mogasu-theme .essence-heading { font-size: clamp(2rem, 3.5vw, 3.75rem); line-height: 1.15; }
    body.mogasu-theme .mogasu-main .parallax-section { padding: clamp(56px, 7vw, 100px) 24px; }
    body.mogasu-theme .product-card { height: auto; min-height: 190px; }
    body.mogasu-theme .product-details { min-width: 0; }
    body.mogasu-theme .product-img-box { flex-shrink: 0; }
    body.mogasu-theme .filter-item > .d-flex { min-height: 200px; }
    body.mogasu-theme .filter-item .product-content { min-width: 0; padding: 16px !important; }

    body.mogasu-theme .mogasu-main > .about_section { margin-top: 0 !important; min-height: 0 !important; padding-block: clamp(40px, 4.5vw, 72px); }
    body.mogasu-theme .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start !important; gap: 24px !important; }
    body.mogasu-theme .about_section_child_2 > .d-flex > div { min-width: 0; }
    body.mogasu-theme .about_section_child_2 > .d-flex img { height: auto; width: 100%; display: block; }
    body.mogasu-theme .about_section_child_2 > .d-flex embed { height: clamp(420px, 40vw, 650px); }
    body.mogasu-theme .mogasu-main .card-img-top { aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
    body.mogasu-theme .map-container iframe { width: 100% !important; height: clamp(340px, 30vw, 500px) !important; }
    body.mogasu-theme .contact_us_child_right { overflow-wrap: anywhere; }
    body.mogasu-theme .mogasu-main .ordering_section,
    body.mogasu-theme .mogasu-main .contact_us { margin-top: 0 !important; padding-block: clamp(40px, 4.5vw, 72px) !important; }
    body.mogasu-theme .ordering_section_child { align-items: start; }
    body.mogasu-theme .ordering_section_child_right_child { margin-inline: 0; }
    body.mogasu-theme .ordering_section_child_right_child > * { min-width: 0; max-width: 100%; margin-inline: 0 !important; }
    body.mogasu-theme .ordering_section_child_right_child .catalog-sidebar__image { height: auto !important; max-height: 440px; object-fit: cover; }
    body.mogasu-theme .ordering_section_child_left_child1_navbar_dish_list > img { height: auto !important; aspect-ratio: 3 / 1; object-fit: cover; }

    body.mogasu-theme .member_body { margin-top: 0 !important; min-height: 0 !important; padding-block: clamp(40px, 5vw, 72px) !important; }
    body.mogasu-theme .member_body_child { display: grid; grid-template-columns: 1fr; align-items: start; gap: 24px; }
    body.mogasu-theme .member_body_child > [class*="col-"] { min-width: 0; width: 100%; padding: 24px !important; }
    body.mogasu-theme .member_body_child_right { margin-top: 0 !important; padding: 0 !important; }
    body.mogasu-theme .member_body_child_right_child1 { padding: 24px !important; }
    body.mogasu-theme .member_body_child form { margin-inline: auto; max-width: 460px; width: 100%; }
    body.mogasu-theme .member_body_child_right_child1 > div { max-width: 600px; width: 100%; }
    body.mogasu-theme .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; margin-top: 16px !important; }
    body.mogasu-theme .member_body_child form > .row:has(> label) > label { padding: 0; text-align: left !important; width: 100% !important; }
    body.mogasu-theme .member_body_child form > .row:has(> label) > .invalid-feedback { grid-column: 2; }
    body.mogasu-theme .member_body_child input:not([type="checkbox"]):not([type="radio"]) { height: auto !important; min-height: 46px; min-width: 0; width: 100% !important; }
    body.mogasu-theme .profile-page .about_section_child_2 > .container { max-width: none; padding-inline: 0; width: 100%; }
    body.mogasu-theme .mogasu-main > .container > form { max-width: 760px; margin-inline: auto; }
    body.mogasu-theme .change-password-page {
        margin-block: 0 !important;
        padding-block: clamp(48px, 5vw, 80px);
    }

    body.mogasu-theme .change-password-page h1 {
        font-size: clamp(2rem, 3vw, 2.75rem);
        margin-bottom: 32px;
    }

    body.mogasu-theme .change-password-page form {
        max-width: 600px !important;
        width: 100%;
        padding: clamp(24px, 3vw, 40px);
    }

    body.mogasu-theme .change-password-page .form-group + .form-group {
        margin-top: 24px;
    }

    body.mogasu-theme .change-password-page label {
        margin-top: 0 !important;
        margin-bottom: 10px;
        font-size: 1rem;
    }

    body.mogasu-theme .change-password-page input.form-control {
        min-height: 50px;
        padding: 12px 14px;
        font-size: 1rem;
    }

    body.mogasu-theme .change-password-page .btn-primary {
        margin-top: 28px !important;
        min-height: 48px;
        padding: 12px 28px;
        font-size: 1rem;
    }

    body.mogasu-theme .term_and_conditions_section.mt-5 { margin-top: 0 !important; padding-top: 40px; }
    body.mogasu-theme > footer > .container > .row img { object-fit: contain; }

    body.mogasu-theme .confirm_order_section_child .checkout-sidebar__stack {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
        margin: 0 !important;
        width: 100%;
    }

    body.mogasu-theme .confirm_order_section_child .checkout-sidebar__stack > * {
        min-width: 0;
        width: 100%;
        margin: 0 !important;
    }

    body.mogasu-theme .confirm_order_section_child :is(.checkout-sidebar__card, .checkout-loyalty-card) {
        padding: 24px !important;
    }

    body.mogasu-theme .confirm_order_section_child .checkout-sidebar__security-row {
        margin: 0 !important;
        margin-top: 24px !important;
        padding: 0;
    }

    body.mogasu-theme .confirm_order_section_child .checkout-sidebar__security-row > .checkout-sidebar__card {
        margin-top: 0;
    }

    body.mogasu-theme .order_confirm_right_box > div > .row {
        margin-inline: 0;
    }

    body.mogasu-theme .confirm_order_section_child .order_confirm_right_top1 {
        padding: 24px !important;
        min-width: 0;
    }

    body.mogasu-theme .confirm_order_section_child .checkout-sidebar__title {
        margin-bottom: 20px;
        line-height: 1.4;
    }

    @media (min-width: 576px) and (max-width: 767.98px) {
        body.mogasu-theme { --mogasu-page-width: min(540px, calc(100% - 32px)); }
    }
    @media (min-width: 768px) and (max-width: 991.98px) {
        body.mogasu-theme { --mogasu-page-width: min(720px, calc(100% - 32px)); }
    }
    @media (min-width: 992px) {
        body.mogasu-theme .ordering_section_child { display: grid; grid-template-columns: minmax(0, 1fr) clamp(320px, 26vw, 400px); gap: 24px; }
        body.mogasu-theme .ordering_section_child > [class*="col-"] { padding: 0; min-width: 0; width: 100%; }
        body.mogasu-theme .ordering_section_child_left_child1 { display: grid; grid-template-columns: 200px minmax(0, 1fr); margin-inline: 0; }
        body.mogasu-theme .ordering_section_child_left_child1_title,
        body.mogasu-theme .ordering_section_child_left_child1_search_bar { grid-column: 1 / -1; }
        body.mogasu-theme .ordering_section_child_left_child1 > [class*="col-"] { min-width: 0; width: 100%; }
        body.mogasu-theme .ordering_section_child_left_child1_search_bar { margin-inline: 0 !important; min-height: 76px; padding-block: 12px; width: 100%; }
        body.mogasu-theme .dish_card { min-height: 120px; }
        body.mogasu-theme .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; }
        body.mogasu-theme .contact_us_child > [class*="col-"] { padding-inline: 0 !important; min-width: 0; width: 100%; }
        body.mogasu-theme .contact_us_child_right_child { margin-inline: 0; }
        body.mogasu-theme .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.mogasu-theme .confirm_order_section_child { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(0, 1.65fr) minmax(260px, 1fr); align-items: start; gap: 24px; }
        body.mogasu-theme .confirm_order_section_child > .mt-4 { grid-column: 1 / -1; }
        body.mogasu-theme .confirm_order_section_child > [class*="col-"] { margin-top: 0; min-width: 0; padding-inline: 0; width: 100% !important; }
        body.mogasu-theme .order_confirm_left_box > div > .row { margin-inline: 0; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.mogasu-theme { --mogasu-page-width: min(960px, calc(100% - 32px)); }
        body.mogasu-theme .store-status-anchor .navbar-nav > .nav-item { margin-inline: 4px !important; }
        body.mogasu-theme .store-status-anchor .nav-link { font-size: 0.8rem; }
        body.mogasu-theme .ordering_section_child_left_child1 { grid-template-columns: 160px minmax(0, 1fr); }
        body.mogasu-theme .dish_card > [class*="col-"] { width: 100%; }
        body.mogasu-theme .confirm_order_section_child { grid-template-columns: minmax(260px, 1fr) minmax(0, 1.5fr); }
        body.mogasu-theme .confirm_order_section_child > .order_confirm_middle_box { grid-column: 1 / -1; }
    }
    @media (min-width: 1200px) {
        body.mogasu-theme { --mogasu-page-width: min(1540px, calc(100% - 96px)); }
        body.mogasu-theme .confirm_order_section_child { column-gap: 32px; }
    }
    @media (min-width: 1200px) and (max-width: 1399.98px) {
        body.mogasu-theme .store-status-anchor .navbar-brand img { width: 110px !important; }
        body.mogasu-theme .store-status-anchor .navbar-nav > .nav-item { margin-inline: 4px !important; }
        body.mogasu-theme .store-status-anchor .nav-link { font-size: 0.8rem; padding-inline: 6px; white-space: nowrap; }
        body.mogasu-theme .store-status-anchor .navbar-collapse > .d-flex { gap: 8px !important; flex-wrap: nowrap !important; }
        body.mogasu-theme .store-status-anchor .navbar-collapse > .d-flex > .btn { margin: 0 !important; font-size: 0.75rem; padding-inline: 10px; white-space: nowrap; }
    }
    @media (max-width: 1199.98px) {
        body.mogasu-theme .store-status-anchor .navbar-collapse.show { max-height: calc(100vh - 110px); overflow-y: auto; }
    }
    @media (max-width: 767.98px) {
        body.mogasu-theme .member_body_child form > .row:has(> label) { grid-template-columns: 100px minmax(0, 1fr); }
        body.mogasu-theme .member_body_child label { font-size: 1rem !important; }
        body.mogasu-theme .about_section_child_2 > .d-flex { grid-template-columns: 1fr; }
    }
    @media (max-width: 576px) {
        body.mogasu-theme .store-status-anchor > nav { min-height: 90px; }
        body.mogasu-theme .mogasu-main { padding-top: 90px; }
        body.mogasu-theme .hero-section,
        body.mogasu-theme #heroCarousel .carousel-item { height: 480px !important; }
    }

/* pub-bar */
body.pub-body { --pub-page-width: calc(100% - 32px); }

    /* Match page edges to the header without widening nested forms or modals. */
    body.pub-body .pub-header > .pub-header__inner,
    body.pub-body .pub-footer > .pub-footer__inner,
    body.pub-body .pub-main > .container,
    body.pub-body .pub-main > section > .container,
    body.pub-body .pub-main > div > .container:not(.gift-voucher-shell--narrow),
    body.pub-body .pub-catalog > .ordering_section_child,
    body.pub-body .term_and_conditions_inner,
    body.pub-body .gift-voucher-shell:not(.gift-voucher-shell--narrow),
    body.pub-body .pub-gallery-strip {
        margin-inline: auto !important;
        max-width: var(--pub-page-width) !important;
        padding-inline: 0 !important;
        width: var(--pub-page-width) !important;
    }

    body.pub-body .pub-main > .container-fluid,
    body.pub-body .pub-main .pub-catalog,
    body.pub-body .pub-main .pub-checkout {
        padding-inline: 0 !important;
    }

    body.pub-body .pub-logo__image {
        height: 76px;
        max-width: 210px;
        object-fit: contain;
        transform: none;
        width: auto;
    }

    body.pub-body .pub-hero { min-height: clamp(520px, 40vw, 740px); }
    body.pub-body .pub-section { padding-block: clamp(48px, 5vw, 80px); }
    body.pub-body .pub-event-card-grid,
    body.pub-body .pub-approach__grid { max-width: none; gap: 24px; }
    body.pub-body .pub-event-card img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
    body.pub-body .pub-approach__card { min-height: 210px; }
    body.pub-body .pub-services { padding-block: clamp(56px, 5vw, 80px); }
    body.pub-body .pub-services__image { justify-self: center; height: auto; max-height: 560px; object-fit: contain; margin-bottom: 0; }
    body.pub-body .pub-about-split__media img { aspect-ratio: 16 / 7; height: auto; object-fit: cover; }
    body.pub-body .pub-script-word { font-size: clamp(4rem, 10vw, 10rem); max-width: 100%; }
    body.pub-body .pub-script-word--top,
    body.pub-body .pub-script-word--bottom { left: 0; }
    body.pub-body .pub-about-split__copy { max-width: 560px; }
    body.pub-body .pub-about-split__copy p { line-height: 1.8; }
    body.pub-body .pub-gallery-strip { padding-inline: 0; }
    body.pub-body .pub-instagram__grid img { aspect-ratio: 1 / 1; height: auto; object-fit: cover; }

    body.pub-body .pdf_section .about_section_child_2 > .d-flex {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start !important;
        gap: 24px !important;
    }

    body.pub-body .pdf_section .about_section_child_2 > .d-flex > div { min-width: 0; }
    body.pub-body .pdf_section img { display: block; height: auto; width: 100%; }
    body.pub-body .pdf_section embed { height: clamp(420px, 40vw, 680px); }
    body.pub-body .the48-gallery__item > img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; width: 100%; }
    body.pub-body .kc-map-container iframe { width: 100% !important; height: clamp(340px, 30vw, 500px) !important; }
    body.pub-body .contact_us_child_right { overflow-wrap: anywhere; }
    body.pub-body .pub-catalog .ordering_section_child { align-items: start; }
    body.pub-body .pub-catalog .ordering_section_child_right_child { margin-inline: 0; }
    body.pub-body .pub-catalog .ordering_section_child_right_child > * { margin-inline: 0 !important; min-width: 0; max-width: 100%; }
    body.pub-body .pub-catalog .catalog-sidebar__image { height: auto !important; max-height: 440px; object-fit: cover; }

    body.pub-body .pub-auth-page { min-height: 0 !important; padding-block: clamp(40px, 5vw, 72px) !important; }
    body.pub-body .pub-auth-page .member_body_child { display: grid !important; grid-template-columns: 1fr; gap: 24px; }
    body.pub-body .pub-auth-page .member_body_child > [class*="col-"] { min-width: 0; max-width: none; width: 100%; }
    body.pub-body .pub-auth-page form { max-width: 600px; margin-inline: auto; width: 100%; }
    body.pub-body .pub-auth-page form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 12px; padding-inline: 0; margin-top: 16px !important; }
    body.pub-body .pub-auth-page form > .row:has(> label) > label { width: 100% !important; padding: 0 !important; text-align: left !important; }
    body.pub-body .pub-auth-page form > .row:has(> label) > .invalid-feedback { grid-column: 2; }
    body.pub-body .pub-auth-page input:not([type="submit"]):not([type="checkbox"]) { height: 48px !important; min-width: 0; width: 100% !important; }
    body.pub-body .pub-auth-page .member_body_child_right form > .row:not(:has(> label)) { padding-inline: 0; }

    body.pub-body .pub-main > .kc-width-50 form,
    body.pub-body .pub-main > .container > form { max-width: 760px; margin-inline: auto; }
    body.pub-body .profile-page .about_section_child_2 > .container { max-width: none; padding-inline: 0; width: 100%; }

    @media (min-width: 576px) and (max-width: 767.98px) {
        body.pub-body { --pub-page-width: min(540px, calc(100% - 32px)); }
    }

    @media (min-width: 768px) and (max-width: 991.98px) {
        body.pub-body { --pub-page-width: min(720px, calc(100% - 32px)); }
    }

    @media (min-width: 992px) {
        body.pub-body .pub-header__inner { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px; }
        body.pub-body .pub-header__inner > [class*="col-"] { min-width: 0; padding-inline: 0; width: 100%; }
        body.pub-body .pub-header__brand-wrap > .row { margin: 0; }
        body.pub-body .pub-header__brand-wrap .col-8 { padding: 0; width: 100%; }
        body.pub-body .pub-header__brand-wrap .col-4 { display: none; }
        body.pub-body .pub-navbar__list { padding-left: 0; gap: clamp(8px, 1vw, 16px); justify-content: flex-start !important; }
        body.pub-body .pub-navbar__list > li:has(> .pub-menu-close) { display: none; }
        body.pub-body .pub-nav-home { margin-left: auto; }
        body.pub-body .pub-hygiene-item { margin-left: auto; }
        body.pub-body .pub-auth-actions { gap: 8px; margin-left: 0; }
        body.pub-body .pub-navbar :is(a, button) { white-space: nowrap; }
        body.pub-body .pub-auth-page .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }

        body.pub-body .pub-catalog .ordering_section_child {
            display: grid;
            grid-template-columns: minmax(0, 1fr) clamp(320px, 26vw, 400px);
            gap: 24px;
        }

        body.pub-body .pub-catalog .ordering_section_child > [class*="col-"] { min-width: 0; padding: 0; width: 100%; }
        body.pub-body .pub-catalog .ordering_section_child_left_child1 { display: grid; grid-template-columns: 200px minmax(0, 1fr); margin-inline: 0; }
        body.pub-body .pub-catalog .ordering_section_child_left_child1_title,
        body.pub-body .pub-catalog .kc-catalog-search-bar { grid-column: 1 / -1; }
        body.pub-body .pub-catalog .ordering_section_child_left_child1 > [class*="col-"] { min-width: 0; width: 100%; }
        body.pub-body .pub-catalog .kc-catalog-search-bar { width: 100%; min-height: 80px; }
        body.pub-body .pub-catalog .kc-dish-card { min-height: 120px; }

        body.pub-body .pub-contact-page .kc-contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; }
        body.pub-body .pub-contact-page .kc-contact-layout > [class*="col-"] { min-width: 0; padding-inline: 0 !important; width: 100%; }
        body.pub-body .pub-contact-page .contact_us_child_right_child { margin-inline: 0; }
        body.pub-body .pub-checkout .confirm_order_section_child { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(0, 1.65fr) minmax(260px, 1fr); gap: 24px; }
        body.pub-body .pub-checkout .confirm_order_section_child > .mt-4 { grid-column: 1 / -1; }
        body.pub-body .pub-checkout .confirm_order_section_child > [class*="col-"] { margin-top: 0; min-width: 0; width: 100% !important; }
        body.pub-body .pub-checkout .order_confirm_left_box > div > .row { margin-inline: 0; }
    }

    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.pub-body { --pub-page-width: min(960px, calc(100% - 32px)); }
        body.pub-body .pub-header__inner { grid-template-columns: 170px minmax(0, 1fr); gap: 12px; }
        body.pub-body .pub-logo__image { max-width: 170px; }
        body.pub-body .pub-navbar :is(a, button) { font-size: 0.7rem; letter-spacing: 0; }
        body.pub-body .pub-catalog .ordering_section_child_left_child1 { grid-template-columns: 160px minmax(0, 1fr); }
        body.pub-body .pub-catalog .kc-dish-card > [class*="col-"] { width: 100%; }
        body.pub-body .pub-checkout .confirm_order_section_child { grid-template-columns: minmax(260px, 1fr) minmax(0, 1.5fr); }
        body.pub-body .pub-checkout .order_confirm_middle_box { grid-column: 1 / -1; }
    }

    @media (min-width: 1200px) {
        body.pub-body { --pub-page-width: min(1540px, calc(100% - 96px)); }
    }

    @media (max-width: 767.98px) {
        body.pub-body .pub-hero { min-height: 500px; }
        body.pub-body .pub-about-split__media img { aspect-ratio: 16 / 9; }
        body.pub-body .pub-services__image { max-height: 400px; }
        body.pub-body .pdf_section .about_section_child_2 > .d-flex { grid-template-columns: 1fr; }
        body.pub-body .pub-auth-page form > .row:has(> label) { grid-template-columns: 100px minmax(0, 1fr); }
        body.pub-body .pub-auth-page label { font-size: 1rem !important; }
    }

/* sparbatheaston */
body.sparbatheaston-theme { --spar-page-width: min(1540px, calc(100% - 96px)); }

        body.sparbatheaston-theme .contact_us_child {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 400px;
            gap: 32px;
        }

        body.sparbatheaston-theme .contact_us_child > [class*="col-"] {
            min-width: 0;
            padding-inline: 0 !important;
            width: 100%;
        }

        body.sparbatheaston-theme .contact_us_child_right_child {
            margin-inline: 0;
        }

        body.sparbatheaston-theme .spar-checkout > .container > .row {
            --bs-gutter-x: 32px;
            align-items: start;
        }
    }

    @media (max-width: 767.98px) {
        body.sparbatheaston-theme > footer {
            text-align: center;
        }

        body.sparbatheaston-theme > footer > .container > .row .d-flex,
        body.sparbatheaston-theme > footer .theme-footer-flags,
        body.sparbatheaston-theme > footer .theme-footer-social {
            justify-content: center;
        }

        body.sparbatheaston-theme > footer .theme-footer-language-row,
        body.sparbatheaston-theme > footer .theme-footer-copy-wrap {
            align-items: center;
        }

        body.sparbatheaston-theme > footer .custom-translator {
            margin-inline: auto;
        }

        body.sparbatheaston-theme .store-status-anchor nav > .container > a {
            font-size: clamp(1.1rem, 4.7vw, 1.7rem) !important;
        }

        body.sparbatheaston-theme .spar-hero-row { grid-template-columns: 1fr; }
        body.sparbatheaston-theme .hero-content h1,
        body.sparbatheaston-theme .hero-content p { margin-inline: auto; }
        body.sparbatheaston-theme .spar-pdf-grid { grid-template-columns: 1fr; }
    }

/* fernsgroceries */
body.theme-fernsgroceries { --ferns-page-width: calc(100% - 32px); }
    body.theme-fernsgroceries .store-status-anchor > nav > .container,
    body.theme-fernsgroceries > footer > .container,
    body.theme-fernsgroceries .ferns-main > .container,
    body.theme-fernsgroceries .ferns-main > section > .container,
    body.theme-fernsgroceries .ferns-main > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-fernsgroceries .ordering_section_child,
    body.theme-fernsgroceries .term_and_conditions_inner,
    body.theme-fernsgroceries .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--ferns-page-width) !important;
        max-width: var(--ferns-page-width) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }
    body.theme-fernsgroceries .ferns-main > .container-fluid,
    body.theme-fernsgroceries .ferns-main .food-menu-area section:has(> .ordering_section_child) { padding-inline: 0; }
    body.theme-fernsgroceries .fg-navbar .navbar-collapse { min-width: 0; }
    body.theme-fernsgroceries .fg-navbar { padding-block: 14px !important; }
    body.theme-fernsgroceries .fg-navbar .nav-link { white-space: nowrap; color: #4b4b4b !important; }
    body.theme-fernsgroceries .fg-navbar .nav-link:is(:hover, :focus-visible) { color: #167547 !important; }
    body.theme-fernsgroceries .fg-brand-link { flex-shrink: 0; }
    body.theme-fernsgroceries .fg-footer .theme-footer-powered-logo { height: 42px; width: auto; max-width: 150px; object-fit: contain; }
    body.theme-fernsgroceries .fg-brand-link img { width: auto; max-width: 190px; height: 90px; object-fit: contain; }
    body.theme-fernsgroceries .hero-custom { padding-block: clamp(48px, 5vw, 88px) !important; }
    body.theme-fernsgroceries .hero-custom > .container > .row { margin-inline: 0; row-gap: 24px; }
    body.theme-fernsgroceries .hero-custom .hero-content { padding-left: 0; }
    body.theme-fernsgroceries .hero-custom .hero-content p { max-width: 640px; line-height: 1.8; }
    body.theme-fernsgroceries .hero-custom .fg-hero-media { width: 100%; height: auto; max-height: clamp(360px, 32vw, 580px); object-fit: contain; }
    body.theme-fernsgroceries .ferns-main > section > .container > .row { margin-inline: 0; }
    body.theme-fernsgroceries .ferns-main > section > .container > .row > [class*="col-"]:first-child { padding-left: 0; }
    body.theme-fernsgroceries .ferns-main > section > .container > .row > [class*="col-"]:last-child { padding-right: 0; }
    body.theme-fernsgroceries .ferns-main > section > .container > .row .card > .card-img-top { height: auto !important; aspect-ratio: 4 / 3; object-fit: contain !important; }
    body.theme-fernsgroceries .fg-benefits .container { padding-block: clamp(32px, 3vw, 52px) !important; }
    body.theme-fernsgroceries .fg-gallery-page .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-fernsgroceries .fg-contact-section .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-fernsgroceries .contact_us_child > [class*="col-"] { width: 100%; min-width: 0; padding-inline: 0; }
    body.theme-fernsgroceries .fg-map-container iframe { display: block; width: 100% !important; height: clamp(320px, 30vw, 500px) !important; }
    body.theme-fernsgroceries .fg-pdf-menu-page .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 24px !important; padding: 0; align-items: start !important; }
    body.theme-fernsgroceries .fg-pdf-menu-page img { width: 100%; height: auto; object-fit: contain; }
    body.theme-fernsgroceries .fg-pdf-menu-page embed { width: 100%; height: clamp(420px, 40vw, 650px); }
    body.theme-fernsgroceries .ordering_section_child { align-items: start; }
    body.theme-fernsgroceries .ordering_section_child > [class*="col-"] { min-width: 0; }
    body.theme-fernsgroceries .ordering_section_child_left_child1_navbar_dish_list > img { width: 100%; height: auto; aspect-ratio: 16 / 7; object-fit: cover; }
    body.theme-fernsgroceries .fg-auth-login { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-fernsgroceries .fg-change-password-page .fg-auth-card { width: 100%; max-width: 600px; padding: clamp(24px, 3vw, 36px) !important; }
    body.theme-fernsgroceries .fg-change-password-page .form-control { min-height: 48px; margin-top: 6px; }
    body.theme-fernsgroceries .fg-change-password-page .form-group + .form-group { margin-top: 8px; }
    body.theme-fernsgroceries .fg-change-password-page .fg-white-button { min-height: 46px; padding-inline: 24px; }
    body.theme-fernsgroceries .member_body_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-fernsgroceries .member_body_child > [class*="col-"] { min-width: 0; width: 100%; margin: 0 !important; padding: 24px !important; }
    body.theme-fernsgroceries .member_body_child > .member_body_child_right { padding: 0 !important; }
    body.theme-fernsgroceries .member_body_child_right_child1 { padding: 24px !important; }
    body.theme-fernsgroceries .member_body_child form { width: 100%; max-width: 520px; margin-inline: auto; }
    body.theme-fernsgroceries .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 12px; align-items: center; padding-inline: 0; }
    body.theme-fernsgroceries .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-fernsgroceries .member_body_child input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { width: 100% !important; min-width: 0; min-height: 46px; height: auto !important; }
    body.theme-fernsgroceries .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-fernsgroceries .fg-cart-page > .container > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; align-items: start; }
    body.theme-fernsgroceries .fg-cart-page > .container > .row > div { width: 100%; min-width: 0; margin: 0 !important; padding-inline: 0 !important; }
    body.theme-fernsgroceries .fg-cart-page > .container > .row > div:first-child { grid-column: 1 / -1; }
    body.theme-fernsgroceries .fg-cart-page > .container > .row > div > .row { margin-inline: 0; }
    body.theme-fernsgroceries .checkout-sidebar__stack { margin-inline: 0; }
    body.theme-fernsgroceries .checkout-sidebar__stack > * { min-width: 0; width: 100%; }
    body.theme-fernsgroceries .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    body.theme-fernsgroceries .term_and_conditions_section :is(.terms-section-heading, .subheading, .sub-heading, .section-title) { color: #1fae63 !important; }
    body.theme-fernsgroceries .gift-voucher-page {
        --gv-color: #17261d;
        --gv-border: #dcece3;
        --gv-radius: 8px;
        --gv-btn-bg: #39d688;
        --gv-btn-color: #123d29;
        min-height: 70vh;
        padding: 48px 0 64px !important;
        background: #ffffff !important;
        color: #17261d;
    }
    body.theme-fernsgroceries .gift-voucher-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #dcece3; }
    body.theme-fernsgroceries .gift-voucher-kicker { color: #167547; font-size: 12px; letter-spacing: .08em; }
    body.theme-fernsgroceries .gift-voucher-title { margin: 0; font-size: clamp(28px, 3vw, 38px); font-weight: 800; line-height: 1.2; overflow-wrap: anywhere; }
    body.theme-fernsgroceries .gift-voucher-actions { display: flex; flex-wrap: wrap; gap: 12px; }
    body.theme-fernsgroceries .gift-voucher-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 20px; border-radius: 6px; font-size: 14px; font-weight: 700; text-decoration: none; }
    body.theme-fernsgroceries .gift-voucher-btn--primary { background: #167547; color: #ffffff; border: 1px solid #167547; }
    body.theme-fernsgroceries .gift-voucher-btn--ghost { background: #ffffff; color: #167547; border: 1px solid #167547; }
    body.theme-fernsgroceries .gift-voucher-btn:is(:hover, :focus-visible) { background: #105c37; border-color: #105c37; color: #ffffff; }
    body.theme-fernsgroceries .gift-voucher-table-wrap { border: 1px solid #dcece3; border-radius: 8px; overflow-x: auto; }
    body.theme-fernsgroceries .gift-voucher-table { margin-bottom: 0; }
    body.theme-fernsgroceries .gift-voucher-table :is(th, td) { padding: 16px; vertical-align: middle; }
    body.theme-fernsgroceries .gift-voucher-table thead th { font-size: 13px; font-weight: 800; }
    body.theme-fernsgroceries .gift-voucher-table tbody td { font-size: 14px; }
    body.theme-fernsgroceries .gift-voucher-table tbody tr:last-child td { border-bottom: 0; }
    body.theme-fernsgroceries .gift-voucher-code { display: inline-block; padding: 5px 8px; background: #f1fbf5; border-radius: 4px; color: #155d39; font-family: monospace; font-size: 13px; }
    body.theme-fernsgroceries .gift-voucher-status { display: inline-block; padding: 5px 10px; border-radius: 20px; background: #edf8f1; color: #155d39; font-size: 12px; font-weight: 700; white-space: nowrap; }
    body.theme-fernsgroceries .gift-voucher-link { color: #167547; font-size: 14px; font-weight: 700; text-underline-offset: 3px; white-space: nowrap; }
    body.theme-fernsgroceries .gift-voucher-empty { padding: 28px; border: 1px dashed #b9d9c6; border-radius: 8px; background: #ffffff; color: #465c4e; text-align: center; }
    body.theme-fernsgroceries .gift-voucher-pagination { margin-top: 24px; }
    body.theme-fernsgroceries .gift-voucher-pagination .page-link { border-color: #dcece3; color: #167547; }
    body.theme-fernsgroceries .gift-voucher-pagination .active > .page-link { background: #167547; border-color: #167547; color: #ffffff; }
    @media (min-width: 992px) {
        body.theme-fernsgroceries .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-fernsgroceries .fg-contact-section .contact_us_child { grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); }
        body.theme-fernsgroceries .fg-cart-page > .container > .row { grid-template-columns: minmax(240px, 1fr) minmax(0, 1.6fr) minmax(240px, 1fr); }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-fernsgroceries .fg-navbar .navbar-nav { gap: 6px !important; }
        body.theme-fernsgroceries .fg-navbar .nav-link { font-size: 12px; padding-inline: 4px; }
        body.theme-fernsgroceries .fg-brand-link img { max-width: 150px; height: 80px; }
        body.theme-fernsgroceries .fg-header-action { padding-inline: 10px !important; font-size: 12px; }
    }
    @media (min-width: 1200px) {
        body.theme-fernsgroceries { --ferns-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 767.98px) {
        body.theme-fernsgroceries .gift-voucher-page { padding-block: 32px 48px !important; }
        body.theme-fernsgroceries .gift-voucher-header { align-items: flex-start; flex-direction: column; }
        body.theme-fernsgroceries .gift-voucher-actions { width: 100%; }
        body.theme-fernsgroceries .gift-voucher-actions > * { flex: 1 1 auto; }
        body.theme-fernsgroceries .member_body_child form > .row:has(> label) { grid-template-columns: minmax(0, 1fr); }
        body.theme-fernsgroceries .member_body_child .invalid-feedback { grid-column: 1; }
        body.theme-fernsgroceries .hero-custom .hero-content p { margin-inline: auto; }
        body.theme-fernsgroceries .hero-custom > .container > .row > div { padding-inline: 0; }
    }

/* convenience-store */
body.theme-convenience-store { --cs-page-width: calc(100% - 32px); }
    body.theme-convenience-store {
        --order-history-primary: #2bbb84;
        --order-history-primary-contrast: #ffffff;
        --order-history-accent: #2bbb84;
        --order-history-bg: #f1fbf6;
        --order-history-border: #dcece3;
    }
    body.theme-convenience-store .store-status-anchor > nav > .container,
    body.theme-convenience-store > footer > .container,
    body.theme-convenience-store .cs-main > .container,
    body.theme-convenience-store .cs-main > section > .container,
    body.theme-convenience-store .cs-main > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-convenience-store .ordering_section_child,
    body.theme-convenience-store .term_and_conditions_inner,
    body.theme-convenience-store .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--cs-page-width) !important;
        max-width: var(--cs-page-width) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }
    body.theme-convenience-store .cs-main > .container-fluid,
    body.theme-convenience-store .food-menu-area section:has(> .ordering_section_child) { padding-inline: 0; }
    body.theme-convenience-store .cs-navbar .navbar-collapse { min-width: 0; }
    body.theme-convenience-store .cs-navbar { padding-block: 14px !important; }
    body.theme-convenience-store .cs-navbar .nav-link { white-space: nowrap; font-weight: 400 !important; }
    body.theme-convenience-store .cs-navbar-brand { display: inline-flex; align-items: center; flex-shrink: 0; font-size: 32px; line-height: 1.1; }
    body.theme-convenience-store .cs-navbar-brand img { display: block; width: auto; height: 84px; max-width: 180px; object-fit: contain; }
    body.theme-convenience-store > footer .theme-footer-powered-logo { height: 42px; width: auto; max-width: 150px; object-fit: contain; }
    body.theme-convenience-store .cs-navbar .cs-header-auth-btn { background: #2bbb84; border: 1px solid #2bbb84; color: #ffffff !important; font-weight: 700; }
    body.theme-convenience-store .cs-navbar .cs-header-auth-btn:is(:hover, :focus-visible) { background: #1d8f63; border-color: #1d8f63; color: #ffffff !important; }
    body.theme-convenience-store .cs-navbar .food-hygiene-badge { width: 136px; min-width: 136px; flex-shrink: 0; padding: 6px; background: #527f30; border: 2px solid #182410; border-radius: 8px; box-shadow: 0 2px 5px rgba(0, 0, 0, .18); }
    body.theme-convenience-store .cs-navbar .food-hygiene-title { color: #ffffff; font: 800 9px/1.2 Arial, sans-serif !important; letter-spacing: 0; white-space: nowrap; }
    body.theme-convenience-store .cs-navbar .rating-numbers { display: flex; justify-content: center; gap: 3px; margin-block: 5px 3px; }
    body.theme-convenience-store .cs-navbar .rating-circle { display: inline-flex; justify-content: center; align-items: center; width: 16px; height: 16px; border-radius: 50%; background: #eeeeee; color: #333333; font: 700 10px/1 Arial, sans-serif; }
    body.theme-convenience-store .cs-navbar .rating-circle.active { background: #2bb34a; color: #ffffff; }
    body.theme-convenience-store .cs-navbar .rating-description { color: #ffffff; font: 700 9px/1.2 Arial, sans-serif; }
    @media (min-width: 992px) { body.theme-convenience-store .cs-navbar .navbar-nav { align-items: center; } }
    body.theme-convenience-store .hero-custom { padding-block: clamp(48px, 5vw, 88px) !important; }
    body.theme-convenience-store .hero-custom > .container > .row { margin-inline: 0; row-gap: 24px; }
    body.theme-convenience-store .hero-custom .hero-content { padding-left: 0; }
    body.theme-convenience-store .hero-custom .hero-content h1 { max-width: 680px; font-size: clamp(28px, 2.8vw, 44px); }
    body.theme-convenience-store .hero-custom .hero-content p { max-width: 640px; line-height: 1.8; }
    body.theme-convenience-store .cs-hero-image { width: 100%; height: auto; max-height: clamp(360px, 32vw, 580px); object-fit: contain; }
    body.theme-convenience-store .cs-main > section > .container > .row { margin-inline: 0; }
    body.theme-convenience-store .cs-main > section > .container > .row > [class*="col-"]:first-child { padding-left: 0; }
    body.theme-convenience-store .cs-main > section > .container > .row > [class*="col-"]:last-child { padding-right: 0; }
    body.theme-convenience-store .cs-main > section > .container > .row .card > .card-img-top { height: auto !important; aspect-ratio: 4 / 3; object-fit: contain !important; }
    body.theme-convenience-store .cs-feature-band .container { padding-block: clamp(32px, 3vw, 52px) !important; }
    body.theme-convenience-store .cs-gallery-card .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-convenience-store .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-convenience-store .contact_us_child > [class*="col-"] { min-width: 0; width: 100%; padding-inline: 0 !important; }
    body.theme-convenience-store .cs-map-container iframe { display: block; width: 100% !important; height: clamp(320px, 30vw, 500px) !important; }
    body.theme-convenience-store .cs-pdf-menu-page .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 24px !important; padding: 0; align-items: start !important; }
    body.theme-convenience-store .cs-pdf-menu-page img { width: 100%; height: auto; object-fit: contain; }
    body.theme-convenience-store .cs-pdf-menu-page embed { width: 100%; height: clamp(420px, 40vw, 650px); }
    body.theme-convenience-store .ordering_section_child { align-items: start; }
    body.theme-convenience-store .ordering_section_child_left_child1_search_bar h2 { color: #176c49 !important; }
    body.theme-convenience-store .ordering_section_child > [class*="col-"] { min-width: 0; }
    body.theme-convenience-store .ordering_section_child_left_child1_navbar_dish_list > img { width: 100%; height: auto; aspect-ratio: 16 / 7; object-fit: cover; }
    body.theme-convenience-store .cs-login-page { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-convenience-store .cs-login-page :is(label, .consent-text) { color: #ffffff !important; }
    body.theme-convenience-store .member_body_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-convenience-store .member_body_child > [class*="col-"] { min-width: 0; width: 100%; margin: 0 !important; padding: 24px !important; }
    body.theme-convenience-store .member_body_child > .member_body_child_right { padding: 0 !important; }
    body.theme-convenience-store .member_body_child_right_child1 { padding: 24px !important; }
    body.theme-convenience-store .member_body_child form { width: 100%; max-width: 520px; margin-inline: auto; }
    body.theme-convenience-store .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; }
    body.theme-convenience-store .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-convenience-store .member_body_child input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { width: 100% !important; min-width: 0; min-height: 46px; height: auto !important; }
    body.theme-convenience-store .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-convenience-store .cs-cart-page > .container > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; align-items: start; }
    body.theme-convenience-store .cs-cart-page > .container > .row > div { width: 100%; min-width: 0; margin: 0 !important; padding-inline: 0 !important; }
    body.theme-convenience-store .cs-cart-page > .container > .row > div:first-child { grid-column: 1 / -1; }
    body.theme-convenience-store .cs-cart-page > .container > .row > div > .row { margin-inline: 0; }
    body.theme-convenience-store .checkout-sidebar__stack { margin-inline: 0; }
    body.theme-convenience-store .checkout-sidebar__stack > * { width: 100%; min-width: 0; }
    body.theme-convenience-store .cs-cart-page .checkout-sidebar__security-row { width: 100%; margin: 24px 0 0 !important; padding-inline: 0; }
    body.theme-convenience-store .cs-cart-page .checkout-sidebar__security-row > .checkout-sidebar__card { width: 100%; margin-top: 0; }
    body.theme-convenience-store .full-cart-shell--convenience-store :is(.dish_list_content:has(> .full-cart__total-cell), .row:has(> .col-3 > h6.full-cart__summary-label)) { display: grid; grid-template-columns: 28px minmax(0, 1fr) minmax(120px, max-content); column-gap: 8px; align-items: start; }
    body.theme-convenience-store .full-cart-shell--convenience-store :is(.dish_list_content:has(> .full-cart__total-cell), .row:has(> .col-3 > h6.full-cart__summary-label)) > [class*="col-"] { width: 100%; min-width: 0; padding-inline: 0; overflow-wrap: anywhere; }
    body.theme-convenience-store .full-cart-shell--convenience-store .full-cart__total-cell { display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; padding-inline: 0; }
    body.theme-convenience-store .full-cart-shell--convenience-store .full-cart__line-total { flex-shrink: 0; margin: 0 !important; white-space: nowrap; }
    body.theme-convenience-store .full-cart-shell--convenience-store .full-cart__action-strip { display: flex; flex-wrap: nowrap; align-items: center; gap: 2px; }
    body.theme-convenience-store .full-cart-shell--convenience-store :is(.full-cart__qty-btn, .full-cart__remove-link) { display: inline-flex; flex: 0 0 18px; align-items: center; justify-content: center; width: 18px; min-width: 18px; height: 24px; min-height: 24px; padding: 0; margin: 0; vertical-align: middle; transform: none; }
    body.theme-convenience-store .full-cart-shell--convenience-store .full-cart__qty-icon { width: 18px; height: 18px; object-fit: contain; }
    body.theme-convenience-store .full-cart-shell--convenience-store .full-cart__qty-value { flex: 0 0 auto; min-width: 10px; margin: 0; text-align: center; line-height: 24px; }
    body.theme-convenience-store .full-cart-shell--convenience-store :is(.full-cart__remove-link, .checkout-trash-icon) { color: #ffffff !important; }
    body.theme-convenience-store .full-cart-shell--convenience-store .checkout-trash-icon { font-size: 16px; line-height: 1; }
    body.theme-convenience-store .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    body.theme-convenience-store:has(.gift-voucher-page) { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; margin: 0; }
    body.theme-convenience-store:has(.gift-voucher-page) > :is(.store-status-anchor, footer) { flex-shrink: 0; }
    body.theme-convenience-store:has(.gift-voucher-page) > .cs-main { display: flex; flex-direction: column; flex: 1 0 auto; }
    body.theme-convenience-store .cs-main > .gift-voucher-page { flex: 1 0 auto; min-height: 0 !important; }
    body.theme-convenience-store .gift-voucher-page--create { padding: 48px 0 64px !important; background: #ffffff; color: #17261d; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-shell--narrow { width: min(720px, var(--cs-page-width)) !important; max-width: 720px !important; padding-inline: 0; margin-inline: auto; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-shell > .row { margin-inline: 0; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-shell > .row > div { padding-inline: 0; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-panel { padding: clamp(24px, 3vw, 36px); background: #ffffff; border: 1px solid #dcece3; border-radius: 10px; box-shadow: 0 10px 28px rgba(23, 108, 73, .08); }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-kicker { margin-bottom: 8px; color: #1d8f63; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-title { color: #176c49; font-size: clamp(22px, 2.5vw, 32px); font-weight: 700; line-height: 1.2; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-subtitle { color: #52675b; font-size: 14px; line-height: 1.7; }
    body.theme-convenience-store .gift-voucher-page--create .form-label { color: #176c49; font-weight: 600; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-input { min-height: 48px; padding: 12px 14px; border: 1px solid #b9d9c8; border-radius: 6px; }
    body.theme-convenience-store .gift-voucher-page--create textarea.gift-voucher-input { min-height: 120px; resize: vertical; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-input:focus { border-color: #2bbb84; box-shadow: 0 0 0 3px rgba(43, 187, 132, .15); }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-inline-card { padding: 14px 16px; border: 1px solid #dcece3; border-radius: 6px; background: #f5fbf8; font-size: 14px; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-check { display: flex; gap: 10px; padding-left: 0; align-items: flex-start; }
    body.theme-convenience-store .gift-voucher-page--create .form-check-input { flex-shrink: 0; width: 18px; height: 18px; margin-left: 0; }
    body.theme-convenience-store .gift-voucher-page--create .form-check-input:checked { background-color: #2bbb84; border-color: #2bbb84; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-inline-card a { color: #1d8f63; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-btn--primary { min-height: 48px; padding: 12px 20px; background: #2bbb84; border: 1px solid #2bbb84; border-radius: 6px; color: #ffffff; font-weight: 700; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-btn--primary:disabled { background: #8dcdb4; border-color: #8dcdb4; color: #ffffff; opacity: 1; }
    body.theme-convenience-store .gift-voucher-page--create .gift-voucher-btn--primary:enabled:is(:hover, :focus-visible) { background: #1d8f63; border-color: #1d8f63; }
    body.theme-convenience-store .gift-voucher-page--log { min-height: 70vh; padding-block: 48px 64px; background: #ffffff; color: #17261d; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-header { margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #dcece3; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-kicker { margin-bottom: 8px; color: #1d8f63; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-title { margin: 0; color: #17261d; font-size: clamp(28px, 3vw, 38px); font-weight: 700; line-height: 1.2; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-search { max-width: 760px; margin-bottom: 28px; padding: 24px; border: 1px solid #dcece3; border-radius: 8px; background: #f5fbf8; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-search__group { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-input { width: 100%; min-width: 0; min-height: 48px; margin: 0; padding: 12px 14px; border: 1px solid #b9d9c8; border-radius: 6px !important; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-input:focus { border-color: #2bbb84; box-shadow: 0 0 0 3px rgba(43, 187, 132, .15); }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-btn--primary { min-height: 48px; padding: 12px 24px; border: 1px solid #2bbb84; border-radius: 6px; background: #2bbb84; color: #ffffff; font-weight: 700; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-btn--primary:is(:hover, :focus-visible) { background: #1d8f63; border-color: #1d8f63; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-table-wrap { overflow-x: auto; border: 1px solid #dcece3; border-radius: 8px; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-table { min-width: 700px; margin: 0; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-table :is(th, td) { padding: 14px 16px; vertical-align: middle; border-color: #dcece3; }
    body.theme-convenience-store .gift-voucher-page--log .gift-voucher-table thead th { background: #2bbb84; color: #ffffff; }
    body.theme-convenience-store .gift-voucher-page--show .gift-voucher-title { overflow-wrap: anywhere; }
    body.theme-convenience-store .gift-voucher-page--show .gift-voucher-subtitle { margin-top: 12px; color: #1d8f63; font-size: 20px; font-weight: 700; }
    body.theme-convenience-store .gift-voucher-page--show .gift-voucher-table tfoot td { background: #f1fbf6; color: #176c49; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) { min-height: 70vh; padding-block: 48px 64px; background: #ffffff; color: #17261d; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #dcece3; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-kicker { margin-bottom: 8px; color: #1d8f63; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-title { margin: 0; color: #17261d; font-size: clamp(28px, 3vw, 38px); font-weight: 700; line-height: 1.2; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-actions { display: flex; flex-wrap: wrap; gap: 12px; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 20px; border: 1px solid #2bbb84; border-radius: 6px; font-size: 14px; font-weight: 700; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-btn--primary { background: #2bbb84; color: #ffffff; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-btn--ghost { background: #ffffff; color: #1d8f63; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-btn:is(:hover, :focus-visible) { background: #1d8f63; border-color: #1d8f63; color: #ffffff; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-table-wrap { overflow-x: auto; border: 1px solid #dcece3; border-radius: 8px; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-table { min-width: 760px; margin: 0; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-table :is(th, td) { padding: 14px 16px; vertical-align: middle; border-color: #dcece3; font-size: 14px; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-table thead th { background: #2bbb84; color: #ffffff; font-weight: 700; white-space: nowrap; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-table tbody tr:last-child td { border-bottom: 0; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-code { display: inline-block; padding: 5px 8px; border-radius: 4px; background: #f1fbf6; color: #176c49; font-family: monospace; font-size: 13px; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-status { display: inline-block; padding: 5px 10px; border-radius: 20px; background: #edf8f1; color: #176c49; font-size: 12px; font-weight: 700; white-space: nowrap; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-link { color: #1d8f63; font-weight: 700; text-underline-offset: 3px; white-space: nowrap; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-pagination { margin-top: 24px; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .page-link { color: #1d8f63; border-color: #dcece3; }
    body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .active > .page-link { background: #2bbb84; border-color: #2bbb84; color: #ffffff; }
    @media (min-width: 992px) {
        body.theme-convenience-store .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-convenience-store .contact_us_child { grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); }
        body.theme-convenience-store .cs-cart-page > .container > .row { grid-template-columns: minmax(240px, 1fr) minmax(0, 1.6fr) minmax(240px, 1fr); }
    }
    @media (min-width: 1200px) and (max-width: 1399.98px) {
        body.theme-convenience-store .cs-navbar .navbar-nav { gap: 10px !important; }
        body.theme-convenience-store .cs-navbar .nav-link { font-size: 14px; padding-inline: 5px; }
        body.theme-convenience-store .cs-navbar-brand { font-size: 30px; }
        body.theme-convenience-store .cs-header-auth-btn { padding-inline: 12px !important; font-size: 13px; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-convenience-store .cs-navbar .navbar-nav { gap: 6px !important; }
        body.theme-convenience-store .cs-navbar .nav-link { font-size: 12px; padding-inline: 4px; }
        body.theme-convenience-store .cs-navbar-brand { font-size: 26px; }
        body.theme-convenience-store .cs-header-auth-btn { padding-inline: 10px !important; font-size: 12px; }
    }
    @media (min-width: 1200px) {
        body.theme-convenience-store { --cs-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 767.98px) {
        body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) { padding-block: 32px 48px; }
        body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-header { flex-direction: column; align-items: flex-start; }
        body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-actions { width: 100%; }
        body.theme-convenience-store :is(.gift-voucher-page--index, .gift-voucher-page--show) .gift-voucher-actions > * { flex: 1 1 auto; }
        body.theme-convenience-store .gift-voucher-page--log .gift-voucher-search { padding: 20px; }
        body.theme-convenience-store .gift-voucher-page--log .gift-voucher-search__group { grid-template-columns: minmax(0, 1fr); }
        body.theme-convenience-store .gift-voucher-page--log .gift-voucher-btn--primary { width: 100%; }
        body.theme-convenience-store .member_body_child form > .row:has(> label) { grid-template-columns: minmax(0, 1fr); }
        body.theme-convenience-store .member_body_child .invalid-feedback { grid-column: 1; }
        body.theme-convenience-store .hero-custom .hero-content :is(h1, p) { margin-inline: auto; }
        body.theme-convenience-store .hero-custom > .container > .row > div { padding-inline: 0; }
        body.theme-convenience-store .cs-navbar-brand { font-size: clamp(24px, 6vw, 32px); }
    }

/* boxpostoffice */
body.theme-boxpostoffice .cart-component__remove {
        align-self: center !important;
        margin-top: 0 !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        line-height: 1;
    }
    body.theme-boxpostoffice .cart-component__trash-icon {
        display: inline-flex;
        align-items: center;
        line-height: 1;
    }
    body.theme-boxpostoffice { --boxpostoffice-page-width: calc(100% - 32px); }
    body.theme-boxpostoffice {
        --order-history-primary: #e40046;
        --order-history-primary-contrast: #ffffff;
        --order-history-accent: #e40046;
        --order-history-bg: #fff5f8;
        --order-history-border: #f0dce3;
    }
    body.theme-boxpostoffice .store-status-anchor > nav > .container,
    body.theme-boxpostoffice > footer > .container,
    body.theme-boxpostoffice .boxpostoffice-main > .container,
    body.theme-boxpostoffice .boxpostoffice-main > section > .container,
    body.theme-boxpostoffice .boxpostoffice-main > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-boxpostoffice .ordering_section_child,
    body.theme-boxpostoffice .term_and_conditions_inner,
    body.theme-boxpostoffice .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--boxpostoffice-page-width) !important;
        max-width: var(--boxpostoffice-page-width) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }
    body.theme-boxpostoffice .boxpostoffice-main > .container-fluid,
    body.theme-boxpostoffice .food-menu-area section:has(> .ordering_section_child) { padding-inline: 0; }
    body.theme-boxpostoffice .boxpostoffice-navbar .navbar-collapse { min-width: 0; }
    body.theme-boxpostoffice .boxpostoffice-navbar .nav-link { white-space: nowrap; }
    body.theme-boxpostoffice .boxpostoffice-navbar__brand { flex-shrink: 0; }
    body.theme-boxpostoffice .boxpostoffice-footer .theme-footer-powered-logo { height: 42px; width: auto; max-width: 150px; object-fit: contain; }
    body.theme-boxpostoffice .hero-custom { padding-block: clamp(48px, 5vw, 88px) !important; }
    body.theme-boxpostoffice .hero-custom > .container > .row { margin-inline: 0; row-gap: 24px; }
    body.theme-boxpostoffice .hero-custom .hero-content { padding-left: 0; }
    body.theme-boxpostoffice .hero-custom .hero-content h1 { max-width: 680px; font-size: clamp(28px, 2.8vw, 44px); }
    body.theme-boxpostoffice .hero-custom .hero-content p { max-width: 640px; line-height: 1.8; }
    body.theme-boxpostoffice .boxpostoffice-home-hero__image { width: 100%; height: auto; max-height: clamp(360px, 32vw, 580px); object-fit: contain; }
    body.theme-boxpostoffice .boxpostoffice-main > section > .container > .row { margin-inline: 0; }
    body.theme-boxpostoffice .boxpostoffice-main > section > .container > .row > [class*="col-"]:first-child { padding-left: 0; }
    body.theme-boxpostoffice .boxpostoffice-main > section > .container > .row > [class*="col-"]:last-child { padding-right: 0; }
    body.theme-boxpostoffice .boxpostoffice-main > section > .container > .row .card > .card-img-top { height: auto !important; aspect-ratio: 4 / 3; object-fit: contain !important; }
    body.theme-boxpostoffice .boxpostoffice-home-benefits .container { padding-block: clamp(32px, 3vw, 52px) !important; }
    body.theme-boxpostoffice .boxpostoffice-gallery-card .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-boxpostoffice .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-boxpostoffice .contact_us_child > [class*="col-"] { min-width: 0; width: 100%; padding-inline: 0 !important; }
    body.theme-boxpostoffice .boxpostoffice-map-container iframe { display: block; width: 100% !important; height: clamp(320px, 30vw, 500px) !important; }
    body.theme-boxpostoffice .boxpostoffice-pdf-menu-page .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 24px !important; padding: 0; align-items: start !important; }
    body.theme-boxpostoffice .boxpostoffice-pdf-menu-page img { width: 100%; height: auto; object-fit: contain; }
    body.theme-boxpostoffice .boxpostoffice-pdf-menu-page embed { width: 100%; height: clamp(420px, 40vw, 650px); }
    body.theme-boxpostoffice .ordering_section_child { align-items: start; }
    body.theme-boxpostoffice .ordering_section_child > [class*="col-"] { min-width: 0; }
    body.theme-boxpostoffice .ordering_section_child_left_child1_navbar_dish_list > img { width: 100%; height: auto; aspect-ratio: 16 / 7; object-fit: cover; }
    body.theme-boxpostoffice .boxpostoffice-login-page { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-boxpostoffice .boxpostoffice-change-password-card { width: 100%; max-width: 600px; padding: clamp(24px, 3vw, 36px) !important; }
    body.theme-boxpostoffice .boxpostoffice-change-password-card .form-control { min-height: 48px; margin-top: 6px; }
    body.theme-boxpostoffice .boxpostoffice-change-password-card .form-group + .form-group { margin-top: 8px; }
    body.theme-boxpostoffice .boxpostoffice-change-password-card button[type="submit"] { min-height: 46px; padding-inline: 24px; }
    body.theme-boxpostoffice .member_body_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-boxpostoffice .member_body_child > [class*="col-"] { min-width: 0; width: 100%; margin: 0 !important; padding: 24px !important; }
    body.theme-boxpostoffice .member_body_child > .member_body_child_right { padding: 0 !important; }
    body.theme-boxpostoffice .member_body_child_right_child1 { padding: 24px !important; }
    body.theme-boxpostoffice .member_body_child form { width: 100%; max-width: 520px; margin-inline: auto; }
    body.theme-boxpostoffice .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; }
    body.theme-boxpostoffice .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-boxpostoffice .member_body_child input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { width: 100% !important; min-width: 0; min-height: 46px; height: auto !important; }
    body.theme-boxpostoffice .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page > .container > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; align-items: start; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page > .container > .row > div { width: 100%; min-width: 0; margin: 0 !important; padding-inline: 0 !important; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page > .container > .row > div:first-child { grid-column: 1 / -1; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page > .container > .row > div > .row { margin-inline: 0; }
    body.theme-boxpostoffice .checkout-sidebar__stack { margin-inline: 0; }
    body.theme-boxpostoffice .checkout-sidebar__stack > * { width: 100%; min-width: 0; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page .checkout-sidebar__security-row { width: 100%; margin: 24px 0 0 !important; padding-inline: 0; }
    body.theme-boxpostoffice .boxpostoffice-view-cart-page .checkout-sidebar__security-row > .checkout-sidebar__card { width: 100%; margin-top: 0; }
    body.theme-boxpostoffice .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    body.theme-boxpostoffice:has(.gift-voucher-page--show) { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; margin: 0; }
    body.theme-boxpostoffice:has(.gift-voucher-page--show) > :is(.store-status-anchor, footer) { flex-shrink: 0; }
    body.theme-boxpostoffice:has(.gift-voucher-page--show) > .boxpostoffice-main { display: flex; flex-direction: column; flex: 1 0 auto; }
    body.theme-boxpostoffice .boxpostoffice-main > .gift-voucher-page--show { flex: 1 0 auto; min-height: 0 !important; }
    body.theme-boxpostoffice .gift-voucher-page--show .gift-voucher-title { overflow-wrap: anywhere; }
    body.theme-boxpostoffice .gift-voucher-page--show .gift-voucher-subtitle { margin-top: 12px; color: #c9003d; font-size: 20px; font-weight: 700; }
    body.theme-boxpostoffice .gift-voucher-page--show .gift-voucher-table tfoot td { background: #fff5f8; color: #a30032; }
    body.theme-boxpostoffice .gift-voucher-page--create .gift-voucher-shell--narrow { width: min(720px, var(--boxpostoffice-page-width)) !important; max-width: 720px !important; margin-inline: auto !important; padding-inline: 0; }
    body.theme-boxpostoffice .gift-voucher-page--create .gift-voucher-shell > .row { margin-inline: 0; }
    body.theme-boxpostoffice .gift-voucher-page--create .gift-voucher-shell > .row > div { padding-inline: 0; }
    body.theme-boxpostoffice .gift-voucher-page--create .gift-voucher-title { font-size: clamp(24px, 3vw, 34px); line-height: 1.2; }
    body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-search { max-width: 760px; padding: 24px; margin-bottom: 28px; background: #fff8fa; border: 1px solid #f0dce3; border-radius: 8px; }
    body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-search__group { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
    body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-input { min-width: 0; width: 100%; min-height: 48px; padding: 12px 14px; margin: 0; border: 1px solid #e8bac8; border-radius: 6px !important; }
    body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-input:focus { border-color: #e40046; box-shadow: 0 0 0 3px rgba(228, 0, 70, .12); }
    body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-btn--primary { min-height: 48px; padding-inline: 24px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) { min-height: 65vh; padding: 48px 0 64px; background: #ffffff; color: #25232a; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #f0dce3; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-kicker { margin-bottom: 8px; color: #c9003d; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-title { margin: 0; font-size: clamp(28px, 3vw, 38px); font-weight: 700; line-height: 1.2; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-actions { display: flex; flex-wrap: wrap; gap: 12px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 20px; border: 1px solid #e40046; border-radius: 6px; font-size: 14px; font-weight: 700; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-btn--primary { background: #e40046; color: #ffffff; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-btn--ghost { background: #ffffff; color: #c9003d; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-btn:is(:hover, :focus-visible) { background: #c9003d; border-color: #c9003d; color: #ffffff; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-table-wrap { overflow-x: auto; border: 1px solid #f0dce3; border-radius: 8px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-table { min-width: 760px; margin: 0; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-table :is(th, td) { padding: 14px 16px; vertical-align: middle; border-color: #f0dce3; font-size: 14px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-table thead th { background: #e40046; color: #ffffff; font-weight: 700; white-space: nowrap; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-table tbody tr:last-child td { border-bottom: 0; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-code { display: inline-block; padding: 5px 8px; border-radius: 4px; background: #fff5f8; color: #a30032; font-family: monospace; font-size: 13px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-status { display: inline-block; padding: 5px 10px; border-radius: 20px; background: #fff0f4; color: #a30032; font-size: 12px; font-weight: 700; white-space: nowrap; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-link { color: #c9003d; font-weight: 700; text-underline-offset: 3px; white-space: nowrap; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-pagination { margin-top: 24px; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .page-link { color: #c9003d; border-color: #f0dce3; }
    body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .active > .page-link { background: #e40046; border-color: #e40046; color: #ffffff; }
    @media (min-width: 992px) {
        body.theme-boxpostoffice .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-boxpostoffice .contact_us_child { grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); }
        body.theme-boxpostoffice .boxpostoffice-view-cart-page > .container > .row { grid-template-columns: minmax(240px, 1fr) minmax(0, 1.6fr) minmax(240px, 1fr); }
    }
    @media (min-width: 1200px) and (max-width: 1399.98px) {
        body.theme-boxpostoffice .boxpostoffice-navbar .navbar-nav { gap: 10px !important; }
        body.theme-boxpostoffice .boxpostoffice-navbar .nav-link { font-size: 14px; padding-inline: 5px; }
        body.theme-boxpostoffice .boxpostoffice-navbar__brand { font-size: 26px; }
        body.theme-boxpostoffice .boxpostoffice-navbar__auth-btn { padding-inline: 12px !important; font-size: 13px; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-boxpostoffice .boxpostoffice-navbar .navbar-nav { gap: 6px !important; }
        body.theme-boxpostoffice .boxpostoffice-navbar .nav-link { font-size: 12px; padding-inline: 4px; }
        body.theme-boxpostoffice .boxpostoffice-navbar__brand { font-size: 22px; }
        body.theme-boxpostoffice .boxpostoffice-navbar__auth-btn { padding-inline: 10px !important; font-size: 12px; }
    }
    @media (min-width: 1200px) {
        body.theme-boxpostoffice { --boxpostoffice-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 767.98px) {
        body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-search { padding: 20px; }
        body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-search__group { grid-template-columns: minmax(0, 1fr); }
        body.theme-boxpostoffice .gift-voucher-page--log .gift-voucher-btn--primary { width: 100%; }
        body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) { padding-block: 32px 48px; }
        body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-header { flex-direction: column; align-items: flex-start; }
        body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-actions { width: 100%; }
        body.theme-boxpostoffice :is(.gift-voucher-page--index, .gift-voucher-page--log, .gift-voucher-page--show) .gift-voucher-actions > * { flex: 1 1 auto; }
        body.theme-boxpostoffice .member_body_child form > .row:has(> label) { grid-template-columns: minmax(0, 1fr); }
        body.theme-boxpostoffice .member_body_child .invalid-feedback { grid-column: 1; }
        body.theme-boxpostoffice .hero-custom .hero-content :is(h1, p) { margin-inline: auto; }
        body.theme-boxpostoffice .hero-custom > .container > .row > div { padding-inline: 0; }
        body.theme-boxpostoffice .boxpostoffice-navbar__brand { font-size: clamp(20px, 5.5vw, 28px); }
    }

/* anand-sweets */
body.theme-anand-sweets { --anand-page-width: calc(100% - 32px); }
    body.theme-anand-sweets {
        --order-history-primary: #a11c2d;
        --order-history-primary-contrast: #ffffff;
        --order-history-danger: #a11c2d;
    }
    body.theme-anand-sweets .store-status-anchor > nav > .container,
    body.theme-anand-sweets > footer > .container,
    body.theme-anand-sweets .anand-main > .container,
    body.theme-anand-sweets .anand-main > section > .container,
    body.theme-anand-sweets .anand-main > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-anand-sweets .anand-main div:has(> .anand-catalog-banner),
    body.theme-anand-sweets .anand-main div:has(> .anand-catalog-content),
    body.theme-anand-sweets .term_and_conditions_inner,
    body.theme-anand-sweets .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--anand-page-width) !important; max-width: var(--anand-page-width) !important;
        margin-inline: auto !important; padding-inline: 0 !important;
    }
    body.theme-anand-sweets .anand-main > .container-fluid { padding-inline: 0; }
    body.theme-anand-sweets .store-status-anchor > nav { padding-inline: 0; }
    body.theme-anand-sweets .navbar-brand { flex-shrink: 0; }
    body.theme-anand-sweets .navbar-collapse { min-width: 0; }
    body.theme-anand-sweets .navbar .nav-link { white-space: nowrap; }
    body.theme-anand-sweets .anand-home-hero { height: clamp(480px, 39vw, 700px); }
    body.theme-anand-sweets .hero-content { padding: 32px 16px; max-width: 1000px; margin-inline: auto; }
    body.theme-anand-sweets .anand-categories-section .card-img-top { aspect-ratio: 4 / 3; }
    body.theme-anand-sweets .anand-categories-section .card-img-top img { width: 100%; height: 100%; object-fit: cover; }
    body.theme-anand-sweets .anand-about-image { width: 100%; height: clamp(340px, 34vw, 540px); object-fit: cover; }
    body.theme-anand-sweets .anand-about-copy { max-width: 960px; line-height: 1.8; }
    body.theme-anand-sweets .anand-ingredients-copy { max-width: 800px; line-height: 1.8; }
    body.theme-anand-sweets .anand-pdf-menu-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
    body.theme-anand-sweets .anand-pdf-menu-card { min-width: 0; }
    body.theme-anand-sweets .anand-pdf-menu-card__image { width: 100%; height: auto; object-fit: contain; }
    body.theme-anand-sweets .anand-pdf-menu-card embed { width: 100%; height: clamp(420px, 40vw, 650px); }
    body.theme-anand-sweets .anand-gallery-page .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-anand-sweets .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
    body.theme-anand-sweets .anand-contact-title { grid-column: 1 / -1; padding: 0; margin: 0; }
    body.theme-anand-sweets .contact_us_child > [class*="col-"] { min-width: 0; width: 100%; margin: 0 !important; padding: 0 !important; }
    body.theme-anand-sweets .contact_us_child_left > .row,
    body.theme-anand-sweets .contact_us_child_right_child { margin: 0 !important; width: 100%; }
    body.theme-anand-sweets .contact_us_child_right { overflow-wrap: anywhere; }
    body.theme-anand-sweets .contact_us_child iframe { display: block; width: 100% !important; height: clamp(360px, 34vw, 560px) !important; }
    body.theme-anand-sweets .anand-login-page { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-anand-sweets .member_body_child { display: grid; grid-template-columns: 1fr; align-items: start; gap: 24px; }
    body.theme-anand-sweets .member_body_child > [class*="col-"] { min-width: 0; width: 100%; padding: 24px !important; margin: 0 !important; }
    body.theme-anand-sweets .member_body_child > .member_body_child_right { padding-block: 0 !important; }
    body.theme-anand-sweets .member_body_child_right_child1 { margin: 0 !important; padding: 48px 0 !important; }
    body.theme-anand-sweets .member_body_child form { width: 100%; max-width: 460px; margin-inline: auto; }
    body.theme-anand-sweets .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; margin-top: 16px !important; }
    body.theme-anand-sweets .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-anand-sweets .member_body_child input:not([type="checkbox"]):not([type="radio"]) { width: 100% !important; min-width: 0; min-height: 46px; height: auto !important; }
    body.theme-anand-sweets .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-anand-sweets .anand-change-password-page .anand-account-form { width: 100%; max-width: 720px; padding: clamp(24px, 4vw, 48px) !important; }
    body.theme-anand-sweets .anand-change-password-page .form-group + .form-group { margin-top: 12px; }
    body.theme-anand-sweets .anand-change-password-page .anand-gold-input { min-height: 52px; margin-top: 8px; font-size: 18px; }
    body.theme-anand-sweets .anand-change-password-page .anand-btn-maroon { min-height: 48px; padding: 12px 32px; font-size: 18px; }
    body.theme-anand-sweets .anand-contact-info-page > form { max-width: 760px; margin-inline: auto; padding-block: 32px; }
    body.theme-anand-sweets .profile-page { padding-inline: 0 !important; }
    body.theme-anand-sweets .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    body.theme-anand-sweets .gift-voucher-page { width: 100%; max-width: none !important; padding-inline: 0; }
    body.theme-anand-sweets .gift-voucher-page .gift-voucher-shell--narrow { width: min(860px, var(--anand-page-width)) !important; max-width: min(860px, var(--anand-page-width)) !important; margin-inline: auto !important; }
    body.theme-anand-sweets .anand-catalog-content { padding-inline: 0; }
    body.theme-anand-sweets .anand-catalog-layout,
    body.theme-anand-sweets .anand-catalog-main__row { margin-inline: 0; }
    body.theme-anand-sweets .anand-catalog-layout > div,
    body.theme-anand-sweets .anand-catalog-main__row > div { min-width: 0; }
    body.theme-anand-sweets .anand-catalog-products > .row { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: 24px; margin-inline: 0; }
    body.theme-anand-sweets .anand-catalog-products > .row > div { width: 100%; min-width: 0; padding: 0; margin-top: 0; }
    body.theme-anand-sweets .anand-product-card__image { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-anand-sweets .confirm_order_section { padding-inline: 0; }
    body.theme-anand-sweets .confirm_order_section_child { align-items: start; }
    body.theme-anand-sweets .confirm_order_section_child > [class*="col-"] { min-width: 0; padding-inline: 0; }
    body.theme-anand-sweets .confirm_order_section_child .row { margin-inline: 0; }
    body.theme-anand-sweets .checkout-sidebar__stack { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 0 !important; }
    body.theme-anand-sweets .checkout-sidebar__stack > * { width: 100%; min-width: 0; margin: 0 !important; }
    body.theme-anand-sweets :is(.checkout-sidebar__card, .checkout-loyalty-card) { padding: 24px !important; }
    body.theme-anand-sweets :is(.gift-voucher-box, .checkout-apply-coupon__panel) { border-radius: 0 !important; }
    body.theme-anand-sweets .gift-voucher-box {
        --gv-bg: linear-gradient(180deg, #a11c2d 0%, #7f1320 100%);
        --gv-color: #ffffff;
        --gv-btn-bg: #ffffff;
        --gv-btn-border: #ffffff;
        --gv-btn-color: #000000;
        --gv-btn-hover: #f7d9d9;
        border-color: rgba(255, 255, 255, 0.16) !important;
    }
    body.theme-anand-sweets .gift-voucher-box__title { color: #ffffff !important; }
    body.theme-anand-sweets .gift-voucher-box__button:is(:hover, :focus) { color: #000000 !important; }
    body.theme-anand-sweets .checkout-sidebar__security-row { margin-top: 24px !important; }
    body.theme-anand-sweets > footer .theme-footer-powered-logo { height: 52px; width: auto; max-width: 180px; object-fit: contain; }
    @media (min-width: 576px) and (max-width: 767.98px) { body.theme-anand-sweets { --anand-page-width: min(540px, calc(100% - 32px)); } }
    @media (min-width: 768px) and (max-width: 991.98px) { body.theme-anand-sweets { --anand-page-width: min(720px, calc(100% - 32px)); } }
    @media (min-width: 768px) {
        body.theme-anand-sweets .confirm_order_section_child { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 24px; }
        body.theme-anand-sweets .confirm_order_section_child > [class*="col-"] { width: 100% !important; margin-top: 0; }
        body.theme-anand-sweets .confirm_order_section_child > .mt-4 { grid-column: 1 / -1; margin-top: 0 !important; }
        body.theme-anand-sweets .confirm_order_section_child > .checkout-sidebar { grid-column: 1 / -1; }
    }
    @media (min-width: 992px) {
        body.theme-anand-sweets .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-anand-sweets .contact_us_child { grid-template-columns: minmax(0, 1fr) 360px; gap: 32px; }
        body.theme-anand-sweets .anand-catalog-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 24px; }
        body.theme-anand-sweets .anand-catalog-layout > div { width: 100%; padding-inline: 0; }
        body.theme-anand-sweets .anand-catalog-main__row { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; }
        body.theme-anand-sweets .anand-catalog-main__row > div { width: 100%; max-width: none; padding-inline: 0; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-anand-sweets { --anand-page-width: min(960px, calc(100% - 32px)); }
        body.theme-anand-sweets .navbar .nav-link { font-size: 12px; padding-inline: 5px; }
        body.theme-anand-sweets .navbar-brand { font-size: 18px; }
        body.theme-anand-sweets .navbar .btn { padding-inline: 10px; }
        body.theme-anand-sweets .anand-catalog-layout { grid-template-columns: 180px minmax(0, 1fr); }
        body.theme-anand-sweets .anand-catalog-main__row { grid-template-columns: minmax(0, 1fr) 280px; }
    }
    @media (min-width: 1200px) {
        body.theme-anand-sweets { --anand-page-width: min(1540px, calc(100% - 96px)); }
        body.theme-anand-sweets .confirm_order_section_child { grid-template-columns: minmax(260px, 1fr) minmax(0, 1.65fr) minmax(260px, 1fr); gap: 32px; }
        body.theme-anand-sweets .confirm_order_section_child > .checkout-sidebar { grid-column: auto; }
    }
    @media (max-width: 767.98px) {
        body.theme-anand-sweets .anand-home-hero { height: 480px; }
        body.theme-anand-sweets .anand-pdf-menu-grid { grid-template-columns: 1fr; }
        body.theme-anand-sweets .member_body_child form > .row:has(> label) { grid-template-columns: 100px minmax(0, 1fr); }
        body.theme-anand-sweets .member_body_child label { font-size: 1rem !important; }
        body.theme-anand-sweets > footer .theme-footer-powered-logo { height: 42px; max-width: 150px; }
    }

/* cariabbean */
body.theme-cariabbean {
            --cariabbean-page-width: min(1540px, calc(100% - 96px));
        }
    }

    @media (max-width: 767.98px) {
        body.theme-cariabbean .cariabbean-hero--homepage {
            min-height: auto;
            padding-block: 40px 64px;
        }
    }

/* danny-store */
body.theme-danny-store { --danny-page-width: calc(100% - 32px); }
    body.theme-danny-store .store-status-anchor > nav > .container,
    body.theme-danny-store > footer > .container,
    body.theme-danny-store .danny-main > .container,
    body.theme-danny-store .danny-main > section > .container,
    body.theme-danny-store .danny-main > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-danny-store .ordering_section_child,
    body.theme-danny-store .term_and_conditions_inner,
    body.theme-danny-store .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--danny-page-width) !important;
        max-width: var(--danny-page-width) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }
    body.theme-danny-store .danny-main > .container-fluid,
    body.theme-danny-store .food-menu-area section:has(> .ordering_section_child) { padding-inline: 0; }
    body.theme-danny-store .danny-navbar .navbar-collapse { min-width: 0; }
    body.theme-danny-store .danny-navbar .nav-link { white-space: nowrap; }
    body.theme-danny-store .danny-navbar-brand { flex-shrink: 0; }
    body.theme-danny-store .hero-custom { padding-block: clamp(48px, 5vw, 88px) !important; }
    body.theme-danny-store .hero-custom > .container > .row { margin-inline: 0; row-gap: 24px; }
    body.theme-danny-store .hero-custom .hero-content { padding-left: 0; }
    body.theme-danny-store .hero-custom .hero-content h1 { max-width: 680px; font-size: clamp(28px, 2.8vw, 44px); }
    body.theme-danny-store .hero-custom .hero-content p { max-width: 640px; line-height: 1.8; }
    body.theme-danny-store .danny-hero-image { width: 100%; height: auto; max-height: clamp(360px, 32vw, 580px); object-fit: contain; }
    body.theme-danny-store .danny-main > section > .container > .row { margin-inline: 0; }
    body.theme-danny-store .danny-main > section > .container > .row > [class*="col-"]:first-child { padding-left: 0; }
    body.theme-danny-store .danny-main > section > .container > .row > [class*="col-"]:last-child { padding-right: 0; }
    body.theme-danny-store .danny-main > section > .container > .row .card > .card-img-top { height: auto !important; aspect-ratio: 4 / 3; object-fit: contain !important; }
    body.theme-danny-store .danny-feature-band .container { padding-block: clamp(32px, 3vw, 52px) !important; }
    body.theme-danny-store .danny-gallery-card .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-danny-store .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-danny-store .contact_us_child > [class*="col-"] { min-width: 0; width: 100%; padding-inline: 0 !important; }
    body.theme-danny-store .danny-map-center iframe { display: block; width: 100% !important; height: clamp(320px, 30vw, 500px) !important; }
    body.theme-danny-store .danny-pdf-menu-page .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 24px !important; padding: 0; align-items: start !important; }
    body.theme-danny-store .danny-pdf-menu-page img { width: 100%; height: auto; object-fit: contain; }
    body.theme-danny-store .danny-pdf-menu-page embed { width: 100%; height: clamp(420px, 40vw, 650px); }
    body.theme-danny-store .ordering_section_child { align-items: start; }
    body.theme-danny-store .ordering_section_child > [class*="col-"] { min-width: 0; }
    body.theme-danny-store .ordering_section_child_left_child1_navbar_dish_list > img { width: 100%; height: auto; aspect-ratio: 16 / 7; object-fit: cover; }
    body.theme-danny-store .danny-login-section { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-danny-store .danny-change-password-card { width: 100%; max-width: 600px; padding: clamp(24px, 3vw, 36px) !important; }
    body.theme-danny-store .danny-change-password-card .form-control { min-height: 48px; margin-top: 6px; }
    body.theme-danny-store .danny-change-password-card .form-group + .form-group { margin-top: 8px; }
    body.theme-danny-store .danny-change-password-card .danny-submit-light { min-height: 46px; padding-inline: 24px; }
    body.theme-danny-store .member_body_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
    body.theme-danny-store .member_body_child > [class*="col-"] { min-width: 0; width: 100%; margin: 0 !important; padding: 24px !important; }
    body.theme-danny-store .member_body_child > .member_body_child_right { padding: 0 !important; }
    body.theme-danny-store .member_body_child_right_child1 { padding: 24px !important; }
    body.theme-danny-store .member_body_child form { width: 100%; max-width: 520px; margin-inline: auto; }
    body.theme-danny-store .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; }
    body.theme-danny-store .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-danny-store .member_body_child input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { width: 100% !important; min-width: 0; min-height: 46px; height: auto !important; }
    body.theme-danny-store .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-danny-store .danny-checkout-page > .container > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; align-items: start; }
    body.theme-danny-store .danny-checkout-page > .container > .row > div { width: 100%; min-width: 0; margin: 0 !important; padding-inline: 0 !important; }
    body.theme-danny-store .danny-checkout-page > .container > .row > div:first-child { grid-column: 1 / -1; }
    body.theme-danny-store .danny-checkout-page > .container > .row > div > .row { margin-inline: 0; }
    body.theme-danny-store .checkout-sidebar__stack { margin-inline: 0; }
    body.theme-danny-store .checkout-sidebar__stack > * { width: 100%; min-width: 0; }
    body.theme-danny-store .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    @media (min-width: 992px) {
        body.theme-danny-store .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-danny-store .contact_us_child { grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); }
        body.theme-danny-store .danny-checkout-page > .container > .row { grid-template-columns: minmax(240px, 1fr) minmax(0, 1.6fr) minmax(240px, 1fr); }
    }
    @media (min-width: 1200px) and (max-width: 1399.98px) {
        body.theme-danny-store .danny-navbar .navbar-nav { gap: 10px !important; }
        body.theme-danny-store .danny-navbar .nav-link { font-size: 14px; padding-inline: 5px; }
        body.theme-danny-store .danny-navbar-brand { font-size: 26px; }
        body.theme-danny-store .danny-header-btn { padding-inline: 12px !important; font-size: 13px; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-danny-store .danny-navbar .navbar-nav { gap: 6px !important; }
        body.theme-danny-store .danny-navbar .nav-link { font-size: 12px; padding-inline: 4px; }
        body.theme-danny-store .danny-navbar-brand { font-size: 22px; }
        body.theme-danny-store .danny-header-btn { padding-inline: 10px !important; font-size: 12px; }
    }
    @media (min-width: 1200px) {
        body.theme-danny-store { --danny-page-width: min(1540px, calc(100% - 96px)); }
    }
    @media (max-width: 767.98px) {
        body.theme-danny-store .member_body_child form > .row:has(> label) { grid-template-columns: minmax(0, 1fr); }
        body.theme-danny-store .member_body_child .invalid-feedback { grid-column: 1; }
        body.theme-danny-store .hero-custom .hero-content :is(h1, p) { margin-inline: auto; }
        body.theme-danny-store .hero-custom > .container > .row > div { padding-inline: 0; }
        body.theme-danny-store .danny-navbar-brand { font-size: clamp(20px, 5.5vw, 28px); }
    }

/* chennai-dosa */
/* Expand page rails while keeping nested forms and sidebar panels contained. */
@media (min-width: 1200px) {
  body.theme-chennai-dosa {
    --cd-page-width: min(1540px, calc(100vw - 96px));
  }

  body.theme-chennai-dosa .store-status-anchor .navbar > .container,
  body.theme-chennai-dosa .site-footer > .container,
  body.theme-chennai-dosa .hero > .container,
  body.theme-chennai-dosa .our-story > .container,
  body.theme-chennai-dosa .categories-section > .container,
  body.theme-chennai-dosa .best-sellers > .container,
  body.theme-chennai-dosa .reviews-section > .container,
  body.theme-chennai-dosa .cta-section > .container,
  body.theme-chennai-dosa .cd-menu-page > .container,
  body.theme-chennai-dosa .cd-contact-page,
  body.theme-chennai-dosa .confirm_order_section > .container,
  body.theme-chennai-dosa .gallery-section > .container,
  body.theme-chennai-dosa .term_and_conditions_inner,
  body.theme-chennai-dosa .order-history-page,
  body.theme-chennai-dosa .gift-voucher-page > .gift-voucher-shell:not(.gift-voucher-shell--narrow),
  body.theme-chennai-dosa .bookatable-section > .container {
    width: var(--cd-page-width) !important;
    max-width: var(--cd-page-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.theme-chennai-dosa .hero {
    min-height: 640px;
    padding-top: 80px;
    padding-bottom: 80px;
  }

  /* The menu uses a bounded category list and cart instead of stretching them. */
  body.theme-chennai-dosa .cd-menu-page > .container > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(340px, 28vw, 420px);
    gap: 24px;
    margin: 0;
  }

  body.theme-chennai-dosa .cd-menu-page > .container > .row > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 0;
  }

  body.theme-chennai-dosa .cd-menu-header {
    min-height: 80px;
  }

  body.theme-chennai-dosa .cd-category-list {
    flex: 0 0 220px;
    max-width: 220px;
  }

  body.theme-chennai-dosa .cd-items-area {
    flex: 0 0 calc(100% - 220px);
    max-width: calc(100% - 220px);
    min-width: 0;
    padding: 24px;
  }

  body.theme-chennai-dosa .cd-category-list a {
    min-height: 48px;
    padding-top: 12px;
    padding-bottom: 12px;
    line-height: 1.4;
    white-space: normal;
  }

  body.theme-chennai-dosa .cd-menu-item {
    min-height: 180px;
    padding: 24px 16px;
  }

  body.theme-chennai-dosa .cd-menu-item ul {
    max-width: 44ch;
    font-size: 14px;
    line-height: 1.7;
  }

  body.theme-chennai-dosa .cd-menu-item > .flex-shrink-0 {
    max-width: 45%;
  }

  body.theme-chennai-dosa .cd-menu-item .product-item-wrap form {
    flex-direction: column;
    align-items: flex-end !important;
    gap: 10px !important;
  }

  body.theme-chennai-dosa .cd-menu-item .product-variation-select {
    width: 100%;
    margin-top: 0 !important;
    min-height: 40px;
  }

  /* A wider map grows vertically; information cards stay comfortably sized. */
  body.theme-chennai-dosa .cd-contact-page > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 440px;
    gap: 24px;
    margin: 0;
  }

  body.theme-chennai-dosa .cd-contact-page > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 0;
  }

  body.theme-chennai-dosa .cd-contact-page .card-body iframe {
    display: block;
    width: 100% !important;
    height: clamp(480px, 32vw, 560px) !important;
  }

  body.theme-chennai-dosa .cd-contact-page .card-body {
    line-height: 1.75;
    overflow-wrap: anywhere;
  }

  body.theme-chennai-dosa .gallery-card img {
    height: clamp(280px, 20vw, 360px);
    object-fit: cover;
  }

  /* Keep checkout's contact/payment area larger than either sidebar. */
  body.theme-chennai-dosa .confirm_order_section > .container {
    display: grid;
    grid-template-columns: minmax(270px, 1fr) minmax(0, 1.7fr) minmax(280px, 1fr);
    gap: 24px;
    align-items: start;
  }

  body.theme-chennai-dosa .confirm_order_section > .container > :first-child {
    grid-column: 1 / -1;
  }

  body.theme-chennai-dosa .confirm_order_section > .container > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.theme-chennai-dosa .confirm_order_section > .container > [class*="col-"] > .row,
  body.theme-chennai-dosa .confirm_order_section .checkout-sidebar__stack {
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-chennai-dosa .confirm_order_section .checkout-contact-section .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  body.theme-chennai-dosa .confirm_order_section .checkout-input {
    min-height: 50px;
  }

  body.theme-chennai-dosa .confirm_order_section .full-cart-shell td {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  body.theme-chennai-dosa .confirm_order_section .loyalty-points__panel {
    min-height: 420px;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }

  body.theme-chennai-dosa .order-history-loyalty-card > .card-body {
    min-height: 240px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
  }

  body.theme-chennai-dosa .order-history-loyalty-card > .card-body > h4,
  body.theme-chennai-dosa .order-history-loyalty-card > .card-body > p {
    margin: 0 !important;
  }

  body.theme-chennai-dosa .order-history-table th,
  body.theme-chennai-dosa .order-history-table td {
    padding: 16px !important;
  }

  body.theme-chennai-dosa .term-sidebar p,
  body.theme-chennai-dosa #terms-text p,
  body.theme-chennai-dosa #terms-text li {
    line-height: 1.85;
  }

  body.theme-chennai-dosa .term_and_conditions_section_title_box_right_content {
    padding: 28px;
  }

  body.theme-chennai-dosa #terms-text {
    max-width: 74ch;
    margin-left: auto;
    margin-right: auto;
  }

  /* Forms stay centered and readable instead of spanning the full page. */
  body.theme-chennai-dosa .auth-login-section > .member_body_child {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-chennai-dosa .auth-login-section .member_body_child_right_child1 {
    min-height: 480px;
    height: 100%;
    width: 100%;
    padding: 40px 32px !important;
  }

  body.theme-chennai-dosa .auth-login-section .member_body_child_right {
    display: flex;
  }

  body.theme-chennai-dosa .auth-login-section .member_body_child_left {
    padding: 32px !important;
  }

  body.theme-chennai-dosa .auth-login-section form > .row:has(> label) {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding-left: 0;
    padding-right: 0;
  }

  body.theme-chennai-dosa .auth-login-section form > .row > label {
    width: 100%;
    padding: 0;
  }

  body.theme-chennai-dosa .auth-login-section form input:not([type="checkbox"]):not([type="submit"]) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 50px;
  }

  body.theme-chennai-dosa .auth-login-section .member_body_child_right_child1 form {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  body.theme-chennai-dosa .auth-login-section .member_body_child_right_child1 form > .row {
    margin-top: 0 !important;
  }

  body.theme-chennai-dosa .profile-page .about_section_child_2 {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-chennai-dosa .profile-page .margin-section {
    width: 100%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
  }

  body.theme-chennai-dosa .profile-page .margin-section > .row {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 32px;
    margin: 0;
  }

  body.theme-chennai-dosa .profile-page .margin-section > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    padding: 0;
  }

  body.theme-chennai-dosa .profile-page .profile-form-card {
    max-width: none !important;
  }

  body.theme-chennai-dosa .pdf-menu-shell {
    width: min(1400px, calc(100vw - 96px)) !important;
    max-width: 1400px !important;
  }
}

@media (min-width: 768px) {
  body.theme-chennai-dosa .gift-voucher-page > .gift-voucher-shell--narrow {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

body.theme-chennai-dosa .gift-voucher-page--create .gift-voucher-form {
  margin-left: auto;
  margin-right: auto;
}

body.theme-chennai-dosa .site-footer .theme-footer-powered-logo {
  width: auto;
  height: 46px;
  max-width: 160px;
  object-fit: contain;
}

body.theme-chennai-dosa .auth-section .auth-card--narrow {
  width: min(560px, 100%);
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}
body.theme-chennai-dosa .cart-component-shell .cart-component__remove {
  align-self: center !important;
  margin-top: 0 !important;
  transform: none;
  flex-shrink: 0;
}

body.theme-chennai-dosa .cart-component-shell .cart-component__variation,
body.theme-chennai-dosa .cart-component-shell .cart-component__variation * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.theme-chennai-dosa .gift-voucher-page--create .gift-voucher-panel {
  background: #80559d;
  color: #fff;
  padding: clamp(20px, 3vw, 36px);
  border-radius: 16px;
}

body.theme-chennai-dosa .gift-voucher-page--create .gift-voucher-panel :is(.gift-voucher-title, .gift-voucher-kicker, .gift-voucher-subtitle, .form-label, .form-check-label, .text-muted),
body.theme-chennai-dosa .gift-voucher-page--create .gift-voucher-panel .form-check-label a {
  color: #fff !important;
}

body.theme-chennai-dosa .gift-voucher-page--create .gift-voucher-inline-card {
  background: transparent;
}

body.theme-chennai-dosa .gift-voucher-page--create #create-voucher-btn {
  background: #fff !important;
  border-color: #fff !important;
  color: #80559d !important;
}
body.theme-chennai-dosa .gift-voucher-page--index {
  width: 100%;
  max-width: none;
}

body.theme-chennai-dosa .gift-voucher-page--index > .gift-voucher-shell {
  width: min(1540px, calc(100% - 32px));
  max-width: 1540px;
  margin-inline: auto;
  min-width: 0;
}

body.theme-chennai-dosa .gift-voucher-page--index .gift-voucher-panel,
body.theme-chennai-dosa .gift-voucher-page--index .gift-voucher-table-wrap {
  min-width: 0;
  max-width: 100%;
}
/* Mobile menu width, product layout, and category drawer. */
@media (max-width: 767.98px) {
  body.theme-chennai-dosa .cd-menu-page {
    padding: 20px 0 24px;
  }

  body.theme-chennai-dosa .cd-menu-page > .container {
    width: 100% !important;
    max-width: none !important;
    padding: 0 8px !important;
  }

  body.theme-chennai-dosa .cd-menu-page > .container > .row {
    margin: 0 !important;
    row-gap: 12px;
  }

  body.theme-chennai-dosa .cd-menu-page > .container > .row > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    padding: 0;
  }

  body.theme-chennai-dosa .cd-menu-box {
    width: 100%;
    max-width: none;
    border-radius: 12px;
  }

  body.theme-chennai-dosa .cd-mobile-category-action {
    display: flex;
    justify-content: center;
    margin: 0 auto 10px;
  }

  body.theme-chennai-dosa .cd-mobile-category-action button {
    min-height: 40px;
    padding: 9px 16px;
    border: 0;
    border-radius: 6px;
    background: #84569e;
    color: #fff;
    font-weight: 700;
  }

  body.theme-chennai-dosa #menu_toggle.cd-category-list {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1200 !important;
    width: min(300px, 86vw) !important;
    max-width: 86vw !important;
    height: 100dvh !important;
    overflow: auto !important;
    transform: translateX(-105%);
    transition: transform .25s ease;
    box-shadow: 4px 0 20px rgba(30, 15, 40, .25);
  }

  body.theme-chennai-dosa #menu_toggle.cd-category-list:not(.d-none) {
    display: block !important;
    transform: translateX(0);
  }

  body.theme-chennai-dosa .cd-menu-header {
    padding: 12px;
    border-bottom-width: 6px;
  }

  body.theme-chennai-dosa .cd-menu-header [data-cd-menu-toggle] {
    display: none !important;
  }

  body.theme-chennai-dosa .cd-menu-header > :first-child,
  body.theme-chennai-dosa .cd-menu-header > :nth-child(2) {
    flex: 1 1 100%;
    width: 100%;
    min-width: 0;
  }

  body.theme-chennai-dosa .cd-menu-header .cd-search-input {
    flex: 1 1 0;
    width: 0;
    max-width: none;
    min-width: 0;
  }

  body.theme-chennai-dosa .cd-items-area {
    width: 100%;
    max-width: 100%;
    padding: 12px 8px;
  }

  body.theme-chennai-dosa .cd-menu-item {
    width: 100%;
    gap: 10px !important;
    padding: 12px;
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr);
    align-items: start !important;
  }

  body.theme-chennai-dosa .cd-menu-item--with-image .cd-menu-thumb {
    grid-column: 1;
    grid-row: 1;
    width: 56px;
    height: 56px;
  }

  body.theme-chennai-dosa .cd-menu-copy {
    grid-column: 2;
    min-width: 0;
    overflow-wrap: anywhere;
  }

  body.theme-chennai-dosa .cd-menu-item--without-image .cd-menu-copy {
    grid-column: 1 / -1;
  }

  body.theme-chennai-dosa .cd-menu-actions {
    grid-column: 1 / -1;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  body.theme-chennai-dosa .cd-menu-copy .small {
    overflow-wrap: anywhere;
  }

  body.theme-chennai-dosa .cd-menu-actions .product-item-wrap {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }

  body.theme-chennai-dosa .cd-menu-actions > i.fa-heart {
    flex: 0 0 auto;
  }

  body.theme-chennai-dosa .cd-menu-actions .product-item-wrap > form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100%;
    gap: 8px !important;
  }

  body.theme-chennai-dosa .cd-menu-actions .product-variation-select {
    grid-column: 1 / -1;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    margin-top: 0 !important;
  }

  body.theme-chennai-dosa .cd-menu-actions .input-group {
    grid-column: 1 / -1;
    width: 100% !important;
    justify-content: flex-end;
  }

  body.theme-chennai-dosa .cd-menu-actions .product-qty-input {
    width: 64px;
    flex: 0 0 64px;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  body.theme-chennai-dosa .cd-mobile-category-action {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
  }

  body.theme-chennai-dosa .cd-mobile-category-action button {
    min-height: 40px;
    padding: 9px 16px;
    border: 0;
    border-radius: 6px;
    background: #84569e;
    color: #fff;
    font-weight: 700;
  }

  body.theme-chennai-dosa #menu_toggle.cd-category-list {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1200 !important;
    width: min(300px, 86vw) !important;
    max-width: 86vw !important;
    height: 100vh !important;
    overflow-y: auto !important;
  }

  body.theme-chennai-dosa #menu_toggle.cd-category-list:not(.d-none) {
    display: block !important;
  }
}

/* Match mobile header link spacing to the other refreshed themes. */
@media (max-width: 991.98px) {
  body.theme-chennai-dosa .navbar .navbar-collapse.show {
    height: auto !important;
    min-height: 0 !important;
    flex-basis: 100% !important;
  }

  body.theme-chennai-dosa .navbar .navbar-nav {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 12px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.theme-chennai-dosa .navbar .navbar-nav > .nav-item {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.theme-chennai-dosa .navbar .navbar-nav > .nav-item > .nav-link {
    display: block;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.2 !important;
  }

  body.theme-chennai-dosa .navbar .navbar-nav > .nav-item > .dropdown-menu:not(.show) {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* grand */
@media (min-width: 1200px) {
  body.theme-grand {
    --grand-page-width: min(1540px, calc(100vw - 96px));
  }

  body.theme-grand .store-status-anchor .navbar > .container,
  body.theme-grand .grand-footer > .container,
  body.theme-grand .grand-home-page section > .container,
  body.theme-grand .grand-home-page > .container,
  body.theme-grand .grand-menu-page > .container,
  body.theme-grand .grand-menu-page .category-shell,
  body.theme-grand .grand-contact-page,
  body.theme-grand .grand-checkout-page > .container,
  body.theme-grand .grand-gallery-page > .container,
  body.theme-grand .term_and_conditions_inner,
  body.theme-grand .order-history-page,
  body.theme-grand .gift-voucher-page > .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
    width: var(--grand-page-width) !important;
    max-width: var(--grand-page-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-grand .grand-menu-page > .container,
  body.theme-grand .grand-contact-page,
  body.theme-grand .grand-gallery-page > .container,
  body.theme-grand .term_and_conditions_inner,
  body.theme-grand .order-history-page {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.theme-grand .big-hero {
    min-height: 640px;
    padding-top: 80px;
    padding-bottom: 80px;
  }

  body.theme-grand .store-status-anchor .navbar > .container {
    position: relative;
  }

  body.theme-grand .store-status-anchor .navbar-collapse:has(.food-hygiene-badge) {
    padding-right: 170px;
  }

  body.theme-grand .store-status-anchor .grand-header-badge-item {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0 !important;
  }

  body.theme-grand .grand-footer > .container {
    padding-left: 0;
    padding-right: 0;
  }

  body.theme-grand .grand-footer > .container > .row {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .7fr) minmax(0, .7fr) minmax(0, 1.35fr);
    gap: 32px;
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-grand .grand-footer > .container > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
    text-align: left;
  }

  body.theme-grand .grand-footer > .container > .row .d-flex.align-items-start {
    justify-content: flex-start;
  }

  body.theme-grand .grand-footer .theme-footer-row {
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-grand .grand-footer .theme-footer-row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
  }

  body.theme-grand .grand-footer .theme-footer-copy-wrap,
  body.theme-grand .grand-footer .theme-footer-copy {
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
  }

  body.theme-grand .grand-footer .theme-footer-powered {
    align-items: flex-end;
    text-align: right;
  }

  /* Desktop product grid with a contained cart column. */
  body.theme-grand .grand-menu-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 24px;
    margin: 0;
  }

  body.theme-grand .grand-menu-layout > .grand-menu-products,
  body.theme-grand .grand-menu-layout > .cart-sidebar {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
  }

  body.theme-grand .grand-menu-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
  }

  body.theme-grand .grand-menu-grid > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
  }

  body.theme-grand .grand-menu-grid .menu-box {
    width: 100%;
    height: 100%;
    min-height: 420px;
    padding: 24px;
  }

  body.theme-grand .grand-menu-grid .menu-img,
  body.theme-grand .grand-menu-grid .menu-img img {
    width: 100%;
    height: 240px;
    object-fit: contain;
  }

  body.theme-grand .grand-menu-page .category-link {
    min-height: 48px;
    line-height: 1.4;
    display: flex;
    align-items: center;
  }

  /* Contact panels retain comfortable proportions. */
  body.theme-grand .grand-contact-page > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 440px;
    gap: 24px;
    margin: 0;
  }

  body.theme-grand .grand-contact-page > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    padding: 0;
  }

  body.theme-grand .grand-contact-page .contact-card {
    padding: 26px;
    line-height: 1.75;
    overflow-wrap: anywhere;
  }

  body.theme-grand .grand-contact-page .contact-card > iframe {
    display: block;
    width: 100% !important;
    height: clamp(480px, 32vw, 560px) !important;
  }

  /* Checkout columns expand independently of nested forms. */
  body.theme-grand .grand-checkout-page > .container > .row {
    display: grid;
    grid-template-columns: minmax(270px, 1fr) minmax(0, 1.7fr) minmax(280px, 1fr);
    gap: 24px;
    margin: 0;
    align-items: start;
  }

  body.theme-grand .grand-checkout-page > .container > .row > :first-child {
    grid-column: 1 / -1;
  }

  body.theme-grand .grand-checkout-page > .container > .row > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 0;
  }

  body.theme-grand .grand-checkout-page .checkout-contact-section .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  body.theme-grand .grand-checkout-page .checkout-input {
    min-height: 50px;
  }

  body.theme-grand .grand-checkout-page .full-cart-shell td {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  body.theme-grand .grand-checkout-page .loyalty-points__panel {
    min-height: 420px;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }

  body.theme-grand .order-history-loyalty-card > .card-body {
    min-height: 240px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
  }

  body.theme-grand .order-history-loyalty-card > .card-body > h4,
  body.theme-grand .order-history-loyalty-card > .card-body > p {
    margin: 0 !important;
  }

  body.theme-grand .order-history-table th,
  body.theme-grand .order-history-table td {
    padding: 16px !important;
  }

  body.theme-grand .term-sidebar p,
  body.theme-grand #terms-text p,
  body.theme-grand #terms-text li {
    line-height: 1.85;
  }

  body.theme-grand .term_and_conditions_section_title_box_right_content {
    padding: 28px;
  }

  body.theme-grand #terms-text {
    max-width: 74ch;
    margin-left: auto;
    margin-right: auto;
  }

  body.theme-grand .grand-login-page .member_body_child {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-grand .grand-login-page .member_body_child_right_child1 {
    min-height: 480px;
    padding: 40px 32px !important;
  }

  body.theme-grand .grand-login-page form > .row:has(> label) {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding-left: 0;
    padding-right: 0;
  }

  body.theme-grand .grand-login-page form > .row > label {
    width: 100%;
    padding: 0;
  }

  body.theme-grand .grand-login-page form input:not([type="checkbox"]):not([type="submit"]) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 50px;
  }

  body.theme-grand .grand-login-page .member_body_child_right_child1 form {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  body.theme-grand .grand-login-page .member_body_child_right_child1 form > .row {
    margin-top: 0 !important;
  }

  body.theme-grand .profile-page .about_section_child_2 {
    width: min(1280px, calc(100vw - 96px)) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-grand .profile-page .margin-section {
    width: 100%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
  }

  body.theme-grand .profile-page .margin-section > .row {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 32px;
    margin: 0;
  }

  body.theme-grand .profile-page .margin-section > .row > [class*="col-"] {
    width: 100%;
    min-width: 0;
    padding: 0;
  }

  body.theme-grand .profile-page .profile-form-card {
    max-width: none !important;
  }

  body.theme-grand .grand-gallery-card img {
    height: clamp(280px, 20vw, 360px);
    object-fit: cover;
  }

  body.theme-grand .grand-pdf-menu-page > .container {
    width: min(1400px, calc(100vw - 96px)) !important;
    max-width: 1400px !important;
  }

  body.theme-grand .grand-pdf-menu-page > .container > .d-flex {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px !important;
  }

  body.theme-grand .grand-pdf-menu-page img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }
}

@media (min-width: 1600px) {
  body.theme-grand .grand-menu-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 768px) {
  body.theme-grand .gift-voucher-page > .gift-voucher-shell--narrow {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

body.theme-grand .grand-change-password-shell .about_section_child_2,
body.theme-grand .grand-change-password-shell .order-history-page,
body.theme-grand .grand-change-password-shell .order-history-page > .container {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.theme-grand .grand-change-password-form {
  width: min(560px, calc(100% - 32px));
  max-width: 560px;
  min-height: 420px;
  padding: 36px !important;
}

body.theme-grand .grand-change-password-form h2 {
  margin-bottom: 24px;
  line-height: 1.25;
}

body.theme-grand .grand-change-password-form .form-control {
  min-height: 52px;
  margin-top: 8px;
}

body.theme-grand .grand-change-password-form .grand-change-password-button {
  min-height: 48px;
  padding: 12px 24px;
  margin-top: 28px !important;
}

@media (max-width: 575.98px) {
  body.theme-grand .grand-change-password-form {
    padding: 28px 24px !important;
  }
}

body.theme-grand .gift-voucher-page--create .gift-voucher-form {
  margin-left: auto;
  margin-right: auto;
}

body.theme-grand .grand-footer .theme-footer-powered-logo {
  width: auto;
  height: 46px;
  max-width: 160px;
  object-fit: contain;
}

/* fusion */
body.theme-fusion { --fusion-page-width: calc(100% - 32px); }
    body.theme-fusion .store-status-anchor > nav > .container,
    body.theme-fusion > footer > .container,
    body.theme-fusion .fusion-page-content > .container,
    body.theme-fusion .fusion-page-content > section > .container,
    body.theme-fusion .fusion-page-content > div > .container:not(.gift-voucher-shell--narrow),
    body.theme-fusion .ordering_section_child,
    body.theme-fusion .term_and_conditions_inner,
    body.theme-fusion .gift-voucher-shell:not(.gift-voucher-shell--narrow) {
        width: var(--fusion-page-width) !important;
        max-width: var(--fusion-page-width) !important;
        padding-inline: 0 !important;
        margin-inline: auto !important;
    }
    body.theme-fusion .fusion-page-content > .container-fluid { padding-inline: 0; }
    body.theme-fusion section.container-fluid:has(> .ordering_section_child) { padding-inline: 0; }
    body.theme-fusion .navbar-brand img { height: 76px; width: auto; max-width: 160px; object-fit: contain; }
    body.theme-fusion .store-status-anchor > .navbar { padding-inline: 0; }
    body.theme-fusion .navbar-collapse { min-width: 0; }
    body.theme-fusion .navbar-nav .nav-link { margin-inline: 0; white-space: nowrap; }
    body.theme-fusion .navbar-buttons { flex-shrink: 0; }
    body.theme-fusion > footer .theme-footer-powered-logo { height: 52px; max-width: 180px; width: auto; object-fit: contain; }
    body.theme-fusion .hero-section { margin-inline: 0; padding: clamp(24px, 3vw, 48px); min-height: clamp(460px, 38vw, 620px); }
    body.theme-fusion .hero-image img { width: 100%; height: clamp(320px, 29vw, 460px); object-fit: contain; }
    body.theme-fusion .hero-section h1 { font-size: clamp(30px, 3vw, 48px); }
    body.theme-fusion .hero-section p { line-height: 1.75; }
    body.theme-fusion .hero-section form { max-width: 520px; }
    body.theme-fusion .hero-section form input { min-width: 0; }
    body.theme-fusion .fusion-migrated-style-002 { min-height: 280px; height: 100%; }
    body.theme-fusion .fusion-migrated-style-002 > .ms-3 { flex: 0 0 38%; }
    body.theme-fusion .fusion-migrated-style-002 img { width: 100%; height: 220px; object-fit: contain; }
    body.theme-fusion .fusion-migrated-style-007 img { width: 100%; height: clamp(340px, 30vw, 480px); object-fit: cover; }
    body.theme-fusion .fusion-page-content > section > .container > .row.g-5,
    body.theme-fusion .best-sells-section > .row,
    body.theme-fusion .best-sells-section > .row > div > .row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin-inline: 0; }
    body.theme-fusion .fusion-page-content > section > .container > .row.g-5 > div,
    body.theme-fusion .best-sells-section > .row > div,
    body.theme-fusion .best-sells-section > .row > div > .row > div { min-width: 0; width: 100%; padding-inline: 0; margin-top: 0; }
    body.theme-fusion .best-sells-section .food-img { width: 100%; min-width: 0; min-height: 280px; aspect-ratio: 4 / 5; }
    body.theme-fusion .about_section_child_2 > .d-flex { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start !important; gap: 24px !important; }
    body.theme-fusion .about_section_child_2 > .d-flex > div { min-width: 0; }
    body.theme-fusion .about_section_child_2 img { width: 100%; height: auto; }
    body.theme-fusion .about_section_child_2 embed { height: clamp(420px, 40vw, 650px); }
    body.theme-fusion .fusion-migrated-style-026 { min-height: 0; padding-block: 48px; background: #fff; }
    body.theme-fusion .fusion-page-content .card-img-top { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
    body.theme-fusion .contact_us_child { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; padding-block: 48px; }
    body.theme-fusion .fusion-contact-title { grid-column: 1 / -1; padding: 0; margin: 0; }
    body.theme-fusion .contact_us_child > [class*="col-"] { min-width: 0; width: 100%; padding: 0 !important; margin: 0 !important; }
    body.theme-fusion .contact_us_child_left > .row,
    body.theme-fusion .contact_us_child_right_child { margin: 0 !important; width: 100%; }
    body.theme-fusion .contact_us_child_right { overflow-wrap: anywhere; }
    body.theme-fusion .contact_us_child .map-container { height: auto; }
    body.theme-fusion .contact_us_child iframe { display: block; width: 100% !important; height: clamp(360px, 34vw, 560px) !important; }
    body.theme-fusion .contact_us_child .card-body > div { margin-top: 0 !important; }
    body.theme-fusion .fusion-migrated-style-013 { margin-top: 0; min-height: 0; padding-block: 48px; }
    body.theme-fusion .member_body_child { display: grid; grid-template-columns: 1fr; align-items: start; gap: 24px; }
    body.theme-fusion .member_body_child > [class*="col-"] { min-width: 0; width: 100%; padding: 24px !important; margin: 0 !important; }
    body.theme-fusion .member_body_child_right_child1 { margin: 0 !important; padding: 0 !important; }
    body.theme-fusion .member_body_child form { max-width: 460px; width: 100%; margin-inline: auto; }
    body.theme-fusion .member_body_child form > .row:has(> label) { display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 12px; padding-inline: 0; margin-top: 16px !important; }
    body.theme-fusion .member_body_child form > .row:has(> label) > label { width: 100%; padding: 0; text-align: left !important; }
    body.theme-fusion .member_body_child input:not([type="checkbox"]):not([type="radio"]) { width: 100% !important; min-width: 0; height: auto !important; min-height: 46px; }
    body.theme-fusion .member_body_child .invalid-feedback { grid-column: 2; }
    body.theme-fusion .fusion-migrated-style-019 > form { max-width: 760px; margin-inline: auto; padding-block: 32px; }
    body.theme-fusion form.fusion-migrated-style-011 { width: 100%; max-width: 560px; padding: clamp(24px, 3vw, 36px) !important; }
    body.theme-fusion form.fusion-migrated-style-011 h2 { font-size: clamp(28px, 3vw, 36px); margin-bottom: 24px; }
    body.theme-fusion form.fusion-migrated-style-011 label { margin-bottom: 8px; }
    body.theme-fusion form.fusion-migrated-style-011 .form-control { min-height: 50px; }
    body.theme-fusion form.fusion-migrated-style-011 .btn { min-height: 48px; padding-inline: 24px; margin-top: 24px !important; }
    body.theme-fusion .profile-page { padding-inline: 0 !important; }
    body.theme-fusion .profile-page .about_section_child_2 > .container { width: 100%; max-width: none; padding-inline: 0; }
    body.theme-fusion .gift-voucher-page { width: 100%; max-width: none !important; padding-inline: 0; }
    body.theme-fusion .gift-voucher-page .gift-voucher-shell--narrow { width: min(720px, var(--fusion-page-width)) !important; max-width: min(720px, var(--fusion-page-width)) !important; margin-inline: auto !important; }
    body.theme-fusion .ordering_section_child { align-items: start; }
    body.theme-fusion .dish_card > [class*="col-"] { min-width: 0; }
    body.theme-fusion .fusion-migrated-style-062,
    body.theme-fusion .fusion-migrated-style-062 > div { max-width: 100%; min-width: 0; }
    body.theme-fusion .fusion-migrated-style-063 { min-width: 0; max-width: 100%; }
    body.theme-fusion .ordering_section_child_right_child > * { margin-inline: 0 !important; max-width: 100%; min-width: 0; }
    body.theme-fusion .ordering_section_child_right_child img { height: auto !important; max-height: 440px; object-fit: cover; }
    body.theme-fusion .fusion-checkout-grid { margin-inline: 0; }
    body.theme-fusion .fusion-checkout-grid > [class*="col-"] { min-width: 0; padding-inline: 0 !important; }
    body.theme-fusion .fusion-checkout-grid > [class*="col-"] > .row { margin-inline: 0; }
    body.theme-fusion .checkout-sidebar__stack { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 0 !important; }
    body.theme-fusion .checkout-sidebar__stack > * { width: 100%; min-width: 0; margin: 0 !important; }
    body.theme-fusion :is(.checkout-sidebar__card, .checkout-loyalty-card) { padding: 24px !important; }
    body.theme-fusion .checkout-sidebar__security-row { margin-inline: 0; margin-top: 24px; }
    @media (min-width: 576px) and (max-width: 767.98px) {
        body.theme-fusion { --fusion-page-width: min(540px, calc(100% - 32px)); }
    }
    @media (min-width: 768px) and (max-width: 991.98px) {
        body.theme-fusion { --fusion-page-width: min(720px, calc(100% - 32px)); }
    }
    @media (min-width: 768px) {
        body.theme-fusion .fusion-page-content > section > .container > .row.g-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-fusion .best-sells-section > .row > div > .row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        body.theme-fusion .fusion-checkout-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); align-items: start; gap: 24px; }
        body.theme-fusion .fusion-checkout-grid > [class*="col-"] { width: 100%; margin-top: 0; }
        body.theme-fusion .fusion-checkout-grid > .col-12:first-child { grid-column: 1 / -1; }
        body.theme-fusion .fusion-checkout-grid > .checkout-sidebar { grid-column: 1 / -1; }
    }
    @media (min-width: 992px) {
        body.theme-fusion .best-sells-section > .row { grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); }
        body.theme-fusion .contact_us_child { grid-template-columns: minmax(0, 1fr) 360px; gap: 32px; }
        body.theme-fusion .member_body_child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body.theme-fusion .ordering_section_child { display: grid; grid-template-columns: minmax(0, 1fr) clamp(320px, 26vw, 400px); gap: 24px; }
        body.theme-fusion .ordering_section_child > [class*="col-"] { width: 100%; min-width: 0; padding: 0; }
        body.theme-fusion .ordering_section_child_left_child1 { display: grid; grid-template-columns: 180px minmax(0, 1fr); margin-inline: 0; }
        body.theme-fusion .ordering_section_child_left_child1 > [class*="col-"] { width: 100%; min-width: 0; }
        body.theme-fusion :is(.ordering_section_child_left_child1_title, .ordering_section_child_left_child1_search_bar) { grid-column: 1 / -1; }
        body.theme-fusion .ordering_section_child_left_child1_search_bar { width: 100%; min-height: 76px; padding-block: 12px; }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        body.theme-fusion { --fusion-page-width: min(960px, calc(100% - 32px)); }
        body.theme-fusion .navbar-nav { gap: 4px; }
        body.theme-fusion .navbar-nav .nav-link { font-size: 12px; letter-spacing: 0; }
        body.theme-fusion .navbar-brand img { max-width: 110px; }
        body.theme-fusion .navbar-buttons { gap: 6px; }
        body.theme-fusion .navbar-buttons .btn { padding-inline: 10px; }
        body.theme-fusion .ordering_section_child_left_child1 { grid-template-columns: 150px minmax(0, 1fr); }
        body.theme-fusion .dish_card > [class*="col-"] { width: 100%; }
    }
    @media (min-width: 1200px) {
        body.theme-fusion { --fusion-page-width: min(1540px, calc(100% - 96px)); }
        body.theme-fusion .fusion-checkout-grid { grid-template-columns: minmax(260px, 1fr) minmax(0, 1.65fr) minmax(260px, 1fr); gap: 32px; }
        body.theme-fusion .fusion-checkout-grid > .checkout-sidebar { grid-column: auto; }
    }
    @media (max-width: 767.98px) {
        body.theme-fusion > footer .theme-footer-powered-logo { height: 42px; max-width: 150px; }
        body.theme-fusion .about_section_child_2 > .d-flex { grid-template-columns: 1fr; }
        body.theme-fusion .member_body_child form > .row:has(> label) { grid-template-columns: 100px minmax(0, 1fr); }
        body.theme-fusion .member_body_child label { font-size: 1rem !important; }
        body.theme-fusion .hero-section { padding: 24px 12px; }
        body.theme-fusion .hero-image img { height: 320px; }
        body.theme-fusion .subscribe-btn { padding-inline: 16px; }
    }

/* grand mobile refinements */
/* Grand theme: wider mobile content and consistent mobile navigation spacing. */
@media (max-width: 767.98px) {
  body.theme-grand .store-status-anchor .navbar > .container,
  body.theme-grand .grand-footer > .container,
  body.theme-grand .grand-home-page section > .container,
  body.theme-grand .grand-home-page > .container,
  body.theme-grand .grand-menu-page > .container,
  body.theme-grand .grand-menu-page .category-shell,
  body.theme-grand .grand-contact-page,
  body.theme-grand .grand-checkout-page > .container,
  body.theme-grand .grand-gallery-page > .container,
  body.theme-grand .term_and_conditions_inner,
  body.theme-grand .order-history-page {
    box-sizing: border-box;
    width: calc(100% - 12px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.theme-grand .grand-menu-page > .container,
  body.theme-grand .grand-contact-page,
  body.theme-grand .grand-gallery-page > .container,
  body.theme-grand .term_and_conditions_inner,
  body.theme-grand .order-history-page {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  body.theme-grand .grand-menu-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-grand .grand-menu-layout > .grand-menu-products,
  body.theme-grand .grand-menu-layout > .cart-sidebar {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-left: 4px;
    padding-right: 4px;
  }

  body.theme-grand .grand-menu-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin-left: 0;
    margin-right: 0;
  }

  body.theme-grand .grand-menu-grid > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-left: 4px;
    padding-right: 4px;
  }

  body.theme-grand .grand-menu-grid .menu-box {
    min-height: 0;
    padding: 14px;
  }
}

@media (max-width: 991.98px) {
  body.theme-grand .store-status-anchor .navbar-collapse.show {
    height: auto !important;
    max-height: calc(100dvh - 80px);
    overflow-y: auto;
  }

  body.theme-grand .store-status-anchor .navbar-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100%;
    margin: 0 !important;
    padding: 12px 0 !important;
  }

  body.theme-grand .store-status-anchor .navbar-nav > .nav-item {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.theme-grand .store-status-anchor .navbar-nav > .nav-item > .nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 12px !important;
    line-height: 1.25 !important;
  }

  body.theme-grand .store-status-anchor .navbar-nav .grand-header-toggle {
    justify-content: center;
    margin: 0 !important;
    padding: 4px 12px !important;
    line-height: 1.25 !important;
  }

  body.theme-grand .store-status-anchor .grand-header-badge-item {
    margin: 2px 0 0 !important;
    text-align: center;
  }
}
