@media (min-width: 2200px) and (min-height: 1200px) {
  .module-city .view-stage {
    padding: 14px;
  }

  .module-city .ref-workspace-grid {
    grid-template-columns: minmax(0, 1.12fr) minmax(560px, 700px);
    gap: 15px;
  }

  .module-city .ref-city-page .ref-workspace-main {
    grid-template-rows: minmax(0, 1fr) 70px 162px;
    gap: 12px;
  }

  .module-city .ref-hero-copy h1 {
    font-size: clamp(54px, 2.9vw, 78px);
  }

  .module-city .ref-hero-copy p {
    font-size: 15px;
  }

  .module-city .ref-queue-banner {
    min-height: 80px;
  }

  .module-city .ref-queue-banner strong { font-size: 23px; }
  .module-city .ref-queue-banner small { font-size: 12px; }
  .module-city .ref-queue-banner em { font-size: 38px; }

  .module-city .ref-city-resource-bar {
    height: 70px;
    min-height: 70px;
    gap: 10px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip {
    min-height: 70px;
    height: 70px;
    padding: 10px 12px;
    border-radius: 11px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip .nv-icon {
    width: 18px;
    height: 18px;
    border-radius: 8px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip small { font-size: 9px; }
  .module-city .ref-city-resource-bar .ref-resource-chip strong { font-size: 23px; }
  .module-city .ref-city-resource-bar .ref-resource-chip em { font-size: 12px; }

  .module-city .ref-building-rail-compact {
    height: 162px;
    padding: 11px 12px;
  }

  .module-city .ref-building-selector {
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }

  .module-city .ref-building-selector > div { height: 96px; }
  .module-city .ref-building-selector strong { font-size: 15px; }
  .module-city .ref-building-selector small { font-size: 12px; }
  .module-city .ref-building-selector em { font-size: 11px; }

  .module-city .ref-building-inspector {
    gap: 13px;
    padding: 18px;
    border-radius: 16px;
  }

  .module-city .ref-city-inspector-art {
    height: 188px;
    flex-basis: 188px;
    border-radius: 13px;
  }

  .module-city .ref-city-inspector-art span { font-size: 13px; }
  .module-city .ref-city-inspector-art strong { font-size: 29px; }
  .module-city .ref-city-inspector-art small { font-size: 14px; }

  .module-city .ref-building-inspector .ref-inspector-head h2 { font-size: 44px; }
  .module-city .ref-building-inspector .ref-level-label { font-size: 14px; }
  .module-city .ref-building-inspector .ref-inspector-head p { font-size: 14px; }

  .module-city .ref-city-inspector-summary {
    gap: 10px;
  }

  .module-city .ref-city-inspector-summary > div,
  .module-city .ref-building-inspector .ref-inspector-block {
    padding: 13px 14px;
  }

  .module-city .ref-city-inspector-summary span,
  .module-city .ref-building-inspector .ref-inspector-block > span {
    font-size: 12px;
  }

  .module-city .ref-city-inspector-summary strong,
  .module-city .ref-building-inspector .ref-inspector-block > strong {
    font-size: 18px;
  }

  .module-city .ref-building-inspector .ref-inspector-block > small,
  .module-city .ref-building-inspector .ref-inspector-block ul,
  .module-city .ref-building-inspector .ref-cost-row {
    font-size: 13px;
    line-height: 1.5;
  }

  .module-city .ref-building-inspector .ref-primary-button,
  .module-city .ref-building-inspector .ref-secondary-button {
    min-height: 48px;
    font-size: 14px;
  }
}

@media (min-width: 3000px) and (min-height: 1700px) {
  .module-city .view-stage {
    padding: 18px;
  }

  .module-city .ref-workspace-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(700px, 860px);
    gap: 18px;
  }

  .module-city .ref-city-page .ref-workspace-main {
    grid-template-rows: minmax(0, 1fr) 82px 186px;
    gap: 14px;
  }

  .module-city .ref-hero-copy h1 {
    font-size: clamp(64px, 2.8vw, 96px);
  }

  .module-city .ref-hero-copy p {
    font-size: 17px;
  }

  .module-city .ref-inline-tags span {
    font-size: 12px;
    padding: 7px 11px;
  }

  .module-city .ref-queue-banner {
    min-height: 92px;
    padding: 14px 18px;
  }

  .module-city .ref-queue-banner strong { font-size: 27px; }
  .module-city .ref-queue-banner small { font-size: 13px; }
  .module-city .ref-queue-banner em { font-size: 44px; }

  .module-city .ref-city-resource-bar {
    height: 82px;
    min-height: 82px;
    gap: 12px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip {
    min-height: 82px;
    height: 82px;
    padding: 12px 14px;
    border-radius: 13px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip .nv-icon {
    width: 20px;
    height: 20px;
  }

  .module-city .ref-city-resource-bar .ref-resource-chip small { font-size: 10px; }
  .module-city .ref-city-resource-bar .ref-resource-chip strong { font-size: 27px; }
  .module-city .ref-city-resource-bar .ref-resource-chip em { font-size: 13px; }

  .module-city .ref-building-rail-compact {
    height: 186px;
    padding: 12px 13px;
  }

  .module-city .ref-building-selector {
    grid-template-columns: 132px minmax(0, 1fr);
    padding: 12px;
  }

  .module-city .ref-building-selector > div { height: 110px; }
  .module-city .ref-building-selector strong { font-size: 17px; }
  .module-city .ref-building-selector small { font-size: 13px; }
  .module-city .ref-building-selector em { font-size: 12px; }

  .module-city .ref-building-inspector {
    gap: 15px;
    padding: 22px;
  }

  .module-city .ref-city-inspector-art {
    height: 232px;
    flex-basis: 232px;
  }

  .module-city .ref-city-inspector-art span { font-size: 14px; }
  .module-city .ref-city-inspector-art strong { font-size: 34px; }
  .module-city .ref-city-inspector-art small { font-size: 16px; }

  .module-city .ref-building-inspector .ref-inspector-head h2 { font-size: 52px; }
  .module-city .ref-building-inspector .ref-level-label { font-size: 16px; }
  .module-city .ref-building-inspector .ref-inspector-head p { font-size: 16px; }

  .module-city .ref-city-inspector-summary > div,
  .module-city .ref-building-inspector .ref-inspector-block {
    padding: 16px;
  }

  .module-city .ref-city-inspector-summary span,
  .module-city .ref-building-inspector .ref-inspector-block > span { font-size: 13px; }

  .module-city .ref-city-inspector-summary strong,
  .module-city .ref-building-inspector .ref-inspector-block > strong { font-size: 21px; }

  .module-city .ref-building-inspector .ref-inspector-block > small,
  .module-city .ref-building-inspector .ref-inspector-block ul,
  .module-city .ref-building-inspector .ref-cost-row {
    font-size: 15px;
  }

  .module-city .ref-building-inspector .ref-primary-button,
  .module-city .ref-building-inspector .ref-secondary-button {
    min-height: 54px;
    font-size: 16px;
  }
}
