/* 2026-06-02 home stability layer.
   Keeps the homepage header, hero, blog rail and map stable after legacy CSS layers. */

@media (min-width: 1024px) {
 body:not([data-page]) .header {
 padding: 0!important;
 width: 100%!important;
 }

 body:not([data-page]) .header .header__container {
 width: 100%!important;
 max-width: none!important;
 margin: 0!important;
 min-height: 82px!important;
 padding-inline: clamp(1.25rem, 3.4vw, 4.5rem)!important;
 border-radius: 0!important;
 border-left: 0!important;
 border-right: 0!important;
 }

 body:not([data-page]) .header__logo {
 align-items: center!important;
 min-width: clamp(250px, 20vw, 370px)!important;
 }

 body:not([data-page]) .header__logo-text {
 color: #214b37!important;
 font-size: clamp(2.18rem, 3.15vw, 4rem)!important;
 line-height: 0.92!important;
 }

 body:not([data-page]) .header__logo-region {
 width: 100%!important;
 margin-top: 0.26rem!important;
 color: rgba(160, 119, 51, 0.8)!important;
 font-size: clamp(0.86rem, 1.05vw, 1.25rem)!important;
 letter-spacing: 0.14em!important;
 text-align: center!important;
 }

 body:not([data-page]) .header__nav-list {
 gap: clamp(0.42rem, 0.72vw, 0.82rem)!important;
 padding: 0.36rem!important;
 background:
  linear-gradient(135deg, rgba(255, 255, 255, 0.34), rgba(232, 214, 176, 0.26))!important;
 box-shadow:
  inset 0 1px 0 rgba(255, 255, 255, 0.66),
  0 9px 24px rgba(117, 88, 35, 0.09)!important;
 }

 body:not([data-page]) .header__nav-link {
 min-height: 36px!important;
 padding: 0.48rem 0.8rem!important;
 color: rgba(51, 74, 76, 0.75)!important;
 transition:
  color 0.24s ease,
  background 0.28s ease,
  box-shadow 0.28s ease,
  transform 0.24s ease!important;
 }

 body:not([data-page]) .header__nav-link:hover,
 body:not([data-page]) .header__nav-link--active {
 color: #214b37!important;
 background:
  radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0) 58%),
  linear-gradient(135deg, rgba(255, 250, 237, 0.9), rgba(230, 211, 176, 0.62))!important;
 box-shadow:
  inset 0 1px 0 rgba(255, 255, 255, 0.82),
  0 8px 18px rgba(126, 92, 40, 0.14)!important;
 transform: translateY(-1px)!important;
 }

 body:not([data-page]) .hero {
 width: 100%!important;
 max-width: none!important;
 min-height: clamp(390px, 30vw, 520px)!important;
 margin: 0!important;
 border-left: 0!important;
 border-right: 0!important;
 border-radius: 0!important;
 }

 body:not([data-page]) .hero__bg-img {
 width: 100%!important;
 height: 100%!important;
 object-fit: cover!important;
 }

 body:not([data-page]) .why-us {
 margin-top: clamp(-74px, -4vw, -48px)!important;
 }

 body:not([data-page]) .why-us__grid {
 gap: clamp(0.95rem, 1.28vw, 1.45rem)!important;
 }

 body:not([data-page]) .why-us__card {
 min-height: clamp(198px, 13.5vw, 232px)!important;
 padding: clamp(0.9rem, 1.25vw, 1.22rem)!important;
 }

 body:not([data-page]) .why-us__card--art {
 aspect-ratio: auto!important;
 min-height: clamp(198px, 13.5vw, 232px)!important;
 }

 body:not([data-page]) .why-us__card--art .why-us__icon {
 width: clamp(44px, 3vw, 52px)!important;
 height: clamp(44px, 3vw, 52px)!important;
 margin-bottom: clamp(0.38rem, 0.55vw, 0.62rem)!important;
 }

 body:not([data-page]) .why-us__card--art .why-us__title {
 margin-bottom: clamp(0.3rem, 0.42vw, 0.48rem)!important;
 font-size: clamp(1.02rem, 1.08vw, 1.18rem)!important;
 line-height: 1.08!important;
 }

 body:not([data-page]) .why-us__card--art .why-us__text {
 max-width: 92%!important;
 font-size: clamp(0.84rem, 0.9vw, 0.96rem)!important;
 line-height: 1.3!important;
 }

 body:not([data-page]) .section > .container,
 body:not([data-page]) .footer .container {
 width: min(100% - clamp(2rem, 6vw, 8rem), 1760px)!important;
 max-width: 1760px!important;
 }

 body:not([data-page]) .articles-preview .articles-layout {
 display: grid!important;
 grid-template-columns: 300px minmax(0, 1fr)!important;
 gap: clamp(1.35rem, 2vw, 2.25rem)!important;
 align-items: start!important;
 }

 body:not([data-page]) .articles-preview .articles-sidebar {
 display: grid!important;
 grid-template-rows: auto auto minmax(0, 1fr)!important;
 align-self: start!important;
 height: var(--home-blog-grid-height, auto)!important;
 gap: var(--space-lg)!important;
 padding-top: 16px!important;
 overflow: hidden!important;
 }

 body:not([data-page]) .articles-preview .articles-sidebar .sidebar-block {
 min-height: 0!important;
 }

 body:not([data-page]) .articles-preview .articles-sidebar .sidebar-block:last-child {
 height: 100%!important;
 min-height: 0!important;
 display: flex!important;
 flex-direction: column!important;
 justify-content: flex-start!important;
 }

 body:not([data-page]) .articles-preview .articles-main {
 min-width: 0!important;
 padding-top: 22px!important;
 }

 body:not([data-page]) .articles-preview .articles-preview__grid {
 display: flex!important;
 flex-direction: column!important;
 gap: 18px!important;
 }
}

.geography__app-shell {
 isolation: isolate;
}

.geography__app-frame {
 display: block!important;
}

/* 2026-06-09 UNIFIED HOME BRAND LOGO */
body:not([data-page]) .header__logo {
 align-items: flex-start!important;
 min-width: clamp(210px, 18vw, 320px)!important;
 max-width: clamp(210px, 22vw, 340px)!important;
}

body:not([data-page]) .header__logo-text {
 color: #0d3324!important;
 font-family: var(--brand-logo-font)!important;
 font-size: clamp(2.35rem, 3.05vw, 3.55rem)!important;
 font-weight: 400!important;
 line-height: 0.88!important;
 letter-spacing: 0!important;
 text-align: left!important;
 white-space: nowrap!important;
}

body:not([data-page]) .header__logo-region {
 width: 100%!important;
 margin-top: 0.12rem!important;
 overflow: hidden!important;
 color: rgba(28, 53, 39, 0.72)!important;
 font-family: var(--font-primary)!important;
 font-size: clamp(0.74rem, 0.78vw, 0.92rem)!important;
 font-weight: 700!important;
 line-height: 1.1!important;
 letter-spacing: 0.03em!important;
 text-align: left!important;
 text-overflow: ellipsis!important;
 text-transform: none!important;
 white-space: nowrap!important;
}
