/* KH Realty — Global Styles */

/* === ALL PAGES: Header padding + height === */
.ast-primary-header-bar {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  min-height: 80px !important;
  box-sizing: border-box !important;
}
.ast-primary-header-bar .ast-builder-grid-row {
  min-height: 0 !important;
  align-items: center !important;
}

/* === ALL PAGES: Logo size — prevent stretch === */
#masthead .custom-logo-link img,
.site-header .custom-logo-link img,
.ast-site-identity .custom-logo-link img {
  max-height: 48px !important;
  height: auto !important;
  width: auto !important;
  display: block;
}

/* === ALL PAGES: Remove site-branding padding === */
.site-branding,
.ast-site-identity {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* === ALL PAGES: Nav links white === */
#masthead .main-header-menu a,
#masthead .ast-masthead-custom-menu-items a,
.site-header .main-header-menu a {
  color: #ffffff !important;
}

/* === ALL PAGES: Nav hover teal === */
#masthead .main-header-menu a:hover,
.site-header .main-header-menu a:hover {
  color: #21B4A6 !important;
}

/* === ALL PAGES: Vertically centre header elements === */
.ast-primary-header-bar .ast-flex,
.ast-primary-header-bar .site-header-primary-section-left,
.ast-primary-header-bar .site-header-primary-section-right,
.ast-primary-header-bar .ast-builder-grid-row {
  align-items: center !important;
}

/* === ALL PAGES: Hide Astra entry-header / breadcrumbs === */
.entry-header,
.page-header,
.ast-breadcrumbs-wrapper {
  display: none !important;
}

/* === INTERIOR PAGES: Solid dark navy header + sticky === */
body:not(.home) #masthead {
  background: #0d1b2a !important;
  position: sticky;
  top: 0;
  z-index: 9999;
}

/* === INTERIOR PAGES: Admin bar offset (logged-in only) === */
.admin-bar body:not(.home) #masthead {
  top: 32px;
}

/* === ALL PAGES: Header container full width === */
#masthead .ast-container {
  max-width: 100%;
  padding-left: 32px;
  padding-right: 32px;
}

/* === INTERIOR PAGES: Remove margin from hidden entry-header === */
body:not(.home) .entry-content {
  margin-top: 0 !important;
}

/* === Contact page — full dark navy background === */
body.page-id-301,
body.page-id-301 #page,
body.page-id-301 #content,
body.page-id-301 .site-content,
body.page-id-301 #primary,
body.page-id-301 .entry-content {
  background: #111A28 !important;
}

/* === Interior Page Hero Banner === */
.kh-page-hero {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  background: #111A28;
  padding: 96px 24px 80px;
  text-align: center;
  box-sizing: border-box;
}
.kh-page-hero__inner {
  max-width: 720px;
  margin: 0 auto;
}
.kh-page-hero__eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #21B4A6;
  margin: 0 0 20px;
}
.kh-page-hero__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 700;
  color: #ffffff;
  line-height: 1.15;
  margin: 0 0 24px;
}
.kh-page-hero__title em {
  font-style: italic;
  color: #c9a96e;
}
.kh-page-hero__sub {
  font-family: 'DM Sans', sans-serif;
  font-size: 1.05rem;
  color: rgba(255, 255, 255, 0.6);
  margin: 0;
  line-height: 1.7;
}
/* Thank-you page */
body.page-thank-you,
body.page-thank-you #page,
body.page-thank-you #content,
body.page-thank-you .site-content,
body.page-thank-you #primary,
body.page-thank-you .entry-content { background:#111A28 !important; }