@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap");


/* =========================================
   BASE
========================================= */

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;

  background: #f3f1ec;

  color: #111;

  font-family:
    "DM Sans",
    sans-serif;
}

a {
  color: inherit;

  text-decoration: none;
}

button {
  font: inherit;
}


/* =========================================
   HEADER
========================================= */

.market-header {
  height: 90px;

  padding: 0 4vw;

  display: grid;

  grid-template-columns:
    1fr
    auto
    1fr;

  align-items: center;

  background: #111;

  color: white;
}


.market-brand {
  display: flex;

  flex-direction: column;
}


.market-brand span {
  font-size: 16px;

  font-weight: 600;

  letter-spacing: 0.13em;
}


.market-brand small {
  margin-top: 5px;

  font-size: 7px;

  letter-spacing: 0.25em;

  opacity: 0.7;
}


.market-header nav {
  display: flex;

  gap: 30px;
}


.market-header nav a {
  font-size: 10px;

  letter-spacing: 0.12em;

  text-transform: uppercase;

  opacity: 0.65;

  transition:
    opacity
    0.2s ease;
}


.market-header nav a:hover,
.market-header nav .active {
  opacity: 1;
}


.market-contact {
  justify-self: end;

  padding-bottom: 4px;

  border-bottom:
    1px solid white;

  font-size: 10px;

  letter-spacing: 0.14em;
}


/* =========================================
   HERO
========================================= */

.market-hero {
  padding:
    120px
    7vw
    70px;

  background: #111;

  color: white;
}


.market-eyebrow {
  margin:
    0
    0
    35px;

  color: #999;

  font-size: 9px;

  letter-spacing: 0.25em;
}


.market-hero h1 {
  max-width: 1000px;

  margin: 0;

  font-size:
    clamp(
      75px,
      11vw,
      170px
    );

  line-height: 0.8;

  font-weight: 300;

  letter-spacing: -0.065em;
}


.market-hero h1 span {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-style: italic;

  font-weight: 500;
}


.market-hero-bottom {
  margin-top: 80px;

  padding-top: 28px;

  display: flex;

  justify-content: space-between;

  align-items: flex-end;

  border-top:
    1px solid #333;
}


.market-hero-bottom > p {
  max-width: 440px;

  margin: 0;

  color: #bbb;

  font-family:
    "Playfair Display",
    serif;

  font-size: 19px;

  line-height: 1.5;
}


.market-location {
  display: flex;

  flex-direction: column;

  align-items: flex-end;
}


.market-location > span {
  color: #666;

  font-size: 8px;

  letter-spacing: 0.2em;
}


.market-location button {
  margin-top: 10px;

  padding:
    0
    0
    6px;

  background: transparent;

  border: 0;

  border-bottom:
    1px solid #777;

  color: white;

  cursor: pointer;

  letter-spacing: 0.08em;
}


/* =========================================
   LOCATION DROPDOWN
========================================= */

.market-location-menu {
  position: absolute;

  z-index: 1000;

  display: none;

  min-width: 220px;

  padding: 8px;

  background: #111;

  border:
    1px solid #333;

  box-shadow:
    0 18px 50px
    rgba(
      0,
      0,
      0,
      0.25
    );
}


.market-location-menu button {
  width: 100%;

  padding:
    13px
    15px;

  display: block;

  background: transparent;

  border: 0;

  color: #aaa;

  text-align: left;

  cursor: pointer;

  font-size: 10px;

  letter-spacing: 0.1em;

  transition:
    background
    0.18s ease,
    color
    0.18s ease;
}


.market-location-menu button:hover {
  background: #222;

  color: white;
}


/* =========================================
   DASHBOARD
========================================= */

.market-dashboard {
  padding:
    100px
    7vw
    130px;
}


.dashboard-heading {
  display: flex;

  align-items: flex-end;

  justify-content: space-between;
}


.dashboard-kicker {
  margin:
    0
    0
    13px;

  color: #777;

  font-size: 9px;

  letter-spacing: 0.2em;
}


.dashboard-heading h2 {
  margin: 0;

  font-size:
    clamp(
      55px,
      6vw,
      95px
    );

  font-weight: 300;

  letter-spacing: -0.06em;
}


.dashboard-updated {
  display: flex;

  flex-direction: column;

  text-align: right;
}


.dashboard-updated span {
  color: #999;

  font-size: 8px;

  letter-spacing: 0.18em;
}


