.building-info * {
  font-family: "Roboto", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Main content */
.building-page-content {
  display: flex;
  flex-direction: row;
  gap: 60px;
  width: 100%;

  .building-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 32px;

    .building-info-header {
      display: flex;
      flex-direction: column;
      gap: 40px;

      img {
        aspect-ratio: 16 / 9;
        object-fit: cover;
        object-position: center;
        height: auto !important;
        max-height: 100%;
        width: 100%;
      }

      .building-info-title {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;

        .building-price-range {
          width: 100%;

          p {
            color: #6449e7;
            font-weight: 700;
            font-size: 20px;
            text-align: right;
            line-height: 32px;
            white-space: nowrap;
          }
        }
      }
    }

    .building-info-details {
      display: flex;
      flex-direction: column;
      gap: 44px;
      background-color: #fff;
      padding: 32px;

      .building-info-details-section {
        display: flex;
        flex-direction: column;
        gap: 32px;

        .building-info-details-section-title {
          font-size: 20px;
          font-weight: 700;
          letter-spacing: 0.5px;
        }

        .building-info-map {
          aspect-ratio: 700 / 190;
          object-fit: cover;
          object-position: center;
          height: auto !important;
          max-height: 100%;
          max-width: 100%;
          background-color: #ccc;

          #building-map-container {
            width: 100%;
            height: 100%;
          }
        }
      }
    }
  }

  .side-info {
    width: 380px;

    .estimates-widget {
      display: flex;
      flex-direction: column;
      gap: 24px;

      img {
        width: 100%;
        height: auto;
        aspect-ratio: 17 / 8;
        object-fit: cover;
        object-position: center;
      }

      .widget-title {
        margin-bottom: 16px;
      }
    }
  }
}

.building-info-details {
  display: flex;
  flex-direction: column;
  gap: 44px;
  background-color: #fff;
  padding: 32px;
}

.building-info-details .building-info-details-section {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

@media screen and (max-width: 1200px) {
  .building-page-content {
    flex-direction: column;

    .side-info {
      display: none;
    }
  }
}

@media screen and (max-width: 1024px) {
  .building-page-content {
    padding: 0;

    .building-info {
      flex: 1;

      .building-info-header {
        padding: 12px;

        .building-info-image {
          margin-left: -12px;
          margin-right: -12px;
        }
      }

      .building-info-details {
        padding: 12px;

        .building-info-details-section {
          .building-info-map {
            aspect-ratio: 7 / 3;
          }
        }
      }
    }
  }

  .building-info-title {
    gap: 10px;
  }

  .building-page-content .side-info {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .building-page-content {
    .building-info {
      .building-info-header {
        .building-info-title {
          gap: 10px;
          flex-direction: column;

          .building-price-range {
            p {
              font-size: 16px;
              text-align: left;
            }
          }
        }
      }

      .building-info-details {
        .building-info-details-section {
          .building-info-map {
            aspect-ratio: 3 / 2;
          }
        }
      }
    }
  }

  .building-page-content .side-info {
    width: 100%;
  }
}
