/* Desktop corrections only. The existing mobile/tablet stylesheet is unchanged. */
@media (min-width: 1024px) {
  .shop-main > .shell,
  .single-product .shop-main > .shell { width: min(1180px, calc(100vw - 64px)); }
  .shop-main { padding-block: 48px 80px; }
  .woocommerce .woocommerce-products-header__title { font-size: 42px; line-height: 1.2; margin-bottom: 30px; }

  .single-product div.product { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 36px 60px; padding-top: 20px; align-items: start; }
  .single-product div.product::before,
  .single-product div.product::after { display: none; }
  .single-product.woocommerce div.product div.images,
  .single-product.woocommerce div.product div.summary { float: none; width: 100%; min-width: 0; margin-bottom: 0; }
  .single-product div.product .woocommerce-product-gallery { grid-column: 1; grid-row: 1; }
  .single-product div.product .summary { grid-column: 2; grid-row: 1; }
  .single-product div.product .product_title { font-size: 40px; line-height: 1.25; }
  .single-product div.product p.price { margin-block: 24px; }
  .single-product div.product .stock { margin-block: 20px; }
  .single-product div.product form.cart { margin-bottom: 28px; }
  .single-product .product-benefits { gap: 0; padding: 12px; border: 1px solid #efede8; border-radius: 7px; background: #fbfaf7; }
  .single-product .product-benefits li { min-height: 62px; padding: 8px 12px; border: 0; background: transparent; }
  .single-product div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 24px; }
  .single-product div.product .woocommerce-tabs .panel { max-width: 100%; padding-block: 24px; }
  .single-product div.product .woocommerce-tabs .panel h2 { font-size: 26px; line-height: 1.3; }
  .single-product div.product .related,
  .single-product div.product .upsells { grid-column: 1 / -1; width: 100%; }

  .content-main > .prose { max-width: 960px; padding-block: 48px 72px; }
  .content-main > .prose h1 { font-size: 38px; line-height: 1.25; margin-bottom: 28px; }
  .content-main > .prose h2 { font-size: 24px; line-height: 1.35; margin: 32px 0 16px; }
  .content-main > .prose h3 { font-size: 21px; line-height: 1.35; margin-top: 24px; }
  .woocommerce-checkout .content-main > .prose,
  .woocommerce-cart .content-main > .prose { max-width: 1180px; width: min(1180px, calc(100vw - 64px)); }
  .woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 56px; align-items: start; }
  .woocommerce-checkout form.checkout #customer_details { grid-column: 1; grid-row: 1 / span 2; width: 100%; }
  .woocommerce-checkout form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin-top: 0; }
  .woocommerce-checkout form.checkout #order_review { grid-column: 2; grid-row: 2; min-width: 0; }
  .woocommerce-checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; }
  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2 { float: none; width: 100%; }
  .woocommerce-checkout .woocommerce-billing-fields > h3 { margin-top: 0; }

  .store-locator-page { display: grid; grid-template-columns: minmax(32px, 1fr) minmax(0, 560px) 60px minmax(0, 560px) minmax(32px, 1fr); }
  .store-locator-hero { grid-column: 1 / -1; padding-block: 56px; }
  .store-locator-hero h1 { font-size: 48px; margin-bottom: 16px; }
  .store-locations { grid-column: 2 / 5; width: 100%; padding-block: 48px; }
  .store-locations__head { margin-bottom: 28px; }
  .store-locations__head h2 { font-size: 32px; }
  .store-locations__grid { grid-template-columns: minmax(0, 1fr); }
  .store-card { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 390px; }
  .store-card__body { grid-column: 1; grid-row: 1; padding: 36px; }
  .store-card__body h3 { font-size: 30px; line-height: 1.2; }
  .store-map { grid-column: 2; grid-row: 1; height: 100%; }
  .store-card__embed,
  .store-map__consent { height: 100%; min-height: 390px; }
  .store-map__consent { padding: 40px; }
  .store-contact { grid-column: 2; width: 100%; max-width: none; padding-block: 32px 72px; }
  .store-contact h2 { font-size: 32px; line-height: 1.3; }
  .store-office { grid-column: 4; align-self: start; margin-block: 32px 72px; padding: 32px; border: 1px solid var(--line); border-radius: 7px; }
  .store-office__inner { width: 100%; grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .store-office h2 { font-size: 28px; line-height: 1.3; }
  .store-office__details { grid-template-columns: minmax(0, 1fr); }
  .store-office__details > div { padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--line); }
}
