/* Property report and print rules. Loaded with media=print to avoid blocking screen rendering. */

.property-print-sheet {
  width: 210mm;
  height: auto;
  max-height: none;
  overflow: visible;
}

.property-print-page {
  position: relative;
  display: flex;
  width: 196mm;
  height: 270mm;
  flex-direction: column;
  gap: 4mm;
  overflow: hidden;
  border: 1px solid #ded4c5;
  background: #fffdfa;
  padding: 8mm;
  color: #201913;
  font-family: var(--font-matter-override, var(--font-matter)), sans-serif;
}

.property-print-page-header,
.property-print-page-footer {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
}

.property-print-page-header {
  min-height: 11mm;
  border-bottom: 1px solid #ded4c5;
  padding-bottom: 3mm;
}

.property-print-brand {
  color: #171411;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.property-print-page-eyebrow,
.property-print-page-number,
.property-print-section-kicker,
.property-print-fact-label,
.property-print-property-type {
  color: #806f5d;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
}

.property-print-page-eyebrow {
  margin-top: 1mm;
}

.property-print-page-number {
  color: #9d8e7e;
}

.property-print-page-footer {
  min-height: 7mm;
  margin-top: auto;
  border-top: 1px solid #ded4c5;
  padding-top: 2.5mm;
  color: #897a69;
  font-size: 8px;
}

.property-print-summary-hero {
  position: relative;
  height: 96mm;
  flex: 0 0 96mm;
  overflow: hidden;
  border-radius: 5mm;
  background: #e9e1d4;
}

.property-print-summary-hero::after {
  position: absolute;
  inset: 38% 0 0;
  background: linear-gradient(0deg, rgba(20, 16, 12, 0.78), transparent);
  content: "";
}

.property-print-summary-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.property-print-summary-overlay {
  position: absolute;
  right: 7mm;
  bottom: 7mm;
  left: 7mm;
  z-index: 2;
  color: #ffffff;
}

.property-print-summary-overlay h1 {
  margin: 2mm 0 0;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 31px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1;
  text-transform: capitalize;
}

.property-print-summary-overlay p {
  margin: 2mm 0 0;
  font-size: 11px;
  font-weight: 600;
  opacity: 0.9;
  text-transform: capitalize;
}

.property-print-summary-overlay .property-print-property-type {
  color: #ffffff;
  opacity: 0.82;
}

.property-print-summary-grid {
  display: grid;
  min-height: 0;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 44%) minmax(0, 1fr);
  gap: 4mm;
}

.property-print-value-card,
.property-print-summary-facts,
.property-print-context-card,
.property-print-history-card {
  overflow: hidden;
  border: 1px solid #ded4c5;
  border-radius: 4mm;
  background: #ffffff;
  padding: 5mm;
}

.property-print-value-card {
  display: flex;
  flex-direction: column;
}

.property-print-value {
  margin-top: 3mm;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 29px;
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1;
}

.property-print-value-date {
  margin-top: 2mm;
  color: #806f5d;
  font-size: 9px;
}

.property-print-scenarios {
  display: grid;
  margin-top: auto;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2mm;
}

.property-print-scenarios > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1mm;
  border: 1px solid #e5dccf;
  border-radius: 2.5mm;
  background: #fbf7f0;
  padding: 2.5mm;
}

