:root {
  --mvn-green: #2f7d32;
  --mvn-deep: #173b2a;
  --mvn-ink: #1e2d26;
  --mvn-paper: #fffdf8;
  --mvn-wash: #eef3ed;
  --mvn-line: #d7e1d5;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--mvn-wash); color: var(--mvn-ink); font-family: Georgia, 'Times New Roman', serif; line-height: 1.7; }
#boxed-wrapper, #wrapper { min-height: 100vh; }
.fusion-secondary-header { background: var(--mvn-green); color: #fff; font-family: system-ui, sans-serif; font-size: .82rem; }
.fusion-secondary-header .fusion-row { max-width: none; width: 100%; margin: auto; padding: .25rem 2.5rem; line-height: 1.2; }
.fusion-contact-info { display: flex; flex-wrap: wrap; gap: .45rem; align-items: center; }
.fusion-contact-info a { color: #fff; text-decoration: none; }
.fusion-header { color: #fff; background: linear-gradient(90deg, rgba(23,59,42,.92), rgba(23,59,42,.56)), url('/wp-content/uploads/2024/03/cropped-Raw-Head.-a-lovely-walk-021.jpg') center 44% / cover; }
.fusion-header .fusion-row { max-width: none; width: 100%; min-height: 78px; margin: auto; padding: .7rem 2.5rem; display: flex; align-items: center; gap: 2rem; }
.fusion-logo { margin-right: auto; }
.fusion-logo img { display: block; width: auto; max-width: 210px; height: auto; }
.fusion-sticky-logo { display: none !important; }
.fusion-main-menu { margin-left: auto; }
.fusion-main-menu .fusion-menu { display: flex; flex-wrap: nowrap !important; align-items: center; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.fusion-main-menu .fusion-menu a { display: block; padding: .7rem .75rem; color: #fff; font: 700 .75rem/1.2 system-ui, sans-serif; letter-spacing: .055em; text-decoration: none; text-transform: uppercase; border-radius: 0; white-space: nowrap; }
.fusion-main-menu .fusion-menu a:hover, .fusion-main-menu .current-menu-item a { background: rgba(255,255,255,.18); }
.fusion-mobile-menu-icons { display: none; }
#main #content { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem 5rem; }
.post-content { max-width: 100%; }
.fusion-fullwidth { background: transparent !important; }
.fusion-builder-row { max-width: 1144px !important; margin: 0 -2% !important; padding: 0 !important; display: flex; flex-wrap: wrap !important; gap: 0; align-items: flex-start; }
.fusion-layout-column { float: none !important; width: auto !important; margin: 0 0 20px !important; }
.fusion-builder-column-0 { flex: 0 0 33.333333%; min-width: 0; padding-inline: 0 !important; }
.fusion-builder-column-1 { flex: 0 0 66.666667%; min-width: 0; padding-inline: 0 !important; }
.fusion-column-wrapper { height: auto !important; }
.fusion-image-element { margin: 0 0 1.1rem !important; }
.fusion-imageframe { display: block; width: 224px; max-width: 100%; padding: 0; background: var(--mvn-paper); border: 4px solid #fff !important; border-radius: 4px !important; box-shadow: 12px 12px 16px rgba(91,91,91,.3) !important; }
.fusion-imageframe img { display: block; width: 100%; height: auto; border-radius: 0; }
.fusion-button { display: inline-flex; justify-content: center; width: 100%; padding: .95rem 1.2rem; background: var(--mvn-green) !important; color: #fff !important; border-radius: .2rem !important; font: 700 .95rem system-ui, sans-serif; text-decoration: none; white-space: nowrap; box-shadow: 0 .5rem 1rem rgba(47,125,50,.2); }
.fusion-button:hover { background: var(--mvn-deep) !important; }
.fusion-title-heading { color: var(--mvn-green) !important; font-size: clamp(1.8rem, 2.5vw, 2.4rem) !important; line-height: 1.1 !important; letter-spacing: -.03em; }
.fusion-title-2 .fusion-title-heading { margin-top: 1.6rem !important; font-size: clamp(1.35rem, 2vw, 1.85rem) !important; line-height: 1.25 !important; }
.fusion-title-3 .fusion-title-heading { margin-top: 2.3rem !important; color: var(--mvn-ink) !important; font-size: clamp(1.45rem, 2vw, 2rem) !important; }
.fusion-text { font-size: 1rem; }
.fusion-text p { margin: 1rem 0; }
.fusion-footer { background: var(--mvn-deep); min-height: 7rem; }
.wpcf7-form, .post-content > .fusion-builder-row > .fusion-layout-column { max-width: 100%; }
input, select, textarea { max-width: 100%; border: 1px solid var(--mvn-line); border-radius: .45rem; padding: .75rem .85rem; background: #fff; font: inherit; }
input[type='submit'] { border: 0; background: var(--mvn-green); color: #fff; font: 700 1rem system-ui, sans-serif; cursor: pointer; }

@media (max-width: 900px) {
  .fusion-header .fusion-row { min-height: 76px; }
  .fusion-main-menu .fusion-menu a { padding-inline: .55rem; font-size: .68rem; }
}

@media (max-width: 800px) {
  .fusion-header .fusion-row { min-height: 64px; padding: .7rem 1rem; }
  .fusion-logo img { max-width: 180px; }
  .fusion-main-menu { display: none; }
  .fusion-mobile-menu-icons { display: block; margin-left: auto; }
  .fusion-mobile-menu-icons a { color: #fff; font-size: 1.55rem; text-decoration: none; }
  #main #content { padding: 2.5rem 1rem; }
  .fusion-builder-row { display: block !important; margin-inline: 0 !important; }
  .fusion-layout-column, .fusion-builder-column-0, .fusion-builder-column-1 { flex: none !important; width: 100% !important; padding-inline: 1.92%; }
  .fusion-builder-column-0 { margin-bottom: 2.5rem !important; }
  .fusion-imageframe { width: 100%; max-width: 25rem; margin-inline: auto; }
  .fusion-button { width: 100%; max-width: 25rem; margin-inline: auto; }
  .fusion-text { font-size: 1rem; }
}


/* Match the supplied gold MVN layout at desktop widths. */
:root { --mvn-green: #4c812d; }
.fusion-secondary-header .fusion-row {
  min-height: 77px !important;
  padding: 0 1.15rem !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
}
.fusion-contact-info {
  margin-right: auto;
  font: 700 1.15rem/1.25 Georgia, 'Times New Roman', serif;
  gap: .6rem;
}
.fusion-header {
  background-image: url('/wp-content/uploads/2024/03/cropped-Raw-Head.-a-lovely-walk-021.jpg') !important;
  background-position: center 44% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}
.fusion-header .fusion-row {
  max-width: none !important;
  width: 100% !important;
  min-height: 134px !important;
  padding: .8rem 1.15rem !important;
  justify-content: space-between;
}
.fusion-logo { width: 255px !important; flex: 0 0 255px !important; margin-left: -2rem !important; transform: translateY(.6rem); }
.fusion-logo img { width: 255px !important; max-width: 255px !important; }
.fusion-main-menu { width: 73.2%; flex: 0 0 73.2%; margin-left: auto !important; margin-right: 0 !important; transform: translateY(.6rem); }
.fusion-main-menu .fusion-menu { width: 100%; justify-content: space-between !important; gap: 0; }
.fusion-main-menu .fusion-menu a {
  padding: 1.05rem 2.4rem;
  font: 700 1.65rem/1.2 Georgia, 'Times New Roman', serif;
  letter-spacing: .02em;
}
.fusion-main-menu .fusion-menu a:hover,
.fusion-main-menu .fusion-menu .current-menu-item a {
  background: rgba(30, 45, 38, .42);
}
#main #content {
  width: 100% !important;
  max-width: none !important;
  padding: 2.85rem 1.15rem 5rem !important;
}
#main .fusion-row { max-width: none !important; width: 100% !important; }
.fusion-builder-row {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
}
.fusion-builder-column-0 { flex-basis: 31% !important; }
.fusion-builder-column-1 { flex-basis: 69% !important; padding-left: 2.2rem !important; }
.fusion-image-element { margin-left: -1.5rem !important; }
.fusion-imageframe { width: 80% !important; max-width: 420px; }
.fusion-button {
  width: calc(100% + 3.8rem) !important;
  max-width: none !important;
  transform: translateX(-1.9rem);
  padding: 1.35rem 1.2rem;
  font-size: 1.45rem;
}
.fusion-title-heading {
  font-size: clamp(3rem, 3.3vw, 3.75rem) !important;
  line-height: 1.2 !important;
  margin-top: .5rem !important;
  letter-spacing: -.025em;
}
.fusion-title-2 .fusion-title-heading {
  font-size: clamp(2rem, 2.2vw, 2.5rem) !important;
  line-height: 1.22 !important;
}
.fusion-title-3 .fusion-title-heading {
  font-size: clamp(1.9rem, 2vw, 2.3rem) !important;
  line-height: 1.2 !important;
}
.fusion-text { font-size: 1.45rem; line-height: 1.85; }
.fusion-text p { margin: 1.4rem 0; }
.mobile-menu { display: none !important; }
.fusion-title-2 .fusion-title-heading { margin-top: .8rem !important; }
.fusion-title-3 .fusion-title-heading { margin-top: .25rem !important; }
.fusion-title-3 + .fusion-text { margin-top: -1rem; }
.site-content { background: #fff; }

/* Keep the desktop navigation inside the panoramic header without changing
   the width of the active tab, and match the source's larger body copy. */
@media (min-width: 1451px) {
  .fusion-main-menu { display: block !important; visibility: visible !important; opacity: 1 !important; }
  .fusion-main-menu .fusion-menu { display: flex !important; visibility: visible !important; }
  .fusion-main-menu .fusion-menu a { padding-inline: 1rem; }
  .fusion-main-menu .fusion-menu li:first-child a { padding-inline: 2.4rem; }
}
.fusion-text { font-size: 1.55rem; line-height: 1.8; }
.fusion-text p { margin-bottom: .8rem; }

@media (min-width: 801px) and (max-width: 1450px) {
  .fusion-header .fusion-row { min-height: 134px !important; }
  .fusion-logo, .fusion-logo img {
    width: clamp(180px, 18vw, 255px) !important;
    max-width: clamp(180px, 18vw, 255px) !important;
    flex-basis: clamp(180px, 18vw, 255px) !important;
  }
  .fusion-main-menu { width: auto; flex: 1 1 auto; min-width: 0; }
  .fusion-main-menu .fusion-menu { justify-content: space-between !important; }
  .fusion-main-menu .fusion-menu a {
    padding: 1rem clamp(.35rem, 1.2vw, 1rem);
    font-size: clamp(1rem, 1.45vw, 1.3rem);
  }
  .fusion-main-menu .fusion-menu li:first-child a {
    padding-inline: clamp(.8rem, 2vw, 1.5rem);
  }
}
@media (max-width: 800px) {
  .fusion-main-menu { display: none !important; }
  .mobile-menu { display: block !important; position: relative; margin-left: auto; color: #fff; font: 700 1.6rem/1 system-ui, sans-serif; }
  .mobile-menu summary { cursor: pointer; list-style: none; }
  .mobile-menu summary::marker { content: ''; }
  .mobile-menu summary::-webkit-details-marker { display: none !important; }
  .mobile-menu nav { position: absolute; z-index: 10; top: calc(100% + .8rem); right: 0; width: min(19rem, calc(100vw - 2rem)); padding: .5rem 0; background: var(--mvn-deep); box-shadow: 0 .5rem 1.5rem rgba(0,0,0,.2); }
  .mobile-menu ul { margin: 0; padding: 0; list-style: none; }
  .mobile-menu a { display: block; padding: .8rem 1rem; color: #fff; font: 700 .85rem/1.3 system-ui, sans-serif; text-decoration: none; text-transform: uppercase; }
  #main #content { padding-top: 2.7rem !important; }
}
@media (max-width: 800px) {
  .fusion-secondary-header .fusion-row { min-height: 56px !important; padding-inline: 1rem !important; }
  .fusion-contact-info { font-size: .9rem; }
  .fusion-header .fusion-row { min-height: 76px !important; }
  .fusion-logo, .fusion-logo img { width: 180px !important; max-width: 180px !important; flex-basis: 180px !important; transform: none; }
  .fusion-main-menu { transform: none; }
  .fusion-builder-column-0 { flex-basis: auto !important; }
  .fusion-builder-column-1 { flex-basis: auto !important; padding-left: 1.92% !important; }
  #main #content { padding: 2.5rem 1rem 4rem !important; }
  .fusion-image-element, .fusion-button { margin-left: 0 !important; }
  .fusion-imageframe, .fusion-button { width: 100% !important; max-width: 25rem !important; }
  .fusion-button { transform: none !important; }
  .fusion-text { font-size: 1rem; }
}
