/*!
Theme Name: Magnetic WP
Author: Douglas Green
Author URI: https://douglasgreen.com/
Description: Magnetic WP is a traditional blogging theme with a clean and minimal two column design. Use it as a starting point for a blog, portfolio, or business site. The homepage template features a full-width hero section, and alternating column widgets to display featured items. Customize it further with the included Sass files. See the full demo at: https://www.themedemo.app/magnetic/
Version: 1.3.0
Tested up to: 6.6
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: magnetic-wp
Tags: blog, custom-background, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, portfolio, right-sidebar, threaded-comments, translation-ready, two-columns

Magnetic WP is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

.clearfix::before, .clearfix::after {
  display: table;
  content: " ";
}

.clearfix::after {
  clear: both;
}

.img-fluid,
.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.list-unstyled,
.list-nostyle {
  padding-left: 0;
  list-style: none;
}

.list-unstyled li,
.list-nostyle li {
  list-style-type: none;
}

.list-inline {
  padding-left: 0;
  margin-left: -5px;
  list-style: none;
}

.list-inline > li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}

/*
 * Hide visually and from screen readers
 */
.hidden {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */
.sr-only,
.visuallyhidden,
.screen-reader-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
  /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.sr-only-focusable:active, .sr-only-focusable:focus,
.sr-only.focusable:active,
.sr-only.focusable:focus,
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible {
  visibility: hidden;
}

html {
  box-sizing: border-box;
  scroll-behavior: smooth;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

body {
  color: #212833;
  background-color: #FFFFFF;
}

h1, h2, h3, h4, h5, h6,
th,
legend {
  color: #212833;
}

a,
a:link {
  color: #2F835F;
  text-decoration: underline;
}

a:hover,
a:active,
a:focus {
  color: #3ca97a;
}

a:visited {
  color: #2F835F;
}

a,
.btn,
.btn {
  transition: all .2s ease;
}

/*
 * Remove text-shadow in selection highlight: HTML5 Boilerplate
 * Customize the background color to match your design.
 */
::selection {
  background: #eaeaea;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: .1rem;
  border: 0;
  border-top: 0.1rem solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles (and Normalize padding).
 */
fieldset {
  margin: 0;
  padding: 0;
  border: none;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}

abbr[title],
acronym[title] {
  text-decoration: none;
  border-bottom: 0.1rem dotted #999999;
}

abbr[title]:hover,
acronym[title]:hover {
  cursor: help;
}

figure,
figcaption {
  margin: 0;
  padding: 0;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

body {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  overflow-wrap: break-word;
}

.nav-links {
  overflow-wrap: anywhere;
}

h1, h2, h3, h4, h5, h6, dt, legend, caption, label, th {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.6rem;
  line-height: 1.625;
}

h1 {
  font-size: 3.6rem;
  line-height: 1.4;
}

h2 {
  font-size: 3rem;
  line-height: 1.4;
}

h3 {
  font-size: 2.4rem;
  line-height: 1.4;
}

h4,
h5,
h6,
dt,
legend,
caption {
  font-size: 1.8rem;
  line-height: 1.4;
}

p,
li,
dd,
td,
th,
label,
input,
select,
textarea,
button,
optgroup,
address,
blockquote {
  font-size: 1.6rem;
  line-height: 1.625;
}

figcaption {
  font-size: 1.4rem;
  line-height: 1.625;
}

h1,
h2,
h3,
h4,
h5,
h6,
dt,
legend,
caption,
th {
  font-weight: normal;
}

strong,
b {
  font-weight: bold;
}

em, i, dfn, cite {
  font-style: italic;
}

address {
  font-style: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: .5em;
}

h6 {
  margin-top: .5em;
}

p,
dd,
address,
blockquote,
pre {
  margin-bottom: 1.625em;
}

table,
ul,
ol,
dl {
  margin-bottom: 2.4em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
}

table {
  width: 100%;
  border-spacing: 0;
}

th {
  background-color: #FFFFFF;
}

th,
td {
  padding: .4em;
}

td {
  text-align: center;
  border-bottom: 0.1rem solid #eaeaea;
}

caption {
  padding: .6em;
  font-size: 1.6rem;
}

pre {
  background: #efefef;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 1.5rem;
  line-height: 1.625;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

legend {
  margin-bottom: 1em;
}

label {
  display: block;
}

input,
select,
textarea {
  margin-bottom: 1em;
  padding: .4em;
}

textarea {
  width: 100%;
}

button:not(.nav-toggle):not(.customize-partial-edit-shortcut-button):not(.customize-partial-edit-shortcut):not(.mejs-button button),
input[type="button"],
input[type="submit"],
input[type="reset"],
input.btn,
input.button {
  display: inline-block;
  clear: both;
  width: auto;
  margin: 1em 0;
  padding: .6em 1.5em;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #FFFFFF;
  background-color: #2F835F;
  border: solid 0.2rem #2F835F;
  transition: all 0.1s ease;
}

button:not(.nav-toggle):not(.customize-partial-edit-shortcut-button):not(.customize-partial-edit-shortcut):hover, button:not(.nav-toggle):not(.customize-partial-edit-shortcut-button):not(.customize-partial-edit-shortcut):active, button:not(.nav-toggle):not(.customize-partial-edit-shortcut-button):not(.customize-partial-edit-shortcut):focus,
input[type="button"]:hover,
input[type="button"]:active,
input[type="button"]:focus,
input[type="submit"]:hover,
input[type="submit"]:active,
input[type="submit"]:focus,
input[type="reset"]:hover,
input[type="reset"]:active,
input[type="reset"]:focus,
input.btn:hover,
input.btn:active,
input.btn:focus,
input.button:hover,
input.button:active,
input.button:focus {
  background-color: #36966d;
  border-color: #36966d;
}

label.hidden {
  margin-left: -10000em;
  width: 0;
  float: none;
}

input,
select,
textarea {
  color: #212833;
  border: 0.1rem solid #d3d3d3;
}

input:hover,
input:focus,
input:active,
textarea:hover,
textarea:focus,
textarea:active,
select:hover,
select:focus,
select:active {
  border-color: #a0a0a0;
}

.req,
.required {
  color: red;
}

/* wrap elements with .form-group to give them 100% width and apply other formatting */
.form-group label {
  margin: .25em 0 .5em 0;
}

.form-group input,
.form-group select {
  width: 100%;
}

.form-check::before, .form-check::after {
  display: table;
  content: " ";
}

.form-check::after {
  clear: both;
}

.form-check label,
.form-check input[type="radio"],
.form-check input[type="checkbox"] {
  width: auto;
  float: left;
  margin: .4em;
}

.form-check label {
  margin-top: 0;
  margin-bottom: .5em;
}

.container,
.container-full-width {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2rem;
}

.container-full-width {
  width: 100%;
  max-width: none;
}

.wrap-inner {
  margin-left: auto;
  margin-right: auto;
}

.container--flex {
  display: flex;
  flex-flow: row wrap;
}

.site-main {
  padding-top: 2.5em;
}

#secondary {
  padding-top: 4em;
}

.site-header {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-color: #FFFFFF;
}

.site-header .brand {
  margin: 0;
  padding: 0;
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #212833;
  text-decoration: none;
}

.site-header .brand:link, .site-header .brand:active, .site-header .brand:visited {
  color: #212833;
}

.site-header .brand:hover, .site-header .brand:focus {
  color: #3ca97a;
  text-decoration: none;
}

.site-header .site-description {
  color: #212833;
}

.site-header .container {
  max-width: 1200px;
}

.body--transparent-header .site-header {
  background-color: transparent;
  transition: background-color .4s ease;
}

.body--transparent-header .site-header .brand {
  color: #FFFFFF;
  text-decoration: none;
}

.body--transparent-header .site-header .brand:link, .body--transparent-header .site-header .brand:active, .body--transparent-header .site-header .brand:visited {
  color: #FFFFFF;
}

.body--transparent-header .site-header .brand:hover, .body--transparent-header .site-header .brand:focus {
  color: #3ca97a;
  text-decoration: none;
}

.body--transparent-header .site-header .site-description {
  color: #FFFFFF;
}

.body--transparent-header .site-header.toggled {
  background-color: rgba(0, 0, 0, 0.92);
}

.body--transparent-header .site-header.scrolled {
  background-color: #FFFFFF;
}

.body--transparent-header .site-header.scrolled .brand {
  color: #212833;
  text-decoration: none;
}

.body--transparent-header .site-header.scrolled .brand:link, .body--transparent-header .site-header.scrolled .brand:active, .body--transparent-header .site-header.scrolled .brand:visited {
  color: #212833;
}

.body--transparent-header .site-header.scrolled .brand:hover, .body--transparent-header .site-header.scrolled .brand:focus {
  color: #3ca97a;
  text-decoration: none;
}

.body--transparent-header .site-header.scrolled .site-description {
  color: #212833;
}

.site-title {
  margin: 0;
}

.site-description {
  display: block;
  clear: both;
  margin: 0;
  font-size: 1.6rem;
  font-weight: 400;
}

.custom-logo {
  display: inline-block;
  max-width: 200px;
  height: auto;
}

body {
  padding-top: 5rem;
}

body.body--transparent-header {
  padding-top: 0;
}

.site-header {
  position: fixed;
  z-index: 999;
  top: 0;
  width: 100%;
}

body.body--transparent-header .site-header {
  position: absolute;
  box-shadow: none;
}

body.body--transparent-header .site-header.scrolled {
  position: fixed;
}

@media screen and (max-width: 782px) {
  body.admin-bar .site-header:not(.scrolled) {
    top: 46px;
  }
}

@media screen and (min-width: 783px) {
  body.admin-bar .site-header {
    top: 32px;
  }
}

.footer-widgets {
  margin-top: 1em;
  padding: 2em 0;
  color: #FFFFFF;
  background-color: #2F835F;
}

.footer-widgets a {
  font-weight: bold;
  text-decoration: underline;
  color: #FFFFFF;
}

.footer-widgets a:hover,
.footer-widgets a:focus {
  color: #212833;
}

.footer-widgets a.btn {
  background-color: #212833;
  border-color: #212833;
}

.footer-widgets a.btn:hover, .footer-widgets a.btn:focus {
  background-color: #354052;
  border-color: #354052;
}

.footer-widgets h2.widget-title {
  color: #FFFFFF;
}

.site-footer {
  padding-top: 1.6em;
  padding-bottom: 1em;
  color: #FFFFFF;
  background-color: #212833;
}

.site-footer p {
  font-size: 1.3rem;
}

.site-footer a {
  text-decoration: underline;
  color: #FFFFFF;
}

.site-footer a:hover,
.site-footer a:focus {
  color: #3ca97a;
}

.no-js .main-navigation.hidden,
.no-js .mobile-navigation.hidden {
  display: block !important;
}

.no-js .nav-toggle {
  display: none;
}

.main-navigation ul,
.main-navigation div ul,
.mobile-navigation ul {
  padding-left: 0;
  list-style: none;
  margin: 0;
  text-align: center;
}

.main-navigation ul li,
.main-navigation div ul li,
.mobile-navigation ul li {
  list-style-type: none;
}

.main-navigation li,
.main-navigation div li,
.mobile-navigation li {
  padding-top: 2.25em;
  font-size: 1.3rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.main-navigation li.active a,
.main-navigation div li.active a,
.mobile-navigation li.active a {
  color: #3ca97a;
}

.main-navigation li.current-menu-item > a,
.main-navigation li.current_page_item > a,
.main-navigation div li.current-menu-item > a,
.main-navigation div li.current_page_item > a,
.mobile-navigation li.current-menu-item > a,
.mobile-navigation li.current_page_item > a {
  color: #3ca97a;
}

.main-navigation a,
.main-navigation div a,
.mobile-navigation a {
  padding: .7em 1em;
  color: #212833;
  text-decoration: none;
}

.main-navigation a:hover, .main-navigation a:focus,
.main-navigation div a:hover,
.main-navigation div a:focus,
.mobile-navigation a:hover,
.mobile-navigation a:focus {
  color: #3ca97a;
}

.main-navigation .menu-item-has-children > a::after,
.main-navigation .page_item_has_children > a::after,
.main-navigation div .menu-item-has-children > a::after,
.main-navigation div .page_item_has_children > a::after,
.mobile-navigation .menu-item-has-children > a::after,
.mobile-navigation .page_item_has_children > a::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  margin-left: .5em;
}

.mobile-nav-close {
  display: block;
  padding: 1em;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.mobile-nav-close::before {
  content: "\f410";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  margin-right: .5em;
}

.body--transparent-header .main-navigation a,
.body--transparent-header .mobile-navigation a {
  color: #FFFFFF;
}

.body--transparent-header .main-navigation a:hover, .body--transparent-header .main-navigation a:focus,
.body--transparent-header .mobile-navigation a:hover,
.body--transparent-header .mobile-navigation a:focus {
  color: #3ca97a;
}

.body--transparent-header .site-header.scrolled .main-navigation a,
.body--transparent-header .site-header.scrolled .mobile-navigation a {
  color: #212833;
}

.body--transparent-header .site-header.scrolled .main-navigation .current-menu-item > a,
.body--transparent-header .site-header.scrolled .main-navigation .current_page_item > a,
.body--transparent-header .site-header.scrolled .mobile-navigation .current-menu-item > a,
.body--transparent-header .site-header.scrolled .mobile-navigation .current_page_item > a {
  color: #3ca97a;
}

.body--transparent-header .site-header.scrolled .main-navigation .sub-menu .current-menu-item > a,
.body--transparent-header .site-header.scrolled .main-navigation .children .current_page_item > a,
.body--transparent-header .site-header.scrolled .mobile-navigation .sub-menu .current-menu-item > a,
.body--transparent-header .site-header.scrolled .mobile-navigation .children .current_page_item > a {
  color: #3ca97a;
}

.main-nav-btn a,
.site-header.scrolled .main-nav-btn a {
  padding-right: 1.4em;
  padding-left: 1.4em;
  border: 0.2rem solid #212833;
  border-radius: 0;
}

.main-nav-btn a:focus, .main-nav-btn a:hover,
.site-header.scrolled .main-nav-btn a:focus,
.site-header.scrolled .main-nav-btn a:hover {
  color: #FFFFFF;
  background-color: #2F835F;
  border-color: #2F835F;
}

.body--transparent-header .main-nav-btn a {
  color: #FFFFFF;
  border: 0.2rem solid #FFFFFF;
}

.body--transparent-header .main-nav-btn a:focus, .body--transparent-header .main-nav-btn a:hover {
  color: #212833;
  background-color: #FFFFFF;
}

@media (max-width: 991px) {
  .mobile-navigation {
    display: block;
  }
  .main-navigation {
    display: none;
  }
  .nav-toggle {
    position: absolute;
    top: 2.25rem;
    right: 2rem;
    display: block;
    width: 2.75rem;
    text-align: center;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
  }
  .nav-toggle-text {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 600;
    text-transform: uppercase;
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
    /* 1 */
  }
  .nav-toggle .bar {
    margin-bottom: .8rem;
    height: .2rem;
    width: 100%;
    background-color: #212833;
    display: block;
    transition: background-color .2s ease;
  }
  .nav-toggle:hover .bar,
  .nav-toggle:focus .bar {
    background-color: #3ca97a;
  }
  .body--transparent-header .nav-toggle .bar {
    background-color: #FFFFFF;
  }
  .site-header.scrolled .nav-toggle .bar {
    background-color: #212833;
  }
  .mobile-navigation ul {
    margin-bottom: 1em;
  }
}

@media screen and (min-width: 992px) {
  .mobile-navigation {
    display: none;
  }
  .main-navigation {
    display: block;
  }
  .brand,
  .custom-logo,
  .site-description {
    float: left;
  }
  .nav-toggle {
    display: none;
  }
  .main-navigation,
  .main-navigation div {
    float: right;
  }
  .main-navigation > ul,
  .main-navigation div > ul {
    padding-left: 0;
    margin-left: -5px;
    list-style: none;
    margin-bottom: 0;
  }
  .main-navigation > ul > li,
  .main-navigation div > ul > li {
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px;
  }
  .main-navigation li,
  .main-navigation div li {
    padding-top: 0;
  }
  .main-navigation .sub-menu a,
  .main-navigation .children a,
  .main-navigation div .sub-menu a,
  .main-navigation div .children a {
    color: #FFFFFF;
    background-color: #212833;
  }
  .main-navigation .sub-menu a:hover, .main-navigation .sub-menu a:focus,
  .main-navigation .children a:hover,
  .main-navigation .children a:focus,
  .main-navigation div .sub-menu a:hover,
  .main-navigation div .sub-menu a:focus,
  .main-navigation div .children a:hover,
  .main-navigation div .children a:focus {
    color: #FFFFFF;
    background-color: #495971;
  }
  .main-navigation .sub-menu li,
  .main-navigation .children li,
  .main-navigation div .sub-menu li,
  .main-navigation div .children li {
    text-transform: none;
    border-bottom: 0 solid #354052;
  }
  .main-navigation li.current-menu-item > a,
  .main-navigation li.current_page_item > a,
  .main-navigation div li.current-menu-item > a,
  .main-navigation div li.current_page_item > a {
    color: #3ca97a;
  }
  .body--transparent-header .site-header.scrolled .main-navigation .sub-menu a,
  .body--transparent-header .site-header.scrolled .main-navigation .children a {
    color: #FFFFFF;
  }
  .body--transparent-header .site-header.scrolled .main-navigation .sub-menu a:hover, .body--transparent-header .site-header.scrolled .main-navigation .sub-menu a:focus,
  .body--transparent-header .site-header.scrolled .main-navigation .children a:hover,
  .body--transparent-header .site-header.scrolled .main-navigation .children a:focus {
    color: #FFFFFF;
  }
  .menu-item-has-children,
  .page_item_has_children {
    position: relative;
  }
  .menu-item-has-children .menu-item-has-children > a::after,
  .page_item_has_children .page_item_has_children > a::after {
    content: "\f105";
  }
  .main-navigation .sub-menu,
  .main-navigation .children {
    display: none;
    position: absolute;
    top: 2em;
    width: 16rem;
    background-color: #FFFFFF;
  }
  .main-navigation .sub-menu li,
  .main-navigation .children li {
    text-align: left;
  }
  .main-navigation .sub-menu a,
  .main-navigation .children a {
    display: block;
  }
  .menu-item-has-children:hover > .sub-menu,
  .menu-item-has-children:hover > .children,
  .menu-item-has-children:focus-within > .sub-menu,
  .menu-item-has-children:focus-within > .children,
  .page_item_has_children:hover > .sub-menu,
  .page_item_has_children:hover > .children,
  .page_item_has_children:focus-within > .sub-menu,
  .page_item_has_children:focus-within > .children {
    display: block;
  }
  .main-navigation .sub-menu .sub-menu,
  .main-navigation .children .children {
    top: 0;
    left: 16rem;
  }
  .sub-menu.open,
  .children.open {
    display: block;
  }
}

/*
  Links with a button style
  see base/forms for form buttons
*/
a.btn,
a.btn-outline,
a.btn-alt {
  display: inline-block;
  padding: .6em .9em;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  border-radius: 0;
}

a.btn:hover, a.btn:focus,
a.btn-outline:hover,
a.btn-outline:focus,
a.btn-alt:hover,
a.btn-alt:focus {
  text-decoration: none;
}

a.btn {
  color: #FFFFFF;
  background-color: #2F835F;
  border: solid 0.2rem #2F835F;
}

a.btn .fa {
  color: rgba(255, 255, 255, 0.6);
}

a.btn:hover, a.btn:focus {
  color: #FFFFFF;
  background-color: #36966d;
  border-color: #36966d;
}

a.btn:hover .fa, a.btn:focus .fa {
  color: rgba(255, 255, 255, 0.7);
}

a.btn-outline {
  color: #212833;
  border: solid 0.2rem #212833;
}

a.btn-outline .fa {
  color: rgba(33, 40, 51, 0.6);
}

a.btn-outline:hover, a.btn-outline:focus {
  color: #2b3442;
  border-color: #2b3442;
}

a.btn-outline:hover .fa, a.btn-outline:focus .fa {
  color: rgba(33, 40, 51, 0.7);
}

a.btn.alt,
a.btn-alt {
  color: #FFFFFF;
  background-color: #212833;
  border-color: #212833;
}

a.btn.alt .fa,
a.btn-alt .fa {
  color: rgba(255, 255, 255, 0.6);
}

a.btn.alt:hover, a.btn.alt:focus,
a.btn-alt:hover,
a.btn-alt:focus {
  color: #FFFFFF;
  background-color: #2b3442;
  border-color: #2b3442;
}

a.btn.alt:hover .fa, a.btn.alt:focus .fa,
a.btn-alt:hover .fa,
a.btn-alt:focus .fa {
  color: rgba(255, 255, 255, 0.7);
}

a.btn.wide {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.skiplink {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
  /* 1 */
}

.skiplink:active, .skiplink:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

.skiplink:active, .skiplink:focus {
  position: absolute;
  top: 1em;
  left: 1em;
  z-index: 9999;
  padding: .2em;
  font-weight: 600;
  color: #2F835F;
  background-color: #FFFFFF;
}

@media screen and (max-width: 782px) {
  body.admin-bar .skiplink {
    top: 46px;
  }
}

@media screen and (min-width: 783px) {
  body.admin-bar .skiplink {
    top: 32px;
  }
}

.color-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(33, 40, 51, 0.5);
  z-index: 99;
}

.hero {
  width: 100%;
  height: auto;
  background-color: #d3d3d3;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
  padding-top: 8em;
  padding-bottom: 2em;
}

.hero h1 {
  font-smooth: antialiased;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  margin-bottom: 0;
  font-size: 5rem;
  font-weight: 300;
  color: #fff;
  z-index: 100;
}

.hero .lead {
  position: relative;
  z-index: 100;
  color: #fff !important;
}

.hero .lead p {
  font-size: 1.9rem;
}

.hero .lead h2 {
  color: #fff !important;
  font-size: 2.2rem;
  font-weight: 400;
}

@media screen and (min-width: 576px) and (max-width: 767px) {
  .hero {
    padding-top: 12em;
  }
  .hero h1 {
    font-size: 6rem;
  }
  .hero .lead h2 {
    font-size: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .hero {
    padding-top: 18em;
    padding-bottom: 3em;
  }
  .hero h1 {
    font-size: 7rem;
  }
  .hero .lead {
    width: 83.3333333333%;
  }
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  margin-bottom: 1em;
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-item img {
  margin: 0 auto;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

.wp-caption-text {
  padding-top: .25em;
  text-align: center;
  font-size: .9em;
}

.bg-primary {
  background-color: #FFFFFF;
}

.bg-alt {
  background-color: #6E7E93;
}

.bg-highlight {
  background-color: #75CC6C;
}

.margin-top-none {
  margin-top: 0;
}

.margin-top-0-5 {
  margin-top: .5em;
}

.margin-top-1 {
  margin-top: 1em;
}

.margin-top-1-5 {
  margin-top: 1.5em;
}

.margin-top-2 {
  margin-top: 2em;
}

.margin-bottom-none {
  margin-bottom: 0;
}

.margin-bottom-0-5 {
  margin-bottom: .5em;
}

.margin-bottom-1 {
  margin-bottom: 1em;
}

.margin-bottom-1-5 {
  margin-bottom: 1.5em;
}

.margin-bottom-2 {
  margin-bottom: 2em;
}

.padding-top-none {
  padding-top: 0;
}

.padding-top-0-5 {
  padding-top: .5em;
}

.padding-top-1 {
  padding-top: 1em;
}

.padding-top-1-5 {
  padding-top: 1.5em;
}

.padding-top-2 {
  padding-top: 2em;
}

.padding-bottom-none {
  padding-bottom: 0;
}

.padding-bottom-0-5 {
  padding-bottom: .5em;
}

.padding-bottom-1 {
  padding-bottom: 1em;
}

.padding-bottom-1-5 {
  padding-bottom: 1.5em;
}

.padding-bottom-2 {
  padding-bottom: 2em;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General Structure
  ## Code
  ## Cover
  ## Embeds
  ## Gallery
  ## Group
  ## Image
  ## Latest Posts
  ## List
  ## More
  ## Pullquote
  ## Quote
  ## Separator
  ## Table
  ## Video
# Additional Theme Styles
  ## Color Palette
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Block Styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## General Structure
--------------------------------------------------------------*/
.page-template-template-full-width .entry-header > *,
.page-template-template-full-width .entry-content > * {
  margin: 36px auto;
  max-width: 580px;
  padding-left: 2rem;
  padding-right: 2rem;
}

.page-template-template-full-width .entry-content > .alignwide {
  max-width: 1070px;
}

.page-template-template-full-width .entry-content > .alignfull {
  margin: 1.5em 0;
  max-width: 100%;
}

@media screen and (min-width: 576px) {
  .page-template-template-full-width .entry-content > * {
    padding-left: 0;
    padding-right: 0;
  }
  .page-template-template-full-width .entry-title {
    padding: 0;
  }
}

/*--------------------------------------------------------------
## Code
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-code {
  padding: 0.8em 1em;
  margin-left: 2rem;
  margin-right: 2rem;
}

@media screen and (min-width: 576px) {
  .page-template-template-full-width .wp-block-code {
    margin-left: auto;
    margin-right: auto;
  }
}

/*--------------------------------------------------------------
## Cover
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-cover-text p {
  padding: 1.5em 2rem;
}

@media screen and (min-width: 576px) {
  .page-template-template-full-width .wp-block-cover-text p {
    padding: 1.5em 0;
  }
}

/*--------------------------------------------------------------
## Embeds
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-embed.type-video > .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.page-template-template-full-width .wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-gallery:not(.components-placeholder) {
  margin: 1.5em auto;
}

/*--------------------------------------------------------------
## Group
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-group > .wp-block-group__inner-container > * {
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
}

.page-template-template-full-width .wp-block-group > .wp-block-group__inner-container > .alignwide {
  max-width: 1070px;
}

.page-template-template-full-width .wp-block-group > .wp-block-group__inner-container > .alignfull {
  max-width: 100%;
}

.page-template-template-full-width .wp-block-group.has-background > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

.page-template-template-full-width .wp-block-group.has-background > .wp-block-group__inner-container > .alignfull {
  width: calc(100% + 60px);
  max-width: calc(100% + 60px);
  position: relative;
  left: -30px;
}

/*--------------------------------------------------------------
# Image
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-image img {
  display: block;
}

.page-template-template-full-width .wp-block-image.alignleft,
.page-template-template-full-width .wp-block-image.alignright {
  width: 100%;
}

.page-template-template-full-width .wp-block-image.alignfull img {
  width: 100vw;
}

.page-template-template-full-width .wp-block-image .alignleft img,
.page-template-template-full-width .wp-block-image .alignright img,
.page-template-template-full-width .wp-block-image .alignleft figcaption,
.page-template-template-full-width .wp-block-image .alignright figcaption {
  max-width: 100%;
  width: 100%;
}

/*--------------------------------------------------------------
## Latest Posts
--------------------------------------------------------------*/
.page-template-template-full-width ul.wp-block-latest-posts.alignwide,
.page-template-template-full-width ul.wp-block-latest-posts.alignfull,
.page-template-template-full-width ul.wp-block-latest-posts.is-grid.alignwide,
.page-template-template-full-width ul.wp-block-latest-posts.is-grid.alignwide {
  padding: 0 2rem;
}

/*--------------------------------------------------------------
# List
--------------------------------------------------------------*/
.page-template-template-full-width .entry-content ul,
.page-template-template-full-width .entry-content ol {
  margin: 1.5em auto;
  max-width: 580px;
  list-style-position: outside;
}

.page-template-template-full-width .entry-content li:not(.blocks-gallery-item) {
  margin-left: 2.5em;
}

.page-template-template-full-width .entry-content ul ul,
.page-template-template-full-width .entry-content ol ol,
.page-template-template-full-width .entry-content ul ol,
.page-template-template-full-width .entry-content ol ul {
  margin: 0 auto;
}

.page-template-template-full-width .entry-content ul ul li,
.page-template-template-full-width .entry-content ol ol li,
.page-template-template-full-width .entry-content ul ol li,
.page-template-template-full-width .entry-content ol ul li {
  margin-left: 0;
}

/*--------------------------------------------------------------
## More
--------------------------------------------------------------*/
.page-template-template-full-width .more-link {
  display: block;
}

/*--------------------------------------------------------------
## Pullquote
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-pullquote > p:first-child {
  margin-top: 0;
}

/*--------------------------------------------------------------
## Quote
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-quote {
  margin-left: 2rem;
  margin-right: 2rem;
  padding: 0;
}

.page-template-template-full-width .wp-block-quote > * {
  margin-left: 1rem;
}

.page-template-template-full-width .wp-block-quote.is-large,
.page-template-template-full-width .wp-block-quote.is-style-large {
  margin: 36px auto;
  padding: 0;
}

.page-template-template-full-width .wp-block-quote.is-large cite,
.page-template-template-full-width .wp-block-quote.is-large footer,
.page-template-template-full-width .wp-block-quote.is-style-large cite,
.page-template-template-full-width .wp-block-quote.is-style-large footer {
  font-size: 13px;
  font-size: 0.8125rem;
}

@media screen and (min-width: 644px) {
  .page-template-template-full-width .wp-block-quote {
    margin: 36px auto;
  }
}

/*--------------------------------------------------------------
## Separator
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-separator {
  margin: 3em auto;
  padding: 0;
}

/*--------------------------------------------------------------
## Table
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-table {
  overflow-x: auto;
  margin-left: 2rem;
  margin-right: 2rem;
  width: calc(100% - 28px);
}

.page-template-template-full-width .wp-block-table table {
  border-collapse: collapse;
  width: 100%;
}

.page-template-template-full-width .wp-block-table td, .page-template-template-full-width .wp-block-table th {
  padding: .5em;
}

@media screen and (min-width: 576px) {
  .page-template-template-full-width .wp-block-table {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
}

/*--------------------------------------------------------------
## Video
--------------------------------------------------------------*/
.page-template-template-full-width .wp-block-video video {
  max-width: 580px;
}

/*--------------------------------------------------------------
# Additional Theme Styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Color Palette
--------------------------------------------------------------*/
.has-strong-blue-color {
  color: #0073aa;
}

.has-strong-blue-background-color {
  background-color: #0073aa;
}

.has-lighter-blue-color {
  color: #229fd8;
}

.has-lighter-blue-background-color {
  background-color: #229fd8;
}

.has-very-light-gray-color {
  color: #eee;
}

.has-very-light-gray-background-color {
  background-color: #eee;
}

.has-very-dark-gray-color {
  color: #444;
}

.has-very-dark-gray-background-color {
  background-color: #444;
}

.archive h1.page-title,
.search h1.page-title {
  margin-bottom: 1.5em;
  font-size: 1.8rem;
  text-transform: uppercase;
}

.edit-link {
  display: block;
  padding: 1em 0;
}

.updated:not(.published) {
  display: none;
}

/**

 WordPress alignment classes

 */
.alignleft {
  display: inline;
  float: left;
  margin-right: 1em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1em;
}

.aligncenter {
  display: block;
  clear: both;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1em;
}

iframe {
  max-width: 100%;
}

.sticky {
  margin-bottom: 2em;
  padding: 1.5em 2em;
  background-color: #f7f7f7;
}

.sticky .entry-footer {
  margin-bottom: 1em !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comment-reply-title {
  font-weight: 500;
}

.comments-area ol {
  margin-bottom: 2em;
}

.comments-area ol article {
  margin-bottom: 2.25em;
}

.comments-title {
  margin-bottom: 1.5em;
  font-size: 2rem;
  font-weight: 500;
}

ol.comment-list {
  padding-left: 0;
  list-style: none;
  /* as needed
  .comment-content {
    p,
    li,
    dd,
    td,
    th,
    label,
    input,
    select,
    textarea,
    button,
    address,
    blockquote {
      font-size: 1.6rem;
    }
  }*/
}

ol.comment-list li {
  font-size: 1.6rem;
  list-style-type: none;
}

ol.comment-list .comment-meta::before, ol.comment-list .comment-meta::after {
  display: table;
  content: " ";
}

ol.comment-list .comment-meta::after {
  clear: both;
}

ol.comment-list .fn,
ol.comment-list .says {
  display: inline-block;
  padding-top: 1em;
}

ol.comment-list img.avatar {
  margin-right: 1em;
  float: left;
  border-radius: 36px;
}

ol.comment-list .reply {
  font-weight: 600;
}

ol.comment-list .reply a {
  text-decoration: none;
}

ol.comment-list .reply a::before {
  margin-right: .25em;
  content: "\f3e5";
  font-family: "Font Awesome 5 Free";
  font-size: 1.2rem;
}

ol.comment-list .comment-reply-title a {
  font-size: 1.4rem;
  color: #212833;
}

.comment-form .logged-in-as {
  font-size: 1.4rem;
}

.comment-form .logged-in-as a {
  font-weight: 600;
  text-decoration: none;
  color: #212833;
}

.comment-form p {
  margin-top: 0;
  margin-bottom: 0;
}

.comment-form p.comment-form-comment {
  margin-top: 1em;
}

.comment-form label {
  margin-bottom: .5em;
  font-weight: 600;
}

.comment-form .comment-form-cookies-consent label {
  font-weight: normal;
}

.comment-form .comment-form-cookies-consent input,
.comment-form .comment-form-cookies-consent label {
  display: inline-block;
}

.comment-form .comment-form-cookies-consent input {
  margin-right: .25em;
}

.comment-form input {
  border: 0.1rem solid #d3d3d3;
}

.comment-form input.submit,
.comment-form input[type="submit"] {
  width: auto;
  padding: .6em 1.5em;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #FFFFFF;
  background-color: #2F835F;
  border: solid 0.2rem #2F835F;
}

.comment-form input.submit:hover, .comment-form input.submit:focus,
.comment-form input[type="submit"]:hover,
.comment-form input[type="submit"]:focus {
  background-color: #36966d;
  border-color: #36966d;
}

.comments-area {
  margin-bottom: 2em;
}

#cancel-comment-reply-link {
  margin-left: 1em;
}

.entry-header {
  margin-bottom: 1em;
}

.entry-title {
  margin: .25em 0;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.4;
}

.entry-title a {
  color: #212833;
  text-decoration: none;
}

.entry-title a:hover, .entry-title a:focus {
  color: #3ca97a;
  border-bottom: 1px solid #3ca97a;
}

.meta-wrap {
  padding: 0 2em;
}

.post-thumbnail {
  display: block;
  margin-bottom: 2em;
}

.blog .entry-footer,
.single .entry-footer,
.search .entry-footer,
.archive .entry-footer {
  padding-bottom: 2em;
  border-bottom: 1px solid #d3d3d3;
}

.blog .entry-footer::before, .blog .entry-footer::after,
.single .entry-footer::before,
.single .entry-footer::after,
.search .entry-footer::before,
.search .entry-footer::after,
.archive .entry-footer::before,
.archive .entry-footer::after {
  display: table;
  content: " ";
}

.blog .entry-footer::after,
.single .entry-footer::after,
.search .entry-footer::after,
.archive .entry-footer::after {
  clear: both;
}

.blog #secondary,
.single #secondary,
.search #secondary,
.archive #secondary {
  margin-top: 8em;
}

.blog .entry-footer,
.archive .entry-footer,
.search .entry-footer {
  margin-bottom: 3em;
}

.entry-meta a,
.entry-footer a {
  font-weight: bold;
}

.cat-links,
.tags-links,
.comments-link,
.entry-meta,
.entry-footer,
.comment-author,
.comment-metadata,
.comment-reply-link {
  font-size: 1.4rem;
  color: #212833;
}

.cat-links a,
.tags-links a,
.comments-link a,
.entry-meta a,
.entry-footer a,
.comment-author a,
.comment-metadata a,
.comment-reply-link a {
  text-decoration: none;
  color: #212833;
}

.cat-links a:hover,
.cat-links a:focus,
.tags-links a:hover,
.tags-links a:focus,
.comments-link a:hover,
.comments-link a:focus,
.entry-meta a:hover,
.entry-meta a:focus,
.entry-footer a:hover,
.entry-footer a:focus,
.comment-author a:hover,
.comment-author a:focus,
.comment-metadata a:hover,
.comment-metadata a:focus,
.comment-reply-link a:hover,
.comment-reply-link a:focus {
  color: #3ca97a;
}

.cat-links,
.tags-links {
  display: block;
  margin-top: 1em;
}

.cat-links a,
.tags-links a {
  display: inline-block;
  margin-right: .25em;
  margin-bottom: .5em;
  padding: .5em 1em;
  font-size: 1.1rem;
  font-weight: normal;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #FFFFFF;
  background-color: #2F835F;
}

.cat-links a:hover,
.cat-links a:focus,
.tags-links a:hover,
.tags-links a:focus {
  color: #FFFFFF;
  background-color: #3ca97a;
}

.tags-links a {
  font-size: 1.2rem;
  font-weight: bold;
  text-transform: none;
  color: #2F835F;
  background-color: #efefef;
}

.tags-links a:hover, .tags-links a:focus {
  color: #3ca97a;
  background-color: #efefef;
}

.comments-link {
  display: inline-block;
  margin-left: .5em;
}

.comments-link a::before {
  display: inline-block;
  padding-right: .25em;
  content: "\f075";
  font-family: "Font Awesome 5 Free";
  font-weight: normal;
  color: #3ca97a;
}

.comments-link a:hover,
.comments-link a:focus {
  color: #3ca97a;
}

.navigation {
  margin-top: .5em;
  margin-bottom: 2em;
}

.navigation::before, .navigation::after {
  display: table;
  content: " ";
}

.navigation::after {
  clear: both;
}

.nav-previous {
  display: inline-block;
  float: left;
}

.nav-next {
  display: inline-block;
  float: right;
}

.more-wrap {
  display: block;
  text-align: right;
}

.more-link {
  display: inline-block;
  padding: .5em 1em;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .01em;
  color: #212833;
  background-color: #f7f7f7;
}

.more-link:link, .more-link:visited {
  color: #212833;
}

.more-link:hover, .more-link:focus {
  color: #3ca97a;
}

.more-link::after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  margin-left: .3em;
}

.blog .navigation,
.archive .navigation,
.search .navigation {
  text-align: center;
}

.blog .nav-previous a,
.blog .nav-next a,
.blog a.page-numbers,
.archive .nav-previous a,
.archive .nav-next a,
.archive a.page-numbers,
.search .nav-previous a,
.search .nav-next a,
.search a.page-numbers {
  display: inline-block;
  padding: .6em .9em;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #212833;
  background-color: #efefef;
  border: solid 0.2rem #efefef;
}

.blog .nav-previous a:hover, .blog .nav-previous a:focus,
.blog .nav-next a:hover,
.blog .nav-next a:focus,
.blog a.page-numbers:hover,
.blog a.page-numbers:focus,
.archive .nav-previous a:hover,
.archive .nav-previous a:focus,
.archive .nav-next a:hover,
.archive .nav-next a:focus,
.archive a.page-numbers:hover,
.archive a.page-numbers:focus,
.search .nav-previous a:hover,
.search .nav-previous a:focus,
.search .nav-next a:hover,
.search .nav-next a:focus,
.search a.page-numbers:hover,
.search a.page-numbers:focus {
  text-decoration: none;
  color: #FFFFFF;
  background-color: #2F835F;
  border-color: #2F835F;
}

.blog .page-numbers.current,
.blog .page-numbers.dots,
.archive .page-numbers.current,
.archive .page-numbers.dots,
.search .page-numbers.current,
.search .page-numbers.dots {
  display: inline-block;
  padding: .6em .9em;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #212833;
}

.blog .page-numbers.current,
.archive .page-numbers.current,
.search .page-numbers.current {
  background-color: #fff;
  border: solid 0.2rem #fff;
}

.blog .page-numbers.next::after,
.archive .page-numbers.next::after,
.search .page-numbers.next::after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  margin-left: .25em;
}

.blog .page-numbers.prev::before,
.archive .page-numbers.prev::before,
.search .page-numbers.prev::before {
  content: "\f104";
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  margin-right: .25em;
}

.single .navigation {
  margin-top: 2em;
  margin-bottom: 3em;
}

.single .nav-previous {
  max-width: 50%;
}

.single .nav-next {
  max-width: 50%;
}

.single .nav-previous a,
.single .nav-next a {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 600;
  text-decoration: none;
  color: #212833;
}

.single .nav-previous a:hover, .single .nav-previous a:focus,
.single .nav-next a:hover,
.single .nav-next a:focus {
  text-decoration: none;
  color: #3ca97a;
}

.single .nav-next a::after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  margin-left: .5em;
}

.single .nav-previous a::before {
  content: "\f104";
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  margin-right: .5em;
}

#secondary h2.widget-title {
  margin: .7em 0 .7em;
  padding: .4em .6em;
  background-color: #f7f7f7;
  border-left: 0.2rem solid #212833;
}

#secondary h2.widget-title,
.footer-widgets h2.widget-title,
.site-footer h2.widget-title {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
}

#secondary .widget ul,
.footer-widgets .widget ul,
.site-footer .widget ul {
  padding-left: 0;
  list-style: none;
}

#secondary .widget ul li,
.footer-widgets .widget ul li,
.site-footer .widget ul li {
  list-style-type: none;
}

#secondary .widget li,
#secondary .widget p,
.footer-widgets .widget li,
.footer-widgets .widget p,
.site-footer .widget li,
.site-footer .widget p {
  margin-bottom: .7em;
  font-size: 1.4rem;
  line-height: 1.6;
}

/* Make sure select elements fit in widgets. */
select {
  max-width: 100%;
}

#secondary .widget {
  margin-bottom: 2em;
}

.widget_recent_entries ul,
.widget_recent_comments ul {
  margin-bottom: 0;
}

.widget_archive select {
  font-size: 1.4rem;
}

#wp-calendar caption,
#wp-calendar th {
  font-size: 1.4rem;
  font-weight: bold;
}

#wp-calendar td {
  font-size: 1.4rem;
}

#wp-calendar tfoot td {
  border: none;
}