.property-print-scenarios span {
  overflow: hidden;
  color: #806f5d;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.property-print-scenarios strong {
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-scenarios .property-print-scenario-active {
  border-color: #b99861;
  background: #fff4dc;
}

.property-print-summary-facts {
  display: flex;
  min-height: 0;
  flex-direction: column;
}

.property-print-fact-grid {
  display: grid;
  min-height: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.5mm;
}

.property-print-summary-facts .property-print-fact-grid {
  margin-top: 3mm;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.property-print-fact {
  min-width: 0;
  border: 1px solid #e7dfd4;
  border-radius: 2.5mm;
  background: #fbf8f3;
  padding: 3mm;
}

.property-print-fact-value {
  overflow: hidden;
  margin-top: 1.5mm;
  color: #201913;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-broker-strip,
.property-print-callout {
  display: flex;
  min-height: 20mm;
  flex: 0 0 auto;
  align-items: center;
  border: 1px solid #ded4c5;
  border-radius: 4mm;
  background: #f7f1e7;
  padding: 3mm 5mm;
}

.property-print-broker-strip {
  gap: 4mm;
}

.property-print-broker-strip img,
.property-print-broker-initial {
  width: 14mm;
  height: 14mm;
  flex: 0 0 14mm;
  border-radius: 50%;
  object-fit: cover;
}

.property-print-broker-initial {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #dfd1bd;
  font-size: 16px;
  font-weight: 800;
}

.property-print-broker-strip > div:last-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.property-print-broker-strip span,
.property-print-broker-strip small {
  color: #806f5d;
  font-size: 8px;
}

.property-print-broker-strip strong {
  margin: 0.5mm 0;
  font-size: 12px;
}

.property-print-callout {
  color: #5f5449;
  font-size: 10px;
  line-height: 1.4;
}

.property-print-page-title {
  display: flex;
  min-height: 18mm;
  flex: 0 0 auto;
  align-items: flex-end;
  justify-content: space-between;
  gap: 6mm;
}

.property-print-page-title h2 {
  margin: 0;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 25px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1;
}

.property-print-page-title p {
  margin: 2mm 0 0;
  color: #806f5d;
  font-size: 10px;
}

.property-print-page-title > strong {
  flex: 0 0 auto;
  font-size: 17px;
}

.property-print-details-page > .property-print-fact-grid {
  flex: 0 0 auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.property-print-details-page .property-print-fact {
  min-height: 17mm;
  padding: 2.5mm;
}

.property-print-context-grid {
  display: grid;
  min-height: 0;
  flex: 1 1 auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4mm;
}

.property-print-context-card {
  display: flex;
  min-height: 0;
  flex-direction: column;
}

.property-print-context-card h3,
.property-print-history-heading h3 {
  margin: 0;
  font-size: 14px;
}

.property-print-context-card p {
  display: -webkit-box;
  overflow: hidden;
  margin: 3mm 0 0;
  color: #5f5449;
  font-size: 9px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
  line-height: 1.45;
}

.property-print-context-card ul {
  display: flex;
  margin: 3mm 0 0;
  padding: 0;
  flex-direction: column;
  list-style: none;
}

.property-print-context-card li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4mm;
  border-bottom: 1px solid #e9e1d6;
  padding: 2.5mm 0;
  color: #5f5449;
  font-size: 9px;
}

.property-print-context-card li strong {
  color: #201913;
  text-align: right;
}

.property-print-disclaimer {
  flex: 0 0 auto;
  border-left: 2px solid #b99861;
  background: #faf6ef;
  padding: 3mm 4mm;
  color: #766958;
  font-size: 8px;
  line-height: 1.4;
}

.property-print-history-page .property-print-map-frame {
  position: relative;
  height: 105mm;
  min-height: 105mm;
  flex: 0 0 105mm;
  overflow: hidden;
  border: 1px solid #ded4c5;
  border-radius: 4mm;
  background: #e9e1d4;
}

.property-print-history-page .property-print-map-frame > div,
.property-print-history-page .property-print-map-frame > div > div,
.property-print-history-page .property-print-map-frame .maplibregl-map,
.property-print-history-page
  .property-print-map-frame
  .maplibregl-canvas-container,
.property-print-history-page .property-print-map-frame .maplibregl-canvas {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}

.property-print-history-page .property-print-map-frame .print-static-map {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.property-print-history-card {
  min-height: 0;
  flex: 1 1 auto;
  padding: 4mm 5mm;
}

.property-print-history-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4mm;
}

.property-print-history-heading p {
  margin: 1mm 0 0;
  color: #806f5d;
  font-size: 8px;
}

.property-print-history-heading > strong {
  display: flex;
  width: 8mm;
  height: 8mm;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f1e8da;
  font-size: 10px;
}

.property-print-history-card table {
  width: 100%;
  margin-top: 3mm;
  border-collapse: collapse;
  table-layout: fixed;
}

.property-print-history-card th,
.property-print-history-card td {
  border-bottom: 1px solid #e9e1d6;
  padding: 2.2mm 1mm;
  font-size: 8px;
  text-align: left;
}

.property-print-history-card th {
  color: #806f5d;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.property-print-history-card td:nth-child(2) {
  font-weight: 800;
}

.property-print-empty-history {
  display: flex;
  height: 45mm;
  align-items: center;
  justify-content: center;
  color: #806f5d;
  font-size: 10px;
  text-align: center;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 7mm;
  }

  .print-property-page .print-property-content {
    width: 196mm !important;
    max-width: 196mm !important;
    margin: 0 !important;
  }

  .print-property-page .print-property-content > :not(.property-print-sheet) {
    display: none !important;
  }

  .property-print-sheet {
    position: static !important;
    display: block !important;
    width: 196mm !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    background: #ffffff !important;
  }

  .property-print-page {
    display: flex !important;
    width: 196mm !important;
    height: 270mm !important;
    break-after: page;
    break-inside: avoid;
    page-break-after: always;
    page-break-inside: avoid;
  }

  .property-print-page:last-child {
    break-after: auto;
    page-break-after: auto;
  }

  .property-print-page > header,
  .property-print-page > footer {
    display: flex !important;
  }

  .property-print-page *,
  .property-print-page *:hover {
    box-shadow: none !important;
    transition: none !important;
  }

  .property-print-history-page .property-print-map-frame {
    height: 105mm !important;
    min-height: 105mm !important;
  }
}
.property-print-live-page {
  border-color: #e4dacd;
  background: #f9f5ed;
}

.property-print-live-header {
  display: grid;
  grid-template-columns: 33mm minmax(0, 1fr) auto;
  gap: 4mm;
}

.property-print-live-logo {
  width: 31mm;
  height: auto;
  align-self: center;
  object-fit: contain;
}

.property-print-live-breadcrumbs {
  display: flex;
  align-self: center;
  align-items: center;
  justify-content: center;
  gap: 1.5mm;
  overflow: hidden;
  color: #806f5d;
  font-size: 7px;
  font-weight: 600;
  text-align: center;
  text-transform: capitalize;
  white-space: nowrap;
}

.property-print-live-breadcrumbs span {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 1.5mm;
  overflow: hidden;
  text-overflow: ellipsis;
}

.property-print-live-breadcrumbs b {
  color: #b09f8b;
  font-weight: 500;
}

.property-print-live-date {
  align-self: center;
  color: #806f5d;
  font-size: 7px;
  font-weight: 700;
  white-space: nowrap;
}

.property-print-live-hero-grid {
  display: grid;
  height: 82mm;
  min-height: 82mm;
  flex: 0 0 82mm;
  grid-template-columns: minmax(0, 61%) minmax(0, 1fr);
  gap: 4mm;
}

.property-print-live-photo-card,
.property-print-live-value-card,
.property-print-live-card,
.property-print-live-luxury-card,
.property-print-live-map {
  overflow: hidden;
  border: 1px solid #e4dacd;
  border-radius: 5mm;
  background: #ffffff;
}

.property-print-live-photo-card {
  position: relative;
  background: #e9e1d4;
}

.property-print-live-photo-card::after {
  position: absolute;
  inset: 48% 0 0;
  background: linear-gradient(0deg, rgba(23, 20, 17, 0.72), transparent);
  content: "";
}

.property-print-live-photo-card > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.property-print-live-photo-source,
.property-print-live-photo-source > div {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}

.property-print-live-photo-source img {
  object-fit: cover !important;
}

.property-print-live-photo-caption {
  position: absolute;
  right: 5mm;
  bottom: 5mm;
  left: 5mm;
  z-index: 2;
  color: #ffffff;
}

.property-print-live-photo-caption h1 {
  margin: 0;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1;
  text-transform: capitalize;
}

.property-print-live-photo-caption p {
  margin: 1.5mm 0 0;
  font-size: 8px;
  font-weight: 700;
  text-transform: capitalize;
}

.property-print-live-value-card {
  display: flex;
  flex-direction: column;
  padding: 5mm;
}

.property-print-live-card-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3mm;
}

.property-print-live-card-heading span {
  color: #8a745e;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.property-print-live-card-heading strong {
  border-radius: 999px;
  background: #e8f6ea;
  padding: 1.5mm 2.5mm;
  color: #23623d;
  font-size: 7px;
}

.property-print-live-value-card h2 {
  margin: 6mm 0 0;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.05;
  text-transform: capitalize;
}

.property-print-live-value-card > p {
  margin: 1mm 0 0;
  color: #5f5449;
  font-size: 8px;
  text-transform: capitalize;
}

.property-print-live-price {
  margin-top: 4mm;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 31px;
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1;
}

.property-print-live-price-date {
  margin-top: 2mm;
  color: #8a745e;
  font-size: 7px;
}

.property-print-live-reliability {
  margin-top: auto;
  border: 1px solid #cfe7d2;
  border-radius: 3.5mm;
  background: #f3fbf4;
  padding: 3.5mm;
  color: #29563a;
}

.property-print-live-reliability strong {
  font-size: 9px;
}

.property-print-live-reliability p {
  margin: 1.5mm 0 0;
  font-size: 7px;
  line-height: 1.4;
}

.property-print-live-content-grid {
  display: grid;
  min-height: 0;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 68%) minmax(0, 1fr);
  gap: 4mm;
}

