/* September client updates, scoped to the new homepage section and original logo. */
/* Client-confirmed Adobe font: load the kit once, with no duplicate @import. */
body .pavia-site-hero-title {
  font-family: "archivo-black", sans-serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  text-transform: uppercase !important;
  width: 100% !important;
  min-width: 0;
  max-width: 100% !important;
  margin-inline: auto !important;
  white-space: normal !important;
  text-align: center !important;
  text-wrap: balance;
  font-size: clamp(30px, 3.3vw, 44px) !important;
  line-height: 1.18 !important;
}
body .commercial-hero-content .pavia-site-hero-title {
  max-width: min(100%, 26ch) !important;
}
/* Keep the exact supplied canvas proportion; never stretch or crop the mark. */
body img:is([src*="/Pavia_RealEstate_Services-"], [src*="/Pavia_ResidentialRealEstate-"]) {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 1768 / 557;
  object-fit: contain !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  filter: none !important;
}
body .pavia-commercial-page img.pavia-listing-logo { width: 110px; }
#homepage-email-updates {
  padding: 76px 32px;
  background: #fff;
  border-bottom: 1px solid #d4d4d0;
  color: #151515;
}
#homepage-email-updates .pavia-newsletter-wrap {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 86px;
  align-items: center;
}
#homepage-email-updates .pavia-newsletter-copy { display: flex; flex-direction: column; gap: 22px; }
#homepage-email-updates .pavia-newsletter-copy p { margin: 0; font-size: 18px; line-height: 1.5; }
#homepage-email-updates .pavia-newsletter-copy .pavia-newsletter-eyebrow {
  color: #ad172b;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
}
#homepage-email-updates h2 {
  color: #151515;
  font-family: "Berthold Akzidenz Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(30px, 3.2vw, 44px) !important;
  line-height: 1.1 !important;
  letter-spacing: -.025em;
  font-weight: 700 !important;
  text-transform: none !important;
  margin: 0;
}
#homepage-email-updates h2 span { display: block; }
#homepage-email-updates h2 em { font-style: normal; }
#homepage-email-updates .pavia-newsletter-copy-line { display: inline; }
#homepage-email-updates .pavia-mailchimp-form { width: 100%; }
#homepage-email-updates .pavia-mailchimp-form label {
  display: block;
  margin: 0 0 8px;
  color: #595959;
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
}
#homepage-email-updates .pavia-mailchimp-form input {
  box-sizing: border-box;
  width: 100%;
  height: 54px;
  padding: 12px;
  margin-bottom: 22px;
  border: 1px solid #bbb;
  border-radius: 8px;
  background: #fff;
  color: #151515;
  font-size: 16px;
}
#homepage-email-updates .pavia-newsletter-names { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
#homepage-email-updates .pavia-mailchimp-trap { position: absolute; left: -5000px; }
#homepage-email-updates .pavia-mailchimp-form button {
  padding: 14px 28px;
  border: 0;
  border-radius: 999px;
  background: #151515;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
#homepage-email-updates :is(input, button):focus-visible { outline: 2px solid #ad172b; outline-offset: 3px; }
.pavia-residential-page .footer-logo.pavia-original-residential-logo {
  background: #151515;
  padding: 10px;
  border-radius: 4px;
  height: auto;
  object-fit: contain;
  filter: none;
}
@media (max-width: 1100px) {
  #homepage-email-updates .pavia-newsletter-wrap { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 600px) {
  #homepage-email-updates { padding: 48px 22px; }
  #homepage-email-updates .pavia-newsletter-copy p { font-size: 16px; }
  #homepage-email-updates .pavia-newsletter-names { grid-template-columns: 1fr; gap: 0; }
}

/* Match the live Corporate homepage logo while retaining a mobile fit. */
body .pavia-corporate-landing .logo { width: 275px !important; }
@media (max-width: 600px) {
 body .pavia-corporate-landing .logo { width: 220px !important; max-width: 65vw !important; }
}

/* Keep the search input's right edge on the map/results column boundary. */
@media (min-width: 1101px) {
 body .pavia-commercial-page .ln-search-app .pavia-results-toolbar {
  grid-template-columns: minmax(300px, min(50%, calc(34% + 192px))) auto minmax(0, 1fr);
  column-gap: 0;
  padding-inline: 0;
 }
 body .pavia-commercial-page .pavia-results-toolbar .pavia-listing-search,
 body .pavia-commercial-page .pavia-results-toolbar .pavia-search-fields { display: contents; }
 body .pavia-commercial-page .pavia-results-toolbar #pavia-listing-query {
  width: calc(100% - 24px); min-width: 0; margin-left: 24px;
 }
 body .pavia-commercial-page .pavia-results-toolbar .pavia-search-fields > button { margin-left: 10px; }
 body .pavia-commercial-page .pavia-results-toolbar .ln-map-filterbar {
  margin-left: 18px; margin-right: 24px; flex-wrap: wrap;
 }
}
@media (min-width: 1101px) and (max-width: 1200px) {
 body .pavia-commercial-page .ln-search-app .pavia-results-toolbar {
  grid-template-columns: 40% auto minmax(0, 1fr);
 }
}

/* Residential homepage supporting copy matches the Corporate hero subtitle. */
body .pavia-residential-page .residential-subtitle {
 font-family: "Berthold Akzidenz Grotesk", Akzidenz-Grotesk, "Akzidenz Grotesk", "Helvetica Neue", Arial, sans-serif;
 width: auto;
 max-width: min(960px, calc(100vw - 64px));
 margin: 24px auto 0;
 font-size: 26px;
 font-weight: 500;
 line-height: 1.45;
 letter-spacing: .02em;
 text-align: center;
 color: rgba(255,255,255,.92);
 text-shadow: 0 6px 20px rgba(0,0,0,.52);
 white-space: normal;
}
@media (max-width: 820px) {
 body .pavia-residential-page .residential-subtitle { font-size: 19px; }
}
@media (max-width: 520px) {
 body .pavia-residential-page .residential-subtitle { max-width: min(320px, 100%); font-size: 16px; line-height: 1.38; }
}

/* October 1: softer listing typography in the same family as the site navigation. */
body .pavia-commercial-page .ln-result-card :is(h2, h2 a, .ln-card-price),
body .pavia-commercial-page .pavia-detail-title-block h1,
body .pavia-commercial-page .pavia-detail-price-card strong,
body .pavia-commercial-page .pavia-related-card > strong {
 font-family: "Berthold Akzidenz Grotesk", Akzidenz-Grotesk, "Akzidenz Grotesk", "Helvetica Neue", Arial, sans-serif !important;
 font-weight: 500 !important;
}
body .pavia-commercial-page .pavia-detail-title-block h1 { line-height: 1.15; }
body .pavia-commercial-page .pavia-detail-price-card:not(.is-status-only) strong {
 text-transform: none !important;
 line-height: 1.15;
 overflow-wrap: anywhere;
}

/* The three requested rounded CTAs use Pavia red, including their interaction states. */
body .pavia-commercial-page .pavia-home-search button[type="submit"],
body .pavia-commercial-page .pavia-home-search button[type="submit"]:is(:hover, :focus, :active),
body .pavia-commercial-page .pavia-results-toolbar .pavia-search-fields > button,
body .pavia-commercial-page .pavia-results-toolbar .pavia-search-fields > button:is(:hover, :focus, :active),
body .pavia-commercial-page .ln-result-card a.ln-view-property,
body .pavia-commercial-page .ln-result-card a.ln-view-property:is(:hover, :focus, :active) {
 background: #ad172b !important;
 border-color: #ad172b !important;
 color: #fff !important;
}