.search-form {
  margin-bottom: 2em;
  display: flex;
  flex: auto;
}

.search-form .search-field {
  margin-bottom: 0;
  font-size: 1.3rem;
}

.search-form input.search-submit {
  margin: 0 0 0 .25em;
  padding: 0.4em .75em;
  font-size: 1.2rem;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #FFFFFF;
  background-color: #2F835F;
  border: solid 0.2rem #2F835F;
  transition: all 0.1s ease;
}

.search-form input.search-submit:hover, .search-form input.search-submit:focus {
  background-color: #36966d;
  border-color: #36966d;
}

.home .section-intro {
  margin-bottom: 2em;
}

.home .section-1 {
  border-top: solid 0.01rem #eaeaea;
}

.home .section-1 .wrap-inner,
.home .section-2 .wrap-inner,
.home .section-3 .wrap-inner,
.home .section-4 .wrap-inner {
  padding: 0 1.5em 2em;
}

.home .section-5 {
  padding: 3em 0;
  color: #FFFFFF;
  background-color: #212833;
}

.home .footer-widgets {
  margin-top: 0;
}

@media screen and (min-width: 576px) {
  .home .section-1 .wrap-inner,
  .home .section-2 .wrap-inner,
  .home .section-3 .wrap-inner,
  .home .section-4 .wrap-inner {
    padding: 0 5em 2em;
  }
  .home .section-5 {
    padding: 3em;
  }
  .home .section-5 .btn {
    margin-left: 1em;
  }
}

.nf-before-form-content {
  margin-top: 1em;
}

.nf-form-content {
  padding-left: 0 !important;
}

.nf-form-wrap input[type="button"] {
  display: inline-block;
  clear: both;
  width: auto;
  margin: 1em 0;
  padding: .6em 1.5em;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .03em;
  color: #FFFFFF !important;
  background-color: #2F835F !important;
  border: solid 0.2rem #2F835F !important;
  transition: all 0.1s ease !important;
}

.nf-form-wrap input[type="button"]:hover, .nf-form-wrap input[type="button"]:active, .nf-form-wrap input[type="button"]:focus {
  background-color: #36966d !important;
  border-color: #36966d !important;
}