.property-print-live-card {
  padding: 4mm;
}

.property-print-live-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4mm;
  border-bottom: 1px solid #e9e1d6;
  padding-bottom: 3mm;
}

.property-print-live-section-title h2,
.property-print-live-map-heading h2 {
  margin: 0;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 17px;
  font-weight: 500;
}

.property-print-live-section-title p,
.property-print-live-map-heading p {
  margin: 1mm 0 0;
  color: #8a745e;
  font-size: 7px;
}

.property-print-live-fact-grid {
  display: grid;
  margin-top: 3mm;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5mm 5mm;
}

.property-print-live-fact {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 3mm;
  border-bottom: 1px solid #eee6db;
  padding: 1.8mm 0;
}

.property-print-live-fact-heading {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 1.5mm;
}

.property-print-live-fact-icon {
  width: 5mm;
  height: 5mm;
  flex: 0 0 auto;
  object-fit: contain;
}

.property-print-live-fact-label {
  overflow: hidden;
  color: #5f5449;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-live-fact-value {
  flex: 0 0 auto;
  font-size: 9px;
  font-weight: 800;
}

.property-print-live-sidebar {
  display: flex;
  min-height: 0;
  flex-direction: column;
  gap: 4mm;
}

.property-print-live-position {
  min-height: 0;
  flex: 1 1 auto;
}

.property-print-live-position h3,
.property-print-live-luxury-card h3,
.property-print-live-chart-card h3,
.property-print-live-history h3 {
  margin: 0;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 13px;
  font-weight: 500;
}

.property-print-live-position > p {
  margin: 3mm 0 0;
  color: #806f5d;
  font-size: 8px;
  line-height: 1.4;
}

.property-print-live-position-summary {
  display: grid;
  margin-top: 3mm;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2mm;
}

.property-print-live-position-summary > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1mm;
  border: 1px solid #e9e1d6;
  border-radius: 2.5mm;
  background: #fbf7f0;
  padding: 2.5mm;
}

