/* MaxKiwi 1.03 — desktop density. No content is truncated or collapsed.
 * Keep native WooCommerce markup, forms, gallery and payment-provider controls.
 * Below 1024px all existing tablet/mobile rules continue to apply.
 */
@media (min-width:1024px) {
  .mk-header-main { height:76px;gap:28px; }
  .mk-header-main .mk-brand { height:60px; }
  .mk-header-main .mk-brand img { max-height:52px; }
  .mk-category-bar nav { min-height:44px;gap:24px; }
  .mk-category-bar nav>a { padding-block:9px;line-height:1.4; }

  body:is(.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.mk-commerce,.mk-page) {
    padding-block:22px 40px;
  }
  body:is(.woocommerce-cart,.woocommerce-checkout) .mk-page>article { max-width:none; }
  body:is(.woocommerce-cart,.woocommerce-checkout) .mk-page>article>h1 {
    font-size:30px;line-height:1.2;margin:0 0 18px;
  }

  /* Use the space below the photo for the full product information.
   * DOM order, tab semantics and the gallery remain WooCommerce's own.
   */
  body.single-product .mk-commerce div.product.type-product {
    display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);
    grid-template-rows:auto minmax(0,1fr);gap:18px 32px;align-items:start;
  }
  body.single-product .mk-commerce div.product.type-product::before,
  body.single-product .mk-commerce div.product.type-product::after { content:none; }
  body.single-product .mk-commerce div.product.type-product>* { grid-column:1 / -1;min-width:0; }
  body.single-product .mk-commerce div.product.type-product>div.images {
    grid-column:1;grid-row:1;float:none!important;width:100%!important;max-width:none;
    padding:12px!important;margin:0!important;border-radius:12px;
  }
  body.single-product .mk-commerce div.product.type-product>div.images img {
    height:260px!important;max-height:260px!important;object-fit:contain;
  }
  body.single-product .mk-commerce div.product.type-product>div.images .flex-control-thumbs {
    margin-top:8px;gap:6px;
  }
  body.single-product .mk-commerce div.product.type-product>div.images .flex-control-thumbs img {
    height:48px!important;max-height:48px!important;
  }
  /* Do not constrain the gallery's full-resolution zoom overlay. */
  body.single-product .mk-commerce div.product.type-product>div.images img.zoomImg {
    width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;
  }
  body.single-product .mk-commerce div.product.type-product>div.summary {
    grid-column:2;grid-row:1 / span 2;float:none!important;width:100%!important;
    margin:0!important;clear:none!important;
  }
  body.single-product .mk-commerce .woocommerce-breadcrumb { margin-bottom:12px; }
  body.single-product .mk-commerce div.product .product_title {
    font-size:28px!important;line-height:1.2!important;margin:0 0 10px!important;
    overflow-wrap:break-word;
  }
  body.single-product .mk-commerce div.product p.price {
    font-size:22px!important;line-height:1.3;margin:0 0 12px!important;
  }
  body.single-product .mk-commerce div.product .woocommerce-product-details__short-description {
    max-width:none;font-size:15px;line-height:1.5;margin-bottom:12px;
  }
  body.single-product .mk-commerce div.product .woocommerce-product-details__short-description p {
    margin-bottom:8px;
  }
  body.single-product .mk-commerce div.product :is(.mk-preorder-detail,.mk-preorder-notice) {
    padding:8px 12px;margin:0 0 8px!important;line-height:1.45;
  }
  body.single-product .mk-commerce div.product form.cart {
    margin:12px 0!important;gap:8px;
  }
  body.single-product .mk-commerce div.product .mk-weight-note {
    margin:0!important;line-height:1.45;
  }
  body.single-product .mk-commerce div.product .quantity .qty { height:44px; }
  body.single-product .mk-commerce div.product form.cart .single_add_to_cart_button {
    min-height:44px;padding:10px 18px!important;font-size:14px;
  }
  body.single-product .mk-commerce div.product form.cart>.twint-button.PDP {
    flex:1 1 270px;width:auto!important;min-height:44px;height:44px!important;
    padding:4px 12px!important;margin:0!important;
  }
  body.single-product .mk-commerce div.product .summary #ppc-button-ppcp-gateway {
    margin:10px 0;
  }
  body.single-product .mk-commerce div.product form.cart table.variations { margin-bottom:10px; }
  body.single-product .mk-commerce div.product .woocommerce-variation-add-to-cart { margin-top:8px; }
  body.single-product .mk-commerce div.product .mk-payment-methods {
    display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;
    padding-top:10px;margin-top:12px;
  }
  body.single-product .mk-commerce div.product .mk-payment-methods>p { margin:0;font-size:12px; }
  body.single-product .mk-commerce div.product .mk-payment-logos { gap:6px; }
  body.single-product .mk-commerce div.product .mk-payment-logo {
    width:66px;height:36px;padding:5px 6px;border-radius:6px;
  }
  body.single-product .mk-commerce div.product .mk-payment-logo img { height:23px!important; }
  body.single-product .mk-commerce div.product .mk-payment-logo--cards img { max-width:25px!important; }
  body.single-product .mk-commerce div.product .mk-payment-methods>small {
    flex-basis:100%;margin:0;line-height:1.4;
  }
  body:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .mk-shipping-info {
    margin:12px 0;padding:10px 14px;line-height:1.45;
  }
  body:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .mk-shipping-info p {
    margin:4px 0 0;line-height:1.45;
  }
  body.single-product .mk-commerce div.product .product_meta {
    gap:4px 14px;margin-top:12px;line-height:1.5;
  }
  body.single-product .mk-commerce div.product.type-product>div.woocommerce-tabs {
    grid-column:1;grid-row:2;clear:none;width:100%;padding:0!important;margin:0!important;
    border-top:0;
  }
  body.single-product .mk-commerce div.product .woocommerce-tabs ul.tabs {
    gap:6px 18px;margin:0 0 12px!important;
  }
  body.single-product .mk-commerce div.product .woocommerce-tabs ul.tabs li a {
    font-size:13px!important;padding:9px 0!important;
  }
  body.single-product .mk-commerce div.product .woocommerce-tabs .panel {
    max-width:none;padding:0!important;line-height:1.55;font-size:15px;
  }
  body.single-product .mk-commerce div.product .woocommerce-tabs .panel>h2 {
    font-size:20px!important;line-height:1.25;margin:0 0 10px!important;
  }
  body.single-product .mk-commerce div.product .woocommerce-tabs .panel p { margin-bottom:10px; }
  body.single-product .mk-commerce .mk-food-info h3 { margin:16px 0 8px;font-size:18px; }
  body.single-product .mk-commerce .mk-food-info :is(th,td) { padding:7px 10px; }
  body.single-product .mk-commerce div.product section:is(.related,.up-sells) {
    margin-top:10px!important;padding-top:20px!important;
  }
  body.single-product .mk-commerce div.product section:is(.related,.up-sells)>h2 {
    font-size:23px!important;margin-bottom:16px!important;
  }

  /* Classic cart: native form and totals side by side. No duplicate checkout.
   * :has() limits the grid to the populated classic cart, including AJAX redraws.
   */
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form):has(>.cart-collaterals) {
    display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,360px);
    grid-template-rows:auto minmax(0,1fr);
    gap:16px 24px;align-items:start;grid-auto-flow:row dense;
  }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form):has(>.cart-collaterals):has(>.woocommerce-notices-wrapper:not(:empty)) {
    grid-template-rows:auto auto minmax(0,1fr);
  }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form):has(>.cart-collaterals)>* {
    grid-column:1 / -1;min-width:0;
  }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form)>.woocommerce-notices-wrapper:empty { display:none; }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form)>.mk-shipping-info { grid-column:1;margin:0; }
  body.woocommerce-cart .woocommerce:has(>.cart-collaterals)>form.woocommerce-cart-form {
    grid-column:1;margin:0;
  }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form)>.cart-collaterals {
    grid-column:2;float:none;width:100%;margin:0;
  }
  body.woocommerce-cart .woocommerce:has(>.woocommerce-cart-form):has(>.mk-shipping-info)>.cart-collaterals {
    grid-row:span 2;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals {
    float:none;width:100%;padding:16px;border:1px solid var(--line);border-radius:12px;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals>h2 {
    font-size:22px;margin:0 0 12px;line-height:1.2;
  }
  body.woocommerce-cart .cart-collaterals .cross-sells { float:none;width:100%;margin-bottom:20px; }
  body.woocommerce-cart .woocommerce table.shop_table { margin:0;font-size:14px;line-height:1.45; }
  body.woocommerce-cart .woocommerce table.shop_table :is(th,td) { padding:9px 10px; }
  body.woocommerce-cart .woocommerce table.cart td.product-remove { width:28px;padding:8px 4px; }
  body.woocommerce-cart .woocommerce table.cart td.product-thumbnail { width:52px;padding-inline:6px; }
  body.woocommerce-cart .woocommerce table.cart td.product-thumbnail img { width:40px; }
  body.woocommerce-cart .woocommerce table.cart td.product-name { overflow-wrap:break-word; }
  body.woocommerce-cart .woocommerce table.cart td.product-name>a { font-weight:650;line-height:1.4; }
  body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation {
    margin:6px 0 0;font-size:12px;line-height:1.45;
  }
  body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation :is(dt,dd,dd p) {
    margin-bottom:3px;line-height:1.45;
  }
  body.woocommerce-cart .woocommerce table.cart :is(.product-price,.product-subtotal) { white-space:nowrap; }
  body.woocommerce-cart .woocommerce table.cart .quantity .qty { width:56px;height:42px; }
  body.woocommerce-cart .woocommerce table.cart td.actions { padding:10px; }
  body.woocommerce-cart .woocommerce table.cart td.actions .coupon {
    display:flex;gap:6px;align-items:center;flex-wrap:wrap;
  }
  body.woocommerce-cart .woocommerce table.cart td.actions .coupon .input-text {
    width:128px;min-height:42px;margin:0;padding:8px;border:1px solid var(--line);border-radius:6px;
  }
  body.woocommerce-cart .woocommerce table.cart td.actions .button {
    min-height:42px;padding:9px 12px!important;font-size:13px;
  }
  body.woocommerce-cart .cart_totals table.shop_table { border:0;border-radius:0; }
  body.woocommerce-cart .cart_totals table.shop_table :is(th,td) { padding:9px 0;vertical-align:top; }
  body.woocommerce-cart .cart_totals table.shop_table th { width:32%;padding-right:10px; }
  body.woocommerce-cart .cart_totals :is(p,.woocommerce-shipping-destination) {
    font-size:13px;line-height:1.45;margin:6px 0;
  }
  body.woocommerce-cart .cart_totals .order-total { font-size:16px; }
  body.woocommerce-cart .wc-proceed-to-checkout { padding:10px 0 0; }
  body.woocommerce-cart .wc-proceed-to-checkout .wc-block-components-express-payment-continue-rule {
    margin:10px 0;font-size:12px;line-height:1.3;
  }
  body.woocommerce-cart .wc-proceed-to-checkout #ppc-button-ppcp-gateway { margin:10px 0; }
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    min-height:44px;padding:10px 14px!important;margin:8px 0!important;font-size:15px;
  }

  /* Cart and checkout blocks already provide columns; let them use the page width. */
  body:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-sidebar-layout {
    gap:24px;flex-wrap:nowrap;margin-bottom:0;
  }
  body:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-sidebar-layout .wc-block-components-main {
    width:auto;min-width:0;flex:1;padding-right:0;
  }
  body:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-sidebar-layout .wc-block-components-sidebar {
    width:360px;min-width:320px;flex:0 0 360px;padding-left:0;
  }
  body.woocommerce-checkout .mk-payments-unified :is(.mk-payment-group-title,.mk-other-payment-title) {
    font-size:18px!important;line-height:1.3!important;
  }

  /* 1.04: classic checkout, as used by the live store. Native form and frames
   * stay in place; the theme's server-rendered wrapper only supplies a column.
   */
  body.woocommerce-checkout .woocommerce form.checkout:has(>.mk-order-column) {
    display:grid;grid-template-columns:minmax(0,1.2fr) minmax(380px,1fr);
    gap:20px 26px;align-items:start;
  }
  body.woocommerce-checkout .woocommerce form.checkout:has(>.mk-order-column)>* {
    grid-column:1 / -1;min-width:0;
  }
  body.woocommerce-checkout .woocommerce form.checkout>#customer_details {
    grid-column:1;width:100%;margin:0;
  }
  body.woocommerce-checkout .woocommerce form.checkout>.mk-order-column {
    grid-column:2;width:100%;margin:0;
  }
  body.woocommerce-checkout #customer_details :is(.col-1,.col-2) {
    float:none;width:100%;min-width:0;
  }
  body.woocommerce-checkout #customer_details .col-2 { margin-top:20px; }
  body.woocommerce-checkout .woocommerce :is(#customer_details,#order_review_heading) h3,
  body.woocommerce-checkout .woocommerce #order_review_heading {
    font-size:20px;line-height:1.3;margin:0 0 14px;letter-spacing:-.025em;
  }
  body.woocommerce-checkout .woocommerce #ship-to-different-address {
    font-size:17px;line-height:1.4;margin:0 0 14px;
  }
  body.woocommerce-checkout #customer_details :is(.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper) {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;
  }
  body.woocommerce-checkout #customer_details .form-row {
    grid-column:1 / -1;float:none;clear:none;width:100%;min-width:0;padding:0;margin:0;
  }
  body.woocommerce-checkout #customer_details :is(.form-row-first,.form-row-last,[id$="_postcode_field"],[id$="_city_field"],[id$="_state_field"],[id$="_phone_field"]) {
    grid-column:auto;
  }
  body.woocommerce-checkout #customer_details .form-row label {
    font-size:13px;line-height:1.4;margin-bottom:4px;
  }
  body.woocommerce-checkout #customer_details .form-row :is(input.input-text,select,textarea) {
    padding:8px 10px;font-size:14px;line-height:1.4;border-radius:7px;min-height:40px;
  }
  body.woocommerce-checkout #customer_details .form-row textarea {
    min-height:72px;height:72px;resize:vertical;
  }
  body.woocommerce-checkout #customer_details .select2-container .select2-selection--single {
    height:40px;border:1px solid #cad6c4;border-radius:7px;
  }
  body.woocommerce-checkout #customer_details .select2-selection__rendered {
    line-height:38px;padding-left:10px;font-size:14px;
  }
  body.woocommerce-checkout #customer_details .select2-selection__arrow { height:38px; }
  body.woocommerce-checkout #customer_details .woocommerce-additional-fields { margin-top:16px; }
  body.woocommerce-checkout #customer_details .woocommerce-additional-fields h3 { font-size:17px; }
  body.woocommerce-checkout .woocommerce form.checkout .woocommerce-account-fields { margin-top:14px; }
  body.woocommerce-checkout .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info {
    padding:10px 14px 10px 40px;margin:12px 0 20px;font-size:13px;line-height:1.5;
  }
  body.woocommerce-checkout .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info::before { top:10px;left:14px; }
  body.woocommerce-checkout .mk-shipping-info { display:flex;flex-wrap:wrap;gap:4px 16px; }
  body.woocommerce-checkout .mk-shipping-info strong { flex-basis:100%; }
  body.woocommerce-checkout .mk-shipping-info p { margin:0;font-size:12px; }
  body.woocommerce-checkout #order_review { width:100%;min-width:0; }
  body.woocommerce-checkout #order_review table.shop_table { margin:0;font-size:13px;line-height:1.4; }
  body.woocommerce-checkout #order_review table.shop_table :is(th,td) { padding:8px 10px; }
  body.woocommerce-checkout #order_review table.shop_table .product-name { width:65%; }
  body.woocommerce-checkout #order_review table.shop_table .product-total { white-space:nowrap; }
  body.woocommerce-checkout #order_review table.shop_table dl.variation { margin:5px 0 0;font-size:12px; }
  body.woocommerce-checkout #order_review table.shop_table dl.variation :is(dt,dd,p) {
    margin-bottom:3px;line-height:1.4;
  }
  body.woocommerce-checkout #order_review table.shop_table .order-total { font-size:15px; }
  body.woocommerce-checkout #order_review .mk-checkout-payments {
    margin-top:16px;padding:14px;border-radius:12px;
  }
  body.woocommerce-checkout #order_review .mk-checkout-payments>h3 {
    margin:0 0 12px;font-size:19px;line-height:1.3;
  }
  body.woocommerce-checkout #order_review :is(.wcpay-express-checkout-wrapper,.wc-block-components-express-payment-continue-rule) {
    margin-top:8px;margin-bottom:12px;
  }
  body.woocommerce-checkout #order_review #payment { margin-top:10px; }
  body.woocommerce-checkout #order_review #payment ul.payment_methods { padding:0 0 8px; }
  body.woocommerce-checkout #order_review #payment ul.payment_methods>li {
    padding:5px 0;line-height:1.45;font-size:14px;
  }
  body.woocommerce-checkout #order_review #payment div.payment_box {
    margin:10px 0 4px;padding:10px;background:#fff;border:1px solid var(--line);
    border-radius:8px;color:var(--ink);font-size:13px;line-height:1.45;
  }
  body.woocommerce-checkout #order_review #payment div.payment_box::before { border-bottom-color:#fff; }
  body.woocommerce-checkout #order_review #payment div.payment_box fieldset { margin:0;padding:0;border:0; }
  body.woocommerce-checkout #order_review #payment div.payment_box .form-row { padding:0;margin-bottom:8px; }
  body.woocommerce-checkout #order_review #payment div.payment_box .form-row label { line-height:1.4;font-size:12px;margin-bottom:4px; }
  body.woocommerce-checkout #order_review #payment div.payment_box input.input-text {
    min-height:40px;padding:8px 10px;font-size:14px;line-height:1.4;
  }
  body.woocommerce-checkout #customer_details .woocommerce-additional-fields textarea { width:100%; }
  body.woocommerce-checkout #order_review #payment .place-order { padding:12px 0 0;margin:0; }
  body.woocommerce-checkout #order_review #payment .place-order p { margin:0 0 10px;line-height:1.45; }
  body.woocommerce-checkout #order_review :is(.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper,.place-order) {
    font-size:12px;line-height:1.5;
  }
  body.woocommerce-checkout #order_review #place_order {
    float:none;width:100%;min-height:44px;padding:10px 14px!important;
    font-size:14px;line-height:1.4!important;margin-top:8px;white-space:normal;
  }
}

@media (min-width:1280px) {
  /* Two compact address columns when a separate delivery address is selected. */
  body.woocommerce-checkout #customer_details:has(#ship-to-different-address-checkbox:checked) {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;
  }
  body.woocommerce-checkout #customer_details:has(#ship-to-different-address-checkbox:checked)::before,
  body.woocommerce-checkout #customer_details:has(#ship-to-different-address-checkbox:checked)::after { content:none; }
  body.woocommerce-checkout #customer_details:has(#ship-to-different-address-checkbox:checked) .col-2 { margin:0; }
  body.woocommerce-checkout #customer_details:has(#ship-to-different-address-checkbox:checked) :is(.woocommerce-billing-fields>h3,#ship-to-different-address) {
    min-height:48px;font-size:17px;line-height:1.35;margin-bottom:12px;
  }
}