.dashboard-updated strong {
  margin-top: 7px;

  font-size: 10px;

  letter-spacing: 0.12em;
}


/* =========================================
   PRIMARY MARKET STATS
========================================= */

.market-stat-grid {
  margin-top: 60px;

  display: grid;

  grid-template-columns:
    repeat(
      3,
      1fr
    );

  border-top:
    1px solid #cbc7bf;

  border-left:
    1px solid #cbc7bf;
}


.market-stat-card {
  min-height: 225px;

  padding:
    30px
    28px;

  display: flex;

  flex-direction: column;

  border-right:
    1px solid #cbc7bf;

  border-bottom:
    1px solid #cbc7bf;

  transition:
    background
    0.2s ease;
}


.market-stat-card:hover {
  background: #f8f6f1;
}


.market-stat-label {
  color: #777;

  font-size: 8px;

  letter-spacing: 0.18em;
}


.market-stat-value {
  margin-top: auto;

  font-size:
    clamp(
      42px,
      4.5vw,
      72px
    );

  line-height: 1;

  font-weight: 300;

  letter-spacing: -0.055em;
}


.market-stat-change {
  margin-top: 13px;

  color: #999;

  font-size: 9px;

  letter-spacing: 0.1em;
}


/* =========================================
   VERIFIED DATA PENDING
========================================= */

.market-data-pending {
  margin-top: 80px;

  padding:
    80px
    6vw;

  background:
    linear-gradient(
      135deg,
      #f6f3ed 0%,
      #ebe6dd 100%
    );

  border-top:
    1px solid
    rgba(
      17,
      17,
      17,
      0.1
    );

  border-bottom:
    1px solid
    rgba(
      17,
      17,
      17,
      0.1
    );
}


.market-data-eyebrow {
  display: block;

  margin-bottom: 26px;

  color:
    rgba(
      17,
      17,
      17,
      0.52
    );

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.22em;
}


.market-data-pending h2 {
  max-width: 900px;

  margin: 0;

  color: #111;

  font-family:
    "Playfair Display",
    serif;

  font-size:
    clamp(
      42px,
      5.5vw,
      82px
    );

  line-height: 0.95;

  font-weight: 500;

  letter-spacing: -0.045em;
}


.market-data-pending h2 em {
  display: block;

  margin-top: 7px;

  font-weight: 500;
}


.market-data-pending > p {
  max-width: 670px;

  margin:
    34px
    0
    0;

  color:
    rgba(
      17,
      17,
      17,
      0.66
    );

  font-size: 14px;

  line-height: 1.8;
}


.market-data-pending > p + p {
  margin-top: 10px;
}


.market-data-actions {
  margin-top: 38px;

  display: flex;

  flex-wrap: wrap;

  gap: 14px;
}


.market-data-primary,
.market-data-secondary {
  min-height: 52px;

  padding:
    0
    22px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.15em;

  transition:
    0.2s ease;
}


.market-data-primary {
  background: #111;

  border:
    1px solid #111;

  color: white;
}


.market-data-primary:hover {
  background: #2d2d2d;
}


.market-data-secondary {
  border:
    1px solid
    rgba(
      17,
      17,
      17,
      0.25
    );

  color: #111;
}


.market-data-secondary:hover {
  border-color: #111;
}


/* =========================================
   PRICE MOVEMENT CHART
========================================= */

.market-chart-section {
  margin-top: 110px;

  padding:
    55px
    0
    0;

  border-top:
    1px solid #cbc7bf;
}


.market-chart-heading {
  display: flex;

  align-items: flex-end;

  justify-content: space-between;

  gap: 40px;
}


.market-chart-heading span {
  display: block;

  margin-bottom: 17px;

  color: #777;

  font-size: 8px;

  letter-spacing: 0.2em;
}


.market-chart-heading h2 {
  margin: 0;

  font-size:
    clamp(
      48px,
      6vw,
      85px
    );

  line-height: 0.9;

  font-weight: 300;

  letter-spacing: -0.055em;
}


.market-chart-heading h2 em {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-weight: 500;
}


.market-range-controls {
  display: flex;

  gap: 6px;
}


.market-range-controls button {
  min-width: 48px;

  height: 36px;

  padding:
    0
    12px;

  background: transparent;

  border:
    1px solid #cbc7bf;

  color: #777;

  cursor: pointer;

  font-size: 9px;

  letter-spacing: 0.08em;

  transition:
    0.2s ease;
}