.property-print-live-position-summary span {
  color: #806f5d;
  font-size: 6px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.property-print-live-position-summary strong {
  overflow: hidden;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-live-position-variance {
  display: flex;
  margin-top: 2mm;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 1mm;
  border-radius: 2.5mm;
  padding: 2mm 2.5mm;
  font-size: 7px;
}

.property-print-live-position-variance.is-positive {
  background: #eef8f0;
  color: #23623d;
}

.property-print-live-position-variance.is-negative {
  background: #fff2ef;
  color: #973d31;
}

.property-print-live-position-variance strong {
  font-size: 9px;
}

.property-print-live-position-variance small {
  width: 100%;
  font-size: 6px;
}

.property-print-live-position ul {
  margin: 2mm 0 0;
  padding: 0;
  list-style: none;
}

.property-print-live-position li {
  display: flex;
  justify-content: space-between;
  gap: 3mm;
  border-bottom: 1px solid #eee6db;
  padding: 1.6mm 0;
  color: #5f5449;
  font-size: 7px;
}

.property-print-live-position li strong {
  color: #23623d;
  text-align: right;
}

.property-print-live-broker {
  display: flex;
  min-height: 21mm;
  flex: 0 0 auto;
  align-items: center;
  gap: 3mm;
}

.property-print-live-broker > img,
.property-print-live-broker > div {
  width: 13mm;
  height: 13mm;
  flex: 0 0 13mm;
  border-radius: 50%;
  object-fit: cover;
}

.property-print-live-broker > div {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e5d7c3;
  font-size: 14px;
  font-weight: 800;
}

.property-print-live-broker section {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.property-print-live-broker span,
.property-print-live-broker small {
  color: #806f5d;
  font-size: 7px;
}

.property-print-live-broker strong {
  margin: 1mm 0;
  font-size: 9px;
}

.property-print-live-broker .property-print-live-broker-phone {
  color: #201913;
  font-weight: 700;
}

.property-print-live-luxury-card {
  display: grid;
  min-height: 26mm;
  flex: 0 0 26mm;
  grid-template-columns: minmax(0, 35%) minmax(0, 1fr);
  align-items: center;
  gap: 5mm;
  padding: 4mm;
}

.property-print-live-luxury-card p {
  margin: 1mm 0 0;
  color: #806f5d;
  font-size: 7px;
  line-height: 1.3;
}

.property-print-live-scenarios {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2mm;
}

.property-print-live-scenarios > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1mm;
  border: 1px solid #e4dacd;
  border-radius: 3mm;
  background: #fbf7f0;
  padding: 3mm;
}

.property-print-live-scenarios > div.is-active {
  border-color: #70a472;
  background: #f1f8f1;
}

.property-print-live-luxury-meta {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 1.5mm;
}

.property-print-live-scenarios .property-print-live-luxury-badge {
  display: inline-flex;
  min-width: 7mm;
  height: 5mm;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.18);
  border-radius: 999px;
  padding: 0 1.5mm;
  color: #111111;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
}

.property-print-live-scenarios .property-print-live-luxury-name {
  overflow: hidden;
  color: #806f5d;
  font-size: 6.5px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-live-scenarios strong {
  font-size: 10px;
}

.property-print-live-map-heading {
  display: flex;
  min-height: 15mm;
  flex: 0 0 15mm;
  align-items: flex-end;
  justify-content: space-between;
}

.property-print-live-map {
  position: relative;
  height: 105mm;
  min-height: 105mm;
  flex: 0 0 105mm;
  background: #e9e1d4;
}

.property-print-live-map > div,
.property-print-live-map > div > div,
.property-print-live-map .maplibregl-map,
.property-print-live-map .maplibregl-canvas-container,
.property-print-live-map .maplibregl-canvas {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}

.property-print-live-map .print-static-map {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.property-print-live-page-two-grid {
  display: grid;
  min-height: 0;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 57%) minmax(0, 1fr);
  gap: 4mm;
}

.property-print-live-chart-card,
.property-print-live-history {
  min-height: 0;
}

.property-print-live-chart-card {
  display: flex;
  flex-direction: column;
}

.property-print-live-chart-description {
  margin: 1mm 0 0;
  color: #5f5449;
  font-size: 7px;
}

.property-print-live-chart {
  position: relative;
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
}

.property-print-live-chart-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2mm;
}

.property-print-live-chart-header > div:first-child {
  min-width: 0;
}

.property-print-live-chart-level {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 2mm;
}

.property-print-live-chart-level strong {
  color: #201913;
  font-size: 8.5px;
  font-weight: 700;
}

.property-print-live-chart-badge {
  min-width: 0 !important;
  height: auto !important;
  border: 1px solid rgba(0, 0, 0, 0.15) !important;
  border-radius: 999px !important;
  padding: 0.6mm 2mm !important;
  color: #111111 !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.property-print-live-chart svg {
  width: 100%;
  min-height: 0;
  flex: 1 1 auto;
}

.property-print-live-chart-empty {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  color: #806f5d;
  font-size: 8px;
  text-align: center;
}

.property-print-live-chart-stats {
  display: flex;
  min-height: 24mm;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 2.5mm;
  margin-top: 1mm;
  border-top: 1px solid #e9e1d6;
  padding-top: 2.5mm;
}

.property-print-live-growth-stat {
  display: flex;
  min-width: 0;
  align-items: baseline;
  justify-content: space-between;
  gap: 2mm;
}

.property-print-live-growth-stat span,
.property-print-live-projection-title {
  color: #806f5d;
  font-size: 6.5px;
}

.property-print-live-growth-stat strong {
  flex: 0 0 auto;
  font-size: 8px;
  text-align: right;
}

.property-print-live-growth-stat strong.is-positive {
  color: #0f7a4a;
}

.property-print-live-growth-stat strong.is-negative {
  color: #a1542f;
}

.property-print-live-projection-summary {
  display: flex;
  flex-direction: column;
  gap: 1.5mm;
}

.property-print-live-projection-title {
  font-weight: 700;
}

.property-print-live-projection-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5mm;
}

.property-print-live-projection-grid > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1mm;
  border: 1px solid #e9e1d6;
  border-radius: 2mm;
  background: #fbf7f0;
  padding: 1.8mm;
}

