/* KH Realty — Global Styles */
.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; }
#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; }
.site-branding, .ast-site-identity { padding-top:0 !important; padding-bottom:0 !important; }
#masthead .main-header-menu a, #masthead .ast-masthead-custom-menu-items a, .site-header .main-header-menu a { color:#ffffff !important; }
#masthead .main-header-menu a:hover, .site-header .main-header-menu a:hover { color:#21B4A6 !important; }
.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; }
.entry-header, .page-header, .ast-breadcrumbs-wrapper { display:none !important; }
body:not(.home) #masthead { background:#0d1b2a !important; position:sticky; top:0; z-index:9999; }
.admin-bar body:not(.home) #masthead { top:32px; }
#masthead .ast-container { max-width:100%; padding-left:32px; padding-right:32px; }
body:not(.home) .entry-content { margin-top:0 !important; }
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; }
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; }
.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; }

#kh-mob-cta { display:none; }

@media (max-width:921px) {
  body:not(.home) #masthead {
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:9999 !important;
  }
  .admin-bar body:not(.home) #masthead {
    top:46px !important;
  }
  body:not(.home) #page {
    padding-top:60px !important;
  }
  .admin-bar body:not(.home) #page {
    padding-top:0 !important;
  }
  .ast-primary-header-bar {
    min-height:60px !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
  }
  .ast-above-header-bar,
  #ast-mobile-header-sticky-placeholder,
  .ast-mobile-header-sticky-placeholder {
    display:none !important;
  }
  #kh-mob-cta {
    display:flex !important;
    position:fixed !important;
    bottom:0 !important;
    bottom:env(safe-area-inset-bottom, 0) !important;
    left:0 !important;
    right:0 !important;
    z-index:10000 !important;
    background:#21B4A6 !important;
    box-shadow:0 -2px 12px rgba(0,0,0,.2) !important;
  }
  #kh-mob-cta a {
    display:block !important;
    width:100% !important;
    padding:15px 24px !important;
    padding-bottom:calc(15px + env(safe-area-inset-bottom, 0px)) !important;
    color:#ffffff !important;
    font-family:'DM Sans',sans-serif !important;
    font-size:16px !important;
    font-weight:700 !important;
    text-align:center !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
  }
  .site-footer {
    padding-bottom:56px;
  }
}
