/*
  Mobile layout overrides for the main Heatmaps experience.
*/

html.hm-mobile,
html.hm-mobile body {
  overflow-x: hidden;
}

@media screen and (max-width: 760px) {
  .map {
    height: clamp(560px, 70vh, 720px);
    min-height: 560px;
    position: relative;
  }

  .TopMegaTitle {
    height: auto;
    min-height: 62px;
    font-size: 34px;
    line-height: 1.05;
  }

  .TopMegaTitleDiv {
    padding-left: 8px;
    padding-right: 8px;
  }

  .map .menu_button,
  .menu_button {
    left: auto !important;
    right: 10px !important;
    top: 10px !important;
    width: 38px !important;
    height: 38px !important;
  }

  #map #search_div,
  #search_div {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: 14px !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;
    width: 158px !important;
    max-width: 158px !important;
    height: 42px !important;
    z-index: 20 !important;
    background: transparent !important;
    border: 0 !important;
  }

  #map #vp_search,
  #vp_search {
    left: 0 !important;
    top: 0 !important;
    width: 98px !important;
    height: 38px !important;
    font-size: 22px !important;
    line-height: 38px !important;
  }

  #map #vp_search_button,
  #vp_search_button {
    left: 104px !important;
    top: 0 !important;
    width: 48px !important;
    height: 38px !important;
  }

  #vp_search_button i {
    font-size: 22px !important;
  }

  #map .layer_name,
  .layer_name {
    top: auto !important;
    bottom: 22px !important;
    left: 8px !important;
    width: auto !important;
    max-width: min(58vw, 270px) !important;
    max-height: 62px !important;
    overflow: hidden !important;
    padding: 4px 6px !important;
    font-size: 13px !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    min-height: 0 !important;
    border-radius: 3px !important;
  }

  #map .layer_name span,
  .layer_name span {
    font-size: inherit !important;
    line-height: inherit !important;
  }

  #span_layer_name {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }

  div.cartodb-legend-stack {
    right: 8px;
    top: 8px;
    max-width: 44vw;
    font-size: 11px;
  }

  .mapboxgl-ctrl-bottom-right,
  .maplibregl-ctrl-bottom-right {
    bottom: 54px !important;
  }

  .accordion-button {
    width: 100%;
    min-height: 44px;
    white-space: normal;
    line-height: 1.04;
  }

  h2.accordion-header {
    display: block !important;
    width: 100%;
  }

  .accordion-body {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  .container1 {
    margin: 7px 4px;
    max-width: calc(100% - 8px);
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .linechart_div {
    height: 360px;
    min-height: 360px;
  }

  .dougnut_div {
    height: 300px;
    min-height: 300px;
  }

  .linechart_div canvas,
  .dougnut_div canvas {
    width: 100% !important;
    height: 100% !important;
  }

  [id$="LineChartTitleN1"],
  [id$="LineChartTitleN2"],
  [id$="LineChartTitleN3"],
  [id$="LineChartTitleN4"],
  [id$="LineChartTitleN5"],
  [id$="LineChartTitleN6"],
  [id$="LineChartTitleN7"],
  [id$="LineChartTitleN8"],
  [id$="LineChartTitleN9"],
  [id$="DoughnutChartTitleN1"],
  [id$="DoughnutChartTitleN2"],
  [id$="DoughnutChartTitleN3"],
  [id$="DoughnutChartTitleN4"],
  [id$="DoughnutChartTitleN5"],
  [id$="DoughnutChartTitleN6"],
  [id$="DoughnutChartTitleN7"],
  [id$="DoughnutChartTitleN8"],
  [id$="DoughnutChartTitleN9"] {
    padding: 8px 10px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
  }

  .undernote {
    display: block;
    padding: 5px 8px 8px;
    font-size: 11px;
    text-align: center;
  }

  .div20,
  .div25,
  .div33,
  .div40,
  .div50,
  .div66,
  .div75,
  .div80,
  .div100 {
    width: 100% !important;
    float: none;
    clear: both;
  }

  .div_white {
    font-size: 18px;
    line-height: 1.18;
  }

  .big_fontawesome_icon {
    font-size: clamp(48px, 17vw, 76px) !important;
  }

  .longer_underline span {
    font-size: clamp(28px, 10vw, 48px) !important;
  }

  .longer_underline_text_under {
    font-size: clamp(16px, 5vw, 24px) !important;
  }

  .hm-mobile .container1.hm-slot-card {
    height: auto !important;
    min-height: 420px !important;
    overflow: hidden !important;
  }

  .hm-mobile .linechart_div.hm-slot-card,
  .hm-mobile .dougnut_div.hm-slot-card {
    float: none !important;
    height: 350px !important;
    min-height: 350px !important;
    overflow: hidden !important;
  }

  .hm-mobile div[id*="_simple_text_N"] {
    height: 100% !important;
    min-height: 350px !important;
    grid-template-rows: 34px auto auto auto 34px !important;
    overflow: hidden !important;
  }

  .hm-mobile div[id*="_simple_text_N"] .big_fontawesome_icon {
    width: 78px !important;
    height: 78px !important;
    min-width: 78px !important;
    min-height: 78px !important;
    max-width: 78px !important;
    margin: 0 0 10px 0 !important;
    padding: 8px !important;
    font-size: 46px !important;
  }

  .hm-mobile div[id*="_simple_text_N"] .longer_underline {
    width: min(82vw, 480px) !important;
    min-width: 0 !important;
    max-width: 86% !important;
    margin: 0 !important;
    font-size: clamp(36px, 10vw, 56px) !important;
    line-height: 1.03 !important;
  }

  .hm-mobile div[id*="_simple_text_N"] .longer_underline span {
    font-size: inherit !important;
    line-height: inherit !important;
  }

  .hm-mobile div[id*="_simple_text_N"] .longer_underline_text_under {
    width: min(82vw, 480px) !important;
    max-width: 86% !important;
    margin-top: 12px !important;
    padding: 0 8px !important;
    font-size: clamp(21px, 6vw, 34px) !important;
    line-height: 1.18 !important;
  }

  .hm-mobile div[id*="_simple_text_N"] .grey_half_bg {
    bottom: 0 !important;
    height: 48% !important;
    min-height: 175px !important;
  }

  .hm-mobile .container1.hm-slot-card .undernote {
    clear: both !important;
    display: block !important;
    position: static !important;
    z-index: 3;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 6px 8px 10px !important;
    margin: 0 !important;
    background: transparent;
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .hm-affiliate-card-wrap,
  .hm-loan-options-wrap {
    padding: 10px;
  }

  .hm-loan-options-card,
  .hm-affiliate-card {
    padding: 14px;
  }

  .hm-affiliate-container {
    height: auto !important;
    min-height: 560px !important;
    overflow: visible !important;
  }

  .hm-affiliate-container .hm-affiliate-card-wrap {
    height: auto !important;
    min-height: 465px !important;
    overflow: visible !important;
    align-items: stretch;
  }

  .hm-affiliate-container .hm-affiliate-card {
    min-height: 430px;
    align-content: start;
  }

  .hm-affiliate-container .top_oversupply_box {
    display: block;
    width: 100%;
  }

  .hm-affiliate-title {
    font-size: 26px;
    line-height: 1.18;
  }

  .hm-affiliate-text {
    font-size: 17px;
    line-height: 1.4;
  }

  .hm-affiliate-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    width: 100%;
  }

  .hm-affiliate-button {
    width: 100%;
    min-height: 48px;
  }

  .responsive_font_size {
    font-size: 13px !important;
  }

  .hm-mobile .container1:has([id^="NA_"].top_oversupply_box table),
  .hm-mobile .linechart_div:has([id^="NA_"].top_oversupply_box table),
  .hm-mobile .dougnut_div:has([id^="NA_"].top_oversupply_box table) {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 2px 22px !important;
    margin: 0 0 16px !important;
    overflow: visible !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    overflow: hidden !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th,
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td {
    max-width: none !important;
    padding: 8px 7px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    vertical-align: middle !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th:nth-child(1),
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td:nth-child(1),
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th:nth-child(3),
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td:nth-child(3) {
    display: none !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th:nth-child(2),
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td:nth-child(2) {
    width: 50% !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th:nth-child(4),
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td:nth-child(4) {
    width: 32% !important;
    text-align: right !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable th:last-child,
  .hm-mobile [id^="NA_"].top_oversupply_box .detailTable td:last-child {
    width: 18% !important;
    text-align: center !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .find_button {
    display: flex !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .find_button .button {
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 5px 6px !important;
    border: 1px solid #555;
    border-radius: 4px;
    background: #f5f5f5;
    color: #06f;
    font-size: 12px !important;
    line-height: 1.1;
  }

  .hm-mobile [id^="NA_"].top_oversupply_box .find_button i {
    margin-top: 3px;
    font-size: 13px;
  }

  .hm-mobile .hm-sa2-postcode-box {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 2px 20px !important;
    margin: 0 0 16px !important;
    overflow: visible !important;
  }

  .hm-mobile .hm-sa2-postcode-table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    overflow: hidden !important;
  }

  .hm-mobile .hm-sa2-postcode-table th,
  .hm-mobile .hm-sa2-postcode-table td {
    max-width: none !important;
    padding: 8px 7px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    vertical-align: middle !important;
  }

  .hm-mobile .hm-sa2-postcode-table th:nth-child(2),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(2),
  .hm-mobile .hm-sa2-postcode-table th:nth-child(4),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(4),
  .hm-mobile .hm-sa2-postcode-table th:nth-child(5),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(5),
  .hm-mobile .hm-sa2-postcode-table th:nth-child(7),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(7) {
    display: none !important;
  }

  .hm-mobile .hm-sa2-postcode-table th:nth-child(1),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(1),
  .hm-mobile .hm-sa2-postcode-table th:nth-child(3),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(3),
  .hm-mobile .hm-sa2-postcode-table th:nth-child(6),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(6) {
    display: table-cell !important;
  }

  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(1),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(1),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(3),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(3),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(6),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(6) {
    display: table-cell !important;
  }

  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(2),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(2),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(4),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(4),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(5),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(5),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table th:nth-child(7),
  .hm-mobile [id^="NA_"].hm-sa2-postcode-box .hm-sa2-postcode-table td:nth-child(7) {
    display: none !important;
  }

  .hm-mobile .hm-sa2-postcode-table th:nth-child(1),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(1) {
    width: 22% !important;
    text-align: left !important;
  }

  .hm-mobile .hm-sa2-postcode-table th:nth-child(3),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(3) {
    width: 46% !important;
    text-align: left !important;
  }

  .hm-mobile .hm-sa2-postcode-table th:nth-child(6),
  .hm-mobile .hm-sa2-postcode-table td:nth-child(6) {
    width: 32% !important;
    text-align: right !important;
  }

  .hm-mobile .hm-ranking-table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: separate !important;
    border-spacing: 0 5px !important;
  }

  .hm-mobile .hm-ranking-table th,
  .hm-mobile .hm-ranking-table td {
    max-width: none !important;
    padding: 7px 6px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    vertical-align: middle !important;
  }

  .hm-mobile .hm-ranking-table .hm-state-pill {
    min-width: 32px;
    padding: 3px 7px;
    font-size: 11px;
  }

  .hm-mobile .hm-ranking-table .hm-rank-metric {
    font-size: 1.05em;
  }

  .hm-mobile .hm-ranking-table .hm-find-button {
    display: flex !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .hm-mobile .hm-ranking-table .hm-find-button a {
    display: inline-flex !important;
    flex-direction: column;
    gap: 2px;
    min-width: 44px;
    min-height: 42px;
    padding: 5px 6px !important;
    font-size: 11px !important;
    line-height: 1.05;
  }

  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent th,
  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent td,
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent th,
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent td,
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses th,
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses td,
  .hm-mobile .hm-ranking-top50suburbsgrowthunits th,
  .hm-mobile .hm-ranking-top50suburbsgrowthunits td,
  .hm-mobile .hm-ranking-top50growthhousespercent th,
  .hm-mobile .hm-ranking-top50growthhousespercent td,
  .hm-mobile .hm-ranking-top50growthunitspercent th,
  .hm-mobile .hm-ranking-top50growthunitspercent td,
  .hm-mobile .hm-ranking-top50growthhouses th,
  .hm-mobile .hm-ranking-top50growthhouses td,
  .hm-mobile .hm-ranking-top50growthunits th,
  .hm-mobile .hm-ranking-top50growthunits td,
  .hm-mobile .hm-ranking-top50yieldhouses th,
  .hm-mobile .hm-ranking-top50yieldhouses td,
  .hm-mobile .hm-ranking-top50yieldunits th,
  .hm-mobile .hm-ranking-top50yieldunits td,
  .hm-mobile .hm-ranking-top50oversupply-houses th,
  .hm-mobile .hm-ranking-top50oversupply-houses td,
  .hm-mobile .hm-ranking-top50oversupply-units th,
  .hm-mobile .hm-ranking-top50oversupply-units td,
  .hm-mobile .hm-ranking-top50oversupply-townhouses th,
  .hm-mobile .hm-ranking-top50oversupply-townhouses td,
  .hm-mobile .hm-ranking-top50urbanlandreleasensw th,
  .hm-mobile .hm-ranking-top50urbanlandreleasensw td,
  .hm-mobile .hm-ranking-top50urbanlandreleasevic th,
  .hm-mobile .hm-ranking-top50urbanlandreleasevic td,
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld th,
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld td,
  .hm-mobile .hm-ranking-top50urbanlandreleasetas th,
  .hm-mobile .hm-ranking-top50urbanlandreleasetas td,
  .hm-mobile .hm-ranking-top50urbanlandreleasesa th,
  .hm-mobile .hm-ranking-top50urbanlandreleasesa td,
  .hm-mobile .hm-ranking-top50urbanlandreleasewa th,
  .hm-mobile .hm-ranking-top50urbanlandreleasewa td,
  .hm-mobile .hm-ranking-top50urbanlandreleaseact th,
  .hm-mobile .hm-ranking-top50urbanlandreleaseact td {
    display: none !important;
  }

  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhousespercent [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunitspercent [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50suburbsgrowthhouses [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunits [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunits [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunits [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50suburbsgrowthunits [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50growthhousespercent [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50growthhousespercent [data-rank-label="postcode"],
  .hm-mobile .hm-ranking-top50growthhousespercent [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50growthhousespercent [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50growthunitspercent [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50growthunitspercent [data-rank-label="postcode"],
  .hm-mobile .hm-ranking-top50growthunitspercent [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50growthunitspercent [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50growthhouses [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50growthhouses [data-rank-label="postcode"],
  .hm-mobile .hm-ranking-top50growthhouses [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50growthhouses [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50growthunits [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50growthunits [data-rank-label="postcode"],
  .hm-mobile .hm-ranking-top50growthunits [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-top50growthunits [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50yieldhouses [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50yieldhouses [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50yieldhouses [data-rank-label="gross-yield"],
  .hm-mobile .hm-ranking-top50yieldhouses [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50yieldunits [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50yieldunits [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50yieldunits [data-rank-label="gross-yield"],
  .hm-mobile .hm-ranking-top50yieldunits [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50oversupply-houses [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50oversupply-houses [data-rank-label="region"],
  .hm-mobile .hm-ranking-top50oversupply-houses [data-rank-label="approved-dwelling-count"],
  .hm-mobile .hm-ranking-top50oversupply-houses [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50oversupply-units [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50oversupply-units [data-rank-label="region"],
  .hm-mobile .hm-ranking-top50oversupply-units [data-rank-label="approved-dwelling-count"],
  .hm-mobile .hm-ranking-top50oversupply-units [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50oversupply-townhouses [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50oversupply-townhouses [data-rank-label="region"],
  .hm-mobile .hm-ranking-top50oversupply-townhouses [data-rank-label="approved-dwelling-count"],
  .hm-mobile .hm-ranking-top50oversupply-townhouses [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleasensw [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleasensw [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasensw [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasensw [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleasevic [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleasevic [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasevic [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasevic [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseqld [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleasetas [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleasetas [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasetas [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasetas [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleasesa [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleasesa [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasesa [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasesa [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleasewa [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleasewa [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasewa [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleasewa [data-rank-label="find"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseact [data-rank-label="state"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseact [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseact [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"],
  .hm-mobile .hm-ranking-top50urbanlandreleaseact [data-rank-label="find"] {
    display: table-cell !important;
  }

  .hm-mobile .hm-ranking-table [data-rank-label="state"] {
    width: 17% !important;
  }

  .hm-mobile .hm-ranking-table [data-rank-label="suburb"],
  .hm-mobile .hm-ranking-table [data-rank-label="postcode"],
  .hm-mobile .hm-ranking-table [data-rank-label="region"] {
    width: 37% !important;
  }

  .hm-mobile .hm-ranking-table [data-rank-label^="price-growth"],
  .hm-mobile .hm-ranking-table [data-rank-label="gross-yield"],
  .hm-mobile .hm-ranking-table [data-rank-label="approved-dwelling-count"],
  .hm-mobile .hm-ranking-table [data-rank-label="share-of-urban-release-land-from-the-total-area-of-a-suburb"] {
    width: 30% !important;
    text-align: right !important;
  }

  .hm-mobile .hm-ranking-table [data-rank-label="find"] {
    width: 16% !important;
    text-align: center !important;
  }

  table {
    max-width: 100%;
  }

  /* Brevo / "Update me" form: testing-only mobile layout */
  .hm-mobile .sib-form,
  .hm-mobile #sib-form-container,
  .hm-mobile #sib-container {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .hm-mobile #sib-container {
    padding: 10px 12px !important;
  }

  .hm-mobile #sib-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .hm-mobile #sib-form > div {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
  }

  .hm-mobile #sib-form > div:nth-child(8),
  .hm-mobile #sib-form > div:nth-child(9) {
    display: block !important;
    align-items: initial !important;
  }

  .hm-mobile #sib-container .entry__label {
    font-size: 13px !important;
    margin-bottom: 4px !important;
  }

  .hm-mobile #sib-container .form__entry,
  .hm-mobile #sib-container .entry_block,
  .hm-mobile #sib-container .form__label-row,
  .hm-mobile #sib-container .entry__field,
  .hm-mobile #sib-container .sib-input,
  .hm-mobile #sib-container .sib-form-block,
  .hm-mobile #sib-container .sib-sms-field,
  .hm-mobile #sib-container .sib-sms-input-wrapper,
  .hm-mobile #sib-container .sib-sms-input {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .hm-mobile #sib-container .input {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 8px 10px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
  }

  .hm-mobile #sib-container .sib-sms-input-wrapper {
    display: block !important;
    flex-wrap: initial !important;
  }

  .hm-mobile #sib-container .sib-sms-input {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
  }

  .hm-mobile #sib-container .sib-sms-input .entry__field:first-child {
    width: 92px !important;
  }

  .hm-mobile #sib-container .sib-sms-input select.input {
    padding-left: 6px !important;
    padding-right: 4px !important;
    text-overflow: ellipsis;
  }

  .hm-mobile #sib-form .sib-captcha {
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
    margin: 2px 0 0 0 !important;
    overflow: hidden !important;
  }

  .hm-mobile #sib-form .g-recaptcha {
    transform: scale(0.86) !important;
    transform-origin: left top !important;
    min-height: 68px;
  }

  .hm-mobile #sib-form label[style*="cursor:pointer"] {
    display: flex !important;
    gap: 10px;
    align-items: center;
    font-size: 14px !important;
    line-height: 1.35 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .hm-mobile #sib-form #sib-agree {
    width: 22px;
    height: 22px;
    margin: 0 !important;
    flex: 0 0 22px;
  }

  .hm-mobile #sib-form label[style*="cursor:pointer"] a {
    display: inline !important;
    white-space: nowrap;
  }

  .hm-mobile #sib-form button[type="submit"] {
    width: 100% !important;
    min-height: 44px !important;
    padding: 10px 16px !important;
    font-size: 15px !important;
  }

  .hm-mobile #sib-form > div:nth-child(9) {
    margin-top: 36px !important;
  }

  .hm-mobile .container1:has(#sib-form),
  .hm-mobile .dougnut_div:has(#sib-form) {
    height: auto !important;
    min-height: 705px !important;
    overflow: visible !important;
  }

  .hm-mobile .div50:has(#sib-form),
  .hm-mobile .div100:has(#sib-form),
  .hm-mobile #PS_DoughnutChartDivN9,
  .hm-mobile #PG_DoughnutChartDivN9,
  .hm-mobile #YI_DoughnutChartDivN9,
  .hm-mobile #RS_DoughnutChartDivN9,
  .hm-mobile #DOM_DoughnutChartDivN9,
  .hm-mobile #NA_DoughnutChartDivN9,
  .hm-mobile #AS_DoughnutChartDivN9 {
    height: auto !important;
    min-height: 735px !important;
    overflow: visible !important;
    clear: both !important;
  }

  .hm-mobile div[id$="_doughnut_simple_box_N9"] {
    display: block;
    width: 100% !important;
    min-height: 680px !important;
    overflow: visible !important;
  }

  .hm-mobile #sib-form-container {
    min-height: 620px !important;
  }
}

@media screen and (max-width: 420px) {
  .linechart_div {
    height: 385px;
    min-height: 385px;
  }

  .dougnut_div {
    height: 285px;
    min-height: 285px;
  }

  .map {
    height: clamp(560px, 70vh, 720px);
    min-height: 560px;
  }
}