.property-print-live-projection-grid span {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 1mm;
  overflow: hidden;
  color: #806f5d;
  font-size: 5.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-live-projection-grid i {
  width: 3mm;
  height: 0.7mm;
  flex: 0 0 auto;
  border-radius: 999px;
}

.property-print-live-projection-grid strong {
  overflow: hidden;
  font-size: 7.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-live-history {
  display: flex;
  flex-direction: column;
}

.property-print-live-history-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 3mm;
}

.property-print-live-history-heading p {
  margin: 1mm 0 0;
  color: #806f5d;
  font-size: 7px;
}

.property-print-live-history-heading > strong {
  display: flex;
  width: 7mm;
  height: 7mm;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f1e8da;
  font-size: 8px;
}

.property-print-live-history table {
  width: 100%;
  margin-top: 3mm;
  border-collapse: collapse;
}

.property-print-live-history td {
  border-bottom: 1px solid #eee6db;
  padding: 2.5mm 0;
  font-size: 8px;
}

.property-print-live-history td:last-child {
  font-weight: 800;
  text-align: right;
}

.property-print-live-empty-history {
  display: flex;
  min-height: 15mm;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  color: #806f5d;
  font-size: 8px;
  text-align: center;
}

.property-print-live-history-analysis {
  min-height: 0;
  padding-bottom: 3mm;
}

.property-print-live-history-analysis h4 {
  margin: 0;
  font-family: var(--font-arizona-override, var(--font-arizona)), serif;
  font-size: 11px;
  font-weight: 500;
}

.property-print-live-history-analysis p {
  margin: 2mm 0 0;
  color: #5f5449;
  font-size: 8.5px;
  hyphens: auto;
  line-height: 1.55;
  text-align: justify;
  text-justify: inter-word;
}

.property-print-live-history-records {
  min-height: 0;
  margin-top: auto;
  border-top: 1px solid #e9e1d6;
  padding-top: 3mm;
}

.property-print-live-disclaimer {
  min-height: 11mm;
  flex: 0 0 auto;
  border: 1px solid #eed39a;
  border-radius: 3mm;
  background: #fff7df;
  padding: 3mm 4mm;
  color: #76591e;
  font-size: 7px;
  line-height: 1.35;
}

@media print {
  .property-print-live-map {
    height: 105mm !important;
    min-height: 105mm !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0.35in 0.25in;
  }

  html,
  body {
    background: #ffffff !important;
  }

  header,
  footer,
  .print-property-page .site-footer {
    display: none !important;
  }

  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .print-property-page {
    background: #ffffff !important;
    font-size: 9.5px;
    line-height: 1.1;
  }

  .print-property-page header,
  .print-property-page footer,
  .print-property-page #nprogress,
  .print-property-page .nprogress-custom-parent,
  .print-property-page .sticky-address-bar,
  .print-property-page #mobile-price-selectors,
  .print-property-page .mobile-sticky-price-banner,
  .print-property-page .fixed.right-4,
  .print-property-page .fixed.left-0.right-0,
  .print-property-page [data-headlessui-portal],
  .print-property-page [role="dialog"] {
    display: none !important;
  }

  .print-property-page #property-map-section button,
  .print-property-page .print-property-content button {
    display: none !important;
  }

  .print-property-page .print-property-content {
    width: 100% !important;
    max-width: calc(8.27in - 0.5in) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 2px !important;
  }

  .print-property-page .print-property-content .gap-4 {
    gap: 8px !important;
  }

  .print-property-page .print-property-content .mt-4,
  .print-property-page .print-property-content .mb-4,
  .print-property-page .print-property-content .md\:mb-20 {
    margin-top: 6px !important;
    margin-bottom: 6px !important;
  }

  .print-property-page .print-hide-luxury-selector,
  .print-property-page .print-hide-comparables,
  .print-property-page .print-hide-property-decision {
    display: none !important;
  }

  .print-property-page .print-hide-after-transaction {
    display: none !important;
  }

  .print-property-page .property-top-section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .print-property-page .property-top-section .border {
    border: none !important;
  }

  .print-property-page .property-top-section [class*="border"] {
    border: none !important;
  }

  .print-property-page .print-feature-grid {
    margin-top: 0 !important;
  }

  .print-property-page .property-top-section,
  .print-property-page .print-feature-grid,
  .print-property-page #property-map-section {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .print-property-page * {
    box-shadow: none !important;
    pointer-events: none !important;
    transition: none !important;
  }

  .print-property-page *:hover {
    background-color: inherit !important;
    color: inherit !important;
    border-color: inherit !important;
    transform: none !important;
  }

  .print-property-page img,
  .print-property-page svg {
    max-width: 100% !important;
  }

  .print-only {
    display: none !important;
  }

  @media screen {
    .print-only {
      display: none !important;
    }
  }

  .print-property-page #property-map-section {
    page-break-inside: auto;
    break-inside: auto;
    max-width: 100% !important;
    overflow: hidden !important;
    width: 100% !important;
  }

  .print-property-page #property-map-section > * {
    width: 100% !important;
    max-width: 100% !important;
  }

  .print-property-page #property-map-section .maplibregl-map {
    width: 100% !important;
    height: 320px !important;
  }

  .print-property-page #property-map-section .maplibregl-canvas-container,
  .print-property-page #property-map-section canvas {
    width: 100% !important;
    height: 320px !important;
  }

  .print-property-page #property-map-section .maplibregl-canvas-container {
    overflow: hidden !important;
    width: 100% !important;
    height: 320px !important;
  }

  .print-property-page #property-map-section .maplibregl-map,
  .print-property-page #property-map-section .maplibregl-canvas-container,
  .print-property-page #property-map-section .maplibregl-canvas {
    visibility: hidden !important;
  }

  .print-property-page #property-map-section .print-static-map {
    display: block !important;
    width: 100% !important;
    height: 320px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
  }

  .print-property-page #property-map-section .h-\[500px\] {
    height: 320px !important;
  }

  .print-property-page #property-map-section [style*="minHeight"] {
    min-height: 320px !important;
  }

  .print-property-page .print-luxury-cards-wrapper {
    display: block !important;
    page-break-after: avoid;
    break-after: avoid;
  }

  .print-property-page .print-luxury-cards {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-bottom: 4px !important;
  }

  .print-property-page .print-luxury-card {
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 8px !important;
    padding: 12px 10px !important;
    text-align: center !important;
    background: #ffffff !important;
    min-height: 86px !important;
    display: grid !important;
    grid-template-columns: auto auto !important;
    grid-template-areas:
      "label label"
      "level badge"
      "price price";
    justify-content: center !important;
    align-content: center !important;
    column-gap: 6px !important;
    row-gap: 6px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .print-property-page .print-luxury-card--active {
    border-color: rgba(0, 0, 0, 0.45) !important;
    background: rgba(0, 0, 0, 0.04) !important;
  }

  .print-property-page .print-luxury-card-label {
    font-size: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: rgba(0, 0, 0, 0.6) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    grid-area: label !important;
    margin-bottom: 2px !important;
  }

  .print-property-page .print-luxury-card-level {
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-top: 0 !important;
    color: #111111 !important;
    grid-area: level !important;
    align-self: center !important;
  }

  .print-property-page .print-luxury-card-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    grid-area: badge !important;
    align-self: center !important;
  }

  .print-property-page .print-luxury-card-price {
    font-size: 16px !important;
    font-weight: 600 !important;
    margin-top: 0 !important;
    color: #111111 !important;
    grid-area: price !important;
    margin-top: 2px !important;
  }

  .print-broker-card {
    display: none !important;
  }

  .print-property-page .print-broker-top {
    display: block !important;
    width: 100% !important;
    margin-bottom: 6px !important;
  }

  .print-property-page .print-price-box .print-broker-card {
    display: none !important;
  }

  .print-property-page .print-broker-card {
    display: block !important;
    margin: 0 !important;
    height: auto !important;
    display: flex !important;
    flex-direction: row !important;
    background: transparent !important;
    align-items: center !important;
    text-align: left !important;
    gap: 12px !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 6px 12px !important;
    padding-left: 0 !important;
  }

  .print-property-page .print-broker-avatar {
    width: 90px !important;
    height: 70px !important;
    max-height: 70px !important;
    background: transparent !important;
    overflow: hidden !important;
    border-radius: 8px !important;
  }

  .print-property-page .print-broker-avatar-image {
    width: 100% !important;
    height: 100% !important;
    max-height: 70px !important;
    object-fit: contain !important;
    display: block !important;
    border-radius: 8px !important;
  }

  .print-property-page .print-broker-avatar-fallback {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 600 !important;
    color: #555555 !important;
  }

  .print-property-page .print-broker-info {
    padding: 0 !important;
    text-align: left !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
  }

  .print-property-page .print-broker-meta {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
    flex: 0 0 auto !important;
  }

  .print-property-page .print-broker-name {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #111111 !important;
  }

  .print-property-page .print-broker-agency {
    font-size: 15px !important;
    color: rgba(0, 0, 0, 0.6) !important;
    margin-top: 2px !important;
  }

  .print-property-page .print-broker-powered {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
    width: auto !important;
    gap: 4px !important;
    padding-top: 0 !important;
    margin-left: auto !important;
  }

  .print-property-page .print-broker-powered-text {
    font-size: 10px !important;
    color: rgba(0, 0, 0, 0.55) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
  }

  .print-property-page .print-broker-powered-brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  .print-property-page .print-broker-powered-icon {
    height: 18px !important;
    width: 18px !important;
    display: block !important;
  }

  .print-property-page .print-broker-powered-logo {
    height: 18px !important;
    width: auto !important;
    display: block !important;
  }

  .print-property-page .print-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(0, 1fr) !important;
    column-gap: 12px !important;
    row-gap: 0 !important;
    align-items: stretch !important;
    align-content: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-auto-flow: row dense !important;
    height: auto !important;
    max-height: none !important;
    margin-top: 6px !important;
  }

  .print-property-page .print-feature-grid > *:nth-child(n + 4) {
    border-top: 1px solid rgba(0, 0, 0, 0.12) !important;
    padding-top: 8px !important;
  }

  .print-property-page .print-price-box {
    display: none !important;
  }

  .print-property-page .print-price-feature-box {
    max-height: none !important;
    height: auto !important;
    min-height: auto !important;
    overflow: hidden !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  .print-property-page .print-price-box > * {
    height: auto !important;
  }

  .print-property-page .print-price-feature-box > *:not(.print-broker-card) {
    display: none !important;
  }

  .print-property-page .print-price-feature-box .min-h-full,
  .print-property-page .print-price-feature-box .h-full {
    min-height: auto !important;
    height: auto !important;
  }

  .print-property-page .print-feature-grid > * {
    min-width: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .print-property-page .animated-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .print-property-page .print-feature-card {
    height: 100% !important;
    align-self: stretch !important;
    display: flex !important;
    min-height: 0 !important;
    align-items: stretch !important;
    justify-content: center !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    border: none !important;
  }

  .print-property-page .print-feature-card > div {
    height: 100% !important;
    display: flex !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    justify-content: center !important;
  }

  .print-property-page .print-feature-card > div > div {
    height: 100% !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    justify-content: center !important;
  }

  .print-property-page .print-feature-card [class*="min-h-"] {
    min-height: 0 !important;
  }

  .print-property-page .print-feature-card .border {
    border: none !important;
  }

  .print-property-page .print-feature-card .box,
  .print-property-page .print-feature-card .Box {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    border: none !important;
  }

  .print-property-page .print-feature-card .box > div,
  .print-property-page .print-feature-card .Box > div {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: space-evenly !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .print-property-page .print-feature-card .px-4,
  .print-property-page .print-feature-card .px-5,
  .print-property-page .print-feature-card .px-6 {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  .print-property-page .print-feature-card [class*="w-full h-full"] {
    height: 100% !important;
  }

  .print-property-page .print-feature-card img,
  .print-property-page .print-feature-card svg {
    width: 34px !important;
    height: 34px !important;
    max-width: 34px !important;
    max-height: 34px !important;
  }

  .print-property-page .print-feature-card .text-lg,
  .print-property-page .print-feature-card .md\:text-lg,
  .print-property-page .print-feature-card .text-xl,
  .print-property-page .print-feature-card .md\:text-xl {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .print-property-page .print-feature-card .text-sm,
  .print-property-page .print-feature-card .md\:text-sm,
  .print-property-page .print-feature-card .text-base,
  .print-property-page .print-feature-card .md\:text-base {
    font-size: 11px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-wrap: balance !important;
    text-align: center !important;
  }

  .print-property-page .print-feature-card .text-xs,
  .print-property-page .print-feature-card .md\:text-xs {
    font-size: 10px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-wrap: balance !important;
    text-align: center !important;
  }

  .print-property-page .print-price-feature-box .gap-4 {
    gap: 8px !important;
  }

  .print-property-page .print-feature-grid > * {
    height: 100% !important;
    align-self: stretch !important;
  }

  .print-property-page .print-feature-grid .h-full {
    height: 100% !important;
  }

  .print-property-page .print-hero-row {
    flex-direction: row !important;
  }

  .print-property-page .print-hero-media {
    width: 32.5% !important;
    max-width: 32.5% !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 0 !important;
    aspect-ratio: auto !important;
    align-items: flex-start !important;
  }

  .print-property-page .print-hero-media img,
  .print-property-page .print-hero-media picture,
  .print-property-page .print-hero-media video,
  .print-property-page .print-hero-media canvas {
    height: auto !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block !important;
    vertical-align: top !important;
  }

  .print-property-page .print-hero-media .group {
    min-height: 0 !important;
    height: auto !important;
    background: transparent !important;
    aspect-ratio: 3 / 2 !important;
  }

  .print-property-page .print-hero-details {
    width: 67.5% !important;
    max-width: 70% !important;
    min-height: 120px !important;
    height: auto !important;
    padding: 4px 6px !important;
    align-items: center !important;
    text-align: center !important;
    gap: 4px !important;
  }

  .print-property-page .print-hero-details .text-left {
    text-align: center !important;
  }

  .print-property-page .print-hero-details .property-address-title {
    font-size: 16px !important;
    line-height: 1.1 !important;
  }

  .print-property-page .print-hero-details .property-address-title + div {
    font-size: 11px !important;
    line-height: 1.1 !important;
    margin-top: 2px !important;
  }

  .print-property-page .print-hero-details .text-xl {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .print-property-page .print-hero-details .text-lg,
  .print-property-page .print-hero-details .md\:text-lg {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .print-property-page .print-hero-details .text-xs {
    font-size: 10px !important;
    line-height: 1.1 !important;
  }

  .print-property-page .print-hero-details .px-4 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .print-property-page .print-hero-details .mt-3 {
    margin-top: 6px !important;
  }

  .print-property-page .print-hero-details .mb-1 {
    margin-bottom: 4px !important;
  }

  .print-property-page .print-hero-details .gap-3 {
    gap: 6px !important;
  }

  .print-property-page .print-hero-details .pb-2 {
    padding-bottom: 4px !important;
  }

  .print-property-page .print-hero-details .justify-start {
    justify-content: center !important;
  }

  .print-property-page .print-hero-details .overflow-x-auto {
    overflow: visible !important;
  }

  .print-property-page .print-hero-details .min-w-\[105px\],
  .print-property-page .print-hero-details .min-w-\[120px\] {
    min-width: 90px !important;
  }

  .print-property-page .property-type-pill-wrapper {
    margin-bottom: 4px !important;
  }

  .print-property-page .property-address-title {
    font-size: 20px !important;
    line-height: 1.15 !important;
  }

  .print-property-page .md\:block {
    display: block !important;
  }

  .print-property-page .md\:flex {
    display: flex !important;
  }

  .print-property-page .md\:grid {
    display: grid !important;
  }

  .print-property-page .md\:inline-flex {
    display: inline-flex !important;
  }

  .print-property-page .md\:inline {
    display: inline !important;
  }

  .print-property-page .lg\:block {
    display: block !important;
  }

  .print-property-page .lg\:flex {
    display: flex !important;
  }

  .print-property-page .lg\:grid {
    display: grid !important;
  }

  .print-property-page .md\:border {
    border-width: 1px !important;
  }

  .print-property-page .md\:border-black\/20 {
    border-color: rgba(0, 0, 0, 0.2) !important;
  }

  .print-property-page .md\:rounded-lg {
    border-radius: 0.5rem !important;
  }

  .print-property-page .md\:rounded-l-lg {
    border-top-left-radius: 0.5rem !important;
    border-bottom-left-radius: 0.5rem !important;
  }

  .print-property-page .md\:rounded-r-none {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }

  .print-property-page footer,
  .print-property-page .site-footer {
    display: none !important;
  }
}

.property-print-sheet {
  position: fixed;
  top: 0;
  left: -10000px;
  width: 8in;
  height: 10.36in;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  background: #f7f3ea;
  color: #111827;
}

.property-print-sheet * {
  box-sizing: border-box;
}

.property-print-report {
  display: grid;
  grid-template-rows: auto 2.7in auto minmax(2.8in, 1fr);
  gap: 0.14in;
  height: 100%;
  overflow: hidden;
  border: 1px solid #d8cdbb;
  background:
    radial-gradient(circle at 12% 8%, rgba(194, 153, 80, 0.13), transparent 26%),
    linear-gradient(180deg, #fffdfa 0%, #f7f3ea 100%);
  padding: 0.2in;
}

.property-print-report-header {
  display: flex;
  flex: 0 0 auto;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.18in;
  border-bottom: 1px solid rgba(47, 39, 29, 0.18);
  padding-bottom: 0.1in;
}

.property-print-report-heading {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.035in;
}

.property-print-eyebrow,
.property-print-report-date,
.property-print-kicker,
.property-print-price-label,
.property-print-section-heading,
.property-print-characteristic-label,
.property-print-luxury-scenario {
  color: #716653;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.15;
  text-transform: uppercase;
}

.property-print-report-date {
  color: #9a8765;
  letter-spacing: 0.05em;
  text-transform: none;
}

.property-print-brand {
  color: #171717;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
}

.property-print-hero-panel {
  position: relative;
  display: flex;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid rgba(47, 39, 29, 0.16);
  border-radius: 0;
  background: #e9e1d4;
  box-shadow: none;
  margin: -0.2in -0.2in 0;
}

.property-print-hero-panel::after {
  position: absolute;
  inset: auto 0 0 0;
  height: 55%;
  background: linear-gradient(0deg, rgba(17, 17, 17, 0.56), transparent);
  content: "";
}

.property-print-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.property-print-photo-placeholder,
.property-print-map-placeholder {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: #716653;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

.property-print-hero-caption {
  position: absolute;
  right: 0.42in;
  bottom: 0.2in;
  left: 0.42in;
  z-index: 2;
  display: flex;
  justify-content: flex-start;
}

.property-print-address-block {
  width: min(5.4in, 82%);
  border-left: 3px solid #c29950;
  border-radius: 18px;
  background: rgba(255, 253, 250, 0.9);
  padding: 0.14in 0.18in;
}

.property-print-kicker {
  margin: 0 0 0.05in;
}

.property-print-title {
  display: -webkit-box;
  max-height: 0.76in;
  overflow: hidden;
  margin: 0;
  color: #171717;
  font-size: 31px;
  font-weight: 600;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.02;
  text-transform: capitalize;
}

.property-print-location {
  display: -webkit-box;
  max-height: 0.24in;
  overflow: hidden;
  margin: 0.05in 0 0;
  color: #5f5648;
  font-size: 12px;
  font-weight: 700;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.25;
  text-transform: capitalize;
}

.property-print-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 46%) minmax(0, 1fr);
  gap: 0.16in;
  min-height: 0;
}

.property-print-price-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0.075in;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(47, 39, 29, 0.14);
  background: #fffdf8;
  color: #171717;
  padding: 0.14in;
  box-shadow: 0 10px 28px rgba(47, 39, 29, 0.08);
}

.property-print-price-range {
  color: #171717;
  font-size: 23px;
  font-weight: 600;
  line-height: 1;
}

.property-print-price-card .property-print-price-label {
  color: #716653;
}

.property-print-price-date {
  color: #716653;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.15;
}

.property-print-price-scale {
  position: relative;
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: 0.055in;
  min-height: 0;
  padding-top: 0.015in;
}

.property-print-price-rail {
  display: none;
}

.property-print-luxury-price-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-width: 0;
  align-items: center;
  align-content: center;
  gap: 0.025in 0.07in;
  overflow: hidden;
  border: 1px solid rgba(47, 39, 29, 0.13);
  border-radius: 14px;
  background: #ffffff;
  padding: 0.065in 0.075in;
}

.property-print-luxury-price-card--active {
  border-color: rgba(194, 153, 80, 0.95);
  background: #fff7e8;
  color: #111827;
}

.property-print-luxury-scenario {
  grid-column: 2;
  color: #716653;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-luxury-price-card--active .property-print-luxury-scenario,
.property-print-luxury-price-card--active .property-print-luxury-name {
  color: #5f4f31;
}

.property-print-luxury-price {
  grid-column: 3;
  grid-row: 1 / span 2;
  overflow: hidden;
  color: #171717;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-luxury-price-card--active .property-print-luxury-price {
  color: #111827;
}

.property-print-luxury-badge {
  display: inline-flex;
  grid-row: 1 / span 2;
  width: fit-content;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 999px;
  padding: 2px 7px;
  color: #0f172a;
  font-size: 7.5px;
  font-weight: 900;
  line-height: 1.15;
}

.property-print-luxury-name {
  grid-column: 2;
  overflow: hidden;
  color: #8a7d67;
  font-size: 7.5px;
  font-weight: 700;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-characteristics {
  display: flex;
  min-height: 0;
  flex-direction: column;
  gap: 0.07in;
  overflow: hidden;
  border: 1px solid rgba(47, 39, 29, 0.14);
  border-radius: 22px;
  background: rgba(255, 253, 250, 0.72);
  padding: 0.13in 0.15in;
}

.property-print-characteristics-list {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 0;
}

.property-print-characteristic {
  display: grid;
  grid-template-columns: minmax(0, 42%) minmax(0, 1fr);
  gap: 0.1in;
  overflow: hidden;
  border-bottom: 1px solid rgba(47, 39, 29, 0.12);
  padding: 0.045in 0;
}

.property-print-characteristic-label {
  letter-spacing: 0.04em;
}

.property-print-characteristic-value {
  overflow: hidden;
  color: #171717;
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.15;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.property-print-map-card {
  display: grid;
  grid-template-rows: auto minmax(2.55in, 1fr);
  min-height: 0;
  gap: 0.09in;
  height: 100%;
  margin-top: 0.06in;
  border-top: 1px solid rgba(47, 39, 29, 0.14);
  padding-top: 0.18in;
}

.property-print-map-frame {
  position: relative;
  height: 100%;
  min-height: 2.55in;
  overflow: hidden;
  border: 1px solid rgba(47, 39, 29, 0.18);
  border-radius: 20px;
  background: #e9e1d4;
  box-shadow: 0 10px 28px rgba(47, 39, 29, 0.1);
}

.property-print-map-frame > div,
.property-print-map-frame > div > div,
.property-print-map-frame .maplibregl-map,
.property-print-map-frame .maplibregl-canvas-container,
.property-print-map-frame .maplibregl-canvas,
.property-print-map-frame .w-full.h-full {
  width: 100% !important;
  height: 100% !important;
}

.property-print-map-frame .h-\[500px\],
.property-print-map-frame [style*="min-height"] {
  min-height: 100% !important;
  height: 100% !important;
}

.property-print-map-frame .maplibregl-control-container,
.property-print-map-frame .maplibregl-ctrl,
.property-print-map-frame .maplibregl-popup,
.property-print-map-frame .pointer-events-none.absolute,
.property-print-map-frame button {
  display: none !important;
}

@media print {
  @page {
    size: letter portrait;
    margin: 0.32in;
  }

  html,
  body,
  #__next {
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    background: #ffffff !important;
  }

  body {
    margin: 0 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  body > *:not(#__next),
  header,
  footer,
  .site-footer,
  .print-property-page [data-headlessui-portal],
  .print-property-page [role="dialog"],
  .print-property-page #nprogress,
  .print-property-page .nprogress-custom-parent,
  .print-property-page .sticky-address-bar,
  .print-property-page #mobile-price-selectors,
  .print-property-page .mobile-sticky-price-banner,
  .print-property-page .fixed.right-4,
  .print-property-page .fixed.left-0.right-0 {
    display: none !important;
  }

  .print-property-page {
    width: 100% !important;
    min-height: 0 !important;
    background: #ffffff !important;
  }

  .print-property-page .print-property-content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .print-property-page .print-property-content > :not(.property-print-sheet) {
    display: none !important;
  }

  .property-print-sheet {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: block !important;
    width: 100% !important;
    height: 10.36in !important;
    max-height: 10.36in !important;
    overflow: hidden !important;
    break-inside: avoid;
    page-break-inside: avoid;
    opacity: 1 !important;
    pointer-events: none !important;
    background: #f7f3ea !important;
  }

  .property-print-report {
    grid-template-rows: 2.7in auto minmax(2.8in, 1fr) !important;
    gap: 0.18in !important;
    height: 100% !important;
  }

  .property-print-sheet a,
  .property-print-sheet button,
  .property-print-sheet [role="button"] {
    pointer-events: none !important;
    text-decoration: none !important;
  }

  .property-print-sheet button,
  .property-print-map-frame .maplibregl-control-container,
  .property-print-map-frame .maplibregl-ctrl,
  .property-print-map-frame .maplibregl-popup,
  .property-print-map-frame .pointer-events-none.absolute {
    display: none !important;
  }

  .property-print-map-frame {
    min-height: 2.55in !important;
  }

  .property-print-map-frame .print-static-map {
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border: 0 !important;
    border-radius: 16px !important;
  }

  .property-print-map-frame .maplibregl-canvas {
    position: absolute !important;
    inset: 0 !important;
  }
}
@media print {
  @page {
    size: A4 portrait;
    margin: 7mm;
  }

  .print-property-page .print-property-content {
    display: block !important;
    width: 196mm !important;
    max-width: 196mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .print-property-page > main {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .property-print-sheet {
    position: static !important;
    display: block !important;
    width: 196mm !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
  }

  .property-print-page {
    display: flex !important;
    width: 196mm !important;
    height: 270mm !important;
    break-after: page !important;
    break-inside: avoid !important;
    page-break-after: always !important;
    page-break-inside: avoid !important;
  }

  .property-print-page:last-child {
    break-after: auto !important;
    page-break-after: auto !important;
  }

  .property-print-page > header,
  .property-print-page > footer {
    display: flex !important;
  }

  .property-print-history-page .property-print-map-frame {
    height: 105mm !important;
    min-height: 105mm !important;
  }
}
