@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300..800&display=swap');

/* Status pill for listings */
.md-status {
  display: inline-flex;
  align-items: center;
  gap: 0.55em;
  padding: 0.45em 0.95em;
  background: var(--wp--preset--color--theme-7);
  color: var(--wp--preset--color--theme-6);
  border-radius: 999px;
  font-family: var(--wp--preset--font-family--inter);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  line-height: 1;
}
.md-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--wp--preset--color--theme-6);
  display: inline-block;
}
.md-status.is-dark {
  background: rgba(255,255,255,0.14);
  color: #fff;
}
.md-status.is-dark::before { background: #E0B26B; }

/* Price: large serif numerals, always one line */
.md-price {
  font-family: var(--wp--preset--font-family--fraunces) !important;
  font-weight: 400 !important;
  font-size: clamp(36px, 4.6vw, 64px) !important;
  letter-spacing: -0.03em !important;
  line-height: 1 !important;
  margin: 0.25em 0 0.4em !important;
  white-space: nowrap !important;
}

/* Listing card: equal height across row */
.md-listing-card {
  height: 100%;
  display: flex !important;
  flex-direction: column;
}
.md-listing-card .md-card-body {
  flex: 1 1 auto;
  display: flex !important;
  flex-direction: column;
}
.md-listing-card .md-card-cta {
  margin-top: auto;
  padding-top: var(--wp--preset--spacing--40);
}
.wp-block-columns .wp-block-column:has(> .md-listing-card) {
  display: flex;
}

/* Featured-listings "See all" tile — matches card sizing, dark treatment */
.md-see-all {
  height: 100%;
  min-height: 100%;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--wp--preset--color--theme-5);
  color: #fff;
  padding: clamp(32px, 4vw, 56px);
  gap: 0.6em;
}
.md-see-all .md-eyebrow { color: #E0B26B !important; }
.md-see-all h3 {
  font-family: var(--wp--preset--font-family--fraunces);
  font-weight: 300;
  font-size: clamp(30px, 3.5vw, 48px);
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0;
}

/* Stat row */
.md-stat-num {
  font-family: var(--wp--preset--font-family--fraunces);
  font-weight: 300;
  font-size: clamp(54px, 6vw, 84px);
  line-height: 1;
  letter-spacing: -0.03em;
  margin: 0;
  color: var(--wp--preset--color--theme-6);
}
.md-stat-label {
  font-family: var(--wp--preset--font-family--inter);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--wp--preset--color--theme-4);
  opacity: 0.75;
  margin-top: 0.8em;
  line-height: 1.4;
}

/* Recurring rule motif (diamond) */
.md-rule {
  border: 0;
  height: 1px;
  background: var(--wp--preset--color--theme-3);
  position: relative;
  max-width: 120px;
  margin: 3rem auto;
}
.md-rule::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 7px;
  height: 7px;
  background: var(--wp--preset--color--theme-6);
  transform: translate(-50%,-50%) rotate(45deg);
}

/* Hero eyebrow */
.md-eyebrow {
  font-family: var(--wp--preset--font-family--inter) !important;
  font-size: 11px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--wp--preset--color--theme-6);
}

/* Jetpack contact form */
.wp-block-jetpack-contact-form { max-width: 580px; margin: 0 auto; }
.wp-block-jetpack-contact-form label,
.wp-block-jetpack-contact-form .jetpack-field label {
  font-family: var(--wp--preset--font-family--inter) !important;
  font-size: 11px !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--wp--preset--color--theme-4);
  margin-bottom: 0.5em;
  display: block;
}
.wp-block-jetpack-contact-form input[type="text"],
.wp-block-jetpack-contact-form input[type="email"],
.wp-block-jetpack-contact-form input[type="tel"],
.wp-block-jetpack-contact-form select,
.wp-block-jetpack-contact-form textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--wp--preset--color--theme-3);
  background: transparent;
  padding: 0.85em 0;
  font-family: var(--wp--preset--font-family--inter);
  font-size: 17px;
  color: var(--wp--preset--color--theme-5);
  transition: border-color .2s;
  border-radius: 0;
}
.wp-block-jetpack-contact-form input:focus,
.wp-block-jetpack-contact-form select:focus,
.wp-block-jetpack-contact-form textarea:focus {
  outline: none;
  border-bottom-color: var(--wp--preset--color--theme-6);
}
.wp-block-jetpack-contact-form button[type="submit"],
.wp-block-jetpack-contact-form .wp-block-jetpack-button button {
  background: var(--wp--preset--color--theme-6) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 1.05em 2.6em !important;
  font-family: var(--wp--preset--font-family--inter) !important;
  font-size: 12px !important;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  font-weight: 600;
  cursor: pointer;
  transition: background .2s;
  border-radius: 0 !important;
}
.wp-block-jetpack-contact-form button[type="submit"]:hover { background: #092A45 !important; }

/* Header site title serif */
.wp-block-site-title a {
  font-family: var(--wp--preset--font-family--fraunces) !important;
  font-weight: 500;
  letter-spacing: -0.015em;
}

/* Editorial hero */
.md-hero {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: clamp(32px, 5vw, 80px);
  align-items: center;
  padding: clamp(48px, 8vw, 120px) clamp(24px, 5vw, 80px);
  background: var(--wp--preset--color--theme-7);
}
.md-hero__title {
  font-family: var(--wp--preset--font-family--fraunces);
  font-weight: 300;
  font-size: clamp(64px, 10vw, 160px);
  line-height: 0.92;
  letter-spacing: -0.035em;
  margin: 0.3em 0 0.4em;
  color: var(--wp--preset--color--theme-5);
}
.md-hero__title em {
  font-style: italic;
  font-weight: 400;
  color: var(--wp--preset--color--theme-6);
}
.md-hero__photo img {
  width: 100%;
  display: block;
  filter: grayscale(15%) contrast(1.04);
}
@media (max-width: 768px) {
  .md-hero { grid-template-columns: 1fr; }
  .md-hero__photo { order: -1; }
}

/* Primary buttons refined */
.wp-block-button__link.wp-element-button {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 600;
  padding: 1.05em 2.2em;
  border-radius: 0;
}
.is-style-outline .wp-block-button__link {
  border-width: 1px !important;
}
