.elementor-810 .elementor-element.elementor-element-fb24848{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-88349c4 */:root {
  --ng-navy: #2D3D44;
  --ng-cream: #F2EBD9;
  --ng-sage: #9DA985;
  --ng-forest: #5E7350;
  --ng-peach: #F0CFB1;
}
.ng-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  padding: 18px clamp(20px, 4vw, 56px);
  background: rgba(45, 61, 68, 0.18);
  backdrop-filter: blur(14px) saturate(1.1);
  -webkit-backdrop-filter: blur(14px) saturate(1.1);
  border-bottom: 0.5px solid rgba(242, 236, 216, 0.18);
  transition: background 0.35s ease, backdrop-filter 0.35s ease, border-color 0.35s ease, padding 0.35s ease;
}
.ng-header.is-scrolled {
  background: rgba(242, 236, 216, 0.98);
  border-bottom: 0.5px solid rgba(45, 61, 68, 0.14);
  padding: 12px clamp(20px, 4vw, 56px);
}
.ng-header-inner {
  max-width: 1400px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 32px;
}
.ng-logo {
  position: relative; display: inline-block;
  height: 38px; line-height: 0;
  text-decoration: none;
}
.ng-logo img {
  height: 100%; width: auto; display: block;
  transition: opacity 0.35s ease;
}
.ng-logo .ng-logo-dark {
  position: absolute; top: 0; left: 0;
  opacity: 0;
}
.ng-header.is-scrolled .ng-logo .ng-logo-light { opacity: 0; }
.ng-header.is-scrolled .ng-logo .ng-logo-dark  { opacity: 1; }
.ng-menu { display: flex; list-style: none; gap: clamp(20px, 3vw, 40px); margin: 0; padding: 0; }
.ng-menu a {
  font-family: 'Montserrat', sans-serif; font-size: 12px;
  letter-spacing: 0.26em; text-transform: uppercase;
  color: var(--ng-cream); text-decoration: none; font-weight: 500;
  padding: 6px 0; position: relative; transition: color 0.35s ease, opacity 0.2s ease;
}
.ng-menu a::after {
  content: ""; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0;
  height: 1px; width: 0; background: var(--ng-peach);
  transition: width 0.3s ease, background 0.35s ease;
}
.ng-menu a:hover::after, .ng-menu a[aria-current="page"]::after { width: 20px; }
.ng-header.is-scrolled .ng-menu a { color: var(--ng-navy); }
.ng-header.is-scrolled .ng-menu a::after { background: var(--ng-forest); }
.ng-menu a:hover { opacity: 0.8; }
.ng-cta {
  background: transparent; color: var(--ng-cream);
  border: 1.5px solid var(--ng-cream);
  font-family: 'Montserrat', sans-serif; font-size: 11px;
  letter-spacing: 0.28em; text-transform: uppercase; font-weight: 600;
  padding: 11px 24px; border-radius: 999px; text-decoration: none;
  transition: all 0.25s ease; white-space: nowrap; cursor: pointer;
}
.ng-cta:hover { background: var(--ng-cream); color: var(--ng-navy); }
.ng-header.is-scrolled .ng-cta {
  background: var(--ng-navy); color: var(--ng-cream); border-color: var(--ng-navy);
}
.ng-header.is-scrolled .ng-cta:hover {
  background: var(--ng-forest); border-color: var(--ng-forest);
}
.ng-burger { display: none; background: transparent; border: none; cursor: pointer; padding: 8px; margin-left: auto; }
.ng-burger span {
  display: block; width: 26px; height: 1.5px;
  background: var(--ng-cream); margin: 6px 0;
  transition: transform 0.3s ease, opacity 0.3s ease, background 0.35s ease;
}
.ng-header.is-scrolled .ng-burger span { background: var(--ng-navy); }
.ng-header.is-open .ng-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.ng-header.is-open .ng-burger span:nth-child(2) { opacity: 0; }
.ng-header.is-open .ng-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.ng-mobile-menu {
  display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(45, 61, 68, 0.96);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  z-index: 999; padding: 100px 30px 40px;
  flex-direction: column; align-items: center; justify-content: center;
  gap: 28px; text-align: center; opacity: 0; pointer-events: none;
  transition: opacity 0.3s ease;
}
.ng-mobile-menu.is-open { display: flex; opacity: 1; pointer-events: auto; }
.ng-mobile-menu a {
  font-family: 'Castoro', Georgia, serif; font-style: italic; font-size: 32px;
  color: var(--ng-cream); text-decoration: none;
  text-transform: lowercase; letter-spacing: -0.01em;
}
.ng-mobile-menu a.ng-cta-mobile {
  background: var(--ng-peach); color: var(--ng-navy);
  font-family: 'Montserrat', sans-serif; font-style: normal;
  font-size: 13px; letter-spacing: 0.28em; text-transform: uppercase;
  font-weight: 600; padding: 14px 32px; border-radius: 999px; margin-top: 16px;
}
.ng-mobile-logo {
  height: 44px; width: auto;
  display: block; margin: 0 auto 12px;
}
@media (max-width: 900px) { .ng-menu, .ng-cta { display: none; } .ng-burger { display: block; } }
.ng-header-spacer { height: 76px; }
@media (max-width: 900px) { .ng-header-spacer { height: 64px; } }/* End custom CSS */