.dm-regions { display: flex; flex-wrap: wrap; align-items: center; gap: 0 24px; padding-top: 4px; padding-bottom: 4px; font-size: 14px; }
.dm-regions details { position: relative; }
.dm-regions summary, .dm-regions > a, .dm-regions li a { display: block; box-sizing: border-box; min-height: 44px; padding: 10px 8px; line-height: 24px; }
.dm-regions li { margin: 0; padding: 0; }
.dm-regions summary { display: list-item; cursor: pointer; list-style: revert; }
.dm-regions ul { position: absolute; z-index: 1100; top: 100%; left: 0; width: min(320px, calc(100vw - 40px)); max-height: min(60vh, 30rem); overflow-y: auto; margin: 0; padding: 8px; list-style: none; background: var(--black_bg_black, #fff); border: 1px solid var(--stroke_black, #ddd); }
.dm-regions li::before { display: none; }
.dm-regions a:focus-visible, .dm-regions summary:focus-visible { outline: 2px solid var(--theme-base-color, #047ec2); outline-offset: 2px; }
.dm-region-page { max-width: 75ch; padding-bottom: 32px; }
.dm-region-page h2 { margin-top: 32px; }
.dm-delivery-city { max-width: 30rem; margin-bottom: 16px; }
.dm-delivery-city label { display: block; margin-top: 12px; }
.dm-delivery-city input, .dm-delivery-city select { width: 100%; min-height: 44px; }

.dm-regions .dm-region-terms p { margin: 0; padding: 8px; }

.dm-storefront { max-width: none; padding-bottom: 48px; }
.dm-storefront-intro { padding: 8px 0 32px; }
.dm-storefront-lead { max-width: 60ch; font-size: 18px; line-height: 1.6; }
.dm-storefront-section { padding: 28px 0; border-top: 1px solid #e4e7ea; }
.dm-storefront-section h2 { margin: 0 0 12px; }
.dm-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 24px 0; }
.dm-product-image { display: flex; align-items: center; justify-content: center; min-height: 200px; background: #f7f8fa; }
.dm-product-image img { display: block; width: 100%; height: 200px; object-fit: contain; }
.dm-product p { margin: 14px 0 4px; color: #555; font-size: 13px; }
.dm-product h3 { margin: 0; font-size: 17px; line-height: 1.4; }
.dm-delivery ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding-left: 22px; }
.dm-delivery li { padding-left: 4px; }
.dm-city-directory { max-width: 75ch; }
.dm-city-directory details { border-top: 1px solid var(--stroke_black, #ddd); }
.dm-city-directory summary { cursor: pointer; min-height: 44px; padding: 10px 0; }
.dm-city-directory summary:focus-visible { outline: 2px solid #086da8; outline-offset: 3px; }
.dm-city-directory ul { columns: 16rem; }
.dm-city-directory li { break-inside: avoid; }
.dm-city-directory-link { margin-top: 12px; }
.dm-city-source { font-size: 14px; }
.dm-region-editorial, .dm-storefront-training { max-width: 75ch; }
.dm-storefront a:focus-visible, .dm-storefront button:focus-visible, .dm-storefront input:focus-visible, .dm-storefront select:focus-visible { outline: 2px solid #086da8; outline-offset: 3px; }
@media (max-width: 767px) {
  .dm-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
  .dm-product-image, .dm-product-image img { min-height: 150px; height: 150px; }
  .dm-delivery ol { grid-template-columns: 1fr; gap: 12px; }
}