.market-range-controls button:hover,
.market-range-controls button.active {
  background: #111;

  border-color: #111;

  color: white;
}


.market-chart-empty {
  min-height: 430px;

  margin-top: 45px;

  padding: 45px;

  display: flex;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  background: #faf9f6;

  border:
    1px solid #d7d3cb;

  text-align: center;
}


.market-chart-empty > span {
  color: #777;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.18em;
}


.market-chart-empty p {
  max-width: 430px;

  margin:
    18px
    0
    0;

  color: #888;

  font-family:
    "Playfair Display",
    serif;

  font-size: 17px;

  line-height: 1.6;
}


/* =========================================
   MARKET BALANCE
========================================= */

.market-condition-section {
  margin-top: 110px;

  padding:
    90px
    0;

  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 9vw;

  border-top:
    1px solid #cbc7bf;

  border-bottom:
    1px solid #cbc7bf;
}


.market-condition-copy > span {
  color: #777;

  font-size: 8px;

  letter-spacing: 0.2em;
}


.market-condition-copy h2 {
  margin:
    20px
    0
    0;

  font-size:
    clamp(
      50px,
      6vw,
      90px
    );

  line-height: 0.9;

  font-weight: 300;

  letter-spacing: -0.055em;
}


.market-condition-copy h2 em {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-weight: 500;
}


.market-condition-copy p {
  max-width: 540px;

  margin:
    35px
    0
    0;

  font-family:
    "Playfair Display",
    serif;

  font-size: 18px;

  line-height: 1.6;
}


.market-balance-panel {
  align-self: center;
}


.market-balance-labels {
  display: flex;

  justify-content: space-between;

  color: #777;

  font-size: 8px;

  letter-spacing: 0.15em;
}


.market-balance-track {
  position: relative;

  height: 4px;

  margin-top: 20px;

  background:
    linear-gradient(
      90deg,
      #aaa,
      #111 50%,
      #aaa
    );
}


.market-balance-indicator {
  position: absolute;

  top: 50%;

  left: 50%;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  background: #111;

  border:
    4px solid #f3f1ec;

  box-shadow:
    0
    0
    0
    1px #111;

  transform:
    translate(
      -50%,
      -50%
    );
}


.market-balance-status {
  display: block;

  margin-top: 30px;

  color: #888;

  font-size: 10px;

  font-weight: 500;

  letter-spacing: 0.13em;
}


/* =========================================
   MARKET ACTIVITY
========================================= */

.market-activity-section {
  padding-top: 110px;
}


.market-data-preview-heading {
  max-width: 780px;

  margin-bottom: 60px;
}


.market-data-preview-heading > span {
  display: block;

  margin-bottom: 18px;

  color:
    rgba(
      17,
      17,
      17,
      0.5
    );

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.22em;
}


.market-data-preview-heading h2 {
  margin: 0;

  font-family:
    "Playfair Display",
    serif;

  font-size:
    clamp(
      38px,
      4.5vw,
      68px
    );

  line-height: 0.98;

  font-weight: 500;

  letter-spacing: -0.035em;
}


.market-data-preview-heading h2 em {
  display: block;
}


.market-metric-grid {
  display: grid;

  grid-template-columns:
    repeat(
      3,
      minmax(
        0,
        1fr
      )
    );

  border-top:
    1px solid
    rgba(
      17,
      17,
      17,
      0.14
    );

  border-left:
    1px solid
    rgba(
      17,
      17,
      17,
      0.14
    );
}


.market-metric-grid article {
  min-height: 260px;

  padding:
    38px
    34px;

  border-right:
    1px solid
    rgba(
      17,
      17,
      17,
      0.14
    );

  border-bottom:
    1px solid
    rgba(
      17,
      17,
      17,
      0.14
    );
}


.market-metric-grid article > span {
  display: block;

  margin-bottom: 32px;

  color:
    rgba(
      17,
      17,
      17,
      0.45
    );

  font-size: 8px;

  font-weight: 600;

  letter-spacing: 0.2em;
}


.market-metric-grid h3 {
  margin: 0;

  color: #111;

  font-family:
    "Playfair Display",
    serif;

  font-size:
    clamp(
      28px,
      3vw,
      45px
    );

  font-weight: 500;
}


