#services-page .delivery-section { padding-top: 8px; padding-bottom: 32px; }
.delivery-layout { display: grid; grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.2fr); gap: 44px; align-items: center; border-top: 1px solid var(--border-color); padding-top: 24px; }
#services-page #delivery-heading { margin: 0 0 12px; font-size: 28px; line-height: 1.15; letter-spacing: -0.02em; font-weight: 900; text-transform: uppercase; }
#services-page .delivery-lead { font-size: 14px; line-height: 1.65; color: var(--text-light); }
.delivery-lead strong { color: var(--primary-color); font-weight: 650; }
.delivery-zones { margin: 18px 0 16px; max-width: 390px; }
.delivery-zones li { border-bottom: 1px solid var(--border-color); }
.delivery-zones a { min-height: 42px; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 14px; font-weight: 650; }
.delivery-zones a:hover, .delivery-zones a.is-active { color: var(--accent-deep); }
.delivery-zones a:focus-visible { outline-offset: 1px; }
.delivery-zones svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.5; }
#services-page .delivery-conditions { max-width: 40ch; font-size: 12px; line-height: 1.6; color: var(--text-light); }
.delivery-figure { min-width: 0; padding: 0; }
.delivery-map { width: 100%; max-height: 345px; height: auto; display: block; overflow: hidden; background: #fbfcfc; }
.delivery-context path { fill: #eeefec; stroke: white; stroke-width: 0.65; vector-effect: non-scaling-stroke; }
.delivery-region { cursor: pointer; outline: none; }
.delivery-region path { fill: var(--accent-color); stroke: #fff; stroke-width: 0.85; vector-effect: non-scaling-stroke; transition: fill 120ms ease-out; }
.delivery-region.is-active path { fill: #caa407; }
.delivery-region path.is-active { fill: #1c1c1c; }
.delivery-region:focus-visible path { stroke: #1c1c1c; stroke-width: 2; fill: #d9b20b; }
.delivery-region[aria-pressed="true"] { outline: none; }
.delivery-water { font-size: 12px; fill: #647576; letter-spacing: 0.03em; font-style: italic; text-anchor: middle; pointer-events: none; }
.delivery-origin { pointer-events: none; }
.delivery-origin text { font-family: inherit; font-size: 13px; font-weight: 750; fill: #1c1c1c; }
.delivery-map-caption { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding-top: 10px; min-height: 30px; font-size: 11px; color: var(--text-light); }
.delivery-caption-label { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; }
.delivery-caption-label i { width: 9px; height: 9px; display: inline-block; background: #f1c40f; border: 1px solid #967900; }
#delivery-status { font-variant-numeric: tabular-nums; text-align: right; min-width: 0; }
@media (max-width: 900px) {
  .delivery-layout { grid-template-columns: minmax(240px, 0.9fr) minmax(0, 1.1fr); gap: 24px; }
  #services-page #delivery-heading { font-size: 25px; }
  .delivery-map-caption { align-items: flex-start; }
}
@media (max-width: 640px) {
  .prototype-bar { padding: 7px 16px; flex-wrap: wrap; gap: 5px 12px; font-size: 11px; }
  .prototype-bar > span { width: 100%; }
  .prototype-bar small { margin-left: 6px; }
  .prototype-bar > div { gap: 20px; }
  #services-page .delivery-section { padding-top: 0; padding-bottom: 24px; }
  .delivery-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; padding-top: 22px; }
  #services-page #delivery-heading { font-size: 23px; margin-bottom: 10px; }
  .delivery-desktop-break { display: none; }
  .delivery-zones { max-width: none; margin: 12px 0; }
  .delivery-zones a { font-size: 13px; min-height: 44px; }
  .delivery-map { max-height: none; }
  .delivery-map-caption { padding-top: 9px; font-size: 10px; }
  .delivery-water { font-size: 13px; }
  .delivery-origin text { font-size: 20px; }
  .delivery-origin rect { width: 225px; height: 34px; }
  #services-page .delivery-conditions { font-size: 12px; max-width: 40ch; }
}
@media (prefers-reduced-motion: reduce) {
  .delivery-region path { transition: none; }
}
