/* Staging-wide typography and accessible nested-menu color pairs. */
body.wp-theme-natural {
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.75;
}
body.wp-theme-natural h1, body.wp-theme-natural h2, body.wp-theme-natural h3,
body.wp-theme-natural h4, body.wp-theme-natural h5, body.wp-theme-natural h6,
body.wp-theme-natural .heading, body.wp-theme-natural .footer-heading,
body.wp-theme-natural .blog-title, body.wp-theme-natural .single-gallery-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.025em;
  text-transform: none;
  text-shadow: none;
}
body.wp-theme-natural:not(.home) h1,
body.wp-theme-natural:not(.home) h1.banner-title { font-size: clamp(40px,4.5vw,64px); line-height: 1.08; }
body.wp-theme-natural:not(.home) h2,
body.wp-theme-natural:not(.home) .heading { font-size: clamp(34px,3.4vw,48px); }
body.wp-theme-natural:not(.home) h3 { font-size: clamp(28px,2.4vw,36px); }
body.wp-theme-natural:not(.home) h4 { font-size: 28px; }
body.wp-theme-natural:not(.home) h5 { font-size: 25px; }
body.wp-theme-natural:not(.home) h6 { font-size: 22px; }
body.wp-theme-natural .footer-heading { font-size: 28px; }
body.wp-theme-natural input, body.wp-theme-natural textarea,
body.wp-theme-natural select, body.wp-theme-natural button, body.wp-theme-natural .btn,
body.wp-theme-natural .menu-top { font-family: 'DM Sans', Arial, sans-serif; }
body.wp-theme-natural .ti-widget .ti-review-content,
body.wp-theme-natural .ti-widget .ti-name { font-family: 'DM Sans', Arial, sans-serif !important; }
/* Existing third-level rules assign dark fills separately from link text.
   Always specify both colors for every depth/state, after the homepage rules. */
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li {
  background: #F6F4EF !important;
  color: #2F3E3A !important;
}
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li > a {
  background: #F6F4EF !important;
  color: #2F3E3A !important;
  font-weight: 500;
}
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li > a:hover,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li > a:focus,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current-menu-item > a,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current-menu-parent > a,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current-menu-ancestor > a,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current_page_item > a,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current_page_parent > a,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current_page_ancestor > a {
  background: #2F3E3A !important;
  color: #F6F4EF !important;
}
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.menu-item-has-children::after {
  border-color: #2F3E3A;
}
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current-menu-ancestor::after,
body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) .sub-menu li.current-menu-parent::after {
  border-color: #F6F4EF;
}
body.wp-theme-natural #header .sub-menu a:focus-visible {
  outline: 2px solid #6E7F8D !important;
  outline-offset: -3px !important;
}
@media (min-width: 1200px) {
  body.wp-theme-natural #header :is(ul.menu-top, ul.menu-bar-wrapper) li:focus-within > ul.sub-menu { display: block; }
}
@media (max-width: 767px) {
  body.wp-theme-natural { font-size: 16px; }
  body.wp-theme-natural:not(.home) h1,
  body.wp-theme-natural:not(.home) h1.banner-title { font-size: clamp(36px,9vw,46px); line-height: 1.1; }
}

/* Match mobile chevrons to each submenu surface. */
body.wp-theme-natural #header .menu-sidebar .sub-menu .sidebar-menu-arrow::after { border-color: #2F3E3A !important; }
body.wp-theme-natural #header .menu-sidebar .sub-menu :is(.current-menu-ancestor,.current-menu-parent,.current-menu-item) > .sidebar-menu-arrow::after,
body.wp-theme-natural #header .menu-sidebar .sub-menu a:hover + .sidebar-menu-arrow::after,
body.wp-theme-natural #header .menu-sidebar .sub-menu a:focus + .sidebar-menu-arrow::after { border-color: #F6F4EF !important; }