.market-metric-grid p {
  margin:
    18px
    0
    0;

  color:
    rgba(
      17,
      17,
      17,
      0.62
    );

  font-size: 13px;

  line-height: 1.75;
}


/* =========================================
   LOCAL MARKET DIRECTORY
========================================= */

.compare-section {
  padding-top: 120px;
}


.compare-heading {
  display: grid;

  grid-template-columns:
    1.2fr
    0.8fr;

  align-items: flex-end;

  gap: 80px;
}


.compare-heading span {
  color: #777;

  font-size: 8px;

  letter-spacing: 0.2em;
}


.compare-heading h2 {
  margin:
    20px
    0
    0;

  font-size:
    clamp(
      50px,
      6vw,
      90px
    );

  line-height: 0.9;

  font-weight: 300;

  letter-spacing: -0.055em;
}


.compare-heading h2 em {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-weight: 500;
}


.compare-heading > p {
  max-width: 430px;

  margin: 0;

  font-family:
    "Playfair Display",
    serif;

  font-size: 18px;

  line-height: 1.6;
}


.market-table {
  margin-top: 60px;
}


.table-row {
  min-height: 77px;

  padding:
    0
    20px;

  display: grid;

  grid-template-columns:
    1.4fr
    1fr
    auto;

  align-items: center;

  border-bottom:
    1px solid #d1cec8;

  transition:
    background
    0.2s ease;
}


a.table-row:hover {
  background: white;
}


.table-row span,
.table-row strong {
  font-size: 12px;

  font-weight: 400;
}


.table-row strong {
  font-size: 17px;
}


.table-row span:last-child {
  text-align: right;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.14em;
}


.table-header {
  min-height: 45px;
}


.table-header span {
  color: #888;

  font-size: 8px;

  letter-spacing: 0.13em;
}


.market-all-areas {
  margin-top: 30px;

  display: inline-flex;

  padding-bottom: 5px;

  border-bottom:
    1px solid #111;

  color: #111;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.15em;
}


/* =========================================
   MARKET CONTEXT
========================================= */

.market-temperature {
  padding:
    100px
    7vw;

  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 9vw;

  background: #ebe7df;

  border-top:
    1px solid #cbc7bf;

  border-bottom:
    1px solid #cbc7bf;
}


.temperature-copy > span {
  color: #777;

  font-size: 8px;

  letter-spacing: 0.2em;
}


.temperature-copy h2 {
  margin:
    20px
    0
    0;

  font-size:
    clamp(
      50px,
      6vw,
      90px
    );

  line-height: 0.9;

  font-weight: 300;

  letter-spacing: -0.055em;
}


.temperature-copy h2 em {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-weight: 500;
}


.temperature-copy p {
  max-width: 540px;

  margin:
    35px
    0
    0;

  font-family:
    "Playfair Display",
    serif;

  font-size: 18px;

  line-height: 1.6;
}


.market-context-copy {
  max-width: 560px;

  align-self: center;
}


.market-context-copy p {
  margin:
    0
    0
    20px;

  color:
    rgba(
      17,
      17,
      17,
      0.67
    );

  font-size: 14px;

  line-height: 1.85;
}


/* =========================================
   CTA
========================================= */

.market-cta {
  padding:
    130px
    7vw;

  background: #d8d4cc;

  border-bottom:
    1px solid
    rgba(
      17,
      17,
      17,
      0.12
    );
}


.market-cta:nth-of-type(even) {
  background: #e5e1d9;
}


.market-cta p {
  margin:
    0
    0
    25px;

  font-size: 9px;

  letter-spacing: 0.2em;
}


.market-cta h2 {
  max-width: 1000px;

  margin: 0;

  font-size:
    clamp(
      60px,
      8vw,
      125px
    );

  line-height: 0.9;

  font-weight: 300;

  letter-spacing: -0.06em;
}


.market-cta h2 em {
  display: block;

  font-family:
    "Playfair Display",
    serif;

  font-weight: 500;
}


.market-cta a {
  margin-top: 50px;

  padding-bottom: 6px;

  display: inline-block;

  border-bottom:
    1px solid #111;

  font-size: 10px;

  letter-spacing: 0.14em;
}


/* =========================================
   FOOTER
========================================= */

.market-footer-main {
  padding:
    60px
    7vw;

  display: grid;

  grid-template-columns:
    1fr
    auto
    auto;

  gap: 70px;

  background: #111;

  color: #888;

  font-size: 9px;
}


