/* Harris Homes shared typography system. */
@font-face {
  font-family: "HH Source Sans 3";
  src: url("fonts/source-sans-3-variable-latin-ext.woff2?v=20260930.1") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "HH Source Sans 3";
  src: url("fonts/source-sans-3-variable-latin.woff2?v=20260930.1") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}
@font-face {
  font-family: "HH DM Serif Text";
  src: url("fonts/dm-serif-text-latin-ext.woff2?v=20260930.1") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "HH DM Serif Text";
  src: url("fonts/dm-serif-text-400.woff2?v=20260930.1") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

:root {
  --hh-font-display: "HH DM Serif Text", Georgia, serif;
  --hh-font-body: "HH Source Sans 3", Arial, sans-serif;
  --hh-weight-regular: 400;
  --hh-weight-medium: 600;
  --hh-weight-bold: 700;

  --hh-size-body: 1rem;
  --hh-size-small: .875rem;
  --hh-size-label: .875rem;
  --hh-size-h1: clamp(2rem, 3.1vw, 3.2rem);
  --hh-size-h2: clamp(1.75rem, 2.5vw, 2.5rem);
  --hh-size-h3: clamp(1.375rem, 2vw, 1.75rem);
  --hh-line-body: 1.6;
  --hh-line-heading: 1.12;

  --hh-space-1: .25rem;
  --hh-space-2: .5rem;
  --hh-space-3: .75rem;
  --hh-space-4: 1rem;
  --hh-space-6: 1.5rem;
  --hh-space-8: 2rem;
  --hh-space-12: 3rem;
  --hh-space-16: 4rem;
  --hh-radius-control: .5rem;
  --hh-radius-card: .875rem;
  --hh-radius-pill: 999px;

  --hh-color-navy: #062644;
  --hh-color-accent: #00A7E9;
  --hh-color-ink: #20384e;
  --hh-color-muted: #526779;
  --hh-color-line: #dbe4e9;
  --hh-surface: #fff;
  --hh-surface-cool: #f3f7f9;
  --hh-surface-warm: #f8f7f2;

  /* Kadence generated CSS reads these family properties for body, headings, nav and buttons. */
  --global-body-font-family: var(--hh-font-body);
  --global-heading-font-family: var(--hh-font-display);
  --global-primary-nav-font-family: var(--hh-font-body);
}

/* Harris Homes editorial headings only. Interactive/control text remains sans. */
body {
  font-family: var(--hh-font-body);
  font-size: var(--hh-size-body);
  line-height: var(--hh-line-body);
}

body h1,
body h2 {
  max-width: 24ch;
  color: var(--hh-color-navy);
  font-family: var(--hh-font-display);
  font-size: var(--hh-size-h1);
  font-weight: var(--hh-weight-regular);
  line-height: 1.08;
  letter-spacing: -.02em;
  font-synthesis: none;
  text-wrap: balance;
  overflow-wrap: break-word;
}

body h2 {
  font-size: var(--hh-size-h2);
  line-height: 1.14;
}

body h3,
body h4,
body h5,
body h6 {
  font-family: var(--hh-font-body);
  font-weight: var(--hh-weight-medium);
  line-height: 1.3;
}

/* Keep long-form copy comfortably readable on wide Kadence layouts. */
body .entry-content > p {
  max-width: 72ch;
}

/* Keep mobile fields at the iOS zoom-safe size while leaving third-party iframe controls in their own styles. */
@media (max-width: 767px) {
  body.page .entry-content input:not([type="checkbox"]):not([type="radio"]),
  body.page .entry-content select,
  body.page .entry-content textarea {
    font-size: 16px;
  }

  /* The owned MLS/rental search app is rendered outside .entry-content. */
  body #hh-mls-index .hh-field input:not([type="checkbox"]):not([type="radio"]),
  body #hh-mls-index .hh-field select,
  body #hh-mls-index .hh-field textarea {
    font-size: 16px;
  }
}