.market-footer-main > div {
  display: flex;

  flex-direction: column;

  gap: 9px;
}


.market-footer-main strong {
  color: white;

  font-size: 15px;

  letter-spacing: 0.12em;
}


.market-footer-main span {
  letter-spacing: 0.1em;
}


.market-footer-main a {
  transition:
    color
    0.2s ease;
}


.market-footer-main a:hover {
  color: white;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

  .market-header {
    grid-template-columns:
      1fr
      auto;
  }


  .market-header nav {
    display: none;
  }


  .market-stat-grid {
    grid-template-columns:
      repeat(
        2,
        1fr
      );
  }


  .market-condition-section,
  .market-temperature,
  .compare-heading {
    grid-template-columns:
      1fr;
  }


  .market-condition-section {
    gap: 70px;
  }


  .market-temperature {
    gap: 60px;
  }


  .compare-heading {
    gap: 35px;
  }


  .market-metric-grid {
    grid-template-columns:
      repeat(
        2,
        minmax(
          0,
          1fr
        )
      );
  }


  .market-footer-main {
    grid-template-columns:
      1fr
      1fr;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

  .market-header {
    height: 75px;

    padding:
      0
      22px;
  }


  .market-contact {
    font-size: 8px;
  }


  .market-hero {
    padding:
      85px
      24px
      55px;
  }


  .market-hero h1 {
    font-size:
      clamp(
        58px,
        18vw,
        78px
      );
  }


  .market-hero-bottom {
    margin-top: 55px;

    flex-direction: column;

    align-items: flex-start;

    gap: 45px;
  }


  .market-location {
    align-items: flex-start;
  }


  .market-dashboard {
    padding:
      70px
      24px
      90px;
  }


  .dashboard-heading {
    flex-direction: column;

    align-items: flex-start;

    gap: 30px;
  }


  .dashboard-updated {
    text-align: left;
  }


  .market-stat-grid {
    grid-template-columns:
      1fr;
  }


  .market-stat-card {
    min-height: 185px;
  }


  .market-data-pending {
    margin-top: 60px;

    padding:
      60px
      24px;
  }


  .market-data-pending h2 {
    font-size: 42px;
  }


  .market-data-actions {
    flex-direction: column;
  }


  .market-data-primary,
  .market-data-secondary {
    width: 100%;
  }


  .market-chart-section {
    margin-top: 80px;
  }


  .market-chart-heading {
    flex-direction: column;

    align-items: flex-start;
  }


  .market-range-controls {
    width: 100%;
  }


  .market-range-controls button {
    flex: 1;
  }


  .market-chart-empty {
    min-height: 300px;

    padding:
      35px
      24px;
  }


  .market-condition-section {
    margin-top: 80px;

    padding:
      70px
      0;
  }


  .market-condition-copy h2,
  .compare-heading h2,
  .temperature-copy h2 {
    font-size: 50px;
  }


  .market-activity-section,
  .compare-section {
    padding-top: 80px;
  }


  .market-metric-grid {
    grid-template-columns:
      1fr;
  }


  .market-metric-grid article {
    min-height: auto;
  }


  .market-directory-table
  .table-row {
    grid-template-columns:
      1.3fr
      auto;
  }


  .market-directory-table
  .table-row > span:nth-child(2) {
    display: none;
  }


  .market-directory-table
  .table-header > span:nth-child(2) {
    display: none;
  }


  .market-temperature {
    padding:
      75px
      24px;
  }


  .market-cta {
    padding:
      90px
      24px;
  }


  .market-cta h2 {
    font-size: 55px;
  }


  .market-footer-main {
    padding:
      50px
      24px;

    grid-template-columns:
      1fr;

    gap: 35px;
  }

}
/* =========================================
   MARKET WATCH BUTTON
========================================= */

.market-watch-button {
  margin-top: 50px;

  padding:
    0
    0
    6px;

  display: inline-block;

  background: transparent;

  border: 0;

  border-bottom:
    1px solid #111;

  color: #111;

  cursor: pointer;

  font-size: 10px;

  letter-spacing: 0.14em;
}


.market-watch-button:hover {
  opacity: 0.6;
}


.market-watch-button:disabled {
  cursor: default;

  opacity: 0.45;
}


.market-watch-message {
  margin:
    25px
    0
    0;

  font-size: 10px;

  font-weight: 500;

  letter-spacing: 0.12em;
}
/* Stellar MLS compliance: brokerage must be readily visible with site branding. */
.brand-brokerage {
  display: block;
  margin-top: 5px;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.25;
  opacity: 0.9;
}

@media (max-width: 700px) {
  .brand-brokerage {
    margin-top: 3px;
    font-size: 5px;
    letter-spacing: 0.08em;
  }
}
/* =========================================
   FINAL STELLAR / YELLOWTAIL MARKET PAGE
========================================= */


/* =========================================
   HEADER BROKERAGE IDENTITY
========================================= */

.market-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.market-brand .brokerage-name {
  display: block;

  color: #fff;

  font-size: 9px;
  font-weight: 600;
  line-height: 1.3;

  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.market-brand .agent-name {
  display: block;

  margin-top: 4px;

  color: rgba(255, 255, 255, 0.82);

  font-size: 7px;
  font-weight: 500;
  line-height: 1.3;

  letter-spacing: 0.07em;
  text-transform: uppercase;
}


/* =========================================
   BROKERAGE DISCLOSURE
========================================= */

.stellar-brokerage-disclosure {
  position: relative;
  z-index: 95;

  width: 100%;

  display: grid;

  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto;

  align-items: center;

  gap: 24px;

  padding:
    15px
    4vw;

  border-bottom:
    1px solid
    rgba(
      17,
      17,
      17,
      0.14
    );

  background: #fff;

  color: #111;
}

.stellar-brokerage-logo {
  display: block;

  width: 145px;

  max-width: 100%;

  height: auto;
}

.stellar-brokerage-identity {
  display: flex;

  flex-direction: column;

  gap: 3px;

  min-width: 0;
}

.stellar-brokerage-identity strong {
  font-size: 12px;

  font-weight: 600;

  line-height: 1.35;
}

.stellar-brokerage-identity span {
  color:
    rgba(
      17,
      17,
      17,
      0.68
    );

  font-size: 9px;

  line-height: 1.45;
}

.stellar-brokerage-contact {
  display: flex;

  flex-direction: column;

  align-items: flex-end;

  gap: 3px;

  text-align: right;
}

.stellar-brokerage-contact a,
.stellar-brokerage-contact span {
  color: #111;

  font-size: 9px;

  line-height: 1.45;
}

.stellar-brokerage-contact a {
  text-decoration: underline;

  text-underline-offset: 2px;
}


/* =========================================
   FOOTER
========================================= */

.market-footer-main {
  padding:
    60px
    7vw;

  display: grid;

  grid-template-columns:
    1fr
    auto
    1fr;

  gap: 60px;

  align-items: start;

  background: #111;

  color: #888;

  font-size: 9px;
}

.market-footer-main > div {
  display: flex;

  flex-direction: column;

  gap: 7px;
}

.market-footer-main > div:first-child strong {
  color: white;

  font-size: 15px;

  letter-spacing: 0.12em;
}

.market-footer-main > div:first-child span {
  color: #888;

  font-size: 8px;

  letter-spacing: 0.1em;
}

.market-footer-main > div:nth-child(2) {
  min-width: 120px;
}

.market-footer-main > div:nth-child(2) a {
  color: #aaa;

  font-size: 9px;

  line-height: 1.45;
}

.market-footer-main > div:nth-child(2) a:hover {
  color: white;
}

.market-footer-brokerage {
  justify-self: end;

  align-items: flex-end;

  text-align: right;
}

.market-footer-brokerage strong {
  color: white;

  font-size: 11px;

  font-weight: 600;

  letter-spacing: 0.04em;
}

.market-footer-brokerage span,
.market-footer-brokerage a {
  color: #888;

  font-size: 8px;

  line-height: 1.45;
}

.market-footer-brokerage a:hover {
  color: white;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

  .stellar-brokerage-disclosure {
    grid-template-columns:
      auto
      1fr;

    gap: 16px;
  }

  .stellar-brokerage-contact {
    grid-column:
      1
      /
      -1;

    flex-direction: row;

    flex-wrap: wrap;

    align-items: flex-start;

    gap:
      6px
      18px;

    text-align: left;
  }

  .market-footer-main {
    grid-template-columns:
      1fr
      1fr;

    gap: 30px;
  }

  .market-footer-brokerage {
    grid-column:
      1
      /
      -1;

    justify-self: start;

    align-items: flex-start;

    text-align: left;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

  .market-brand .brokerage-name {
    font-size: 7px;

    letter-spacing: 0.055em;
  }

  .market-brand .agent-name {
    font-size: 6px;

    letter-spacing: 0.045em;
  }

  .stellar-brokerage-disclosure {
    grid-template-columns: 1fr;

    gap: 10px;

    padding:
      14px
      22px;
  }

  .stellar-brokerage-logo {
    width: 125px;
  }

  .stellar-brokerage-contact {
    grid-column: auto;

    flex-direction: column;

    align-items: flex-start;

    gap: 3px;

    text-align: left;
  }

  .stellar-brokerage-identity strong {
    font-size: 11px;
  }

  .stellar-brokerage-identity span,
  .stellar-brokerage-contact a,
  .stellar-brokerage-contact span {
    font-size: 8px;
  }

  .market-footer-main {
    grid-template-columns: 1fr;

    gap: 28px;

    padding:
      50px
      24px;
  }

  .market-footer-brokerage {
    grid-column: auto;

    justify-self: start;

    align-items: flex-start;

    text-align: left;
  }

}

/* LIVE LOCAL MARKET ANALYTICS */
.market-chart-controls-wrap{display:flex;flex-direction:column;gap:12px;align-items:flex-end}
.market-segment-controls{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.market-segment-controls button{border:1px solid #c9c5bc;background:transparent;padding:9px 12px;font-size:10px;letter-spacing:.08em;cursor:pointer}
.market-segment-controls button.active{background:#111;color:#fff;border-color:#111}
.live-chart-summary{display:flex;justify-content:space-between;gap:16px;padding:14px 16px 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
#marketPriceChart svg{width:100%;height:auto;display:block;padding:0 8px 6px}
.chart-method-note{padding:0 18px 18px!important;font-size:12px!important;color:#777!important;text-align:left!important}
@media(max-width:800px){.market-chart-controls-wrap{align-items:flex-start}.market-segment-controls{justify-content:flex-start}.live-chart-summary{flex-direction:column}.market-chart-heading{align-items:flex-start!important}}



/* V23 Market Intelligence reliability */
#marketDataPending[hidden] { display:none !important; }
.market-methodology-note {
  margin: 18px auto 0;
  max-width: 1180px;
  padding: 0 4vw;
  color: #666;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: .02em;
}

/* V56 readable sold $/sq-ft chart */
.market-chart-empty{align-items:stretch;justify-content:center;text-align:left;padding:28px 34px 22px;overflow:hidden}
.market-chart-empty svg{display:block;width:100%;height:auto;min-height:360px}
.market-live-chart-header{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding:4px 8px 6px;color:#111}
.market-live-chart-header strong{font-family:"Playfair Display",serif;font-size:20px;font-weight:500}
.market-live-chart-header span,.market-chart-footnote{color:#777;font-size:10px;letter-spacing:.06em}
.market-chart-footnote{padding:4px 8px 0;line-height:1.5}
.market-balance-indicator{transition:left .45s ease}
@media(max-width:700px){.market-chart-empty{padding:16px 12px}.market-chart-empty svg{min-height:300px}.market-live-chart-header{flex-direction:column;gap:4px}}

.market-chart-empty{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;background:#fff}.market-chart-empty strong{font:600 clamp(38px,6vw,64px)/1 "DM Sans",sans-serif;letter-spacing:-.04em}.market-chart-empty p{max-width:560px;margin:14px auto 0;color:#6f6b65;font-size:12px;line-height:1.55}


/* V73 MARKET TREND + 30-DAY MOM */
#marketPriceChart{min-height:390px!important;display:block!important;text-align:left!important;align-items:initial!important;justify-content:initial!important;padding:24px 28px!important}.market-live-chart-header{display:flex!important}.market-live-chart-header strong{font-size:18px}.market-mom{margin-top:10px;font:800 9px/1.3 sans-serif;letter-spacing:.09em}.market-mom.up{color:#14783c}.market-mom.down{color:#b42d24}.market-mom.neutral{color:#777}.market-metric-grid article h3{margin-bottom:0}.market-chart-footnote{text-align:left!important}.market-point circle{cursor:pointer}
@media(max-width:700px){#marketPriceChart{min-height:330px!important;padding:18px 10px!important}.market-mom{font-size:8px;letter-spacing:.07em}}
